在source insight中,当光标落到一个函数或变量上,会有一个辅助窗口显示出它的定义。我仿照着这个功能在emacs中做了一个类似的界面。
在使用前需要首先安装gnu global 和 cedet,从下面两个网址可以分别找到:
http://www.gnu.org/software/global/
http://cedet.sourceforge.net/
cedet最好使用cvs版本,bug比较少。
把附件中的文件g-si.el放到你自己放扩展的目录里,然后在.emacs中添加:(require 'g-si)
然后添加几个快捷键绑定(以c语言为例):
(defun my-g-si-c-map ()
(interactive)
(define-key c-mode-map [mouse-1] 'g-si-show-define)
(define-key c-mode-map [mouse-2] 'g-si-show-ref)
(define-key c-mode-map [mouse-3] 'g-si-pop-mark)
)
(add-hook 'c-mode-hook 'my-g-si-c-map)
如果你用emacs写c++程序就把c-mode-hook改成c++-mode-hook, 其他的语言凡是cedet和global支持的也都以此类推。
当你打开一个c语言文件时,输入M-x g-si-enable,就会打开一个名叫"aaa"的buffer,用鼠标左键单击一个函数名。会在这个buffer中显示出它的定义,单击"aaa" buffer,可以在另外的窗口中打开这个该函数原型所在的文件。单击鼠标右键返回。单击鼠标中键可以显示出所有该函数被调用的地方。
最后,不得不说,我这个东西是一个非常初级的版本,相当粗糙(本人emacs新手),欢迎提一些好的建议给我。
在emacs中制作像source insight一样的预览窗口
-
- 帖子: 57
- 注册时间: 2008-09-13 23:53
在emacs中制作像source insight一样的预览窗口
- 附件
-
- g-si.el.tar.gz
- (3.68 KiB) 已下载 97 次
-
- 帖子: 56
- 注册时间: 2006-05-15 3:22
Re: 在emacs中制作像source insight一样的预览窗口
我的cedet在win上装不好,在linux上没问题。
-
- 帖子: 307
- 注册时间: 2008-12-01 7:52
- 来自: 蜀山
Re: 在emacs中制作像source insight一样的预览窗口
兄弟给一张截图吧
-
- 帖子: 57
- 注册时间: 2008-09-13 23:53
-
- 帖子: 57
- 注册时间: 2008-09-13 23:53
Re: 在emacs中制作像source insight一样的预览窗口
xiao2004 写了:我的cedet在win上装不好,在linux上没问题。
这很奇怪呀,cedet完全是lisp写的,应该与系统无关才对。
你是把linux下make 好的cedet文件夹拷贝到windows下的吗?会不会是路径设置有问题,比如"\" "/"这俩东西弄反了?
-
- 帖子: 57
- 注册时间: 2008-09-13 23:53
-
- 帖子: 34
- 注册时间: 2007-12-23 12:22
- openware
- 帖子: 173
- 注册时间: 2009-02-22 14:15
- 联系:
Re: 在emacs中制作像source insight一样的预览窗口
能将你的emacs的配置文件,包括括展发一份上来么?sharpshootor 写了:贴张图:
Desire Freedom, Love Beauty, Keep Hacking。