您的位置:首页 > 其它

Emacs快速指南摘要

2016-05-02 15:07 267 查看

Emacs
快速指南摘要

Emacs 快速指南摘要
基本

被禁用的命令DISABLED COMMANDS

窗格WINDOWS

插入与删除INSERTING AND DELETING

撤销UNDO

文件FILE

缓冲区BUFFER

命令集扩展EXTENDING THE COMMAND SET

自动保存AUTO SAVE

状态栏MODE LINE

搜索SEARCHING

多窗格MULTIPLE WINDOWS

多窗口MULTIPLE FRAMES

递归编辑RECURSIVE EDITING LEVELS

基本

退出
Emacs
,请用
C-x C-c


退出一个正在运行中的命令,请用
C-g


C-v
向前移动一屏

M-v
向后移动一屏

C-l
重绘屏幕,并将光标所在行置于屏幕的中央

上一行 `C-p`
:
:
向左移 `C-b` .... 目前光标位置 .... 向右移 `C-f`
:
:
下一行 `C-n`


P
代表
previous


N
代表
next


B
代表
backward


F
代表
forward


通常的惯例是:META 系列组合键用来操作“由语言定义的单位(比如词、句子、段落)”,而 CONTROL系列组合键用来操作“与语言无关的基本单位(比如字符、行等等)”。

C-f
向右移动一个字符

C-b
向左移动一个字符

M-f
向右移动一个词【对中文是移动到下一个标点符号】

M-b
向左移动一个词【对中文是移动到上一个标点符号】

C-n
移动到下一行

C-p
移动到上一行

C-a
移动到行首

C-e
移动到行尾

M-a
移动到句首

M-e
移动到句尾

M-<
(META 小于号)可以将光标移动到所有文字的最开头;

M->
(META 大于号)可以将光标移动到所有文字的最末尾。

大部分的
Emacs
命令接受数字参数,并且对于多数命令而言,这些数字参数的作用是指定命令的重复次数。为一个命令指定数字参数(也就是重复次数)的方法是:先输入
C-u
,然后输入数字作为参数,最后再输入命令。如果你有META (或EDIT 或 ALT)键,那么还有另一种办法:按住 META 键不放,然后输入数字。不过我们还是建议你用
C-u
,因为它在任何终端机上都能用。这种数字参数也称为“前缀参数”,意思是说这个参数是先于使用它的命令而输入的。

举例来说,
C-u 8 C-f
会向前移动 8 个字符。

虽然大部分命令把数字参数解释为其重复次数,但是也有些命令例外,它们将数字参数另做它用。比如有些命令(我们目前还没学到)仅仅将前缀参数作为一个标志――只要给出有一个前缀参数,不管其值为何,它都会改变命令的功能。

C-v
M-v
则属于另一种类型的例外。当给定一个参数时,它们将滚动你指定的“行数”,而不是“屏数”。举例来说,
C-u 8 C-v
将文本向下滚动 8 行。

现在试试看,输入
C-u 8 C-v


这个命令应该已经将文字向上滚动了 8 行。如果你想将它再次地向下滚动,你可以给定一个参数然后执行
M-v


被禁用的命令(DISABLED COMMANDS)

如果你真的想用这条命令,在
Emacs
询问你的时候应该按空格。一般来说,如果

你不想用,就按“n”。

窗格(WINDOWS)

C-x 1
只保留一个窗格(也就是关掉其它所有窗格)。

插入与删除(INSERTING AND DELETING)

重复执行输入字符的命令实际上就是输入多个相同的字符。

试试
C-u 8 *
,这将会插入
********


<DEL>
删除光标前的一个字符

C-d
删除光标后的一个字符

M-<DEL>
移除光标前的一个词

M-d
移除光标后的一个词

C-k
移除从光标到“行尾”间的字符

M-k
移除从光标到“句尾”间的字符

你也可以用一种通用的办法来移除缓冲区里的任何一部分:首先把光标移动到你想要移除的区域的一端,然后按
C-<SPC>
(指空格)【注意,C- 往往被中文用户设定成输入法热键,如果这样,C- 就被系统拦截而无法传递给
Emacs
了,在这种情况下可以使用C-@。】,然后将光标移动到你准备移除的文字的另一端。这个时候,
Emacs
会高亮光标和你按下 C- 之间的文本。最后,按下 C-w 。这样就可以把位于这两点之间的所有文字移除了。

注意,“移除(kill)”和“删除(delete)”的不同在于被移除的东西可以被重新插入(在任何位置),而被删除的就不能使用相同的方法重新插入了。重新插入被移除的文字称为“召回(yank)”。

