VIM使用总结

一、关于如何搭建成IDE可以参考下面两篇文章

1.手把手教你把Vim改装成一个IDE编程环境(图文)

2.VI/VIM使用进阶:目录

add  把vim打造成IDE(整理,修订)


对SI比较熟悉的,可以看看下面这篇,有SI和VIM功能的对比

从Source Insight到Vim

二、新建一个工程需要执行的操作

1.cscope -Rbq----------生成cscope.in.out,cscope.out和cscope.po.out

   ctags -R---------------- 生成tags

   执行下面的脚本

#!/bin/sh
# generate tag file for lookupfile plugin
echo -e "!_TAG_FILE_SORTED\t2\t/2=foldcase/" > filenametags
find . -not -regex '.*\.\(png\|gif\)' -type f -printf "%f\t%p\t1\n" | \
    sort -f >> filenametags 

-------------------------------生成filenametags

2.在工程根目录下输入vim

在末行模式输入

(如果上次退出vim时保存了会话信息

source   ./Session.vim

rviminfo ./my.viminfo


添加数据库连接

       cs add ./cscope.out             ./      

供LookupFile插件按文件名索引文件

        :let g:LookupFile_TagExpr = '"./filenametags"' (可以通过:echo g:LookupFile_TagExpr查看变量是否定义成功)
工作完成后,保存会话信息

        mksession-----生成Session.vim

        wviminfo my.viminfo------生成my.vimfinfo

退出VIM

         :qa

三、其他一些小技巧

1. *:读取光标处的字符串,并且移动光标到它再次出现的地方。(相当于SI中的SHIFT+F3)

    #:和上面的类似,但是是往反方向寻找。(相当于SI中的SHIFT+F4)

2.自动补全:定位到要补全的词尾-->进入insert mode  -->按下ctrl+n,会列出候选词,在候选词中通过ctrl+n(向下移动)或ctrl+p(向上移动)选择你要匹配的词。

按 <Esc> 拒绝候选单词,退出补全模式并留在 insert 模式下,再按一次 <Esc> 才会退出 insert 模式,回到 normal 模式

3.

c{motion}:删除 motion 命令跨过的字符,并且进入插入模式。比

如:c$,这将会删除从光标位置到行尾的字符并且进入插入模式。

ct!,这会删除从光标位置到下一个叹号(但不包括),然后进入插入模式

d3w:删除光标后3个单词,被删除的字符被存在剪切板里面,并且可以再粘贴出来(进入命令模式后按下p)。

d{motion}:和上面差不多,但是不进入插入模式

yw:复制当前词,进行此操作后,直接按键下p(粘贴)和直接按下u(undo)作用相同。

%:跳转到对应的(/)或#if/#endif

`a:到书签 a 处。注意这个不是单引号,它一般位于大部分键盘的 1 的左边。 

`.:到你上次编辑文件的地方。这个命令很有用,而且你不用自己去标记它。

gd :跳到局部变量的定义处(如果装了ctags,就不许要用这个了直接ctrl+]可以跳转到任何tag的定义处)

'' :跳转到光标上次停靠的地方, 是两个', 而不是一个"

ctrl-]:跳转到symble的定义处,当有多个定义时,直接跳转到第一个匹配项,切换到后续匹配项需要通过显式地输入:tnext来完成,想要改变这种行为,有多个定义时列出,用户选择跳转到哪个定义,进行如下设定set cscopetag或set cst

末行模式命令:

:  set   ic     搜索时不区分大小写
:  set   noic

:f                 示编辑的文件的名字 

  : e file_name    (edit)编辑不同档案

你可能感兴趣的:(数据库,脚本,File,vim,ide,insert)