home/end key binding in Mac OS X

[華語, cmn-Hant-TW]

Mac OS X和 Windows 對 home/end 這兩個鍵的定義有相當大的不同:在 Windows 下(其實應該是除了 Mac OS X 之外的 OS 都是這樣) 的 home/end 這兩個按鍵的功能是移動到行首/行末,而在 Mac 下則是捲至頁首/頁末。( Mac 的行首/行末預設的熱鍵是 command + ← 和 command + →)。當然因為操作邏輯的不同,很難去說哪個比較好用。不過在 KDE/Windows 系統下用久了,很習慣的就會把 home/end 當成行首/行末來看,然後文章寫一寫按到就會亂跳,還要再移回原來的位置繼續寫,有點煩。

除了誤按的問題外,行首/行末和別的熱鍵衝突也是我感到困擾的地方。當然這並不是說預設值有衝突,而是個人的使用習慣造成的衝突就是了。Leopard 的 spaces 預設熱鍵是 ctrl + 方向鍵,不過我不喜歡用 ctrl + 方向鍵來切換 space,所以就把熱鍵改成 command + 方向鍵,結果系統很貼心的就把行首/行末熱鍵指定到 ctrl 去了,也就是說切換 space 和跳至行首的熱鍵互換了啦。這樣一點一致性也沒有了 ( Mac OS X 編輯相關的熱鍵都是 command 啟動,結果這個變成 ctrl 按起來會相當不順手),所以就想說不如直接沿用 Windows 的熱鍵,這樣也不用分別去熟悉不同的環境。

在網路上找了一下發現有人有解決的方案了。 在這裡有提到如何去重新設定 home/end 的功能,連 shift – Home/End (選取至行首/行末) 都一並設定好了。大致上就是建立~/Library/KeyBindings/DefaultKeyBinding.dict 這個檔案,然後把相關的設定設好即可,系統不需要重開,只要重新開啟程式新的熱鍵設定就會啟用了,在這邊有提到如何寫設定檔。

當然,懶人包是需要的,前面提到的那位先生寫了一個小程式來幫忙設定,不想自己動手改的話,就直接執行這個小程式就可以了,經實驗證實,確實有效。

3 thoughts on “home/end key binding in Mac OS X

  1. Pingback: Rico’s ordinary days » Blog Archive » 苹果下的Home/End键

  2. 爬墙砖家

    经实验, 此软件对opera, 对终端无效, 我死了的心都有了

  3. Wei-Hao Syu Post author

    這個問題我後來就沒繼續追下去了… 因為用筆記型電腦後按 home/end 還要用 fn 才按得出來,沒事的話根本懶得按 home :p

    不過我印象中當時確實有些軟體改了也沒用,這大概無解了。

Leave a Reply

Your email address will not be published. Required fields are marked *