Atom metin düzenleyicide sınıf / yöntem tanımına nasıl atlayabilirim?


135

Bunu yapmanın kolay bir yolu var mı? Aptana'da Control+ tıkladım ve Atom'da benzer bir şey yapmanın bir yolu olsaydı.


1
Atom tek başına bu özelliğe sahip değil, bununla ilgilenen bazı paketler kurabilirsiniz atom.io/packages/navigate
IROEGBU

@iroegbu Paketi denedim ama beklendiği gibi çalışmaz ve bazen 'tanımına gitmek için çift tıklama' işi de garanti edilmez, çünkü bazen sadece bazı kod külçelerini seçmek istersiniz ve yaptığı şey olmadan yeni bir dosyaya atlamaktır. geri dönme seçeneği (f3 çalışmıyor).
andromeda

1
Atom kullanmıyorum, tartışmaya
IROEGBU

Teşekkürler @iroegbu Kesinlikle ne olduğunu görmek için sayfayı izleyeceğim.
andromeda

Yanıtlar:


75

Aynı sorunu yaşadım ve atom-goto tanımı (paket adı goto tanımı ) benim için cazibe gibi çalıştı. Lütfen bir kez deneyin. Doğrudan Atom'dan indirebilirsiniz.

Bu paket DEPRECATED. Lütfen Github'da kontrol edin.


1
Bunun işe yaradığını doğrulayabilirim. Teşekkürler. Varsayılan anahtar bağlama CTRL + ALT + ENTER
andromeda

3
Biraz daha büyük bir projede çalışan tek paket bu. Teşekkürler! Atom-ctags, symbol-get, goto paketleri denedim ve hiçbiri işe yaramadı :-(. Ya atom çökmesine neden oldu ya da çok uzun sürdü.
Mi-La

Bu oldukça yavaş ama işe yarıyor. Projem çok küçük, bu yüzden bunun iyi ölçekleneceğini gerçekten sanmıyorum.
davegallant

50
Kullanımdan kaldırılan bu pakete alternatif nedir?
Steven Shaw

1
autocomplete-python
Raj

32

"Git" paketleri ile ilgili sorunun her dil için farklı çalışacağına inanıyorum.

Javascript js-hyperclick ve hyperclick kullanıyorsanız ( kod bağlantıları kullanımdan kaldırıldığı için) ihtiyacınız olanı yapabilirsiniz.


Sadece açık olan dosyanın sadece arama ve fonksiyon bildirimine izin veren symbols-viewpaketi kullanın . Ne yazık ki, başka bir dilin eşdeğerini bilmiyorum.

Python'da go-to için yararlı olabilecek başka bir paket daha var: python-tools

Mayıs 2016 itibariyle, Atom'un son sürümü artık yerel olarak "Git" özelliğini desteklemektedir . At GitHub Bu modül için repo aşağıdaki anahtarlarının bir listesini almak:

  • symbols-view:toggle-file-symbolsiçin geçerli dosyadaki tüm sembolleri göster
  • symbols-view:toggle-project-symbolsiçin projedeki tüm sembolleri göster
  • symbols-view:go-to-declarationiçin imlecin altındaki sembole atla
  • symbols-view:return-from-declarationiçin atlama Kipinden

ekran görüntüsü

Şimdi bunun için Atom ile eksik olan tek bir şeyim var: fare tıklama bağlantıları. Bu özelliği takip etmek isteyen biri varsa Github'da açık bir sorun var .


Teşekkürler @corpy kod bağlantıları js için düzgün bir fikir gibi görünüyor ve ben deneyeceğim. Ben çoğunlukla php kod beri bu özelliği içermeyen bir iş akışına ayarlamak zorunda kaldı.
andromeda

Php paketleri hakkında bilmiyorum. Ve bu uzun bir atış olabilir, ancak semboller-ağaç görünümü denediniz mi? Kesinlikle istediğiniz şey değil, ama en azından php sınıflarınız / dosyalarınız uzunsa daha kolay görsel gezinme verir
cortopy

Çok takdir etmek. Bakıp ne sunabileceğini göreceğim.
andromeda

Raylar (.erb) dosyaları sembolleri bulabilir misiniz?
Albert Català

python-tools python [test edilmiş] için kesinlikle iyi çalışıyor. Bu komutu kullanarak yükleyin apm install python-tools. yükledikten sonra atom düzenleyicinizi yeniden başlatın ve çalışacaktır (örn. ctrl + alt + g).
Kevin Patel

17

Ben de aynı problemi yaşadım. Ve çözümü buluyorum:

CTRL+ALT+G

Güncelleme:

@Joost sayesinde Atom paketi yüklemek piton-araçları çalışması için


15
11 Temmuz 2016'dan itibaren bu komut hiçbir şey yapmıyor gibi görünüyor.
Fang Chen

Bu kombinasyon size Atom'da kullanılan tüm UI bileşenlerini gösterecek olan Styleguide of Atom'u başlatır. Tema ve paket geliştirirken referans olarak yararlıdır.
Javi Ps

Ctrl + Shift + g Stil Kılavuzunu çalıştırır, Ctrl + Alt + g hiçbir şey yapmaz.
Pablo A

3
Sadece bunun nereden geldiğini merak ettiğiniz CTRL+ALT+Giçin goto:definition, python-toolsatom paketindeki varsayılan anahtar bağlayıcıdır .
Joost

Ayrıca python-toolsçalışmak için makinenizde python yüklü olmalıdır
BugShotGG

12

İşlev, Atom'da, hiçbir şey yüklemenize gerek olmayan Symbols View paketi aracılığıyla zaten mevcuttur .

Aradığınız komut semboller görünümüdür: varsayılan olarak macOS'ta cmd-alt-down ve Linux'ta ctrl-alt- down'a bağlı olan go-to-declaration (imlecin altındaki sembole atla) .

yalnızca projeniz için bu paket veya ctags ( coşkulu veya değil) yoluyla etiketler oluşturursanız çalışacağını unutmayın.


1
Linux'ta varsayılan olarak Emacs etiketini alırsınız. As burada sözü çalıştırmak için gerçek ctags yüklemek exuberant-ctagspaketi (dikkate bu ve bu bir Atom anda kullanılması görünüyor).
Pablo A

4
" Linux'ta ctrl-alt-down " - Çok çeşitli tuşlar, çalışma alanlarında gezinmek için kullanılmaz. Kahretsin atom, neden bu kadar karmaşık. : - \
Daniel

7

Bu özellik Atom düzenleyicide yerleşiktir (bkz: symbols-viewpaket ), ancak GH-9 , GH-20 projeniz için ctags sembolleri dosyası oluşturmanız gerekir .

Bunu yapmak için, ctagskomutu yükleyin (örn brew install ctags. MacOS'ta), ardından:

  1. Ekleme, bağlantı veya kopya ctags-configsizin için ~/.ctagsMacOS üzerinde, örneğin:

    ln -vs "$(find /Applications/Atom.app -name ctags-config -print -quit)" ~/.ctags
    
  2. Proje klasörünüze gidin ve çalıştırın:

    cd your/project/directory
    ctags -R .
    
  3. Atom düzenleyiciyi yeniden başlatın.


Alternatif olarak, dosyada bulunan seçeneklere dayalı olarak projeniz için ctags sembolleri dosyası oluşturmak için symbol-genpaketi kullanabilirsiniz .ctags. Sen yükleyebilirsiniz Atom Paket Yöneticisi tarafından: apm install symbol-gen. Ardından projeniz için etiket dosyası oluşturmak üzere CMD- Alt- Gdüğmesine basın.


Yukarıdakileri izledikten sonra , içerik menüsünden Bildirime Git seçeneğini kullanabilirsiniz .

MacOS'ta aşağıdaki klavye kısayollarını da kullanabilirsiniz:

  • CMD- Rgeçerli düzenleyicide bir işleve / yönteme geçmek için
  • Alt- CMD- Downdeklarasyona gitmek.

4

Bunu çözmek için sadece 2 paket yüklemeniz gerekir. Aşağıdaki adımları takip et.

  1. Atomu açın, Paketler (üst çubuk) -> Ayarlar Görünümü -> Paketleri / Temaları Yükle'ye gidin .

  2. Arama alanına "git" yazın ve sağdaki paketler düğmesini tıklayın.

  3. Hem "goto (1.8.3)" hem de "goto-definition (1.1.9)" veya sonraki sürümlerini yükleyin . İndirme işleminden sonra her ikisinin de etkin olduğundan emin olun.
  4. Gerekirse, atomu yeniden başlatabilirsiniz (bazı insanlar için).
  5. Şimdi çalışabilmelidir. / Attr / yöntemine sağ tıklayın, ardından "Tanıma Git" i seçin

2

Check out git paketi :

Atom'un, ctags yerine sembolleri tanımlamak için Atom'un kendi sözdizimi dosyalarını kullanan yerleşik sembolleri görüntüleme paketinin yerini almıştır. Ctags projesi çok faydalıdır, ancak Atom büyüdükçe oluşturulacak tüm yeni Atom sözdizimlerine asla ayak uyduramaz.

Komutlar:

  • cmd-r - Dosya Simgesine Git
  • cmd-shift-r - Proje Sembolüne Git
  • cmd-alt-down - Bildirime Git
  • Dizini Yeniden Oluştur
  • Dizini Geçersiz Kıl

Buraya bağlantı kurun: https://atom.io/packages/goto (veya paket yükleyicide "goto" ifadesini arayın)


1

Atom-ctags'ı ihtiyacınız olan her şeyle birlikte C dili için bir paket olarak kullanın :

  • Projeniz için oluşturulan ctags. Otomatik tamamlama.
  • Bildirime gidin: Varsayılan olarak Ctrl+ Alt+ Downve Alt+ Tıklama.
  • Tıklama eylemi için özelleştirilebilir seçenekler vardır.

Alt + Sağ Tıklama kullanarak bildirime geri dönemez miyiz?
user1519240

Geri dönebilirsiniz, ancak geri dönmek için öncelikle bir yere gitmelisiniz. "Alt + Click" yaptıktan sonra, elbette "Alt + Left Click" ile dönebilirsiniz. Ve sonra "Alt + Sağ Tıkla" ileri "geri dönmek" için.
Aleksandr Fadeev

Bu paketi denemek ve daha sonra kaldırırsanız o da semboller-görünümüne yeniden etkinleştirmeyi unutmayın: apm enable symbols-view.
Pablo A

1

Kasım 2018 itibarı ile autocomplete-python paketi bu işlevselliği aşağıdaki tuş kombinasyonuyla sunar:

Ctrl+ Alt+G

imleç işlev çağrısı ile.


0

Hem mac hem de pencereler için kısayollar şunlardır:

Mac için: command + G

Windows için: CTRL + ALT + G


Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.