学习GNU Emacs命令速查表(四)

    版权声明:对于本博客所有原创文章,允许个人、教育和非商业目的使用,但务必保证文章的完整性且不作任何修改地以超链接形式注明原始作者、出处及本声明。

    博客地址http://blog.csdn.net/shuxiao9058

    原始作者:季亚


第十二章程序员的Emacs

12-1:基本缩进命令速查表

键盘操作

命令名称

动作

C-M-\

indent-region

对光标和文本块标记之间的每一行进行缩进

M-m

back-to-indentation

把光标移到当前行的第一个非空白字符上

M-^

delete-indentation

把当前行合并到上一行去

 

12-2C模式高级移动命令速查表

键盘操作

命令名称

动作

M-a

c-beginning-of-statement

移动到当前语句的开头

M-e

c-end-of-statement

移动到当前语句的末尾

M-q

c-fill-paragraph

如果光标在注释文本中间,则进行段落重排,保留缩进和前导字符

C-M-a

beginning-of-defun

移动到光标所在函数的开头

C-M-e

end-of-defun

移动到光标所在函数的末尾

C-M-h

c-mark-function

把光标放到函数的开头,把文本块标记放到函数的末尾——即把函数整个选取为一个文本块

C-c C-q

c-indent-defun

按缩进样式对整个函数进行缩进

C-c C-u

c-up-conditional

移动到当前预处理器条件的开始位置

C-c C-p

c-backward-conditional

移动到上一个预处理器条件

C-c C-n

c-forward-conditional

移动到下一个预处理器条件

 

12-3C模式缩样式速查表

缩进样式

说明

bsd

BSD系列的UNIS版本使用的编程风格

cc-mode

默认的编程风格;其他样式都是从它推导出来的

ellemtel

瑞典Ellemtel电讯系统实验室的C++文档里使用的编程风格

gnu

Emacs自身和其他GNU程序所使用的C语言书写风格

java

在编写Java代码时使用的风格(Java模式的默认值)

k&r

KernighanRitchie合著的《The C Programming Language》一书中使用的编程风格,这本书是C语言的开山之作

linux

部分Linux内核中C代码所使用的一种风格

python

Python扩展中使用的风格

stroustrup

Bjarne Stroustrup所著的《The C++ Programming Language》一书中使用的编程风格,这本书是C++语言的标准参考书

user

通过定制.emacs文件或自定义(参见第10章)。如果你设置所有其他了它们,所有其他样式将继承自这些自定义

whitesmith

Whitesmith公司在他们的CC++编译器软件的文档里使用的编程风格

 

12-4S-表达式处理命令速查表

键盘操作

命令名称

动作

C-M-b

backward-sexp

移动到上一个S-表达式

C-M-f

forward-sexp

移动到下一个S-表达式

C-M-t

transpose-sexps

交换光标前后的两个S-表达式的位置

C-M-@

mark-sexp

把文本块标记设置在当前S-表达式的末尾,把光标设置在当前S-表达式的开头

C-M-k

kill-sexp

删除光标后面的那个S-表达式

()

backward-kill-sexp

删除光标前面的那个S-表达式

 

12-5:列表处理命令速查表

键盘操作

命令名称

动作

C-M-n

forward-list

移动到上一个列表

C-M-p

backward-list

移动到下一个列表

C-M-d

down-list

向前移动,进入下一级括号层次

()

up-list

向前移动,退出当前的括号层次

C-M-u

backward-up-list

向后移动,退出当前的括号层次

 

12-6:以函数定义(defun)为单位进行移动的命令速查表             

键盘操作

命令名称

动作

C-M-a

beginning-of-defun

移动到当前函数的开头

C-M-e

end-of-defun

移动到当前函数的结尾

C-M-h

mark-defun

把光标放到函数的开头,把文本块标记放到函数的结尾

 

12-7FORTRAN模式中的移动命令速查表        

键盘操作

命令名称

动作

C-c C-n

fortran-next-statement

向前移动一个语句

C-c C-p

fortran-previous-statement

向前向移动一个语句

ESC C-a

beginning-of-fortran-subprogram

移动到当前子程序的开头

ESC C-e

end-of-fortran-subprogram

移动到当前子程序的结尾

ESC C-h

mark-fortran-subprogram

把光标放到子程序的开头,把文本块标记放到子程序的结尾

 

12-8FORTRAN模式中的Emacs变量           

变量

默认值

说明

fortran-minimum-statement-indent

6

开始输入语句之前需要保留的缩进量(例如:缩进量为6时语句将从7列开始输入)

