Bagaimana cara saya melompat ke definisi kelas / metode di editor teks Atom?

135

Adakah cara mudah untuk melakukan ini? Di Aptana saya menggunakan Control+ klik dan saya berharap ada cara untuk melakukan hal serupa di Atom.

andromeda
sumber
1
Atom sendiri tidak memiliki fitur itu, Anda dapat menginstal beberapa paket yang menanganinya atom.io/packages/navigate
IROEGBU
@iroegbu Saya mencoba paketnya tetapi tidak berfungsi seperti yang diharapkan dan bisnis 'klik dua kali untuk pergi ke definisi' juga tidak dijamin karena terkadang Anda hanya ingin memilih beberapa kode nugget dan yang dilakukannya adalah melompat ke file baru tanpa opsi untuk kembali (f3 tidak berfungsi).
andromeda
1
Saya tidak menggunakan Atom, Anda mungkin ingin melihat diskusi.atom.io/t/is-there-a-simple-go-to-definition/11809
IROEGBU
Terima kasih @iroegbu. Saya pasti akan melihat halaman ini untuk melihat apa yang muncul.
andromeda

Jawaban:

75

Saya memiliki masalah yang sama dan atom-goto-definition (nama paket goto-definition ) bekerja seperti pesona bagi saya. Silakan coba sekali. Anda dapat mengunduh langsung dari Atom.

Paket ini TIDAK DIGUNAKAN LAGI. Silakan periksa di Github.

