打磨程序員的專屬利器分三個專題展現--html
1. 命令行&文件linux
2. 快捷鍵(本文)c++
3. 文本程序員
本人與快捷鍵的淵源應該從遊戲開始提及。10年前的經典遊戲wow,遊戲裏的技能很是多,因此玩遊戲時將全部比較經常使用的技術都設置成了快捷鍵。方向控制改爲sdf,而後左手的其它字母鍵都是技能快捷鍵。甚至是鼠標滾輪的上下滾動都被我設置成了技能。設置快捷鍵後的遊戲體驗徹底不同,以至於如今有空時都還當休閒遊戲玩下wow。小程序
後來pc版植物大戰殭屍很火,因而跟風玩了一段時間。但發現左上角那些待選的植物只能用鼠標去點--太慢了。因而作了個輔助工具,啓動時註冊全局的熱鍵F1,F2,F3等,而後在遊戲中按F1,F2,F3時,程序先用GetCursorPos()記錄鼠標當前位置,再用SetCursorPos()將鼠標移到左上角待選的植物圖標上,而後調用mouse_event()模擬鼠標點擊,最後SetCursorPos()將鼠標移回原來的位置。這樣用"快捷鍵"比手動操做鼠標去點不知快多少倍。vim
最後玩lol,默認快捷鍵qwer,因爲這四個鍵上都沒有fj鍵上的那一小凸點,很容易按錯。因而將qwer分別改成xdfg,而後召喚師技能df改爲cv,快捷智能施法alt-xdfg,升級技能設置爲alt-qwer。windows
因爲本人常常寫c/c++代碼,而且使用vs2008+VisualAssist,下面是全部使用的快捷鍵--api
能夠看出本人很是喜歡使用Alt做爲快捷鍵的前綴,由於只須要用左手原來按空格的大拇指,稍微轉曲下就能夠按到Alt鍵,左手其它的字母按鍵都不會受影響。而若是用ctrl鍵,左手總體都必須移動較大的位置,這樣就很難和其它的字母鍵連按了。xcode
具體的快捷鍵大概的說明一下:eclipse
a. vs默認的註釋,取消註釋的快捷默認好像是ctrl+shift+C,V,只想說連按這三個鍵時,左手移動的位置太大,不比直接Alt+C,V來更快
b. Alt+Q 能夠在.h和.c/.cpp文件之間快速切換
c. Alt+D 能夠快速定位到函數或變量名的定義處
d. Alt+F 能夠查找光標所在函數名或變量名
e. Alt+上箭頭、下箭頭 能夠在相同的函數名或變量名之間進行切換。
f. Alt+H,J,K,L 控制光標的左、下、上、右移動,是受了vim編輯器的影響。
我的認爲vim之於程序員就像五筆之於打字員。學過五筆的人都知道,打字時徹底不須要用大腦去思考了--直接用「手指思考」如何打字便可。一樣,熟悉vim後,不少操做都不須要思考了,能夠用與思惟同步的速度來編輯代碼。初次看hjkl控制光標的左、下、上、右移動,感受很彆扭,但用多了手指就熟悉這種模式了。本人花了幾個月跌跌撞撞的vim學習之路後,終於算是熟悉vim了。
在vs2008中本人爲了使用vim的特性而安裝了ViEmu。在vim的編輯模式下,爲了移動光標,因而就有了上面將alt+H,J,K,L設置成光標移動的快捷鍵。
vim能夠做爲咱們學習的最後一種編輯器。由於在linux或Mac下,在eclipse和xcode下都有vim的插件,這樣在換平臺後,能夠保證vim所帶來的便利不變。固然最好徹底用vim來當IDE用(本人如今還沒達到這種境界)。
關於vim的具體用法能夠另寫一篇文章了,這裏就不過多闡述。
吐槽下xcode的快捷鍵,不能將配置導入導出,這樣換一臺電腦後都得從新配置。
《vim實用技巧》的做者推薦將大小寫鎖定鍵換成ctrl,這樣按ctrl+C,V,W等鍵時比原有的ctrl方便一點。我的這麼替換後發現確實方便很多--只須要將左手小指往左多伸一點,而後無名指、中指、實指能夠保證在原來的位置不變。而原來按ctrl鍵時,左手老是要移動一段距離,有時沒信心時,還得看下鍵盤。
在windows下將下面的代碼保存成reg文件,而後執行、註銷電腦便可實現大寫鍵換成ctrl。
Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Keyboard Layout] "Scancode Map"=hex:00,00,00,00,00,00,00,00,02,00,00,00,1d,00,3a,00,00,00,00,00
而將大小寫鎖定鍵改爲ctrl鍵後,若是出於未知緣由將大寫鎖定了,因而本人寫了一個小程序來模擬CapsLock鍵 KeyCaptital
5
看圖
將CapsLock換成Ctrl後,CapsLock幾乎成了除空格以外,用得最多的按鍵了。爲了使本身按得更有信心,從FJ鍵上的小凸點獲得啓發,因而在CapsLock上帖了一個小物體,這樣指頭按上去時就知道確實按的是這個鍵——不過不是很美觀~~~
而後爲了盲打數字鍵以及它上面的符號,寫c程序時會用到*&%(),而寫perl程序!@#$%^&*()這些符號都會用到,而每次按時幾乎都得看鍵盤,也是受FJ凸點的啓發,在"47"鍵上分別帖上便籤,這樣盲打數字鍵時,左右手的食指分別放在47鍵上,而後就能夠用字母鍵盤的指法去打符號了。
最近本人在Mac下工做了一段時間。Mac下的command所在的位置正在本人最喜歡的alt鍵的位置。不過爲了保持習慣,在mac下將CapsLock改爲command,而將command換成ctrl。這樣複製、粘貼時在windows和mac下都是"CapsLock"+C,V。關閉窗口都是"CapsLock"+W等等。
比較Mac和windows,在快捷鍵上只能說是各有所長--
a. Mac下command+上箭頭能夠返回上一級目錄,這是windows沒有的
b. Mac下用command+o是打開或者進入目錄,而windows直接是Enter鍵,而Mac下的Enter鍵竟然是重命名。我想問:究竟是打開一個文件用得多仍是重命名一個文件用得多啊??把Enter這麼好用的鍵用在重命名上太浪費了。
c. Mac下command+M能夠最小化單個窗口,這是windows沒有的。但comamnd+M太難用一個手按到了!!!也不能將這個快捷鍵換掉。(command+O也很難用一個手按)
因而多麼但願有一款系統或者資源管理器能夠徹底作到全部的操做均可以自定義快捷鍵!!! 大概只有本身編譯linux了吧……