2020.07.09 更新
作者更新了3.x版本,因此更新了3.x版本的博客,可以戳這里。
本篇文章介紹的是2.x版本。
1 Capslock+簡介
Capslock+利用了鍵盤少用的Capslock鍵,實現了很多強大的操作。Capslock+是開源的,源碼在Github上,點擊這里查看,不強制收費。
官網:Capslock+官網。
2 基礎功能
2.1 光標移動
按鍵 | 效果 |
---|---|
capslock+e | 光標向上 |
capslock+d | 光標向下 |
capslock+s | 光標向左 |
capslock+f | 光標向右 |
按鍵 | 效果 |
---|---|
capslock+a | 光標向左跳過一個詞 |
capslock+g | 光標向右跳過一個詞 |
capslock+y | 光標向上5行 |
capslock+b | 光標向下5行 |
注意使用a和g時漢字可能會整句跳過。
按鍵 | 效果 |
---|---|
capslock+= | 光標向下移動一頁 |
capslock+- | 光標向上移動一頁 |
capslock+p | 光標到行首 |
capslock+; | 光標向行尾 |
2.2 光標選擇
按鍵 | 效果 |
---|---|
capslock+i | 光標向上選中 |
capslock+k | 光標向下選中 |
capslock+j | 光標向左選中 |
capslock+l(小寫L) | 光標向右選中 |
capslock+h | 光標向左選中一個詞 |
capslock+n | 光標向右選中一個詞 |
與a、g一樣,h和n對於漢字可能會選擇整句。
按鍵 | 效果 |
---|---|
capslock+0 | 光標向上選中5行 |
capslock+m | 光標向下選中5行 |
capslock+u | 光標向行首選中 |
capslock+o | 光標向行尾選中 |
2.3 插入符號
按鍵 | 效果 |
---|---|
capslock+9 | 插入() |
capslock+[ | 插入{} |
capslock+' | 插入"" |
capslock+, | 插入<> |
以上4項在選中文本時插入到文本兩側。
2.4 其他修改操作
按鍵 | 效果 |
---|---|
capslock+w | 等於Backspace |
capslock+r | 等於delete |
capslock+Backspace | 刪除光標所在的一行 |
capslock+z | 撤銷 |
連續按下capslock+z會交替撤銷與重做。
按鍵 | 效果 |
---|---|
capslock+space | 等於Enter |
capslock+Enter | 不論光標是否在行尾,直接換行 |
2.5 剪貼板
capslock+自帶兩套剪貼板,分別是:
- capslock+x/c/v
- capslock+LAlt+x/c/v(LAlt是鍵盤左邊的alt)
都與ctrl+x/c/v獨立的一套剪切板。
- 當選中文字時,對所選的文字操作
- 不選中文字時,對光標所在行的文字進行操作
capslock+F12可關閉獨立剪切板的功能,關閉后capslock+x/c/v與capslock+LAlt+x/c/v失效,capslock+F12可重新開啟。
2.6 翻譯
capslock+t 翻譯,默認使用有道API翻譯,可以選中或不選中翻譯。
- 選中即直接翻譯選中的詞或句子
- 不選中的話,若光標在整個句子或整個單詞的右側,或者光標在句子或單詞的中間時,可以翻譯光標所在的句子或單詞
- 光標在句子或單詞的左側時,會翻譯上一個句子或單詞
- 建議英文不選中翻譯,中文選中翻譯
注意:
- 1、翻譯的面板可以修改,重新輸入后按Enter可繼續翻譯
- 2、獲取單詞發送通過ctrl+c實現,請確保按下capslock+t的時候ctrl+c不會有額外操作
- 3、翻譯功能通過有道API實現,請求頻率限制為每小時1000次,也就是所有使用該翻譯功能的人一小時內翻譯次數不能超過1000次,突破限制的方法在下面介紹
2.7 臨時改變鼠標速度
按住capslock+LAlt可臨時改變鼠標的速度,按住capslock+LAlt再配合滾輪上下滾動可以增加或減慢速度,一般是先配合滾輪設定速度,松開LAlt與capslock后再一起按從而臨時改變速度。
2.8 切換窗口
按鍵 | 作用 |
---|---|
capslock+LAlt+e | 切換當前窗口上面的窗口 |
capslock+LAlt+d | 切換當前窗口下面的窗口 |
capslock+LAlt+s | 切換當前窗口左邊的窗口 |
capslock+LAlt+f | 切換當前窗口右邊的窗口 |
capslock+LAlt+a | 切換當前窗口最左側的窗口 |
capslock+LAlt+g | 切換當前窗口最右側的窗口 |
對窗口位置的判定是以當前窗口的橫豎中線為依據。
2.9 快速打開/關閉窗口
按鍵 | 作用 |
---|---|
capslock+LAlt+j | 把當前窗口最小化且記錄當前窗口為capslock+LAlt+l即將打開的窗口 |
capslock+LAlt+k | 把當前窗口最小化且記錄當前窗口為capslock+LAlt+l最后一個打開的窗口 |
capslock+LAlt+l | 打開隊列中的第一個窗口,並將其移出隊列 |
capslock+LAlt+h | 清楚窗口隊列的記錄 |
這與隊列類似,capslock+LAlt+j把窗口放進隊首,capslock+LAlt+k把窗口放進隊尾。
2.10 切換標簽
按鍵 | 作用 |
---|---|
capslock+LAlt+w | 等價於ctrl+shift+tab |
capslock+LAlt+r | 等價於ctrl+tab |
2.11 模擬光標滾動
按鍵 | 作用 |
---|---|
capslock+LAlt+y | 頁面向上移動5行,光標不動 |
capslock+LAlt+b | 頁面向下移動5行,光標不動 |
capslock+LAlt+- | 光標移動到頁首 |
capslock+LAlt+= | 光標移動到頁尾 |
2.12 F1-F6的功能
按鍵 | 作用 |
---|---|
capslock+F1 | 打開幫助文檔網頁 |
capslock+F2 | 彈出計算面板 |
在計算面版被激活的情況下,若切換為大寫,主鍵盤一部分被替換成小鍵盤,對應關系如下:
按鍵 | 對應字符 |
---|---|
m | 1 |
, | 2 |
. | 3 |
j | 4 |
k | 5 |
l | 6 |
u | 7 |
i | 8 |
o | 9 |
p | * |
[ | / |
; | + |
' | - |
space | 0 |
RAlt | . |
shift+Enter會將計算結果輸出到下一行,ctrl+Enter或capslock+space為換行。
按鍵 | 作用 |
---|---|
capslock+F3 | 下一首歌 |
capslock+F4 | 短按時將窗口變為半透明 |
長按時配合滾輪改變透明度。
若當前窗口的透明度,不是完全不透明,也不是半透明,則先將窗口變為完全不透明。
按鍵 | 作用 |
---|---|
capslock+F5 | 重載capslock+ |
capslock+F6 | 置頂/解除置頂一個窗口,即若該窗口不是處於置頂的狀態,則將該窗口置頂,若窗口處於置頂的狀態,則解除窗口的置頂狀態 |
3 高級功能
3.1 [Global]全局設置
CapsLock+settings.ini
中的[Global]是全局設置,其中:
loadScript
:要加載的JS文件(要放在loadScript文件夾里),用逗號分隔allowClipboard
:是否允許使用獨立剪切板,1為是,0為否,默認1mouseSpeed
:按下capslock+LAlt時鼠標的速度,范圍1-20,默認3autostart
:是否開機啟動,1為是,0為否,默認0loadingAnimation
:是否開啟程序加載動畫,1為是,0為否,默認1
3.2 capslock+Tab
capslock+Tab可以實現補全與計算的功能。
3.2.1 補全
這個補全其實是將某一字符串替換成你自定義的字符串,需要在CapsLock+settings.ini
中進行設置。
CapsLock+settings.ini
中有三個字段有字符串替換功能,分別是[TabHotString]
、[QRun]
與[QWeb]
,優先級是[TabHotString]>[QRun]>[QWeb]
,也就是如果三個字段下都有相同的鍵名,會按優先級順序替換,但最好不要重復鍵名,替換的最好都在[TabHotString]中設置。
格式為:
鍵名 = 要替換的字符串
例如:
3.2.2 計算
計算其實是運行相應的JavaScript代碼,處理的是光標左邊的字符,直到遇到第一個空格或行首,之間的字符串會被認為是表達式:
- 當表達式不帶=時,會替換掉原來的表達式
- 當表達式帶=時,將結果輸出到=右側,計算不出結果時返回?
- 若表達式帶有空格,則要先選中表達式或在表達式頭部加上反引號`
- 若表達式跨越多行,只能選中
(對於比較嚴格的計算,如金錢計算,慎用!!!)
3.3 JS自定義函數
首先要編寫自己的.js文件,把它放到capslock+文件夾下的loadScript
文件夾,然后在CapsLock+settings.ini
中的[Global]
中,在loadScript=scriptDemo.js
后面加上,在加上自己的js文件名,保存,capslock+F5重載capslock+,然后就可以使用了
scriptDemo.js
中有一些定義好的函數和事例,可以參照一下:
比如說筆者寫的my.js:
接着調用即可:
如果直接打函數名字的話會出現函數的源代碼。
還可以對多行字符串使用字符串函數,但要先選中:
3.4 翻譯的高級設置
由於有道API每小時只能翻譯1000次,想要更多請前往有道智雲申請一個獨立的Key,
申請到后把key寫進CapsLock+settings.ini
下的[TTranslate]
段。
免費版的填:
apiType=0
apiKey=xxxx(你申請的key)
KeyFrom=xxxx
收費版的填
apiType=1
apiKey=xxxx(你申請的key)
3.5 窗口綁定
窗口綁定有三種模式:
- 直接綁定
- 綁定多個窗口到同一按鍵
- 統一程序窗口綁定到統一按鍵
3.5.1 直接綁定
capslock+LAlt+1-8,把當前的窗口綁定到相應按鍵,接着capslock+1-8,會激活綁定到相應按鍵的窗口。
若當前窗口不是綁定的窗口則先切換到按鍵綁定的窗口,若當前窗口是按鍵綁定的窗口,則會最小化該窗口,或從最小化復原。
另外,capslock+LAlt+反單引號也可綁定窗口,激活時capslock+反單引號。
3.5.2 綁定多個窗口到同一按鍵
綁定多個窗口到同一按鍵很簡單,按住capslock+LAlt后,按兩次被綁定的按鍵就行。
比如先選中某一個窗口,capslock+LAlt+1綁定(按兩次1),選中另一個窗口后,再capslock+LAlt+兩次1,然后capslock+1會按綁定次序打開窗口,多次按下時類似用Alt+tab切換綁定的窗口,會優先打開最常使用的窗口:
3.5.3 把當前窗口所屬程序的所有窗口綁定
這種情況針對同一個程序打開了多個不同窗口的情況,比如打開理論多個word文檔,此時便派上了用場。
按住capslock+LAlt后,按三次被綁定的按鍵就行。
比如打開了3個txt,切換到三個txt之一后,按capslock+LAlt+1(按三次1),然后三個txt都被綁定到capslock+1上,然后按capslock+1會在這三個txt之間切換,類似於Alt+tab,也會優先打開最常用的窗口:
3.6 Qbar
Qbar是按capslock+q彈出的框,可以方便地瀏覽文件、打開文件、與打開網頁或是用引擎搜索,Esc可關閉,重新按capslock+q可獲得焦點,選中字符后按capslock+q會自動填入,選中文件會將路徑填入。
輸入cl set
可以設置CapsLock+settings.ini
文件。
Qbar還能使用通配符,?
表示單個,*
表示多個,如a?b
匹配aab
,abb
,acb
,adb
等,
而a*b
匹配abb
,abbb
,accb
等(不區分大小寫)
瀏覽文件目錄時可以按/
或\
或tab
進入下一層文件夾,按capslock+,
返回上一層:
3.6.1 QRun
可以使用Qbar快速啟動應用程序,在CapsLock+settings.ini
中的[QRun]
下添加想要快速運行的程序,接着只需在Qbar中鍵入相應名字即可啟動,也可直接在Qbar中使用->run
來設定,格式為:
xxx -> xxx
或
xxx ->run xxx
注意第一種->
兩旁有空格,第二種->
前面有空格,后面緊接run
,run
后面有空格。
QRun也可設定用來打開文件的程序,比如在[QRun]
下有:
aa = "xxxx/xxx.exe"
bb = "xxx/xxxx"
則在Qbar中輸入aa bb
就會使用aa打開bb。
3.6.2 QSearch
這個可以用搜索引擎快速搜索,內置了bd(百度),wk(維基),g(谷歌),m(MDN),tb(淘寶),默認為百度。
當然可以自定義,例如改變默認搜索引擎,在CapsLock+settings.ini
中的[QSearch]
添加default=xxxxx
,也可以直接在Qbar中default -> xxxx
,這需要通過網址定位到搜索的關鍵詞,並將關鍵詞修改成{q}
。
添加自己的搜索引擎類似,CapsLock+settings.ini
中的[QSearch]
中添加,或在Qbar中使用 ->search
添加:
3.6.3 QWeb
打開網站,直接輸入網址即可,可以在Qbar中使用->web
定義,也可在CapsLock+settings.ini
中的[QWeb]
下定義,xxx = xxxx
。
ctrl+Enter可在前面加www.,后面加.com,如輸入taobao,ctrl+Enter會打開www.taobao.com
,對於含有.net,.com,.org,www.,http://,https://
的網站可以直接當作網址打開而不是用默認引擎去搜索,一些特定的網站可以加上web xxxx
打開。
3.6.4 QStyle
在CapsLock+settings.ini
中的[QStyle]
下自定義Qbar的樣式。
顏色可以是指定16種HTML基礎顏色之一或6位的RGB顏色值(0x前綴可以省略)。例如:red
、ffffaa
、FFFFAA
、0xFFFFAA
。下面的顏色設置也一樣:
屬性 | 取值 |
---|---|
borderBackgroundColor | 背景顏色,默認red |
borderRadius | 邊框四角圓角程度,默認9 |
textBackgroundColor | 文字輸入框的背景顏色,默認green |
textColor | 輸入文字的顏色,默認ffffff,白色 |
editFontName | 輸入文字的字體,默認Hiragino Sans GB W6 |
editFontSize | 輸入文字大小,默認12 |
listFontName | 提示列表字體,默認consoals |
listFontSize | 提示列表字體大小,默認10 |
listBackgroundColor | 提示列表背景顏色,默認blue |
listColor | 提示列表文字顏色,默認0x000000 |
listCount | 提示列表行數,默認5 |
lineHeight | 提示列表每行高度,默認19 |
progressColor | 進度條顏色,默認0x00cc99 |
比如這是筆者的Qbar(好丑,對不對,好像比默認的還。。。):
3.7 自定義某些按鍵
在CapsLock+settings.ini
中的[Keys]
下可以改變一些capslock+按鍵的功能,也可以增加一些按鍵,capslock+支持的按鍵有:
Capslock + (LALt + ) F1~F12
Capslock + (LALt + ) 0~9
Capslock + (LALt + ) a~z
Capslock + (LALt + ) -=[]\;',./
Capslock + (LALt + ) Backspace, Tab, Enter, Space, RAlt
鍵位以caps_
開頭,字母用小寫表示,F1-F12用f1-f12表示,LALt用lalt表示。
鍵位功能以keyFunc_
開頭,比如:
keyFunc_volumeMute 靜音
keyFunc_volumeDown 音量增大
keyFunc_volumeUp 音量減少
keyFunc_mediaPrev 上一首
keyFunc_mediaPlayPause 播放/暫停
如caps_j=keyFunc_selectLeft
,具體的鍵位功能可用capslock+q輸入cl set
並在CapsLock+settingsDemo.ini
中查看。
又比如在CapsLock+settings.ini
中的[Keys]
下添加了caps_lalt_9=keyFunc_volumeMut
,則按capslock+LAlt+9可以靜音。
4 最后
這基本上就是capslock+的所有功能了,作者最近才更新了,目前最新的版本是3.1.0,2020年4月更新的。
不過有一個問題就是其實capslock+e/d/s/f並不能完全代替上下左右的方向鍵,比如Alt+←是后退,但Alt+capslcok+s沒有任何反應,當上下左右和其他鍵聯合使用capslock還不能代替。
希望作者以后可以考慮出個Linux版。