使用 vim + ctags + cscope + taglist 阅读源码  http://my.oschina.net/u/554995/blog/59927

vim tab变空格 http://www.cnblogs.com/hydah/archive/2012/04/10/2440225.html

下载安装vim
  yum search vim
  yum install vim-enhanced.x86_64

ctags 插件
    yum -y  install ctags
   
taglist插件
    wget http://jaist.dl.sourceforge.net/project/vim-taglist/vim-taglist/4.6/taglist_46.zip
    unzip taglist_46.zip;
    mkdir -p ~/.vim/plugin ; cp -r plugin/taglist.vim  ~/.vim/plugin;  
    mkdir -p  ~/.vim/doc ;  cp -r doc/taglist.txt  ~/.vim/doc;
    
cscope插件
    yum -y install cscope
   
修改vim配置文件: vi  ~/.vimrc

"       vim
let &termencoding=&encoding
set encoding=utf- fileencodings=ucs-bom,utf-,cp936
filetype plugin indent on
:set nonu
set laststatus= "总是在最后一行显示当前编辑的文件名 " ctags
set tags=tags;
"set autochdir " cscope
if filereadable("cscope.out")
cs add cscope.out
endif if has("cscope")
set cscopetag " 使支持用 Ctrl+] 和 Ctrl+t 快捷键在代码间跳来跳去
" check cscope for definition of a symbol before checking ctags:
" set to 1 if you want the reverse search order.
set csto= " add any cscope database in current directory
if filereadable("cscope.out")
cs add cscope.out
" else add the database pointed to by environment variable
elseif $CSCOPE_DB !=""
cs add $CSCOPE_DB
endif " show msg when any other cscope db added
set cscopeverbose nmap <C-/>s :cs find s <C-R>=expand("<cword>")<CR><CR>
nmap <C-/>g :cs find g <C-R>=expand("<cword>")<CR><CR>
nmap <C-/>c :cs find c <C-R>=expand("<cword>")<CR><CR>
nmap <C-/>t :cs find t <C-R>=expand("<cword>")<CR><CR>
nmap <C-/>e :cs find e <C-R>=expand("<cword>")<CR><CR>
nmap <C-/>f :cs find f <C-R>=expand("<cfile>")<CR><CR>
nmap <C-/>i :cs find i ^<C-R>=expand("<cfile>")<CR>$<CR>
nmap <C-/>d :cs find d <C-R>=expand("<cword>")<CR><CR>
endif " taglist
" 按F8按钮,在窗口的左侧出现taglist的窗口,像vc的左侧的workpace
nnoremap <silent> <F8> :TlistToggle<CR><CR>
" :Tlist 调用TagList
let Tlist_Show_One_File= " 只显示当前文件的tags
let Tlist_Exit_OnlyWindow= " 如果Taglist窗口是最后一个窗口则退出Vim
let Tlist_Use_Right_Window= " 在右侧窗口中显示
let Tlist_File_Fold_Auto_Close= " 自动折叠

====================================================================================================================

关于vim显示行号,有时候需要行号,有时候特别是需要复制的时候又太碍眼:

set nu 或者 set number //显示行号;

set nonu 或者 set nonumber //关闭自动显示行号;

set ic //查找时忽略大小写;

set noic //查找时不忽略大小写。

使用taglist

使用“ctrl w w”将光标调到taglist的窗口里

linux下阅读源代码的工具http://blog.csdn.net/nancygreen/article/details/5755190

常用命令列表:

        .  $ ctags –R *      ($ 为Linux系统Shell提示符)

        .  $ vi –t tag         (请把tag替换为您欲查找的变量或函数名)

        . :ts                                (ts 助记字:tags list, “:”开头的命令为VI中命令行模式命令)
. :tp (tp 助记字:tags preview)
. :tn (tn 助记字:tags next)
. Ctrl + ]
. Ctrl + T
把光标移到变量名或函数名上,然后按下“Ctrl+]”,这样就能直接跳到这个变量或函数定义的源文件中,并把光标定位到这一行。用“Ctrl+t”可以退回原来的地方。即使用户使用了N次“Ctrl+]”查找了N个变量,按N次“Ctrl+t”也能回到最初打开的文件,它会按原路返回 。 注意:运行vim的时候,必须在“tags”文件所在的目录下运行。否则,运行vim的时候还要用“:settags=”命令设定“tags”文件的路径,这样vim才能找到“tags”文件。 在完成编码时,可以手工删掉tags文件(帚把不到,灰尘不会自己跑掉^_^)。

====================================================================================================================

CentOS下安装VIM    http://www.centoscn.com/image-text/install/2014/0830/3612.html

几个命令:

yum search vim
which vim
yum install vim-enhanced

可能有用的操作:

下载 xclip :{
        1. How To Fetch Red Hat
Enterprise Linux / CentOS Linux Enable EPEL (Extra Packages for
Enterprise Linux) Repository 
http://www.cyberciti.biz/faq/rhel-fedora-centos-linux-enable-epel-repo/
            yum install epel-release.noarch
            
        2. yum -y install xclip
    }
    
 下载安装astyle:
    tar -zxvf astyle_2.05.1_linux.tar.gz
    cd astyle/build/gcc/ && make
    make install
    # astyle -V
        Artistic Style Version 2.05.1

