EMACS(1)

NAME
emacs - GNU Emacs

總覽 (SYNOPSIS)
emacs [ command-line switches ] [ files ... ]

描述 (DESCRIPTION)
GNU Emacs 是 Emacs 的 一個 版本, 是由 最早的 (PDP-10) Emacs 的 作者 Richard Stallman 寫的.
GNU Emacs 的 主要 文檔 都 在 GNU Emacs 手冊 裏, 可以 通過 Info (Emacs 的 一個 子系統) 在線 瀏覽. 請 在那兒 尋找 完整的 最新的 文檔. 自願者們 不定時 的 更新 這個 文檔; 而 Emacs 的 維護者們 就可以 抽出 更多的 時間 來 用在 其它 更有用的 項目上.
對 用戶 來講, 其它 Emacs 提供的 功能 GNU Emacs 都有, 而且 因爲 它的 命令 是 用 Lisp 寫的, 所以 擴展性 很好.

Emacs 擁有 一個 可擴展的 交互式的 幫助 功能, 但 這 要求 你 知道 怎麼 操縱 Emacs 窗口 和 緩衝區. CTRL-h (backspace 或者 CTRL-h) 進入 幫助 系統. 幫助 教程 (CTRL-h t) 是 一個 交互式的 教程, 可以 在 很短 的 時間內 教會 初學者 Emacs 的 基本 操作. 幫助 Apropos (CTRL-h a) 幫助 你 根據 其 功能 找到 命令, 幫助 字符 (CTRL-h c) 描述 一個 指定 的 字符 的 作用, 幫助 功能 (CTRL-h f) 描述 一個 由 名稱 指定 的 Lisp 函數.

Emacs 的 能夠 撤銷 你的 緩衝區 的 很多 層 修改, 所以 它 很 容易 從 編輯 錯誤 中 恢復.

GNU Emacs 的 很多 專門 的 包 能夠 收發 郵件 (RMail/Mail), 大綱 編輯 (Outline), 編譯 (Compile), 在 Emacs 窗口 中 運行 子 shell (Shell), 執行 Lisp 讀-估值-顯示 (read-eval-print) 循環 (Lisp-Interaction-Mode), 以及 自動 心理 療法 (Doctor).

這有 一個 可擴展 的 參考 手冊, 但是 就算 其它 Emacs 的 用戶 沒有 這個 手冊, 也能 很快 適應 的. 剛 開始 使用 Emacs 的 用戶 也 能夠 通過 它的 自包含 的 文檔 功能 學習 教程, 很快 就能 使用 其 基本 的 特性.

Emacs Options

以下 是 常用 的 選項:

file
    編輯 file.

+number
    跳到 number 指定 的 行 (不要 在 "+" 和 number 間 加個 空格).

-q  不 裝載 初始化 文件.

-u user
    裝載 user 的 初始化 文件.

-t file
    把 指定 的 file 作爲 終端, 而 不是 stdin/stdout. 這 必須 是 命令行 的 第一個 參數.

下面 的 選項 是 面向 lisp 的(這些 選項 根據 先後 順序 處理):

-f function
    執行 lisp 函數 function.

-l file
    裝載 文件 file 裏面 的 lisp 代碼.

下面 的 選項 在 把 Emacs 作爲 批處理 編輯器 時 很有用:

-batch
    當 批處理 模式 編輯. 編輯器 會 把 消息 發送 至 stderr. 這個 選項 必須 是 參數 列表 中 的 第一個. 你 必須 用 -l 和 -f 來 指定 執行 的 文件 和 調用 的 函數.

-kill
    在 批處理 模式 時 退出 Emacs.

在 X 下 用 Emacs

Emacs 已經 被 修改 爲 在 X 窗口 系統 下 能 很好的 運行. 如果 你在 X 下 運行 Emacs, 它會 創建 它 自己 的 窗口 來 顯示. 也許 你想 把 編輯器 作爲 後臺 進程 運行, 這樣 你 仍然 可以 用 你原來 的 窗口.

啓動 Emacs 可以 用 下面 的 X 選項:

-name name
    指定 初始 Emacs 窗口 的 名字. 這個 選項 不僅 控制 窗口 標題 也 控制 X 資源 的 查找.

-title name
    指定 初始 X 窗口 的 標題.

-r  用 翻轉 影像(reverse video) 顯示 Emacs 窗口.

-i  當 圖標化 Emacs 窗口 時 用 "kitchen sink" 位圖 圖標.

-font font, -fn font
    把 Emacs 窗口 的 字體 設置 成 font 指定 的 字體. 你會在 /usr/lib/X11/fonts 目錄 下 找到 許多 X 字體. 注意 Emacs 只 接受 固定 寬度 字體. 根據 X11R4 字體 命名 規定, 所有 字體名 第 7 字段 是 "m" 或者 "c" 的 字體 都是 固定 寬度 字體. 還有, 字體名 是 widthxheight 形式 的 字體 一般 也是 固定 寬度的, 就像 fixed 字體 一樣. 更多 的 信息 參見 xlsfonts(1). 在 指定 字體 的 時候 請注意 在 選項 和 字體名 中間 加 一個 空格.