fortran-do-indent

3

do语句块里的语句还需要增加的缩进量

fortran-if-indent

3

if语句块里的语句还需要增加的缩进量

fortran-continuation-char

$

续行时放在第6列里的续行标记字符

fortran-continuation-indent

5

语句续行时的缩进量(比如从第6列开始再缩进5个字符的位置)

fortran-comment-line-column

6

占据一整行的注释所使用的缩进量;“ESC;”命令使用的就是这个值

fortran-comment-indent-style

‘fixed
(固定值)

这个变量的值可以取“nil”、“’fixed”或“’relative(相对值)”,注意后两个值的前面带有单引号;请参见下面的用法示例

comment-start

nil

与程序代码同在一行上的注释的前导字符;请参见下面的用法示例。如果这个变量取值为“nil

fortran-line-unmber-indent

1

行号的最大缩进量,用来保证行号不会延伸到第5列(续行标记列)上。请参考后面对语句自动编号功能的讨论

fortran-comment-region

“c$$$”

fortran-comment-region(“C-c;”)命令插入到每一行前面去的字符串

 

12-9FORTRAN模式下的一些缩略词汇

缩略词汇

关键字

;c

continue

;dp

double precision

;dw

do while

;f

format

;fu

function

;g

goto

;in

integer

;p

print

;rt

ENTER

;su

subroutine

 

12-10:编译模式命令速查表     

键盘操作

命令名称

动作

C-x ‘

next-error

移动到下一条出错信息并访问与之对应的源代码

M-n

compilation-next-error

移动到下一条出错信息

M-p

compilation-previous-error

移动到上一条出错信息

C-c C-c

compilation-goto-error

访问对应于当前出错信息的源代码

SPACE

scroll-down

下卷屏幕显示内容

DEL

scroll-up

上卷屏幕显示内容

 

第三版新增内容

 

12-11JDEEMakefile条目

Makefile条目

示例

说明

prefix

/usr/local

任何软件的“shared”和“info”顶级目录

datadir

$(prefix)/share

Emacs主目录所在的地方

locallisppath

$(datadir)/emacs/site-lisp

所有本地LISP文件应该放置的地方

ELIBDIR

$(locallisppath)/elib

ELIB LISP文件将放在这个目录

EMACS

/usr/bin/emacs

这个命令用来启动Emacs。可以是绝对路径或“emacs”能检测到你当前系统所安装的Emacs版本

 

 

12-12JDEE的环境变量

JDEE变量名

示例值

jde-global-classpath

/usr/local/j2se:.

jde-jdk-registry

Version = 1.4.2

Path = /usr/local/j2se

 

12-13:生成代码菜单选项

键盘操作

菜单选项(M-x 命令)

动作

C-c C-v C-l(小写的“L”)

Println Wizard(jde-gen-println)

提示插入一个完整的System.out.println()方法

C-c C-v C-z

Import Class(jde-import-find-and-import)

提示输入(简单)类名,以自动导入,并在文件头添加适当的导入说明

C-c C-v i

Implement Interface(jde-wiz-implement-interface)

提示输入要实现的接口的名称。添加任何缺少的import语句(包括依赖导入,如方法参数的导入)。为每个接口中的方法提供注释框架

 

12-14JDEE调试控制

键盘操作

菜单选项

JDB命令

C-c C-a C-s

Step Into

step

C-c C-a C-n

Step Over

next

C-c C-a C-c

Continue

cont

C-c C-a C-b

Toggle Breakpoint

stop in/stop at/clear

C-c C-a C-p

Display Expression

print

C-c C-a C-d

Display Object

dump

第十三章LISP语言对Emacs做进一步开发

13-1:交互式函数的参数类型代码

参数类型代码

参数类型

b

一个现有编辑缓冲区的名字

e

事件(鼠标动作或功能键动作)

f

一个现有文件的名字

n

数字(整数)

s

字符串

这些代码还有相应的大写变体:

参数类型代码

参数类型

B

一个可能不存在的编辑缓冲区的名字

F

一个可能不存在的文件的名字

N

如果命令在调用时带有一个前缀参数,按前缀参数指示的情况办理;否则就是数字

S

符号

 

13-2LISP语言的基础函数

算术运算

+ - * /(加、减、乘、除)

 

% (求余数)

 

1+ (递增)

 

1- (递减)

 

max(最大值)、 min(最小值)

比较运算

> < >= <=(大于、小于、不小于、不大于)

 

/= (不等于)

 

= (等于,用于数字和字符)

 

