vim与程序员

天涯浪子 提交于 2019-12-02 15:47:32

所有的 Unix Like 系统都会内建 vi 文书编辑器,其他的文书编辑器则不一定会存在。

但是目前我们使用比较多的是 vim 编辑器。

vim 具有程序编辑的能力,可以主动的以字体颜色辨别语法的正确性,方便程序设计。

什么是 vim?

Vim是从 vi 发展出来的一个文本编辑器。代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

简单的来说, vi 是老式的字处理器,不过功能已经很齐全了,但是还是有可以进步的地方。 vim 则可以说是程序开发者的一项很好用的工具。

vi/vim 的使用

基本上 vi/vim 共分为三种模式,分别是命令模式(Command mode)输入模式(Insert mode)底线命令模式(Last line mode)。 这三种模式的作用分别是:

命令模式:

用户刚刚启动 vi/vim,便进入了命令模式。

此状态下敲击键盘动作会被Vim识别为命令,而非输入字符。比如我们此时按下i,并不会输入一个字符,i被当作了一个命令

移动光标

 1 w(e)  移动光标到下一个单词
 2 b    移动到光标上一个单词
 3 
 4 数字0  移动到本行开头
 5 $    移动光标到本行结尾
 6 
 7 H    移动光标到屏幕首行
 8 M    移动到光标到屏幕的中间一行
 9 L    移动光标到屏幕的尾行
10 gg    移动光标到文档的首行
11 G    移动光标到文档尾行
12 
13 ctrl + f  下一页
14 ctrl + b  上一页
15 
16 `.  移动光标到上一次的修改行

查找

1 /chaoge     在整篇文档中搜索chaoge字符串,向下查找
2 ?chaoge     在整篇文档中搜索chaoge字符串,向上查找
3 
4 *        查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处
5 #        查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处
6 
7 gd        找到光标所在单词匹配的单词,并停留在非注释的第一个匹配上
8 
9 %    找到括号的另一半!!

复制,删除,粘贴

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

数字与命令

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

 输入模式

在命令模式下按下字母i

即可进入输入模式,可以编写代码啦。。。

底线命令模式

在命令模式下输入冒号(英文的:),就进入了底线命令模式,在底线命令模式下可以输入单个或多个字符的命令,常用命令有:

1 :q!     强制退出
2 :wq!    强制写入退出
3 :set nu 显示行号
4 :数字  调到数字那行
5 
6 随时按下esc可以退出底线命令模式

vim工作模式

vim按键

移动光标

 1 移动光标的方法
 2 h 或 向左箭头键(←)    光标向左移动一个字符
 3 j 或 向下箭头键(↓)    光标向下移动一个字符
 4 k 或 向上箭头键(↑)    光标向上移动一个字符
 5 l 或 向右箭头键(→)    光标向右移动一个字符
 6 
 7 向下移动5行      5j
 8 向右移动10字符    10l
 9 
10 n(space)    按下数字n,例如10,然后按下空格,光标会向右移动10个字符

底线命令

1 :! command    暂时离开vim指令模式,执行command的结果
2 例如  :!ip a    临时看一下ip信息,然后可以回到vim
3 
4 :set nu    显示vim行号
5 :set nonu    取消行号

更多nb的vim用法请看菜鸟教程:http://www.runoob.com/linux/linux-vim.html

移动光标

 1 w(e)  移动光标到下一个单词
 2 b    移动到光标上一个单词
 3 
 4 数字0  移动到本行开头
 5 $    移动光标到本行结尾
 6 
 7 H    移动光标到屏幕首行
 8 M    移动到光标到屏幕的中间一行
 9 L    移动光标到屏幕的尾行
10 gg    移动光标到文档的首行
11 G    移动光标到文档尾行
12 
13 ctrl + f  下一页
14 ctrl + b  上一页
15 
16 `.  移动光标到上一次的修改行

查找

1 /chaoge     在整篇文档中搜索chaoge字符串,向下查找
2 ?chaoge     在整篇文档中搜索chaoge字符串,向上查找
3 
4 *        查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处
5 #        查找整个文档,匹配光标所在的所有单词,按下n查找下一处,N上一处
6 
7 gd        找到光标所在单词匹配的单词,并停留在非注释的第一个匹配上
8 
9 %    找到括号的另一半!!

复制,删除,粘贴

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

数字与命令

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

 输入模式

在命令模式下按下字母i

即可进入输入模式,可以编写代码啦。。。

底线命令模式

在命令模式下输入冒号(英文的:),就进入了底线命令模式,在底线命令模式下可以输入单个或多个字符的命令,常用命令有:

1 :q!     强制退出
2 :wq!    强制写入退出
3 :set nu 显示行号
4 :数字  调到数字那行
5 
6 随时按下esc可以退出底线命令模式

vim工作模式

vim按键

移动光标

 1 移动光标的方法
 2 h 或 向左箭头键(←)    光标向左移动一个字符
 3 j 或 向下箭头键(↓)    光标向下移动一个字符
 4 k 或 向上箭头键(↑)    光标向上移动一个字符
 5 l 或 向右箭头键(→)    光标向右移动一个字符
 6 
 7 向下移动5行      5j
 8 向右移动10字符    10l
 9 
10 n(space)    按下数字n,例如10,然后按下空格,光标会向右移动10个字符

底线命令

1 :! command    暂时离开vim指令模式,执行command的结果
2 例如  :!ip a    临时看一下ip信息,然后可以回到vim
3 
4 :set nu    显示vim行号
5 :set nonu    取消行号

更多nb的vim用法请看菜鸟教程:http://www.runoob.com/linux/linux-vim.html

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!