很早之前就聽說過emacs和vim,前段時間用了4、5個月的vim,感覺確實名不虛傳啊,方便又快速。最近想起來另一個神器Emacs,於是就去學習一下,畢竟體驗過才能有自己的評價。
自己在安裝emacs23.3的時候,遇到一個問題:emacs: Cannot open termcap database file,查資料發現是因為沒裝ncurses,在ubuntu下輸入sudo apt-get install libncurses5-dev安裝,然後make distclean清空一下再重裝就可以了。
一 基本操作
emacs不像vim一樣需要切換不同的模式,所以它有大量的快速鍵來進行編輯文本以外的操作。文中使用emacs文檔中的風格,用C-代替按住Ctrl鍵,M-代替按住Alt鍵。
C-f 下一個字元,C-b 前一個字元,C-n 下一行,C-p 前一行,C-a 到行首,C-e 到行尾,M-f 下一個單詞,M-b 前一個單詞,M-a 到句首,M-e 到句尾,M-< 到文章開頭,M-> 到文章結尾。
重複執行某命令,例如執行C-n5次:C-u 5 C-n,或者M-5 C-n
刪除從游標位置到行尾字元:C-k, 刪除從游標位置到段尾:M-k
剪下某一段連續字元:在連續字元開始處C-@,在結尾處C-w
粘貼:C-y。 M-y:依次粘貼前幾次剪下的內容
撤銷:C-x u或者C-_,不能撤銷未改變文本的操作
向下翻頁:C-v, 向上翻頁:M-v
二 檔案、緩衝區
C-x C-f ,然後輸入檔案名稱,尋找檔案,若檔案不存在則建立檔案
C-x C-s 儲存檔案,若開啟時為指定檔案名稱,則預設使用~
C-x s 檢測是否有未儲存的檔案
以開啟的檔案會存放在buffer中,C-x C-b顯示buffer相關資訊,C-x b在buffer 間切換,C-x k關閉當前緩衝區。
三 視窗
C-x 2水平平分當前視窗,C-x 3垂直平分當前視窗,C-x 1關閉其他視窗,只顯示光線標所在視窗;C-x 0 關閉當前視窗,C-x o在視窗間切換。
四 編譯
M-x compile,然後輸入編譯的命令即可。
五 SecureCRT與emacs問題
SecureCRT下面使用emacs時,會有alt鍵無效的問題,解決方案之一是在SecureCRT的session option->Terminal->Emulation->Emacs中,勾選Use ALT as meta key.
(http://siliangdu.tk/2011/12/116)