| |
| EMACS中文指南 |
|
| 来源:
ChinaUnix博客 日期:
2006.05.09 10:51 (共有条评论) 我要评论 |
| |
所以,进入 EMACS ,就等於是进入了一个编辑环境,这个
编辑环境提使用者许多功能,让使用者如置身在一个全功能的
作业系统中。 EMACS
自行发展了一个 ``bourne-shell-like'' 的 shell, 除了 EMACS
自己的 shell 外, EMACS 还可以让使用者自行选择
所使用的shell;EMACS 可以读送 e-mail。 EMACS 可以透过
ftp 来编辑远方 host 上的档案,而不需要签入(login)
档案所在的 host; EMACS 也可做 telnet
与 relogin 的动作。EMACS 也可以读
news; EMACS 也提供了年历(calendar),可以让使用者查阅日期,也
可以将重要的事情在年历上标示出来;EMACS 又提供了
``Diary'' 的功能,当特定的日期与时间到来时,会在萤幕上将
``Diary'' 上 的事情显示;EMACS 也有撰写文章大纲的功能。
EMACS 更提供
多种程式的编译功能,让使用者可以在 EMACS 中一边编辑程式
一边编译程式; EMACS 更有自己的
debugger,使程式的除错、 编辑与编译在 EMACS 中同时完成。
所以 EMACS 所提供的不只是一个编辑器而己,它所提供
的是一个整合的工作环境,而这个环境是建立在编辑的基石上。
它希望使用者进入了 EMACS 以後,可以在
EMACS 的环境中完成 所有的工作,不需要离开 EMACS,要离开
EMACS 就是要离开电脑的 时候(logout)。 EMACS 除了是一个整合的工作环境外,它还具有以下的特性:
- display
editor - real-time
editor - advanced
editor - Self-documenting
- Customizable
- Extensible
- support
X window enviornment
EMACS 是一个 display 编辑器,因为每一个被编辑的文字都会
被显示在萤幕上。
EMACS 是一个 real-time 的编辑器,因为当新的文字被键入时,
萤幕会在非常短的时间内被更新。
EMACS 的编辑功能不只具备一般编辑器所有的功能,它还提供
如下的功能:
- 文字的填充(filling of text)。
- 程式自动内缩功能。
- 可以同时阅读一个以上的档案。
- 对於字元(characters)、字(words)、列(lines)、句子 (sentences)、段落(paragraphs)、页(pages)以及各种
程式中的 expression
和注解(comments)都有其自有的处理方法。
EMACS 是一个 Self-documenting的软体,因为在任何时候都 可以 `` Ctrl-h'' 指令来得立即的帮助。因为,透过
`` Ctrl-h'' 可以得知每一个 EMACS 的指令。
EMACS 是可以 Customizable
的。使用者可视个人的需求,
来改变 EMACS 指令的定义。GNU EMACS 的 Customization 的设定
非常简单,使用者可以很方便的使用它。 EMACS 是 Extensible 的。GNU EMACS 是由
LISP 语言 所写成的函式共同组成的, 函式与函式间的互动关系(dependency)
不强。就因为 EMACS
是由函式所组合而成的,所以可以随时
将函式作增减而不会破坏 EMACS 既有的结构。
EMACS 也针对 X
的视窗环境,提供自己的选单(menus)
和滑鼠按纽(mouse
bottons)功能。 EMACS 对於 text-only 的终端机
也提供许多与 X
环境相当的服务品质,例如在文字模式的终端机,
可以同时开启数个的档案,档案可以互相切换,当使用
shell 模式 来执行 shell 指令的同时也可以编辑档案。但本文的只讨论
text-only 的 EMACS 使用法。 以上的种种就是有关 EMACS 的特色。至於如何使用这些功能就
下列章节所要讨论的重点
符号 C- 意思是按住 Ctrol 键
M- 意指 Meta 键 (键盘上若无Meta 键,则可以 ESC 键来取而代之)
DEL 意指退格键 (不是 删除(Delete) key)
RET 意指回车键
SPC 意指空格键
ESC 意指Escape键
TAB 意指Tab键 像 "C-M-" (or "M-C") 这样连在一起的意味着同时按住 Control 和 Meta 键不放.
游标移动指令
Home〈到档首〉
C-p
|
C-a -- M-a -- M-b -- C-b +++ C-f -- M-f -- M-e -- C-e
|
C-n
End〈到档尾〉
Emacs-Speak (行话)Here is a translation to/from Emacs-speak:通用术语Emacs术语中文意思selectionregion选定区域cutkill剪切pasteyank粘贴windowframe窗口shortcutkey-sequence快捷键開檔: C-x C-f --然後輸入檔名,用 TAB 可以自動補齊。建立新文件: C-x C-f --然後輸入一個尚未存在的檔名;用 TAB 可以自動補齊。存檔: C-x C-s。刪除暫存 (buffer) (關閉檔案): C-x k。分割 (Split) 視窗 (同時看兩個檔案): C-x 2。合併視窗 (把視窗最大化): C-x 1。切換視窗 (在分割視窗後): C-x o。切換暫存 (如果你同時編輯很多檔案): C-x b.暫存Buffer menu (list of buffers): C-x C-b.如果你不記得鍵盤設定的話,使用命令列: M-x --然後輸入命令名稱,用 TAB 可以自動補齊。獲得幫助: C-h ,然後接著下列這些鍵:- k -鍵盤設定為何?
- f -函式功能為何?
- m -在目前模式下的鍵盤設定為何?
- w -某個函式設定到哪個鍵上?
- a -和某個字串相關的函式?
输入法
没有了中文输入法, Emacs 对於中文使用者一点用处都没有。想要知道您可以使用哪些输入法,您可以键入 C-x RET C-\ SPC ,接著
Emacs
会出现一个所有多国语文的输入法列表窗格。然后您就可以在其中键入您所使用的输入法名称了。下面是作者的作法:(作者使用的是行列输入法,名称为
chinese-array30 。)
1. 设定预设的输入法,将下面这一行加入到 ~/.emacs 档案中:
(custom-set-variables '(default-input-method "chinese-array30"))
这样子在启动 Emacs 后,
您就可以直接以 C-\ 指令在英文输入和行列输入法之间切换了。
2. 但是有时候用行列打不出来,需要切换成注音输入法。
有两种方式可以达成这个目的:
a. C-x RET C-\ chinese-zozy RET
b. C-u C-\ chinese-zozy RET
作者建议您使用第二种方式,因为它同时也是作为两种输入法间切换的指令。
接下来您只要键入 C-u C-\ RET 就可以在行列和注音这两者间作切换了。
(注意:中英输入法间的切换还是以 C-\ 指令为之。)
以后我们在不同中文输入法间作切换将可以 C-u C-u C-\ 达成,
原本作者是建议以 M-\ 来补足这个想法,
但是 M-\ 很不幸已经作为 delete-horizontal-space 指令了。
不然 C-\ 搭配 M-\ 不是很漂亮吗?
这样子您应该可以理解如何使用中文输入环境了吧!
当然,您必须将行列改为自己喜欢的输入法。
如果您找不到自己喜欢的输入法,那么您可以:
1. 自己造一个(相关文献在 .../emacs/leim/quail/ 。)
2. 利用现成的输入法档案做出一个
( .../emacs/lisp/international/titdic-cnv.el 。)
只要是 cxterm 的 *.tit 和 xcin 的 *.cin
有提供的输入法都可以。
但是作法上对於终端使用者而言并不十分“自动”,
因此现阶段可能还是需要志愿者协助进行才有办法。
不知道 cxterm 和 xcin 的开发人员是否可以协助提供。
(对了, cxterm 的行列输入法有个小臭虫,应该和谁联系?)
本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/13329/showart_110149.html
|
| 发表评论
查看评论(共有条评论)
我要提问
|
| |
|
|
|