Thanks for the clarification and response.
For sanity purposes, I’ve edited the script to give it some order.
ifNotShift ifHold final tapKey 2
ifShift final suppressMods tapKey 3
ifShift ifHold final suppressMods tapKey 4
tapKey 1
This is a revised version of your suggested solution. I removed the double tap, since there’s no problem with that keymap, and reordered the numbers.
Using this new script, I’m running into 2 issues.
- Using a macro for shift key. If I use the
enter/shift
macro above, I get the following results:
ifNotShift ifHold final tapKey 2 // 2
ifShift final suppressMods tapKey 3 // !
ifShift ifHold final suppressMods tapKey 4 // @
tapKey 1 // 1
- Using standard shift key (no macro). If I rebind this macro to behave as a normal shift key, I get the following result:
ifNotShift ifHold final tapKey 2 // 2
ifShift final suppressMods tapKey 3 // 3
ifShift ifHold final suppressMods tapKey 4 // 3
tapKey 1 // 1
I tried the following combinations with no desired outcome:
ifHold ifShift final suppressMods tapKey
ifNotShift tapKey 1
Ideally, I would like to use the macro to toggle the shift key. My desired result is something like this:
ifNotShift ifHold final tapKey CA-h // ctrl-opt-h
ifShift final suppressMods tapKey CAGS-h // ctrl-opt-cmd-shift-h
ifShift ifHold final suppressMods tapKey CAG-h // ctrl-opt-cmd-h
tapKey CAS-h // ctrl-opt-shift-h
or
ifNotShift ifHold final tapKey ) // closing
ifShift final suppressMods tapKeySeq ( ) leftArrow // open+close (move cursor inside)
ifShift ifHold final suppressMods tapKeySeq ( ) // open+close (no reposition)
tapKey ( // openisg
or
ifNotShift ifHold final tapKey G-v // paste
ifShift final suppressMods tapKey GA-c // copy properties
ifShift ifHold final suppressMods final GA-v // paste properties
tapKey G-c // copy
Looking back at my previous post, I’m thinking I should try something like @maexxx suggested, but to use the ifInterrupted
in place of the ifShift
. In theory, this should perform the same way, or similar.