EmacsNote01

EmacsNote


Table of Contents

1 常用的快捷键
2 C-x b
3 移动窗口大小
4 Bookmark
5 Macros
6 缩进
7 Center
8 Outline-Mode
9 Rectangleset
10 寄存器
11 dired
12 C/C++编辑模式
13 Auctex
14 Org-mode
15 Emacs中插入当前时间:
16 Emacs中为每行插入行号
1 常用的快捷键

C-M \ 缩进每个前面有空格的行
C-x Tab 缩进(前面可以加C-u n)
C-o 光标下增加一个空行
C-M o光标下增加一个空行,光标右边的文字平行下移 
C-x C-o删除光标附近的所有空行
C-^ 光标所在的行与上一行合并
M-\删除光标附近的所有空格
M-spc 删除光标附近的空格,仅剩下一个空格

单词 M-u全部大写
M-l全部小写
M-c首字母大写
区域 C-x C-u
C-x C-l
C-y 可以多次粘贴最后一次kill的内容
C-y M-y可以选择kill-ring里面的内容


C-x C-v打开一个文件取代当前的缓冲区
C-x ESC ESC 结合M-p M-n选择历史命令
2 C-x b

% 标记为只读
d 标记为删除
s 标记为保存 x执行
m 作标记 按v则依次将m标记的在不同的水平窗口中显示出来
1 将当前选中的全屏显示
C-x C-b 打开buffer列表
C-x f 将当前选中的buffer在当前的windows可显示
C-x o 将当前选中的在另一个windows中显示 且光标置于新的windows 上
C-x C-o   将当前选中的在另一个windows中显示 且光标位置不变
3 移动窗口大小

在多个Vertical Windows的情况下:
C-x >  C-x <水平滚动
C-x ^ 竖直方向上扩大窗口
C-x { 缩小窗口
C-x }  扩大窗口
C-x + 使两个窗口恢复大小相同
C-x -使窗口调整到合适的大小 刚好容纳buffer
4 Bookmark

C-x r l 在窗口中列出所有的 Bookmark
C-x r m 设置Bookmark
C-x r b 查找Bookmark
M-x Bookmark-delete 删除
M-x Bookmark-rename 重命名
M-x Bookmark-save 保存对Bookmark的设置
除在Buffer窗口可以用的外还有
w 显示此Bookmark所在文件的路径 理解为way
l 显示此Bookmark是从哪个文件中加载的 理解为load
r 为此Bookmark重命名 理解为Rename
a 仅显示此Bookmark的注释 理解为anotation
A 显示所有Bookmark的注释
e 理解为edit 为此Bookmark添加注释
5 Macros

