技巧

  1. 在当前插入模式下编辑/移动 (真得很有用)
      <C-U> : 删除全部
      <C-W> : 删除最后一个单词
      <HOME><END> : 移动到行首/行尾
      <C-LEFTARROW><C-RIGHTARROW> : 向前/后移动一个单词
      <C-X><C-E>,<C-X><C-Y> : scroll while staying put in insert
    
  2. 把最后一个命令贴到当前位置
      i<c-r>:
      " 把最后一个搜索指令贴到当前位置
      i<c-r>/
    
  3. 统计字数
      visual模式下, 选中要查字数的片段后,按g + C-g
    
  4. 居中光标所在行
      zz / M : 将当前行置于屏幕中间
      zt / H: 将当前行置于屏幕顶端
      zb / L: 将当前行置于屏幕底端
    
  5. 查看命令行历史记录
    q: 或 :_CTRL-F
    q? 或 ?_CTRL-F
    q/ 或 /_CTRL-F
    或通过
    set cedit=<C-Y>
    
  6. 把对象送到命令行或者搜索行
      <C-R><C-W> : 执行当前光标下的单个单词
      <C-R><C-A> : 执行当前光标下尽可能多的单词
      <C-R>- : 送至一个小型寄存器(同样使用于插入模式)
      <C-R>[0-9a-z] : 送至一个命名寄存器 (括弧同上)
      <C-R>% : 送至文件名(#也行) (同上)
      <C-R>=somevar : 送至一个变量 (例如 :let sray="ray[0-9]") 
    
  7. 块缩进
      >i{
      >a{
      " also
      >% and <%
    
  8. VISUAL 模式 (方便增加 HTML 标签)
      vmap sb "zdi<C-R>z<ESC> : 在 VISUALLY模式下将选中的文本前后分别加上
      vmap st "zdi<?= <C-R>z ?><ESC> : 加上 <?= ?>
    
  9. 快捷键
      <C-N><C-P> : 插入模式下自动完成填词
      <C-X><C-L> : 行自动完成(超级有用)
      /<C-R><C-W> : 把单个<cword>单词放入搜索或者命令行
      /<C-R><C-A> : 把字符串中有的单词<CWORD>放入搜索或者命令行
    
  10. 重新选择上一次的选择区和相同的模式
      gv