学习GNU Emacs命令速查表(四)
来源:互联网 发布:淘宝销量权重 编辑:程序博客网 时间:2024/06/05 15:42
博客地址:http://blog.csdn.net/shuxiao9058
原始作者:季亚
第十二章程序员的Emacs
表12-1:基本缩进命令速查表
键盘操作
命令名称
动作
C-M-\
indent-region
对光标和文本块标记之间的每一行进行缩进
M-m
back-to-indentation
把光标移到当前行的第一个非空白字符上
M-^
delete-indentation
把当前行合并到上一行去
表12-2:C模式高级移动命令速查表
键盘操作
命令名称
动作
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-3:C模式缩样式速查表
缩进样式
说明
bsd
BSD系列的UNIS版本使用的编程风格
cc-mode
默认的编程风格;其他样式都是从它推导出来的
ellemtel
瑞典Ellemtel电讯系统实验室的C++文档里使用的编程风格
gnu
Emacs自身和其他GNU程序所使用的C语言书写风格
java
在编写Java代码时使用的风格(Java模式的默认值)
k&r
Kernighan和Ritchie合著的《The C Programming Language》一书中使用的编程风格,这本书是C语言的开山之作
linux
部分Linux内核中C代码所使用的一种风格
python
Python扩展中使用的风格
stroustrup
Bjarne Stroustrup所著的《The C++ Programming Language》一书中使用的编程风格,这本书是C++语言的标准参考书
user
通过定制.emacs文件或自定义(参见第10章)。如果你设置所有其他了它们,所有其他样式将继承自这些自定义
whitesmith
Whitesmith公司在他们的C和C++编译器软件的文档里使用的编程风格
表12-4:S-表达式处理命令速查表
键盘操作
命令名称
动作
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-7:FORTRAN模式中的移动命令速查表
键盘操作
命令名称
动作
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-8:FORTRAN模式中的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-9:FORTRAN模式下的一些缩略词汇
缩略词汇
关键字
;c
continue
;dp
double precision
;dw
do while
;f
format
;fu
function
;g
goto
;in
integer
;p
;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-11:JDEEMakefile条目
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-12:JDEE的环境变量
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-14:JDEE调试控制
键盘操作
菜单选项
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
C-c C-a C-d
Display Object
dump
第十三章用LISP语言对Emacs做进一步开发
表13-1:交互式函数的参数类型代码
参数类型代码
参数类型
b
一个现有编辑缓冲区的名字
e
事件(鼠标动作或功能键动作)
f
一个现有文件的名字
n
数字(整数)
s
字符串
这些代码还有相应的大写变体:
参数类型代码
参数类型
B
一个可能不存在的编辑缓冲区的名字
F
一个可能不存在的文件的名字
N
如果命令在调用时带有一个前缀参数,按前缀参数指示的情况办理;否则就是数字
S
符号
表13-2:LISP语言的基础函数
算术运算
+、 -、 *、 /(加、减、乘、除)
% (求余数)
1+ (递增)
1- (递减)
max(最大值)、 min(最小值)
比较运算
>、 <、 >=、 <=(大于、小于、不小于、不大于)
/= (不等于)
= (等于,用于数字和字符)
equal(等于,用于字符串和其他复杂的数据对象)
逻辑运算
and(与)、or(或)、not(非)
表13-3:ANSI方向键输出的字符代码
箭头键
字符代码
上
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
把一个数值参数转换为一个字符串
把一个字符串转换为一个数字(整数或浮点数)
把一个字符数字转换为一个字符串
把任意个数的字符串合并到一起
给定一个字符串及两个整数索引start和end,返回从start指示的位置开始到end指示的位置前结束的子字符串。下标从0开始计算。比如说,函数“(substring “appropriate” 2 5)”将返回子字符串“pro”
数组索引函数,它可以用来从字符串里取出单个的字符;它的输入参数是一个整数,从函数返回的是一个以整数表示的字符,返回值(在大多数机器上)使用的是ASCII码。比如说,函数“aref “appropriate” 3”将返回数字“114”,即字母“r”的ASCII码
表13-5:正则表达式基本操作符
Emacs操作符
UNIX shell操作符
作用
.
?
匹配任意一个字符
.*
*
匹配任意一个字符串
[abc]
[abc]
匹配字母a、b或c
[a-z]
[a-z]
匹配任意一个小写字母
表13-6:正则表达式操作符速查表
操作符
作用
.
匹配任意一个字符
*
匹配其前面的字符或字符组出现零次或更多次的情况
+
匹配其前面的字符或字符组出现一次或更多次的情况
?
匹配其前面的字符或字符组出现零次或一多次的情况
[...]
字符的集合,参见下面的说明
\\(
开始一个字符组
\\)
结束一个字符组
\\|
匹配“\\|”前、后的子表达式
^
如果出现在正则表达式的开始,匹配文本行首或字符串的开始
$
如果出现在正则表达式的末尾,匹配文本行首或字符串的末尾
\n
在正则表达式里匹配换行符LINEFEED
\t
在正则表达式里匹配制表符TAB
\\<
匹配单词的开始
\\>
匹配单词的结尾
下面的操作符出现在字符集里时的含义:
操作符
作用
^
如果出现在字符集的开始,则该字符集将被用做不匹配字符集
- (dash)
用来设定字符范围
下面的操作符出现在regexp替换字符串里时的含义:
操作符
作用
\\n
替换第N个“\\(”和“\\)”之间的部分匹配,从左归组操作符“\\(”向右编号,编号从1开始
第十四章 Emacs编辑器和X窗口系统
表14-1:Emacs的窗格操作命令速查表
键盘操作
命令名称
动作
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-1:VC命令速查表
键盘操作
命令名称
动作
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-2:Ediff命令速查表
键盘操作
命令名称
动作
Space或n
ediff-next-difference
移动到该文件下一个修改过的地方
Del或p
ediff-previous-difference
移动到该文件上一个修改过的地方
j
ediff-jump-to-difference
转到前缀数字参数所指定差异的地方
v或C-v
ediff-scroll-vertically
两个编辑缓冲区均向前移动一页
V或M-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 a或r b
ediff-restore-diff
恢复编辑缓冲区A(或B)从另一缓冲区复制之前的状态
A或B
ediff-toggle-read-only
对指定编辑缓冲区切换到(或退出)只读模式
g a或g b
ediff-jump-to-difference-at-point
在最近(当前光标位置)差异的地方与指定的编辑缓冲区进行比较,并将光标移动到有差异的地方
C-l
ediff-recenter
恢复比较显示,使所有编辑缓冲区被比较突出的地方是高亮的;如果你做别的东西,并要回去之前的光标位置的时候比较有用
!
ediff-update-diffs
重新计算并显示突出显示的区域;当手动且对编辑缓冲区有很大的修改时比较有用.
w a或w 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-2:apropos命令
键盘操作
命令名称
回答的问题
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,并由本人翻译整理而得。
- 学习GNU Emacs命令速查表(四)
- 学习GNU Emacs命令速查表(四)
- 学习GNU Emacs命令速查表(一)
- 学习GNU Emacs命令速查表(二)
- 学习GNU Emacs命令速查表(三)
- 学习GNU Emacs命令速查表(五)
- 学习GNU Emacs命令速查表(一)
- 学习GNU Emacs命令速查表(二)
- 学习GNU Emacs命令速查表(三)
- 学习GNU Emacs命令速查表(五)
- GNU Emacs 命令列表
- Emacs编辑命令速查表1【摘自Learning Gnu Emacs】
- emacs学习(四)
- Emacs 学习(四)
- GNU emacs学习资料
- GNU Emacs Lisp编程入门(学习笔记1)
- Emacs编辑命令速查2【摘自Learning Gnu Emacs】
- Emacs编辑命令速查3【摘自Learning Gnu Emacs 】
- 命令行程序
- AC自动机+数据结构 阿狸的打字机
- 学习GNU Emacs命令速查表(三)
- (3) — ARC之前世今生 转自易飞扬
- 工作中遇到的问题解决办法
- 学习GNU Emacs命令速查表(四)
- 黑马程序员_java基础学习日记
- 学习GNU Emacs命令速查表(五)
- 客户端检测-读书笔记三
- 《大道至简》读书笔记
- 《编程高手箴言》读书笔记
- source insight如何删除已加载的project, remove project,移除project,移除工程 出错,删除工程列表
- windows命令行下杀死进程的方法
- 13-01-27-->12