以前一直将diary建成了dir, 今天才发现应该是个file:
于是一切shedule in emacs 变的很顺利了。。。
calendar/diary/appointment的一些命令: . 跳回当天
o 跳到某一个月(英文单词)
g 这一系列命令表示goto,可以跳到指定的某一天。
g d 跳到某年某月某日
g c 跳到某年某星期的星期几
g C 跳到阴历的某一天
p 这一系列命令表示print,例如p C显示当前的阴历日期
>和< : 日历左右移动一个月
h: 显示指定日期的节日
m: mark diary entries
x: mark holidays
q: exit-calendar
M-x diary 显示当天的diary(不依赖与calendar)
d: 显示指定天的所有diary(calendar中光标所在处的date)
s: 显示整个diary文件
i d: Insert diary entry (如果内容占多行, 接下来的行添加空格或Tab)
i w/m/y: ...(表示每周/月/年的某天都会去做的事情)
i a: insert-anniversary-diary-entry
i b: insert-block-diary-entry
i c: insert-cyclic-diary-entry
M-x appt-add :add appointment
M-x appt-delete :delete appointment
编辑命令:(持续更新中)
1.删除:
- minibuffer删除单词: C-backspace
- backspace :删除一个字符
- C-backspace: 删除光标前的单词
- C-x backspace: 删除光标前一个句子
- M-d: 删除光标后的单词
- M-backspce : 删除光标前的单词
- C-w : 删除光标前的区域
- C-k : 从光标位置删除到行尾
- C-x C-o: 删除光标周围的空白行
2.光标移动:
- M-f 前进一个单词
- M-b 后退一个单词
- C-a 行首
- C-e 行尾
- M-a 句首
- M-e 句尾
- M-{ 上一个段落
- M-} 下一个段落
- M-< 文件头
- M-> 文件尾
3.搜索:
- C-s : 增量式搜索;
- C-s,跳到下一个搜索到的目标
- C-s C-s :开始一次新的搜索
- C-r : 向前搜索
- M-% : 查询替换, (y,每次替换一个匹配。n 不替换 ! 一次全部替换)
4.编辑
- C-x C-w : 文件另存为
- C-spacee : 设置mark; C-@ 是默认命令, 不过有点与输入法冲突
- M-s :center line
M-S :center paragraph
M-x center-region - M-q : fill paragraph (很方便,将光标放到段首,一下就可以整齐地fill整个段落了。)
- 特殊字符: 按 C-x 8 R 可以输入 ® ,按 C-x 8 1 / 2可是输入: ½,等等。 按 C-x 8 C-h 可以得到一份完整的列表。
5. 大小写转换:
- set mark: M-@
- C-x C-l : Convert region to lower case (downcase-region).
- C-x C-u : Convert region to upper case (upcase-region).
- M-l: Convert following word to lower case (downcase-word).
- M-u: Convert following word to upper case (upcase-word).
- M-c: Capitalize the following word (capitalize-word).
6.window操作:
- C-x 0: delete-window
- C-x 1: delete-other-windows
- C-x 2: 垂直分割窗口
- C-x 3: 水平分割窗口
- C-x o: other-window
7. 粘贴
- C-y 从kill-ring中取出第一个元素并粘贴
- C-y M-y (从kill ring取第n个元素, n代表M-y的次数, 其实C-y 'yank' M-y 'yank-pop)
- C-k :剪切一行 //这个相当有用。当然我还定制了一个C-w, 可以copy一行。
8. recover
- 从 #file#中恢复: M-x recover-file file ;;yes ;; C-x C-s
9. mark
- set mark: C-@ (set-mark-command)
- clear mark: 在set mark后再按下C-@就可以clear mark了。
Dired mode- enter : C-x d 或 M-x dired
- d: Flag this file for deletion.
- u: Remove deletion flag on this line.
- x: Delete the files that are flagged for deletion
- #: Flag all auto-save files (files whose names start and end with `#')for deletion
- ~: Flag all backup files (files whose names end with `~') for deletion
- . : Flag excess numeric backup files for deletion.
- % d REGEXP : Flag for deletion all files whose names match the regular
expression REGEXP. - e/v: edit /Visit the file described on the current line
- ^ :Visit the parent directory of the current directory
- + :dired-create-directory
GUD/GDB mode: M-x gdb --annotate=3 test ;;进入gdb
如果没有进入graphical mode可以 M-x gdba 然后输入你要debug的file
C-x : set breakpoint ;;可以直接点击旁边的fringe set/clear 断点
C-c C-l : clear breakpoint
C-c C-s : step(step one line code but stop in function)
C-c C-n : next(step one line code but stepping across function)
C-c C-f : finish function
C-c C-i : stepi(Execute a single machine instruction)
C-c C-r : continue(感觉还是直接按go按钮吧)
C-c C-d : Delete the breakpoint(s) on the current source line
其他:
1. 如果更改了gdb的window 可以用: M-x gdb-restore-windows 恢复
在breakpoint buffer上:
2 Return : gdb-goto-breakpoint (即转到source对应的行)
3.D : gdb-delete-breakpoint
4.Space : Enable/disable the current breakpoint (`gdb-toggle-breakpoint')
5: 可以将鼠标放到一个variable上, 然后点击toolbar上的watch就可以watch a expression了
这是varibale显示在 speedbar中:
return: To expand or contract a complex data type
D : To delete a complex watch expression
space : To edit a variable with a simple data type
6: C-x C-a C-l : refresh a buffer
Programming: 1.Indentation
- C-M-\ : indent-region
- C-q : 在缩进区域中添加tab
- C-x h C-M-\ : indent whole buffer
- M-; : Insert or realign comment on current line;
- C-u M-; : Kill comment on current line (`comment-kill').
- M-j : If you are typing a comment and wish to continue it on another line. Just use it
- M-x comment-region
- M-x uncomment-region
2. Completion:
- M-Tab : complete symbol(based on your own tag table)
- C-u M-Tab : to complete the name of a standard library
3. Delete space
- C-c C-d : Delete the entire block of whitespace following point.
- C-c Backspace: Delete the entire block of whitespace preceding point.
4.Compile:
- M-x compile/recompile
- M-x kill compilation: Kill the running compilation subprocess.
5. Error:
- C-x ` :Visit the locus of the next error message or match. (或M-g n)
- C-u C-x ` :Visit the locus of the previous error message or match.(或M-g p)
6.在写程序的时候查询函数:
- 在c-mode 下可以 C-h S 然后输入你要查询的函数或符号(光标处的为默认),如果在mode下可能会让你输入: symbol help mode, 例如输入c-mode就可以了。。。(这里的查询是info中查询,也可以查询man, 例如 man 3 ioctl)
Ediff: 发现Ediff 很好用,呵呵...
进入Ediff: M-x ediff , 然后输入你要比较的文件就行了命令列表:
- n :ediff-next-difference
- p: ediff-previous-difference
- j: ediff-jump-to-difference(eg: 3 j 表示跳到第三个difference处)
- v or C-v : ediff-scroll-vertically (Move forward one page in both buffers.)
- V or M-v: ediff-scroll-vertically (Move backward one page in both buffers.)
- < or > : move left or right
- |: ediff-toggle-split (以水平或者垂直排列窗口)
- a: ediff-copy-A-to-B
- b: ediff-copy-B-to-A
- r
a or r b:ediff-restore-diff(Restore the current difference in buffer A
(or B) to the way it was before copying from the other buffer.)
- A or B: ediff-toggle-read-only(Switch the specified buffer into (or out of) read-only mode)
- !: ediff-update-diffs(Recalculate and redisplay the highlighted regions)
- w a or w b: ediff-save-buffer(Save the specified buffer to disk.)
- q: ediff-quit (Close the Ediff window and end this comparison session.)
- 其他的用 ? 查看吧
Bookmark: - C-x r m :Set the bookmark for the visited file, at point.
- C-x r l : List all bookmarks (`list-bookmarks').
- M-x bookmark-save : Save all the current bookmark values in the default bookmark file.
- M-x bookmark-delete : delete a bookmark
- o: 在另一个窗口中打开bookmark
d: 标记删除:
x: 执行删除
r: 重命名
u: 取消标记
q: 退出
Help:
- C-h r (read emacs info)
- C-h k (查找对应的key, 可以查看某个key是否被binding, ('describe-key'))
- C-h a (`apropos-command` Display a list of commands whose names match TOPICS)
- C-h c KEY (Given a key sequence KEY, show the name of the command that it
runs (`describe-key-briefly'))
- C-h v (查看某个变量的文档, describe-variable)
- C-h f 查看某个函数的文档。
- C-h l (查看最近的100个命令)
- C-h i (Run Info, the GNU documentation browser (`info'))
- C-h m (Display documentation of the current major mode (`describe-mode'))
- C-h p (Find packages by topic keyword (`finder-by-keyword'))
- C-h w (Show which keys run the command, 'whereis')
- M-x apropos: 用regexp搜索某个命令/函数/变量的文档
Artist-mode:
- 进入: M-x artist-mode
- 点击mouse3(一直找不到我的mouse3,后来发现按下滚轮就可以了...) 中选择你要划什么:
- drawing : 选择你要画什么,Ellipse是椭圆, Filling可以填充
- setting: 输入你要用的符号。比如a,line就可以了用'a'画线了
- C-c C-c 退出artist-mode 进入原来的mode
- 详细的看看
Info mode:- q :Quit Info
- n :Move to the "next" node of this node.
- p :Move to the "previous" node of this node
- u :Move "up" from this node
- l :Move back in history to the last node you were at.
- f :Follow a cross reference. Reads name of reference.
- s :Search through this Info file for specified regexp,and select the node in which the next occurrence is found.
- M-x Info-search-next :Search for another occurrence of regexp from a previous s command.
- M-x info-apropos :Look for a string in the indices of all manuals.
- TAB :Move cursor to next cross-reference or menu item.
- M-TAB :Move cursor to previous cross-reference or menu item.
others- M-x eval-current-buffer
- M-x eval-buffer
- C-c C-e (运行光标所在的语句)
- M-x eval-region (运行所选区域)
- 使更改的.Xdefauts生效: xrdb .Xdefaults
- M-x byte-compile-file (编译elisp文件)
emacs 的加速启动:- emacs -q 不加载配置文件启动
- emacs -Q (=
emacs -q --no-site-file --no-splash
), 其中--no-site-file 表示do not load site-start.el, --no-splash 表示do not display a splash screen on startup - emacs -nw 以非 X 方式启动 emacs
- 所以如果要快速编辑文件,就以emacs -Q -nw filename启动. 只是这样你定制的环境都没有了。不过, 这样的速度就跟vi差不多了.
- 另外一种选择是你定制一个简单的配置文件, 然后启动时加载 emacs -q -l .femacs (其中.femacs是你的简单配置文件)
- 我的解决办法是在~/.bashrc中加入alias femacs='sudo emacs -Q -nw', 然后logout一下就可以了。哈哈,尽情享受vi式简单的fast emacs把。
Added:1、Emacs 's repeat:
用来重复执行指令: C-u 3 C-x u (表明重复执行undo三次)
也等于: M-3 C-x u
(其中 C-u 3 = M-3)
C-u 1 0 C-x u (执行undo 10次) = M-1 0 C-x u
2、
阅读(1278) | 评论(0) | 转发(0) |