Emacs入門系列:3分鐘學(xué)會Emacs基本操作

引子

人們都說Emacs是神器,安裝看看,這個神器確實夠神:沒有萌萌的圖標(biāo),沒有帥氣的界面,沒有性感的代碼地圖(SublimeText的mini map)。剛安裝好的Emacs,就是一個呆到爆、土掉渣、傻到頂?shù)摹鞍装V”編輯器。

“就評這也能說是神器?在如今的編輯器大戰(zhàn)中,Emacs也就是當(dāng)作一個老古董任人憑吊了吧”。

好吧,其實剛剛裝好的Emacs,就是一個剛剛初始的孩子,啥也不會,啥也不懂。都需要你親手去調(diào)教呢。將來是一個小家碧玉,還是一個大家閨秀,抑或是一個女漢子,一切皆有可能啊。唯一可以確定的,如果你持之以恒的調(diào)整相關(guān)配置,未來一定可以得到一個為你量身定制的文本編輯器。而且,這個編輯器在Windows、Linux、Mac OSX、等主流瀏覽器上都有發(fā)行。

這也就是說,你會得到一個包打天下的神兵喔,是不是很吸引人?

我有心開一個Emacs的入門專題。在寫這個專題的過程中,我也可以和大家一起學(xué)習(xí),一起進步。

好吧,下面咱們言歸正傳,開始今天的話題。


Emacs以令人眼花繚亂的組合鍵“聞名于世”。要想使用好Emacs,死記硬背是不行的,多多的使用才是正途。然而,閱讀Emacs使用手冊、教程,有時會感到不夠方便。因此各種各樣的“CheatSheet”應(yīng)運而生。簡單的吧各種按鍵組合羅列起來,做“快速索引”我覺得還不夠便捷。因此,我自己寫了這篇文章,把我整理的“CheatSheet”寫出來,作為積累保留以后檢索使用。

Emacs中的基本文字編輯

Emacs是文本編輯器,雖然經(jīng)過各位“牛人”的長期支持,Emacs已經(jīng)在向“操作系統(tǒng)”演進,通過眾多的“包”(Package),已經(jīng)可以做到絕大多數(shù)你需要她完成的功能,所以Emacs中最基本的仍然是文字編輯功能。

使用Emacs編輯文本,主要涉及的功能包括:光標(biāo)移動、刪除文字、剪貼板的使用、Undo/Redo、文件操作等。下面我們一個個的來講一講。

Emacs中的光標(biāo)移動

Eamcs中移動光標(biāo),和Windows操作系統(tǒng)中的絕大多數(shù)文本編輯器類似,可以使用“方向鍵”、“PageUP/PageDown”等按鍵完成。但是作為在“終端”時代生存至今的Emacs,還提供了讓雙手不離開鍵盤區(qū),就可以移動光標(biāo)的方法,而且在有的時候,這些組合按鍵的效率更高。

Emacs移動光標(biāo)的組合鍵不少,我用下面這張圖來說明。按圖索驥,已經(jīng)覆蓋了Emacs原生的光標(biāo)移動方法。

需要說明的是:在Emacs文檔中,“Meta”鍵對應(yīng)的是Windows鍵盤中的“Alt”鍵。

圖1:Emacs光標(biāo)移動圖
圖1:Emacs光標(biāo)移動圖

此外,Emacs移動到指定行的方法是:

M-g M-g:Emacs會要求輸入行號,移動光標(biāo)到指定行

Emacs中的刪除

在Emacs刪除文字有很多種方法。在說明相應(yīng)的操作方法前,我們需要先弄明白幾個概念:“刪除(Delete)”、“移除(Kill)”、“召回(Yank)”還有“移除環(huán)(Kill-Ring)”

好吧,“刪除”和“移除”在文本編輯的過程中實現(xiàn)的效果非常類似——對應(yīng)的字符或內(nèi)容在文檔中“消失”了。存在細(xì)微差別的地方在與取回這些“消失”的內(nèi)容的方法上:

被“刪除”的內(nèi)容,只能使用“撤銷(Undo)”的辦法來找回這些“消失的字符”。和大多數(shù)人預(yù)想的一樣,這些“消失的字符”只會重新出現(xiàn)在原來它們所在的地方。關(guān)于Emacs的刪除操作請看下圖:

圖2:Emacs的刪除操作
圖2:Emacs的刪除操作

Emacs的剪貼板以及Undo/Redo

