Emacs之魂(一) 開篇

2021-09-22 23:38:27 字數 1759 閱讀 7243

emacs之魂(一):開篇

emacs之魂(二):一分鐘學會人界用法

emacs之魂(三):列表,引用和求值策略

emacs之魂(四):識別符號,符號和變數

emacs之魂(五):變數的「指標」語義

emacs之魂(六):巨集與元程式設計

emacs之魂(七):變數捕獲與衛生巨集

emacs之魂(八):反引用與巢狀反引用

emacs之魂(九):讀取器巨集

程式設計師大部分的時間都是在和**打交道,因此,對於文字編輯器一定不會陌生了。

編輯器是處理文字的工具。

就像趁手的兵器對武林高手的輔助作用一樣,

強大的編輯器也會使編碼工作事半功倍,趣味十足。

可是,什麼樣的編輯器可以稱之為強大呢?

江湖中,流傳著關於兩大編輯器的傳說,

emacs是神的編輯器,而vim是編輯器之神
有關最強編輯器的爭論卻一直沒有結果,戰爭一觸即發,

熱愛emacs的人們說,emacs是神用的,而vim是人用的。

而熱愛vim的人們會說,vim畢竟是神,emacs只是個編輯器而已。

有些人可能會對文字編輯器不屑一顧,

因為目前有很多ide(整合開發環境:integrated development environment)可用,

ide大大簡化了程式設計師們的重複勞動,對**進行編譯除錯非常方便。

neal ford在《卓有成效的程式設計師》一書中提到,

最好尋找乙個完美的編輯器,而不是ide。雖然公司的制度或者某些程式語言通常會告訴你,在**編寫方面,使用ide是非常高效的方式,但我們仍然需要優質的文字編輯器來編輯純文字檔案。

以我個人的經驗來說,如果以後潛在會使用多種語言進行程式設計,

就應該挑選並掌握一款文字編輯器,把它帶在身邊。

ide安裝起來不太方便,並且和具體語言繫結的比較嚴重,

當僅僅使用特定某種語言進行程式設計時可以使用它。

以上兩款強大的編輯器emacsvim,學習任何一種都是可以的,僅憑個人喜好決定,

最好都試用一段時間,然後聽從自己的直覺。

其實,學習如何使用它們其實並不是最重要的事情,重要的是學習的過程中可以給我們帶來什麼。

本系列文章我們來**emacs,

之所以談論它,是因為emacs和lisp有不解之緣,或者說emacs有一顆lisp的心。

lisp是一族函式式的程式語言,有眾多方言,emacs使用了elisp(emacs lisp)。

很多文章都提到過emacs的快捷鍵以及配置方式,

本系列文章並不打算寫這些,而是通過emacs介紹elisp這門語言,

來讓我們一起欣賞「直譯器模式」在編輯器中的偉大實現吧。

我只是門前乙隻小菜鳥。

各位大神請多多提攜,有相關問題還望可以一起討論,共同提高。

如果您也有共同愛好,對lisp以及函式式程式設計想更加了解,**入我們吧。

寵辱不驚,閒看庭前花開花落;去留無意,漫隨天外雲卷雲舒。

CSS基礎(一) 開篇

背景 html是一種超文字標記語言,用來定義文件的結構和內容,例如標題 段落和列表等等,而文件內容如何渲染 如何展示,這就需要樣式來修飾了。css正是可以與html很好地結合。如果將html比作水,那麼css就是水杯,用怎樣形狀的水杯來裝水,水就顯示不一樣的形狀。什麼是css?css 指層疊樣式表 ...

C 底層機制(一) 開篇

很少有人質疑c語言生成 的高效和精悍,然而c 究竟能多麼接近c語言的水平呢?相信長期以來存在這樣的共識,核心演算法為了效率常常拋棄c 而使用c,他們認為c 龐大又遲緩,比如他們拒絕使用c 編寫資料庫引擎,他們說 繼承和過載降低效率,並且c 揹著你做很多事情 我相信通過之後的一系列文章,會幫助您破除圍...

linux驅動實踐 一 開篇

gnu arm彙編 系列寫了不少,收穫亦不小.依然還有很多可以繼續往下寫 一直想利用arm9的mmu寫個小的os 包含簡單裝置模型,任務排程和記憶體管理的os,網路和檔案系統就不要了.這個想法先放一下.另外對於uboot這樣乙個優秀的開源 也想做個深入的分析,但考慮到自己的bootloader也能引...