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