vim与程序员
所有的Unix Like系统都会内建vi文书编辑器,其他的文书编辑器则不一定会存在.
但是目前我们使用比较多的是vim编辑器.
vim具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计.

1.什么是vim?

Vim是从vi发展出来的一个文本编辑器.代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用.
简单的来说,vi是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方.vim则可以说是程序开发者的一项很好用的工具.

2.vi/vim的使用

用户刚刚启动vi/vim,便进入了命令模式.
此状态下敲击键盘动作会被Vim识别为命令,而非输入字符.比如我们此时按下i,并不会输入一个字符,i被当作了一个命令.

3.移动光标

w(e)  移动光标到下一个单词
b    移动到光标上一个单词

数字0  移动到本行开头
$    移动光标到本行结尾

H    移动光标到屏幕首行
M    移动到光标到屏幕的中间一行
L    移动光标到屏幕的尾行
gg    移动光标到文档的首行
G    移动光标到文档尾行

ctrl + f  下一页
ctrl + b  上一页

`.  移动光标到上一次的修改行

4.查找

/apollo 在整篇文档中搜索chaoge字符串,向下查找
?apollo 在整篇文档中搜索chaoge字符串,向上查找

*  查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处.
#  查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处.

gd 找到光标所在单词匹配的单词,并停留在非注释的第一个匹配上.

% 找到括号的另一半!

5.复制,删除,粘贴

yy    拷贝光标所在行
dd    删除光标所在行
D     删除当前光标到行尾的内容
dG    删除当前行到文档尾部的内容
p     粘贴yy所复制的内容
x   删除光标所在的字符
u     撤销上一步的操作

6.数字与命令

3yy	  拷贝光标所在的3行
5dd	  删除光标所在5行

7.输入模式

在命令模式下按下字母i
即可进入输入模式,可以编写代码啦...

8.底线命令模式

在命令模式下输入冒号(英文的),就进入了底线命令模式,
在底线命令模式下可以输入单个或多个字符的命令,
常用命令有:
:q!     强制退出
:wq!    强制写入退出
:set nu 显示行号
:数字  调到数字那行
# 随时按下esc可以退出底线命令模式

9.vim工作模式

10.vim按键

移动光标的方法
h 或 向左箭头键(←) 光标向左移动一个字符
j 或 向下箭头键(↓) 光标向下移动一个字符
k 或 向上箭头键(↑) 光标向上移动一个字符
l 或 向右箭头键(→) 光标向右移动一个字符

向下移动5行        5j
向右移动10字符     10l

n(space)  按下数字n,例如10,然后按下空格,光标会向右移动10个字符.

11.底线命令

:! command     暂时离开vim指令模式,执行command的结果
例如  :!ip a   临时看一下ip信息,然后可以回到vim

:set nu    显示vim行号
:set nonu   取消行号