emacs学习(2) 基本模式和编辑特性

来源:互联网 发布:linux tomcat无法访问 编辑:程序博客网 时间:2024/06/08 03:43

二 Emacs 的基本模式和编辑特性

 

Emacs 模式是一些函数。要调用其中某个函数,您需要输入 M-x,然后给出模式名

 

 

表 1. 常用的 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 编辑器的键绑

 

C-ttranspose-chars 函数,以调换光标前的单个字符和光标后的单个字符;使用 M-ttranspose-words 函数,以调换光标前后的单个单词;transpose-lines 函数,C-x C-t,可以调换光标所在的行和光标前面的行

 

uppercase-word 函数(绑定到 M-u)可以将光标处到光标所在词的词尾之间的所有文本都转换为大写字母。类似地,downcase-word(绑定到M-l)可以将光标处到光标所在词的词尾之间的所有文本转换为小写字母

 

表 3. 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这一命令将区域中的内容转换为大写字母。

 

表 5. Emacs 搜索和替换命令

绑定命令或者函数描述C-s [字符串] [C-w] [C-y]isearch-forward前向增量地在整个缓冲区中搜索字符串(在缺省情况下,将搜索您上一次给出的搜索字符串,如果存在);C-w 使用从光标处到光标所在单词的词尾之间的文本,连续按则依次增加后续的单词为搜索对象;以及C-y 使用从光标处到光标所在行的行尾之间的全部内容。C-r [字符串] [C-w] [C-y]isearch-backward后向增量地在整个缓冲区中搜索字符串(在缺省情况下,将搜索您上一次给出的搜索字符串,如果存在),C-w 使用从光标处到光标所在单词的词尾之间的文本,C-y 使用从光标处到光标所在行的行尾之间的全部内容。C-s Enter C-w 单词或者短语word-search-forward在整个缓冲区中前向搜索给定的单词或者短语(不管它们之间如何分隔)。C-r Enter C-w 单词或者短语word-search-backward在整个缓冲区中后向搜索给定的单词或者短语(不管它们之间如何分隔)。C-M-sisearch-forward-regexp在整个缓冲区中前向增量搜索给定的正则表达式。C-M-risearch-backward-regexp在整个缓冲区中后向增量搜索给定的正则表达式。 replace-string从光标处到缓冲区末尾搜索给定的字符串,并使用给定的字符串来替换它。 replace-regexp从光标处到缓冲区末尾搜索给定的正则表达式,并使用给定的字符串来替换它。M-%query-replace从光标处到缓冲区末尾搜索给定的字符串,对于搜索到的每个实例,询问(如表 4 中所述)是否使用给定的字符串来进行替换。C-M-%query-replace-regexp从光标处到缓冲区末尾搜索给定的正则表达式,对于搜索到的每个实例,询问(如表 4 中所述)是否使用给定的字符串来进行替换。

emacs还有语法检查功能

 

原创粉丝点击