跳转(1)

CEDET 是一个很好用的套件.说是套件,因为里面集成了很多组件.具体见下文的介绍.

适用于 C/C++/Java .

### 首先,请仔细阅读下文:

http://alexott.net/en/writings/emacs-devenv/EmacsCedet.html


### 补充

1. 有些头文件使用 special preprocessor macros or some other trickery which Semantic cannot parse . 所以,需要 将需要的 marco 在配置中手工进行 map ,然后, 对指定的文件进行处理 :

map : 

(add-to-list 'semantic-lex-c-preprocessor-symbol-map '("SOMESYMBOL" . ""))
指定文件:
(add-to-list 'semantic-lex-c-preprocessor-symbol-file '"/PATH/someheader.h")

但是,对于 namespace 来讲 , 还没有解决方案. 虽然, 这种方式很常见.


2. Semantic 和 SemanticDB 对code进行语法分析,结果进行缓存,直到文件被修改. Senator 利用 他们的成果,进行 navigation .

semantic 和 senator 都可以 navigation , 但是 senator 主要基于 tag (猜测用的是 regular expression) .

semantic 的 semantic-ia-fast-jump 比 semantic-complete-jump 能够处理更复杂的 name . 因此,虽然两者都是处理的 project 级别的跳转.

senator 的 next/previous tag 和 go-to-up-reference 能够追溯到 文件头.

3. 暂时到这里.下面是对 EDE 的一个细致的分析.

http://epsilonvectorplusplus.wordpress.com/2012/04/27/a-functional-introduction-to-cedet-ede/


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值