Emacs ECB 方法窗口未显示所有方法
我不明白为什么我只在 ECB 方法窗口中看到几个方法,如果我单击显示的方法的一半,我会得到:
ECB 2.40 - Warning: The tag-visit-function `ecb-tag-visit-smart-tag-start' moves point outside of tag - ignored!
光标跳转到此函数:
void MyClass::writeLine(const char buf[]) {
send(sk,buf,strlen(buf),MSG_NOSIGNAL);
}
Emacs is: GNU Emacs 23.2.1 (x86_64-pc-linux-gnu ,GTK+ 版本 2.24.4)
有帮助吗?
I cannot understand why I only see a few methods in ECB method window and if I click on half of shown methods, I get:
ECB 2.40 - Warning: The tag-visit-function `ecb-tag-visit-smart-tag-start' moves point outside of tag - ignored!
and cursor jump to this function:
void MyClass::writeLine(const char buf[]) {
send(sk,buf,strlen(buf),MSG_NOSIGNAL);
}
Emacs is: GNU Emacs 23.2.1 (x86_64-pc-linux-gnu, GTK+ Version 2.24.4)
Any help?
如果您使用 ECB 使用 imenu 来派生您的方法,那么行为充其量也将是不稳定的。如果您将 ECB 与 CEDET/Semantic 一起用于符号标签,则缺少方法的可能原因有很多。它可能与预处理器符号有关,或者只是 Semantic 尚不支持的某些语法有关。
您最好的选择是尝试 CEDET 的开发版本,看看它是否解决了问题,如果没有解决,请在邮件列表中发布一个示例,也许我们可以找出问题所在。 CEDET 开发版本位于 http://cedet.sf.net。
If you are using ECB using imenu to derive your methods, then behavior will be erratic at best. If you are using ECB with CEDET/Semantic for symbol tags, then there are many possible reasons for the missing methods. It could be related to pre-processor symbols, or just some syntax that Semantic doesn't support yet.
Your best bet is to try the development version of CEDET to see if it fixes the issue, and if it doesn't, post an example to the mailing list and perhaps we can figure out what is broken. The CEDET dev version is at http://cedet.sf.net.