怎樣統一 Windows 和 Mac 上的快捷鍵使用體驗?

同時使用Windows和Mac時怎樣使快捷鍵儘可能地統一呢?具體比如:

複製粘貼等系統快捷鍵

跨平台軟體如Sublime Text等的快捷鍵

在Mac上使用Windows虛擬機時怎樣設置鍵位映射比較方便


我 Windows,Ubuntu Desktop,OS X 均日常使用多年。不要嘗試改鍵位,除非你能保證不用別人的機子並且能承受重裝系統時候重新配置一遍的成本。常用快捷鍵我記三套快速切換沒問題。


既然職業賽車手平日也能正常駕駛家用車,那麼在不同平台切換鍵盤記憶也是可行的。

你需要的,也許是兩種手感差異較大的鍵盤,以便肌肉迅速作出區分。


先回應一下前面的乎友,因為我是家養程序猿,所以絕不妥協!我也基本滿足了「不用別人的機子」。何況部署改鍵腳本幾乎是零成本,AutoHotKey和Karabiner都是綠色軟體,將事先寫好的改鍵腳本在新系統或別人電腦上直接運行就可以啦。換回別人來用電腦時,把改鍵程序關閉之,就這麼簡單。

本文的核心理念是『Ctrl+Shift組合鍵常有,Ctrl+Alt亦常有,而Alt+Shift不常有。』

因此先拋開鍵盤不看,在空中伸開你的五指:在左手大拇指下放一顆Ctrl鍵(即Command,這也是蘋果的做法),在小拇指下放置Alt或Shift鍵(這是科學推論的結果),這樣大拇指和小拇指可輕鬆形成組合鍵(Ctrl+Alt或Ctrl+Shift),此時仍然剩下的三根手指:無名指、中指、食指可從容應對 Z X C V 等字母,輕鬆按出組合鍵:Ctrl(大拇指)+Shift(小拇指)+F(食指) 或 Ctrl(大拇指)+Alt(小拇指)+Q(無名指)。

相比之下,傳統鍵盤要按出個Ctrl+Shift+Z X C V,想必是小拇指Ctrl+無名指Shift,而此時你只剩下兩根手指去按Z X C V了,別告我你正在用大拇指按X,那畫面太美~快去表演給你同學看(^o^)/
而蘋果鍵盤也好傻X,Alt(即Option) 和 Ctrl(即Command) 都在大拇指的位置,實在難以想像如何單手按出Option(小拇指?)+Command(大拇指?)+Q(無名指?)的景象。。雞爪子?

下面具體對比傳統鍵盤位和全新楔式鍵盤位,既然革命就來個徹底,亮點不是一兩處,後面我會具體分析這些革新的切實原因:

傳統鍵盤位:

Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12
` 1 2 3 4 5
Tab Q W E R T
Caps A S D F G Enter 滑鼠
Shift Z X C V B
Ctrl Fn Win Alt Space Alt Ctrl

楔式鍵盤位:(如果你鍵盤上沒有Fn鍵,請將Esc鍵位置復原,並腦補這些Fn鍵全都消失)

F1 F2 F3 F4 fn F5 F6 F7 F8 fn F9 F10 F11 F12
` 1 2 3 4 5
Tab Q W E R T
Alt A S D F G Enter 到底用右手按Enter還是抓滑鼠?
Shift Z X C V B
Enter Esc Del Ctrl Space Win Caps

換成對應的蘋果鍵名就是:

F1 F2 F3 F4 fn F5 F6 F7 F8 fn F9 F10 F11 F12
` 1 2 3 4 5
Tab Q W E R T
Option A S D F G Enter 老夫的右手還要抓滑鼠!絕不用vi
Shift Z X C V B
Enter Esc Del Command Space Control Caps

初級用戶會把傳統Ctrl鍵和蘋果Control鍵混為一談。剛才也看到樓上的乎友回復說「蘋果將Command鍵當作Windows鍵來用」。對於這些容易混淆的地方,我來給大家理一理,

現在統一蘋果鍵和傳統鍵的功能及名稱:
Shift鍵不用說,兩邊功能和名稱完全一致。
傳統Ctrl鍵 和 蘋果Command鍵 功能一致,統稱:Ctrlmand鍵。例如Ctrlmand+C複製文件
傳統Alt鍵 和 蘋果Option鍵 功能一致,統稱:Altption鍵
傳統Win鍵 和 蘋果Control鍵 是兩個系統各自獨有的特色鍵,統稱:Wintrol鍵
(且Wintrol+Space在蘋果和Windows系統中都是用於切換輸入法。更完美的切換方式我已開發好,寫本文時正用得酸爽暫且不表)

楔式統一鍵位:

F1 F2 F3 F4 fn F5 F6 F7 F8 fn F9 F10 F11 F12
` 1 2 3 4 5
Tab Q W E R T

