User Tools

Site Tools


manual:Preferences

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Next revision Both sides next revision
manual:Preferences [2019/06/25 00:44]
peternlewis
manual:Preferences [2020/08/17 21:11]
JMichaelTX [Engine] ADD commands to restore Google Chrome. Add TOC
Line 137: Line 137:
 defaults write com.stairways.keyboardmaestro.editor DisableAnimation -bool YES defaults write com.stairways.keyboardmaestro.editor DisableAnimation -bool YES
 </​code>​ </​code>​
 +
 +You can configure the fonts used for the various action text views with:
 +
 +<code bash>
 +defaults write com.stairways.keyboardmaestro.editor Font-Normal -string "​Monaco"​
 +defaults write com.stairways.keyboardmaestro.editor Font-Shell -string "​USER"​
 +defaults write com.stairways.keyboardmaestro.editor Font-AppleScript -string "​FIXED"​
 +defaults write com.stairways.keyboardmaestro.editor Font-JavaScript -string "​SYSTEM"​
 +defaults write com.stairways.keyboardmaestro.editor Font-Swift -string "​Times"​
 +defaults write com.stairways.keyboardmaestro.editor Font-HTML -string "​Courier:​25"​
 +defaults write com.stairways.keyboardmaestro.editor Font-JSON -string "​Marker Felt:​10"​
 +defaults write com.stairways.keyboardmaestro.editor Font-Comment -string "​Palatino:​20"​
 +</​code>​
 +
 +The value of this field can be one of “USER”, “FIXED” or “SYSTEM” (for the default user, fixed and system fonts), or a font name.  This can optionally be followed by a colon and the point size.  The default point size is 13.  The font size is scaled based on the Large Text setting, and this size is used for the //Normal// setting.
 +
  
 ==== Clipboard ==== ==== Clipboard ====
Line 146: Line 162:
 </​code>​ </​code>​
  
-You can set the maximum ​position of concealed (password) items in the clipboard ​history ​(default ​10)+You can set the maximum clipboard ​flavor size (default ​100MB)
  
 <code bash> <code bash>
-defaults write com.stairways.keyboardmaestro.engine ​MaxConcealedPosition ​-int 10+defaults write com.stairways.keyboardmaestro.engine ​ClipboardFlavorMaximumSize ​-int 100000000
 </​code>​ </​code>​
  
-You can set the maximum clipboard ​flavor size (default ​100MB)+You can set the maximum ​position of concealed (password) items in the clipboard ​history ​(default ​10)
  
 <code bash> <code bash>
-defaults write com.stairways.keyboardmaestro.engine ​ClipboardFlavorMaximumSize ​-int 100000000+defaults write com.stairways.keyboardmaestro.engine ​MaxConcealedPosition ​-int 10
 </​code>​ </​code>​
  
Line 165: Line 181:
 </​code>​ </​code>​
  
-==== Engine ​====+Microsoft applications include a PDF flavor with every copy, and starting up the PDF rendering engine is slow, making the first copy after launching a Microsoft application. ​ Keyboard Maestro (v9.0+) excludes PDF flavors from clipboards copied in Microsoft applications by default, but you can turn this off with: 
 + 
 +<code bash> 
 +defaults write com.stairways.keyboardmaestro.engine ExcludeMicrosoftPDFFlavor -bool NO 
 +</​code>​ 
 + 
 +Microsoft applications also include flavors for every possible image format with every copy.  Keyboard Maestro (v9.0+) excludes secondary image flavors like BMP when there is a PNG or TIFF flavor available. ​ You can turn this off with: 
 + 
 +<code bash> 
 +defaults write com.stairways.keyboardmaestro.engine ExcludeMultipleImageFlavors -bool NO 
 +</​code>​ 
 + 
 +==== AppleScript ​====
  
 You can set the command line tool that is used to execute AppleScripts You can set the command line tool that is used to execute AppleScripts
