1

我想使用一个键发送一系列击键,以使用 autohotkey 完成 sublime text 2 中的某些任务。要在 sublime text 2 中设置标记,按键顺序是 Ctrl+K,然后是 Ctrl+Space。我试过了

#IfWinActive, ahk_class PX_WINDOW_CLASS
Numpad0::Send ^k sleep 5, Send ^+Space
#IfWinActive

这将激活序列的第一部分,但也有输入 send sleep 5, Send 并尝试保存我不想做的文件的副作用。

如果我删除 (sleep 5, Send ^+Space) 我必须按下 Ctrl+Space 来完成序列以设置标记。我需要在 Ctrl+K 之后添加什么来完成使用 autohotkey 在 sublime 文本中设置标记的功能?

4

2 回答 2

2

当使用 Send 时,它将尝试发送该行的其余部分。这就是为什么要输入其余部分的原因。但是,我尝试将它们分开,但它仍然无法正常工作。

以下对我有用,试一试:

#IfWinActive, ahk_class PX_WINDOW_CLASS
    Numpad0::Send, {CTRLDOWN}k{CTRLUP}{CTRLDOWN}{SPACE}{CTRLUP}
#IfWinActive
于 2012-10-08T00:50:58.587 回答
1

在#IfWinActive 中,您可以通过这种方式使用多行。

#IfWinActive, ahk_class PX_WINDOW_CLASS
Numpad0::
    Send, ^k ; Send Ctrl k
    Sleep, 5 ; Wait 5 ms (probably too short, I would use 400 ms)
    Send, ^+{Space} ; Send Ctrl Shift Space
Return
#IfWinActive

在 Enter 周围添加了大括号!

于 2012-10-08T03:43:18.980 回答