被“移除”的內(nèi)容,除了可以使用“撤銷”的方法了找回內(nèi)容以外,還可以使用“召回”的方法讓這些“消失”的內(nèi)容出現(xiàn)在當(dāng)前光標(biāo)之后。這樣的操作效果和使用了“剪貼板”的效果類似了。

“召回”,是將移除的內(nèi)容插入到光標(biāo)所在位置的一種操作。使用召回操作,讓人有一種使用“剪貼板”的感覺。不過Emacs會記錄多次“移除”操作的內(nèi)容,這一點可要比windows操作系統(tǒng)提供的“剪貼板”功能要強大多了。這種記錄多次“移除”操作內(nèi)容的機制在Emacs中叫做“移除環(huán)”——Yank Ring。

“移除環(huán)”是Emacs存儲移除內(nèi)容的一種機制,其中含有多次“移除”操作的內(nèi)容。之所以稱其為“環(huán)”是因為在Emacs中提供了在光標(biāo)位置插入不同“移除內(nèi)容”的方法。而訪問“移除內(nèi)容”時是按照“環(huán)”的方式循環(huán)訪問的。關(guān)于Emacs的移除操作和召回操作請見下圖:

圖3:Emacs的移除和召回操作
圖3:Emacs的移除和召回操作

如果輸入時錯誤的使用了“撤銷”命令,而需要“撤銷前面的撤銷”操作,Emacs提供了“重做(Redo)”的方法:隨便移動一下光標(biāo),在使用“撤銷”命令 即可。

Emacs中的查找和替換

任何編輯器都有查找和替換的功能,Emacs也不例外。在Emacs中最常用的查找方法是“增量查找”。除此之外,Emacs還提供了“正則查找”、“詞組查找”、“簡單查找”三種方法。這些查找方法,一般來說,熟練掌握其中的一至兩類就足夠應(yīng)付日常使用的需要了。

“增量查找”是“邊輸入邊查找”的查找方式。也是在Emacs中使用最為頻繁的一種查找方式。“正則查找”則是輸入一個正則表達式來進行查找的方式。“詞組查找”意味著輸入的是一個詞組(在英文等語言環(huán)境下,詞組是有意義的。在中文環(huán)境下,應(yīng)用的就少一些了)。“簡單查找”和“增量查找”對應(yīng),是在用戶輸入完所有待查內(nèi)容后才啟動查找的方法。

幾類查找的操作方法見下圖:

圖4:Emacs的查找
圖4:Emacs的查找

有查找就有替換。在Emacs中,替換一般需要通過調(diào)用命令的方式實現(xiàn)。Emacs中提供的替換方式包括“全文替換”、“正則替換”、“交互式替換”三種方式。

其中“全文替換”和“正則替換”是從光標(biāo)位置向后替換文字。“交互式替換”是在替換的過程中有控制的確定是否執(zhí)行替換操作。

Meta-% 即可啟動查找且替換模式。

Emacs中的文件操作

基礎(chǔ)的Emacs文件操作是創(chuàng)建、保存、另存。

  • 創(chuàng)建新文件:
    1. 使用組合鍵 Ctrl-x Ctrl-f 打開“find file”
    2. 在提示符處輸入一個不存在的文件名
    3. 回車確認(rèn)后,Emacs即創(chuàng)建了一個空的Buffer供輸入使用。
  • 保存文件
    Emac的保存文件非常簡單,只需要按下組合鍵Ctrl-x Ctrl-s即可。
  • 另存文件
    要另存一個文件,按下組合鍵Ctrl-x Ctrl-w,按提示輸入新的文件名即可。

小結(jié)

今天我們看到的是Emacs的基本操作。明天我們開始Emacs的訓(xùn)練之旅吧。期待我們的Emacs小兵快快成長。哈哈!

修訂記錄

  • 2015-03-20: 根據(jù)讀者@魚小號的建議增加了Meta鍵在Windows下的說明,并修訂了圖1中的錯誤
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 227,488評論 6 531
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,034評論 3 414
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事。” “怎么了?”我有些...
    開封第一講書人閱讀 175,327評論 0 373
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 62,554評論 1 307
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 71,337評論 6 404
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 54,883評論 1 321
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 42,975評論 3 439
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,114評論 0 286
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 48,625評論 1 332
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 40,555評論 3 354
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 42,737評論 1 369
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,244評論 5 355
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 43,973評論 3 345
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,362評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 35,615評論 1 280
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 51,343評論 3 390
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 47,699評論 2 370

推薦閱讀更多精彩內(nèi)容