Ответ 1
AutoHotKey почти наверняка то, что вы хотите. Вы можете определить любые привязки, которые вы хотите, и можете даже создавать макросы. Связывание может быть чувствительным к контексту, поэтому они работают только в определенном приложении. Например, вот AutoHotKey script, который определяет 2 привязки только для Notepad и 1 привязку для всех окон, кроме Notepad.
#IfWinActive, ahk_class Notepad
^a::MsgBox You pressed Ctrl-A while Notepad is active. Pressing Ctrl-A in any other window will pass the Ctrl-A keystroke to that window.
#c::MsgBox You pressed Win-C while Notepad is active.
#IfWinActive
#c::MsgBox You pressed Win-C while any window except Notepad is active.
Я не уверен, к каким действиям вы хотите привязываться, но если они специфичны для Mathematica, вам потребуется немного усилий, чтобы написать script. Возможно, вам придется сначала определить привязки в Mathematica, а затем использовать AutoHotKey, чтобы получить нужную привязку, например, для привязки "Action X" к Ctrl-F.