GNU Emacs 是 Emacs, 的版本之一,是由 Emacs, 的原始版本(PDP-10)的作者
Richard Stallman所編寫的。
GNU Emacs的主要文檔在GNU Emacs手冊中,你可以用Info(Emacs的一個子系統)
以行方式去讀。請在那裡查看完全的和最新的文檔。本幫助頁的更新依賴於志
願人員;Emacs 的維護人員的首要目標是使使用能本幫助頁面盡可能少地占用
其它更有用的項目的時間。
GNU Emacs 包含了其它 Emacs 編輯器所擁有的全部功能。由於它的編輯命令
是用Lisp寫的,因此很容易擴展。
Emacs 有一個擴展的交互幫助工具,但該工具假設你能熟練地使用 Emacs 窗
口和緩沖區。CTRL-h (退格或CTRL-h) 可以進入該幫助工具。 Help Tutorial
(幫助指南,CTRL-h t) 調用一個交互式的指南以幫助初學者在很短的時間內
了解 Emacs 的基本知識。Help Apropos (CTRL-h a) 幫助你找到一個命令並
給出其功能說明,Help Character (字符幫助,CTRL-h c) 描述一個給定的字
符的作用,Help Function (函數幫助,CTRL-h f) 描述一個指定名稱的Lisp
函數。
Emacs 的Undo(恢復功能)可以取消最近幾步對緩沖區所做的修改,因此很容易
從編輯錯誤中恢復
GNU Emacs 的許多特殊的包可以處理郵件讀取(RMail)和郵件發送
(Mail),大綱編輯 (Outline),編譯(Compile), 在 Emacs 窗口中運行shell
(Shell),運行Lisp 的read-eval-print 循環(Lisp-Interaction-Mode), 以及
自動修正(Doctor)。
還有一個擴充的參考手冊,但是其它版本的 Emacs 用戶即使沒有它,要適應
GNU Emacs也不會有什麼困難。而Emacs的新用戶通過學習指南和使用自身文檔
特性,很快就能夠使用GNU Emacs的基本功能。
Emacs選項
以下的選項是很常用的:
file
編輯 文件。
+number
轉到由 number 指定的行(在"+"和數字當中不要加入空格)。
-q
不載入初始文件。
-u user
載入 user 的初始文件。
-t file
使用指定的 file 文件作為終端來代替stdin/stdout。該項必須作為命令行的
第一個參數來說明。
以下的選項是面向lisp的 (這些選項按照給定的順序處理):
-f function
執行lisp函數 function 。
-l file
裝入文件 file 中的Lisp代碼。
Emacs 作為批處理編輯器來運行時,以下選項是有用的:
-batch
批處理模式編輯。 編輯器將把消息送至stderr(注1)。這個選項必須位於參
數列表的第一位。必須用-l和-f選項來指明要執行的文件和要調用的函數。-
kill
在批處理模式下退出Emacs Emacs 。
在X Window下使用Emacs
Emacs 已經被設計得能在X Window系統下很好地工作。如果在X Window下運行
Emacs ,將創建其自己的X Window來顯示。這是因為你也許會將Emacs編輯器
作為後台進程來啟動,並能夠繼續使用原來的窗口。
Emacs 在啟動時能帶以下X命令開關:
-name name
指定初始的 Emacs 窗口的名字。這使得能象窗口標題一樣查詢X資源。-title
name
指定起始X窗口的標題。
-r
反白顯示 Emacs 窗口。
-i
當 Emacs 窗口圖標化時,使用"廚房水槽"位圖圖標。
-font font, -fn font
將 Emacs 窗口字體設置為指定的字體 font 。在 /usr/lib/X11/fonts 路徑
下可以找到不同的 X 字體。注意: Emacs 只接受固定寬度的字體。在X11第
四版字體命名協議下,若字體名的第11個域的值是"m"或"c",則該字體是固定
寬度的字體。此外,若字體名擁有 寬x高 的形式,它一般也是 固定 寬度字
體。關於更多信息,參見xlsfonts(1)。 在指定字體時,別忘了在開關和字
體名之間需要一個空格。
-b pixels
設置 Emacs 窗口邊框寬度為 pixels 指定的點數。缺省值是窗口每邊寬為1點。
-ib pixels
設置Emacs窗口內部邊框寬度為 pixels 指定的點數。缺省值是窗口每邊填充
1點。
-geometry geometry
按照給定的值設置 Emacs Emacs窗口的寬,高及位置。幾何參數的指定應符合
標准X格式,關於更多信息,參見 X(1) 。寬和高用字符來指定,缺省值是
80 x 24。
-fg color
在彩色顯示下,設置文本的顏色。有效的顏色名列表見 /usr/lib/X11/rgb.txt 。
-bg color
在彩色顯示下,設置窗口背景的顏色。
-bd color
在彩色顯示下,設置窗口邊框的顏色。
-cr color
在彩色顯示下,設置窗口文本光標的顏色。
-ms color
在彩色顯示下,設置窗口鼠標光標的顏色。
-d displayname, -display displayname
在由 displayname. 指定的顯示器上創建 Emacs 窗口。必須是在命令行中指
定的第一個選項。
-nw
告訴 Emacs 不使用其到 X 的特定界面。如果在從 xterm(1) 窗口調用 Emacs
時,使用此開關,則在該窗口中打開顯示器。這必須是命令行中指定的第一個
選項。
您可以在 .Xresources 文件(請參閱 xrdb(1) )中為 Emacs 窗口設置 X 缺
省值。請使用下列格式:
emacs.keyWord:value
其中 value(值) 指定 keyword(關鍵字) 的缺省值。 Emacs 允許您為下
列關鍵字設置缺省值:
font (Font 類)
設置窗口的文本字體。
reverseVideo (ReverseVideo 類)
如果把 reverseVideo 的值設置為 ,則反白顯示窗口。
bitmapIcon ( BitmapIcon 類)
如果 bitmapIcon 的值設置為 ,則窗口將圖符化為凹入狀。
borderWidth (BorderWidth 類)
設置窗口的邊框寬度(以 pixel 為單位)。
internalBorder (BorderWidth 類)
設置窗口的內部邊框寬度(以 pixel 為單位)。
foreground (Foreground 類)
對於彩色顯示器,設置窗口的文本顏色。
background (Background 類)
對於彩色顯示器,設置窗口的背景顏色。
borderColor (BorderColor 類)
對於彩色顯示器,設置窗口的邊框顏色。
cursorColor (Foreground ?
對於彩色顯示器,設置窗口文本光標的顏色。
pointerColor (Foreground 類)
對於彩色顯示器,設置窗口鼠標光標的顏色。
geometry (Geometry 類)
設置 Emacs 窗口的幾何大小(如上所述)。
title (Title 類)
設置 Emacs 窗口的標題。
iconName (Title 類)
設置 Emacs 窗口圖符的圖符名稱。
如果你在使用黑白顯示器時試圖設置顏色值,則窗口的特征將缺省為:前景色
將設置為黑色,背景色將設置為白色,邊框顏色將設置為灰色,而文本和鼠標
光標將設置為黑色。
使用鼠標
下面列出在X11下 Emacs 窗口的鼠標按鈕的捆綁功能。
左鍵 定點。
中鍵 粘貼文本
右鍵 把文本剪貼到X的剪貼緩沖區
SHIFT-中鍵 把文本剪貼到X的剪貼緩沖區。
SHIFT-右鍵 粘貼文本
CTRL-中鍵 把文本剪貼到X的剪貼緩沖區並把它刪除
CTRL-右鍵 選擇窗口並分割它成兩個窗口,和輸入CTRL-X 2一樣
CTRL-SHIFT-左鍵 對X緩沖區菜單操作,掛起按鈕和鍵盤,等待菜單出現,選
擇緩沖區和釋放它。把鼠標移離菜單和釋放操作。
CTRL-SHIFT-中鍵 彈出X菜單幫助索引Emacs幫助。
CTRL-SHIFT-右鍵 用鼠標選擇窗口並刪除所有其他窗口,和輸入CTRL-X 1一樣。
手冊
你可以從開發GNU軟件的自由軟件基金會獲得GNU Emacs手冊的拷貝。要獲得信
息仔細查看文件ORDERS。
你本地的Emacs維護也有有效的拷貝。對於所有從FSF獲得的軟件和印刷品,每
個人都有權制造和發布Emacs手冊的副本。
手冊的TeX源文檔也被包含在Emacs源代碼發布中。
文件
/usr/local/info - 通過Info文檔浏覽器(Emacs的一個子系統)查閱的文件。
現在還沒有太多的Unix在以此為文檔,但Emacs參考手冊的完整文本以便利的
樹結構形式包含於其中。 /usr/local/share/emacs/$VERSION/src - C源文件
和目標文件。 /usr/local/share/emacs/$VERSION/lisp - 定義了大部分編輯
命令的Lisp源文件和編譯後的文件。 有些已經裝入了;其它的則在使用時自
動從本目錄中裝入。 /usr/local/share/emacs/$VERSION/etc - 與GNU Emacs
一同使用的各種程序,還有一些文件的信息。
/usr/local/share/emacs/$VERSION/etc/DOC.* - 包含了Lisp原語和GNU Emacs
的預裝入Lisp函數的文檔字符串。 它們被儲存在這裡以減小Emacs的體積。/
usr/local/share/emacs/$VERSION/etc/OTHER.EMACSES 討論GNU Emacs與其它
版本的Emacs之間的不同。
/usr/local/share/emacs/$VERSION/etc/SERVICE 列舉為幫助GNU Emacs的用
戶提供各種服務的人們,包括教學、疑難解答、移植和定制。
這些文件還含有對那些希望用Emacs Lisp擴展語言編寫程序的人有用的信息,
該語言含沒有完整的文檔。 /usr/local/com/emacs/lock - 為使用Emacs修改
的所有文件保存鎖文件,以防止由兩個用戶在同時對一個文件進行修改。/usr
/lib/X11/rgb.txt - 合法的X顏色名的列表。
臭蟲
此處有一個郵件列表,因特網上的
[email protected],用於報告
Emacs的臭蟲和修補。但在報告作為一個臭蟲的某件事之前,請盡量肯定它真
是一個臭蟲,而不是一個誤會或一個故意的特性。我們要求你閱讀在此參考手
冊末尾附近的"Reporting
Emacs Bugs"(報告 Emacs 臭蟲)章節(或Info系統),用於提示如何和什麼
時候報告臭蟲。 還有,在每個你發送的臭蟲報告中包含你所運行的Emacs的版
本號。 不要期望對一個錯誤報告給出個人的答案。報告錯誤的目的是為了大
家在下一個版本中可以修復它。 對個人來說,我們可以去參考服務文件(見
上)的一個列表。 除非是向這個郵件列表報告臭蟲,請不要發任何東西到這
裡來。你可以將申請加入郵件列表的請求寄到
[email protected](或者相應的UUDP地址)中去。關
於Emacs(UNIX編輯程序宏指令)郵件列表的詳情,請閱讀文件
/usr/local/emacs/etc/MAILINGLISTS。 如果錯誤是孤立的,往往是可以修復
的。因此如果你對報道那些錯誤感興趣的話,你可以很容易將它復制出來。我
所知道的一些錯誤是:在一些UNIX版本中,SHELL不能很好的和應用程序一起
工作。
非限制的
Emacs 是免費的; 任何人都可以按照與每個 Emacs 的副本在一起的 EmacsGeneral
Public License中陳述的條款把 Emacs 的副本分發給任何人,該許可證的也
出現在參考手冊中。
Emacs 的副本有時與UNIX系統在一起打包進行分發,但是它永遠不會包含在任
何覆蓋這些操作系統的許可證的范圍之內。象這樣違反了條款的包含物是被允
許的,事實上,General Public License的主要目的是讓那些分發 Emacs. 的
人可以免受更多的干擾。
Richard Stallman鼓勵你改善和擴展Emacs,鼓勵你把你對GNU庫的擴展貢獻給
GNU庫。最後GNU(Gnus Not Unix)將成為伯克利UNIX最好的替代品。每個人都
可以自由的使用,拷貝,研究和更改GNU的系統。
參見
X(1), xlsfonts(1), xterm(1), xrdb(1)
作者
Emacs 是由Richard Stallman和自由軟件基金會合作完成的。 Joachim Martillo
和Robert Krawitz為系統加入了X界面。
許的,事實上,General Public License的主要目的是讓那些分發 Emacs. 的
人可以免受更多的干擾。
Richard Stallman鼓勵你改善和擴展Emacs,鼓勵你把你對GNU庫的擴展貢獻給
GNU庫。最後GNU(Gnus Not Unix)將成為伯克利UNIX最好的替代品。每個人都
可以自由的使用,拷貝,研究和更改GNU的系統。
參見
X(1), xlsfonts(1), xterm(1), xrdb(1)
作者
Emacs 是由Richard Stallman和自由軟件基金會合作完成的。 Joachim Martillo
和Robert Krawitz為系統加入了X界面。