• 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截图
     
    参看文献:
  • 相关阅读:
    【CF1157F】Maximum Balanced Circle 求一个相邻元素之间绝对值为小于1的最大环
    南昌网络赛 Distance on the tree 主席树+树剖 (给一颗树,m次查询ui->vi这条链中边权小于等于ki的边数。)
    P2486 [SDOI2011]染色(树剖)区间覆盖+区间的连续段(点权) && (边权)
    树链剖分
    南昌网络赛 I. Max answer (单调栈 + 线段树)
    HDU4641 || 6194多校 (后缀自动机-最少出现K次的字串个数 || 恰好出现K次字符串的个数)
    2019年华南理工大学程序设计竞赛(春季赛) 单身狗救星 (凸包+二分)
    2019年华南理工大学程序设计竞赛(春季赛) B 修仙时在做什么?有没有空?可以来炼丹吗?(思维建图搜索)
    数据结构-----顺序表的实现
    Java数据类型及运算
  • 原文地址:https://www.cnblogs.com/PursuitOnly/p/2837442.html
Copyright © 2020-2023  润新知