vim基本编辑命令
    1.vim存在三种基本模式:
       

   编辑模式(命令模式),输入模式,末行模式

    2.三种模式的转换方式:
          编辑模式——>输入模式
       

        i:insert,在光标所在处输入
        a:append,在光标所在处后面输入
        o:在当前光标所在行的下方打开一个新行
        I:在当前光标所在行的行首输入
        A:在当前光标所在行的行尾输入
        O:在当前光标所在行的上方打开一个新行

          输入模式——>编辑模式
             

    ESC

               :
          末行模式——>编辑模式
          

     ESC

    3.如何关闭文件,一般在末行模式下进行
     

       :q  退出
       :q! 强制退出
       :wq 保存退出
       :x  保存退出
       :w /PATH/TO/SOMEWHERE 保存至指定的位置
        ZZ 保存退出

    4.如何实现光标跳转(一般在编辑模式下进行)
       

        字符间跳转:h,j,k,l
              #COMMAND :表示跳转有#指定的个数的字符
        单词间跳转:e,b,w
              #COMMAND :有#指定一次跳转的单词数
        行首行尾跳转:^,0,$
        行间移动: #G,G,gg(/G)
        句间移动: ),(
        段落间移动: },{

    5.翻屏操作

        Ctrl+f:向文件尾部翻一屏
        Ctrl+d:向文件尾部翻半屏
        Ctrl+b:向文件首部翻一屏
        Ctrl+u:向文件首部翻半屏

vim在编辑模式下的相关指令
   1.字符编辑

       x:删除光标处的字符
       #x:删除光标处起始的#个字符
       xp:交换光标所在处的字符及其字符的位置

   2.删除命令

      d:删除命令,可结合光标跳转字符实现范围删除
         d$
         d^
         d0
         dW
         db
         de
             #COMMAND
     dd:删除光标所在行
        #dd:多行删除

   3.粘贴命令

     p:缓冲区存的如果是整行,则粘贴当前光标所在行的下方;否则,则粘贴至当前光标所在处的后面
     P:缓冲区存的如果是整行,则粘贴当前光标所在行的上方否则,则粘贴至当前光标所在处的前面

   4.复制命令

     y:复制,工作行为相似于d命令        
     y$        
     y0        
     y^        
     ye        
     yw        
     yb
          #COMMAND
     yy:整行复制         #yy:复制多行

   5.改变命令(c,change)         

      c:修改完成后将自动的由编辑模式进入末行模式
        c$
        c^
        c0
        cb
        cw
        ce
          #COMMAND
      cc:删除并输入新内容

   6.撤销命令

       u(undo):撤销此前的操作
       #u: 撤销指定次数的操作
     撤销此前的撤销
       Ctrl+r
     重复前一个编辑命令
     .

vim在末行模式下的相关指令 (内建的命令行接口)
    1.地址定界:

      :start_pos,end_pos
         #   :具体的第#行         
         #,#:从左侧#表示行起始,到右侧#表示行结尾         
         #,+#:从左侧#表示行起始,加上右侧#表示的行数         
         .   :当前行         
         $   :最后一行         
         %   :全文,相当于1,$         
         /parttern/,/parttern/: 从第一次被pattern1模式匹配到的行开始,一直到第一                                 次被pattern2匹配到的行结束         
         #,/pattern/:         
         /pattern/,$ :

    2.查找

       /PATTERN:从当前光标所在处向文件尾部查找
       ?PATTERN:从当前光标所在处向文件首部查找
              n:与命令同方向
              N:与命令反方向

    3.查找并替换
       s:在末行模式下完成查找替换操作

          s/要查找的内容/替换为的内容/修饰符
          要查找的内容:可使用模式          
          替换为的内容:不能使用模式,但可以使用/1,/2,···等后向引用符号。还可以使用“                      &”引用前面查找时查找到的整个内容,所以用“&”不是替换了,而是添                      加了内容

          修饰符     :

          i:忽略大小写
          g :全局替换,默认情况下,每一行只替换第一次出现的模式
          注:查找替换中的分隔符“/”可以替换为其他字符,例:
             s@@@
             s###

vim多文件模式的相关操指令:

    vim FILE1 FILE2 FILE3...
         :next  下一个
         :prev  前一个
         :first 第一个
         :last  最后一个
         :qall  退出所有
         :wall  保存所有

vim窗口分割模式的相关指令:

    vim -o|-O FILE1 FILE2 ...
          -o : 水平分割         
          -O : 垂直分割
        在窗口间切换:Ctrl+w,Arrow

定制vim的工作特性:
    1.配置文件:永久有效       

          全局:/etc/vimrc
          个人:~/.vimrc

    2.在末行模式下设定工作特性,但仅对当前vim进程有效
         1).行号

          显示:set number,简写为set nu
          取消显示: set nonumber,简写为set nonu

         2).括号匹配:

          匹配:set showmatch,简写为set sm
          取消:set nosm

         3).自动缩进

          启用:set ai
          禁用:set noai

         4).高亮搜索

          启用:set hlsearch
          禁用:set nohlsearch

         5).语法高亮

          启用:syntax on
          禁用:syntax off

         6).忽略字符的大小写

          启用:set ic
          禁用:set noic

         7).获取帮助

          :help              
          :help subject