Line 172: Line 200:
 defaults write com.stairways.keyboardmaestro.engine OSAScriptCommand -string "/​usr/​bin/​arch -i386 /​usr/​bin/​osascript"​ defaults write com.stairways.keyboardmaestro.engine OSAScriptCommand -string "/​usr/​bin/​arch -i386 /​usr/​bin/​osascript"​
 </​code>​ </​code>​
 +
 +==== Safari Browser Used in Actions & Tokens ====
  
 You can set the AppleScript name of the Safari application,​ as well as the name of the Safari browser shown in applications:​ You can set the AppleScript name of the Safari application,​ as well as the name of the Safari browser shown in applications:​
Line 186: Line 216:
 </​code>​ </​code>​
  
-Similarly for Google ​Chrome:+==== Chrome ​Browser Used in Actions & Tokens ====
  
 <code bash> <code bash>
 defaults write com.stairways.keyboardmaestro.engine AppleScriptGoogleChromeBundleID -string "​com.google.Chrome.canary"​ defaults write com.stairways.keyboardmaestro.engine AppleScriptGoogleChromeBundleID -string "​com.google.Chrome.canary"​
 defaults write com.stairways.keyboardmaestro.engine BrowserGoogleChromeName -string "​Chrome Canary"​ defaults write com.stairways.keyboardmaestro.engine BrowserGoogleChromeName -string "​Chrome Canary"​
 +</​code>​
 +
 +To restore the defaults back to use Google Chrome, just delete the preferences:​
 +
 +<code bash>
 +defaults delete com.stairways.keyboardmaestro.engine AppleScriptGoogleChromeBundleID
 +defaults delete com.stairways.keyboardmaestro.engine BrowserGoogleChromeName
 </​code>​ </​code>​
  
 The AppleScript name is used in AppleScript'​s which control the respective browser in the form of CODE{{{tell app "<​browser name>"​}}}. ​ Note that the Safari browser must still behave like Safari, and the Chrome browser must behave like Chrome, or the actions will not work.  Do not bother trying to set them to Firefox or something like that as it will not work.  All this allows you to do is select a specific version of Safari or Chrome respectively. The AppleScript name is used in AppleScript'​s which control the respective browser in the form of CODE{{{tell app "<​browser name>"​}}}. ​ Note that the Safari browser must still behave like Safari, and the Chrome browser must behave like Chrome, or the actions will not work.  Do not bother trying to set them to Firefox or something like that as it will not work.  All this allows you to do is select a specific version of Safari or Chrome respectively.
 +
 +==== Engine Animation ====
  
 You can disable all animation in the engine with: You can disable all animation in the engine with:
Line 200: Line 239:
 defaults write com.stairways.keyboardmaestro.engine DisableAnimation -bool YES defaults write com.stairways.keyboardmaestro.engine DisableAnimation -bool YES
 </​code>​ </​code>​
 +
 +==== Typed String Buffer ====
  
 You can disable Shift-Space from clearing the Typed String buffer You can disable Shift-Space from clearing the Typed String buffer
  
 <code bash> <code bash>
-defaults write com.stairways.keyboardmaestro.engine ​TypedStringResetWithShiftSpace ​-bool NO+defaults write com.stairways.keyboardmaestro.engine ​TypedStringClearWithShiftSpace ​-bool NO
 </​code>​ </​code>​
  
Line 218: Line 259:
 defaults write com.stairways.keyboardmaestro.engine TypedStringClearTime -float 5.0 defaults write com.stairways.keyboardmaestro.engine TypedStringClearTime -float 5.0
 </​code>​ </​code>​
 +
 +==== Use Unicode for Keystrokes ====
 +
 +You can force Keyboard Maestro to simulate keystrokes only as Unicode characters, rather than typing them as you would on the keyboard
 +
 +<code bash>
 +defaults write com.stairways.keyboardmaestro.engine ForceInsertTextByTypingToUseUnicode -bool YES
 +</​code>​
 +
 +==== Hot Key Triggers ====
  
 You can set the maximum key down trigger time for Hot Key triggers (default 10 seconds) You can set the maximum key down trigger time for Hot Key triggers (default 10 seconds)
