一、Ubuntu14.04下配置

1、配置vimrc文件

输入:version课查看vimrc文件及位置:

system vimrc file: "$VIM/vimrc"

user vimrc file: "$HOME/.vimrc“(建议放置位置)

2nd user vimrc file: "~/.vim/vimrc"

user exrc file: "$HOME/.exrc"

system gvimrc file: "$VIM/gvimrc"

user gvimrc file: "$HOME/.gvimrc"

2nd user gvimrc file: "~/.vim/gvimrc"

system menu file: "$VIMRUNTIME/menu.vim"

打开vim,输入:! echo $VIM 即可知道VIM的安装路径

2、ctags安装和配置

1) 安装

sudo apt-get install ctags

2) ~/.vimrc配置

相关配置在后边列出vimrc文件。

3、taglist插件安装及配置

1)查找插件

官网http://www.vim.org中查找taglist插件

http://www.vim.org/scripts/script.php?script_id=273

2) 安装:

官方说明(加黑部分为我放置的位置):

  1. Download the taglist.zip file and unzip the files to the $HOME/.vim or the
        $HOME/vimfiles or the $VIM/vimfiles directory. After this step, you should
        have the following two files (the directory structure should be preserved):

    plugin/taglist.vim - main taglist plugin file
             doc/taglist.txt    - documentation (help) file

    Refer to the |add-plugin|, |add-global-plugin| and |runtimepath| Vim
       help pages for more details about installing Vim plugins.
    2. Change to the $HOME/.vim/doc or $HOME/vimfiles/doc or $VIM/vimfiles/doc
        directory, start Vim and run the ":helptags ." command to process the
        taglist help file. Without this step, you cannot jump to the taglist help
        topics.
    3. If the exuberant ctags utility is not present in your PATH, then set the
        Tlist_Ctags_Cmd variable to point to the location of the exuberant ctags
        utility (not to the directory) in the .vimrc file.
    4. If you are running a terminal/console version of Vim and the terminal
        doesn't support changing the window width then set the
        'Tlist_Inc_Winwidth' variable to 0 in the .vimrc file.
    5. Restart Vim.
    6. You can now use the ":TlistToggle" command to open/close the taglist
        window. You can use the ":help taglist" command to get more information
        about using the taglist plugin.

3) ~/.vimrc配置

配置在后边列出vimrc文件

4、SrcExpl 插件

https://www.vim.org/scripts/script.php?script_id=2179

配置在后边列出vimrc文件

5、Trinity插件

已经包含了NERD_tree插件

安装步骤:我的安装路径$VIM/vimfiles【doc和plugin】

配置在后边列出vimrc文件

6、Cscope安装

sudo apt-get install cscope

7、配置文件

runtime! debian.vim

if has("syntax")
    syntax on
endif

colorscheme desert

set showcmd
set showmatch
set ignorecase
set smartcase
set incsearch
set autowrite
set hidden
set mouse=a

set number
set hlsearch

set tabstop=
set softtabstop=
set shiftwidth=
set expandtab

set autoindent
set cindent

"map the keys to jump from one window to another
"left window
nmap <C-H> <C-W>h
"bottom window
nmap <C-J> <C-W>j
"up window
nmap <C-K> <C-W>k
"right window
nmap <C-H> <C-W>l

if filereadable("/etc/vim/vimrc.local")
    source /etc/vim/vimrc.local
endif

""""""""""""""""""""""""""""""""""""""
"plugin

""""""""""""""""""""""""""""""""""""""

"cscope would not allow this action
"set autochdir

"ctags setting
"press F5 to generate tags in current directory
nnoremap <F5> :!ctags -R .<CR>
"find tags in parent directory
set tags=tags;/

"taglist setting
let Tlist_WinWidth=
let Tlist_Exit_OnlyWindow=
let Tlist_Use_Left_Window=
let Tlist_Show_One_File=
let Tlist_File_Fold_Auto_Close=
let Tlist_Process_File_Always=

"Source Explorer setting
" // The switch of the Source Explorer                                         "
" nmap <F8> :SrcExplToggle<CR>
"                                                                              "
" // Set the height of Source Explorer window                                  "
let g:SrcExpl_winHeight =
"                                                                              "
" // Set 500 ms for refreshing the Source Explorer                             "
let g:SrcExpl_refreshTime =
"                                                                              "
                                                           "
" // In order to avoid conflicts, the Source Explorer should know what plugins "
" // except itself are using buffers. And you need add their buffer names into "
" // below listaccording to the command ":buffers!"
let g:SrcExpl_pluginList = [
        \ "__Tag_List__",
        \ "_NERD_tree_",
        \ "Source_Explorer"
    \ ] 

" // The color schemes used by Source Explorer. There are five color schemes           "
" // supported for now - Red, Cyan, Green, Yellow and Magenta. Source Explorer         "
" // will pick up one of them randomly when initialization.
let g:SrcExpl_colorSchemeList = [
        \ "Red",
        \ "Cyan",
        \ "Green",
        \ "Yellow",
        \ "Magenta"
    \ ] 

