(AHK)创建变量热键,从脚本的{2 {char}文件名中获取密钥名称

时间:2015-10-30 20:57:22

标签: autohotkey

我试图为我们的员工制作一些东西,以便他们不必改变脚本本身来定义热键。这可能仅适用于可以由单个角色定义的热键,但这很好,因为有很多组合可以用它们制作,并且它们可以很容易记住。该脚本只会在工作目录中查看2个字符的AHK文件(如果必须包含扩展名,则为6个)。它可以搜索的变量可以用RegEx定义,所以对于第一个热键,它看起来像^。然后第二个看起来像。(?=。)一旦找到匹配,它就会启动匹配的文件。之前有过这样的事吗?看起来很简单,但我似乎无法找到任何东西。

编辑:Elliot提请我注意:http://autohotkey.com/board/topic/60630-easy-editmanage-hotkeyshotstrings-plugin-ahk-l/

它是一个干净的脚本管理器,非常有用,但它并不是我想要的。

我不想要额外的界面。我希望能够使用文件名更改热键。

2 个答案:

答案 0 :(得分:1)

#Persistent
SetTimer, FindNewHotkeys, 2000

FindNewHotkeys:
    Loop, %A_ScriptDir%\*
    {
        RegExMatch(A_LoopFileName, "^(.)(.).ahk$", hk)

        If (hk)
            Hotkey, ~%hk1% & ~%hk2%, HotkeyLabel
    }
Return

HotkeyLabel:
    MsgBox, A hotkey has been pressed!
Return

答案 1 :(得分:1)

基于answer of Forvin。添加了相应的ahk脚本的执行。

#Persistent
SetTimer, FindNewHotkeys, 2000
FindNewHotkeys:
    Loop, %A_ScriptDir%\*
    {
        RegExMatch(A_LoopFileName, "^(.)(.).ahk$", hk)

        If (hk)
        {
          Hotkey, ~%hk1% & ~%hk2%, HotkeyLabel
        }
    }
Return

HotkeyLabel:
  RegExMatch(A_ThisHotkey, "~(.) & ~(.)", hk)
  run, %hk1%%hk2%.ahk
Return