触发来自 Autohotkey 的 Brave "Search Tabs" 功能

Trigger Brave "Search Tabs" feature from Autohotkey

我希望能够从 Autohotkey 触发“搜索标签”,因为我有很多打开的标签,这将帮助我快速找到我正在寻找的标签,我知道我可以循环遍历所有通过脚本编写选项卡,但这不是我想要的。

这就是我所做的

!+a::
  WinActivate, Brave
  Sleep, 100
  Send, {Ctrl}{Shift}a
Return

如果我将 Send, {Ctrl}{Shift}a 更改为 Send, {Ctrl}t 可以正确打开一个选项卡,那么问题一定是我的 {Ctrl}{Shift}a 配置中出现了一些错误,或者 Brave 不知何故没有反应。

激活特定 window 并向其发送击键的最合适方法如下:

!+a::
    SetTitleMatchMode, 2 ; if you want to use it only in this hotkey
    IfWinNotExist, Brave
    {
        MsgBox, Cannot find Brave
            Return ; end of the hotkey's code
    }
    ; otherwise:
    WinActivate, Brave
    WinWaitActive, Brave, ,2  ; wait 2 seconds maximally  until the specified window is active
    If (ErrorLevel)  ;  if the command timed out
    {
        MsgBox, Cannot activate Brave
            Return
    }
    ; otherwise:
    ; Sleep 300 ; needed in some programs that may not react immediately after activated
    Send, ^+a
Return

否则脚本可以将击键发送给另一个window。

为了不在每个热键中重复整个代码,您可以创建一个函数:

!+b::
    SetTitleMatchMode, 2
    Activate("Brave", 2)
    ; Sleep 300
    Send, ^+a
Return

Activate(title, seconds_to_wait){
    IfWinNotExist, % title
    {
        MsgBox % "Cannot find """ . title . """."
            Return
    }
    ; otherwise:
    WinActivate, % title
    WinWaitActive, % title, ,% seconds_to_wait
    If (ErrorLevel) 
    {
        MsgBox % "Cannot activate """ . title . """."
            Return
    }
}