VIM 实用技术

来源:互联网 发布:算法沙特版课后答案 编辑:程序博客网 时间:2024/05/27 01:49

1.1. VIM模式

  • 正常模式(normal):这个模式是vim 默认的模式;不能直接编辑录入信息
  • 命令模式(command):用于执行较长、较复杂的命令;一般输入  : 、 ? 或者s/// 替换 :nG 命令
  • 插入模式(insert):向文本中录入信息  i   a  
  • 选择模式(select):ctrl +v  可以选择模块

1.2 安装VIM包

现在系统默认(缺省)情况下并不一定安装VIM包;这是需要我们自己安装vim 的rpm包:
  • vim-common-7.0.109-7.el5  vim 公用部分
  • vim-minimal-7.0.109-7.el5   vim 最小安装,一般不能体现vim的强大
  • vim-enhanced-7.0.109-7.el5  除了支持图形化界面;其他的全部支持,需要按这三个包

1.3 vim 支持中文

vim 支持多种主要的语言,当然也支持中文,如果你用VIM编辑中文,但中文不能正常显示,那肯定是vim的配置有问题 
    VIM 的多语言支持:一个是文件的语言编码,二是环境的内部编码;在linux上面 常见的情况是环境的内部编码使用UTF-8;而UTF-8可以同任何一种语言做无损耗转换,这就保证了系统的多语言处理能力。VIM 秉承了Linux系统,在内部编码(环境的内部编码)为UTF-8时,可以同时处理不同语言编码的文件。
  • 环境变量 LANG(LANG=C)
  • 环境变量LC_CTYE(环境使用的内部编码)
  • VIM 选项 encoding (VIM 的内部编码)
  • VIM选项 fileencoding(VIM 当前编辑的文件存储时的编码)
  • VIM 选项fileencodings(VIM 打开文件时尝试使用的编码)

1.4 VIM 支持鼠标

   VIM 在文本界面下面也支持鼠标;只需要在 .vrmrc :set mouse=a     --->但是实验不成功

1.5 空格、制表符和缩进

    对于编码来说缩进是一个最常见的概念,可以用VIM的选项来设置:
  • shiftwidth(缩进的空格数)
  • tabstop(制表符的宽度)
  • expandtab(是否在缩进和遇到Tab 时用空格代替,使用 noexpandtab 取消设置)
  • autoindent (自动缩进,即每行的缩进值与上一行相等;使用 noautoindent 取消)
  • cindent(采用 C语言的缩进方式,根据{ } 配对进行缩进)
  • paste(粘帖模式,从剪贴板粘贴代码,保持原来的风格)
  • shiftwidth=4 tabstop=4:很多 Windows 出身的程序员会习惯这样的设置,让缩进等于制表符宽度。

1.6  VIM 自动完成和路径设定

  VIM 支持单词的自动完成,比如在前面使用了一个很长的变量名:aLongVariable  我们在下面用这个变量名时用ctrl +p   可以自动补全变量;如果有多个,就多按几次ctrl +p  进行切换

1.7  .vimrc   .viminfo

  • /etc/vimrc  是一个全局变量;在这个文件设置的vim 选项对所有的用户都起作用;
  • ~username/.vimrc  是针对某个用户 username 设置的vim 选项,只对此用户有效
  • ~username/.viminfo  是针对某个用户来记录此次vim的操作记录:
每次推出VI vim 时,就把一些信息写到.viminfo 中,这样下次打开vim 后直接把一些信息恢复,能节省一下操作。
http://blog.tektea.com/archives/570.html

1.8 VIM常用的小技巧 

  • %  :跳转到与之前匹配的括号处  {}
  • nG
  • n+
  • ctrl +v 

1.9 模式下:set list 会显示所有的特殊字符
原创粉丝点击