-b pixels
    Set the 把 Emacs 窗口 邊框 寬度 設置 成 pixels 指定 的 像素. 默認的 是 窗口 每邊 都是 一個 像素.

-ib pixels
    把 窗口 內邊框 寬度 設置 成 pixels 指定 的 像素. 默認的 是 窗口 每邊 都 填充 一個 像素.

-geometry geometry
    設置 Emacs 窗口 的 寬度, 高度, 以及 位置, 其 格式 是 標準 的 X 格式; 具體 參見 X(1). 寬度 和 高度 是 用 字符 指定的; 默認 的 是 80 乘以 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 並且 加上了 這個 選項, 會在 這個 窗口 中 顯示, 而 不是 新建 一個 X 窗口. 它 必須 是 命令行 的 第一個 參數.

你 可以 在 你的 .Xresources 文件 裏面 爲 你的 Emacs 窗口 設置 其 X 的 默認 值(見 xrdb(1)). 用 如下 的 格式:

    emacs.keyword:value

value 指定 了 keyword 的 默認值. Emacs 允許 你 設置 如下 關鍵字 的 默認值:

font (class Font)
    設置 窗口 文本 字體.

reverseVideo (class ReverseVideo)
    如果 reverseVideo 的值 是 on, 窗口 就會 以 翻轉 影像 顯示.

bitmapIcon (class BitmapIcon)
    如果 bitmapIcon's 的值 是 on, 窗口 就會 圖標化 爲 "kitchen sink."

borderWidth (class BorderWidth)
    以 像素 爲 單位 設置 窗口 的 邊框 寬度.

internalBorder (class BorderWidth)
    以 像素 爲 單位 設置 窗口 的 內邊框 寬度.

foreground (class Foreground)
    只對 彩色 顯示器 有用, 設置 窗口 的 文本 顏色.

background (class Background)
    只對 彩色 顯示器 有用, 設置 窗口 的 背景 顏色.

borderColor (class BorderColor)
    只對 彩色 顯示器 有用, 設置 窗口 的 邊框 顏色.

cursorColor (class Foreground)
    只對 彩色 顯示器 有用, 設置 窗口 的 文本 光標 的 顏色.

pointerColor (class Foreground)
    只對 彩色 顯示器 有用, 設置 窗口 的 鼠標 光標 的 顏色.

geometry (class Geometry)
    設置 Emacs 窗口 的 寬度, 高度, 以及 位置 (同 上面 描述 的 一樣).

title (class Title)
    設置 Emacs 窗口 的 標題.

iconName (class Title)
    設置 Emacs 窗口 圖標 的 圖標名.

如果 你 用的 是 黑白 顯示器, 窗口 特性 將會是 下面的 默認值: 前景 顏色 爲 黑色, 背景 顏色 爲 白色, 邊框 顏色 爲 灰色, 文本 和 鼠標 光標 顏色 爲 黑色.

Using the Mouse

以下 是 X11 下 Emacs 的 鼠標鍵 綁定.
鼠標鍵    作用
左鍵    設置點.
中鍵    粘貼 文本.
右鍵    把 文本 剪切 到 X 剪切 緩衝區.
SHIFT-中鍵    把 文本 剪切 到 X 剪切 緩衝區.
SHIFT-右鍵    粘貼 文本.
CTRL-中鍵    把 文本 剪切 到 X 剪切 緩衝區 並且 刪除.
CTRL-右鍵    選擇 窗口, 然後 分拆 成 2 個 窗口. 同 鍵入 CTRL-x 2 一樣.
CTRL-SHIFT-左鍵    X buffer 菜單 -- 保持 按住 按鍵, 等 菜單 顯示 出來, 選擇 緩衝區,
釋放 按鍵. 要 取消, 把 鼠標 移出 菜單 然後 釋放 按鍵.
CTRL-SHIFT-中鍵    X help 菜單 -- 彈處 Emacs 幫助 的 索引 菜單.
CTRL-SHIFT-右鍵    用 鼠標 選擇 窗口, 關閉 其它 所有 窗口. 同 鍵入 CTRL-x 1 一樣.

手冊頁 (MANUALS)
你 可以 向 自由 軟件 基金會(GNU 軟件 的 開發者) 定購 GNU Emacs 手冊頁 的 印刷 拷貝. 定購 信息 參見 ORDERS 文件.
你的 本地的 Emacs 維護者 可能 有 拷貝. 象 所有 FSF 的 軟件 和 印刷品 一樣 , 所有的 人 都被 准許 製作 或 分發 Emacs 手冊頁, 同時 Emacs 源文件包 裏面 也 包含 手冊頁 的 Tex 源文件.

