Linux emacs 文本编程器常用命令

Linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。本文主要介绍Linux emacs 命令。

1、简介

Emacs,著名的集成开发环境和文本编辑器。Emacs被公认为是最受专业程序员喜爱的代码编辑器之一,另外一个vim。

EMACS,即Editor MACroS(编辑器宏)的缩写,最初由Richard Stallman(理查德·马修·斯托曼)于1975年在MIT协同Guy Steele共同完成。这一创意的灵感来源于TECMAC和TMACS,它们是由Guy Steele、Dave Moon、Richard Greenblatt、Charles Frankston等人编写的宏文本编辑器。

2、命令参数

选项

描述

+<行号>

启动emacs编辑器,并将光标移动到制定行号的行;

-q

启动emacs编辑器,而不加载初始化文件;

-u<用户>

启动emacs编辑器时,加载指定用户的初始化文件;

-t<文件>

启动emacs编辑器时,把指定的文件作为中端,不适用标准输入(stdin)与标准输出(stdout);

-f<函数>

执行指定lisp(广泛应用于人工智能领域的编程语言)函数;

-l

加载指定的lisp代码文件;

-batch

以批处理模式运行emacs编辑器。

3、常用命令

注意:C表示Ctrl,M表示Alt,S表示Shif,字母区分大小写。

1)基本命令

命令

描述

C-x C-c

退出 Emacs

C-x C-f

打开一个文件,如果文件不存在,则创建一个文件

C-g

取消未完成的命令

2)编辑命令

命令

描述

C-z (redefined)

Undo;原来C-z是挂起Emacs(然后用fg命令调出);C-x u 是默认的命令; 移动一下光标,再C-z就可以redo

M-d

删除光标后的词语

3)移动光标

命令

描述

C-v

向前翻页

M-v

向后翻页

M-r

将光标移动到屏幕中间那行

C-a

移到行首

M-a

移到句首,从行首到句首之间可能有空格

C-e

移到行尾

M-e

移到句尾

M-{

向上移动一段

M-}

向下移动一段

C-right

向前移动一个单词

C-left

向后移动一个单词

C-up

向前移动一段

C-down

向后移动一段

M-<

移到整个文本开头

M->

移到整个文本末尾

C-u 数字 命令

 

执行多次(数字表示次数)该命令;"M-数字 命令" 也可以

M-x goto-line

移动到某一行

C-l

重绘屏幕,效果就是当前编辑行移动窗口中央

4)Buffer 相关

命令

描述

C-x k

关闭当前 buffer

C-x b

切换到前一个编辑的 buffer

C-x C-b

列出当前所有 buffer

C-x C-s

保存当前 buffer

C-x s

保存所有未保存的 buffer,会提示你是否需要保存

C-x C-w

文件另存为

5)拷贝与粘贴

命令

描述

M-space (redefined)

设置mark; C-@是默认命令

C-w (redefined)

剪切一块区域;如果没有设置mark,则是剪切一行

M-w (redefined)

拷贝一块区域;如果没有设置mark,则是拷贝一行

C-k

从当前位置剪切到行尾

C-y

粘贴

M-y

用C-y拉回最近被除去的文本后,换成M-y

可以拉回以前被除去的文本。键入多次的M-y

可以拉回更早以前被除去的文本。

C-x r k

执行矩形区域的剪切

C-x r y

执行矩形区域的粘贴

6)窗口操作

命令

描述

C-x 0

关闭当前窗口

C-x 1

将当前窗口最大化

C-x 2

垂直分割窗口

C-x 3

水平分割窗口

M-o (redefined)

在窗口之间切换; C-x o 是默认命令

C-x 5 1/2/3/0

对frame类似的操作

C-x <

窗口内容右卷

C-x >

窗口内容左卷(这两个命令在垂直分割窗口后比较有用)

(C-u) C-x ^

加高当前窗口,如果有C-u,则每次加高4行

(C-u) C-x }

加宽当前窗口

(C-u) C-x {

压窄当前窗口

ESC C-v

在其它窗口进行卷屏操作

7)搜索和替换

命令

描述

C-s

向前搜索(增量式搜索);连续 C-s,跳到下一个搜索到的目标

C-s RET

普通搜索

C-r

向前搜索

C-s RET C-w

按单词查询

M-%

查询替换,也就是替换前会询问一下

M-x replace-string

普通替换

8)Tags

命令

描述

M-! etags .c .h

创建 TAGS 文件

M-.

跳到 tag 所在位置

M-x list-tags

列出 tags

9)书签

命令

描述

C-x r m

设置书签 bookmark

C-x r b

跳到 bookmark 处

10)帮助

命令

描述

C-h ?

查看帮助信息

C-h f

查看一个函数

C-h v

查看一个变量

C-h k

查看一个键绑定 (C-h c 也是查看键绑定,但是信息较简略)

C-h C-f

查看一个函数的info,非常有用

C-h i

看 Info

11)其它

命令

描述

C-M-\

对选中区域,按照某种格式(比如C程序)进行格式化

C-x h

全部选中

M-!

执行外部shell命令

M-x shell

模拟shell的buffer

M-x term

模拟terminal, C-c k 关闭terminal

C-x C-q

修改buffer的只读属性

推荐阅读
cjavapy编程之路首页