Line 224: Line 275:
 defaults write com.stairways.keyboardmaestro.engine MaxKeyRepeatTime -float 10.0 defaults write com.stairways.keyboardmaestro.engine MaxKeyRepeatTime -float 10.0
 </​code>​ </​code>​
 +
 +You can configure the timing of a "​tap"​ (Hot Key and USB Device Key triggers) with:
 +
 +<code bash>
 +defaults write com.stairways.keyboardmaestro.engine MaxTapDownTime -float 1.0
 +defaults write com.stairways.keyboardmaestro.engine MaxTapUpTime -float 1.0
 +</​code>​
 +
 +==== Sounds ====
  
 You can silence the clipboard transfer sounds with: You can silence the clipboard transfer sounds with:
Line 236: Line 296:
 defaults write com.stairways.keyboardmaestro.engine SilenceRecordingSounds -bool YES defaults write com.stairways.keyboardmaestro.engine SilenceRecordingSounds -bool YES
 </​code>​ </​code>​
 +
 +==== Recordings ====
  
 You can adjust the recording delay with: You can adjust the recording delay with:
Line 245: Line 307:
 Note: you can option click the Record button to avoid the delay. Note: you can option click the Record button to avoid the delay.
  
-You can have the conflict palette use sequential hot keys from the first letter ​with:+You can have all recorded clicks recorded in absolute coordinates by default ​with:
  
 <code bash> <code bash>
-defaults write com.stairways.keyboardmaestro.engine ​SequentialConflictPalette ​-bool YES+defaults write com.stairways.keyboardmaestro.engine ​AlwaysRecordAbsoluteClicks ​-bool YEA
 </​code>​ </​code>​
  
-You can configure ​the timing of "​tap"​ (Hot Key and USB Device Key triggers) ​with:+By default, clicks are recorded relative to the front window, if that window has remained the front window and retained its size and position for some time.  Note that for short time after recording, you can change the relative field in the action, ​and the values will update to appropriate values. 
 + 
 +==== Conflict Palette ==== 
 + 
 +You can have the conflict palette use sequential hot keys from the first letter ​with:
  
 <code bash> <code bash>
-defaults write com.stairways.keyboardmaestro.engine ​MaxTapDownTime ​-float 1.0 +defaults write com.stairways.keyboardmaestro.engine ​SequentialConflictPalette ​-bool YES
-defaults write com.stairways.keyboardmaestro.engine MaxTapUpTime -float 1.0+
 </​code>​ </​code>​
  
Line 273: Line 338:
 defaults write com.stairways.keyboardmaestro.engine DisplayLargeTextDisplayPeriod -float 5.0 defaults write com.stairways.keyboardmaestro.engine DisplayLargeTextDisplayPeriod -float 5.0
 </​code>​ </​code>​
- 
-You can configure a custom palette theme color style with: 
- 
-<code bash> 
-defaults write com.stairways.keyboardmaestro.engine CustomPaletteTheme -string "​0,​90,​74,​ 110,90,74, 256,​90,​74"​ 
-</​code>​ 
- 
-The style includes 3 or 6 HSB colors (being background, text, highlighted letter, selected background, selected text, selected highlight letter) each specified as hue,​saturation,​brightness. ​ The background brightness is dropped by 33%, but if there are only three colors, then the selected background color is the background without the 33% drop.  You can select the Custom style in the Theme Editor. 
  
 By default recorded clicks do not restore the mouse location, but you can change that with: By default recorded clicks do not restore the mouse location, but you can change that with:
Line 287: Line 344:
 defaults write com.stairways.keyboardmaestro.engine RecordedClickRestoresMouseLocation -bool NO defaults write com.stairways.keyboardmaestro.engine RecordedClickRestoresMouseLocation -bool NO
 </​code>​ </​code>​
 +
 +==== Notifications ====
  
 You can control which notifications are displayed with: You can control which notifications are displayed with:
