BBS水木清华站∶精华区

发信人: althea (痛并快乐着), 信区: Linux        
标  题: Re: linux源代码的阅读(转载) 
发信站: BBS 水木清华站 (Sat Apr 22 18:54:08 2000) 
 
en,再补充一下怎么在vim里面用id-utils吧, 是从vim的help里面找到的 
7.2 Using :grep with id-utils 
You can set up :grep to work with the GNU id-utils like this: 
 
       set grepprg=lid\ -Rgrep\ -s 
       set grepformat=%f:%l:%m 
 
then 
       :grep (regexp) 
 
works just as you'd expect. 
(provided you remembered to mkid first :) 
 
我试了一下, 
set grepprg=gid 
grepformat不修改, 也可以用 
 
典型的用法示例: 
cd sourcetree 
mkid 
vim 
然后在vim里面敲 
 :set grepprg=gid 
 :grep myfunc 
这样就可以找到所有myfunc的定义和调用, 接着可以用 
 :cn 
和 
 :cp 
来跳到定义和调用的地方 
 :cl  可以列出所有找到的地方 
 
BTW, cn, cp, cl是vim里面的quickfix命令, 本来是配合make使用的, 也可以配合grep 
 
【 在 althea (痛并快乐着) 的大作中提到: 】 
 vi+ctags前面有文章讲过了 
 emacs+etags实际上是类似的, 先用etags为source tree生成TAGS文件 
 然后在emacs里面用M-.来查找函数及变量的定义 
 id-utils可以查到某个函数的调用情况, 先用mkid生成ID文件, 然后 
 gid xxx就行了. 如果在emscs里面, 可以使用id-utils带的lisp代码 
 来运行gid, 找到某个函数的所有引用情况后, 用C-x `就可以直接跳 
 到调用的地方 
 
 
-- 
※ 来源:·BBS 水木清华站 smth.org·[FROM: 162.105.179.14] 

BBS水木清华站∶精华区