做为开发者,有两个顶级编辑器,即便你不用,你也必定要知道它们是什么——
·编辑器之神——Vim
·神的编辑器——Emacs
因此本文就来介绍vim
以及它的经常使用命令,Vim
是从vi
发展出来的一个文本编辑器。代码补全、编译及错误跳转等方便编程的功能特别丰富,在程序员中被普遍使用vim
键盘图中文版:
tips:在linux
环境下,能够在命令行输入vimtutor
命令学习使用vim
,固然前提是你安装上了vim
linux
共有三种模式,分别是命令模式、插入模式和底线命令模式.这三种模式的做用分别是:
命令模式:
用户刚刚启动vim
编辑文件时,便进入了命令模式
此状态下敲击键盘动做会被Vim
识别为命令,而非输入字符
输入模式:
在命令模式下按下i、a、o
就进入了输入模式
在输入模式中,能够使用如下按键:程序员
字符按键以及Shift组合 //输入字符 Enter //换行 Back Space //删除光标前一个字符 Del //删除光标后一个字符 方向键 //在文本中移动光标 Home/End //移动光标到行首/行尾 Page Up/Page Down //上/下翻页 Insert //切换光标为输入/替换模式,光标将变成竖线/下划线 Esc //退出输入模式,切换到命令模式
底线命令模式:
在命令模式下按下:
就进入了底线命令模式
按Esc
键退出底线命令模式
简单的说,能够用下图来更直观展现:编程
i //光标前插入 I //光标所在行首插入 o //光标所在行下面新建一行 O //光标所在行上面新建一行 a //光标后插入 A //光标所在行尾部插入
/search_str //向光标之下查找值为search_str的字符串 ?search_str //向光标之上查找值为search_str的字符串 n //重复前一个搜寻的动做 N //反向进行前一个搜寻动做
%s/old/new/ //用old替换new,替换全部行的第一个匹配 %s/old/new/g //用old替换new,替换整个文件的全部匹配,g表示全局 s/old/new/ //用old替换new,替换当前行的第一个匹配 s/old/new/g //用old替换new,替换当前行全部匹配,g表示全局
x,X //x为向后删除一个字符,X为向前删除一个字符 nx //连续向后删除n个字符 dd //删除光标所在行(经常使用) ndd //删除光标所在行开始n行 d1G //删除光标所在行到第一行 dG //删除光标所在行到尾行 yy //拷贝光标所在行(经常使用) nyy //拷贝光标所在行开始n行 d1G //拷贝光标所在行到第一行 dG //拷贝光标所在行到尾行 p,P //p为将已复制的内容粘贴在光标下一行,P则为粘贴在光标上一行 u //复原前一个工做 ctrl+r //重作上一个动做 . //重复前一个动做
:set nu //显示行号 :set nonu //隐藏行号