Visual Studioの“ Ctrl-K、C”を模倣する方法Autoit / Autohotkeyを使用した2ステップマクロの動作
-
03-07-2019 - |
質問
いくつかの一般的なタスク用に AutoHotkey マクロを設定しようとしていますが、ホットキーにVisual Studioの「2段階のショートカット」を模倣する動作-すなわち、 Ctrl - K を押すと、「マクロモード」が有効になります。マクロモードでは、特定のキーを押すとマクロが実行されてから「マクロモード」が無効になり、他のキーはマクロモードが無効になります。
例-ファイル名を入力するときに、 Ctrl - K をタップしてから D を押して、今日の日付を挿入できるようにします。
このように動作するステートフルAutoHotkeyスクリプトの良い例はありますか?
解決
このAutohotkeyスクリプトは、 ctrl + k を押すと、キーが押されるのを待ち、 d を押すと、現在の日付を入力します。
^k::
Input Key, L1
FormatTime, Time, , yyyy-MM-dd
if Key = d
Send %Time%
return
他のヒント
受け入れられた答えのわずかなバリエーション-これは私が最終的に使用したものです。 Ctrl + LWin(左Windowsキー)をキャプチャしているため、VSの組み込みのCtrl + Kショートカットと競合しません。
; Capture Ctrl+Left Windows Key
^LWin::
; Show traytip including shortcut keys
TrayTip, Ctrl-Win pressed - waiting for second key..., t: current time`nd: current date, 1, 1
; Capture next string input (i.e. next key)
Input, Key, L1
; Call TrayTip with no arguments to remove currently-visible traytip
TrayTip
if Key = d
{
FormatTime, Date, , yyyyMMdd
SendInput %Date%
}
else if Key = t
{
FormatTime, Time, , hhmmss
SendInput %Time%
}
return
所属していません StackOverflow