成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Emacs和Vim:神的編輯器和編輯器之神

系統 Linux
在這個蔚藍色的星球上,流傳著兩大神器的傳說:據說Emacs是神的編輯器,而Vim是編輯器之神。一些人勇敢地拾起了Vim或Emacs,卻發現學習曲線陡峭而漫長,還是有一些人留下來了,堅定地守護著這兩大神器。一些說葡萄太酸的人想離開又不甘心,總是問:它們到底神在哪里啊?

  0. 序章:神器的傳說

  在這個蔚藍色的星球上,流傳著兩大神器的傳說:據說Emacs是神的編輯器,而Vim是編輯器之神。

  追求獨步天下的高手和低手們爭著一睹它們的風采,可看到它們樸素單薄的界面后,不禁心下懷疑:這就是神器嗎?甚至有人生了輕視之心。

  膚淺的人嗤之以鼻,說:什么年代了,還抱著這么老土的玩意不放,真他媽Geek!同學,請冷靜下來,聽我說:它們的確夠老了,都幾十年的壽命了,但你想想為什么,為什么這么古老的編輯器,卻有越來越多的人皈依它們。

  Windows下用UltraEdit和Editplus的人質問:它們到底比UltraEdit和Editplus好在哪里?我說:不可同日而語。

  連UltraEdit和EditPlus都沒用過的同學問:它們就相當于Linux上的 Notepad吧?我說:請你從我的眼前消失。

  一些人勇敢地拾起了Vim或Emacs,卻發現學習曲線陡峭而漫長,于是在沒發現它們的強大之前就放棄了,說:太難用了,把鍵盤當鼠標用的爛玩意,有什么好的?

  還是有一些人留下來了,堅定地守護著這兩大神器。一些說葡萄太酸的人想離開又不甘心,總是問:它們到底神在哪里啊?我不禁想起了李宗盛的幾句歌詞::

  有人問我你究竟是哪里好,

  這么多年我還忘不掉?

  春風再美也比不上你的笑,

  沒見過你的人不會明了。

  也許你不會明了,我還是要努力講一講。

主流編輯器學習曲線圖 

