Як я можу перейти до визначення класу / методу в текстовому редакторі Atom?


135

Чи є простий спосіб це зробити? На Aptana я використовував Control+ click, і я хотів би, щоб на Atom був спосіб зробити щось подібне.


1
Atom самостійно не має такої функції, ви можете встановити деякі пакети, які обробляють це atom.io/packages/navigate
IROEGBU

@iroegbu Я спробував пакет, але він не працює, як очікувалося, і цей бізнес "подвійним клацанням для переходу до визначення" також не є гарантованим, тому що іноді просто потрібно вибрати якийсь самородковий код, і те, що він робить, це перейти до нового файлу без можливість повернутися назад (f3 не працює).
andromeda

1
Я не використовую Atom, можливо, ви захочете перевірити дискусію.atom.io
t/

Дякую @iroegbu, я обов'язково перегляну сторінку, щоб побачити, що з'являється.
andromeda

Відповіді:


75

У мене була така ж проблема, і atom-goto-definition (назва пакету goto-definition ) працювала як шарм для мене. Спробуйте один раз. Ви можете завантажити безпосередньо з Atom.

Цей пакет ВИДАЛЕНО. Перевірте це в Github.


1
Я можу підтвердити, що це працює. Дякую. Типовим прив’язкою клавіш є CTRL + ALT + ENTER
andromeda

