Linux的编辑器、编译器、配置文件、及其安装方法的理解
? ? ?Emacs是偽裝成編輯器的操作系統(tǒng)
????????有句夸張的話(huà)說(shuō):Emacs是偽裝成編輯器的操作系統(tǒng)。細(xì)細(xì)想來(lái),這句話(huà)并不夸張。
????????Emacs其實(shí)是個(gè)Lisp的解釋器,因此可以用Lisp靈活地?cái)U(kuò)展。 Lisp是什么東西,這同樣是種很有生命力的編程語(yǔ)言。在C語(yǔ)言還沒(méi)有發(fā)明的年代,MIT的人工智能實(shí)驗(yàn)室寫(xiě)ITS操作系統(tǒng)時(shí),一部分用的是匯編語(yǔ)言,還有一部分就是用的Lisp。現(xiàn)在,Lisp仍在人工智能研究領(lǐng)域廣泛使用著。
????????有這么牛逼的擴(kuò)展語(yǔ)言,注定Emacs向著無(wú)所不能的方向發(fā)展。漸漸地,人們用Emacs不再限于寫(xiě)程序,寫(xiě)文檔,而且在Emacs里管理文件系統(tǒng),運(yùn)行終端,收郵件,上網(wǎng),聽(tīng)音樂(lè)……,真是一發(fā)不可收拾。甚至,有人用Emacs控制咖啡機(jī)煮咖啡。
????????這種大而全的擴(kuò)展,背離了“一個(gè)程序只做一件事并做好它”的 Unix哲學(xué),被Unix的忠誠(chéng)用戶(hù)所詬病。可是真的背離了嗎? Emacs說(shuō)過(guò)自己是一個(gè)編輯器嗎?
????????正是因?yàn)镋macs的無(wú)敵的可擴(kuò)展性,人們才分不清Emacs到底是不是一個(gè)編輯器了。但,就是有人喜歡這種All-in-One的哲學(xué),喜歡在Emacs中完成每件事。所以才會(huì)有人寫(xiě)《生活在Emacs中》,所以, Emacs才會(huì)成為一種信仰。
????????
????????Vim不只是Vi
????????Vim是Vi最受歡迎的變種之一,除了繼承了Vi迅捷的編輯方式, Vim的功能已經(jīng)比原始的Vi強(qiáng)大得多。這也得益于它可以用Vim腳本無(wú)限地?cái)U(kuò)展。 Vim.org 上已經(jīng)有數(shù)千個(gè)腳本了,給Vim增加各種各樣的特性和功能。
????????為了證明Vim的可擴(kuò)展性不輸于Emacs,也有用戶(hù)寫(xiě)了在Vim中玩游戲、運(yùn)行Shell、和集成GDB在Vim內(nèi)部調(diào)試的插件。客觀地講,Vim的腳本語(yǔ)言與Emacs的ELisp相比,略顯遜色,但這絲毫不妨礙它把Vim擴(kuò)展成非常優(yōu)秀的編輯器。
????????說(shuō)到底,Vim的前身Vi和Emacs的設(shè)計(jì)采用了不同的哲學(xué), Vi更符合Unix傳統(tǒng),它通過(guò)管道機(jī)制和系統(tǒng)內(nèi)各種積木工具打交道,它講究的是和系統(tǒng)內(nèi)的工具程序協(xié)作來(lái)完成用戶(hù)的任務(wù)。和Emacs相比,它的定位很明確,就是要做一個(gè)強(qiáng)大的編輯器。因此Vim的絕大部分?jǐn)U展,都是為了更好地完成編輯文本的任務(wù)。
????????海納百川,有容乃大。Emacs和Vim通過(guò)別的編輯器無(wú)法比肩的可擴(kuò)展性,不斷吸收廣大用戶(hù)的智慧,是它們能成為“神器”的原因之一
————除了vim, 還有哪些常用的牛逼的編輯器,?
@ emacs?
Emacs不僅僅是一個(gè)編輯器,他是一個(gè)整合環(huán)境,或可稱(chēng)它為集成開(kāi)發(fā)環(huán)境,這些功能如讓使用者置身于全?
功能的操作系統(tǒng)中,在基于編輯器的功能基礎(chǔ)上,Emacs自行開(kāi)發(fā)了一個(gè)“bourne-shell-like”的shell: EShell。?
特點(diǎn):?
(1)交互式編輯器(2)實(shí)時(shí)編輯器(3)高級(jí)編輯器(4)自文檔化(5)可定制性(6)可擴(kuò)展性(集成Lisp語(yǔ)言)(7)支持X Window環(huán)境?
emacs和vim的區(qū)別:?
(1)vim更偏向于簡(jiǎn)單中的復(fù)雜。?
(2)而emacs則是復(fù)雜中的簡(jiǎn)單。?
(3)emacs可擴(kuò)展性極強(qiáng)?
(4)vim他的快捷鍵很有特色。鍵盤(pán)上的各種符號(hào)鍵也是利用的很廣。?
(5)vim內(nèi)置腳本語(yǔ)言有局限性,emacs的lisp語(yǔ)言更加強(qiáng)大。?
(6)功能上來(lái)講emacs可以做編輯器以外的很多事情。比如很多軟件都可以使用emacs作為前端。?
(7)一般來(lái)說(shuō)vim只用作編輯器,或者是一個(gè)繁瑣的IDE。
@ vim與nano的區(qū)別。?
nano:?
直接在命令行中敲入nano newfile即可打開(kāi)文件或新建文件。?
vim:?
vim是老式的文字處理器vi的升級(jí)版,相對(duì)于較為簡(jiǎn)單的nano,其功能已經(jīng)很齊全。?
vim有常用 三種模式:命令模式、插入模式、底行模式。?
命令模式:以vim打開(kāi)或新建一個(gè)文件就可以直接進(jìn)入一般模式,在此模式中,你可以使用上下左右來(lái)進(jìn)行光標(biāo)的移動(dòng),可以刪除字符或整行,可以復(fù)制粘貼文件數(shù)據(jù)。
插入模式:顧名思義,就是可以編輯文本的模式,在一般模式下,按下“i,I,o,O,a,A,r,R”這些字母可進(jìn)入編輯模式,進(jìn)入編輯模式后在左下方會(huì)有INSERT或REPLACE的字樣。?
在編輯模式下按下ESC鍵會(huì)退出到一般模式下。
底行模式:在一般模式下,輸入” :, / , ? “這三個(gè)字符中的任意一個(gè)會(huì)將光標(biāo)移動(dòng)到當(dāng)前頁(yè)面最下面的一行,在這個(gè)模式中可以進(jìn)行數(shù)據(jù)查找、替換、保存、離開(kāi)vim等操作。?
————————————————————————————————
編譯器?
除了gcc, 還有哪些常用的牛逼的編譯器(不限制編程語(yǔ)言, 不限制平臺(tái)).?
EGCS(Experimental/Enhanced GNU Compiler System) 一個(gè)編譯系統(tǒng),包括了C/C++/Obj-C/Fortran等編譯器。?
————————————————————————————————?
注意:調(diào)試的時(shí)候需要編譯選項(xiàng)中添加 -g. 加選項(xiàng)-g是為了能夠調(diào)試。不加可以運(yùn)行,但不能調(diào)試
—————————————————————————————————— ——————————————————————————————————?
Linux下軟件安裝的幾種方式(源碼安裝, rpm安裝, yum安裝). 重點(diǎn)要理解rpm安裝和yum安裝的區(qū)別.?
(1)安裝包都是以rpm結(jié)尾的。?
(2)yum是從網(wǎng)絡(luò)安裝源(例如網(wǎng)易鏡像,可以自己配置)上下載rpm,如果存在依賴(lài)關(guān)系會(huì)把依賴(lài)的rpm同時(shí)下載安裝。?
(3)rpm是安裝本地存在的rpm包,如果存在依賴(lài)也需要安裝上,如果某個(gè)rpm是自己修改編譯的,那么只能用rpm安裝了
總結(jié)
以上是生活随笔為你收集整理的Linux的编辑器、编译器、配置文件、及其安装方法的理解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: LDT 的初步探索
- 下一篇: Ruby(了解第二天)