Autohotkey: как очистить большинство горячих клавиш Fnn, назначенных окнами?
Я хотел запрограммировать некоторые клавиши Fnn и shift-Fnn и очистить остальные из назначенных им окон. Достаточно долго, чтобы запустить сеанс telnet или putty, затем я хочу позволить им вернуться обратно к win std. Я использовал скрипт в AutoHotkey, и он в основном работает, но я назначил многие неиспользуемые клавиши клавишами SHIFT, и теперь shift-F4 часто срывает несмещенную строку F4 {более половины времени, когда я нажимаю на нее.} Есть ли некоторые лучший способ обнулить предустановки Windows, чем просто нажать SHIFT на все эти клавиши, или есть какой-то неясный твик, который я могу сделать в сценарии, чтобы облегчить нагрузку на крюке SHIFT kbd? Сценарий следует; обратите внимание, что на большинстве линий есть много пробелов, если это имеет значение... Протестировано на ноутбуке win8 и настольной XP, результаты те же.
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
#Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
;SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
SetWorkingDir C:\bin ; Ensures a consistent starting directory.
F1::send, EX`r
F2::Shift
F3::Shift
F4::send, FI`r
F5::Shift
F6::Shift
F7::Shift
F8::Shift
F9::send, OFF`r
F10::send, PROD
F11::send, `r
F12::send, END`r
+F1::send, FD
+F2::Shift
+F3::Shift
+F4::send, EM5
+F5::Shift
+F6::Shift
+F7::Shift
+F8::Shift
+F9::send, `r
+F10::send, PYR`r
+F11::send, SYSP
+F12::Shift
^F12::ExitApp ; control-F12 will remove all these
$~CapsLock Up::SetCapsLockState Off ; regress capslock to a SHIFT
1 ответ
Попробовав аналогичную вещь, чтобы "отключить" удержание Windows на клавише WIN, я обнаружил, что не было способа отключить все из них - только несколько.
Однако Autohotkey может переопределить горячие клавиши Windows, как вы уже нашли.
Если вы просто хотите отключить использование этих клавиш в Windows (если я вас правильно понимаю), вы можете попробовать что-то вроде этого:
F11::
F12::
return
Это эффективно отключит использование F11 и F12 в любом месте, пока работает скрипт.
(нет, конечные пробелы не имеют никакого значения)