equal(等于,用于字符串和其他复杂的数据对象)

逻辑运算

and(与)、or(或)、not(非)

 

13-3ANSI方向键输出的字符代码

箭头键

字符代码

ESC O A

ESC O B

ESC O C

ESC O D

 

13-4:与编辑缓冲区和文本有关的函数

函数名称

返回值或执行动作

point
mark

光标的字符位置
文本标记的字符位置

point-min
point-max

最小字符位置(通常是1
最大字符位置(通常是编辑缓冲区的长度)

bolp
eolp
bobp
eobp

光标是否位于行首(取值为“t”或“nil”)
光标是否位于行尾
光标是否位于编辑缓冲区的开始
光标是否位于编辑缓冲区的末尾

insert

把任意个数的参数(字符串或字符)插入到编辑缓冲区光标位置之后

number-to-string
string-to-number
char-to-string
concat
substring



aref



把一个数值参数转换为一个字符串
把一个字符串转换为一个数字(整数或浮点数)
把一个字符数字转换为一个字符串
把任意个数的字符串合并到一起
给定一个字符串及两个整数索引startend,返回从start指示的位置开始到end指示的位置前结束的子字符串。下标从0开始计算。比如说,函数“(substring “appropriate 2 5)”将返回子字符串“pro
数组索引函数,它可以用来从字符串里取出单个的字符;它的输入参数是一个整数,从函数返回的是一个以整数表示的字符,返回值(在大多数机器上)使用的是ASCII码。比如说,函数“aref “appropriate” 3”将返回数字“114”,即字母“r”的ASCII

 

13-5:正则表达式基本操作符

Emacs操作符

UNIX shell操作符

作用

.

?

匹配任意一个字符

.*

*

匹配任意一个字符串

[abc]

[abc]

匹配字母abc

[a-z]

[a-z]

匹配任意一个小写字母

 

13-6:正则表达式操作符速查表

操作符

作用

.

匹配任意一个字符

*

匹配其前面的字符或字符组出现零次或更多次的情况

+

匹配其前面的字符或字符组出现一次或更多次的情况

?

匹配其前面的字符或字符组出现零次或一多次的情况

[...]

字符的集合,参见下面的说明

\\(

开始一个字符组

\\)

结束一个字符组

\\|

匹配“\\|”前、后的子表达式

^

如果出现在正则表达式的开始,匹配文本行首或字符串的开始

$

如果出现在正则表达式的末尾,匹配文本行首或字符串的末尾

\n

在正则表达式里匹配换行符LINEFEED

\t

在正则表达式里匹配制表符TAB

\\<

匹配单词的开始

\\>

匹配单词的结尾

下面的操作符出现在字符集里时的含义:

操作符

作用

^

如果出现在字符集的开始,则该字符集将被用做不匹配字符集

- (dash)

用来设定字符范围

下面的操作符出现在regexp替换字符串里时的含义:

操作符

作用

\\n

替换第N个“\\(”和“\\)”之间的部分匹配,从左归组操作符“\\(”向右编号,编号从1开始

第十四章 Emacs编辑器和X窗口系统

14-1Emacs的窗格操作命令速查表

键盘操作

命令名称

动作

C-x 5 f

find-file-other-frame

访问另一窗格里的某个文件

C-x 5 d

dired-other-frame

在另一个窗格里运行Dired模式

C-x 5 0

delete-frame

删除当前窗格

C-c 5 b

switch-to-buffer-other-frame

切换到另一个窗格

第十五章 Emacs下的版本控制

15-1VC命令速查表

键盘操作

命令名称

动作

C-x v v

vc-next-action

前进到下一个合乎逻辑的版本控制状态

C-x v d

vc-directory

列出某个子目录下所有的已注册文件

C-x v =

vc-diff

生成一份版本差异报告

C-x v u

vc-revert-buffer

丢弃上次修订版之后的一切修改

C-x v ~

vc-version-other-window

在另外一个窗口打开指定的修订版

C-x v l

vc-print-log

显示某个文件的修改注释和修改记录

C-x v i

vc-register

把文件注册到版本控制系统

C-x v h

vc-insert-headers

给文件加上供版本控制系统使用的标题块

C-x v r

vc-retrieve-snapshot

签出一个已命名的项目快照

C-x v s

vc-create-snapshot

创建一个项目快照并给它起个名字

C-x v c

vc-cancel-version

丢弃一个已经保存起来的修订版

C-x v a

vc-update-change-log

刷新一个GNU格式的ChangLog文件

 

第三版新增内容

 

15-2Ediff命令速查表

键盘操作

命令名称

动作

Spacen

ediff-next-difference

移动到该文件下一个修改过的地方

Delp

ediff-previous-difference

移动到该文件上一个修改过的地方

j

ediff-jump-to-difference

转到前缀数字参数所指定差异的地方

vC-v

ediff-scroll-vertically

两个编辑缓冲区均向前移动一页

VM-v

ediff-scroll-vertically

两个编辑缓冲区均向后移动一页

ediff-scroll-horizontally

将每个编辑缓冲区向左滚动

ediff-scroll-horizontally

将每个编辑缓冲区向右滚动

| (竖线)

ediff-toggle-split

切换查看缓冲区方式,是只查看当前文件,还是同时查看这两个编辑缓冲区

m

ediff-toggle-wide-display

在正常窗口与最宽窗口之间切换

a

ediff-copy-A-to-B

将编辑缓冲区A中与编辑缓冲区B不同的内容信息复制到编辑缓冲缓冲区B

b

ediff-copy-B-to-A

将编辑缓冲区B中与编辑缓冲区A不同的内容信息复制到编辑缓冲缓冲区A

r ar b

ediff-restore-diff

恢复编辑缓冲区A(或B)从另一缓冲区复制之前的状态

AB

ediff-toggle-read-only

对指定编辑缓冲区切换到(或退出)只读模式

g ag b

ediff-jump-to-difference-at-point

在最近(当前光标位置)差异的地方与指定的编辑缓冲区进行比较,并将光标移动到有差异的地方

C-l

ediff-recenter

恢复比较显示,使所有编辑缓冲区被比较突出的地方是高亮的;如果你做别的东西,并要回去之前的光标位置的时候比较有用

!

ediff-update-diffs

重新计算并显示突出显示的区域;当手动且对编辑缓冲区有很大的修改时比较有用.

w aw b

ediff-save-buffer

将指定的编辑缓冲区保存起来

E

ediff-documentation

打开Ediff手册

z

ediff-suspend

关闭Ediff的控制窗口,但当前会话还在活动,稍后你还可以恢复它

q

ediff-quit

关闭Ediff的控制窗口并结束当前比较的会话

第十六章在线帮助

16-1:用来查找详细资料的帮助命令

键盘操作

命令名称

回答的问题

C-h c

describe-key-briefly

这个按键组合将运行哪个命令

C-h k

describe-key

这个按键组合将运行哪个命令?这个命令的作用是什么

C-h l

view-lossage

最近输入的100个字符是什么

C-h w

where-is

这个命令的按键绑定是什么

C-h f

describe-function

这个函数的作用是什么

C-h v

describe-variable

这个变量的含义是什么?它有哪些可取值

C-h m

describe-mode

查看当前编辑缓冲区所在编辑模式的有关资料

C-h b

describe-bindings

这个缓冲区都有哪些按键绑定

C-h s

describe-syntax

这个编辑缓冲区使用的是哪个语法表

 

16-2apropos命令

键盘操作

命令名称

回答的问题

C-h a

command-apropos

这个概念都涉及到哪些命令

()

apropos

这个概念都涉及到哪些函数和变量

()

super-apropos

哪些函数和变量的文档里提到了这个概念

 

16-3:用来查找一般性资料的帮助命令

键盘操作

命令名称

动作

C-h t

help-with-tutorial

运行Emacs教程

C-h i

info

启动文档阅读器Info程序

C-h C-f

Info-goto-emacs-command-node

启动文档阅读器Info程序,并前进到指定的结点;这个帮助命令的参数是一个命令名

C-h C-k

Info-goto-emacs-key-command-node

启动文档阅读器Info程序,并前进到指定的结点;这个帮助命令的参数是对应于某个命令的按键组合

C-h n

view-emacs-news

查看关于Emacs新增和改进功能的信息

C-h F

view-emacs-FAQ

查看Emacs的常见问题答疑文件

C-h p

finder-by-keyword

沿着这个命令弹出的菜单可以查到关于安装在本系统上的Emacs LISP程序包资料

C-h c

describe-copying

阅读Emacs的“通用公共许可证”(General Public License

C-h C-d

describe-distribution

阅读从自由软件基金会订购的Emacs信息

C-h C-p

describe-project

查阅关于GNU软件开发项目的信息

C-h C-w

describe-no-warranty

查阅Emacs的免责条款

 


备注:本文大部分内容摘自学习GNU Emacs(第二版),文中紫色部分摘自Learning GNU Emacs, 3rd Edition,并由本人翻译整理而得。
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值