2011-01-20 8 views
5

Próbuję nauczyć się używać Emacsa jako mojego edytora programowania. Używam go do edycji Java. Teraz, powiedzmy mam ten kod:Czy możemy sprawić, aby Emacs znalazł definicję zmiennej?


private Sprite logo = null;//1                         


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

    }//4 

i teraz mój kursor znajduje się w logo wyraz w wierszu 3. W jaki sposób można szybko przeskoczyć do definicji logo w wierszu 1? Wszystko co wiem to C-s, C-r. .. ale potem muszę wpisać logo, a nie bezpośrednio znaleźć definicję logo.

Dziękuję

edycja: Właśnie za pomocą semantycznego-mode na Emacs 2.2: Mogę skakać do definicji znacznika (funkcja zmiennej) używając C-c , j to rozwiązać mój problem :)

+0

Uzyskaj prawdziwe IDE Java.IntelliJ darmowa wersja.Mam odradzam korzystanie z emacs, nawet jeśli jest nie uprzejmy, tak jak musimy ocalić osobę przed samobójstwem wbrew jego wolnej woli Dosłownie zabijasz swoje życie, jeśli nie używasz IDE do programowania w języku Java. – irreputable

+0

Zasadniczo już używam Netbeans przez, powiedzmy, 3 lata, a także Eclipse Obecnie moja praca tutaj pozwala mi swobodnie wybierać edytora (nie IDE), który mi się podoba, ponieważ używamy własnego systemu budynku, myślę, że Emacs ładnie wpasuje się w moje wymagania – swdev

Odpowiedz

3

Można to osiągnąć poprzez zbudowanie pliku tags zawierający potrzebne informacje za pomocą np exuberant-ctags lub Etags który powinien być już zainstalowany. W celu wygenerowania pliku tagów można użyć:

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

Gdy to zrobisz, a kursor znajduje się na „logo” string, naciśnij M-. (a emacs poprosi o plik TAGS, podaj lokalizację, a znajdzie definicję zmiennej:

+0

Spróbuję. Ale czy to nie jest M-x. oznacza wprowadzanie linii poleceń emacs? – swdev

+0

Co masz na myśli przez "linię poleceń emacsa"? – Thomas

+0

Owh, przepraszam. Mam na myśli, że kiedy wciskamy M-x (czyli ALT-x w moim Windowsie), to nie "to emacs poprosi o polecenie ??? To właśnie mam na myśli :) – swdev

0

I wątpliwość, że emacs java-mode buduje wewnętrzne drzewo składniowe, aby umożliwić tego typu wyszukiwania. Eclipse jest mistrzem świata. Dobra myśl: Eclipse jest wyposażony w wiązania klawiszowe Emacs, dzięki czemu poczujesz się jak w domu.

C-x C-c

+6

Nie sądzę, że kluczowe powiązania są głównym powodem ludzie używają emacsa – sepp2k

+2

tak, rzeczywiście. Lubię środowisko tutaj w Emacs, gdzie (poza tym jest subiektywne) wszystko, co widzę, to jeden czarny ekran Emacsa i tam widać kod wydrukowany. – swdev

+0

Nigdy nie powiedziałem, że to główny powód, ale Eclipse wspiera tych, którzy ułatwiają przejście. A jeśli jedno okno jest twoim pragnieniem, możesz prawie ułożyć wszystkie okna Eclipse w dowolny sposób. Napisałem swój uczciwy udział w elizycznym kodzie, ale chodzenie gdzieś w pobliżu zestawu funkcji Eclipse to szaleństwo. –

Powiązane problemy