Ctrl與Caps Lock鍵的交換


https://maoxian.de/2014/07/1141.html

 

Emacs和VIM之所以這樣受程序員的喜愛,是因為兩者都有高度的可定制性,以及豐富的快捷鍵組合。利用這些快捷鍵組合,讓你能夠手不離鍵盤,就能完成大多數的工作。其實,用鼠標操作神馬的,效率是極其低下的……

話說Emacs中,用到最多的兩個快捷鍵組合,就是Meta鍵和Ctrl鍵。對於我們普通的鍵盤,Meta鍵還好,離手很近。不過,對於Ctrl 鍵,就離得比較遠了…… 網上有網友推薦的做法,是用手掌去按Ctrl鍵,不過,這樣的方法,對於普通鍵盤還不錯,但是對於筆記本來說,也不太實用。

正規的Unix鍵盤的鍵位布局,Ctrl鍵應該是在現在標准鍵盤的Caps Lock位置的。這樣,按起Ctrl鍵,就方便多了。

那要怎么交換這兩個鍵的鍵位呢?重新買一個鍵盤? No!! 其實,也不用換鍵盤,我們完全可以用軟件的方式來實現兩個鍵位的交換。
下面是我從網上整理來的方法:

Win7下交換鍵位的設置

其實Win7下面,方法還比較多,一種是直接修改注冊表,實現全局的替換,另外一種,是讓兩個鍵的交換,只在Emacs/Vim窗口激活的時候生效。至於哪個更好,完全根據你自己的需要。

局部替換大法

這種方法,需要用到一個輔助軟件,那就是大名鼎鼎的Auto Hotkey,簡稱AHK

編輯一個腳本,輸入如下內容,保存,reload,即可生效:
IfWinActive emacs; 判斷當前激活的窗口是否是Emacs,這是根據窗口標題實現的,如果你的標題不一樣,請替換一下

Control::Capslock; 把Control替換為Capslock

Capslock::Control; 把Capslock替換為Control

IfWinActive

全局替換大法

可以利用第三方工具,或者直接在注冊表中修改鍵位映射關系

注冊表位置:[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] 如果沒有此鍵,就新建一個

新建一個二進制值的Key,名叫:Scancode Map

輸入如下的值:

00,00,00,00

00,00,00,00

03,00,00,00

3A,00,1D,00

1D,00,3A,00

00,00,00,00

前兩行和最后一行,都是固定的,全部為0。第三行,表示你修改了幾個鍵,其實我們只是改了兩個鍵,不過最后那一行也要算進去,所以是3。

重點是在第四行和第五行。3A00,代表Caps Lock, 1D00,代表Ctrl。這一行,意思即為,將Caps Lock映射為Ctrl

第五行,就不用說了,意思剛好相反。

修改完畢后,重新登錄Windows即可生效!

 

我配置后在windows下通過終端登錄阿里雲服務器,vim操作體驗不錯。

下面是我的配置截圖:

 

下面附上各個鍵位值的參考:

Escape 01 00

Tab 0F 00

Caps Lock 3A 00

Left Alt 38 00

Left Ctrl 1D 00

Left Shift 2A 00

Left Windows 5B E0

Right Alt 38 E0

Right Ctr l1D E0

Right Shift 36 00

Right Windows 5C E0

Backspace 0E 00

Delete 53 E0

Enter 1C 00

Space 39 00

Insert 52 E0

HOME 47 E0

End 4F E0

Num Lock 45 00

Page Down 51 E0

Page Up 49 E0

Scroll Lock 46 00

Mac OS下交換鍵位設置

Mac OS Lion下,非常簡單,甚至不需要任何第三方軟件,直接在鍵盤設置里面修改即可。當初我還google了一下文章,有的說需要裝鍵盤驅動,有的說要用第三方軟件,其實沒那么麻煩,Lion已經有這個功能了……


免責聲明!

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



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