VIM

vim菜鸟入门指南

2018-12-23  本文已影响2人  一路不向西

入职有一段时间了,在公司里用的最多的就是Linux服务器开发,所以平时在服务器上做一些编程的话会用到vim,之前也接触过,没有发现过vim的好,现在慢慢接触多了,才发现真的是神器,所以也跟大家分享一下自己的心得。

vim最方便的地方在于可以通过vimrc这个配置文件来设置很多格式或者快捷键。那我们先从最基本的开始看吧:

    1. 打开文件:vim [filename]

        如果文件存在就直接打开,如果文件不存在,它将为你建立一个新文件。Vim编辑程序有三种模式,编辑模式、插入模式和命令模式,按i键进入编辑模式,esc进入命令模式,按下:wq保存并且退出。当完成所有的编辑工作后,需要保存编辑器结果,退出编辑程序回到终端,可以发出ZZ命令,连续按两次大写的Z键。

    2. 编辑模式

         (1):一般模式下的按键说明:

                  h 向左移动

                  j 向下移动

                  k 向上移动

                  l 向右移动

                 CTRL f 向下移动一页

                 CTRL b向上移动一页

                 CTRL d 向下移动半页

                 CTRL u 向上移动半页

          (2) 单行删除,:1(待删除行)d

                    多行删除 ,:1,10d

                    法二:

                    光标所在行,dd

                    光标所在行以下的N行,Ndd

    3.查找模式:/

        符号/后面跟一个字符串,vim将会返回这个词第一次出现的位置,?后面跟一个字符串,vim将会返回这个字符串最后一次出现的位置。按下n查找下一个,按下N查找上一个。 Vim查找支持正则表达式,例如/vim$匹配行尾的"vim"。 需要查找特殊字符需要转义,例如/vim\$匹配"vim$"。

    4.visual模式:v

        按v进入visual状态,按箭头上下可以选择多行,再用>或<缩进或缩出,这里缩进或缩出的距离可以在vimrc文件里设置,详见本文第7条;按d可以剪切,按y复制,按p粘贴。

    5.重载文件命令 :e

        用”:e“命令可以重新载入文件。

    6.替换 :s/待替换词/替换词/g

        命令里的:不可少。g是个参数,使用g的话是将当前行所有的替换,不加g就是只替换一次。用这个命令可以实现替换字符串,比如 ”:/city/dream/g“,就可以将当前行中所有的city替换为dream。补充一点是,当s前面加上%,那也就是替换每行的,比如":%s/city/dream/g"的意思就是将每一行的city替换为dream。

    7.关于缩进:

        缩进用 tab 制表符还是空格,个人爱好问题。但是在大多项目中,习惯使用空格。关于缩进,vim中可以通过如下四个参数进行配置

        set tabstop=4 

        set softtabstop=4 

        set shiftwidth=4 

        set noexpandtab / expandtab

这四个参数的含义分别是:

    tabstop,表示按一个tab之后,显示出来的相当于几个空格,默认的是8个。

    softtabstop,表示在编辑模式的时候按退格键的时候退回缩进的长度。

    shiftwidth,表示每一级缩进的长度,一般设置成跟 softtabstop 一样

    expandtab与noexpandtab,当设置成 expandtab 时,缩进用空格来表示,noexpandtab 则是用制表符表示一个缩进。

    8. 代码自动对齐功能:

       这个常见于从别的地方复制文本到vim里,代码会发生缩进异常。具体操作是,在命令模式下(即非“插入”等编辑模式),先输入gg,这时候光标会移动到第一行第一个字符,然后按 “=” 号之后切换成大写,再按一  下G,这时候光标会移到最后一行的第一个字符,这时候就可以看到代码被排得整整齐齐了!当然这个有时候不一定能奏效,还有另外一种推荐是在 ~/.vimrc 里加入如下内容:

        set clipboard=unnamed或者set clipboard=unnamedplus

然后只需在普通模式下按 p 即可把系统缓冲区中的内容粘帖到 Vim 中,就像粘帖用 yy 命令得到的内容一样,并且格式不错乱。

        如果有错误请大家多多留言指出!!我也会在后续继续积累vim更多的用法,希望跟大家分享!

上一篇下一篇

猜你喜欢

热点阅读