Altption A S D F G Enter
滑鼠
Shift Z X C V B
Enter Esc Del Ctrlmand Space Wintrol Caps

略保守的版本:Esc復原,Wintrol放回左邊,如果Space左邊容許4個鍵位的話

Esc F1 F2 F3 F4 fn F5 F6 F7 F8 fn F9 F10 F11 F12
` 1 2 3 4 5
Tab Q W E R T

Altption A S D F G Enter
滑鼠
Shift Z X C V B
Enter Wintrol Del Ctrlmand Space Caps

統一Windows和OSX按鍵還是很有必要的,尤其是程序員在用Sublime編輯器時有大量的快捷鍵可用,如果兩邊的快捷鍵不一致簡直不能忍!最後充分解釋一下上述鍵位設計的理由:

1. 右手抓滑鼠時,左手可以按出Enter、Esc和Delete,這樣的布局主要適合程序員或文員用戶。當右手用滑鼠選擇文件時,左手按Shift+Delete即可刪除,彈出詢問對話框時,左手按Enter即可確定,按Esc就取消。蘋果系統上可用Karabiner將Ctrlmand+Delete組合鍵映射為Ctrlmand+Backspace來刪除文件。

2. 對於大型遊戲用戶,由於鍵盤發生改變,可在遊戲內根據新鍵盤重新設置按鍵,使其符合自己的指位習慣,大拇指是跳,小拇指是翻滾等等,感覺都不是問題。若實在覺得Enter、Esc、Delete鍵位礙事,可在進遊戲前用AutoHotKey禁用它們或調換位置,也可在遊戲中將它們設為對自己有用或無用的按鍵,Delete為加速,Enter為挑釁,等等。

3. 當你要用到CapsLock大小寫切換鍵時,或者用Wintrol+Space切換輸入法時,想必是雙手同時在打字,因此將Cap和Wintrol放置在右手區域。左手單獨打字時,按Shift輸出大寫字母足矣。有童鞋會抱怨:「還我Wintrol+E還有Wintrol+X」!其實Ctrlmand+N也可以開新窗口的,偶爾要快速關機的話,左手食指Wintrol+小拇指X也可以按出系統菜單,況且也還得右手按UU才關機。相比之下,文本編輯的場景還是更常見:右手滑鼠選中一段文字,左手直接Delete掉。

4. 為何將Ctrlmand鍵設在在大拇指下更合理,而不是小拇指:就拿Ctrl+W舉例,傳統Ctrl(小拇指)+W(無名指)很不方便(會不由自主變成中指按W),現在大拇指按住Ctrlmand,剩下四指分別對應Q W E R,輕鬆按出4種組合鍵!若要按更複雜的Ctrl+Shift+W組合鍵,則大拇指方案更有優勢!傳統的Ctrl+Shift已用去小拇指和無名指,只剩下食指和中指應對Q W E R,大拇指方案則會有三根手指應對Q W E R!
其它比傳統方便的快捷鍵有:
現在左手直接Ctrlmand+Altption+Delete或Ctrlmand+Shift+Esc呼出任務管理器。
傳統Alt+F4關閉窗口(大拇指+食指)不太方便,現在小拇指Altption+食指F4方便很多。
傳統Alt+Tab切換窗口很方便,現在小拇指Altption+無名指Tab依然方便。

5. 無論你用不用Sublime,利用改鍵軟體,小拇指Altption+英文字母可自定義很多常用快捷鍵,這是個大好處(例如Altption+Q A E R我分別設為游標上下左右移動,Altption+D F分別是左刪字和右刪字,你也可以設為打開瀏覽器或播放歌曲等等),且幾乎不與系統原有快捷鍵(Ctrlmand+英文字母)衝突。關於傳統CapsLock很雞肋,鍵位不合理,網上早有定論,請自行搜索。網上曾有高手提出蘋果用戶把Control+Option+Command+Shift按鍵組合映射為一個新鍵,放在傳統CapsLock的位置,命名為Hyper鍵,當按下Hyper+R時,就相當於按出了Control+Option+Command+Shift+R組合鍵,且不會與任何已有的系統快捷鍵衝突。但這樣做的問題是,無法按出Hyper+Command+R等組合鍵,因為Hyper本身就已經包含了Command鍵。所以還是為小拇指單獨放置Altption鍵更合理,可與大拇指Ctrlmand形成各種組合鍵(例如Altption+Ctrlmand+Q A E R我設為游標上下左右移動並塗黑選擇文字,這樣有別於前文Altption+Q A E R,卻又有相似關聯)。最後再結合長按、短按可產生更多功能,關於自定義Sublime快捷鍵下次另開一篇帖子展開。

6. Windows和OSX系統(≤10.11 El Capitan)可以分別使用AutoHotKey和Karabiner實現理想中的改鍵。但唯獨Fn鍵的位置不好更改,需要前瞻性的鍵盤生產廠家給予硬體支持才行,也是我發此篇知乎的呼籲。Fn鍵的位置向來不合理,大多是為了配合F1~F12使用,為何不直接在F1~F12的間隔中楔入兩個瘦長形的fn鍵,它比普通按鍵更矮些,方便用戶按出fn+F8等組合?這是小學生都能想明白的道理。相比之下Esc要常用得多,完全可以挪到傳統Fn鍵的位置。右手滑鼠點出詢問對話框時,左手按Enter為Yes,左手按Esc為No。此前我都是用Altption+E和Altption+R分別表示回車和刪除,這下又省出好幾組Altption+(Ctrlmand)+長按/短按快捷鍵留作他用!

以上,關於楔式鍵盤位的設計,只要贊同的人數足夠多,鍵盤廠商就會有動力生產這樣的鍵盤。喜歡這樣鍵位設計的朋友可多多點贊支持,這樣大家都能早一天用到實際產品。到那時,幾乎不用改鍵,就能輕鬆享受到更加科學便捷的輸入體驗。


正好工作需要iMac+Win7虛擬機雙屏, 剛總結了獨門流暢工作快捷鍵, 特此分享.

效果:

1. 虛擬機Win7可以使用autohotkey以及滑鼠快捷鍵.

2. 蘋果機可以使用常用win快捷鍵以及滑鼠快捷鍵.

——————————————————————————

實現mac和win7無縫切換四個滑鼠快捷鍵。

方法:

1. 在Karabiner裡面定義虛擬機內cmd-&>ctrl(因為Win7不存在cmd)

2. 在羅技控制中心將滑鼠快捷鍵定義為cmd c, cmd v, ^pageup, ^pagedown


3. 在mac系統設置-鍵盤內定義ctrl-&>cmd(2+3保證滑鼠發出的ctrl依然是ctrl,鍵盤ctrl變成cmd之後可以很好的與win接軌)

解決虛擬win7下無法使用F1-F12快捷鍵問題:ios設置-鍵盤-使用F1-F12為標準功能鍵


此時蘋果fn+F1可以實現之前F1的功能,Win7可以正常使用F1-F12用於autohotkey


解決虛擬win7下無法使用小鍵盤問題:使用autohotkey將F6映射為Numlock,即可開啟關閉小鍵盤

不完美但是思路可供借鑒。歡迎討論:)


用上AutoHotkey的那一刻,我的眼中滿含熱淚

LWin::RControl
RAlt::Del


推薦閱讀:

Pages 不能支持中文斜體嗎?
Windows下怎樣有條理地安裝軟體?
為什麼 Windows 系統大部分問題重啟就能好呢?
既然阿里不把WP放在眼裡,微軟為什麼不搞自己的支付?
win10系統ntoskrnl.exe佔用大量內存如何解決?

TAG:Mac | macOS | MicrosoftWindows | SublimeText | Windows81 |