一個替代alt+tab的更高效工具


在日常使用電腦的時候,最常使用的快捷鍵估計就是alt+tab了,用於在多個窗口切換,大部分人都是這樣的,我也不例外。雖然存在多個窗口時需要多按幾次tab選擇,有點麻煩,但還可以接受。
直到有一天我看到了這個視頻 ,作者介紹了他emacs配置,順帶演示了下這個配置在使用上的便利。雖然此視頻沒有成功安利我使用emacs(vim配上插件就足夠滿足我現在的編輯需求了),但是作者配置中的漸近式查找的方法確實挺好,他演示了他怎樣快速從已開啟的窗口中找到自己需要的顯示在最前方,確實比alt+tab快多了,不過他的系統是自己深度定制的Linux,而我用的是Windows,於是我就找找看Windows上有沒有類似的。

Windows上軟件還是很豐富的,我找到了一個類似的軟件叫Switchroo ,試用了一番感覺還不錯,軟件的樣子如圖,鍵入關鍵字后會把符合條件的過濾下來

screenshot

我把軟件的快捷鍵改成了ctrl+alt+space,按下后輸入幾個字母就可以快速選擇一個窗口打開,不需要像使用alt+tab那樣眼睛盯着屏幕,看當前選中了哪個,再按tab鍵往下選。在十幾個窗口中找到指定的窗口並打開,可能只需1秒,非常方便。

不過有一個問題,軟件雖然支持中文,不過要搜索中文必須把中文輸入,眾所周知,中文輸入比英文要麻煩,想象一下你在ide里寫代碼,想切到微信里,你把輸入法切成中文,輸入微信,按下enter,還不如alt+tab呢。要是它支持拼音查找就好了,直接輸入拼音首字母wx,就可以把微信篩選出來了,這樣就更方便了。

不過這個軟件看起來好久沒維護了,看了下提交都是好幾年前了。自己動手,豐衣足食,看了下代碼,是用C#寫的,花了幾天看了下C#的語法和結構,就開始動手了。

先確定下搜索策略,如果句子中有中文的話,如果輸入的是按照句子中順序的全拼或者拼音首字母,就把它過濾出來。

拼音的數據來自這里的kTGHZ2013這個文件,我把它簡單處理下放在安裝目錄下,結構就是一個字符對應拼音。如果改下內容應該也可以做到日語,韓語這些類似語言的匹配,不過這些我都不會,就懶得弄了。

拼音搜索的策略比較簡單,實現起來也不太麻煩,就是把一段中文按照每個字符的拼音是鏈表的一個節點,檢索時就是一個節點一個節點匹配,如果節點和輸入前幾個字符匹配,就匹配下一個節點和輸入字符串的之后的字符,最后返回匹配結果,代碼在這里。功能完成后試用了下,感覺還行。

做了一個安裝包,放到GitHub上了,有需要的朋友可以試一試。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM