<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Power by Result Search &#187; vim</title>
	<atom:link href="http://www.result-search.com/sty/category/technology/vim/feed" rel="self" type="application/rss+xml" />
	<link>http://www.result-search.com/sty</link>
	<description>Just another weblog</description>
	<lastBuildDate>Wed, 23 Jun 2010 03:12:17 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>vim学习</title>
		<link>http://www.result-search.com/sty/2009/08/30/vim%e5%ad%a6%e4%b9%a0.html</link>
		<comments>http://www.result-search.com/sty/2009/08/30/vim%e5%ad%a6%e4%b9%a0.html#comments</comments>
		<pubDate>Sun, 30 Aug 2009 09:13:42 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vim]]></category>
		<category><![CDATA[一步一步学习中]]></category>

		<guid isPermaLink="false">http://www.yaaahaaa.com/?p=1029</guid>
		<description><![CDATA[/*
* vim 基本使用
*
* 作者: 钱善海 &#60;qianshanhai At hotmail Dot com&#62;
* 创建时间: 2006.03.21
* 最后修改时间: 2007.08.30
*/
1.  什么是 vim
2.  vim 的基本操作
2.1 基本指令
2.2 多文件编辑
2.3 十六进制编辑
2.4 查找
2.5 替换
3.  编辑代码的设置和操作
3.1 ~/.vimrc 配置
3.2 使用 tag
4.  语法高亮
5.  文档
6.  参考文档
VIM 基本使用
1. 什么是 vim
vim 是一款编辑器, 是 Vi IMproved 的缩写. 也即 vi 的扩展版本.
(vi 的扩展版有很多, vim 是其中一种, 应该是最接近 vi 的一个扩展版)
主要作者是 Bram Moolenaar, 他编写了 Vim 的核心功能.
官方主页: www.vim.org , 使用与 GPL 兼容的协议发布, 可以获得(如下载)源代码.
(什么是 GPL ?  请看 [...]]]></description>
			<content:encoded><![CDATA[<p>/*<br />
* vim 基本使用<br />
*<br />
* 作者: 钱善海 &lt;qianshanhai At hotmail Dot com&gt;<br />
* 创建时间: 2006.03.21<br />
* 最后修改时间: 2007.08.30<br />
*/</p>
<p>1.  什么是 vim</p>
<p>2.  vim 的基本操作<br />
2.1 基本指令<br />
2.2 多文件编辑<br />
2.3 十六进制编辑<br />
2.4 查找<br />
2.5 替换</p>
<p>3.  编辑代码的设置和操作<br />
3.1 ~/.vimrc 配置<br />
3.2 使用 tag</p>
<p>4.  语法高亮<br />
5.  文档<br />
6.  参考文档</p>
<p>VIM 基本使用</p>
<p>1. 什么是 vim</p>
<p>vim 是一款编辑器, 是 Vi IMproved 的缩写. 也即 vi 的扩展版本.<br />
(vi 的扩展版有很多, vim 是其中一种, 应该是最接近 vi 的一个扩展版)<br />
主要作者是 Bram Moolenaar, 他编写了 Vim 的核心功能.<br />
官方主页: <a href="http://www.vim.org/" target="_blank">www.vim.org</a> , 使用与 GPL 兼容的协议发布, 可以获得(如下载)源代码.<br />
(什么是 GPL ?  请看 <a href="http://www.gnu.org/copyleft/gpl.html" target="_blank">http://www.gnu.org/copyleft/gpl.html</a> )</p>
<p>那 vi 又是什么呢?  vi 也是一款编辑器, 起源于 1977 年, 作者是 Bill Joy.<br />
vi 即 visual 的意思, 意指可视化编辑器, 非可视化编辑器有如 ed sed 等.</p>
<p>vim 是编辑器, 但更像是一个工具, 使用它可以高效的完成很多事情,<br />
既然是一个工具, 我们就应该先学习再使用, 高效是在有一定的基础之上的.</p>
<p>vim 继承了 Unix 和 vi 的哲学: 简单, 高效.</p>
<p>1.1 使用 vim 的三大理由</p>
<p>a) vim 是用 c 语言写的, 可以移植到几乎任何操作系统<br />
b) vim 是最接近于 vi 的一个扩展版本<br />
c) 语法高亮, 很适合于编写各种代码</p>
<p>2. vim 的基本操作</p>
<p>2.1 基本指令</p>
<p>在 vim 中, 光标的移动是基础, 只有熟练光标的移动才能体会 vim 的高效,<br />
并且, 很多操作都是和光标移动有关的. 另外, 使用 vim 时, 应该只使用<br />
下面这个区域中的按键:</p>
<p>~         &#8230;         &lt;- (即 BackSpace 键)<br />
&#8230;       &#8230;         &#8230;<br />
Ctrl      &#8230;         Ctrl</p>
<p>建议: 每天使用 vim 一个小时熟悉指令, 连续七天即可.</p>
<p>** 下面除了特别说明外, 使用 ^X 表示 Ctrl-X , X 为任意字符.</p>
<p>vim  有六种模式, 为了弄混, 先假定有三种:</p>
<p>a. Normal mode(common mode, c-mode)  称为普通模式<br />
进入 vim 后的就是处于 c-mode , 只能下下按键指令, 不能输入文字.</p>
<p>b. Insert mode(i-mode)  称为编辑模式<br />
按 i 就会进入 i-mode, 此时才可以输入, 按 ^[ 又会回到 c-mode</p>
<p>c. Ed mode(common-line mode, e-mode)   命令行模式<br />
按冒号 :  就会进入 e-mode</p>
<p>e-mode (命令行模式): (简单命令, 复杂的在后面)<br />
:q  退出文件  :q!  强制退出  :w  写入文件  :w!  强制写入   :wq  写入并退出<br />
:w foo  写入文件 foo         :r foo  读入文件 foo</p>
<p>c-mode (普通模式):</p>
<p>进入 i-mode:<br />
i  在光标前编辑    I  在行首编辑    o  在光标所在行下开启新行<br />
a  在光标后编辑    A  在行尾编辑    O  在光标所在行上开启新行<br />
s  删除当前光标所在字符后编辑       S  删除当前行(不包括行前空白)后编辑<br />
s 和 S 并不常用.</p>
<p>光标移动和删除:                       k            H  屏幕左上角非空白处<br />
h  左  j  下  k  上  l  右       h     l         M  屏幕中间非空白处<br />
j            L  屏幕左下角非空白处<br />
w  右移下一个字的开始处,  e  移到所在字的末端  b  移到上一个字开始处<br />
W E B 与上面一样, 不同的是以空白区分字(word)<br />
gg 文件首   G  文件尾  x  删除光标所在字符  X 删除光标前的字符<br />
0  行前        ^  行前非空白处   $  行尾<br />
d  删除指令,与其它指令组合, 如 dw  删除一个字  d0  删至行首<br />
dd 删除当前行     D  删至行尾<br />
** 删除的内容会放到缓冲区, 使用后面的 p 可以粘贴</p>
<p>以上指令可以和数字组合, 如:<br />
50l 表示向后移 50 个单元,   d5w  删除后面 5 个字<br />
dL  删除到屏幕底端          100gg  跳至文件的第 100 行, 或者 100G</p>
<p>另外一些基本操作:<br />
K  查找当前的字的 man 页, 相当于执行 :! man &lt;cword&gt;, 写 C 代码非常有用.<br />
.  重复上一个改变, 这里的改变是插入, 删除或替换操.作<br />
u  撤销<br />
^R 反撤销<br />
%  当光标位于小中大括号时, 移动到小中大括号相对应的左右括号,<br />
J  把一行连接到当前行<br />
=  重新排版指令, 如   =% , =L 等等<br />
&gt;&gt; 向右缩进,   3&gt;&gt;                     ^F  向后翻页<br />
&lt;&lt; 向左缩进                            ^B  向前翻页<br />
zz 使当前位置成为屏幕的中间      [I  显示包含当前字的所有行</p>
<p>标签 mark  --  方便跳来跳去</p>
<p>m   标签指令,  mx  把当前位置标为 x , x 可为 a-zA-Z<br />
'x  跳至标签为 x 所在行的行首非空白处<br />
`x  跳至标签为 x 所在行标签时的位置</p>
<p>选中:</p>
<p>v   按行选中, 以单元为单位<br />
V   按行选中, 以行为单位<br />
ctrl-v  按列选中<br />
v%   vL  v$<br />
选中后可以进行一些操作:<br />
u   转成小写   U  转成大写   y  拷贝  &gt;  向右缩进    &lt;   向左缩进</p>
<p>yank &amp; paste:<br />
y  拷贝指令    p   粘贴指令, 粘贴由 x, X, d, D, y 引起的缓冲区<br />
yy 拷贝当前行  y4j 拷贝当前行和后 4 行<br />
y`a  拷贝至标签 a , 以行为单位<br />
y'a  拷贝至标签 a , 以字符为单位<br />
2p   粘贴 2 次,  xp  对换当前字符和下一字符, ddp 对换当前行和下一行</p>
<p>替换(r):</p>
<p>rx  把当前字符替换为 x, x 为任意字符<br />
R   替换 n 个字符, 直到按 Esc 或 ^[ 为止<br />
例子:  05l^V3jra  把当前行向后开始的 4 行的第 6 列换成 a</p>
<p>查找:</p>
<p>/   向后查找               ?   向前查找<br />
*   向后查找光标所在字     #   向前查找光标所在字<br />
n   下一个                 N   上一个</p>
<p>查找时在 e-mode 下的相关设置:<br />
:set hls   显示查找高亮        :set nohls  取消查找高亮</p>
<p>文件和当前信息:<br />
^G         g^G</p>
<p>记录和重复操作: (这类功能极少用到, 用到时再来查找)<br />
q  记录指令         @   重复操作指令<br />
qx...q   x 为 a-zA-Z , ... 表示一系列的操作, 最后的 q 表示结束这个记录.<br />
@x  重复标签为 x 的记录,  n@x  表示重复 n 次.</p>
<p>两类指令:<br />
1.  与区域无关, 像 h, j, k, l ^F ^B 这些基本的光标移动指令和 m 等等<br />
2.  与区域有关:<br />
a)  d  y  =<br />
这一类的操作与当前光标和最后的光标有关, 所以称做与区域有关,<br />
如 dG 将删到文件尾, 当然是从当前位置开始的了,<br />
又如  d%  =100j yL , 并且这几个指令在选中块之后也能使用<br />
b)  &gt; &lt; u U  指令在选中块之后使用</p>
<p>折叠:<br />
zf  后加上移动指令, 就能折叠这个区域, 如 zf%  zfG  等等,<br />
通常在看代码时使用. 对着折叠的行按 0 展开.</p>
<p>快速移动:<br />
a.  ^F ^B w W  %  30j 等<br />
b.  /  ?<br />
c.  fo  移到行中第一个字符 o 的位置</p>
<p>列编辑:<br />
a. ^V3jISTRING^[    在选中的三列插入 STRING<br />
b. ^V3j$ASTRING^[   在选中的三列的行尾添加 STRING<br />
c.  请看 :h  中的 visual.txt</p>
<p>大小写:<br />
~  大小写互换  g~~  把该行的大小写互换<br />
guu  把当前行换成小写     gUU  把当前行换成大写   gUw  ??</p>
<p>更多的删除和变换见 :h 中的 change.txt</p>
<p>i-mode (编辑模式):</p>
<p>^P  自动补全,或 ^N        ^[   进入 c-mode 模式</p>
<p>2.2 多文件编辑</p>
<p>a. 命令行<br />
$ vim file1 file2</p>
<p>:n 下一个文件,  :N 上一个文件<br />
:first  第一个文件    :last 最后一个文件</p>
<p>b. e-mode<br />
:sp foo  打开文件 foo      :vsp foo     :res +10  增加窗口高度</p>
<p>^WW  切换文件   ^Wj   ^Wk</p>
<p>编辑包括所有 word 的文件:<br />
$ vim `grep -l word */*.c`</p>
<p>在 vim 7.0 后的版本, 还可以使用多 Tab 的模式编辑, 例如:</p>
<p>:tabedit file2.cpp</p>
<p>或者在命令行加上 -p 使用:</p>
<p>$ vim -p  *.cpp</p>
<p>全部退出:</p>
<p>:qa</p>
<p>2.3  16 进制编辑</p>
<p>vim 本身不支持 16 进制编辑, 也建议不要使用 vim 进行十六进制编辑,<br />
但偶尔想简单编辑时, 可以通过外部命令 xxd 来编辑:</p>
<p>:% !xxd   编辑     :% !xxd -r   恢复</p>
<p>2.4  查找</p>
<p>默认情况下查找是大小写敏感的, 可以  :set ignorecase 使之忽略大小写,<br />
执行  :set noignorecase  又变成大小写敏感了.</p>
<p>2.5  替换</p>
<p>:%s/a/b/g   把文件当中的所有的 a 换成 b , % 表示整个文件内容, g 表示全部替换<br />
s/a/b/g 可以写成 s|a|b|g  等等<br />
:%s/^/  /g  每一行前面加上两个空格, 还记得 ^ 嘛?<br />
:n,m s/$/ ,/g   在第 n 行和第 m 行的每一行的行尾加上" ,"<br />
:% s/^M//g  当中的 ^M 为 ^VM , 即回车符, 意即把回车符替换为空</p>
<p>:g /^$/d    删除掉所有空行:</p>
<p>2.6  调用外部命令</p>
<p>:! cmd   执行命令 cmd                 :sh  暂时退出 vim, 执行 $SHELL</p>
<p>例如, 调用 sort 排序:</p>
<p>:%!sort</p>
<p>3.  编辑代码的设置和操作<br />
3.1 ~/.vimrc 配置<br />
vim 在启动时会先读取文件 ~/.vimrc , 因为可以把一些设置写到该文件中:<br />
如我的 ~/.vimrc 文件内容为:</p>
<p>"set term=vt100<br />
set ts=4<br />
set sw=4<br />
set fileencoding=cp936<br />
set fileencodings=cp936<br />
set encoding=cp936<br />
set autoindent<br />
set showcmd<br />
set nocompatible<br />
set smartindent<br />
set showmatch<br />
set t_Co=8<br />
set t_Sf=^[[1;3%p1%dm<br />
set t_Sb=^[[1;4%p1%dm<br />
map &lt;C-J&gt; :set filetype=cpp&lt;CR&gt;<br />
set hls<br />
set incsearch</p>
<p>set path=.,/usr/include,include,inc,../include,../inc<br />
set path+=/usr/local/SRBC2.0/include</p>
<p>set tags+=tags;</p>
<p>"set wrap<br />
syntax on<br />
highlight Comment ctermfg=cyan<br />
highlight Macro   ctermfg=gray<br />
highlight Include ctermfg=magenta</p>
<p>if has("autocmd")<br />
filetype plugin indent on<br />
augroup vimrcEx<br />
au!<br />
autocmd FileType text setlocal textwidth=78<br />
autocmd BufReadPost *<br />
\ if line("'\"") &gt; 0 &amp;&amp; line("'\"") &lt;= line("$") |<br />
\   exe "normal g`\"" |<br />
\ endif<br />
augroup END<br />
endif</p>
<p>map &lt;C-K&gt; gt  "在多 TAb 编辑时方便跳转<br />
map &lt;C-H&gt; gT<br />
map &lt;Tab&gt; gt</p>
<p>** 注意上面的 ^[ 是这样输入的: ^V[<br />
注释使用双引号.</p>
<p>3.2 使用 tag</p>
<p>tag 是什么? 那是一个索引文件, 能够在 vim 或多种编辑器中使用.<br />
使用 tag 分两步, 一是制作 tag 文件, 二是在编辑器中使用.</p>
<p>3.2.1 制作 tag</p>
<p>3.2.1.1 生成 tags 文件</p>
<p>制作 tag 是个简单的过程, 需要使用外部命令 ctags 完成, 需要注意的是,<br />
这里的 ctags 是 GNU ctags, 如果发现当前系统的 ctags 使用不了, 请找<br />
系统管理员或者本文作者帮忙解决.</p>
<p>在 vim 中, 只需要在最上层的目录生成 tags 文件即可,<br />
这时在 .vimrc 中加入:  set tags+=tags;  表示如果当前目录找不到文件 tags,<br />
那么往上一层目录查找, 直到找到为此.</p>
<p>当然了, 可以在任意一个目录下生成 tags 文件.</p>
<p>生成 tags 文件最简单的方法是在 ctags 中使用 -R 参数, 表示包括所有子目录<br />
中的文件, 如:</p>
<p>ctags -R .</p>
<p>或者指定文件: ctags *.cpp *.h</p>
<p>有时候源代码中包括了如 esqlc 或 proc 的代码, 这时可加上 --language-force<br />
参数, 让 ctags 强制认成某种语言, 如认成 c++ 语言:</p>
<p>ctags -R --language-force=C++ .</p>
<p>3.2.1.2 svn 问题</p>
<p>使用 svn checkout 出来的代码, 会有一份相同的在目录 .svn 下, 这时如果用 -R<br />
参数制作 tags 文件, 会包含多份一样的标记, 可用 --exclude 把它排除掉:</p>
<p>ctags -R --language-force=C++ --exclude=.svn .</p>
<p>3.2.2 使用 tag</p>
<p>在 vim 中, 可按下面的命令使用 tag :</p>
<p>^]   跳至该 tag 处, 如果存在多个一样的 tag, 跳至第一个, 可用 g] 显示全部.<br />
^T  返回<br />
g]   显示该 tag 的所有信息, 这时可按数字加回车选择.</p>
<p>如果找不到 tags 文件, 可以直接使用 set tag=/path/to/tags 指定.</p>
<p>4.  语法高亮</p>
<p>使用   :syntax on   就能够激活语法高亮显示了, 如果还没有显示颜色,<br />
可能需要  :set filetype=cpp  表示使用 cpp.vim 作为语法高亮显示.<br />
使用不同颜色方案:<br />
:colorscheme default<br />
如果没有设置环境变量 VIMRUNTIME 可能也会没有显示语法高亮</p>
<p>[qsh@thai src]$ ls /usr/local/share/vim/vim64/colors/<br />
README.txt     default.vim    elflord.vim    morning.vim    peachpuff.vim<br />
blue.vim       delek.vim      evening.vim    murphy.vim     ron.vim<br />
darkblue.vim   desert.vim     koehler.vim    pablo.vim      shine.vim<br />
[qsh@thai src]$ echo $VIMRUNTIME<br />
/usr/local/share/vim/vim64</p>
<p>还可以使用自己的配色方案:</p>
<p>$ mkdir ~/.vim/colors<br />
$ cp $VIMRUNTIME/colors/morning.vim ~/.vim/colors/mine.vim</p>
<p>然后这样使用:       :colo  mine</p>
<p>一般来说, 默认的配色方案就已经很好看了.</p>
<p>有时想自己定义关键字颜色:</p>
<p>:highlight Comment ctermfg=cyan guifg=cyan</p>
<p>这句在写代码时很管用的, 表示注释用蓝色显示.<br />
其它具体使用可参考 vim 自带的文档(见后面)</p>
<p>5.  文档</p>
<p>5.1 查看帮助</p>
<p>&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
条目                          前缀                      例子<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;<br />
Normal模式命令                  无                     :h k<br />
CRTL控制字符                    CRTL_                  :h CRTL_r<br />
Visual视图模式                  v                      :h v_u<br />
Insert插入模式命令              i                      :h i_CRTL-o<br />
ex-模式命令                     :                      :h :set<br />
Command-line命令行编辑          c                      :h c_&lt;BS&gt;<br />
命令参数                        -                      :h -m<br />
选项                            &#8216;                      :h &#8216;winminwidth&#8217;<br />
&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8212;&#8211;</p>
<p>:h &lt;Left&gt;<br />
:h &lt;CR&gt;<br />
:h &lt;Up&gt;<br />
:helpg[rep] {pattern}  搜索所有的帮助文本并给出一个匹配 {pattern} 行的列表.</p>
<p>5.2  入门文档</p>
<p>a. $ vimtutor<br />
在 shell 下执行 vimtutor 就会进会 vim 的入门教程.</p>
<p>b.  进入 vim 后输入 :h 就进入 vim 的帮助, 蓝色如下面的这些</p>
<p>|usr_22.txt|  Finding the file to edit<br />
|usr_23.txt|  Editing other files<br />
|usr_24.txt|  Inserting quickly</p>
<p>的两竖线之间的文档都已经作了 tag , 把光标移到相应位置就可以用 ^] 跳转了.</p>
<p>c.  若想看指令 f 的帮助, 输入 :h f 即可.</p>
<p>d.  可以到 <a href="http://www.vim.org/" target="_blank">www.vim.org</a> 查看</p>
<p>6.  参考文档</p>
<p>参考了 vim 自带的文档: 即进入 vim 后, 按 :h</p>
]]></content:encoded>
			<wfw:commentRss>http://www.result-search.com/sty/2009/08/30/vim%e5%ad%a6%e4%b9%a0.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>vim常用插件介绍（转）</title>
		<link>http://www.result-search.com/sty/2009/08/30/vim%e5%b8%b8%e7%94%a8%e6%8f%92%e4%bb%b6%e4%bb%8b%e7%bb%8d%ef%bc%88%e8%bd%ac%ef%bc%89.html</link>
		<comments>http://www.result-search.com/sty/2009/08/30/vim%e5%b8%b8%e7%94%a8%e6%8f%92%e4%bb%b6%e4%bb%8b%e7%bb%8d%ef%bc%88%e8%bd%ac%ef%bc%89.html#comments</comments>
		<pubDate>Sun, 30 Aug 2009 07:37:23 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vim]]></category>
		<category><![CDATA[一步一步学习中]]></category>

		<guid isPermaLink="false">http://www.yaaahaaa.com/?p=1028</guid>
		<description><![CDATA[转自：http://blog.csdn.net/xuzhihong_gdut/archive/2009/01/15/3789080.aspx
 

						document.body.oncopy = function() {
							if (window.clipboardData) {
								setTimeout(function() {
									var text = clipboardData.getData("text");
									if (text &#38;&#38; text.length&#62;300) {
										text = text + "\r\n\n本文来自CSDN博客，转载请标明出处：" + location.href;
										clipboardData.setData("text", text);
									}
								}, 100);
							}
						}
					 function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&#38;u='+escape(d.location.href)+'&#38;c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}vim常用插件介绍：
vim是Linux下强大的编辑器之一，是每个linuxer并不可少的工具。vim的插件扩展
工能为vim增加了不少的特色。关于如何将vim打造IDE网上的资料也不少，下面只是
我自己对vim的配置。
推荐文章：http://blog.csdn.net/wooin
&#60;&#60;手把手教你把 Vim 改装成一个 IDE 编程环境&#62;&#62;
工具或插件介绍，如想进一步了解请参照官方文档。
1) Exuberant Ctags : 它可以为你的源码产生一个tags文件，并且在tags文件中记录
源文件的索引以帮助你快速得找到某个符号的定义。它支持相当多的语言，如C、C++、C#、Shell等等。
常用命令：Ctrl+] 跳到声明定义处  Ctrl+T 跳回原处
下载地址：http://ctags.sourceforge.net
2) trinity.vim : Build the trinity of srcexpl, taglist, NERD_tree to
be a good IDE. 这个插件将 srcexpl、taglist、NERD_tree这三个插件集中起来做成IDE
taglist: Source code browser (supports [...]]]></description>
			<content:encoded><![CDATA[<p>转自：http://blog.csdn.net/xuzhihong_gdut/archive/2009/01/15/3789080.aspx</p>
<h1 class="title_txt"><cite class="fav_csdnstylebykimi"> </cite></h1>
<div class="blogstory"><script type="text/javascript">
						document.body.oncopy = function() {
							if (window.clipboardData) {
								setTimeout(function() {
									var text = clipboardData.getData("text");
									if (text &amp;&amp; text.length&gt;300) {
										text = text + "\r\n\n本文来自CSDN博客，转载请标明出处：" + location.href;
										clipboardData.setData("text", text);
									}
								}, 100);
							}
						}
					</script> <script class="blogstory">function StorePage(){d=document;t=d.selection?(d.selection.type!='None'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():'');void(keyit=window.open('http://www.365key.com/storeit.aspx?t='+escape(d.title)+'&amp;u='+escape(d.location.href)+'&amp;c='+escape(t),'keyit','scrollbars=no,width=475,height=575,left=75,top=20,status=no,resizable=yes'));keyit.focus();}</script>vim常用插件介绍：</p>
<p>vim是Linux下强大的编辑器之一，是每个linuxer并不可少的工具。vim的插件扩展<br />
工能为vim增加了不少的特色。关于如何将vim打造IDE网上的资料也不少，下面只是<br />
我自己对vim的配置。</p>
<p>推荐文章：http://blog.csdn.net/wooin<br />
&lt;&lt;手把手教你把 Vim 改装成一个 IDE 编程环境&gt;&gt;</p>
<p>工具或插件介绍，如想进一步了解请参照官方文档。<br />
1) Exuberant Ctags : 它可以为你的源码产生一个tags文件，并且在tags文件中记录<br />
源文件的索引以帮助你快速得找到某个符号的定义。它支持相当多的语言，如C、C++、C#、Shell等等。<br />
常用命令：Ctrl+] 跳到声明定义处  Ctrl+T 跳回原处<br />
下载地址：http://ctags.sourceforge.net</p>
<p>2) trinity.vim : Build the trinity of srcexpl, taglist, NERD_tree to<br />
be a good IDE. 这个插件将 srcexpl、taglist、NERD_tree这三个插件集中起来做成IDE<br />
taglist: Source code browser (supports C/C++, java etc)<br />
srcexpl: A Source code Explorer based on tags works like context<br />
window in Source Insight<br />
NERD_tree: A tree explorer plugin for navigating the filesystem<br />
下载地址：http://www.vim.org/scripts/script.php?script_id=2347</p>
<p>3) omnicppcomplete： C/C++ omni-completion with ctags database<br />
这个插件用于自动补全，可用于 . -&gt;  :: 等操作符。<br />
下载地址：http://www.vim.org/scripts/script.php?script_id=1520</p>
<p>4) c.vim: C/C++ IDE &#8211;  Write and run programs. Insert statements, idioms,<br />
comments etc. 这个插件的功能比较多,它集成了编译、链接、运行、注释等许多IDE常用的功能。<br />
下载地址：http://www.vim.org/scripts/script.php?script_id=213</p>
<p>5) echofunc.vim : Echo the function declaration in the command line for C/C++.<br />
这个插件主要用于显示函数声明。<br />
下载地址：http://www.vim.org/scripts/script.php?script_id=1735</p>
<p>6) stl.vim： Improved C++ STL syntax highlighting.<br />
原来的vim对C＋＋的语法高亮不支持像string、 vector之类的STL模板类。<br />
下载地址：http://www.vim.org/scripts/script.php?script_id=2224</p>
<p>7) stlrefvim.vim: A C++ Standard Template Library reference manual.<br />
这个插件让你轻松的拥有C++　STL的文档帮助<br />
下载地址：http://www.vim.org/scripts/script.php?script_id=2353</p>
<p>知道了这个插件的作用之后就可以行动了，首先需要具备一些vim的基本知识：像如何使用插件(每个插件<br />
都有它的安装帮助）、vim一些文件夹的作用（如plugin,syntax&#8230;)、vim键映射等。<br />
建议在使用这些插件之前先读一读它的文档，了解一下这些插件的作用和主要的功能，并且看一下它的文件<br />
结构，大概看一下它的源码，这样就方便你以后对插件的修改（如改变快捷键映射）。这个学习过程并不困<br />
难也无须花大量的时间。</p>
<p>下面是我的vim配置文件</p>
<p>&#8220;基本配置<br />
set mouse=a                 &#8221;启动鼠标功能<br />
set nocompatible         &#8220;不兼容旧版本<br />
set nu                   &#8220;显示行号<br />
set tabstop=4            &#8220;tab=4<br />
set shiftwidth=4         &#8220;缩进4<br />
set wrap                 &#8220;折行<br />
set ruler                &#8220;在vim窗口右下角显示光标位置<br />
set ignorecase           &#8220;忽略大小写<br />
&#8220;set hlsearch             &#8220;查找时高亮显示<br />
set showmode             &#8220;显示当前工作模式</p>
<p>syntax enable            &#8220;打开色彩<br />
syntax on                &#8220;打开语法高亮<br />
set cindent              &#8220;使用C语言的缩进方式<br />
set autoindent             &#8221;自动缩进<br />
set showmatch            &#8220;显示括号配对<br />
set smartindent          &#8220;智能对齐<br />
&#8220;set whichwrap+=h,l      &#8220;使用h,l移动可以跨行<br />
&#8220;set mps+=&lt;:&gt;            &#8220;让&lt;&gt;可以使用%跳转<br />
&#8220;set foldmarker={{{,}}}</p>
<p>&#8220;备份相关配置<br />
set nobackup<br />
set backupext=.bak<br />
set writebackup          &#8220;写备份但关闭vim后自动删除<br />
&#8220;set backupdir=path      &#8220;设置备份路径</p>
<p>&#8220;Omnicppcomplete Configuration<br />
&#8220;下面两行开启了vim三种智能<br />
&#8220;1.自动识别file类型<br />
&#8220;2.用file type plugin脚本<br />
&#8220;3.使用缩进定义文件<br />
&#8220;set nocompatible<br />
filetype plugin on<br />
filetype indent on<br />
let OmniCpp_DefaultNamespaces=["std"]<br />
let OmniCpp_MayCompleteScope=1<br />
set completeopt=longest,menu          &#8220;关掉智能补全时的预览窗口<br />
map &lt;silent&gt; &lt;F12&gt; :!ctags -R &#8211;c++-kinds=+p &#8211;fields=+iaS &#8211;extra=+q .&lt;CR&gt;<br />
set tags+=/usr/include/c++/4.2.4/tags</p>
<p>&#8220;Tlist Configuration  taglist.vim<br />
let Tlist_Process_File_Always=1     &#8220;Always Process File<br />
&#8220;let Tlist_Auto_Open=1              &#8220;Open Tlist when vim start<br />
let Tlist_Enable_Fold_Column=1<br />
let Tlist_Exit_OnlyWindow=1         &#8220;If only Tlist window works, vim exit.<br />
let Tlist_Sort_Type=&#8221;name&#8221;          &#8220;sort by name<br />
let Tlist_Show_One_File=1</p>
<p>&#8220;echofunc Configuration<br />
let g:EchoFuncKeyPrev=&#8217;&lt;C-b&gt;&#8217;<br />
let g:EchoFuncKeyNext=&#8217;&lt;C-n&gt;&#8217;</p>
<p>&#8220;trinity.vim: Build the trinity of srcexpl,taglist,<br />
&#8220;NERD_tree to be a good IDE<br />
nmap &lt;F8&gt; :TrinityToggleAll&lt;CR&gt;<br />
nmap &lt;F9&gt; :TrinityToggleSourceExplorer&lt;CR&gt;<br />
nmap &lt;F10&gt; :TrinityToggleTagList&lt;CR&gt;<br />
nmap &lt;F11&gt; :TrinityToggleNERDTree&lt;CR&gt;</p>
<p><img src="http://p.blog.csdn.net/images/p_blog_csdn_net/xuzhihong_gdut/EntryImages/20090115/1.png" alt="gvim" width="1280" height="1024" /></div>
]]></content:encoded>
			<wfw:commentRss>http://www.result-search.com/sty/2009/08/30/vim%e5%b8%b8%e7%94%a8%e6%8f%92%e4%bb%b6%e4%bb%8b%e7%bb%8d%ef%bc%88%e8%bd%ac%ef%bc%89.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>配置VIM下面的Python环境</title>
		<link>http://www.result-search.com/sty/2009/08/30/%e9%85%8d%e7%bd%aevim%e4%b8%8b%e9%9d%a2%e7%9a%84python%e7%8e%af%e5%a2%83.html</link>
		<comments>http://www.result-search.com/sty/2009/08/30/%e9%85%8d%e7%bd%aevim%e4%b8%8b%e9%9d%a2%e7%9a%84python%e7%8e%af%e5%a2%83.html#comments</comments>
		<pubDate>Sun, 30 Aug 2009 07:19:45 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vim]]></category>
		<category><![CDATA[一步一步学习中]]></category>
		<category><![CDATA[pydiction]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[vim-python]]></category>

		<guid isPermaLink="false">http://www.yaaahaaa.com/?p=1027</guid>
		<description><![CDATA[原文：http://hi.baidu.com/camark/blog/item/0806cc3f37a390c67d1e71ae.html]http://hi.baidu.com/camark/blog/item/0806cc3f37a390c67d1e71ae.html（有改动）
不知道为什么，我的vi安装了vim-python以后依然没有语法加亮和自动缩进功能，使用起来非常的不顺手。今天下定决心，自己Google一下，终于搞定。
完成以后有一下功能：
1、Python语法加亮
2、自动缩进
3、自动补全
4、自动完成
哈哈，用起来是否顺手。
在这里记录一下，配置过程。
1、安装软件包，最好安装vim-full包和vim-python
sudo aptitude install vim-full vim-python
2、建立自己的.vimrc 文件，我的配置如下（参考自ubuntu中文论坛）
&#8221; 自动补全命令时候使用菜单式匹配列表
set wildmenu
&#8221; 允许退格键删除
set backspace=2
&#8221; 启用鼠标
set mouse=a
&#8221; 文件类型
filetype on
filetype plugin on
filetype indent on
&#8221; 设置编码自动识别, 中文引号显示
&#8220;set fileencodings=utf-8,cp936,big5,euc-jp,euc-kr,latin1,ucs-bom
set fileencodings=utf-8,gbk
set ambiwidth=double
&#8221; 移动长行
nnoremap  gj
nnoremap  gk
&#8221; 高亮
syntax on
&#8221; 设置高亮搜索
set hlsearch
&#8221; 输入字符串就显示匹配点
set incsearch
&#8221; 输入的命令显示出来，看的清楚些。
set showcmd
&#8221; 打开当前目录文件列表
map  :e .
&#8221; Taglist
let Tlist_File_Fold_Auto_Close=1
set updatetime=1000
map  :Tlist
&#8221; 按 F8 智能补全
inoremap
&#8221; vim 自动补全 Python 代码
&#8221; 来自http://vim.sourceforge.net/scripts/script.php?script_id=850
autocmd FileType python set complete+=k~/.vim/tools/pydiction-1.2
自动补全需要下载pydiction这个软件包，可以从这里下载：
http://vim.sourceforge.net/scripts/script.php?script_id=850
解压文件
tar xzvf pydiction-1.2.tar.gz
得到一个文件夹pydiction-1.2文件夹。
拷贝文件夹里面的pydiction文件到Home目录下面的.vim/tools目录下面（如果没有，需要手工建立）：
mkdir -p ~/.vim/tools
然后启动vim，就会看到vim自动进入Python模式了，包括语法加亮和自动缩进功能。
按F8或者Ctrl+N会出现“自动完成的提示”。
还是非常舒服啊！
对于vim，我还是一个初学者，自己加油啊！
]]></description>
			<content:encoded><![CDATA[<p>原文：http://hi.baidu.com/camark/blog/item/0806cc3f37a390c67d1e71ae.html]http://hi.baidu.com/camark/blog/item/0806cc3f37a390c67d1e71ae.html（有改动）<br />
不知道为什么，我的vi安装了vim-python以后依然没有语法加亮和自动缩进功能，使用起来非常的不顺手。今天下定决心，自己Google一下，终于搞定。<br />
完成以后有一下功能：<br />
1、Python语法加亮<br />
2、自动缩进<br />
3、自动补全<br />
4、自动完成<br />
哈哈，用起来是否顺手。<br />
在这里记录一下，配置过程。<br />
1、安装软件包，最好安装vim-full包和vim-python<br />
sudo aptitude install vim-full vim-python<br />
2、建立自己的.vimrc 文件，我的配置如下（参考自ubuntu中文论坛）<br />
&#8221; 自动补全命令时候使用菜单式匹配列表<br />
set wildmenu<br />
&#8221; 允许退格键删除<br />
set backspace=2<br />
&#8221; 启用鼠标<br />
set mouse=a<br />
&#8221; 文件类型<br />
filetype on<br />
filetype plugin on<br />
filetype indent on<br />
&#8221; 设置编码自动识别, 中文引号显示<br />
&#8220;set fileencodings=utf-8,cp936,big5,euc-jp,euc-kr,latin1,ucs-bom<br />
set fileencodings=utf-8,gbk<br />
set ambiwidth=double<br />
&#8221; 移动长行<br />
nnoremap  gj<br />
nnoremap  gk<br />
&#8221; 高亮<br />
syntax on<br />
&#8221; 设置高亮搜索<br />
set hlsearch<br />
&#8221; 输入字符串就显示匹配点<br />
set incsearch<br />
&#8221; 输入的命令显示出来，看的清楚些。<br />
set showcmd<br />
&#8221; 打开当前目录文件列表<br />
map  :e .<br />
&#8221; Taglist<br />
let Tlist_File_Fold_Auto_Close=1<br />
set updatetime=1000<br />
map  :Tlist<br />
&#8221; 按 F8 智能补全<br />
inoremap<br />
&#8221; vim 自动补全 Python 代码<br />
&#8221; 来自http://vim.sourceforge.net/scripts/script.php?script_id=850<br />
autocmd FileType python set complete+=k~/.vim/tools/pydiction-1.2<br />
自动补全需要下载pydiction这个软件包，可以从这里下载：</p>
<p>http://vim.sourceforge.net/scripts/script.php?script_id=850</p>
<p>解压文件<br />
tar xzvf pydiction-1.2.tar.gz<br />
得到一个文件夹pydiction-1.2文件夹。<br />
拷贝文件夹里面的pydiction文件到Home目录下面的.vim/tools目录下面（如果没有，需要手工建立）：<br />
mkdir -p ~/.vim/tools<br />
然后启动vim，就会看到vim自动进入Python模式了，包括语法加亮和自动缩进功能。<br />
按F8或者Ctrl+N会出现“自动完成的提示”。</p>
<p>还是非常舒服啊！<br />
对于vim，我还是一个初学者，自己加油啊！</p>
]]></content:encoded>
			<wfw:commentRss>http://www.result-search.com/sty/2009/08/30/%e9%85%8d%e7%bd%aevim%e4%b8%8b%e9%9d%a2%e7%9a%84python%e7%8e%af%e5%a2%83.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>VI(VIM)编写程序技巧</title>
		<link>http://www.result-search.com/sty/2009/08/29/vivim%e7%bc%96%e5%86%99%e7%a8%8b%e5%ba%8f%e6%8a%80%e5%b7%a7.html</link>
		<comments>http://www.result-search.com/sty/2009/08/29/vivim%e7%bc%96%e5%86%99%e7%a8%8b%e5%ba%8f%e6%8a%80%e5%b7%a7.html#comments</comments>
		<pubDate>Sat, 29 Aug 2009 15:59:57 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[vim]]></category>
		<category><![CDATA[一步一步学习中]]></category>

		<guid isPermaLink="false">http://www.yaaahaaa.com/?p=1025</guid>
		<description><![CDATA[VI(VIM)编写程序技巧
此页由Linux Wiki用户Chenxing于2008年11月19日 (星期三) 09:56的最后更改。 在Linux Wiki用户Minux 和 Pigguo的工作基础上。
出自Linux Wiki


热切期盼您改进本页，要改进本页，请先登录，并选择编辑。
由于转载不当很可能造成格式的破坏，降低文档价值，本文不推荐转载。但是您确实有转载本文档的权利，如果您一定要转载，请一定保留本文的所有信息。
vi作为优秀的文本编辑器，同样可以胜任程序编写任务。本文介绍使用VI进行程序设计的一些技巧。
语法加亮显示
目前的vim支持多种语言的语法高亮显示。在命令状态下输入：
:syntax on
也可缩写为：
:syn on
也可以指定语言，如C语言：
:set syntax=c

括号匹配
在命令状态下，可以使用%进行括号匹配。即在括号处按下&#8221;%&#8221;，光标会跳转到与之匹配的括号。
在VIM 7或更高版本中，支持在插入状态下括号的自动匹配，即高亮显示光标所在处的括号和与之匹配的括号。若要关闭此功能，可用
:NoMatchParen
如果要再开启，可以用
  oMatchParen
如果要更改颜色，可以用hi，例如：
:hi MatchParen ctermbg=blue ctermfg=white
如果要更改需要匹配的符号，可以编辑matchpairs选项

注释管理
手动地逐行加注释一般较繁，推荐装一些插件来快速地注释（或取消注释）代码，参见Vim与程序注释

缩进
使用自动缩进可能需要设置，vim中对自动缩进的详细设置办法见Vim代码缩进设置。下面介绍调整缩进的方法：

插入状态

Ctrl-T
 右缩 
Ctrl-D
 左缩 
^Ctrl-D
 删除行首空格 


命令状态下左右缩进



&#62;&#62;
右缩进


&#60;&#60;
左缩进


n&#60;&#60; 或 n&#62;&#62;
缩进多行，如4&#62;&#62;




可视状态下的缩进
使用&#60;或&#62;进行缩进，也可使用n&#60;或n&#62;多节缩进
可以用 = 对选中的部分进行自动缩进。

粘贴时的自动缩进
]p 可以实现p的粘贴功能，并自动缩进

光标移动



gd
到局部变量的定义


gD
到全局变量的定义


[[
到当前块起始的{处


]]
到当前块结束的}处


Ctrl-O
返回到跳转前的地方



配合ctags，还可使用Ctrl-]进入函数，Ctrl-T返回

其它



K
转到当前函数的文档，需要安装manpages-dev。


:set number 或 :set nu
显示行号


:set nonumber 或 :set nonu
不显示行号


Ctrl-N 或 Ctrl-P
插入模式下的自动补全功能。



]]></description>
			<content:encoded><![CDATA[<h1 class="firstHeading">VI(VIM)编写程序技巧</h1>
<div id="credits">此页由Linux Wiki用户<a class="new" title="User:Chenxing (尚未撰写)" href="http://www.linux-wiki.cn/index.php?title=User:Chenxing&amp;action=edit&amp;redlink=1">Chenxing</a>于2008年11月19日 (星期三) 09:56的最后更改。 在Linux Wiki用户<a class="new" title="User:Minux (尚未撰写)" href="http://www.linux-wiki.cn/index.php?title=User:Minux&amp;action=edit&amp;redlink=1">Minux</a> 和 <a class="new" title="User:Pigguo (尚未撰写)" href="http://www.linux-wiki.cn/index.php?title=User:Pigguo&amp;action=edit&amp;redlink=1">Pigguo</a>的工作基础上。</div>
<h3 id="siteSub">出自Linux Wiki</h3>
<p><!-- start content --></p>
<div style="color: red;">
<p>热切期盼您改进本页，要改进本页，请先登录，并选择编辑。</p>
<p>由于转载不当很可能造成格式的破坏，降低文档价值，本文不推荐转载。但是您确实有转载本文档的权利，如果您一定要转载，请一定保留本文的所有信息。</p></div>
<p><a class="new" title="Vi (尚未撰写)" href="http://www.linux-wiki.cn/index.php?title=Vi&amp;action=edit&amp;redlink=1">vi</a>作为优秀的文本编辑器，同样可以胜任程序编写任务。本文介绍使用VI进行程序设计的一些技巧。</p>
<h2><span class="mw-headline">语法加亮显示</span></h2>
<p>目前的<a class="new" title="Vim (尚未撰写)" href="http://www.linux-wiki.cn/index.php?title=Vim&amp;action=edit&amp;redlink=1">vim</a>支持多种语言的语法高亮显示。在命令状态下输入：</p>
<pre>:syntax on</pre>
<p>也可缩写为：</p>
<pre>:syn on</pre>
<p>也可以指定语言，如C语言：</p>
<pre>:set syntax=c</pre>
<p><a name=".E6.8B.AC.E5.8F.B7.E5.8C.B9.E9.85.8D"></a></p>
<h2><span class="mw-headline">括号匹配</span></h2>
<p>在命令状态下，可以使用%进行括号匹配。即在括号处按下&#8221;%&#8221;，光标会跳转到与之匹配的括号。</p>
<p>在VIM 7或更高版本中，支持在插入状态下括号的自动匹配，即高亮显示光标所在处的括号和与之匹配的括号。若要关闭此功能，可用</p>
<pre>:NoMatchParen</pre>
<p>如果要再开启，可以用</p>
<pre> <img src='http://www.result-search.com/sty/wp-includes/images/smilies/icon_biggrin.gif' alt=':D' class='wp-smiley' /> oMatchParen</pre>
<p>如果要更改颜色，可以用hi，例如：</p>
<pre>:hi MatchParen ctermbg=blue ctermfg=white</pre>
<p>如果要更改需要匹配的符号，可以编辑matchpairs选项</p>
<p><a name=".E6.B3.A8.E9.87.8A.E7.AE.A1.E7.90.86"></a></p>
<h2><span class="mw-headline">注释管理</span></h2>
<p>手动地逐行加注释一般较繁，推荐装一些插件来快速地注释（或取消注释）代码，参见<a title="Vim与程序注释" href="http://www.linux-wiki.cn/index.php?title=Vim%E4%B8%8E%E7%A8%8B%E5%BA%8F%E6%B3%A8%E9%87%8A&amp;variant=zh-cn">Vim与程序注释</a></p>
<p><a name=".E7.BC.A9.E8.BF.9B"></a></p>
<h2><span class="mw-headline">缩进</span></h2>
<p>使用自动缩进可能需要设置，vim中对自动缩进的详细设置办法见<a title="Vim代码缩进设置" href="http://www.linux-wiki.cn/index.php?title=Vim%E4%BB%A3%E7%A0%81%E7%BC%A9%E8%BF%9B%E8%AE%BE%E7%BD%AE&amp;variant=zh-cn">Vim代码缩进设置</a>。下面介绍调整缩进的方法：</p>
<p><a name=".E6.8F.92.E5.85.A5.E7.8A.B6.E6.80.81"></a></p>
<h3><span class="mw-headline">插入状态</span></h3>
<dl>
<dt>Ctrl-T</dt>
<dd> 右缩 </dd>
<dt>Ctrl-D</dt>
<dd> 左缩 </dd>
<dt>^Ctrl-D</dt>
<dd> 删除行首空格 </dd>
</dl>
<p><a name=".E5.91.BD.E4.BB.A4.E7.8A.B6.E6.80.81.E4.B8.8B.E5.B7.A6.E5.8F.B3.E7.BC.A9.E8.BF.9B"></a></p>
<h3><span class="mw-headline">命令状态下左右缩进</span></h3>
<table border="0">
<tbody>
<tr>
<th>&gt;&gt;</th>
<td>右缩进</td>
</tr>
<tr>
<th>&lt;&lt;</th>
<td>左缩进</td>
</tr>
<tr>
<th>n&lt;&lt; 或 n&gt;&gt;</th>
<td>缩进多行，如4&gt;&gt;</td>
</tr>
</tbody>
</table>
<p><a name=".E5.8F.AF.E8.A7.86.E7.8A.B6.E6.80.81.E4.B8.8B.E7.9A.84.E7.BC.A9.E8.BF.9B"></a></p>
<h3><span class="mw-headline">可视状态下的缩进</span></h3>
<p>使用<strong>&lt;</strong>或<strong>&gt;</strong>进行缩进，也可使用<strong>n&lt;</strong>或<strong>n&gt;</strong>多节缩进</p>
<p>可以用 <strong>=</strong> 对选中的部分进行自动缩进。</p>
<p><a name=".E7.B2.98.E8.B4.B4.E6.97.B6.E7.9A.84.E8.87.AA.E5.8A.A8.E7.BC.A9.E8.BF.9B"></a></p>
<h3><span class="mw-headline">粘贴时的自动缩进</span></h3>
<p><strong>]p</strong> 可以实现p的粘贴功能，并自动缩进</p>
<p><a name=".E5.85.89.E6.A0.87.E7.A7.BB.E5.8A.A8"></a></p>
<h2><span class="mw-headline">光标移动</span></h2>
<table border="0">
<tbody>
<tr>
<td>gd</td>
<td>到局部变量的定义</td>
</tr>
<tr>
<td>gD</td>
<td>到全局变量的定义</td>
</tr>
<tr>
<td>[[</td>
<td>到当前块起始的{处</td>
</tr>
<tr>
<td>]]</td>
<td>到当前块结束的}处</td>
</tr>
<tr>
<td>Ctrl-O</td>
<td>返回到跳转前的地方</td>
</tr>
</tbody>
</table>
<p>配合ctags，还可使用Ctrl-]进入函数，Ctrl-T返回</p>
<p><a name=".E5.85.B6.E5.AE.83"></a></p>
<h2><span class="mw-headline">其它</span></h2>
<table border="0">
<tbody>
<tr>
<td><strong>K</strong></td>
<td>转到当前函数的文档，需要安装manpages-dev。</td>
</tr>
<tr>
<td><strong>:set number 或 :set nu</strong></td>
<td>显示行号</td>
</tr>
<tr>
<td><strong>:set nonumber 或 :set nonu</strong></td>
<td>不显示行号</td>
</tr>
<tr>
<td><strong>Ctrl-N 或 Ctrl-P</strong></td>
<td>插入模式下的自动补全功能。</td>
</tr>
</tbody>
</table>
]]></content:encoded>
			<wfw:commentRss>http://www.result-search.com/sty/2009/08/29/vivim%e7%bc%96%e5%86%99%e7%a8%8b%e5%ba%8f%e6%8a%80%e5%b7%a7.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
