vim使用

来源:互联网 发布:bodymovin插件 mac 编辑:程序博客网 时间:2024/06/06 14:17

 ~1.搜索 /字符 表示从光标往下开始搜索字符; ?字符 表示从光标往上开始搜索字符-----》如果要重复执行命令,即是多次搜索,按字母n继续命令,n表示重复执行。

 ~2、替换 :x1,x2s/字符1/字符2/g 在x1 x2行间把字符1替换为字符2 -----》 :1,$s/字符1/字符2/gc表示从第一行到末尾把字符1替换为字符2,并且带有确认提示。

 ~3、删除 dd 删除游标所在的一行 数字+x 删除游标所在行后数字个字符-----》数字+dd删除光标下面数字行的内容。

 ~4、复制黏贴 yy 复制光标所在的行-----》数字+yy 复制光标及以下多少行;  p 从光标下一行开始黏贴复制的内容。

 ~5、还原操作 u ;重做 ctrl+r  都可以重复操作,就相当于不停的上一步,上一步。

  6、vim的操作指令比较多,推荐知道上面的常用指令,配合插入模式,即可完成常规的操作。

  上面说到了一些操作,这里补充一下:指令模式的几个常用操作

 :set nu 在文本中显示行号

 :! command 暂时退出vim,相当于win下面的“最小化”咯

 :w name 另存为name

 :na,nb w name 把na nb的内容合并起来,再另存为name

 二、vim中级阶段

  好了,第一个阶段练习一下,应该对一般的操作很熟悉了,不熟悉的话适当回顾就好。当然也会发现一些操作不方便,可能达不到你自己的目的,下面再说几个中级点的操作。

  1、区块复制操作

  前一部分大多是针对一行一行来操作的,区块操作更加方便,一般模式下,按下ctr+v,你会看到光标划过的地方会反白,表明你已经勾选的相应内容,试试多用方向键,你会发现这个东西非常有用,按下y复制,p黏贴。

vim没有word那么智能,可以自动排版,所以说在区块选择中你选中的是什么样子,黏贴以后也会是什么样子,这个虽然简单,但是对版面整洁来说非常有用。

  2、多文件操作

  这个的主要作用是把A文件的内容复制到B文件里面去,当然,你可以开2个vim,通过鼠标选取复制,不过那样太吧不犀利了........

  首先vim file1 file2打开两个文件(记得目录),然后:files查看自己的编译的文件。然后 :N 编译上一个文件, :n 编辑下一个文件,然后你只需要按照前面的操作方式复制file1的东西,再切换到file2,最后p就OK啦!

  Linux-vim教程(学习心得体会)

  3、多窗口操作

  这个主要是用来进行数据的对照,在一个vim下,输入:sp file2,会有多窗口显示,相当于并行的vim了。你可以在一个窗口同时编辑两个文件,文件间的切换使用ctrl+w+↑或者ctrl+w+↓就OK了~到这里,你会发现vim太强大了,鄙视word了........

  Linux-vim教程(学习心得体会)

  4.vim的保护功能

  在你编辑一个文件的时候,当前目录下会产生一个name.swp的临时文件,出现异常情况以后,下次vim该文件时候,会出现提示,按照提示进行恢复,重编辑即可。

  5.vim的配置文件

  vim的配置文件有两个:/etc/.vimrc(全局设置)和~/.vimrc(用户设置),前一个文件建议不修改,后一个文件默认不存在,新建一个(vim ~/.vimrc)就OK。

  :set all可以查看当前的环境配置,设定太多,举例几个,参考鸟哥的教程。

  vim环境设置参数:(在上面的~/.vimrc里按需添加以下设定信息,前面的冒号可以不要)

  :set nu :set nonu #设定显示行号 
  :set hlsearch :set nohlsearch hlsearch #就是 high light search(高亮度搜寻)。 这个就是设定是否将搜寻的字符串反白癿设定值。默讣值是 hlsearch
  :set autoindent :set noautoindent #是否自动缩排

  :set backup #是否自动储存备份档。一般是 nobackup 的, 如果设定 backup 的话,编辑一个文件的话,原文件会在当前目录下被另存为。
  :set ruler #显示状态说明信息

  :set showmode # 显示状态信息(如显示insert等等)

  :syntax on  :syntax off #程序语法颜色标识

  :set bg=dark  :set bg=light #设定注释颜色,觉得蓝色不容易看换成dark就好了 

  最后,这个阶段的学习用下面的图总结一下~ 

Linux-vim教程(学习心得体会)
  三、vim高级阶段

   1、程序的折叠

   程序折叠,如下面的图示,

    +-----------------------------------+

        | 行 1                                   |

        | 行 2                                   |

        | 行 3                                   |

        |_______________________ |

         \                                          \

          \________________________\

          / 被折叠的行                         /

        /________________________/

        | 行 12                                 |

        | 行 13                                 |

        | 行 14                                 |

        +-----------------------------------+

   设置~/.vimrc,添加set fdm=....

   manual      手动建立折叠。

   indent      相同缩进距离的行构成折叠。

   expr        'foldexpr' 给出每行的折叠级别。

   marker      标志用于指定折叠。

   syntax      语法高亮项目指定折叠。

   diff        没有改变的文本构成折叠。

   保存退出,使用了indent方式,vim会自动的对大括号的中间部分进行折叠,我们可以直接使用这些现成的折叠成果。非常便于读代码呀。如下:

   Linux-vim教程(学习心得体会)
   光标移动到白色的地方,zo打开折叠,zc收起折叠。zj移动到下一个折叠处,zk移动到上一个折叠处。

   Linux-vim教程(学习心得体会)

   使用marker方式时,需要用标计来标识代码的折叠,系统默认是{{{和}}},最好不要改动。我们可以使用下面的命令来创建和删除折叠:
   zf  创建折叠,比如在marker方式下: zf56G,创建从当前行起到56行的代码折叠;10zf或10zf+或zf10↓,创建从当前行起到后10行的代码折叠。10zf-或zf10↑,创建从当前行起到之前10行的代码折叠。在括号处zf%,创建从当前行起到对应的匹配的括号上去((),{},[],<>等)。
   zd  删除 (delete) 在光标下的折叠。仅当 ‘foldmethod’ 设为 “manual” 或 “marker” 时有效。
   zD  循环删除 (Delete) 光标下的折叠,即嵌套删除折叠。
       仅当 ‘foldmethod’ 设为 “manual” 或 “marker” 时有效。
   zE  除去 (Eliminate) 窗口里“所有”的折叠。
       仅当 ‘foldmethod’ 设为 “manual” 或 “marker” 时有效。
 

  2、程序的跳转

  跳转主要是用于看很长代码时候的一个书签功能,操作方法是,在你需要的地方按下ma做上一个名字为a的标签,之后,在任何时候,你想要跳回这个a标签处,直接按`a就可以了(注意`a是键盘数字1左边那个键+标签名)。当然,标签名可以是ma,mb,mc等等。实际操作一下吧。

    基本操作就介绍到这哈~~~以后有时间了再补充吧,上面的操作足够熟练用了哈~

原创粉丝点击