[Tip] Add Clicks or Delay to Macros
Here are a few tips to improve macros on Monogram, which for some reason are only available in Manual, not in the GUI,
Add a longer delay,
"interval": 150,
Just edit the above line
Add clicks to macros
"click": left
"virtual": true
Add a key, then replace it in Manual with the above
For example, the below code clicks to create a text box in Pixelmator, then double clicks to edit it. Sometimes double click doesn't work for me, so you can use two single clicks instead.
{
"label": "Add Text",
"press": {
"interval": 50,
"macro": [
{
"key": "t",
"localCharacter": "t",
"modifiers": [],
"virtual": true
},
{
"click": "left",
"virtual": true
},
{
"click": "left",
"virtual": true
},
{
"click": "left",
"virtual": true
}
]
}
}
Click with a dial, by press or turn.
Useful in some apps that Pixelmator that ask you to hit a small up or down button repeatedly
{
"label": "Click Dial",
"leftTurn": {
"click": "left",
"virtual": true
},
"press": {
"click": "left",
"virtual": true
},
"rightTurn": {
"click": "left",
"virtual": true
},
"sensitivity": 9
}
Feature suggestions
I'd love to be able to click with a modifier key held, click and hold, or simply access the above in the GUI
It feels like some of these features might be hidden because they could cause problems for people, or are uncommon needs, which is an Apple-like mentality. That's not a bad thing, but I felt that Monogram's design philosophy was more about adapting to how you work, than deciding it for you.
-
Just did some testing, looks like the interval setting applies to the space between each action within a macro.
If you want two actions to happen quickly, a pause, then two more things to happen quickly you can nest macros within macros (!) and set different intervals for each.
Seems like macros can also be applied to left/right movement of a dial.
-
Here's a dial that activates a nested macro on right turn.
Edit: note that the macro nest goes three macros deep; apparently a macro doesn't wait for a nested macro to finish before moving onto the next step.
Agree that starting to compile these 'hacks' would be great. I'm going to keep experimenting as I build up some workflows but then can start thinking about a public repository or some such.
{
"leftTurn": {
"key": "",
"localCharacter": "",
"modifiers": [],
"virtual": false
},
"rightTurn": {
"interval": 50,
"macro": [
{
"key": "t",
"localCharacter": "t",
"modifiers": [],
"virtual": true
},
{
"key": "e",
"localCharacter": "e",
"modifiers": [],
"virtual": true
},
{
"interval": 500,
"macro": [
{
"key": "s",
"localCharacter": "s",
"modifiers": [],
"virtual": true
},
{
"key": "t",
"localCharacter": "t",
"modifiers": [],
"virtual": true
},
{
"interval": 50,
"macro": [
{
"key": "i",
"localCharacter": "i",
"modifiers": [],
"virtual": true
},
{
"key": "n",
"localCharacter": "n",
"modifiers": [],
"virtual": true
},
{
"key": "g",
"localCharacter": "g",
"modifiers": [],
"virtual": true
}
]
}
]
}
]
},
"sensitivity": 5
}
Please sign in to leave a comment.
Comments
3 comments