召回的命令是
C-y
。它会在光标所在处插入你最后移除的文字。

C-y 可以召回最近一次移除的内容,那如何召回前几次移除的内容呢?它们当然没有丢,你可以用 M-y 来召回它们。在用 C-y 召回最近移除的文字之后,紧接着再按 M-y 就可以召回再前一次被移除的内容,再按一次 M-y 又可以召回再上一次的……连续使用 M-y 直到找到你想要召回的东西,然后什么也不用做,继续

编辑就行了。

撤销(UNDO)

用 undo 命令进行撤销:
C-/


通常
C-/
会消除一个命令所造成的所有改变;如果你在一行中连续多次地使用
C-/
,你会把以前的命令也依次撤销。

C-_
也是撤销命令;它的作用跟
C-/
一样,但是它比较容易多次输入。在某些终端上,输入
C-/
实际上向
Emacs
发送的是
C-_
。另外,
C-x u
C-/
完全一样,但是按起来有些麻烦。

数字参数对于
C-/
C-_
C-x u
的意义是执行撤销的重复次数。

文件(FILE)

C-x C-f
寻找一个文件,
C-g
取消。

C-x C-s
储存这个文件

这条命令把
Emacs
中的文字存储到文件中。第一次存盘的时候
Emacs
会将原文件重命名以备份。重命名的规则通常是在原文件名之后添加一个“~”字符。【对许多人来说,这是一个烦人的特性,关掉文件备份可以用如下命令:

M-x customize-variable make-backup-files 】

缓冲区(BUFFER)

C-x C-b
列出缓冲区

C-x b TUTORIAL.cn <Return>
回到当前缓冲区

C-x b *Messages## <Return>
瞅瞅消息缓冲区里都有什么东西。

C-x s
保存多个缓冲区

命令集扩展(EXTENDING THE COMMAND SET)

C-x
字符扩展。
C-x
之后输入另一个字符或者组合键。

M-x
命令名扩展。
M-x
之后输入一个命令名。

C-z
可以暂时离开
Emacs
,通常可以用“fg”或者“%Emacs”命令再次回到
Emacs
中。

C-x
的扩展命令有很多,下面列出的是你已经学过的:

C-x C-f
寻找文件。

C-x C-s
保存文件。

C-x C-b
列出缓冲区。

C-x C-c
离开
Emacs


C-x 1
关掉其它所有窗格,只保留一个。

C-x u
撤销。

用命令名扩展的命令通常并不常用,或只用在部分模式下。比如
replace-string
(字符串替换)这个命令,它会把一个字符串替换成另一个。在输入
M-x
之后,
Emacs
会在屏幕底端向你询问并等待你输入命令名。如果你想输入“replace-string”,其实只需要敲“repl s”就行了,
Emacs
会帮你自动补齐。输入完之后按 提交。

自动保存(AUTO SAVE)

M-x recover file <Return>
来恢复你的自动保存文件。在提示确认的时候,输入
yes<Return>


状态栏(MODE LINE)

状态栏上小括号里的内容告诉你当前正在使用的编辑模式。缺省的模式是
Fundamental
,就是你现在正在使用的这个。它是一种“主模式”。

主模式都是可以用
M-x
启动的扩展命令,
M-x fundamental-mode
就可以切换到
Fundamental
模式。编辑自然语言文本――比如现在――应该用
Text
模式。输入
M-x text-mode <Return>


C-h m
可以查看当前主模式的文档。

M-x auto-fill-mode <Return>
启动自动折行模式。再用一次这条命令,自动折行模式会被关闭。

搜索(SEARCHING)

C-s
是向前搜索,
C-r
是向后搜索。

多窗格(MULTIPLE WINDOWS)

输入
C-x 2
,它会将屏幕划分成两个窗格。

C-M-v
滚动下方的窗格。

如果你并没有 META 键,用
ESC C-v
也可以。)向上滚动是
C-M-S-v
,也就是同时按住 CONTROL、META 和 SHIFT 再按 v】

输入
C-x o
(“o”指的是“其它(other)”),将光标转移到下方的窗格。

多窗口(MULTIPLE FRAMES)

输入
M-x make-frame <Return>


可以看到一个新的窗口出现在了你的屏幕上。

输入
M-x delete-frame <Return>
.

这个命令将会关闭选中的窗口。

递归编辑(RECURSIVE EDITING LEVELS)

离开递归编辑可以用
ESC ESC ESC


你不能用 C-g 退出递归编辑,因为 C-g 的作用是取消“本层递归编辑之内”的

命令和其参数(arguments)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: