Jak mogę przejść do definicji klasy / metody w edytorze tekstu Atom?

135

Czy jest na to łatwy sposób? Na Aptanie użyłem Control+ klik i żałuję, że nie ma sposobu na zrobienie czegoś podobnego na Atom.

andromeda
źródło
1
Sam Atom nie ma tej funkcji, możesz zainstalować kilka pakietów, które sobie z tym poradzą atom.io/packages/navigate
IROEGBU
@iroegbu Wypróbowałem pakiet, ale nie działa zgodnie z oczekiwaniami, a biznes `` dwukrotne kliknięcie, aby przejść do definicji '' również nie jest uzasadniony, ponieważ czasami po prostu chcesz wybrać jakiś samorodek kodu, a to, co robi, to przeskoczyć do nowego pliku bez opcja powrotu (nie działa f3).
andromeda
1
Nie używam Atom, możesz sprawdzić discuss.atom.io/t/is-there-a-simple-go-to-definition/11809
IROEGBU
Dzięki @iroegbu na pewno obejrzę stronę, aby zobaczyć, co się pojawi.
andromeda

Odpowiedzi:

75

Miałem ten sam problem i definicja atom-goto (nazwa pakietu goto-definition ) działała dla mnie jak urok. Spróbuj raz. Możesz pobrać bezpośrednio z Atom.

Ten pakiet jest WYCOFANY. Sprawdź to na Githubie.

