zoukankan      html  css  js  c++  java
  • Vim+VimGdb+Ctags+Glibc+TagList+WinManager

     
    1.下载vim7.3,vimgdb7.3,ctags,glibc-2.9,taglist4.5,winmanager2.3
    ----------------------------------------------------------------------------------------------
    ctags -> sudo apt-get install ctags
     
    2.安装一下编译vim7.3所需的库
    ----------------------------------------------------------------------------------------------

    sudo apt-get install libreadline5-dev
    sudo apt-get install lua5.1

     
    3.编译vim
    ----------------------------------------------------------------------------------------------
    tar xjvf  vim-7.3.tar.bz2  -C /tmp "把vim解压到根目录的tmp目录下"
    tar xzvf  vimgdb-for-vim7.3.tar.gz  -C /tmp "把vimgdb解压到根目录的tmp目录下,自己注意包名."
    cd /tmp "进到tmp目录"
    patch  -p0 < vimgdb-for-vim7.3/vim73.patch "为vim7.3打gdb的补丁"

    cd vim73/src "打完补丁后进入vin7.3的src目录"

    make "编译"
    sudo make install "安装"
    sudo cp  -rf /tmp/vimgdb-for-vim7.3/vimgdb_runtime/*  /usr/local/share/vim/vim73/ "复制runtime文件"
    sudo vim "此时vim7.3已安装成功,如果你本机已经装过vim的话,vi命令将打开的是你旧版的,vim才是你刚装的,如果想用vi打开刚安装的vim,在 ~/.bashrc 里加多一条 alias vi='vim' 即可."
    :helptags /usr/local/share/vim/vim73/doc/ "最后生成下帮助文件"
     
    4.生成ctags的标签文件
    ----------------------------------------------------------------------------------------------
    在第一步里成功安装ctags后,把下载下来的 glibc-2.9.tar.bz2 解压,并cd进去,然后执行 ctags -R 命令,让它生成一下标签文件.
     
    5.安装taglist和winmanager
    ----------------------------------------------------------------------------------------------
    这步很简单,把下载下来的taglist4.5和winmanager2.3的压缩包里的doc和plugin目录丢进 ~/.vim 目录里,
    如果没有这个目录就创建一个.
     
    6.配置vim脚本
    ----------------------------------------------------------------------------------------------
    把下面的内容添加到你的 ~/.vimrc 里面
     
    set mouse=a
    :syntax enable
    :set previewheight=12
    :run macros/gdb_mappings.vim
    :set asm=0
    :set gdbprg=/usr/bin/gdb
    :map <F8> :bel 30vsplit gdb-variables<cr>
    :map <F9> :close<Esc>
    set tags+=/home/dara/glibc29/tags
    map <c-w><c-f> :FirstExplorerWindow<cr>
    map <c-w><c-b> :BottomExplorerWindow<cr>
    map <c-w><c-t> :WMToggle<cr>
    let g:winManagerWindowLayout='FileExplorer|TagList'
    :map <F6> :WMToggle<cr>
    filetype plugin on
     
    其中红色的地方要设置成你本机的路径(就是刚才生成ctags的标签文件的那个地方).
    其中蓝色的地方分别是:
    <F8> 为显示调试监视变量窗口
    <F9> 为关闭调试监视变量窗口
    <F6> 为显示文件管理和当前函数列表的一个分割窗口.按一次显示,再按一次就关闭.
    以上快捷都可以随意修改,随你个人喜好.
     
    5.基本用法
    ----------------------------------------------------------------------------------------------
    例如:
    $:vi ml.c
    1. #include <stdio.h>
    2. #include <stdlib.h>
    3. int main(){
    4.     int i=10;
    5.     i++;
    6.     i--;
    7.     int b=i+100;
    8.     int c=i+b;
    9.     float d=4.1234;
    10.     int p=d+123;
    11.     malloc(1024);
    12.     return 0;
    13. }
    然后再命令模式下键入 :!cc ml.c -g -o ml 回车 再按回车回到vi界面.这时已经生成一个可调试的程序.
    接下下来是调用刚才所安装的那些插件的时候了.
    按 F7一下,切换到调试模式下,然后按一下空格键,将会在vi里分割出一个小窗口,在小窗口里输入 :file ml
    , 这时候他会告诉你,载入ml文件符号完成.OK!继续按一下回车,让窗口消失.然后把光标点点到你要下断点的那一行,然后按 Ctrl+b 这时,那一行应该会变成其他颜色,然后开始运行调试,按 Shift + r .这时候程序应该会停在你刚下断点的地方,这时,按一下 F8 让调试监视变量窗口出来,然后把光标点双击你想要监控的变量上,这时vi底下的状态栏应该为 ---VISUAL--- 显示模式,如果没看见,就点到看到为止.然后按下 Ctrl + p 看变量是不是出现在调试监视变量窗口了,要监视其他变量也是按上面的步骤即可.然后按下 Ctrl + n 让程序单步执行,如果想跳到下一个断点或一直执行,就按Ctrl + c .
     
    OK,现在我们试一下Ctags和TagList,WinManager的功能,照例 $:vi ml.c 这时按一下F6,vi左边是不出现两个窗口了,文件管理和函数显示都可以用鼠标双击调用(用键盘则需要按Shift+Ctrl+w切换到对应窗选中按回车 才行.),试一下把鼠标放到你想看的函数,例如 malloc(1024);这行,把光标放在malloc中,按后按下Ctrl + } 这时会跳到malloc的定义里,再按下Ctrl + o 就会跳回来了.呵呵!是不是很方便!
     
    来一张我自己的vim截图
     
    参看文献:
  • 相关阅读:
    @RequestParam注解使用:Name for argument type [java.lang.String] not available, and parameter name information not found in class file either.
    cglib动态代理导致注解丢失问题及如何修改注解允许被继承
    springboot Autowired BeanNotOfRequiredTypeException
    git根据用户过滤提交记录
    不同包下,相同数据结构的两个类进行转换
    How to use Jackson to deserialise an array of objects
    jooq实践
    java如何寻找main函数对应的类
    Python--matplotlib
    Python 和 Scikit-Learn
  • 原文地址:https://www.cnblogs.com/PursuitOnly/p/2837442.html
Copyright © 2011-2022 走看看