6、vim编辑器:
    1、工作模式:
    命令模式:vim进入文件,或ESC键。输入ZZ退出
    输入模式:命令模式输入i、a、o
    编辑模式:命令模式时输入冒号,回车键结束
    2、命令模式:
    (1)方向键上下左右,或k(上)、j(下)、h(左)、l(右)
    (2)以单词为单位移动光标:
    w/W:光标移动到下一个单词的词首
    b/B:光标移动到上一个单词的词首
    e/E:光标移动到下一个单词的词尾
    nw/nW:n为数字,光标向右移动n个单词
    nb/nB:n为数字,光标向左移动n个单词
    (3)光标移动到行首或行尾:
    0或^:光标移动当当前行的行首
    $:光标移动到当前和的行尾
    n$:光标移动到当前行之后n行的行尾,n为数字(包括当前行)
    (4)光标移动到指定字符:
    fx:光标移动到当前行中下一个x字符处
    Fx:光标移动到当前行中上一个x字符处
    (5)光标移动到指定行:
    gg:光标移动到文件开头
    G:光标移动到文件末尾
    nG:光标移动到第n行
    :n:光标移动到指定行的行首
    (6)光标移动到匹配的括号处
    将光标移动到”{“或”}”处,使用”%”
    3、输入模式:
    插入命令功能:
    i:当前光标所在位置插入
    a:光标所在位置之后插入
    I:光标所在行行首插入(本行第一个字符之前,如果行首有空白字符,则在空白字符之后的第一个字符之前插入)
    A:光标所在行的行尾插入。相当于光标移动到行尾执行a
    o:光标所在行下面插入新的一行。光标停留在新行的行首
    O:光标所在行上面插入新的一行。光标停留在新行的行首

    4、编辑模式:
    用于对文件种的内容执行保存、查找、或替换等操作
    5、快捷方式:
    vim filename:打开或新建文件,并将光标停留在第一行行首
    vim + file :打开文件,并将光标停留在最后一行行首
    vim +n file :打开文件,光标停留在第n行行首
    vim +/pattern file:打开文件,光标停留在第一个与pattern匹配的位置
    vim -r file :恢复上次vim打开时崩溃的文件
    vim -R file :把指定的文件以只读方式打开到vim中
    vim -c command file:在对文件进行编辑前,先执行指定的命令
    6、查找文本:
    /abc:从光标所在位置向前查找字符串abc
    ?abc:从光标所在位置,向后查找字符串abc
    /^abc:查找以abc开头的行
    /abc&:查找以abc结尾的行
    n:向同一方向重复上次的查找指令
    N:向反方向重复上次的查找指令
    如果字符串种有特殊符号,需要加转移符号”\”,如查找”10$”,”/10\$”
    7、替换文本:
    r:替换光标所在位置的字符
    R:从光标位置开始替换字符,输入内容会覆盖掉后面等长的文本内容,ESC结束
    :s/a1/a2/g:当前光标所在行中的所有a1用a2替换
    :s/a1/a2/:替换当前行第1个a1为a2
    :n1,n2 s/a1/a2/g:将文件中n1到n2行中所有的a1都用a2替换
    :1,$ s/a1/a2/g:替换文件中所有的a1为a2

    :% s/a1/a2/:替换每行第一个a1为a2
    :% s/a1/a2/g:替换所有的a1为a2
    8、删除文本:
    x:删除光标所在位置的字符
    dd:删除光标所在行
    ndd:删除当前行和后n行(包括本行)
    dG:删除光标所在行到文件末尾所有内容
    D:删除光标位置到行尾的内容
    :3,5 d:从第3行到第5行的内容(包含3、5)
    (并非真正删除,存放于剪贴板种,将光标移动到指定位置,按”p”,执行粘贴.只保留最后一次删除的内容)
    9、复制粘贴:
    p:粘贴文本到光标位置之后
    P:粘贴文本到光标位置之前
    yy:将光标所在行复制到剪贴板,此命令前可以加数字2yy,可复制多行
    yw:将光标位置的单词复制到剪贴板
    10、其他快捷键:
    合并行:J
    撤销操作:u

    11、保存退出:
    :wq:保存退出
    :wq!:强制保存退出
    :q:不保存退出
    :q!:强制退出不保存
    :w:保存不退出vim
    :w!:强制保存不退出vim
    :w filename:另存到filename文件
    :x!:保存并退出。同:wq
    ZZ:直接退出vim

    12、功能命令:
    (默认.vimrc文件不存在,手动建立。vim ~/.vimrc 当前用户编辑vimrc文件.添加”set nu”,默认打开vim编辑器可自动显示行号)
    :set all:查看所有的设置参数
    :set nu:显示行号(set number也可以)
    :set nonu:不显示行号
    :set ic:忽略大小写
    :set noic:不忽略大小写
    :syn on:根据语法显示相关的颜色帮助
    :syn off:关闭语法颜色帮助
    :set hlsearch:查找的字符串高亮显示
    :set nohlsearch:
    :set backup:自动备份文件(“文件名〜”的备份文件)
    :set nobackup:(不备份)

    :set ruler:显示右下角的状态栏
    :set noruler:
    :set showmode:是否在左下角显示如”-INSERT—“之类的状态栏
    :set noshowmode:
    :set fileecodings=utf8:vim写入文件采用的编码
    :set termencoding=utf8:输出到终端时采用的编码
    :set encoding=utf8:缓存文本、寄存器、vim脚本文件编码设置
    :set autoindent:设置自动缩进
    :set tabstop=4:设置Tab键宽度为4个空格
    :set cursorline:突出显示当前行
    vim默认不启用鼠标,此设置可启用鼠标
    :set mouse=a
    :set selection=exclusive
    :set selectmode=mouse,key
    13、多窗口:
    (1)执行命令:vim -0 file1 file2 (上下切分窗口)
    (2)vim打开第一个文件,终端输入命令”:sp file2”上写切分窗口,回车;左右:切分窗口”:vs/file”
    (3)切换到另一个文件窗口,Ctrl+WW
    (4)将一个文件的内容全部复制到另一个文件中,执行”:r 被复制的文件名”
    14、批量注释和自定义注释快捷键:
    :1,10s/^/#/g:第1~10行行首加注释.”^”为行首,”g”执行替换不询问确认,希望确认将’g’替换为’c’
    :1,10s/^#//g:取消连续行的注释(将行首的#替换为空)
    添加”//“,:1,10s/^/\/\//g
    自定义快捷键::map 快捷键 执行命令
    将快捷键命令保存在.vimrc文件中,每次使用vim时自动调用