您好,登录后才能下订单哦!
vim 很强大,这个不用多说,下面就直接开撸!这篇东东只是简单说一些简单的使用和技巧,就讲4个内容(帮助,搜索,替换,分屏),都很简单的!
=====================================================================
首先先说说vim 的一些基本知识,vim 有分模式的,
a.Normal mode(普通模式)直接vim FileName 进去之后就是Normal mode,光标可以移动,翻页
b.visual mode(可视模式)按Ctrl+v或者v 就可以进入visual mode了,可以块选(按两次Esc 返回到Normal mode)
c.insert mode(插入模式)按i,o,O,就可以进入insert mode了,就可以编辑file了(按一下Esc 返回到Normal mode)
d.command mode(命令模式)先按Esc,再按:就可以进入命令模式了(按二次Esc 返回到Normal mode,输入完命令按回车就进入Normal mode)
然后再说说配置文件,在linux 下/etc/vim/vimrc(非隐藏文件)==>这个文件对linux 下的所有用户都有效,如果只对当前login用户有效,vim ~/.vimrc 即可!如果不知道你是谁的话,输入whoami 。
=====================================================================
帮助---->Linux 里面必须要学会help yourself
a.Ctrl+]==>跳转到该链接(蓝绿色的就可以跳转),Ctrl+o==>返回上一级,Ctrl+t==>重复该命令的上一个命令(hjkl 上下左右,使用vim,就不要使用键盘上方向键啦!)
b.命令模式下输入:help x ==>查找关于x开头的命令 ; :help number ==>找number 命令的帮助; :help index ==>各个模式下的命令索引
c.各个模式下的命令帮助查找方式如下图(解释一下,不同模式下都有前缀,假如是在visual mode 下,就可以是:help v_u==>在可视模式下把高亮的字母全部变成小写模式,看下面两个图)
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
---------------------------------------------------------------------------
如果英文看不懂,可能参考这个http://vimcdoc.sourceforge.net/doc/help.html
==================================================================
搜索,这个功能也经常用,用得好会高效很多,这里只说简单的使用,高级的使用自己搜搜了!
a.搜索用?或者是/ ,?是在当前位置向前搜索,/是在当前位置向后,n是搜索到内容的下一个,N是上一个,也可以设置搜索到的内容高亮,:set hlsearch,:set nohlsearch,不高亮显示搜索到的内容,当然也可以忽略大小写:set ignorecase 或者:set smartcase,准确查找:set noignorecase
可以直接:help / 或者:help ?或者:help f 来获取帮助
当然也可以记住下面这个表,方便操作
==================================================================
替换这个功能也很强大,用得好会直接删除空行和空格会轻而易举的!
a.格式:[range]s[ubstitute]/{pattern}/{string}/[flags] [count],[]==>表示可以没有,{}==>表示必须要有
b.分解,[range]表示替换范围,没有表示当前行的第一个,eg:"1,20":从第1行到第20行搜索到当前行的第一个,“.":当前行,“$”:文件尾部,“%”:整个文件,等于"1,$",{pattern}表示需要被替换的内容或者是模式,{string}表示要替换的内容,[flags]表示选项,[count]表示需要替换多少行(从当前行开始算),和range差不多1,3s/time/timeAA/g<==>s/time/timeAA/g3(光标要在第一行,这样这两个替换cmd就一样了),“g”:global,全部,当前行的全部或者范围内的全部,“c":逐一确认,"p":打印最后一个替换所在的行,“i":忽略大小写,"e":不显示错误
c.注意:这个格式的的顺序不能错乱,不然解释会错乱,eg:s/time/timeAA/3g(wrong)==>s/time/timeAA/g3
d.例子:把time替换成timeAA
这里面只是举一个例子了,如果想了解更多,那就只能是:help substitute
==================================================================================
分屏:这个功能也是很常用的,尤其是在参考东西的时候
//上下分屏
vim -on file1 file2 //o为小写字母,上下分,n是分屏的个数
或者是:sp file2
//左右分屏
vim -On file1 file2 //O为大写字母,左右分,n是分屏的个数
或者是:vsp file2
//移动光标
ctrl + w k //移动到光标上边的窗口
ctrl + w j //移动到光标下边的窗口
ctrl + w h //移动到光标左边的窗口
ctrl + w l //移动到光标右边的窗口
ctrl + w w //移动到光标下一个窗口
//设置窗口大小
ctrl + w + //增加当前窗口高度(对上下分屏才有用)
ctrl + w - //减少当前窗口高度(对上下分屏才有用)
ctrl + w > //增加当前窗口宽度(对左右分屏才有用)
ctrl + w < //减少当前窗口宽度(对左右分屏才有用)
ctrl + w = //前窗口高度(对上下分屏才有用)
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
上面这个调整窗口大小的这些命令,如果不想用,可以直接:set mouse=a,
直接拖动就好,改动之后关闭mouse 功能就:set mouse="空格",:help mouse 看看就好了
当然也可以用:[vertical]resize [+|-]N N就是表示多少行,+N就是当前窗口添加N行,
-N,就是减N行了,eg:resize +5,当前窗口高度加5行,:vertical resize 90,就是将当前
窗口宽度改成90行,这个用起来也挺方便的啦
//:znr eg:z10r ==>可以关注一下z,z10r 就是表示将当前行到10行显示到另外临时一个窗口上面
//移动分屏
ctrl + w L //将当前窗口移动到右边
ctrl + w H //将当前窗口移动到左边
ctrl + w J //将当前窗口移动到下边
ctrl + w K //将当前窗口移动到上边
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//刚刚上面的那四个命令,用得不太灵。。。有高手的话可以和我说说怎么弄,我一般用下面的命令
ctrl + w r //将当前窗口向右移动一个屏
//当然了假如你分屏了很多个,你可以设置buffers 啦,这个功能就是把当前的窗口编辑内容改
//成你要的那个,应该这个比较好用的,看下面的图:
然后回车之后,输入:buffers 1 或者是:b 1
@@@然后在第一个窗口里面就打开第三个文件了
//对光标所在的窗口进行上下分屏,这个命令不是对每个终端都有效的,假如输入了不行,并且终端假死了,那就ctrl + q ctrl + w s //对光标所在的窗口进行左右分屏,这个命令不是对每个终端都有效的,假如输入了不行,并且终端假死了,那就ctrl + q ctrl + w v //只保留当前窗口 ctrl + w o or : only //新开一个窗口 ctrl + w n or :new //关闭当前窗口 ctrl + w c /*会显示type quit*/ or :q ctrl + w q /*关闭当前窗口并且如果是最后一个就退出vim @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ 这里只是介绍一些基本的使用啦,ctrl +w 这个东西我觉得有些命令不太好用, 还不如直接用命令方便,上面的这些窗口操作已经足够使用,ctrl+w # 可以使用下面这个命令查找一下帮助:help ctrl-w
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。