vim程序编辑器使用总结

VIM程序编辑器

vi与vim

vi:是一种文字处理器

         所有的unix like系统都会内置vi文本编辑器

         很多软件的编辑接口都会主动调用vi

vim:vi的高级版。是一个程序开发工具

         会依据文件的扩展名或者文件内的开头信息判断文件内容,自动调用该程序的语法判断式,用颜色来显示程序代码

vi的使用

三种模式

  一般模式                   搜索与替换、删除字符、删除/复制/粘贴整行

  编辑模式                   编辑文件内容

  命令行模式              即退出VI

一般模式常用按钮

 

光标移动

  G               移动到文件最后一行

  n+G           移动到文件第n行

  n+↑                  上移n行

  n+↓                  下移n行

  [ctrl]+[f]             下翻页

  [ctrl]+[b]            上翻页

  0或[home]                移动到行首

  $或[end]                     移动到行尾

查找与替换

  /word    向下查询word

  ?word    向上查询word

  n    重复前一个查询

  N    反向重复前一个查询

  :n1,n2s/word1/word2/g  在n1与n2行之间,将word1替换为word2,且不询问

  :1,$s/word1/word2/g   从第一行到最后一行,,将word1替换为word2,且不询问

  :1,$s/word1/word2/gc   从第一行到最后一行,,将word1替换为word2,询问

  多行注释  :n1,n2s/^/#/g

行号

  :set nu            显示行号

  :set nonu      不显示行号

一般模式--->编辑模式

  i       在光标所在处插入

  I       在光标所在行第一个非空格符处插入

  a       在光标所在处的下一个字符处插入

  A  在光标所在行的最后一个字符处插入

  o  在光标所行的下一行插入新的一行

  O  在光标所在行的上一行插入新的一行

  r  只会替换光标所在的那个字符一次

  R       一直替换,直到[esc]

一般模式--->命令行模式

  :q!     不保存退出

  :wq     保存退出

  :w[filename]      另存为filename

  :r[filename]      读入filename的文件数据,加到光标所在行后面

  :n1,n2 w [filename]      n1到n2行保存为filename

  :! command     暂时离开vi到命令行模式,并执行command

.swp文件

多人同时编辑

  找到对应人协商

不明原因

  不确定是否有用:Recover   打开.swp文件,自行选择是否保存

  确定无用:Delete

  注:.swp文件不会自动删除,需手动删除

vim的功能

块选择

  v       字符选择,将经过的字符反白选择

  V       行选择,将经过的行反白选择

  [ctrl]+v   块选择,以快的方式选择,如下图

    

 

  y       复制反白区域

  d       删除反白区域

多文件编辑

  前提:

    同时打开多个文件  vi file1 file2

  一般模式下切换文件

    :n      编译下一个文件

    :N      编辑上一个文件

    :files 列出这个vim目前打开的所有文件

多窗口功能

  :sp [filename]        打开新窗口,如果没有filename参数,则两个窗口为同一个文件

  [ctrl]+w+↑          移动到下方的窗口

  [ctrl]+w+↓          移动到上方的窗口

  [ctrl]+w+q        关闭该窗口

  按法:先按[ctrl]和w,然后都松开,再按↑

vim环境设置与记录

  ~/.viminfo     vim会主动将以前的操作记录下来

  :set all       查阅目前的所有环境设置值

  :set          显示自己变动过得参数

  :set nu           显示行号

  :set nonu 

  :set hlsearch     查找的字符串高亮

  :set nohlsearch  

  :set autoindent       自动缩排

  :set noautoindent

  :set backup          自动保存备份文件.默认不自动保存

  :set nobackup

  :set ruler     是否显示右下角的状态说明

  :set noruler 

  :set showmode     是否显示左下角状态说明

  :set backspace=(012) 是否允许退格删除。0/1--删除刚输入的字符,无法删除原本存在的文字;2--可删除任意字符

  :syntax on     根据语法显示颜色

  :syntax off  

  :set bg=dark  设置基本色调

  :set bg=light

其他vim使用注意事项

中文编码

  linux默认支持的语系数据  /etc/sysconfig/i18n

  查看当前bash语系编码     echo %LANG

  修改语系编码              LANG=zh_CN.big5

DOS与Linux的断行字符

  DOS(Windows)中断行字符为^M$,CR与LF

  Linux下只有$,即只有LF

  第一种方法(命令行模式)

    dos2UNIX [-kn] file [new file]

      -k  保留文件原本的mtime(文件内容modification)时间

      -n  保留旧文件,制定新文件

  第二种方法(一般模式)

    :set ff?  查看当前文件编码格式

    :set fileformat=unix

文件语系编码转换

  iconv -f 原本编码 -t 新编码 filename [-o newfile]  

    --list 列出iconv支持的语系数据

       -f      原本的编码

       -t      新编码

       -o      保留旧文件,制定新文件

vim配置IDE

  配置vim成为IDE

posted @ 2017-06-18 20:39  yc紫日  阅读(287)  评论(0编辑  收藏  举报