iT邦幫忙

DAY 1
4

emacs的30天學習筆記系列 第 1

emacs 做中學第一天

emacs 的年紀至少有30歲以上(1975年 from wiki),像筆者40歲的年紀,帶著懷舊的心情,又帶著對史托曼先生的好奇及景仰(自由軟體基金會的創始者),開始使用emacs。
因為是技術鐵人組,所以每天的文章中,至少要有一段程式代碼,emacs包山包海包很大,以寫程式的方向來收歛我們的範圍。以免30天過去了,什麼也沒留下來。

emacs基本上是一個文字編輯器,可是它有一個終極目標,是在emacs裏可以完成所有事情。上圖是emacs裏的一個遊戲:俄羅斯方塊(國人知名的文書編輯器notepad++預設沒有裝俄羅斯方塊),因為個人見識短淺,可以玩遊戲的編輯器沒看過幾個。

http://www.gnu.org/software/emacs/emacs的官方網站。
下載最新版的軟體。有window版的,因為主要以gcc為程式語言,
就以ubuntu的linux desktop來做為開發環境,當然gcc也有移植到
window上,大家也可以用cygwin一類的做為開發環境,只是筆者不太熟悉
window上的gcc使用。所以沒法用來講解。

下載emacs-23.3a.tar.gz 的壓縮包,
下指令解壓縮。
進入目錄,~/emacs-23.3,
標準指令流程。
1。

./configure

2。
make

3。
sudo make install

隨著愈來愈多的軟體gnu化,這樣的指令流程,也適用於9成以上的軟體安裝,
在ubuntu上,更簡單的方式,是sudo apt-get install 軟體的名稱,
只是這種方式,軟體的版本有時候比較舊,還是以3段指令來安裝軟體比較方便。

emacs 因為有視窗介面。一開始,比較不會不知道從那裏下手,可用功能列上的
File/Visit New File ,輸入一個檔名,如
hi.c

#include <stdio.h>
main()
{
  printf("Hi ! \n");
}

基本上emacs 會用副檔名來判斷,本例是c 語言,所以你即使亂打,emacs會幫你排版。

然後,選功能表上的File/Save 存檔。基本上和notepad++沒什麼不同。

而你看到了 旁邊有一些小字 如C-x C-f, 意思是 ctrl + x 按下,再按
ctrl + f, 不用緊張,底下的訊息區,會秀出你已按過什麼鍵。C-x C-f是找檔案,當輸入檔名不存在,就變成開新檔,筆者覺得這種設計思維好像不太用於一般的編輯器,當你沒輸入檔名時,按enter,emacs又跑到當前目錄裏,你可以看上,下鍵,找到你要的檔案,按enter,就開檔。這時你已經看到emacs把檔案總管包進來。

同理C-x C-s是存檔的意思。

然後,你可以編譯程式,你按功能表的Tools/Compile , 這時底下會秀

make -k 

,我們沒有編Makefile檔,所以用Backspace的往左刪除鍵把指令刪掉,換成 gcc -o hi hi.c 按enter。這時會有編譯成功的訊息 。

然後,不用離開emacs,繼續鍵入ESC -x shell , 奇妙的事發生了,
emacs裏有一個shell 讓你下指令,你可以試一下剛才編譯好的程式

./hi 

, 然後秀出
Hi !

.

小結:筆者目前服務的公司,ERP是用 4gl 語言維護,因為server端在 linux上,
目前筆者的開發環境,直覺式的,用winscp把code 傳來本機,用jedit編輯(因為關鍵字有變色),用winscp傳回server,用putty連上server,下編譯指令(r.c2)連結指令(r.l2). 常常切換來切換去,時間就在無形中浪費了。而server端有裝vi,可是筆者對vi學習有障礙(可能是沒有俄羅斯方塊)。

一個ide(整合開發環境),至少要把這些零碎的動作整合起來。

筆者之前看很多參考資料,發現要和日常工作結合的emacs使用,才會可長可久,太多的技巧,沒用到,就忘了。

明天(2nd),我們繼續在實作中,了解gnu的開發習慣。


下一篇
emacs 做中學第二天
系列文
emacs的30天學習筆記38

尚未有邦友留言

立即登入留言