文件 (FILES)
/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.* - 包含 GNU Emacs 的 Lisp primitive 和 預先 裝載 的 Lisp 函數 的 文檔 描述 字符串. 這樣 可以 減小 Emacs 本身 的 大小. /usr/local/share/emacs/$VERSION/etc/OTHER.EMACSES 討論 GNU Emacs vs. 其它 版本 的 Emacs.
/usr/local/share/emacs/$VERSION/etc/SERVICE 向 GNU Emacs 用戶 提供 各種 服務 的人 的 列表, 包括 教育, 疑難 排解, 移植 和 定製 等.
這些 文件 包含 一些 對 那些 想用 Emacs Lisp 擴展 語言(現在 還 沒有 這個 語言 的 完整 的 文檔) 寫 程序 的人 有用 的 信息. /usr/local/com/emacs/lock - 爲 Emacs 正在 編輯 的 所有 的 文件 的 上鎖 文件 都在 這裏, 這些 文件 可以 防止 兩個 用戶 同時 編輯 同一個 文件. /usr/lib/X11/rgb.txt - 合法 X 顏色 名稱 的 列表.

錯誤 (BUGS)
在 英特網 上 有一個 郵件 列表 bug-gnu-emacs@prep.ai.mit.edu (在 UUCPnet 上 是 ucbvax!prep.ai.mit.edu!bug-gnu-emacs), 可以 通過 這個 郵件 列表 報告 Emacs 的 錯誤 和 補丁. 但是 在 報告 一個 錯誤 之前 請 確認 它 的確 是個 錯誤, 不要 把 一個 一些 特性 誤認爲 是 錯誤. 我們 建議 你 讀讀 手冊頁(或者 Info 系統) 末尾 的 ``報告 Emacs 錯誤'' 一節, 那裏 有 如何 以及 什麼 時候 報告 錯誤 的 一些 描述. 還有 不要 忘了 在 所有 錯誤 報告 裏 包含 你 運行 的 Emacs 的 版本號. 請 不要 指望 就 錯誤 報告 獲得 個人 回答. 報告 錯誤 的 目的 是 在 下一個 發行版 中 清除 錯誤, 如果 可能. 如果 要 尋求 個人 幫助, 在 SERVICE 文件 (見上) 裏 有 提供 服務 的人 的 名單. 請 不要 發送 任何 與 錯誤 報告 無關 的 東西 到 這個 郵件 列表 中. 請把 加入 郵件 列表 的 請求 發送 到 info-gnu-emacs-request@prep.ai.mit.edu (或者 相 對應 的 UUCP 地址 裏). 在 /usr/local/emacs/etc/MAILINGLISTS 文件 裏 有 更多 關於 郵件 列表 的 信息. 如果 我們 能 找到 導致 錯誤 的 代碼, 那麼 錯誤 多半 都能 被 清除, 所以 你 應該 儘量 詳細 的 報告 錯誤, 使得 我們 能夠 使 錯誤 重新 發生.

我 知道 的 錯誤 有: 在 一些 版本 的 Unix 中, shell 不能 正常 運行 一些 在 原始 模式 (Raw mode) 下 運行 的 程序.

無限制 (UNRESTRICTIONS)

Emacs 是 自由 軟件; 每個人 都可以 在 Emacs 通用 公共 許可證 中 申明 的 條款 下 把 Emacs 發佈 給 每個人, 每個 Emacs 中 都 附帶 有 此 條款, 在 手冊頁 中 也 包含 有 此 條款.

Emacs 的 拷貝 可能 被 打包 包含 在 一些 Unix 系統 中, 但是 它 並不在 那些 系統 所用 的 許可證 的 保護 下. 這種 行爲 違背 了 允許 分發 的 條款. 事實上, 通用 公共 許可證 的 主要 目的 就是 禁止 任何人 在 Emacs 的 發佈 上 加入 其它 任何 的 限制。

Richard Stallman 倡導 大家 來 改進 擴展 Emacs, 並且 鼓勵 大家 爲 GNU 庫 的 擴展 做出 貢獻. 事實上 GNU (Gnu's Not Unix) 將會 成爲 Berkeley Unix 的 代替品. 每個人 都可以 自由 的 使用, 拷貝, 學習 以及 改變 GNU 系統.

參見 (SEE ALSO)
X(1), xlsfonts(1), xterm(1), xrdb(1)

作者 (AUTHORS)

Emacs 是 Richard Stallman 和自由軟件基金會寫的。 Joachim Martillo 和 Robert Krawitz 加入了 X 特性。

[中文版維護人]
唐友 <tony_ty@263.net>

[中文版最新更新]
2001/9/20

《中國Linux論壇man手冊頁翻譯計劃》
http://cmpp.linuxforum.net

跋
本頁面中文版由中文 man 手冊頁計劃提供。
中文 man 手冊頁計劃：https://github.com/man-pages-zh/manpages-zh