复制/粘贴

yiw

拷贝光标上的单词(不包括空格)

viwp

用yanked替换单词

viw"0p

用yanked替换另一个单词

ctrl-r +

粘贴来自操作系统粘贴板

窗口 Windows

n Ctrl-<>

通过n增加/减少窗口宽度

n Ctrl-+/-

通过n增加/减少窗口高度

Ctrl-W=

使窗口大小相等

Ctrl-w s/v

水平/垂直分割窗口

Ctrl-w c

关闭窗口

Ctrl-w w

移动到下一个窗口

Ctrl-w hjkl

移动到hj

命令Commands

:%!command

通过命令过滤缓冲区

:w !sudo tee %

即使写保护也保存文件

:%s//<­bar­>/g

利用<ba­r>替换每次出现的最后一个搜索项

:g/pat­tern/d

删除包含模式的行

:v/pat­tern/d

删除不包含模式的行

:n,m ! cmd

通过shell cmd过滤n到m行

:new|r ! cmd

运行cmd,将输出放到新窗口

:set wrap linebreak nolist

设置软封装

:set list

显示空格,制表符,换行符

:set pastet­­oggle

更改为粘贴模式

:nohls­­earch

清除搜索高亮

移动Moving

%

跳到匹配的括号

#

向后搜索

ctrl-O

跳到较旧的地方

n / N

向前/向后搜索

H / M / L

移动到屏幕的顶部/中部/底部

ctrl-d/u

向下/向上移动半屏幕

Ctags / cscope

ctrl-]

跳转到定义

ctrl-w }

显示预览

折叠

zM/zR

折叠/展开缓冲区

zc/zo

折叠/展开段落

zC/zO

折叠/展开段落中的所有级别

:set foldmethod=indent

通过缩进折叠

:set foldmethod=syntax

通过语法折叠

标记Marks

ma

设置本地标记 a

mA

设置全局标记 A

'a

跳到有标记a的行

`a

跳转到带有标记a的位置

My mappings

,cc

注释代码

,co

取消注释代码

,c / ,v

从持久缓冲区复制/粘贴