F13-24 binds with Shift and Control Modifiers
Posted: 21 Aug 2020, 21:06
Hello! I am absolutely loving midikey2key for my uses! I have run into something that I can definitely work around, but didn't know if this was a bug or unworkable.
So, I use Midikey2key to bind keyboard strokes to keys on a little midi keyboard to use for hotkeys while streaming on Twitch.tv via OBS. (I'll ultimately likely need over 100 binds) To avoid issues with throwing key commands at other programs while I'm streaming, I have been binding my keys to the F13 - F24 keys. Once I ran out of those, I moved on to adding Control + F13 - F24, and on to Shift + F13 - F24 which works great until I realized that when I press a key that is bound to Shift+F13, it will operate that key with that keystroke, but it will also throw the key bound to just F13. Similarly true for Control and Alt and combinations of modifiers.
For my use, this actually presents a pretty neat opening for creativity, but does limit the usefulness of binding these keys with modifiers. Just checking to see if there is a way to only send the stroke for the one key with the modifier. I've included a copy/paste of my INI in case you need to review that. Thank you for any assistance, and again, I am loving this utility, it's a game changer for me!
So, I use Midikey2key to bind keyboard strokes to keys on a little midi keyboard to use for hotkeys while streaming on Twitch.tv via OBS. (I'll ultimately likely need over 100 binds) To avoid issues with throwing key commands at other programs while I'm streaming, I have been binding my keys to the F13 - F24 keys. Once I ran out of those, I moved on to adding Control + F13 - F24, and on to Shift + F13 - F24 which works great until I realized that when I press a key that is bound to Shift+F13, it will operate that key with that keystroke, but it will also throw the key bound to just F13. Similarly true for Control and Alt and combinations of modifiers.
For my use, this actually presents a pretty neat opening for creativity, but does limit the usefulness of binding these keys with modifiers. Just checking to see if there is a way to only send the stroke for the one key with the modifier. I've included a copy/paste of my INI in case you need to review that. Thank you for any assistance, and again, I am loving this utility, it's a game changer for me!
Code: Select all
[WindowPosition]
X=601
Y=227
[MidiDevice]
MidiIn=AKM320
MidiOut=Select output device
[Switches]
SysEx=0
LogWindow=1
Ch1=1
Ch2=0
Ch3=0
Ch4=0
Ch5=0
Ch6=0
Ch7=0
Ch8=0
Ch9=0
Ch10=0
Ch11=0
Ch12=0
Ch13=0
Ch14=0
Ch15=0
Ch16=0
MirrorMidi=0
ShowTSConnect=0
[TSListeners]
Active=
Listeners=
PollingInterval=
LocoName=
[Action0]
Data=9054xx
Name=Action 0
Comment=NoteOn A#6 Velo=92
Keyboard=F13
SendMidi=0
ControllerAction=0
Multiplier=1
KeyboardDelay=100
TS=0
[Action1]
Data=9053xx
Comment=NoteOn A#6 Velo=86
Name=Action 1
Keyboard=F14
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
[Action2]
Data=9052xx
Comment=NoteOn F#6 Velo=81
Name=Action 2
Keyboard=F15
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action3]
Data=9051xx
Comment=NoteOn C7 Velo=82
Name=Action 3
Keyboard=F16
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
[Action4]
Data=9050xx
Comment=NoteOn D#6 Velo=84
Name=Action 4
Keyboard=F17
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action5]
Data=904Fxx
Comment=NoteOn G#6 Velo=84
Name=Action 5
Keyboard=F18
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action6]
Data=904Exx
Comment=NoteOn G#6 Velo=84
Name=Action 6
Keyboard=F19
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action7]
Data=904Dxx
Comment=NoteOn G#6 Velo=84
Name=Action 7
Keyboard=F20
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action8]
Data=904Cxx
Comment=NoteOn G#6 Velo=84
Name=Action 8
Keyboard=F21
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action9]
Data=904Bxx
Comment=NoteOn G#6 Velo=84
Name=Action 9
Keyboard=F22
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action10]
Data=904Axx
Comment=NoteOn G#6 Velo=84
Name=Action 10
Keyboard=F23
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action11]
Data=9049xx
Comment=NoteOn G#6 Velo=84
Name=Action 11
Keyboard=F24
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action12]
Data=9048xx
Comment=NoteOn G#6 Velo=84
Name=Action 12
Keyboard=Control+F13
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action13]
Data=9047xx
Comment=NoteOn G#6 Velo=84
Name=Action 13
Keyboard=Control+F14
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action14]
Data=9046xx
Comment=NoteOn G#6 Velo=84
Name=Action 14
Keyboard=Control+F15
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action15]
Data=9045xx
Comment=NoteOn G#6 Velo=84
Name=Action 15
Keyboard=Control+F16
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action16]
Data=9044xx
Comment=NoteOn G#6 Velo=84
Name=Action 16
Keyboard=Control+F17
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action17]
Data=9043xx
Comment=NoteOn G#6 Velo=84
Name=Action 17
Keyboard=Control+F18
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action18]
Data=9042xx
Comment=NoteOn G#6 Velo=84
Name=Action 18
Keyboard=Control+F19
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action19]
Data=9041xx
Comment=NoteOn G#6 Velo=84
Name=Action 19
Keyboard=Control+F20
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action20]
Data=9040xx
Comment=NoteOn G#6 Velo=84
Name=Action 20
Keyboard=Control+F21
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action21]
Data=903Fxx
Comment=NoteOn G#6 Velo=84
Name=Action 21
Keyboard=Control+F22
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action22]
Data=903Exx
Comment=NoteOn G#6 Velo=84
Name=Action 22
Keyboard=Control+F23
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action23]
Data=903Dxx
Comment=NoteOn G#6 Velo=84
Name=Action 23
Keyboard=Control+F24
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action24]
Data=903Cxx
Comment=NoteOn G#6 Velo=84
Name=Action 24
Keyboard=Shift+F13
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action25]
Data=903Bxx
Comment=NoteOn G#6 Velo=84
Name=Action 25
Keyboard=Shift+F14
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action26]
Data=903Axx
Comment=NoteOn G#6 Velo=84
Name=Action 26
Keyboard=Shift+F15
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action27]
Data=9039xx
Comment=NoteOn G#6 Velo=84
Name=Action 27
Keyboard=Shift+F16
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action28]
Data=9038xx
Comment=NoteOn G#6 Velo=84
Name=Action 28
Keyboard=Shift+F17
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action29]
Data=9037xx
Comment=NoteOn G#6 Velo=84
Name=Action 29
Keyboard=Shift+F18
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action30]
Data=9036xx
Comment=NoteOn G#6 Velo=84
Name=Action 30
Keyboard=Shift+F19
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0
[Action31]
Data=9035xx
Comment=NoteOn G#6 Velo=84
Name=Action 31
Keyboard=Shift+F20
SendMidi=0
SendMidiCommands=
SendMidiCommandsB=
ControllerAction=0
Hold=0
KeyboardB=
Multiplier=1
KeyboardDelay=100
TS=0
Start=
Arguments=
WindowState=0