zoukankan      html  css  js  c++  java
  • vim 插件详解

    1、vimrc配置文件

    http://vdisk.weibo.com/lc/CK5trJrWVo6xUH12

    密码:R387

    map <C-T> :tabnew<CR> 
    map <C-W> :confirm bdelete<CR>
    map <C-\> :tab split<CR>:exec("tag ".expand("<cword>"))<CR>   ctags新标签打开

         NERD_tree : 一个文件管理插件,一些常用命令: 打开一个目录树( :NERDTree <启动目录> | <bookmark>  )  关闭目录树栏(:NERDTreeClose);切换目录树栏(:NERDTreeToggle);  定义标签(:Bookmark <name>);定义Root标签(:BookmarkToRoot <bookmark>)。。。。。。更多命令和用法见 :help NERD_tree。

      word_complete  :代码自动补全

      SuperTab :省去Ctrl-n或Ctrl-p快捷键,通过按tab键快速显示补全代码.

      xptemplate : 快速自动完成一些if、switch、for、while结构模板代码,支持c、c++、Lua、Ruby、Php、html、css、javascript等多种语言。一般是输入结构体的关键字后,再按Ctrl-\组合键即可完成代码补全,然后按Tab键跳转到不同的位置替换模板内容。比如:输入for后按Ctrl-\组合键即可快速完成for结构的模板代码。

      ctags : 一个扫描记录代码的语法元素,并记录为tag,方便代码定位跳转等操作,MacVim自带,但是据说有点问题,笔者用Vundle安装的貌似也有问题,推荐用MacPorts安装,然后在~/.gvimrc配置中加入:  let Tlist_Ctags_Cmd="/opt/local/bin/ctags"。用法:在终端 cd 进入到你的项目根目录,输入语句即可将项目所有代码文件打上tag: 

     ctags -R --c++-kinds=+px --fields=+iaS --extra=+q .

       taglist : 可以用Vundle安装,在编辑代码文件时,输入命令":TlistToggle"在右边就会出现当前类的函数或变量列表。输入命令“:tag <函数名或变量、类>”,如果只有一个文件定义了该函数或变量、类,vim打开该文件并将光标定位到对应的位置;如果多个文件有这个函数名或变量、类的tag,将给提示,并可输入“:tselect” ,显示可选的文件。快捷键跳转Ctrl+],Ctrl-o。

       Cscope :功能跟ctags差不多,不过更加强大,MacVim默认已经支持,输入“:version”命令查看.

       OmniCppComplete : 功能跟taglist差不多。 

       a.vim :在.cpp文件和.h头文件间快速切换的插件。

       grep.vim : 在工程中查找词汇的插件。

       minibufexplorerpp : 操作缓存buffer窗口。

       quickfix :MacVim内置安装好了,不需要重新安装。显示一些命令查询结果以及编译错误等信息。

       Command-t :用Commad-t命令快速查找切换文件。如果是用Vundle安装的话,还不能使用,在MacVim中输入“:CommandT”命令会报错。用Vundle安装好打开终端,输入如下命令,等待编译完毕后就可以使用了:

    mac vim 路径:/usr/share/vim/vim73

    2、NERDTree   

    作用:生成项目树,在vim编辑器下输入:NERDTree或者:NERDTreeToggle

    下载地址:http://vim.wikia.com/wiki/Use_Vim_like_an_IDE

    安装步骤:

    解压zip包,然后将plugin下面的文件复制到/var/share/vim/vim72/plugin下

    将doc下的文件复制到/var/share/vim/vim72/doc下面

    3、cscope使用

        :cs add cscope.out

        加载库文件,为后面利用cscope来查找做准备

        :cs help

       查看cscope命令的用法,输入后,显示如下

       add  :添加一个新的数据库             (用法: add file|dir [pre-path] [flags])
       find :查询一个模式                        (用法: find c|d|e|f|g|i|s|t name)
           c:找到调用这个函数的函数
           d:找到被这个函数调用的函数
           e:找到这个 egrep 模式
           f:找到此文件夹
           g:找到这个定义
           i:找文件 #包括这个文件
           s:找到这个 C 符号
           t:找到对其的赋值
        help :显示此信息                       (用法: help)
        kill :结束一个连接                      (用法: kill #)
        reset:重置所有连接                   (用法: reset)
        show :显示连接                         (用法: show)

      

         比如说要找调用test函数的函数,则输入:

        :cs find c test

    4. catgs使用

         在命令模式下:

         ctrl + ] :找到光标所在位置的标签的定义

         ctrl + t :回到跳转之前的标签处

         “找到tag:1/3或更多”其他定义的查看方法:

         :tselect 显示列表

          然后输入相应的数字后回车再查找

         : tag definition

          跳转到definition定义处(可以是函数名,变量),即使它在另一个文件中

    5、如何安装neocomplcache代码自动补全函数提示(支持C/C++,java,python,PHP,javascrip众多语言 )

    http://www.vim.org/scripts/script.php?script_id=2620
    然后解压,解压缩后把autoload,plugin,doc三个目录复制到/usr/share/vim/vim73/

    添加一下内容到~/.vimrc文件中
    if &term=="xterm"
      set t_Co=8
      set t_Sb=^[[4%dm
      set t_Sf=^[[3%dm
    endif

    let g:neocomplcache_enable_at_startup = 1

  • 相关阅读:
    如何分析redis中的慢查询
    redis订阅关闭异常解决
    异常解决:Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
    linux下postgres的安装
    springboot tomcat配置参数列表
    如何把web.xml中的context-param、Servlet、Listener和Filter定义添加到SpringBoot中
    electron-builder 由于网络原因无法下载问题解决
    Handshake failed due to invalid Upgrade header: null 解决方案
    Linux-006-执行Shell脚本报错 $' ':command not found
    VUE-013-为elementUI 设置 tootip 宽度
  • 原文地址:https://www.cnblogs.com/bugY/p/2657865.html
Copyright © 2011-2022 走看看