" // Enable/Disable the local definition searching, and note that this is not  "
" // guaranteed to work, the Source Explorer doesn't check the syntax for now. "
" // It only searches for a match with the keyword according to command 'gd'   "
let g:SrcExpl_searchLocalDef =
"                                                                              "
" // Workaround for Vim bug @https://goo.gl/TLPK4K as any plugins using autocmd for    "
" // BufReadPre might have conflicts with Source Explorer. e.g. YCM, Syntastic etc.    "
let g:SrcExpl_nestedAutoCmd =
"                                                                              "
" // Do not let the Source Explorer update the tags file when opening          "
let g:SrcExpl_isUpdateTags =
" // Set "<F12>" key for updating the tags file artificially                   " let g:SrcExpl_updateTagsKey = "<F12>" 
" // Use 'Exuberant Ctags' with '--sort=foldcase -R .' or '-L cscope.files' to "
" //  create/update a tags file                                                "
let g:SrcExpl_updateTagsCmd = "ctags --sort=foldcase -R ." 

" // Set "<F3>" key for displaying the previous definition in the jump list    " let g:SrcExpl_prevDefKey = "<F3>" " // Set "<F4>" key for displaying the next definition in the jump list        " let g:SrcExpl_nextDefKey = "<F4>" let g:SrcExpl_jumpkey = "<ENTER>"let g:SrcExpl_gobackkey = "<SPACE>"

"trinity setting" Open and close all the three plugins on the same time nmap <F8>   :TrinityToggleAll<CR> " Open and close the srcexpl.vim separately nmap <F9>   :TrinityToggleSourceExplorer<CR> " Open and close the taglist.vim separately nmap <F10>  :TrinityToggleTagList<CR> " Open and close the NERD_tree.vim separately nmap <F11>  :TrinityToggleNERDTree<CR> 

"cscope setting"press F6 to generate cscope.out in current directory"cscope.in.out and cscope.po.out will also be generatednnoremap <F6> :!cscope -Rbkq<CR>

"add cscope.outif filereadable("cscope.out")    cs add cscope.outendif

"key mapping, <leader> is '\' defaultif has("cscope")    "Ctrl+] and Ctrl+t to jump like ctags    set cscopetag    "check cscope for definition of a symbol before checking ctags    "set to 1 if you want to reverse search order    set csto=1

    "set cscopequickfix=s-, g-, d-, c-, t-, e-, i-    "find where c symbols apper    nmap <leader>s :cs find s <C-R>=expand("<cword>")<CR><CR>
    "find where symbols define, like ctags    nmap <leader>g :cs find g <C-R>=expand("<cword>")<CR><CR>
    "find the function called by this function    nmap <leader>d :cs find d <C-R>=expand("<cword>")<CR><CR>
    "find the function call this function    nmap <leader>c :cs find c <C-R>=expand("<cword>")<CR><CR>
    "find string    nmap <leader>t :cs find t <C-R>=expand("<cword>")<CR><CR>
    "like egrep but fast    nmap <leader>e :cs find e <C-R>=expand("<cword>")<CR><CR>
    "find and open file, like find in vim    nmap <leader>f :cs find f <C-R>=expand("<cword>")<CR><CR>
    "find the file containing this file    nmap <leader>i :cs find i <C-R>=expand("<cword>")<CR><CR>
endif

srcexpl.vim文件中,需要将

exe "set autochdir"

这句注释掉,否则cscope会有问题。

二、Windows10下配置

1、配置vimrc文件

输入:version课查看vimrc文件及位置:

在$HOME/_vimrc更改设置

2、ctags安装和配置

1) 安装

http://ctags.sourceforge.net/ 下载ctags58

将压缩包解压到$VIM/vimfiles/plugin

在系统变量Path中添加$VIM/vimfiles/plugin

2) ~/.vimrc配置

在$HOME/_vimrc中插入相同的代码

其余参考ubuntu的操作,用trinity后方便很多。

最新文章

  1. ASP.NET Web API 跨域访问(CORS)
  2. git clone带用户名和密码的方式
  3. Golang哲学思想
  4. Javascript-XMLHttpRequest对象简介
  5. 【置换,推理】UVa 1315 - Creaz tea party
  6. TortoiseGit连接github不用每次输入用户名和密码的方法
  7. 使用ajaxFileUpload实现异步上传图片
  8. [JAVA]HDU 4919 Exclusive or
  9. HTML与CSS入门——第五章 使用文本块和列表
  10. 愉快的开始 - Windows程序设计(SDK)000
  11. poj 3592 Instantaneous Transference 缩点+最长路
  12. JBPM6工作台使用Mysql数据库
  13. Jenkins + Maven + Ansible + Tomcat 实现JAVA代码自动部署
  14. notepad++代码输出电话号
  15. web.xml的&lt;url-parttern&gt;的匹配规则
  16. Vue中的状态管理器 - Vuex
  17. attr跟prop的区别:
  18. Python档案袋( Sys 与 Import 模块)
  19. 016.Zabbix聚合监控
  20. 【ORACLE】ORACLE RAC设置控制文件多路

热门文章

  1. 控制div属性
  2. 微信小程序-上传多张图片加进度条(支持预览、删除)
  3. java中日期格式的转换和应用
  4. Linux的经常使用命令(2) - 关机
  5. vuex mapState使用
  6. UNP学习笔记(第七章 套接字选项)
  7. 监听iOS检测屏幕旋转状态,不需开启屏幕旋转
  8. jQuery 获取DOM元素
  9. 单点登录系统cas资料汇总
  10. Linux学习日志--共享内存