《Emacs 编辑环境》学习笔记

转自:http://www.ibm.com/developerworks/cn/aix/lp/emacsnew.html

熟悉窗体布局,重点:模式行、迷你缓冲区(minibuffer)。

熟悉如何键入组合键:C-x代表按住Ctrl,再按下x。


常用的缺省Emacs按键前缀

C-c当前编辑模式特有的命令
C-x文件和缓冲区命令
C-h帮助命令
M-x函数名


常用的Emacs缓冲区和文件函数

C-x C-ssave-buffer将当前的缓冲区保存到磁盘。
C-x ssave-some-buffers要求将所有未保存的缓冲区保存到磁盘。
C-x C-csave-buffers-kill-emacs要求将所有未保存的缓冲区保存到磁盘,并退出 Emacs。
C-x C-zsuspend-emacs挂起 Emacs 并使之成为一个后台进程。
C-x C-blist-buffers列出所有缓冲区。
C-x kkill-buffer杀死一个缓冲区(缺省情况下为当前的缓冲区)。
C-x C-qvc-toggle-read-only切换当前缓冲区的可读状态(如果适用还可以执行版本控制)。
C-x iinsert-file在插入点插入某个文件的内容。


有用的Emacs键盘输入(移动和导航)

C-p,
UpArrow
previous-line将插入点向上移动到上一行。
C-n, DownArrownext-line将插入点向下移动到下一行。
C-f, RightArrowforward-char将插入点移动到下一个字符。
C-b, LeftArrowback-char将插入点移动到上一个字符。
M-fforward-word将插入点移动到下一个单词。
M-bbackward-word将插入点移动到上一个单词。
C-v, PgDnscroll-up将文本向上滚动一屏。
M-v, PgUpscroll-down将文本向下滚动一屏。
Homebeginning-of-buffer将插入点移到缓冲区的开始处。(在某些版本中,这个键被缺省定义为移动到当前行的开始处。)
Endend-of-buffer将插入点移到缓冲区的末尾。(在某些版本中,这个键被缺省定义为移动到当前行的末尾。)
C-abeginning-of-line将插入点移到本行的开始处。
C-eend-of-line将插入点移到本行的结尾。
M-abeginning-of-sentence将插入点移到句子的开始处。
M-eend-of-sentence将插入点移到句子的结尾处。
C-{beginning-of-paragraph将插入点移到段落的开始处。
C-}end-of-paragraph将插入点移到段落的结尾处。


常用Emacs编辑命令

Insoverwrite-mode切换改写模式(缺省为关闭)。
Backspace
Del
delete-backward-char删除插入点前的字符。
C-ddelete-char删除插入点处的字符。
M-dkill-word从插入点开始向前删除字符,直到单词末尾。
M-Backspace,
M-Del
backward-kill-word从插入点开始向回删除字符,直至单词的开始处。
C-_undo撤消您的上一次键入或操作
C-q 字符XXXquoted-insert在插入点插入按键本身代表的字符或由八进制数字(XXX)表示的字符。
C-u 次数 命令universal-argument按总的次数(缺省为 4 次)连续执行命令


用来标记和删除文本的Emacs函数

C-Spaceset-mark-command在插入点设置标记。
C-kkill-line删除从插入点到行末的所有文本。
C-wkill-region删除区域。
M-wkill-ring-save将区域保存在 kill ring 中,但不删除它。
C-yyank恢复来自 kill ring 的文本。


Emacs中的鼠标操作

B1这一命令将设置插入点位置;拖动鼠标左键以设置区域。
B1-B1这一命令标记一个单词。
B1-B1-B1这一命令标记一行。
B2这一命令插入最近被杀死的内容,并把光标移动到插入内容的末尾。
B3这一命令会设置并突出显示区域,然后无需删除就将其放在 kill 缓冲区中。如果某个区域已经被突出显示并设置,该区域的末尾将移动到您单击的位置。
B3-B3这个命令将突出显示区域,然后删除它。如果某个区域已经被突出显示并设置,该区域的末尾将移动到您单击的位置,此后该区域将被删除。

熟悉不同编辑模式,C-h m获得当前模式描述。


常用的Emacs模式

Fundamentalfundamental-mode主要模式这一模式是缺省的 Emacs 模式,拥有最少设置和绑定。
Texttext-mode主要模式这一模式是编辑文本的基本模式。
Abbrevabbrev-mode次要模式这一模式用于生成和使用缩写(请参见 Abbrev 模式)。
Auto Fillauto-fill-mode次要模式这一模式用于自动文字回绕、填充较长的行和段落。
Overwriteoverwrite-mode次要模式这一模式用于覆盖缓冲区中任何现有的文本,而不是在当前位置插入文本。在缺省情况下,它与 Ins 键绑定。
Cc-mode主要模式这一模式用于编辑 C 程序源代码。
Line Numberline-number-mode次要模式这一模式用于显示当前行号。
Lisp Interactionlisp-interaction主要模式这一模式用于编辑和编译 Lisp 代码。
Paragraph-Indent Textparagraph-indent-text-mode主要模式这一模式是 Text 模式的一种特殊变体,其中的段落移动命令可用于首行缩进的段落,而不仅仅是由空行隔开的段落。
TeXtex-mode主要模式这一模式用于编辑 TeX 文档。
WordStarwordstar-mode主要模式这一特殊模式提供了 WordStar 编辑器的键绑定。


Text模式键绑定

Esc作为 mode-specific 命令的前缀
Esc Tab、M-Tabispell-complete-word
Esc S、M-Scenter-paragraph
Esc s、M-scenter-line

Abbrev模式(一种次要模式)使得您可以对较长的字符串或者短语进行速记,但是您可能还会想到一些其他的使用方式。
添加缩写:C-x a i g,运行 inverse-add-global-abbrev 函数。
打开模式:M-x,abbrev-mode。
删除缩写:M-x,kill-all-abbrevs。


Emacs文本操作命令

C-x C-iC-x Tabindent-rigidly这一命令对区域中的(或光标所在的)行进行缩进。
 fill-region这一命令填充区域里的所有段落。
M-qfill-paragraph这一命令填充光标所在的单个段落。
M-\delete-horizontal-space这一命令删除光标左右的任何水平间距。
C-oopen-line这一命令以垂直间距在光标下方打开一个新行,而不移动光标。
C-ttranspose-chars这一命令调换光标左右的单个字符。
M-ttranspose-words这一命令调换光标左右的单个单词。
C-x C-ttranspose-lines这一命令调换光标所在的行与光标前面的行。
M-^delete-indentation这一命令将光标所在的行和前面的行连接起来。以 C-1 作为开始,以连接光标所在的行和下一 行。
M-uuppercase-word这一命令将光标处到其所在词的词尾之间的文本转换为大写字母。
M-ldowncase-word这一命令将光标处其所在词的词尾之间的文本转换为小写字母。
C-x C-ldowncase-region这一命令将区域中的内容转换为小写字母。
C-x C-uupcase-region这一命令将区域中的内容转换为大写字母。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值