主流編輯器學習曲線圖

  1. 無敵的可擴展性

  1.1 可擴展性給了軟件強大的生命

  曾幾何時,Windows用戶對軟件的可擴展性沒有概念,他們只能對他們使用的軟件進行非常有限的定制。擴展軟件的權利保留在軟件開發者手中。軟件的使用者如果想要新的功能和特性,只能等待軟件的升級。有能力的用戶等不及了,為了添加自己想要的功能,從0開始寫了一款新的軟件。就這樣,新的功能意味著新的軟件,Windows下的軟件前赴后繼,迅速地更新換代著。因此, Windows下的軟件都很短命。

  Linux和開源軟件漸漸流行起來,人們才發現:可擴展性才能給軟件強大的生命。在MS的VS橫行的今天,Eclipse為什么被評為最好的IDE?就是因為它在IDE中最具可擴展性。在IE幾乎一統天下的時候,為什么Firefox能奪走越來越多的用戶,也是因為它的可擴展性。提供了良好的擴展接口,用戶自然會寫出各種各樣的插件,來滿足用戶自己形形色色的要求。這樣,軟件在用戶的推動下自然變得強大了。

  Emacs和Vim沒有被時代淘汰,反而越發強大,也正是因為在數不清的編輯器中,他們具有無可匹敵的可擴展性。

  1.2 Emacs是偽裝成編輯器的操作系統

  有句夸張的話說:Emacs是偽裝成編輯器的操作系統。細細想來,這句話并不夸張。

  Emacs其實是個Lisp的解釋器,因此可以用Lisp靈活地擴展。 Lisp是什么東西,這同樣是種很有生命力的編程語言。在C語言還沒有發明的年代,MIT的人工智能實驗室寫ITS操作系統時,一部分用的是匯編語言,還有一部分就是用的Lisp。現在,Lisp仍在人工智能研究領域廣泛使用著。

  有這么牛逼的擴展語言,注定Emacs向著無所不能的方向發展。漸漸地,人們用Emacs不再限于寫程序,寫文檔,而且在Emacs里管理文件系統,運行終端,收郵件,上網,聽音樂……,真是一發不可收拾。甚至,有人用Emacs控制咖啡機煮咖啡。

  這種大而全的擴展,背離了“一個程序只做一件事并做好它”的 Unix哲學,被Unix的忠誠用戶所詬病。可是真的背離了嗎? Emacs說過自己是一個編輯器嗎?

  正是因為Emacs的無敵的可擴展性,人們才分不清Emacs到底是不是一個編輯器了。但,就是有人喜歡這種All-in-One的哲學,喜歡在Emacs中完成每件事。所以才會有人寫《生活在Emacs中》,所以, Emacs才會成為一種信仰。

  1.3 Vim不只是Vi

  Vim是Vi最受歡迎的變種之一,除了繼承了Vi迅捷的編輯方式, Vim的功能已經比原始的Vi強大得多。這也得益于它可以用Vim腳本無限地擴展。 Vim.org 上已經有數千個腳本了,給Vim增加各種各樣的特性和功能。

  為了證明Vim的可擴展性不輸于Emacs,也有用戶寫了在Vim中玩游戲、運行Shell、和集成GDB在Vim內部調試的插件。客觀地講,Vim的腳本語言與Emacs的ELisp相比,略顯遜色,但這絲毫不妨礙它把Vim擴展成非常優秀的編輯器。

  說到底,Vim的前身Vi和Emacs的設計采用了不同的哲學, Vi更符合Unix傳統,它通過管道機制和系統內各種積木工具打交道,它講究的是和系統內的工具程序協作來完成用戶的任務。和Emacs相比,它的定位很明確,就是要做一個強大的編輯器。因此Vim的絕大部分擴展,都是為了更好地完成編輯文本的任務。

  海納百川,有容乃大。Emacs和Vim通過別的編輯器無法比肩的可擴展性,不斷吸收廣大用戶的智慧,是它們能成為“神器”的原因之一。

  2. 特立獨行的魅力

  2.1 可擴展性讓你傾注了靈魂

  一旦你意識到Vim或Emacs的強大,你就踏上了不停發掘它們潛力的漫漫長路。你不停地改進自己的配置文件,你不停地搜索更好的插件,甚至有一天你開始動手寫自己的插件。就像劍客保養自己的劍一樣,你也甘心花時間提升你的Vim或Emacs。經年累月,不知不覺,你已經在那把劍上傾注了你的靈魂。

  2.2 獨特的操作方式讓你中了毒

  Emacs和Vim有著迥異的操作方式,卻成了Unix/Linux世界中兩種代表性的操作方式,有些軟件的操作方式類似Vi,而有些軟件的方式類似Emacs,甚至有些軟件提供了Vi的鍵綁定和Emacs的鍵綁定讓你選擇。而無論哪種操作方式,對Windows用戶來說都是古怪的。雖說古怪,多少代人也驗證了這兩種操作方式的高效。

  Emacs號稱Ctrl到死的編輯器。其實它幾乎用了所有的輔助鍵,聽說過沒有,Emacs = Esc + Meta + Alt + Ctrl + Shift。所以高德納大師說操作Emacs,就像彈奏管風琴。 Emacs使用非常多的組合按鍵,這大概也是它高效于其它無模式編輯器的原因之一。你也可以定義自己的組合鍵序列,調用自己寫的lisp函數,完成自己想要的功能。

  Vi一向是以快速的文本編輯聞名于世的。它的按鍵更簡潔,通常是單個字符按鍵,就實現某種操作。但這是以有模式為代價的。你要不停地按Esc在從它的插入模式返回Normal模式。客觀得講,在文本編輯方面, Vim比Emacs高效,因為它提供了一些Emacs沒有對應功能的操作來輔助高效的文本編輯。但它的模式切換也讓一些人受不了,于是那些人選擇了 Emacs。

  不管你選擇了Vim還是Emacs,你都要為習慣它們獨特的操作方式而努力,這是一個技藝積累的過程。當你習慣了Vim或Emacs,你會有欲罷不能的感覺,你希望用它們完成盡可能多的任務,因為你再用別的編輯器也已經不習慣。

  用Vim或Emacs就像吸食毒品,慢慢地就會上癮。它們會帶給你漸漸強烈的快感,但你也向它們獻出了自己的靈魂。這時,你只能稱它們為神器。

  3. 黑客的編輯器

  Vim的前身Vi的作者Bill Joy和Emacs的作者Richard Stallman 都是那個時代著名的黑客,所以這兩款編輯器一開始面向的主要用戶就是寫程序的人,現在仍然是。它們對編程加入了越來越多的支持,如語法高亮、智能縮進、關鍵字補全甚至集成調試。也有越來越多的程序員從IDE轉向了Vim和Emacs。

  用Vim和Emacs編程到底有什么好處?我想首先是它們高效的編輯操作會提高你的編程效率。其次你可以用它們完成各種語言的編程,所謂一劍在手,夫復何求。你不用再因為編程語言不同去學習不同的IDE的使用,那些龐大的IDE的升級換代也與你再不相關,你把精力用于學習編程語言本身就好了。聽說Google和微軟內部開發也都不用IDE的,他們也會用Emacs或Vim。

  因為我寫的程序不多,還不能深入體會用Vim或Emacs開發程序的樂趣。我只是覺得這很酷,你看,Linux之父Linus多年來用的是一款 MicroEmacs,它比GNU Emacs或XEmacs少許多功能,但Linus就是用它在維護Linux。 微軟的大牛Don Box,Com之父,一直用Emacs,他說誰也不能奪走他的編輯器。他還在網上放了一段他用Emacs寫C#程序的視頻。

  編程大師們的選擇,也是Emacs和Vim被追捧為神器的原因之一。

  4. 神器引發的圣戰

  Vim用戶和Emacs用戶有著旗鼓相當的品位,應該互相欣賞才對。現實卻是,忠誠于Vim的用戶和忠誠于Emacs的用戶互不相容,常常沒完沒了地打口水仗。Emacs用戶說Vim的操作方式單一而古怪, Vim用戶說Emacs體積龐大,啟動緩慢。

  很有點一山不容二虎的意思,大概因為二者都處于神器的高度,才會斗爭不斷吧。也可能是因為二者截然不同的設計哲學吸引的用戶在價值觀上也互不認同。

  正因為兩者難分高下,新人總是在Vim和Emacs之間猶豫不定,很難決定到底要皈依哪一個神。

 

     【編輯推薦】

  1. Linux系統下的C語言開發都需要學些什么
  2. Linux開發工具和Windows開發工具對比
  3. 8月第3周系統升級錄:你了解Vim嗎?
