Linux下C編程基礎(chǔ)之:常用編輯器
(2)插入模式的功能鍵只有一個(gè),即按“Esc”鍵可回到命令行模式。
(3)底行模式常見功能鍵如表3.2所示。
表3.2 vi底行模式功能鍵
功能鍵 | 功 能 |
:w | 將編輯的文件保存到磁盤中 |
:q | 退出vi(系統(tǒng)對(duì)做過修改的文件會(huì)給出提示) |
:q! | 強(qiáng)制退出vi(對(duì)修改過的文件不作保存) |
:wq | 存盤后退出 |
:w[filename] | 另存一個(gè)名為filename的文件 |
:setnu | 顯示行號(hào),設(shè)定之后,會(huì)在每一行的前面顯示對(duì)應(yīng)行號(hào) |
:setnonu | 取消行號(hào)顯示 |
| vim是vi的升級(jí)版,與vi相比擴(kuò)展了很多功能且保持與vi的90%相兼容,感興趣的讀者可以查看相關(guān)資料進(jìn)行學(xué)習(xí)。 |
3.2.2初探emacs
正如前面所述,vi是一款功能非常強(qiáng)大的編輯器,它能夠方便、快捷、高效地完成用戶的任務(wù),那么,在此再次向讀者介紹另一款編輯器是否多此一舉呢?答案是否定的。因?yàn)閑macs不僅僅是一款功能強(qiáng)大的編譯器,而且是一款融合編輯、編譯、調(diào)試于一體的開發(fā)環(huán)境。雖然,它沒有VisualStudio一樣絢麗的界面,但是它可以在沒有圖形顯示的終端環(huán)境下出色的工作,相信追求強(qiáng)大功能和工作效率的用戶不會(huì)介意它樸素的界面的。emacs的使用和vi截然不同。在emacs里,沒有類似于vi的3種“模式”。emacs只有一種模式,也就是編輯模式,而且它的命令全靠功能鍵完成。因此,功能鍵也就相當(dāng)重要了。
但emacs卻還使用一個(gè)不同vi的“模式”,它的“模式”是指各種輔助環(huán)境。比如,當(dāng)編輯普通文本時(shí),使用的是“文本模式(TextMode)”,而當(dāng)寫程序時(shí),使用的則是如“c模式”、“shell模式”等。
下面,首先介紹一下emacs作為編輯器的使用方法,以幫助讀者熟悉emacs的環(huán)境。
| emacs縮寫注釋: C+chr>表示按住Ctrl鍵的同時(shí)鍵入字符chr>。因此,C+f就表示按住Ctrl鍵同時(shí)鍵入f。 M+chr>表示當(dāng)鍵入字符chr>時(shí)同時(shí)按住Meta或Edit或Alt鍵(通常為Alt鍵)。 |
1.emacs安裝
現(xiàn)在較新版本的Linux(如本書中所用的RedHatEnterprise4AS)的安裝光盤中一般都自帶有emacs的安裝包,用戶可以通過安裝光盤進(jìn)行安裝(一般在第2張光盤中)。
2.啟動(dòng)emacs
安裝完emacs之后,只需在命令行鍵入“emacs[文件名]”(若缺省文件名,也可在emacs編輯文件后另存時(shí)指定),也可從“編程”→“emacs”打開,如3.5圖所示的就是從“編程”→“emacs”打開的emacs歡迎界面。
圖3.5emacs歡迎界面
接著可單擊任意鍵進(jìn)入emacs的工作窗口,如圖3.6所示。
從圖中可見,emacs的工作窗口分為上下兩個(gè)部分,上部為編輯窗口,底部為命令顯示窗口,用戶執(zhí)行功能鍵的功能都會(huì)在底部有相應(yīng)的顯示,有時(shí)也需要用戶在底部窗口輸入相應(yīng)的命令,如查找字符串等。
圖3.6emacs的工作窗口
3.進(jìn)入emacs
在進(jìn)入emacs后,即可進(jìn)行文件的編輯。由于emacs只有一種編輯模式,因此用戶無需進(jìn)行模式間的切換。下面介紹emacs中基本編輯功能鍵。
(1)移動(dòng)光標(biāo)。
雖然在emacs中可以使用“上”、“下”、“左”、“右”方向鍵來移動(dòng)單個(gè)字符,但筆者還是建議讀者學(xué)習(xí)其對(duì)應(yīng)功能鍵,因?yàn)樗鼈儾粌H能在所有類型的終端上工作,而且讀者將會(huì)發(fā)現(xiàn)在熟練使用之后,輸入這些Ctrl加字符會(huì)比按方向鍵快很多。表3.3列舉了emacs中光標(biāo)移動(dòng)的常見功能鍵。
表3.3 emacs光標(biāo)移動(dòng)功能鍵
功能鍵 | 功能 | 功能鍵 | 功能 |
C-f | 向前移動(dòng)一個(gè)字符 | M-b | 向后移動(dòng)一個(gè)單詞 |
C-b | 向后移動(dòng)一個(gè)字符 | C-a | 移動(dòng)到行首 |
C-p | 移動(dòng)到上一行 | C-e | 移動(dòng)到行尾 |
C-n | 移動(dòng)到下一行 | M-(M加 | 移動(dòng)光標(biāo)到整個(gè)文本的開頭 |
M-f | 向前移動(dòng)一個(gè)單詞 | M->(M加 | 移動(dòng)光標(biāo)到整個(gè)文本的末尾 |
(2)剪切和粘貼。
在emacs中可以使用“Delete”和“BackSpace”刪除光標(biāo)前后的字符,這和用戶之前的習(xí)慣一致,在此就不贅述。以詞和行為單位的剪切和粘貼功能鍵如表3.4所示。
表3.4 emacs剪切和粘貼
功能鍵 | 功能 | 功能鍵 | 功能 |
M-Delete | 剪切光標(biāo)前面的單詞 | M-k | 剪切從光標(biāo)位置到句尾的內(nèi)容 |
M-d | 剪切光標(biāo)前面的單詞 | C-y | 將緩沖區(qū)中的內(nèi)容粘貼到光標(biāo)所在的位置 |
C-k | 剪切從光標(biāo)位置到行尾的內(nèi)容 | C-xu | 撤銷操作(先操作C+x,接著再單擊u) |
| 在emacs中對(duì)單個(gè)字符的操作是“刪除”,而對(duì)詞和句的操作是“剪切”,即保存在緩沖區(qū)中,以備后面的“粘貼”所用。 |
linux相關(guān)文章:linux教程
評(píng)論