2012-06-24 114 views
3

我不是特別滿意viper模式在Emacs中的工作原理。我正在嘗試寫我自己的毒蛇模式。除了使用.emacs文件完成的自定義數量之外,我在Elisp中沒有任何良好的編程經驗。emacs中的臨時密鑰綁定

我想知道是否可以暫時更改Emacs中的密鑰綁定,並在需要時將它們返回到原始狀態。

回答

3

那麼,如果我正確理解你的問題,一個簡單的方法就是創建你自己的次要模式(除了你自己的具體模式),只做你的臨時密鑰綁定。

你給一個名稱,該模式,然後切換所有臨時鍵綁定或關閉作爲調用你的命令變得簡單:

M-x salsabear-minor-mode 

你可能想閱讀scottfrazer的45+ upvotes在這裏回答SO:

Globally override key binding in Emacs

,他解釋瞭如何創建一個包含鍵綁定自己的次要模式。

1

鑑於你明確只提到毒蛇,它可能值得問你是否知道其他基於vi/vim的庫存在?請參見下面的列表:

http://www.emacswiki.org/emacs/CategoryEmulation

我會嫌疑是重新發明了這個特定的車輪可能是不值得的。

我認爲Evil是最活躍的項目,但如果它不能按照你想要的方式工作,那麼你的努力可能會更好 - 花在增強它(如果可行)?