在 AutoHotkey 中搜索包含字符串但不包含其他字符串的窗口标题

在 AutoHotkey 中搜索包含字符串但不包含其他字符串的窗口标题

我有一个激活 Sublime 文本窗口的脚本:

#s::
IfWinExist ,Sublime
    {
    ifWinActive
        {
        WinActivatebottom ,Sublime
    }
    else
    {
        WinActivate
    }
    return
}

如果有许多 Sublime Text 窗口,它会一个接一个地显示它们(每次我按下它时都会显示下一个窗口)。

我的问题是:有一个项目 (moshe.project),我不想展示。我如何向其添加期望

例如:ifWinExists, Sublime !moshe

答案1

 ; autoexecute section:
SetTitleMatchMode, 2
; GroupAdd, GroupName, WinTitle, WinText, Label, ExcludeTitle
GroupAdd, Sublime_group, Sublime,,,moshe
     return   ; end of autoexecute section


#IfWinExist, ahk_group Sublime_group

#s::
IfWinNotActive, ahk_group Sublime_group
    GroupActivate, Sublime_group, R  ; activates the newest window (the one most recently active)
else
    GroupActivate, Sublime_group  ; activates the oldest window
Return

#IfWinExist

编辑:使用 Window Spy 找到您想要排除的窗口的确切标题。

编辑2:我修改了代码以捕获标题中包含“sublime”且标题中不包含“moshe”的所有窗口。

相关内容