3
Це єдиний пакет, який працює на трохи більший проект. Дякую! Я спробував atom-ctags, символ-get, goto-пакети, і жоден з них не працював :-(. Або спричинив аварію атома, або зайняв занадто довго.
Mi-La

Це досить мляво, але це працює. Мій проект крихітний, тому я не дуже думаю, що це буде гарно.
davegallant

50
Яка альтернатива цьому застарілому пакету?
Стівен Шоу

1
autocomplete-python
Радж

32

Я вважаю, що проблема з пакетами "перейти до" полягає в тому, що вони працюватимуть по-різному для кожної мови.

Якщо ви використовуєте Javascript js-hyperclick і hyperclick (оскільки код-посилання застарілі), можуть робити все, що вам потрібно.


Скористайтеся symbols-viewпакетом, який дозволяє шукати і переходити до декларації функцій, але лише до поточного відкритого файлу. На жаль, я не знаю жодного іншого еквівалента мови.

Існує також інший пакет, який може бути корисним для переходу на Python: python-tools

Станом на травень 2016 року, остання версія Atom тепер підтримує "Go-To" на початковому рівні . У репо для GitHub для цього модуля ви отримуєте список наступних клавіш:

  • symbols-view:toggle-file-symbolsщоб показати всі символи в поточному файлі
  • symbols-view:toggle-project-symbolsщоб показати всі символи в проекті
  • symbols-view:go-to-declarationщоб Перейти до символу під курсором
  • symbols-view:return-from-declarationдля повернення з стрибка

скріншот

Зараз у Atom для цього відсутня лише одна річ: прив’язка клацання миші. Про Github існує відкрите питання, якщо хтось хоче скористатися цією функцією.


Завдяки @corpy кодові посилання виглядають як акуратна ідея для js, і я спробую її випробувати. Мені довелося налаштувати робочий процес, який не включає цю функцію, оскільки я здебільшого кодую в php.
andromeda

Я б не знав про php-пакети. І це може бути дальність пострілу, але ви спробували символи-дерево ? Це, звичайно, не те, що ви хотіли, але принаймні це дозволить полегшити візуальну навігацію, якщо ваші php-класи / файли довгі
cortopy

Цінується. Я погляну і побачу, що він може запропонувати.
andromeda

Чи можете ви знайти символи файлів рейки (.erb)?
Альберт Катала

python-tools абсолютно чудово працює для python [протестовано]. Встановити за допомогою цієї команди apm install python-tools. після встановлення перезапустіть атомний редактор, і він буде працювати (наприклад, ctrl + alt + g).
Кевін Патель

17

У мене теж була така ж проблема. І я знаходжу рішення:

CTRL+ALT+G

Оновлення:

Завдяки @Joost, встановіть Atom пакет Python-інструментів, щоб він працював


15
Станом на 11 липня 2016 року ця команда, здається, нічого не робить.
Fang Chen

Ця комбінація запустить Styleguide Atom, який покаже вам всі компоненти інтерфейсу, які використовуються в Atom. Це корисно як орієнтир при розробці тем і пакунків.
Javi Ps

Ctrl + Shift + g запустіть Styleguide, Ctrl + Alt + g, здається, нічого не робить.
Пабло А

3
Тільки для вас цікаво, звідки це походить, чи CTRL+ALT+Gє прив'язка клавіш за замовчуванням goto:definitionу python-toolsпакеті atom.
Joost

Крім того, необхідно мати пітон встановлений на вашій машині для python-toolsдо роботи
BugShotGG

12

Функціонал вже присутній в атомі через пакет Symbols View вам нічого не потрібно встановлювати.

Команда, яку ви шукаєте, це перегляд символів: перейти до декларації (Перейти до символу під курсором), яка за замовчуванням прив’язана до cmd-alt-вниз на macOS та ctrl-alt-down в Linux.

просто зауважте, що він буде працювати лише в тому випадку, якщо у вас буде створено теги для вашого проекту, або через цей пакет, або через ctags ( велика кількість чи ні)


1
За замовчуванням в Linux ви отримаєте Emacs ctag. Як сказано тут, для запуску реального пакета ctagsвстановлення exuberant-ctags(враховуючи це, і це здається тим, що Atom використовується зараз).
Пабло А

4
" ctrl-alt-down на Linux" - чудовий вибір клавіш, це не так, що використовується для переміщення по робочих просторах. Чорт атом, чому так складний. : - \
Даніель

7

Ця функція вбудована в редактор Atom (див. symbols-viewПакет ), але вам потрібно створити файл символів ctags для вашого проекту GH-9 , GH-20 .

Для цього встановіть ctagsкоманду (наприклад, brew install ctagsна macOS), а потім:

  1. Додайте, зв’яжіть або скопіюйте ctags-configсвій ~/.ctagsприклад на macOS:

    ln -vs "$(find /Applications/Atom.app -name ctags-config -print -quit)" ~/.ctags
    
  2. Перейдіть до папки проекту та запустіть:

    cd your/project/directory
    ctags -R .
    
  3. Перезавантажте редактор Atom.


Крім того, ви можете використовувати symbol-genпакет для створення файлу символів ctags для вашого проекту на основі параметрів, знайдених у .ctagsфайлі. Ви можете встановити його з Atom Package Manager з допомогою: apm install symbol-gen. Потім натисніть CMD- Alt- Gдля створення файлу тегів для вашого проекту.


Після цього, ви можете скористатися декларацією "Перейти до" опцією " " з контекстного меню.

На macOS можна також використовувати такі комбінації клавіш:

  • CMD- Rперейти до функції / методу в поточному редакторі
  • Alt- CMD- Downперейти до декларації.

4

Щоб вирішити це, вам потрібно буде встановити лише 2 пакети. Виконайте наведені нижче дії.

  1. Відкрийте атом, перейдіть до Пакети (верхній рядок) -> Перегляд налаштувань -> Встановити пакети / теми .

  2. Введіть "goto" у полі пошуку та натисніть кнопку пакети праворуч.

  3. Встановіть і "goto (1.8.3)", і "goto-definition (1.1.9)" , або новіші версії. Переконайтесь, що вони активовані після завантаження.
  4. При необхідності ви можете перезапустити атом (для деяких людей).
  5. Він повинен мати можливість працювати зараз. Клацніть правою кнопкою миші метод / attr / що завгодно, а потім виберіть "Перейти до визначення"

2

Ознайомтеся з пакетом goto :

Це заміна вбудованого пакета перегляду символів Atom, який використовує власні синтаксичні файли Atom для ідентифікації символів, а не ctags. Проект ctags дуже корисний, але він ніколи не буде в курсі всіх нових синтаксисів Atom, які будуть створені в міру зростання Atom.

Команди:

  • cmd-r - Символ файлу Goto
  • cmd-shift-r - Символ проекту Goto
  • cmd-alt-down - Декларація Гото
  • Перебудувати індекс
  • Недійсний індекс

Посилання тут: https://atom.io/packages/goto (або пошук "goto" в інсталяторі пакета)


1

Використовуйте atom-ctags як пакет для мови C із усіма необхідними речами:

  • Створені каталоги для вашого проекту. Автозавершення.
  • Перейдіть до оголошення: Ctrl+ Alt+ DownіAlt + Клацніть за замовчуванням.
  • Існують настроювані параметри для дії Клік.

Чи не можемо ми повернутися до декларації за допомогою Alt + клацання правою кнопкою миші?
користувач1519240

Ви можете повернутися, але, щоб повернутися, перш за все, слід кудись поїхати. Після того як ви зробите "Alt + Click", ви можете повернутися, звичайно, з "Alt + клацанням лівою кнопкою". А потім "Alt + клацніть правою кнопкою миші", щоб "повернутися" вперед.
Олександр Фадєєв

Якщо спробувати цей пакет , а потім видалити його , чи не забудьте також повторно включити символи ракурс: apm enable symbols-view.
Пабло А

1

З листопада 2018 року пакет autocomplete-python пропонує цю функціональність за допомогою цього клавішного комбо:

Ctrl+ Alt+G

з курсором миші на виклику функції.



Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.