Line 297: Line 356:
 defaults write com.stairways.keyboardmaestro.engine "​Notification-ReceivedClipboard"​ -bool YES defaults write com.stairways.keyboardmaestro.engine "​Notification-ReceivedClipboard"​ -bool YES
 </​code>​ </​code>​
 +
 +==== Software Updates ====
  
 You can have new versions reported only when the editor activates with: You can have new versions reported only when the editor activates with:
Line 303: Line 364:
 defaults write com.stairways.keyboardmaestro.engine ReportUpdatesWhenEditorActivates -bool YES defaults write com.stairways.keyboardmaestro.engine ReportUpdatesWhenEditorActivates -bool YES
 </​code>​ </​code>​
 +
 +==== WebKit Inspector for HTML Prompt ====
  
 You can enable the WebKit inspector with: You can enable the WebKit inspector with:
Line 312: Line 375:
 Then you can control-click on elements and use Inspect Element and get an inspector window, including a Console tab. Then you can control-click on elements and use Inspect Element and get an inspector window, including a Console tab.
  
 +==== Custom Palette Theme ====
 +
 +You can configure a custom palette theme color style with:
 +
 +<code bash>
 +defaults write com.stairways.keyboardmaestro.engine CustomPaletteTheme -string "​0,​90,​74,​ 110,90,74, 256,​90,​74"​
 +</​code>​
 +
 +The style includes 3 or 6 HSB colors (being background, text, highlighted letter, selected background, selected text, selected highlight letter) each specified as hue,​saturation,​brightness. ​ The background brightness is dropped by 33%, but if there are only three colors, then the selected background color is the background without the 33% drop.  You can select the Custom style in the Theme Editor.
 +
 +Alternatively (v9.0+), you can specify the theme using JSON and including all the details for the theme including optional gradients. ​ The format is:
 +
 +    { 
 +        "​IncludeTexture":<​BOOLEAN>,​
 +        "​TitleBackground":<​COLORorGRADIENT>,​
 +        "​TitleBorder":<​COLORorGRADIENT>,​
 +        "​BodyBackground":<​COLORorGRADIENT>,​
 +        "​BodyBackgroundSelected":<​COLORorGRADIENT>,​
 +        "​Frame":<​COLOR>,​
 +        "​TitleText":<​COLOR>,​
 +        "​Text":<​COLOR>,​
 +        "​TextHighlighted":<​COLOR>,​
 +        "​TextSelected":<​COLOR>,​
 +        "​TextSelectedHighlighted":<​COLOR>,​
 +    }
 +
 +^ Type ^ Value ^
 +| <​BOOLEAN>​ | “true” or “false” |
 +| <​COLOR>​ | an array of three numbers, being hue (0-360), saturation (0-100), and brightness (0-100) |
 +| <​COLORorGRADIENT>​ | either a <​COLOR>​ or a dictionary {"​c1":<​COLOR>,​ "​c2":<​COLOR>,​ "​angle":<​0-360>​} |
 +
 +IncludeTexture specifies whether Keyboard Maestro includes the subtle mottling texture on the main background.
 +
 +For example:
 +
 + defaults write com.stairways.keyboardmaestro.engine CustomPaletteTheme -string '​{ ​
 + "​IncludeTexture":​false,​
 + "​TitleBackground":​{"​c1"​ : [180,​30,​53],​ "​c2"​ : [180,​30,​40],​ "​angle":​270},​
 + "​TitleBorder":​[180,​30,​40],​
 + "​BodyBackground":​{"​c1"​ : [180,​30,​50],​ "​c2"​ : [180,​30,​38],​ "​angle":​270},​
 + "​BodyBackgroundSelected":​[180,​30,​60],​
 + "​Frame":​[180,​30,​40],​
 + "​TitleText":​[180,​40,​92],​
 + "​Text":​[180,​40,​92],​
 + "​TextHighlighted":​[180,​40,​70],​
 + "​TextSelected":​[180,​40,​98],​
 + "​TextSelectedHighlighted":​[180,​40,​75],​
 + }'
 +
 +NoteL the “-string” is important - otherwise the `defaults` command will interpret the JSON itself and that will not work.
manual/Preferences.txt · Last modified: 2023/11/07 00:14 by peternlewis