F3 or C-x ( %开始编辑Macro
F4 or C-x ( %退出编辑Macro
F4 or C-x x %执行最近的一次Macro
C-x C-k e   %开始编辑现存的Macro
{{
C-x e   % 编辑最近的一次Macro

}}
C-x C-k C-d 删掉最近一次Macro
C-x C-k C-p 上一个Macro
C-x C-k C-n 下一个Macro
C-x C-k C-t 交换两个Macro的位置

C-x C-k n 为一个Macro命名 此后便可以用M-x name来执行这个Macro

要想永久性地使用这个Macro
1.可以把它写在.emacs里面,打开.emacs后 M-x insert-kbd-macro
再输入name
2.可以添加如下语句(global-set-key "\C-x\C-kT" 'transpose-names)
3.若上面的语句不在.emacs里面添加也可以,不过要在.emacs里面加上你所写进的文件名
如下:(load-file "~/macros/html.macs")

递归模式
TextA
C-u C-x q 进入递归编辑模式
TextB
C-M c     退出递归编辑模式
TextC
在Macro编辑的时候TextB不算作是Macro的一部分
调用Macro的时候先显示TextA,再等待user输入,user按C-M c退出再显示TextC

Query模式
在想要Query的地方按键C-x q
则当Macro执行到此处的时候将会query
y n enter C-r C-l
y 表示继续
n与enter都停止执行
C-r 进入递归模式 允许user输入自己的text,C-M c退出递归模式 并继续query
C-l 与普通的一样 方便user查看已编辑过的文本

Region编辑
选中region C-x C-k r 则可以对此region的text进行macro操作
注意区别:此时的macro不需要换行,会自动换行
6 缩进

C-x Tab 将选中的Region缩进一个Space
Tab 将选中的Region缩进8个Space
M-m 将Cursor移动到一行的第一个非空字符
C-M o 将Cursor后面的Text另起一行,且位置不变
选中Region M-x 
increase-left-margin 使整个选中的Text左移4个字符
increase-right-margin
decrease-left-margin
decrease-right-margin
7 Center

M-o M-s Center-line 将一行放在该行中间
M-o M-S Center-paragraph 段放在中间
Center-Region 将选中的Region放在中间
8 Outline-Mode

第一等级有一个asterisk 第二等级有两个asterisk ……
此模式下所有快捷键都是以C-c开头的
C-c C-n  移动到该等级的下一个等级
C-c C-p  移动到该等级的上一个等级
C-c C-f  移动到与该等级相同的下一个等级
C-c C-b  移动到与该等级相同的下一个等级
C-c C-u  移到到该等级的上一个等级
C-c C-a  显示所有的Text
C-c C-t  隐藏所有的文本只显示heading
C-c C-q  只显示第一等级
C-c C-^  该等级与同等级的上一个交换位置 包括body
C-c C-v  该等级与同等级的下一个交换位置 包括body
9 Rectangleset

均以C-x r打头
C-x r k  kill
C-x r y  yanking  
C-x r d  delete 删掉
C-x r c  clear 只是清成空白,并不删掉
C-x r o  open rectangle
C-x r r char 将rectangle里的内容粘贴到register r里面 其中寄存器可以用任何character来表示
C-x r i char 将register r里面的内容粘贴到光标所的地方的rectangle里面
C-x r t string 将选中rectangle的第一行都用string替换
10 寄存器

C-x r s copy-to-register region
C-x r r copy-rectangle-to-registe
C-x r space pointer-to-register
C-x r j jump-to-register
C-x r i insert-register 恢复寄存器中的文本
M-x view-register
11 dired

C-x d进入目录操作模式,与C-x C-b操作相似
d标记删除 x执行操作
D立刻删除 v阅读
+新建新建文件 Z解压或者压缩文件
s按日期/文件名排列
C拷贝
R重命名
m标记文件 如果前面有n则标记从光标所在文件的后n个文件
u取消标记 如果前面有n则取消标记从光标所在文件的后n个文件
q退出
12 C/C++编辑模式

M ;   comment line
M-j comment-indent-new-line新起一行并indent,若上行commnet,则下一行也comment.
C-c C-c comment region
C-u C-c C-c uncomment region
M \ delete the whitespace in the head
C-M h mark the function you are in
C-x spc delete the whitespaces but leave one in the head of the line you are in 

C-M-p Move forward over a parenthetical group
C-M-n Move backward over a parenthetical group
C-M-u Move up a parenthesis structure
C-M-d Move down a parenthesis structure

C-c C-q indent the function you are in
C-c C-n move forward across a preprocessor condtional
C-c C-p move backward across a preprocessor condtional
13 Auctex

C-c ret 插入命令
C-c C-m  同上
C-c C-s 插入part chapter section subsection paragraph subparagraph
C-c C-j 或者是 M-ret 插入item
C-c C-e environmet
C-c {   自动补全括号
C-c ]     自动完成环境
C-c ; comment or uncomment region
C-c % comment or uncommentparagraph
C-c C-f C-i italic
C-b bold face
C-s slanted
C-e emph
C-r roman
C-f Sans Serif
C-c Small Cups
C-t Typewriter
字体命令前面加上C-u 就是替换
C-c C-f C-d 删除字体

C-c C-q C-e format environmet
C-s format section
C-p C-p format paragraph
C-r C-rformat region
C-M-a 环境的开始
C-M-e 环境的结束

C-c ` next error
C-c C-r compile region
C-c C-v quick view
14 Org-mode

C-u C-u C-u <TAB> show all
%#+BEGIN_EXAMPLE
  中间的格式不变
%#+END_EXAMPLE
%#+OPTIONS: "\n:t"
  使换行有效
%#+BEGIN_EXAMPLE -t  //-t参数使在出现框里 还可以用-h -w指定高宽
  (defun org-xor (a b)
  "Exclusive or."
  (if a (not b) b))
%#+END_EXAMPLE   
15 Emacs中插入当前时间:

C-u M-! date
16 Emacs中为每行插入行号

C-x h 全选
C-u M-| 对region实行shell command (只有M-|则不会对region有所影响)
cat -n 显示行号
或者
C-u M-!
cat -n filename(你想要显示行号的文件名)
Author: visaya<[email protected]>
Date: 2011-07-24 16:44:17 CST
HTML generated by org-mode 6.33x in emacs 23




Org-mode的源文件。

CSDN的博客怎么回事!!!???



#+ OPTIONS: "\n:t"
EmacsNote
* 常用的快捷键
#+BEGIN_EXAMPLE
  C-M \ 缩进每个前面有空格的行
  C-x Tab 缩进(前面可以加C-u n)
  C-o 光标下增加一个空行
  C-M o光标下增加一个空行,光标右边的文字平行下移 
  C-x C-o删除光标附近的所有空行
  C-^ 光标所在的行与上一行合并
  M-\删除光标附近的所有空格
  M-spc 删除光标附近的空格,仅剩下一个空格


  单词 M-u全部大写
  M-l全部小写
  M-c首字母大写
  区域 C-x C-u
  C-x C-l
  C-y 可以多次粘贴最后一次kill的内容
  C-y M-y可以选择kill-ring里面的内容




  C-x C-v打开一个文件取代当前的缓冲区
  C-x ESC ESC 结合M-p M-n选择历史命令
#+END_EXAMPLE
* C-x b
#+BEGIN_EXAMPLE
  % 标记为只读
  d 标记为删除
  s 标记为保存 x执行
  m 作标记 按v则依次将m标记的在不同的水平窗口中显示出来
  1 将当前选中的全屏显示
  C-x C-b 打开buffer列表
  C-x f 将当前选中的buffer在当前的windows可显示
  C-x o 将当前选中的在另一个windows中显示 且光标置于新的windows 上
  C-x C-o 将当前选中的在另一个windows中显示 且光标位置不变
#+END_EXAMPLE


* 移动窗口大小
#+BEGIN_EXAMPLE
  在多个Vertical Windows的情况下:
  C-x >  C-x <水平滚动
  C-x ^ 竖直方向上扩大窗口
  C-x { 缩小窗口
  C-x }  扩大窗口
  C-x + 使两个窗口恢复大小相同
  C-x -使窗口调整到合适的大小 刚好容纳buffer
#+END_EXAMPLE


* Bookmark
#+BEGIN_EXAMPLE
  C-x r l 在窗口中列出所有的 Bookmark
  C-x r m 设置Bookmark
  C-x r b 查找Bookmark
  M-x Bookmark-delete 删除
  M-x Bookmark-rename 重命名
  M-x Bookmark-save 保存对Bookmark的设置
  除在Buffer窗口可以用的外还有
  w 显示此Bookmark所在文件的路径 理解为way
  l 显示此Bookmark是从哪个文件中加载的 理解为load
  r 为此Bookmark重命名 理解为Rename
  a 仅显示此Bookmark的注释 理解为anotation
  A 显示所有Bookmark的注释
  e 理解为edit 为此Bookmark添加注释
#+END_EXAMPLE
* Macros
#+BEGIN_EXAMPLE
  F3 or C-x ( %开始编辑Macro
  F4 or C-x ( %退出编辑Macro
  F4 or C-x x %执行最近的一次Macro
  C-x C-k e   %开始编辑现存的Macro
  {{
  C-x e   % 编辑最近的一次Macro
  
  }}
  C-x C-k C-d 删掉最近一次Macro
  C-x C-k C-p 上一个Macro
  C-x C-k C-n 下一个Macro
  C-x C-k C-t 交换两个Macro的位置


  C-x C-k n 为一个Macro命名 此后便可以用M-x name来执行这个Macro


  要想永久性地使用这个Macro
  1.可以把它写在.emacs里面,打开.emacs后 M-x insert-kbd-macro
  再输入name
  2.可以添加如下语句(global-set-key "\C-x\C-kT" 'transpose-names)
  3.若上面的语句不在.emacs里面添加也可以,不过要在.emacs里面加上你所写进的文件名
  如下:(load-file "~/macros/html.macs")


  递归模式
  TextA
  C-u C-x q 进入递归编辑模式
  TextB
  C-M c     退出递归编辑模式
  TextC
  在Macro编辑的时候TextB不算作是Macro的一部分
  调用Macro的时候先显示TextA,再等待user输入,user按C-M c退出再显示TextC


  Query模式
  在想要Query的地方按键C-x q
  则当Macro执行到此处的时候将会query
  y n enter C-r C-l
  y 表示继续
  n与enter都停止执行
  C-r 进入递归模式 允许user输入自己的text,C-M c退出递归模式 并继续query
  C-l 与普通的一样 方便user查看已编辑过的文本


  Region编辑
  选中region C-x C-k r 则可以对此region的text进行macro操作
  注意区别:此时的macro不需要换行,会自动换行
#+END_EXAMPLE


* 缩进
#+BEGIN_EXAMPLE
  C-x Tab 将选中的Region缩进一个Space
  Tab 将选中的Region缩进8个Space
  M-m 将Cursor移动到一行的第一个非空字符
  C-M o 将Cursor后面的Text另起一行,且位置不变
  选中Region M-x 
  increase-left-margin 使整个选中的Text左移4个字符
  increase-right-margin
  decrease-left-margin
  decrease-right-margin
#+END_EXAMPLE
* Center
  #+BEGIN_EXAMPLE
  M-o M-s Center-line 将一行放在该行中间
  M-o M-S Center-paragraph 段放在中间
  Center-Region 将选中的Region放在中间
#+END_EXAMPLE
* Outline-Mode
#+BEGIN_EXAMPLE
  第一等级有一个asterisk 第二等级有两个asterisk ……
  此模式下所有快捷键都是以C-c开头的
  C-c C-n  移动到该等级的下一个等级
  C-c C-p  移动到该等级的上一个等级
  C-c C-f  移动到与该等级相同的下一个等级
  C-c C-b  移动到与该等级相同的下一个等级
  C-c C-u  移到到该等级的上一个等级
  C-c C-a  显示所有的Text
  C-c C-t  隐藏所有的文本只显示heading
  C-c C-q  只显示第一等级
  C-c C-^  该等级与同等级的上一个交换位置 包括body
  C-c C-v  该等级与同等级的下一个交换位置 包括body
#+END_EXAMPLE
* Rectangleset
#+BEGIN_EXAMPLE
  均以C-x r打头
  C-x r k  kill
  C-x r y  yanking
  C-x r d  delete 删掉
  C-x r c  clear 只是清成空白,并不删掉
  C-x r o  open rectangle
  C-x r r char 将rectangle里的内容粘贴到register r里面 其中寄存器可以用任何character来表示
  C-x r i char 将register r里面的内容粘贴到光标所的地方的rectangle里面
  C-x r t string 将选中rectangle的第一行都用string替换
#+END_EXAMPLE
* 寄存器
#+BEGIN_EXAMPLE
  C-x r s copy-to-register region
  C-x r r copy-rectangle-to-registe
  C-x r space pointer-to-register
  C-x r j jump-to-register
  C-x r i insert-register 恢复寄存器中的文本
  M-x view-register
#+END_EXAMPLE
* dired
#+BEGIN_EXAMPLE
  C-x d进入目录操作模式,与C-x C-b操作相似
  d标记删除 x执行操作
  D立刻删除 v阅读
  +新建新建文件 Z解压或者压缩文件
  s按日期/文件名排列
  C拷贝
  R重命名
  m标记文件 如果前面有n则标记从光标所在文件的后n个文件
  u取消标记 如果前面有n则取消标记从光标所在文件的后n个文件
  q退出
#+END_EXAMPLE
* C/C++编辑模式
#+BEGIN_EXAMPLE
  M ; comment line
  M-j comment-indent-new-line新起一行并indent,若上行commnet,则下一行也comment.
  C-c C-c comment region
  C-u C-c C-c uncomment region
  M \ delete the whitespace in the head
  C-M h mark the function you are in
  C-x spc delete the whitespaces but leave one in the head of the line you are in 
  
  C-M-p Move forward over a parenthetical group
  C-M-n Move backward over a parenthetical group
  C-M-u Move up a parenthesis structure
  C-M-d Move down a parenthesis structure


  C-c C-q indent the function you are in
  C-c C-n move forward across a preprocessor condtional
  C-c C-p move backward across a preprocessor condtional
#+END_EXAMPLE
  
* Auctex
#+BEGIN_EXAMPLE
  C-c ret 插入命令
  C-c C-m  同上
  C-c C-s 插入part chapter section subsection paragraph subparagraph
  C-c C-j 或者是 M-ret 插入item
  C-c C-e environmet
  C-c {   自动补全括号
  C-c ] 自动完成环境
  C-c ; comment or uncomment region
  C-c % comment or uncommentparagraph
  C-c C-f C-i italic
  C-b bold face
  C-s slanted
  C-e emph
  C-r roman
  C-f Sans Serif
  C-c Small Cups
  C-t Typewriter
  字体命令前面加上C-u 就是替换
  C-c C-f C-d 删除字体


  C-c C-q C-e format environmet
  C-s format section
  C-p C-p format paragraph
  C-r C-rformat region
  C-M-a 环境的开始
  C-M-e 环境的结束


  C-c ` next error
  C-c C-r compile region
  C-c C-v quick view
#+END_EXAMPLE
* Org-mode
#+BEGIN_EXAMPLE
  C-u C-u C-u <TAB> show all
#+END_EXAMPLE
#+BEGIN_EXAMPLE
%#+BEGIN_EXAMPLE
  中间的格式不变
%#+END_EXAMPLE
#+END_EXAMPLE


#+BEGIN_EXAMPLE  
%#+OPTIONS: "\n:t"
  使换行有效
#+END_EXAMPLE


#+BEGIN_EXAMPLE  
%#+BEGIN_EXAMPLE -t  //-t参数使在出现框里 还可以用-h -w指定高宽
  (defun org-xor (a b)
  "Exclusive or."
  (if a (not b) b))
%#+END_EXAMPLE   
#+END_EXAMPLE


* Emacs中插入当前时间:
#+BEGIN_EXAMPLE
  C-u M-! date
#+END_EXAMPLE
* Emacs中为每行插入行号
#+BEGIN_EXAMPLE
  C-x h 全选
  C-u M-| 对region实行shell command (只有M-|则不会对region有所影响)
  cat -n 显示行号
  或者
  C-u M-!
  cat -n filename(你想要显示行号的文件名)
#+END_EXAMPLE
  

你可能感兴趣的:(windows,delete,buffer,emacs,preprocessor,whitespace)