責任編輯:黃丹 來源: 百度博客
相關推薦

2021-08-16 11:05:31

LinuxvimIO

2018-01-29 14:37:52

Linux文本編輯器Geany

2018-09-25 09:25:11

Vim編輯器命令

2020-10-14 14:00:39

VIM編輯器

2017-03-09 11:45:16

LinuxVim編輯器

2013-06-18 01:22:46

CocoStudio工Cocos2d-x

2018-05-11 14:59:21

LinuxVim編輯器

2018-01-25 18:30:05

編輯器ViVim

2018-02-09 09:58:41

Linux編輯器Vi

2022-06-16 10:14:51

LinuxEmacs編輯器

2010-03-24 09:20:07

CentOS vi編輯

2023-02-06 16:59:57

Canvas編輯器

2019-06-14 09:12:46

漏洞代碼攻擊

2011-03-22 13:54:57

UbuntuPHP編輯器

2022-06-12 16:05:22

vimLinux

2025-04-16 08:45:00

編輯器vim運維運維

2020-03-30 15:25:14

Vim編輯器Linux

2023-02-01 10:41:19

Nano編輯器

2025-02-05 12:01:35

屬性編輯器Web

2009-07-29 17:49:05

ibmdwVim
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 五月综合色啪 | 国产欧美精品 | 天天操夜夜操 | 久久国产一区二区三区 | 久久国产精品视频 | 一区二区免费看 | 亚洲国产精品一区二区第一页 | 国产精品久久久久久久午夜 | 国产精品久久久久久久久久久久午夜片 | 日韩福利片| 一区二区久久精品 | 久久久综合色 | 日本欧美在线视频 | 亚洲成av人片在线观看 | 久久小视频 | 日本色婷婷 | 自拍第1页 | 国产精品日韩欧美一区二区三区 | 国产在线精品一区二区三区 | 国产视频一区二区三区四区五区 | 暖暖成人免费视频 | 国产精品一区二区三区久久 | av网站在线看 | 日韩毛片网| 日韩在线视频观看 | 美国十次成人欧美色导视频 | 日韩精品在线播放 | 欧美一区2区三区3区公司 | 黄色网址在线免费播放 | 麻豆changesxxx国产 | 91精品国产91久久久久久丝袜 | 中文字幕在线看人 | 啪一啪| 国产高清在线观看 | 精品不卡| 91精品国产色综合久久 | 成人影院一区二区三区 | 亚洲国产精品第一区二区 | 男人av网| 亚洲国产精品成人无久久精品 | 综合久久亚洲 |