zoukankan      html  css  js  c++  java
  • linux下使用vim快速阅读源码

    背景

    0.最近为了学习linux内核的数据结构,需要阅读linux内核,代码量比较大些,想起来几年前阅读android源码时的工具用来还算比较顺手,就想配置下接着继续来用。
    1.软件的安装,略过linux和vim的安装,如果这些东西你都没有安装,或许这个博客你根本不需要看的,
    具体就是linux,vim+ctags,配置过程如下:
    直接安装ctags:pacman -S ctags
    安装taglist:https://sourceforge.net/projects/vim-taglist/files/vim-taglist/4.6/taglist_46.zip/download 下载压缩包,将压缩包解压到/.vim目录,解压后会在/.vim目录中生成几个子目录,如plugin和doc,进入~/.vim/doc目录,在Vim下运行"helptags ."命令安装taglist的文档,这样后期就可以通过在Vim中运行“help taglist.txt”查看taglist帮助了。
    2.配置vim配置文件,添加以下两行:
    set tags+=./tags //设置目录位当前目录,也可以像下面的行那样指定目录
    "set tags+=~/linux-5.10.59/ //这样不够灵活
    set autochdir //自动设置目录
    3.进入项目目录,例如:~/linux-5.10.59, cd ~/linux-5.10.59
    生成数据库文件tags,命令:ctags -R ,如果文件比较多,tags文件也可能非常大,我这里是linux内核源码1.0G,tags文件680多兆,生成比较慢,需要耐心等待
    4.查看特定文件内的符号、函数等,直接用vim打开文件,底行输入::TlistToggle,打开taglist窗口,
    image
    如途中所示,列出了macro和function主要是当前文件下的一切,如果在此查看WRITE_ONCE,无法查到,结果:E426: 找不到 tag: WRITE_ONCE
    5.使用vim -t tag,直接打开包含tag的文件,并定位到所在的行,上一行的解决办法:vim -t WRITE_ONCE
    image
    很明显,不但打开了文件,而且自动定位到WRITE_ONCE的那一行,此处位59行,妈妈再也不用担心我不能查到函数或变量等了。

    vim中taglist的配置方法:
    启动vim,用 “:helptags .”来配置好帮助文件
    重启vim,用“:TlistToggle”来打开和关闭taglist窗口。
    可以用“:help taglist”来获得更多帮助信
    若要默认打开taglist,_vimrc中加入
    let Tlist_Auto_Open=1
    set tags=tags; “这里的;不能省略
    set autochdir
    API定义了源码接口,而ABI定义了两个软件模块在特定体系结构上的二进制接口。它定义了应用内部如何交互,应用如何与内核交互,以及如何和库交互。API保证了源码兼容,而ABI保证了“二进制兼容(binary compatibility)”,确保对于同一个ABI,目标代码可以在任何系统上正常工作,而不需要重新编译。

    这篇文章也不错,建议看看:https://www.cnblogs.com/tsingke/p/4214862.html

    人就像是被蒙着眼推磨的驴子,生活就像一条鞭子;当鞭子抽到你背上时,你就只能一直往前走,虽然连你也不知道要走到什么时候为止,便一直这么坚持着。
  • 相关阅读:
    NLP 基础问题及解析
    linux 命令精简
    linux 文件属性及操作
    linux 文件编辑命令vim
    NLP attention 简述
    数据结构
    2020 走进新时代
    条件随机场CRF 摘要
    linux的jdk、tomcat、tomcat安装等
    VMware所在磁盘满了、linux中date修改、ssh、eclipse的使用问题等
  • 原文地址:https://www.cnblogs.com/guochaoxxl/p/15168609.html
Copyright © 2011-2022 走看看