我们可以让Emacs找到变量的定义吗?

时间:2011-01-20 07:07:09

标签: java emacs

我尝试学习使用Emacs作为编程编辑器。我用它来编辑Java。现在,让我说我有这个代码:

 
 
 private Sprite logo = null;//1                                                                                                


    private void createSprites(){//2
        logo = new ASprite();//3

    }//4

现在我的光标位于第3行的单词徽标中。如何快速跳转到第1行的徽标定义?我所知道的只是C-s,C-r。 ..但是我必须输入徽标,而不是直接找到徽标定义。

谢谢

EDITED: 我只是在Emacs 2.2上使用语义模式:我可以使用C-c , j跳转到标签(函数,变量)的定义这解决了我的问题:)

2 个答案:

答案 0 :(得分:3)

您可以通过使用例如exuberant-ctags或已经安装的Etags构建包含所需信息的TAGS文件来实现此目的。要生成TAGS文件,您可以使用:

exuberant-ctags -e -R --language-force=java /opt/sun-jdk-1.5.0.08/share/

完成后,光标位于“徽标”字符串上,按 M - 。(emacs会询问您的TAGS文件。输入位置,它会找到定义变量。

答案 1 :(得分:0)

我怀疑emacs java-mode实际上正在构建一个内部语法树,以使这些类型的搜索成为可能。 Eclipse是这里的世界冠军。 好的想法是:Eclipse附带了一个Emacs密钥绑定,因此您会感到宾至如归。

C-x C-c