# vim常用技巧
## 行操作
-----------------------------
- 行首 0
- 行尾 $
- 第一个非空字符 ^
## 列编辑模式
-----------------------------
- windows下Ctrl + q进入可视块
- linux下Ctrl + v进入列编辑模式
- 选中需要操作的部分,Shift + i 进入插入模式
- 输入要插入的字符
- ESC
## 撤销
-----------------------------------------------------
- 撤销 u
- 反撤销 ctrl+r
## 缩进
-----------------------------
- v进入可视模式
- 选择多行,< 左缩进,> 右缩进
## 十六进制
-----------------------------------------------------
:%!xxd ---->切换到十六进制显示
:%!xxd -r ---->切回文本方式显示
## 显示空格
-----------------------------------------------------
- 空格显示黄色的背景色,特别难看。
- 后面用set nohls,取消空格显示
- 取消语法高亮显示 :noh
## 翻页
-----------------------------------------------------
Ctrl + f 向前翻页
ctrl + b 向后翻页
Ctrl + d 向下翻半屏
Ctrl + u 向上翻半屏
## 复制粘贴
-------------------------------------------
- 复制特定的某一段:把光标移到要复制的文本的头部,按下“v”,往后移动光标,光标所过之处的字符>都会高亮,移到欲复制文本的尾部后,按下“y”,高亮文本全部被复制到剪粘板。按下“p”粘贴到目的地。
- 剪切特定的某一段:把光标移到要剪切的文本的头部,按下“v”,往后移动光标,光标所过之处的字符>都会高亮,移到欲剪切文本的尾部后,按下“d”,高亮文本全部被复制到剪粘板。按下“p”粘贴到目的地。
## 查找
-------------------------------------------
- /a4 查找字符
- /00/ a4 有空格用转义符\Space
- n 正向选择
- N 反向选择
## 插入多个空行不进入插入模式
-----------------------------
1. 输入数字(行数)
2. o/O
3. ESC
4. 例如插入3个空行 3 + o + ESC
## 统计字符串出现次数
-----------------------------
:%s/字符串//ng
### 大小写转换
-----------------------------
- ~ 光标处字母大小写转换
- gU 进入可视模式,小写转大写
- gu 进入可视模式,大写转小写
### 行首或行尾添加
-----------------------------
- 行首添加 `:%s/^/要添加的内容`
- 行尾添加 `:%s/$/要添加的内容`
### 全局替换
-----------------------------
- 替换 `:%s/原内容/新内容/g`
#### 批量操作
-----------------------------
- 4yy 复制
- 4dd 删除
- 4gg 移动到第4行
- d} 删除段
### 统计字数
-----------------------------
在visual(可视)模式下,选中要统计的文本,先按g,再按Ctrl+g
### 交换行
-----------------------------
- ddp 交换行
- xp 交换字符
### vim的历史命令窗
-----------------------------
有时候在vim下边会出来另一个窗口,因为在我想退出编辑器时把“:q”敲成了“q:”。号称这个就是vim的命令历史窗口。要退出这个窗口也很简单,直接按回车或者输入“:q”都可以。
### 设置当前行高亮
- 设置 `set cursorline`
- 取消 `set nocursorline`
## 查看输出的错误信息
- `message`
### 推荐
-----------------------------
- [推荐vim配置](http://www.cnblogs.com/jiftle/p/7216282.html)
## 引用
-----------------------------
- [Windows下配置Vim插件管理器](http://www.cnblogs.com/jiftle/p/6918157.html)
- [VIM高效率操作 (转载)](http://www.cnblogs.com/ggjucheng/archive/2011/12/15/2288809.html)
- [vim实用配置(转)](http://www.cnblogs.com/ggjucheng/archive/2011/12/15/2288795.html)