2020.07.09 更新
因爲原做者只發布了Windows與Mac版,筆者在Linux上工做,所以自行開發了Linux版,目前還在開發中,詳情戳這裏。
另外做者更新了3.x版本,所以更新了3.x版本的博客,能夠戳這裏。
本篇文章介紹的是2.x版本。
git
1 Capslock+簡介
Capslock+利用了鍵盤少用的Capslock鍵,實現了不少強大的操做。Capslock+是開源的,源碼在Github上,點擊這裏查看,不強制收費。github
官網:Capslock+官網。web
2 基礎功能
2.1 光標移動
按鍵 | 效果 |
---|---|
capslock+e | 光標向上 |
capslock+d | 光標向下 |
capslock+s | 光標向左 |
capslock+f | 光標向右 |
按鍵 | 效果 |
---|---|
capslock+a | 光標向左跳過一個詞 |
capslock+g | 光標向右跳過一個詞 |
capslock+y | 光標向上5行 |
capslock+b | 光標向下5行 |
注意使用a和g時漢字可能會整句跳過。api
按鍵 | 效果 |
---|---|
capslock+= | 光標向下移動一頁 |
capslock+- | 光標向上移動一頁 |
capslock+p | 光標到行首 |
capslock+; | 光標向行尾 |
2.2 光標選擇
按鍵 | 效果 |
---|---|
capslock+i | 光標向上選中 |
capslock+k | 光標向下選中 |
capslock+j | 光標向左選中 |
capslock+l(小寫L) | 光標向右選中 |
capslock+h | 光標向左選中一個詞 |
capslock+n | 光標向右選中一個詞 |
與a、g同樣,h和n對於漢字可能會選擇整句。bash
按鍵 | 效果 |
---|---|
capslock+0 | 光標向上選中5行 |
capslock+m | 光標向下選中5行 |
capslock+u | 光標向行首選中 |
capslock+o | 光標向行尾選中 |
2.3 插入符號
按鍵 | 效果 |
---|---|
capslock+9 | 插入() |
capslock+[ | 插入{} |
capslock+' | 插入"" |
capslock+, | 插入<> |
以上4項在選中文本時插入到文本兩側。ide
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翻譯,能夠選中或不選中翻譯。
- 選中即直接翻譯選中的詞或句子
- 不選中的話,若光標在整個句子或整個單詞的右側,或者光標在句子或單詞的中間時,能夠翻譯光標所在的句子或單詞
- 光標在句子或單詞的左側時,會翻譯上一個句子或單詞
- 建議英文不選中翻譯,中文選中翻譯
注意:
- 一、翻譯的面板能夠修改,從新輸入後按Enter可繼續翻譯
- 二、獲取單詞發送經過ctrl+c實現,請確保按下capslock+t的時候ctrl+c不會有額外操做
- 三、翻譯功能經過有道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版。