我最喜歡的emacs插件之一是擴展區域。emacs:擴展區域的鍵綁定
它以智能的方式選擇塊代碼。他們準備推薦綁定 關鍵C- =擴展區域。但是,在Mac OS終端中,C- =不由操作系統傳遞給應用程序。
那麼我可以在OS X上使用兩種組合鍵? (它必須快速按下,因爲我幾乎每分鐘都使用擴展區域)
我最喜歡的emacs插件之一是擴展區域。emacs:擴展區域的鍵綁定
它以智能的方式選擇塊代碼。他們準備推薦綁定 關鍵C- =擴展區域。但是,在Mac OS終端中,C- =不由操作系統傳遞給應用程序。
那麼我可以在OS X上使用兩種組合鍵? (它必須快速按下,因爲我幾乎每分鐘都使用擴展區域)
您無法使用C- =的原因是因爲您有一個使用該鍵綁定的OS X快捷方式。您可以禁用該快捷方式或將其移至另一個鍵綁定,這將允許您在emacs中使用C- =。
我在OS X(El Capitan)的GUI窗口中運行Emacs,並將C =綁定到展開區域。
如果您在終端中運行,終端可能也在竊取該鍵綁定,因此如果您在首選項 - >鍵盤 - >快捷鍵中找不到任何匹配項,請查看您的鍵盤首選項。
在一般情況下,他們的方式我覺得要在Emacs綁定可用鍵是做到以下幾點與C-H B
列出當前的鍵綁定,並期待看到什麼已被使用,並確定可用的綁定。
使用C-h k驗證密鑰未被綁定並驗證操作系統是否會通過它。如果沒有任何事情發生,他們的密鑰被操作系統或終端竊取,在這種情況下,您可以選擇另一個密鑰或禁用OS /終端層的綁定。
確定要使用的密鑰綁定後,可以使用global-set-key來全局定義它,也可以使用本地密鑰映射和定義密鑰來在特定模式下對其進行定義。
我傾向於在OSX下使用emacs,因此禁用了許多OSX快捷方式,以便可以使用emacs中的密鑰。因爲我在Linux和OS X上工作,所以我喜歡嘗試在兩個平臺上保留與emacs相同的密鑰綁定。
我會建議一個功能鍵(例如F9):http://www.gnu.org/software/emacs/manual/html_node/elisp/Key-Binding-Conventions.html。您可以通過'C-h k'確定給定的鍵是什麼,並決定是否要覆蓋它。許多在GUI中不同的密鑰在終端中被別名爲相同的密鑰,但根本沒有辦法解決這個問題,並且每個用戶都決定哪些默認值不夠重要。 – jpkotta