V1_05 latest
===================================
JGLp [SetScreenRes.] Set Screen Resolution and some Tips Macros.k v1_05 .macros.kmmacros|attachment (91.7 KB)
===================================
README
Background
My eyesight is not brilliant and I switch resolution modes depending on
a: how many displays I have 1 2 or 3
b: the size of the text I want
Previously I used System Preferences> Displays, but I am really surprised how often I now use this macro set as it is so easy to change the text/resolution size.
General
The position of a screen is NOT dependent on its physical position but or its TOP LEFT corner in relation to other screens as defined in sys preferences > Diusplays > Arrange.
This macro is written for three screens in the following layout
[ HP Left] [INTERNAL Centre] [TOSHIBA 3 Large screen]
This is the same even if the layout is
[ HP Left] [TOSHIBA 3 Large screen]
[INTERNAL Centre]
If I am watching a movie then the layout is
[TOSHIBA 2 Large screen]
[INTERNAL Centre]
If I am using the HP as a scratch pad then the laoyout is
[ HP Left]
[INTERNAL Centre]
Finally if I am away from home with just the Macbook , then the layout is
[INTERNAL Centre]
Designed to avoid using screen numbering
The Internal screen is always going to be Internal.
The HP screen will always be Left.
The Toshiba screen will either be External or Third depending on whether or not the HP screen is on or off.
This approach avoids having to work out which number e.g. -1,0,1,2,3 etc a screen is and only requires two version of the macro for the Toshiba.
===================================
Macro features
nn) forces the palette to list in items in correct order and does not display nn
This then means you can have a different letters for fast shortcuts / choices
The first character after the ) or ] is the shortcut letter
If there is no shortcut,then use hard spacel as first character to avoid a "Bar" character
To avoid a "Bar" character e.g. [SetScreenRes.][Bar char] , I use a non-breaking space instead of a space . (Dan Thomas uses a blankicon)
i.e. ⌥ Opt+⇧ Shift+Space:
This keyboard shortcut will insert a non-breaking space character (U+00A0).
There are three standalone macros that I used when developing this
Is a standalone debug that displays all the values for the different screens
Opens the KM Engine log file
Adds a comment to the KM log
These are in the bonus section
Known issues
See below at end
Bonus Section (Extras and Debug tricks)
I have added some "standalone" extras with some. suggested hot key combinations.
a: debug to show all the values regarding screen position, screen index etc
b: Open the KM Engine log file
c: Add a simple entry / marker to KM Engine log file with a >>>Prefix
d: Open system preference > displays directly
e: Jump to your download folder
f: Using Ask?? to see if you want to see version history else cancel macro
g: also longer titles for buttons saying what they will do rather than just OK/CANCEL
h: Simple switch to Google Chrome
i:Open URLs to further items of interest on Forum
j: Text expansion for searching JUST KM Forum and Wiki. Type into search URL
k: See use of emoji ( ) in macrogroup title to make it standout.
l: Suggested Hotkey convention
Customisation
The resolutions that I have shosen may not be available for your displays and would therefore need to be changed. Similarly HP could be changed to LEFT and TOSHIBA changed to RIGHT.
Acknowledgements
Dan Thomas for the pointing me in the right direction for the hard space solution.
Disclaimer
Caveat Utilitor applies.
As the use of this macro(s) is beyond my control, then the principle of Caveat Utilitor applies. The user is responsible for checking whether the macro(s) suits his or her requirements, and I cannot be responsible for any direct or indirect loss, financial or otherwise.
Known issues
1: NB Sometimes the arrange displays gets confused and has to be reset by dragging the displays to their correct position, especially when switching the HP left and theTOSHIBA off and on.
2: Occasional error 1000 for no apparent reason
2024-05-10 12:11:17 Action 15792030 failed: Set Screen Resolution failed to set resolution because setting display mode failed with error 1000
2024-05-10 12:11:17 Set Screen Resolution failed to set resolution because setting display mode failed with error 1000. Macro “02) [SetScreenRes.]1. Internal 1440 x 900 My default” cancelled (while executing Set Screen “SCREENINDEX(Internal)” to Resolution “1440,900”).
===================================
Palette