Sitam Jana
źródło
1
Mogę potwierdzić, że to działa. Dzięki. Domyślne powiązanie klawiszy to CTRL + ALT + ENTER
andromeda,
3
To jedyny pakiet, który działa na trochę większym projekcie. Dzięki! Próbowałem pakietów atom-ctags, symbol-get, goto i żaden z nich nie działał :-(. Albo spowodował awarię atomu, albo trwał zbyt długo.
Mi-La
To jest dość powolne, ale działa. Mój projekt jest malutki, więc nie sądzę, żeby był dobrze skalowany.
davegallant
50
Jaka jest alternatywa dla tego wycofanego pakietu?
Steven Shaw
1
autocomplete-python
Raj
32

Uważam, że problem z pakietami „przejdź do” polega na tym, że będą one działać inaczej w każdym języku.

Jeśli używasz JavaScript js-hyperclick i hyperclick (ponieważ code-links jest przestarzałe), możesz zrobić to, czego potrzebujesz.


Użyj symbols-viewpakietu, który pozwala na wyszukiwanie i przeskakiwanie do deklaracji funkcji, ale tylko do aktualnie otwartego pliku. Niestety nie znam odpowiednika w żadnym innym języku.

Istnieje również inny pakiet, który może być przydatny do przejścia do Pythona: python-tools

Od maja 2016 r. Najnowsza wersja Atom obsługuje teraz natywnie funkcję „Go-To” . W repozytorium GitHub dla tego modułu otrzymasz listę następujących kluczy:

  • symbols-view:toggle-file-symbolsaby pokazać wszystkie symbole w bieżącym pliku
  • symbols-view:toggle-project-symbolsaby pokazać wszystkie symbole w projekcie
  • symbols-view:go-to-declarationdo Skocz symbolu pod kursorem
  • symbols-view:return-from-declarationaby powrócić z skoku

zrzut ekranu

Brakuje mi teraz tylko jednej rzeczy w Atom: wiązania z kliknięciem myszy. Na Github jest otwarty problem, jeśli ktoś chce śledzić tę funkcję.

cortopy
źródło
Dzięki @corpy code-links wygląda na fajny pomysł na js i spróbuję go. Musiałem dostosować się do przepływu pracy, który nie obejmuje tej funkcji, ponieważ głównie koduję w PHP.
andromeda
Nie wiedziałbym o pakietach php. To może być długa szansa, ale czy próbowałeś już widoku drzewa symboli ? Z pewnością nie jest to to, czego chciałeś, ale przynajmniej dałoby to trochę łatwiejszej nawigacji wizualnej, jeśli twoje klasy / pliki php są długie
cortopy
Bardzo cenione. Rozejrzę się i zobaczę, co ma do zaoferowania.
andromeda
Czy możesz znaleźć symbole plików rails (.erb)?
Albert Català
python-tools działa całkowicie dobrze na pythonie [przetestowane]. Zainstaluj za pomocą tego polecenia apm install python-tools. po zainstalowaniu zrestartuj swój edytor atom i będzie działał (np. ctrl + alt + g).
Kevin Patel
17

Ja też miałem ten sam problem. I znajduję rozwiązanie:

CTRL+ALT+G

Aktualizacja:

Dzięki @Joost zainstaluj pakiet Atom python-tools, aby działał

Q-bart
źródło
15
Od 11 lipca 2016 r. To polecenie nie wydaje się nic robić.
Fang Chen,
Ta kombinacja uruchamia Styleguide of Atom, który pokaże wszystkie komponenty interfejsu użytkownika używane w Atom. Jest to przydatne jako odniesienie podczas tworzenia motywów i pakietów.
Javi Ps
Ctrl + Shift + g uruchom Styleguide, Ctrl + Alt + g wydaje się nic nie robić.
Pablo A,
3
Tylko dla ciebie, zastanawiającego się, skąd to się bierze, CTRL+ALT+Gjest domyślnym przypisaniem klawiszy goto:definitionw python-toolspakiecie atom.
Joost
Musisz także mieć zainstalowanego Pythona na swoim komputerze, python-toolsaby działał
BugShotGG
12

Funkcjonalność jest już obecna w atomie za pośrednictwem pakietu Symbols View , nie musisz niczego instalować.

Polecenie, którego szukasz, to symbol-view: przejdź do-deklaracji (przejdź do symbolu pod kursorem), które jest domyślnie powiązane z cmd-alt-down na macOS i ctrl-alt-down w systemie Linux.

pamiętaj tylko, że zadziała to tylko wtedy, gdy wygenerujesz tagi dla swojego projektu, za pośrednictwem tego pakietu lub za pośrednictwem ctags ( żywiołowy lub nie)

Edoardo
źródło
1
Domyślnie na Linuksie otrzymasz ctag Emacsa. Jak powiedział tutaj , aby uruchomić prawdziwy ctags zainstalować exuberant-ctagspakiet (biorąc pod uwagę to i to wydaje się być jeden atom aktualnie użytku).
Pablo A,
4
ctrl-alt-down w systemie Linux” - Duży wybór klawiszy, nie jest używany do poruszania się po obszarach roboczych. Cholerny atom, dlaczego takie skomplikowane. : - \
Daniel
7

Ta funkcja została wbudowana w edytor Atom (patrz: symbols-viewpakiet ), ale musisz wygenerować plik symboli ctags dla swojego projektu GH-9 , GH-20 .

Aby to zrobić, zainstaluj ctagspolecenie (np. brew install ctagsNa macOS), a następnie:

  1. Dołącz, połącz lub skopiuj ctags-configdo swojego ~/.ctags, na przykład w systemie macOS:

    ln -vs "$(find /Applications/Atom.app -name ctags-config -print -quit)" ~/.ctags
    
  2. Przejdź do folderu swojego projektu i uruchom:

    cd your/project/directory
    ctags -R .
    
  3. Uruchom ponownie edytor Atom.


Alternatywnie możesz użyć symbol-genpakietu do wygenerowania pliku symboli ctags dla swojego projektu na podstawie opcji znalezionych w .ctagspliku. Można go zainstalować z Atom Package Manager przez: apm install symbol-gen. Następnie naciśnij CMD- Alt-, Gaby wygenerować plik tagów dla swojego projektu.


Po wykonaniu powyższych czynności możesz użyć deklaracji Przejdź do z menu kontekstowego.

W systemie macOS możesz również użyć następujących skrótów klawiaturowych:

  • CMD- Raby przejść do funkcji / metody w bieżącym edytorze
  • Alt- CMD- Downprzejść do deklaracji.
kenorb
źródło
4

Aby rozwiązać ten problem, musisz zainstalować tylko 2 pakiety. Wykonaj poniższe kroki.

  1. Otwórz atom, przejdź do Pakiety (górny pasek) -> Widok ustawień -> Zainstaluj pakiety / motywy .

  2. Wpisz „goto” w polu wyszukiwania i kliknij przycisk pakietów po prawej stronie.

  3. Zainstaluj zarówno „goto (1.8.3)”, jak i „goto-definition (1.1.9)” lub nowsze wersje. Upewnij się, że oba z nich są włączone po pobraniu.
  4. W razie potrzeby możesz zrestartować atom (dla niektórych osób).
  5. Powinien być teraz w stanie działać. Kliknij prawym przyciskiem myszy metodę / atr / cokolwiek, a następnie wybierz „Przejdź do definicji”
Allan Mwesigwa
źródło
2

Sprawdź pakiet goto :

Jest to zamiennik wbudowanego pakietu widoku symboli Atom, który używa własnych plików składni Atom do identyfikacji symboli, a nie ctags. Projekt ctags jest bardzo przydatny, ale nigdy nie będzie nadążał za wszystkimi nowymi składniami Atom, które będą tworzone wraz z rozwojem Atom.

Polecenia:

  • cmd-r - Idź do symbolu pliku
  • cmd-shift-r - Idź do symbolu projektu
  • cmd-alt-down - Goto Declaration
  • Odbuduj indeks
  • Unieważnij indeks

Link tutaj: https://atom.io/packages/goto (lub wyszukaj „goto” w instalatorze pakietów)

Abram
źródło
1

Użyj atom-ctags jako pakietu dla języka C ze wszystkimi potrzebnymi rzeczami:

  • Wygenerowano ctagi dla Twojego projektu. Autouzupełnienie.
  • Idź do deklaracji: Ctrl+ Alt+ DowniAlt + Kliknij domyślnie.
  • Istnieją konfigurowalne opcje akcji Click.
Aleksandr Fadeev
źródło
Czy nie możemy wrócić do deklaracji za pomocą Alt + prawy przycisk myszy?
user1519240
Możesz wrócić, ale aby wrócić, najpierw powinieneś udać się gdzieś. Po wykonaniu „Alt + kliknięcie” można oczywiście wrócić, naciskając „Alt + lewy przycisk myszy”. A następnie „Alt + prawy przycisk myszy”, aby „wrócić” do przodu.
Aleksandr Fadeev,
Jeśli spróbujesz ten pakiet, a następnie usunąć go również pamiętać, aby ponownie włączyć Symbole pogląd: apm enable symbols-view.
Pablo A,
1

Od listopada 2018 r. Pakiet autocomplete-python oferuje tę funkcjonalność z następującą kombinacją klawiszy:

Ctrl+ Alt+G

kursorem myszy na wywołaniu funkcji.

gccallie
źródło
0

Oto skróty dla systemu Mac i Windows:

W przypadku komputerów Mac: Command + G.

W systemie Windows: CTRL + ALT + G.

Dinesh Bhatia
źródło