打造vim成类source insight
一、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) 安装:
官方说明(加黑部分为我放置的位置):
- 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) fileRefer 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后方便很多。
打造vim成类source insight的更多相关文章
- 打造linux下的source insight——vim插件安装使用总结
source insight是windows下的优秀编辑器,适合阅读管理代码,主要有以下功能: 查找函数,变量或者宏的定义. 查找函数,变量或者宏的引用位置. 查找函数被调用的位置 查找某个符号在工程 ...
- vim 绑定到 source insight 快捷键
1. optioons -> custom commands 2. 选择然后写入run命令: "D:\Program Files (x86)\Vim\vim74\gvim.exe&qu ...
- 如何将vim打造成Linux下的source insight
编写者:龙诗科 邮箱:longshike2010@163.com 2016-01-06 众所周知,windows下的source insight是阅读项目代码的神器,其神奇之处在于可以根据当前鼠标所指 ...
- source insight和vim同时使用
https://blog.csdn.net/wangn222/article/details/72721993 1.Source Insight中,Options->Custom Command ...
- 给Source Insight做个外挂系列之五--Insight “TabSiPlus”
“TabSiPlus 外挂插件”主要有两部分组成,分别是“外挂插件加载器”和“插件动态库”.“插件动态库”完成Source Insight窗口的Hook,显示Tab标签栏,截获Source Insig ...
- 给Source Insight做个外挂系列之二--将本地代码注入到Source Insight进程
上一篇文章介绍了如何发现正在运行的“Source Insight”窗口,本篇将介绍“TabSiPlus”是如何进行代码注入的.Windows 9x以后的Windows操作系统都对进程空间进行了严格的保 ...
- 给Source Insight做个外挂系列之一--发现Source Insight
一提到外挂程序,大家肯定都不陌生,QQ就有很多个版本的去广告外挂,很多游戏也有用于扩展功能或者作弊的工具,其中很多也是以外挂的形式提供的.外挂和插件的区别在于插件通常依赖于程序的支持,如果程序不支持插 ...
- Source Insight设置
Source Insight设置 1.背景色选择 要改变背景色Options->preference->windows background->color设置背景色,设置自定 ...
- 【转】破解Source Insight 3.5.0072过程 附:安装软件+注册机
转载地址:http://blog.csdn.net/qs_hud/article/details/8884867 注册机及软件下载地址:http://download.csdn.net/detail/ ...
随机推荐
- git-for-windows 安装无图标的问题
git-for-windows.ico 安装无图标的问题 一. 问题表现: 桌面图标与右建菜单图标,所是未知文件的图标, 二. 问题解决: 在shard/git/ copy 一个ico 文件(如git ...
- DesignSurface简介
The Perfect Host: Create And Host Custom Designers With The .NET Framework 2.0 Dinesh Chandnani - 三月 ...
- HDU 1017 A Mathematical Curiosity (枚举水题)
Problem Description Given two integers n and m, count the number of pairs of integers (a,b) such tha ...
- C/C++内存管理详解(转)
内存分配方式 简介 在C++中,内存分成5个区,他们分别是堆.栈.自由存储区.全局/静态存储区和常量存储区. 栈:在执行函数时,函数内局部变量的存储单元都可以在栈上创建,函数执行结束时这些存储单元自动 ...
- Codeforces Round #243 (Div. 2)——Sereja and Table
看这个问题之前,能够先看看这个论文<一类算法复合的方法>,说白了就是分类讨论,可是这个思想非常重要 题目链接 题意: 首先给出联通块的定义:对于相邻(上下和左右)的同样的数字视为一个联通块 ...
- 地图之CLLocationManager的使用 定位功能使用
1.iOS8曾经使用CLLocationManager 1.导入头文件 <CoreLocation/CoreLocation.h> 2.创建位置管理者 CLLocationManager ...
- 3DES
3DES是继DESeasy被破解后的DES加密升级版,它属于对称加密. 可指定24位长度的密钥.在java API中也有事实上现,代码例如以下: /** * 3DES 的Java SDK API 实现 ...
- java中的值传递和引用传递区别
值传递:(形式参数类型是基本数据类型):方法调用时,实际参数把它的值传递给对应的形式参数,形式参数只是用实际参数的值初始化自己的存储单元内容,是两个不同的存储单元,所以方法执行中形式参数值的改变不影响 ...
- VM tools安装错误The path "" is not a valid path to the xx generic kernel headers.
在网上搜索非常多解决方式.并不适用于我的问题,最后通过下面步骤解决: 1. 更新软件源(防止build-essential不能 安装),然后安装build-essential和linu-headers ...
- JAVA学习第二十五课(多线程(四))- 单例设计模式涉及的多线程问题
一.多线程下的单例设计模式 利用双重推断的形式解决懒汉式的安全问题和效率问题 //饿汉式 /*class Single { private static final Single t = new Si ...