有什么能同时搜索多个电子书书签的程序吗?

因为有趁手的工具,这几天把很多书的索引都做成书签了,方便查询。用着用着发现了一个问题,一个一个搜索电子书的书签太费事了。就想着有没有那种可以同时搜索多个电子书书签并返回结果的程序?
有点类似于拿电子书书签当词条的词典软件了。

顺便推一下刚做好的《标准日语语法》:

可以通过AHK实现该功能。

例如我调用的是Okular侧边栏搜索目录,代码如下:

#Requires AutoHotkey v2.0
#Include "%A_LineFile%\..\Lib\UIA.ahk"

#g::
{
    ; 通过在末尾加入 "w450 h90" 选项,将输入框限定为精简的长条状
    ; w代表宽度(Width),h代表高度(Height)
    ib := InputBox("请输入要过滤的书签/目录文本 (将应用到所有窗口):", "Okular 全窗口联搜", "w450 h90")
    if (ib.Result == "Cancel" || ib.Value == "")
        return
        
    searchTxt := ib.Value

    okularHwnds := WinGetList("ahk_exe okular.exe")
    if (okularHwnds.Length == 0) {
        MsgBox("未检测到任何运行中的 Okular 窗口。", "提示", 48)
        return
    }

    for hwnd in okularHwnds {
        try {
            WinActivate(hwnd)
            WinWaitActive(hwnd, , 0.5)
            
            Send("!6")
            Sleep(80) 
            
            okularEl := UIA.ElementFromHandle(hwnd)
            searchBox := okularEl.FindElement({ClassName: "KTreeViewSearchLine", ControlType: "Edit"})
            
            searchBox.Value := searchTxt
            searchBox.SetFocus()
        } catch Error {
            ; 忽略个别处于异常状态窗口的报错
        }
    }

    if (okularHwnds.Length > 0) {
        WinActivate(okularHwnds[1])
    }
}