====== SetHotkeyAction ====== SetHotkeyAction [/V:nnn] [/K:{S|C|A|W}] [params] Команда привязывает действие к сочетанию клавиш в окне Total Commander. **Параметры** |< 100% 15% >| ||Строка с именем внутренней команды Autorun или пользовательской функции. Если не задана, то никакого действия выполняться не будет, а имеющееся действие данного сочетания будет заблокировано.| ||Параметры команды или пользовательской функции (если применимо). Дополнительная информация в примечаниях.| **Переключатели, задающие основную клавишу** Переключатель этого типа обязателен и может быть только один (при указании более одного будет применён последний). |< 100% 15% 10%>| ^Переключатель^Клавиша^Описание^ |/H|A...Z\\ 0...9|Буквенные и цифровые клавиши.| |:::|F1...F12|Функциональные клавиши.| |:::|HOME|Home| |:::|END|End| |:::|PGUP|Page Up| |:::|PGDN|Page Down| |:::|INS|Insert| |:::|DEL|Delete| |:::|LEFT|Left Arrow| |:::|RIGHT|Right Arrow| |:::|UP|Up Arrow| |:::|DOWN|Down Arrow| |:::|ESC|Escape| |:::|BS|Backspace| |:::|ENTER|Enter| |:::|SPACE|Space| |:::|TAB|Tab| |:::|PRINTSCREEN|Print Screen| |:::|SCROLLLOCK|Scroll Lock| |:::|PAUSE|Pause| |:::|CAPSLOCK|Caps Lock| |:::|NUMLOCK|Num Lock| |:::|NUMPAD0...NUMPAD9|Numpad Digits| |:::|NUMPADMULT|%%Numpad "*"%%| |:::|NUMPADADD|%%Numpad "+"%%| |:::|NUMPADSUB|%%Numpad "-"%%| |:::|NUMPADDIV|%%Numpad "/"%%| |:::|NUMPADDOT|%%Numpad "."%%| |/V|nnn|Клавиша задаётся цифровым значением согласно [[https://docs.microsoft.com/en-us/windows/win32/inputdev/virtual-key-codes|таблице]] (в десятичной системе). Могут быть заданы оставшиеся клавиши, не имеющие своего идентификатора.| **Переключатели, задающие модификаторы** |< 100% 15% >| ^Переключатель^Модификатор^Описание^ |/K:|C|Действие производится при нажатом Ctrl.| |:::|S|Действие производится при нажатом Shift.| |:::|A|Действие производится при нажатом Alt.| |:::|W|Действие производится при нажатой Win.| Модификаторы Ctrl, Shift, Alt, Win могут использоваться в любых комбинациях. Для этого можно задать переключатель несколько раз. **Переключатели, задающие опции** |< 100% 15% >| |/R|Разрешить повтор нажатия клавиш при удержании (по умолчанию выключено).| |/W|Разрешить работу комбинации клавиш в дочерних окнах Total Commander (по умолчанию только в главном окне).| **Примеры** /K:C /K:S /H:N --> Ctrl+Shift+N /K:W /V:35 --> Win+END **Примечания** Основное преимущество данной команды над стандартным функционалом горячих клавиш Total Commander в том, что установленные сочетания также работают из командной строки, а не только в панелях. Также появляется возможность простого вызова меню с помощью [[tweaks_csma_ShowPopupMenu]]. Не все комбинации могут быть привязаны. Например, привязка виртуальных клавиш, отвечающих за кнопки мыши, работать не будет. При командной записи, если в параметрах вызываемой команды cmd есть вычисляемая строка, то она будет пересчитываться каждый раз при выполнении команды cmd. Напрямую реализовать такую логику в функциональной записи нельзя, поскольку в ней любые выражения в параметрах вычисляются только один раз в момент вызова SetHotkeyAction и не будут пересчитываться при выполнении привязанного действия. Таким образом, чтобы достигнуть результата, аналогичного использованию вычисляемых строк в командной записи, необходимо использовать в качестве команды дополнительную пользовательскую функцию, в которой выполнять требуемое выражение. Всего можно привязать до 128 сочетаний.