VIM配置技巧

来源:互联网 发布:达内 数据雪球 编辑:程序博客网 时间:2024/06/08 20:02

1,如何去除dos文件拷贝到unix系统下每行的^M结尾
用vi编辑该文件,输入vi命令: 
∶%s/^V^M//g 
如果在unix shell下,则输入命令: 
% sed 's/^V^M//g' foo >; foo.new 
注意: ^V 是 ctrl + V , ^M 是 ctrl + M 或 Enter

2,vim的列模式
在命令模式下,按v(or V)可进入可视模式,但是只能按行选择。要进入列模式,使用ctrl+v。

3,vim具有的fold功能,可以把相连的某些行折叠起来,在需要的时候展开。
选中要折叠的行,zf命令创建一个fold并折叠起来,zr命令展开。z打头的很多命令都和fold操作有关,具体请:help z

4,假设你在编辑一篇html文件,可以使用如下命令对它进行排版:
:%!tidy -iq
tidy是一个html/xml格式化工具,同时还具有查错和转换功能。

5,使用y命令在vim中复制的时候,可以保存在a-z26个寄存器中,其实还有两个寄存器可以使用:*和+,放置在*寄存器中的文字 ("*yy),可以通过鼠标中健粘贴到其它程序中,比如mozilla,+号寄存器中的文字("+yy),通过右健菜单中的paste粘贴出来。反之亦然。

6,在/etc/vimrc文件中加入一行就可以打开所有的编码的文件了(暗爽):

set fileencodings=ucs-bom,utf-8,cp936,big5,euc-jp,euc-kr,latin1
保存从新起动vim,打开文件 ok了。

7,vim显示行号和语法高亮功能,可以在/etc/vimrc文件中加入:
set number           #打开显示行号的功能 
syntax on           #打开语法高亮的功能

8,鼠标控制和menu,在.vimrc 里面加入:
set mouse=a      #加入鼠标支持 
set wildmenu

9,分屏打开多个文件,可以使用new命令。

10,在不退出vim的情况在多个打开的文件中切换
在/etc/vimrc文件中加入:
if has(”unix”) 
    map ,e :e <C-R>=expand(”%:p:h”) . “/” <CR> 
else 
    map ,e :e <C-R>=expand(”%:p:h”) . “\” <CR> 
endif
保存重新打开 vim,然后用 vim 打开一个源代码文件,在正常模式下输入,e 就会有一个框出来,上面罗列了当前目录下的所有文件,用 tab 建来选择打开那个文件。

11,vim设置自动格式化文本
:set formatoptions=croamq
  :help formatoptions 看帮助;
  t 在文本宽度内,自动换行,对注释行无效;
  c 对于注释,在文本宽度内自动换行,并自动插入注释前导;
  r 在插入模式下,回车后自动插入当前注释前导;
  o 在正常模式下,用o或O插入空行时,自动插入当前注释前导;
  q 允许用"gq"格式化注释。但格式化不改变空行或只带注释前导的行。
  m 对于255以上的多字节字符也进行断行。这对于每个字符就是一个字的亚洲文本特别
    有用。
  n 对于带. ) ] }的数字,如1., 1)等等,自动换行对齐;要求自动缩进选项ai打开。
    例如:1. test
             wraps.
          2. test2...
具体的可以help看帮助

12,自动缩进
是 autoindent,主要是 c 代码等
拷贝粘贴, 就在已经缩进的基础上再缩进,很不美
于是就可以 set noautoindent 解决
或者设置 set paste

13,将注释的字符颜色由蓝色变成青色(亮蓝)
在黑色背景下更容易查看注释,可以将以下命令加入/etc/vimrc文件中。
set background=dark
原创粉丝点击