diff --git a/SUMMARY.md b/SUMMARY.md
index 24655dd..0c9c75d 100644
--- a/SUMMARY.md
+++ b/SUMMARY.md
@@ -349,11 +349,13 @@
* [global](api/plugins/plugins.core.commands.global.md)
* [console](api/plugins/plugins.core.console.md)
* [applications](api/plugins/plugins.core.console.applications.md)
+ * [keyboardmaestromacros](api/plugins/plugins.core.console.keyboardmaestromacros.md)
* [scripts](api/plugins/plugins.core.console.scripts.md)
* [manager](api/plugins/plugins.core.controlsurfaces.manager.md)
* [automount](api/plugins/plugins.core.disk.automount.md)
* [favourites](api/plugins/plugins.core.disk.favourites.md)
* [display](api/plugins/plugins.core.display.md)
+ * [prefs](api/plugins/plugins.core.gamepad.prefs.md)
* [credits](api/plugins/plugins.core.helpandsupport.credits.md)
* [debugconsole](api/plugins/plugins.core.helpandsupport.debugconsole.md)
* [developerguide](api/plugins/plugins.core.helpandsupport.developerguide.md)
@@ -373,6 +375,7 @@
* [manager](api/plugins/plugins.core.midi.manager.md)
* [controls](api/plugins/plugins.core.midi.manager.controls.md)
* [prefs](api/plugins/plugins.core.midi.prefs.md)
+ * [prefs](api/plugins/plugins.core.monogram.prefs.md)
* [history](api/plugins/plugins.core.pasteboard.history.md)
* [general](api/plugins/plugins.core.preferences.general.md)
* [manager](api/plugins/plugins.core.preferences.manager.md)
@@ -418,6 +421,9 @@
* [virtual](api/plugins/plugins.core.touchbar.virtual.md)
* [volume](api/plugins/plugins.core.touchbar.widgets.volume.md)
* [windowSlide](api/plugins/plugins.core.touchbar.widgets.windowSlide.md)
+ * [changeapplications](api/plugins/plugins.core.tourbox.changeapplications.md)
+ * [manager](api/plugins/plugins.core.tourbox.manager.md)
+ * [prefs](api/plugins/plugins.core.tourbox.prefs.md)
* [panel](api/plugins/plugins.core.utilities.manager.panel.md)
* [manager](api/plugins/plugins.core.watchfolders.manager.md)
* [panel](api/plugins/plugins.core.watchfolders.manager.panel.md)
@@ -679,6 +685,7 @@
* [redshift](api/hs/hs.redshift.md)
* [screen](api/hs/hs.screen.md)
* [watcher](api/hs/hs.screen.watcher.md)
+ * [serial](api/hs/hs.serial.md)
* [settings](api/hs/hs.settings.md)
* [sharing](api/hs/hs.sharing.md)
* [socket](api/hs/hs.socket.md)
diff --git a/api/cp/cp.apple.finalcutpro.inspector.color.ColorWheels.md b/api/cp/cp.apple.finalcutpro.inspector.color.ColorWheels.md
index 61147ca..558d259 100644
--- a/api/cp/cp.apple.finalcutpro.inspector.color.ColorWheels.md
+++ b/api/cp/cp.apple.finalcutpro.inspector.color.ColorWheels.md
@@ -15,6 +15,7 @@ Extends [Element](cp.ui.Element.md)
* [highlights](#highlights)
* [hue](#hue)
* [hueRow](#huerow)
+ * [hueSlider](#hueslider)
* [hueTextField](#huetextfield)
* [master](#master)
* [maxValue](#maxvalue)
@@ -23,13 +24,16 @@ Extends [Element](cp.ui.Element.md)
* [mix](#mix)
* [mixRow](#mixrow)
* [mixSlider](#mixslider)
+ * [mixTextField](#mixtextfield)
* [shadows](#shadows)
* [temperature](#temperature)
* [temperatureRow](#temperaturerow)
* [temperatureSlider](#temperatureslider)
+ * [temperatureTextField](#temperaturetextfield)
* [tint](#tint)
* [tintRow](#tintrow)
* [tintSlider](#tintslider)
+ * [tintTextField](#tinttextfield)
* [value](#value)
* [viewingAllWheels](#viewingallwheels)
* [viewMode](#viewmode)
@@ -86,6 +90,12 @@ Extends [Element](cp.ui.Element.md)
| **Type** | Field |
| **Description** | A `PropertyRow` that provides access to the 'Hue' parameter, and `axuielement` |
+#### [hueSlider](#hueslider)
+| **Signature** | `cp.apple.finalcutpro.inspector.color.ColorWheels.hueSlider ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Returns a `Slider` that provides access to the 'Hue' slider. |
+
#### [hueTextField](#huetextfield)
| **Signature** | `cp.apple.finalcutpro.inspector.color.ColorWheels.hueTextField ` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
@@ -134,6 +144,12 @@ Extends [Element](cp.ui.Element.md)
| **Type** | Field |
| **Description** | A `Slider` that provides access to the 'Mix' slider. |
+#### [mixTextField](#mixtextfield)
+| **Signature** | `cp.apple.finalcutpro.inspector.color.ColorWheels.mixTextField ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | A `TextField` that provides access to the 'Mix' slider. |
+
#### [shadows](#shadows)
| **Signature** | `cp.apple.finalcutpro.inspector.color.ColorWheels.shadows ` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
@@ -158,6 +174,12 @@ Extends [Element](cp.ui.Element.md)
| **Type** | Field |
| **Description** | A `Slider` that provides access to the 'Temperatures' slider. |
+#### [temperatureTextField](#temperaturetextfield)
+| **Signature** | `cp.apple.finalcutpro.inspector.color.ColorWheels.temperatureTextField ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | A `TextField` that provides access to the 'Temperature' slider. |
+
#### [tint](#tint)
| **Signature** | `cp.apple.finalcutpro.inspector.color.ColorWheels.tint ` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
@@ -176,6 +198,12 @@ Extends [Element](cp.ui.Element.md)
| **Type** | Field |
| **Description** | Returns a `Slider` that provides access to the 'Tint' slider. |
+#### [tintTextField](#tinttextfield)
+| **Signature** | `cp.apple.finalcutpro.inspector.color.ColorWheels.tintTextField ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | A `TextField` that provides access to the 'Tint' slider. |
+
#### [value](#value)
| **Signature** | `cp.apple.finalcutpro.inspector.color.ColorWheels.value ` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
diff --git a/api/cp/cp.commands.command.md b/api/cp/cp.commands.command.md
index 1b0d873..392ad1f 100644
--- a/api/cp/cp.commands.command.md
+++ b/api/cp/cp.commands.command.md
@@ -18,12 +18,14 @@ Commands Module.
* [getAction](#getaction)
* [getFirstShortcut](#getfirstshortcut)
* [getGroup](#getgroup)
+ * [getImage](#getimage)
* [getShortcuts](#getshortcuts)
* [getSubtitle](#getsubtitle)
* [getTitle](#gettitle)
* [groupedBy](#groupedby)
* [hasAction](#hasaction)
* [id](#id)
+ * [image](#image)
* [new](#new)
* [parent](#parent)
* [pressed](#pressed)
@@ -136,6 +138,14 @@ Commands Module.
| **Parameters** |
|
| **Returns** | |
+#### [getImage](#getimage)
+| **Signature** | `cp.commands.command:getImage() -> hs.image object` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Returns the current image. |
+| **Parameters** | |
+| **Returns** | - A hs.image object or
nil
if not is specified.
|
+
#### [getShortcuts](#getshortcuts)
| **Signature** | `cp.commands.command:getShortcuts() -> command` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
@@ -164,7 +174,7 @@ Commands Module.
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
| **Type** | Method |
| **Description** | Specifies that the command is grouped by a specific value. |
-| **Parameters** | |
+| **Parameters** | |
| **Returns** | - The
cp.commands.command
instance.
|
#### [hasAction](#hasaction)
@@ -183,6 +193,14 @@ Commands Module.
| **Parameters** | |
| **Returns** | |
+#### [image](#image)
+| **Signature** | `cp.commands.command:image(img) -> cp.commands.command` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Sets the specified image and returns the `cp.commands.command` instance. |
+| **Parameters** | img
- The hs.image
to use.
|
+| **Returns** | - The
cp.commands.command
instance.
|
+
#### [new](#new)
| **Signature** | `cp.commands.command.new() -> command` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
@@ -227,7 +245,7 @@ Commands Module.
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
| **Type** | Method |
| **Description** | Deletes any existing shortcuts and applies the new set of shortcuts in the table. |
-| **Parameters** | - shortcuts - The set of
cp.commands.shortcuts
to apply to this command.
|
+| **Parameters** | - shortcuts - The set of
cp.commands.shortcuts
to apply to this command.
|
| **Returns** | - The
cp.commands.command
instance.
|
#### [subtitled](#subtitled)
@@ -235,7 +253,8 @@ Commands Module.
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
| **Type** | Method |
| **Description** | Sets the specified subtitle and returns the `cp.commands.command` instance. |
-| **Parameters** | subtitle
- The new subtitle.
|
+| **Parameters** | subtitle
- The new subtitle.
|
+| **Returns** | - The
cp.commands.command
instance.
|
#### [titled](#titled)
| **Signature** | `cp.commands.command:titled(title) -> command` |
diff --git a/api/cp/cp.tools.md b/api/cp/cp.tools.md
index dbbf0d4..d4c24f6 100644
--- a/api/cp/cp.tools.md
+++ b/api/cp/cp.tools.md
@@ -49,6 +49,7 @@ A collection of handy miscellaneous tools for Lua development.
* [ninjaMouseClick](#ninjamouseclick)
* [ninjaRightMouseClick](#ninjarightmouseclick)
* [numberToWord](#numbertoword)
+ * [optionPressed](#optionpressed)
* [playErrorSound](#playerrorsound)
* [readFromFile](#readfromfile)
* [removeFilenameFromPath](#removefilenamefrompath)
@@ -439,6 +440,14 @@ A collection of handy miscellaneous tools for Lua development.
| **Parameters** | - number - A whole number between 0 and 10
|
| **Returns** | |
+#### [optionPressed](#optionpressed)
+| **Signature** | `cp.tools.optionPressed() -> boolean` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Function |
+| **Description** | Is the Option Key being pressed? |
+| **Parameters** | |
+| **Returns** | true
if the option key is being pressed, otherwise false
.
|
+
#### [playErrorSound](#playerrorsound)
| **Signature** | `cp.tools.playErrorSound() -> none` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
diff --git a/api/hs/hs.md b/api/hs/hs.md
index b0e612a..705ee8d 100644
--- a/api/hs/hs.md
+++ b/api/hs/hs.md
@@ -64,6 +64,7 @@ Core Hammerspoon functionality
* [hs.plist](hs.plist.md)
* [hs.redshift](hs.redshift.md)
* [hs.screen](hs.screen.md)
+ * [hs.serial](hs.serial.md)
* [hs.settings](hs.settings.md)
* [hs.sharing](hs.sharing.md)
* [hs.socket](hs.socket.md)
diff --git a/api/hs/hs.serial.md b/api/hs/hs.serial.md
new file mode 100644
index 0000000..2304bc1
--- /dev/null
+++ b/api/hs/hs.serial.md
@@ -0,0 +1,204 @@
+# [docs](index.md) » hs.serial
+---
+
+Communicate with external devices through a serial port (most commonly RS-232).
+
+Powered by ORSSerialPort. Thrown together by @latenitefilms.
+
+Copyright (c) 2011-2012 Andrew R. Madsen (andrew@openreelsoftware.com)
+
+Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+## API Overview
+* Functions - API calls offered directly by the extension
+ * [availablePortNames](#availableportnames)
+ * [availablePortPaths](#availableportpaths)
+ * [deviceCallback](#devicecallback)
+* Constructors - API calls which return an object, typically one that offers API methods
+ * [newFromName](#newfromname)
+ * [newFromPath](#newfrompath)
+* Methods - API calls which can only be made on an object returned by a constructor
+ * [baudRate](#baudrate)
+ * [callback](#callback)
+ * [close](#close)
+ * [dataBits](#databits)
+ * [isOpen](#isopen)
+ * [name](#name)
+ * [open](#open)
+ * [parity](#parity)
+ * [path](#path)
+ * [sendData](#senddata)
+ * [shouldEchoReceivedData](#shouldechoreceiveddata)
+ * [stopBits](#stopbits)
+ * [usesDTRDSRFlowControl](#usesdtrdsrflowcontrol)
+ * [usesRTSCTSFlowControl](#usesrtsctsflowcontrol)
+
+## API Documentation
+
+### Functions
+
+#### [availablePortNames](#availableportnames)
+| **Signature** | `hs.serial.availablePortNames() -> table` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Function |
+| **Description** | Returns a table of currently connected serial ports names. |
+| **Parameters** | |
+| **Returns** | - A table containing the names of any connected serial port names as strings.
|
+
+#### [availablePortPaths](#availableportpaths)
+| **Signature** | `hs.serial.availablePortPaths() -> table` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Function |
+| **Description** | Returns a table of currently connected serial ports paths. |
+| **Parameters** | |
+| **Returns** | - A table containing the names of any connected serial port paths as strings.
|
+
+#### [deviceCallback](#devicecallback)
+| **Signature** | `hs.serial.deviceCallback(callbackFn) -> none` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Function |
+| **Description** | A callback that's triggered when a serial port is added or removed from the system. |
+| **Parameters** | - callbackFn - the callback function to trigger.
|
+| **Returns** | |
+| **Notes** | - The callback function should expect 1 argument and should not return anything:
devices
- A table containing the names of any serial ports connected as strings.
|
+
+### Constructors
+
+#### [newFromName](#newfromname)
+| **Signature** | `hs.serial.newFromName(portName) -> serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Constructor |
+| **Description** | Creates a new `hs.serial` object using the port name. |
+| **Parameters** | - portName - A string containing the port name.
|
+| **Returns** | - An
hs.serial
object or nil
if an error occured.
|
+| **Notes** | - A valid port name can be found by checking
hs.serial.availablePortNames()
.
|
+
+#### [newFromPath](#newfrompath)
+| **Signature** | `hs.serial.newFromPath(path) -> serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Constructor |
+| **Description** | Creates a new `hs.serial` object using a path. |
+| **Parameters** | - path - A string containing the path (i.e. "/dev/cu.usbserial").
|
+| **Returns** | - An
hs.serial
object or nil
if an error occured.
|
+| **Notes** | - A valid port name can be found by checking
hs.serial.availablePortPaths()
.
|
+
+### Methods
+
+#### [baudRate](#baudrate)
+| **Signature** | `hs.serial:baudRate([value], [allowNonStandardBaudRates]) -> number | serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Gets or sets the baud rate for the serial port. |
+| **Parameters** | - value - An optional number to set the baud rate.
- [allowNonStandardBaudRates] - An optional boolean to enable non-standard baud rates. Defaults to
false
.
|
+| **Returns** | - If a value is specified, then this method returns the serial port object. Otherwise this method returns the baud rate as a number
|
+| **Notes** | - This function supports the following standard baud rates as numbers: 300, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600, 115200, 230400.
- If no baud rate is supplied, it defaults to 115200.
|
+
+#### [callback](#callback)
+| **Signature** | `hs.serial:callback(callbackFn | nil) -> serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Sets or removes a callback function for the `hs.serial` object. |
+| **Parameters** | callbackFn
- a function to set as the callback for this hs.serial
object. If the value provided is nil
, any currently existing callback function is removed.
|
+| **Returns** | |
+| **Notes** | - The callback function should expect 4 arguments and should not return anything:
serialPortObject
- The serial port object that triggered the callback.callbackType
- A string containing "opened", "closed", "received", "removed" or "error".message
- If the callbackType
is "received", then this will be the data received as a string. If the callbackType
is "error", this will be the error message as a string.hexadecimalString
- If the callbackType
is "received", then this will be the data received as a hexadecimal string.
|
+
+#### [close](#close)
+| **Signature** | `hs.serial:close() -> serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Closes the serial port. |
+| **Parameters** | |
+| **Returns** | |
+
+#### [dataBits](#databits)
+| **Signature** | `hs.serial:dataBits([value]) -> number | serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Gets or sets the number of data bits for the serial port. |
+| **Parameters** | - value - An optional number to set the number of stop bits. It can be 5 to 8.
|
+| **Returns** | - If a value is specified, then this method returns the serial port object. Otherwise this method reutrns a string value of "none", "odd" or "even".
- The default value is 8.
|
+
+#### [isOpen](#isopen)
+| **Signature** | `hs.serial:isOpen() -> boolean` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Gets whether or not a serial port is open. |
+| **Parameters** | |
+| **Returns** | true
if open, otherwise false
.
|
+
+#### [name](#name)
+| **Signature** | `hs.serial:name() -> string` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Returns the name of a `hs.serial` object. |
+| **Parameters** | |
+| **Returns** | |
+
+#### [open](#open)
+| **Signature** | `hs.serial:open() -> serialPortObject | nil` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Opens the serial port. |
+| **Parameters** | |
+| **Returns** | - The
hs.serial
object or nil
if the port could not be opened.
|
+
+#### [parity](#parity)
+| **Signature** | `hs.serial:parity([value]) -> string | serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Gets or sets the parity for the serial port. |
+| **Parameters** | - value - An optional string to set the parity. It can be "none", "odd" or "even".
|
+| **Returns** | - If a value is specified, then this method returns the serial port object. Otherwise this method reutrns a string value of "none", "odd" or "even".
|
+
+#### [path](#path)
+| **Signature** | `hs.serial:path() -> string` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Returns the path of a `hs.serial` object. |
+| **Parameters** | |
+| **Returns** | |
+
+#### [sendData](#senddata)
+| **Signature** | `hs.serial:sendData(value) -> none` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Sends data via a serial port. |
+| **Parameters** | - value - A string of data to send.
|
+| **Returns** | |
+
+#### [shouldEchoReceivedData](#shouldechoreceiveddata)
+| **Signature** | `hs.serial:shouldEchoReceivedData([value]) -> boolean | serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Gets or sets whether the port should echo received data. |
+| **Parameters** | - value - An optional boolean.
|
+| **Returns** | - If a value is specified, then this method returns the serial port object. Otherwise this method returns a boolean.
- The default value is
false
.
|
+
+#### [stopBits](#stopbits)
+| **Signature** | `hs.serial:stopBits([value]) -> number | serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Gets or sets the number of stop bits for the serial port. |
+| **Parameters** | - value - An optional number to set the number of stop bits. It can be 1 or 2.
|
+| **Returns** | - If a value is specified, then this method returns the serial port object. Otherwise this method reutrns a string value of "none", "odd" or "even".
- The default value is 1.
|
+
+#### [usesDTRDSRFlowControl](#usesdtrdsrflowcontrol)
+| **Signature** | `hs.serial:usesDTRDSRFlowControl([value]) -> boolean | serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Gets or sets whether the port should use DTR/DSR Flow Control. |
+| **Parameters** | - value - An optional boolean.
|
+| **Returns** | - If a value is specified, then this method returns the serial port object. Otherwise this method returns a boolean.
- The default value is
false
.
|
+
+#### [usesRTSCTSFlowControl](#usesrtsctsflowcontrol)
+| **Signature** | `hs.serial:usesRTSCTSFlowControl([value]) -> boolean | serialPortObject` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Gets or sets whether the port should use RTS/CTS Flow Control. |
+| **Parameters** | - value - An optional boolean.
|
+| **Returns** | - If a value is specified, then this method returns the serial port object. Otherwise this method returns a boolean.
- The default value is
false
.
|
+
diff --git a/api/hs/index.md b/api/hs/index.md
index aec7b89..5accfd8 100644
--- a/api/hs/index.md
+++ b/api/hs/index.md
@@ -107,6 +107,7 @@
| [hs.redshift](hs.redshift.md) | Inverts and/or lowers the color temperature of the screen(s) on a schedule, for a more pleasant experience at night |
| [hs.screen](hs.screen.md) | Manipulate screens (i.e. monitors) |
| [hs.screen.watcher](hs.screen.watcher.md) | Watch for screen layout changes |
+| [hs.serial](hs.serial.md) | Communicate with external devices through a serial port (most commonly RS-232). |
| [hs.settings](hs.settings.md) | Serialize simple Lua variables across Hammerspoon launches |
| [hs.sharing](hs.sharing.md) | Share items with the macOS Sharing Services under the control of Hammerspoon. |
| [hs.socket](hs.socket.md) | Talk to custom protocols using asynchronous TCP sockets |
diff --git a/api/plugins/index.md b/api/plugins/index.md
index a902702..63c4640 100644
--- a/api/plugins/index.md
+++ b/api/plugins/index.md
@@ -31,11 +31,13 @@
| [plugins.core.commands.global](plugins.core.commands.global.md) | The 'global' command collection. |
| [plugins.core.console](plugins.core.console.md) | Search Console |
| [plugins.core.console.applications](plugins.core.console.applications.md) | Adds all installed applications to the Search Console. |
+| [plugins.core.console.keyboardmaestromacros](plugins.core.console.keyboardmaestromacros.md) | Adds Keyboard Maestro Macros to the Search Console. |
| [plugins.core.console.scripts](plugins.core.console.scripts.md) | Adds all installed AppleScripts to the Search Console. |
| [plugins.core.controlsurfaces.manager](plugins.core.controlsurfaces.manager.md) | Manager for the CommandPost Preferences Window. |
| [plugins.core.disk.automount](plugins.core.disk.automount.md) | Automatic Disk Mounting & Unmounting. |
| [plugins.core.disk.favourites](plugins.core.disk.favourites.md) | Action that allows you save and open user-defined favourite folders. |
| [plugins.core.display](plugins.core.display.md) | Display Controls. |
+| [plugins.core.gamepad.prefs](plugins.core.gamepad.prefs.md) | Gamepad Preferences Panel |
| [plugins.core.helpandsupport.credits](plugins.core.helpandsupport.credits.md) | Credits Menu Item. |
| [plugins.core.helpandsupport.debugconsole](plugins.core.helpandsupport.debugconsole.md) | Debug Console Menu Item. |
| [plugins.core.helpandsupport.developerguide](plugins.core.helpandsupport.developerguide.md) | Developer Guide Menu Item. |
@@ -55,6 +57,7 @@
| [plugins.core.midi.manager](plugins.core.midi.manager.md) | MIDI Manager Plugin. |
| [plugins.core.midi.manager.controls](plugins.core.midi.manager.controls.md) | MIDI Manager Controls. |
| [plugins.core.midi.prefs](plugins.core.midi.prefs.md) | MIDI Preferences Panel |
+| [plugins.core.monogram.prefs](plugins.core.monogram.prefs.md) | Monogram Preferences Panel |
| [plugins.core.pasteboard.history](plugins.core.pasteboard.history.md) | Adds text pasteboard history actions to the Search Console. |
| [plugins.core.preferences.general](plugins.core.preferences.general.md) | General Preferences Panel. |
| [plugins.core.preferences.manager](plugins.core.preferences.manager.md) | Manager for the CommandPost Preferences Window. |
@@ -100,6 +103,9 @@
| [plugins.core.touchbar.virtual](plugins.core.touchbar.virtual.md) | Virtual Touch Bar Manager |
| [plugins.core.touchbar.widgets.volume](plugins.core.touchbar.widgets.volume.md) | Volume Slider |
| [plugins.core.touchbar.widgets.windowSlide](plugins.core.touchbar.widgets.windowSlide.md) | Window Slide Widget for Touch Bar. |
+| [plugins.core.tourbox.changeapplications](plugins.core.tourbox.changeapplications.md) | Allows you to change the TourBox application if set to manual. |
+| [plugins.core.tourbox.manager](plugins.core.tourbox.manager.md) | Loupedeck CT Manager Plugin. |
+| [plugins.core.tourbox.prefs](plugins.core.tourbox.prefs.md) | TourBox Preferences Panel |
| [plugins.core.utilities.manager.panel](plugins.core.utilities.manager.panel.md) | CommandPost Preferences Panel. |
| [plugins.core.watchfolders.manager](plugins.core.watchfolders.manager.md) | Manager for the CommandPost Watch Folders Panel. |
| [plugins.core.watchfolders.manager.panel](plugins.core.watchfolders.manager.panel.md) | Watch Folder Panel Manager. |
@@ -162,7 +168,7 @@
| [plugins.finalcutpro.menu.menuaction](plugins.finalcutpro.menu.menuaction.md) | A `action` which will trigger an Final Cut Pro menu with a matching path, if available/enabled. |
| [plugins.finalcutpro.menu.proxyicon](plugins.finalcutpro.menu.proxyicon.md) | Final Cut Pro Proxy Icon Plugin. |
| [plugins.finalcutpro.midi.controls.audio](plugins.finalcutpro.midi.controls.audio.md) | Final Cut Pro MIDI Audio Controls. |
-| [plugins.finalcutpro.midi.controls.colorboard](plugins.finalcutpro.midi.controls.colorboard.md) | Final Cut Pro MIDI Color Controls. |
+| [plugins.finalcutpro.midi.controls.colorboard](plugins.finalcutpro.midi.controls.colorboard.md) | Final Cut Pro MIDI Color Board Controls. |
| [plugins.finalcutpro.midi.controls.colorwheels](plugins.finalcutpro.midi.controls.colorwheels.md) | Final Cut Pro MIDI Color Controls. |
| [plugins.finalcutpro.midi.controls.controlui.absolute](plugins.finalcutpro.midi.controls.controlui.absolute.md) | Adds the ability to control any Final Cut Pro User Interface Element via a MIDI Knob/Slider. |
| [plugins.finalcutpro.midi.controls.controlui.relative](plugins.finalcutpro.midi.controls.controlui.relative.md) | Adds the ability to control any Final Cut Pro User Interface Element via a MIDI Knob/Slider. |
diff --git a/api/plugins/plugins.core.action.activator.md b/api/plugins/plugins.core.action.activator.md
index b7e3d0c..97cb80e 100644
--- a/api/plugins/plugins.core.action.activator.md
+++ b/api/plugins/plugins.core.action.activator.md
@@ -65,6 +65,7 @@ will not affect the "yadayada" activator.
* [toolbarIcons](#toolbaricons)
* [unfavoriteChoice](#unfavoritechoice)
* [unhideChoice](#unhidechoice)
+ * [updateSelectedToolbarIcon](#updateselectedtoolbaricon)
## API Documentation
@@ -185,11 +186,11 @@ will not affect the "yadayada" activator.
| **Returns** | |
#### [disableAllHandlers](#disableallhandlers)
-| **Signature** | `plugins.core.action.activator:disableAllHandlers() -> none` |
+| **Signature** | `plugins.core.action.activator:disableAllHandlers([groupID]) -> none` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
| **Type** | Method |
| **Description** | Disables the all allowed handlers. |
-| **Parameters** | |
+| **Parameters** | - groupID - An optional group ID to only disable all handlers of a specific group
|
| **Returns** | |
#### [disableHandler](#disablehandler)
@@ -201,11 +202,11 @@ will not affect the "yadayada" activator.
| **Returns** | true
if the handler exists and was disabled.
|
#### [enableAllHandlers](#enableallhandlers)
-| **Signature** | `plugins.core.action.activator:enableAllHandlers() -> none` |
+| **Signature** | `plugins.core.action.activator:enableAllHandlers([groupID]]) -> none` |
| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
| **Type** | Method |
| **Description** | Enables the all allowed handlers. |
-| **Parameters** | |
+| **Parameters** | - groupID - An optional group ID to only enable all handlers of a specific group
|
| **Returns** | |
#### [enableHandler](#enablehandler)
@@ -398,3 +399,11 @@ will not affect the "yadayada" activator.
| **Parameters** | id
- The choice ID to hide.
|
| **Returns** | true
if successfully unhidden otherwise false
.
|
+#### [updateSelectedToolbarIcon](#updateselectedtoolbaricon)
+| **Signature** | `plugins.core.action.activator:updateSelectedToolbarIcon() -> none` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Method |
+| **Description** | Updates the selected toolbar icon. |
+| **Parameters** | |
+| **Returns** | |
+
diff --git a/api/plugins/plugins.core.console.keyboardmaestromacros.md b/api/plugins/plugins.core.console.keyboardmaestromacros.md
new file mode 100644
index 0000000..5bf7cd9
--- /dev/null
+++ b/api/plugins/plugins.core.console.keyboardmaestromacros.md
@@ -0,0 +1,9 @@
+# [docs](index.md) » plugins.core.console.keyboardmaestromacros
+---
+
+Adds Keyboard Maestro Macros to the Search Console.
+
+## API Overview
+
+## API Documentation
+
diff --git a/api/plugins/plugins.core.console.md b/api/plugins/plugins.core.console.md
index d24b1db..ff35692 100644
--- a/api/plugins/plugins.core.console.md
+++ b/api/plugins/plugins.core.console.md
@@ -5,6 +5,7 @@ Search Console
## Submodules
* [plugins.core.console.applications](plugins.core.console.applications.md)
+ * [plugins.core.console.keyboardmaestromacros](plugins.core.console.keyboardmaestromacros.md)
* [plugins.core.console.scripts](plugins.core.console.scripts.md)
## API Overview
diff --git a/api/plugins/plugins.core.gamepad.prefs.md b/api/plugins/plugins.core.gamepad.prefs.md
new file mode 100644
index 0000000..04ae607
--- /dev/null
+++ b/api/plugins/plugins.core.gamepad.prefs.md
@@ -0,0 +1,9 @@
+# [docs](index.md) » plugins.core.gamepad.prefs
+---
+
+Gamepad Preferences Panel
+
+## API Overview
+
+## API Documentation
+
diff --git a/api/plugins/plugins.core.monogram.prefs.md b/api/plugins/plugins.core.monogram.prefs.md
new file mode 100644
index 0000000..6104ff8
--- /dev/null
+++ b/api/plugins/plugins.core.monogram.prefs.md
@@ -0,0 +1,9 @@
+# [docs](index.md) » plugins.core.monogram.prefs
+---
+
+Monogram Preferences Panel
+
+## API Overview
+
+## API Documentation
+
diff --git a/api/plugins/plugins.core.touchbar.banks.md b/api/plugins/plugins.core.touchbar.banks.md
index 6bc69cb..2f50b15 100644
--- a/api/plugins/plugins.core.touchbar.banks.md
+++ b/api/plugins/plugins.core.touchbar.banks.md
@@ -4,18 +4,6 @@
Touch Bar Bank Actions.
## API Overview
-* Functions - API calls offered directly by the extension
- * [init](#init)
## API Documentation
-### Functions
-
-#### [init](#init)
-| **Signature** | `plugins.core.touchbar.banks.init() -> nil` |
-| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
-| **Type** | Function |
-| **Description** | Initialise the module. |
-| **Parameters** | |
-| **Returns** | |
-
diff --git a/api/plugins/plugins.core.tourbox.changeapplications.md b/api/plugins/plugins.core.tourbox.changeapplications.md
new file mode 100644
index 0000000..8397ef1
--- /dev/null
+++ b/api/plugins/plugins.core.tourbox.changeapplications.md
@@ -0,0 +1,9 @@
+# [docs](index.md) » plugins.core.tourbox.changeapplications
+---
+
+Allows you to change the TourBox application if set to manual.
+
+## API Overview
+
+## API Documentation
+
diff --git a/api/plugins/plugins.core.tourbox.manager.md b/api/plugins/plugins.core.tourbox.manager.md
new file mode 100644
index 0000000..d65077f
--- /dev/null
+++ b/api/plugins/plugins.core.tourbox.manager.md
@@ -0,0 +1,87 @@
+# [docs](index.md) » plugins.core.tourbox.manager
+---
+
+Loupedeck CT Manager Plugin.
+
+## API Overview
+* Variables - Configurable values
+ * [defaultLayout](#defaultlayout)
+* Functions - API calls offered directly by the extension
+ * [connectToTourBox](#connecttotourbox)
+ * [reset](#reset)
+ * [resetTimers](#resettimers)
+* Fields - Variables which can only be accessed from an object returned by a constructor
+ * [activeBanks](#activebanks)
+ * [automaticallySwitchApplications](#automaticallyswitchapplications)
+ * [displayMessageWhenChangingBanks](#displaymessagewhenchangingbanks)
+ * [enabled](#enabled)
+ * [items](#items)
+
+## API Documentation
+
+### Variables
+
+#### [defaultLayout](#defaultlayout)
+| **Signature** | `plugins.core.tourbox.manager.defaultLayout -> table` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Variable |
+| **Description** | Default Loupedeck CT Layout |
+
+### Functions
+
+#### [connectToTourBox](#connecttotourbox)
+| **Signature** | `plugins.core.tourbox.manager.connectToTourBox() -> none` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Function |
+| **Description** | Attempts to establish the TourBox serial connection. |
+| **Parameters** | |
+| **Returns** | |
+
+#### [reset](#reset)
+| **Signature** | `plugins.core.tourbox.manager.reset()` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Function |
+| **Description** | Resets the config back to the default layout. |
+| **Parameters** | |
+| **Returns** | |
+
+#### [resetTimers](#resettimers)
+| **Signature** | `plugins.core.tourbox.manager.resetTimers() -> none` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Function |
+| **Description** | Resets all the various timers and memories. |
+| **Parameters** | |
+| **Returns** | |
+
+### Fields
+
+#### [activeBanks](#activebanks)
+| **Signature** | `plugins.core.tourbox.manager.activeBanks ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Table of active banks for each application. |
+
+#### [automaticallySwitchApplications](#automaticallyswitchapplications)
+| **Signature** | `plugins.core.tourbox.manager.automaticallySwitchApplications ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Enable or disable the automatic switching of applications. |
+
+#### [displayMessageWhenChangingBanks](#displaymessagewhenchangingbanks)
+| **Signature** | `plugins.core.tourbox.manager.displayMessageWhenChangingBanks ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Display message when changing banks? |
+
+#### [enabled](#enabled)
+| **Signature** | `plugins.core.tourbox.manager.enabled ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Is Loupedeck CT support enabled? |
+
+#### [items](#items)
+| **Signature** | `plugins.core.tourbox.manager.items ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Contains all the saved TourBox layouts. |
+
diff --git a/api/plugins/plugins.core.tourbox.prefs.md b/api/plugins/plugins.core.tourbox.prefs.md
new file mode 100644
index 0000000..2c26c31
--- /dev/null
+++ b/api/plugins/plugins.core.tourbox.prefs.md
@@ -0,0 +1,47 @@
+# [docs](index.md) » plugins.core.tourbox.prefs
+---
+
+TourBox Preferences Panel
+
+## API Overview
+* Fields - Variables which can only be accessed from an object returned by a constructor
+ * [lastApplication](#lastapplication)
+ * [lastControlType](#lastcontroltype)
+ * [lastExportPath](#lastexportpath)
+ * [lastImportPath](#lastimportpath)
+ * [lastPage](#lastpage)
+
+## API Documentation
+
+### Fields
+
+#### [lastApplication](#lastapplication)
+| **Signature** | `plugins.core.tourbox.prefs.lastApplication ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Last Bank used in the Preferences Panel. |
+
+#### [lastControlType](#lastcontroltype)
+| **Signature** | `plugins.core.tourbox.prefs.lastControlType ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Last Selected Control Type used in the Preferences Panel. |
+
+#### [lastExportPath](#lastexportpath)
+| **Signature** | `plugins.core.tourbox.prefs.lastExportPath ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Last Export path. |
+
+#### [lastImportPath](#lastimportpath)
+| **Signature** | `plugins.core.tourbox.prefs.lastImportPath ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Last Import path. |
+
+#### [lastPage](#lastpage)
+| **Signature** | `plugins.core.tourbox.prefs.lastPage ` |
+| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
+| **Type** | Field |
+| **Description** | Last Page used in the Preferences Panel. |
+
diff --git a/api/plugins/plugins.finalcutpro.midi.controls.colorboard.md b/api/plugins/plugins.finalcutpro.midi.controls.colorboard.md
index 64ead7b..067c561 100644
--- a/api/plugins/plugins.finalcutpro.midi.controls.colorboard.md
+++ b/api/plugins/plugins.finalcutpro.midi.controls.colorboard.md
@@ -1,7 +1,7 @@
# [docs](index.md) » plugins.finalcutpro.midi.controls.colorboard
---
-Final Cut Pro MIDI Color Controls.
+Final Cut Pro MIDI Color Board Controls.
## API Overview
diff --git a/api/plugins/plugins.finalcutpro.midi.controls.colorwheels.md b/api/plugins/plugins.finalcutpro.midi.controls.colorwheels.md
index 8f4ffe6..eca3099 100644
--- a/api/plugins/plugins.finalcutpro.midi.controls.colorwheels.md
+++ b/api/plugins/plugins.finalcutpro.midi.controls.colorwheels.md
@@ -4,18 +4,6 @@
Final Cut Pro MIDI Color Controls.
## API Overview
-* Functions - API calls offered directly by the extension
- * [init](#init)
## API Documentation
-### Functions
-
-#### [init](#init)
-| **Signature** | `plugins.finalcutpro.midi.controls.colorwheels.init() -> nil` |
-| -----------------------------------------------------|---------------------------------------------------------------------------------------------------------|
-| **Type** | Function |
-| **Description** | Initialise the module. |
-| **Parameters** | |
-| **Returns** | |
-