vim: 搭建vim看代码的环境的更多相关文章

  1. 用ubuntu里的vim搭建一个apache2+php+mysql环境一路踩的坑

    先是安装apache2,这个很顺利,一个apt install apache就搞定了. (PS:查看linux是否已经安装了apache服务,可以通过执行apachectl -v,如果安装了的话会显示 ...

  2. 在本地环境用虚拟机win2008 sever搭建VS2013 + SVN 代码版本控制环境

    此文仅仅是自己笔记做个备忘.因为自己开发一些中小型的软件经常需要修修改改,特别是winform界面的大改动.经常需要对版本进行管理.而租用分布式服务器和远程服务器都不是自己想要的.本文结合虚拟机 + ...

  3. calltree看代码调用图

    calltree是在linux下面看c代码(尤其是复杂的内核代码)的神器. 推荐  calltree+vim + ctags + cscope + taglist [ vim: 搭建vim看代码的环境 ...

  4. Golang开发环境搭建-Vim篇

    一.一个干净的环境 找个干净的基础环境,方便确认每个搭建步骤后的效果: Ubuntu 14.04 x86_64 vim version 7.4.52 go version go1.4beta1 lin ...

  5. 使用 Vim 搭建 JavaScript 开发环境

    原文链接: https://spacevim.org/cn/use-vim-as-a-javascript-ide/ SpaceVim 是一个模块化的 Vim IDE,针对 JavaScript 这一 ...

  6. 使用 Vim 搭建 C/C++ 开发环境

    原文链接: https://spacevim.org/cn/use-vim-as-a-c-cpp-ide/ SpaceVim 是一个模块化的 Vim IDE,针对 C/C++ 语言的支持主要依靠 la ...

  7. 使用 Vim 搭建 Python 开发环境

    原文链接: https://spacevim.org/cn/use-vim-as-a-python-ide/ SpaceVim 是一个模块化的 Vim IDE,针对 Python 这一语言的支持主要依 ...

  8. java 基础(四)搭建vim作为java开发环境

    分享在Ubuntu 14.04在Vim上配置Java开发环境的过程步骤,希望对大家有所帮助. A 首先下载javacomplete.zip 到Linux公社资源站下载: --------------- ...

  9. Linux+环境使用vim搭建php+IDE

    让我们开始DIY吧-!!终端下执行命令:whereis vim     将列出vim安装的路径. 否则执行 sudo apt-get install vim 安装vim .成功安装了vim,只需要在用 ...

随机推荐

  1. CentOS6.5安装Python2.7和Pip

    注:文中所写的安装过程均在CentOS6.5 x86下通过测试,安装的Python版本为2.7.12,Pip版本为8.1.2 主要参考博文:http://bicofino.io/2014/01/16/ ...

  2. mysqld守护进程

    1.安装方式:安装文件:可执行的二进制文件: 源代码编译. 2.版本选择:常见版本区别:GA(一般应用,尽量使用最新版本)/RC(候选发布版本)/测试版本实版本选择主要是够用.适用.好用!不一定是最新 ...

  3. DataReader的例子

    前: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="DataReader对 ...

  4. android 获取本机号码需要root吗?

    首先要明白,有的手机是获取不到自身的手机号的, 查了些资料,有以下两种方式可以获取到:      1. 通过对方给你发短信,打电话获取本机号码:       2. 还有一个就是通过APN来查询,但是这 ...

  5. hdu 4737

    题目链接 直接暴力,或运算只会越来越大 #include <cstdio> #include <cstring> using namespace std; #define N ...

  6. 瑞星杀毒软件、奇虎360杀毒软件、360卫士、百度卫士联手,搞不定弹出广告 &amp; 恶意广告图标

    一位网友说他的电脑近期出了问题:开机后桌面和任务栏上的高速启动栏会出现恶意图标.删除了下次开机又会出现:使用电脑过程中每分钟都会弹出广告.他为电脑安装了瑞星杀毒软件.奇虎360杀毒软件.360卫士.百 ...

  7. Android 启动APP时黑屏白屏的三个解决方案(转载)

    你会很奇怪,为什么有些app启动时,会出现一会儿的黑屏或者白屏才进入Activity的界面显示,但是有些app却不会如QQ手机端,的确这里要做处理一下.这里先了解一下为什么会出现这样的现象,其实很简单 ...

  8. 【JavaScript】强制缓存刷新

    1.在js引用时加入时间戳. <script> document.write('<script src="xxx.js?_dc='+new Date().getTime() ...

  9. Codeforces Round #315 (Div. 2B) 569B Inventory 贪心

    题目:Click here 题意:给你n,然后n个数,n个数中可能重复,可能不是1到n中的数.然后你用最少的改变数,让这个序列包含1到n所有数,并输出最后的序列. 分析:贪心. #include &l ...

  10. NHibernate变的简单

    前言 这篇文章出自于我尝试学习使用Nhiberbnate的挫败感.我发现好像Nhibernate全部的介绍材料不是很模糊就是太详细.我所需要的就是一个简单直接的教程,能让我尽快对NHibernate熟 ...