Sitam Jana
sumber
1
Saya dapat mengonfirmasi bahwa ini berfungsi. Terima kasih. Pengikatan kunci default adalah CTRL + ALT + ENTER
andromeda
3
Ini adalah satu-satunya paket yang bekerja pada proyek yang lebih besar. Terima kasih! Saya telah mencoba atom-ctags, symbol-get, goto package dan tidak ada yang berhasil :-(. Bisa menyebabkan atom crash atau memakan waktu terlalu lama.
Mi-La
Ini cukup lamban tetapi berhasil. Proyek saya kecil jadi menurut saya ini tidak akan berkembang dengan baik.
davegallant
50
Apa alternatif untuk paket yang tidak digunakan lagi ini?
Steven Shaw
1
autocomplete-python
Raj
32

Saya percaya masalah dengan paket "pergi ke" adalah bahwa mereka akan bekerja secara berbeda untuk setiap bahasa.

Jika Anda menggunakan Javascript js-hyperclick dan hyperclick (karena code-link sudah tidak digunakan lagi) dapat melakukan apa yang Anda butuhkan.


Gunakan symbols-viewpaket yang memungkinkan Anda mencari dan melompat ke deklarasi fungsi tetapi hanya file yang dibuka saat ini. Sayangnya, saya tidak tahu padanan bahasa lain.

Ada juga paket lain yang bisa berguna untuk go-to dengan Python: python-tools

Mulai Mei 2016, versi Atom terbaru sekarang mendukung "Go-To" secara native . Di repo GitHub untuk modul ini, Anda mendapatkan daftar kunci berikut:

  • symbols-view:toggle-file-symbolsuntuk Menampilkan semua simbol dalam file saat ini
  • symbols-view:toggle-project-symbolsuntuk Menampilkan semua simbol dalam proyek
  • symbols-view:go-to-declarationuntuk Melompat ke simbol di bawah kursor
  • symbols-view:return-from-declarationuntuk Kembali dari lompatan

tangkapan layar

Sekarang saya hanya memiliki satu hal yang hilang dengan Atom untuk ini: binding klik mouse. Ada masalah terbuka di Github jika ada yang ingin mengikuti fitur itu.

kortopi
sumber
Terima kasih @corpy code-links sepertinya ide bagus untuk js dan saya akan mencobanya. Saya harus menyesuaikan dengan alur kerja yang tidak menyertakan fitur ini karena saya kebanyakan membuat kode dalam php.
andromeda
Saya tidak tahu tentang paket php. Dan ini mungkin tembakan yang panjang, tetapi apakah Anda sudah mencoba simbol-tampilan-pohon ? Ini jelas bukan yang Anda inginkan, tapi setidaknya itu akan memberikan beberapa navigasi visual yang lebih mudah jika kelas / file php Anda panjang
cortopy
Sangat dihargai. Saya akan melihat dan melihat apa yang ditawarkan.
andromeda
Dapatkah Anda menemukan simbol file rails (.erb)?
Albert Català
python-tools bekerja dengan baik untuk python [diuji]. Instal menggunakan perintah ini apm install python-tools. setelah menginstal restart editor atom Anda dan itu akan berfungsi (mis. ctrl + alt + g).
Kevin Patel
17

Saya juga punya masalah yang sama. Dan saya menemukan solusinya:

CTRL+ALT+G

Memperbarui:

Terima kasih kepada @Joost, instal alat python-tools Atom untuk membuatnya berfungsi

Q-bart
sumber
15
Mulai 11 Juli 2016 perintah ini sepertinya tidak melakukan apa-apa.
Fang Chen
Kombinasi ini meluncurkan Styleguide of Atom, yang akan menampilkan semua komponen UI yang digunakan di Atom. Ini berguna sebagai referensi saat mengembangkan tema dan paket.
Javi Ps
Ctrl + Shift + g menjalankan Styleguide, Ctrl + Alt + g sepertinya tidak melakukan apa-apa.
Pablo Bianchi
3
Hanya untuk Anda yang bertanya-tanya dari mana asalnya, CTRL+ALT+Gadalah pengikatan kunci default untuk goto:definitiondalam python-toolspaket atom.
Joost
Anda juga perlu menginstal python di mesin Anda python-toolsagar berfungsi
BugShotGG
12

Fungsionalitas tersebut sudah ada di atom melalui paket Symbols View Anda tidak perlu menginstal apa pun.

Perintah yang Anda cari adalah symbol-view: go-to-declaration (Lompat ke simbol di bawah kursor) yang secara default terikat ke cmd-alt-down di macOS dan ctrl-alt-down di Linux.

cukup perhatikan bahwa ini hanya akan berfungsi jika Anda telah membuat tag untuk proyek Anda, baik melalui paket ini atau melalui ctag ( bersemangat atau tidak)

Edoardo
sumber
1
Secara default di Linux Anda akan mendapatkan Emacs ctag. Seperti yang dikatakan di sini untuk menjalankan paket instal yang sebenarnya (mengingat ini dan ini tampaknya yang digunakan Atom saat ini). ctagsexuberant-ctags
Pablo Bianchi
4
" ctrl-alt-down di Linux" - Pilihan tombol yang bagus, tidak seperti yang digunakan untuk berpindah-pindah ruang kerja. Sialan atom, kenapa begitu rumit. : - \
Daniel
7

Fitur ini telah terpasang di editor Atom (lihat: symbols-viewpaket ), tetapi Anda perlu membuat file simbol ctags untuk proyek Anda GH-9 , GH-20 .

Untuk melakukan itu, instal ctagsperintah (misalnya brew install ctagsdi macOS), lalu:

  1. Tambahkan, tautkan, atau salin ctags-configke ~/.ctags, contoh di macOS:

    ln -vs "$(find /Applications/Atom.app -name ctags-config -print -quit)" ~/.ctags
    
  2. Buka folder proyek Anda dan jalankan:

    cd your/project/directory
    ctags -R .
    
  3. Mulai ulang editor Atom.


Alternatifnya, Anda dapat menggunakan symbol-genpackage untuk menghasilkan file simbol ctags untuk proyek Anda berdasarkan opsi yang ditemukan di .ctagsfile. Anda dapat menginstalnya dari Atom Package Manager oleh: apm install symbol-gen. Kemudian tekan CMD- Alt- Guntuk menghasilkan file tag untuk proyek Anda.


Setelah mengikuti di atas, Anda dapat menggunakan opsi Go To Declaration dari menu konteks.

Di macOS, Anda juga dapat menggunakan pintasan keyboard berikut:

  • CMD- Runtuk melompat ke fungsi / metode saat ini, editor
  • Alt- CMD- Downuntuk pergi ke deklarasi.
kenorb
sumber
4

Untuk mengatasi ini, Anda hanya perlu menginstal 2 paket. Ikuti langkah-langkah di bawah ini.

  1. Buka atom, pergi ke Paket (bilah atas) -> Tampilan Pengaturan -> Instal Paket / Tema .

  2. Ketik "goto" di bidang pencarian dan klik tombol paket di sebelah kanan.

  3. Instal "goto (1.8.3)" dan "goto-definition (1.1.9)" , atau versi yang lebih baru. Pastikan keduanya diaktifkan setelah diunduh.
  4. Jika perlu, Anda dapat memulai ulang atom (untuk beberapa orang).
  5. Ini harus bisa bekerja sekarang. Klik kanan pada metode / attr / apapun, lalu pilih "Goto Definition"
Allan Mwesigwa
sumber
2

Lihat paket goto :

Ini adalah pengganti paket tampilan simbol bawaan Atom yang menggunakan file sintaks Atom sendiri untuk mengidentifikasi simbol, bukan ctag. Proyek ctags sangat berguna tetapi tidak akan pernah bisa mengikuti semua sintaks Atom baru yang akan dibuat saat Atom berkembang.

Perintah:

  • cmd-r - Simbol File Goto
  • cmd-shift-r - Goto Project Symbol
  • cmd-alt-down - Deklarasi Goto
  • Buat Ulang Indeks
  • Indeks Tidak Valid

Tautkan di sini: https://atom.io/packages/goto (atau cari "goto" di penginstal paket)

Abram
sumber
1

Gunakan atom-ctags sebagai paket untuk bahasa C dengan semua hal yang Anda butuhkan:

  • Ctag yang dihasilkan untuk proyek Anda. Pelengkapan otomatis.
  • Pergi ke deklarasi: Ctrl+ Alt+ Downdan Alt+ Klik secara default.
  • Ada opsi yang dapat disesuaikan untuk tindakan Klik.
Aleksandr Fadeev
sumber
Bisakah kita kembali ke deklarasi menggunakan Alt + Klik Kanan?
pengguna1519240
Anda dapat kembali, tetapi untuk kembali Anda harus pergi ke suatu tempat terlebih dahulu. Setelah Anda melakukan "Alt + Klik", Anda tentu saja dapat kembali dengan "Alt + Klik Kiri". Dan kemudian "Alt + Klik Kanan" untuk "kembali" ke depan.
Aleksandr Fadeev
Jika Anda mencoba paket ini dan kemudian menghapusnya ingat untuk juga mengaktifkan kembali simbol-view: apm enable symbols-view.
Pablo Bianchi
1

Mulai November 2018, paket pelengkapan otomatis-python menawarkan fungsionalitas ini dengan kombo kunci ini:

Ctrl+ Alt+G

dengan kursor mouse pada pemanggilan fungsi.

gccallie.dll
sumber
0

Berikut adalah pintasan untuk mac dan windows:

Untuk Mac: perintah + G

Untuk Windows: CTRL + ALT + G

Dinesh Bhatia
sumber