ฉันจะข้ามไปยังนิยามคลาส / วิธีการในโปรแกรมแก้ไขข้อความ Atom ได้อย่างไร


135

มีวิธีง่ายๆในการทำเช่นนี้หรือไม่? ใน Aptana ฉันใช้Control+ คลิกและฉันหวังว่าจะมีวิธีทำสิ่งที่คล้ายกันบน Atom


1
Atom ด้วยตัวเองไม่มีคุณสมบัตินั้นคุณสามารถติดตั้งแพ็คเกจบางอย่างที่จัดการได้atom.io/packages/navigate
IROEGBU

@iroegbu ฉันลองใช้แพคเกจแล้ว แต่มันไม่ได้ผลตามที่คาดไว้และธุรกิจ 'ดับเบิลคลิกเพื่อไปที่คำจำกัดความ' ก็ไม่รับประกันเช่นกันเพราะบางครั้งคุณเพียงแค่ต้องการเลือกโค้ดนักเก็ตและสิ่งที่ทำคือข้ามไปยังไฟล์ใหม่โดยไม่ต้อง ตัวเลือกในการย้อนกลับ (f3 ไม่ทำงาน)
andromeda

1
ฉันไม่ได้ใช้ Atom คุณอาจต้องการที่จะตรวจสอบdiscuss.atom.io/t/is-there-a-simple-go-to-definition/11809
IROEGBU

ขอบคุณ @iroegbu ฉันจะดูหน้านี้เพื่อดูว่ามีอะไรเกิดขึ้นบ้าง
andromeda

คำตอบ:


75

ฉันมีปัญหาเดียวกันและatom-goto-definition (ชื่อแพ็คเกจgoto-definition ) ก็ใช้งานได้เหมือนมีเสน่ห์สำหรับฉัน โปรดลองสักครั้ง คุณสามารถดาวน์โหลดได้โดยตรงจาก Atom

แพ็กเกจนี้เลิกใช้แล้ว โปรดตรวจสอบใน Github


1
ฉันสามารถยืนยันได้ว่ามันได้ผล ขอบคุณ. การผูกคีย์เริ่มต้นคือ CTRL + ALT + ENTER
andromeda

3
นี่เป็นแพ็คเกจเดียวที่ใช้ได้กับโครงการที่ใหญ่กว่าเล็กน้อย ขอบคุณ! ฉันได้ลองใช้ atom-ctags, symbol-get, goto package แล้วและไม่ได้ผลเลย :-( อาจทำให้อะตอมพังหรือใช้เวลานานเกินไป
Mi-La

ค่อนข้างเฉื่อยชา แต่ก็ใช้ได้ผล โครงการของฉันมีขนาดเล็กดังนั้นฉันไม่คิดว่าจะปรับขนาดได้ดี
davegallant

50
อะไรคือทางเลือกอื่นสำหรับแพ็คเกจที่เลิกใช้แล้วนี้
Steven Shaw

1
autocomplete-python
Raj

32

ฉันเชื่อว่าปัญหาของแพ็กเกจ "ไปที่" คือแพ็กเกจจะทำงานแตกต่างกันไปสำหรับแต่ละภาษา

หากคุณใช้ Javascript js-hyperclickและhyperclick (เนื่องจากโค้ดลิงค์เลิกใช้งานแล้ว) อาจทำสิ่งที่คุณต้องการได้


ใช้symbols-viewแพ็คเกจที่ให้การค้นหาของคุณและข้ามไปที่การประกาศฟังก์ชัน แต่เป็นเพียงไฟล์ที่เปิดอยู่ในปัจจุบัน น่าเสียดายที่ฉันไม่รู้ภาษาอื่นที่เทียบเท่า

นอกจากนี้ยังมีแพ็คเกจอื่นที่อาจมีประโยชน์สำหรับการไปที่ Python: python-tools

ณ เดือนพฤษภาคม 2016 รุ่นล่าสุดของอะตอมในขณะนี้สนับสนุน "ไปสู่" โดยกำเนิด ที่GitHub repo สำหรับโมดูลนี้คุณจะได้รับรายการคีย์ต่อไปนี้:

  • symbols-view:toggle-file-symbolsเพื่อแสดงสัญลักษณ์ทั้งหมดในไฟล์ปัจจุบัน
  • symbols-view:toggle-project-symbolsเพื่อแสดงสัญลักษณ์ทั้งหมดในโครงการ
  • symbols-view:go-to-declarationเพื่อข้ามไปที่สัญลักษณ์ใต้เคอร์เซอร์
  • symbols-view:return-from-declarationเพื่อกลับจากการกระโดด

ภาพหน้าจอ

ตอนนี้ฉันมีเพียงสิ่งเดียวที่ขาดหายไปใน Atom สำหรับสิ่งนี้: การเชื่อมโยงการคลิกเมาส์ มีปัญหาที่เปิดอยู่ใน Githubหากใครต้องการติดตามคุณสมบัตินั้น


ขอบคุณ @corpy code-links ดูเหมือนจะเป็นไอเดียที่ดีสำหรับ js และฉันจะลองดู ฉันต้องปรับให้เข้ากับเวิร์กโฟลว์ที่ไม่มีคุณสมบัตินี้เนื่องจากส่วนใหญ่ฉันเขียนโค้ดใน php
andromeda

ฉันไม่รู้เกี่ยวกับแพ็คเกจ php และนี่อาจจะใช้เวลานาน แต่คุณได้ลองใช้สัญลักษณ์ - มุมมองต้นไม้หรือยัง? ไม่ใช่สิ่งที่คุณต้องการอย่างแน่นอน แต่อย่างน้อยมันก็ให้การนำทางด้วยภาพที่ง่ายขึ้นหากคลาส / ไฟล์ php ของคุณยาว
cortopy

ชื่นชมมาก ฉันจะดูและดูว่ามีอะไรให้บ้าง
andromeda

คุณสามารถค้นหาสัญลักษณ์ไฟล์ราง (.erb) ได้หรือไม่?
Albert Català

python-tools ทำงานได้ดีสำหรับ python [ทดสอบแล้ว] ติดตั้งโดยใช้คำสั่งapm install python-toolsนี้ หลังจากติดตั้งรีสตาร์ทโปรแกรมแก้ไข atom ของคุณและจะใช้งานได้ (เช่น ctrl + alt + g)
Kevin Patel

17

ฉันก็มีปัญหาเดียวกัน และฉันพบวิธีแก้ปัญหา:

CTRL+ALT+G

อัปเดต:

ขอบคุณ @Joost ติดตั้ง Atom package python-toolsเพื่อให้ใช้งานได้


15
ณ วันที่ 11 กรกฎาคม 2016 คำสั่งนี้ดูเหมือนจะไม่ทำอะไรเลย
Fang Chen

ชุดค่าผสมนี้เปิดตัว Styleguide ของ Atom ซึ่งจะแสดงส่วนประกอบ UI ทั้งหมดที่ใช้ใน Atom เป็นประโยชน์ในการอ้างอิงเมื่อพัฒนาธีมและแพ็คเกจ
Javi Ps

Ctrl + Shift + g เรียกใช้ Styleguide, Ctrl + Alt + g ดูเหมือนจะไม่ทำอะไรเลย
Pablo Bianchi

3
สำหรับคุณที่สงสัยว่าสิ่งนี้มาจากCTRL+ALT+Gไหนการผูกคีย์เริ่มต้นสำหรับgoto:definitionในpython-toolsแพ็คเกจอะตอม
Joost

คุณต้องติดตั้ง python บนเครื่องของคุณเพื่อpython-toolsให้ทำงานได้
BugShotGG

12

ฟังก์ชันนี้มีอยู่แล้วในอะตอมผ่านแพ็คเกจ Symbols View ซึ่งคุณไม่จำเป็นต้องติดตั้งอะไรเลย

คำสั่งที่คุณกำลังค้นหาคือSymbol -view: go-to-declaration (ข้ามไปที่สัญลักษณ์ใต้เคอร์เซอร์) ซึ่งถูกผูกไว้โดยค่าเริ่มต้นกับcmd-alt-downบน macOS และctrl-alt-downบน Linux

เพียงแค่ทราบว่าจะใช้งานได้ก็ต่อเมื่อคุณจะสร้างแท็กสำหรับโครงการของคุณไม่ว่าจะผ่านแพ็คเกจนี้หรือผ่านทาง ctags ( อุดมสมบูรณ์หรือไม่)


1
ตามค่าเริ่มต้นบน Linux คุณจะได้รับ Emacs ctag ในฐานะที่กล่าวว่าที่นี่ในการทำงานจริง ctagsติดตั้งexuberant-ctagsแพคเกจ (พิจารณาจากนี้และนี้ดูเหมือนว่าหนึ่ง Atom ใช้ในปัจจุบัน)
Pablo Bianchi

4
" ctrl-alt-downบน Linux" - ตัวเลือกคีย์ที่ยอดเยี่ยมไม่ใช่แบบที่ใช้เพื่อย้ายไปรอบ ๆ พื้นที่ทำงาน ไอ้อะตอมทำไมซับซ้อนจัง. : - \
Daniel

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 แพคเกจจัดการ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. ตอนนี้น่าจะใช้งานได้แล้ว คลิกขวาที่ method / attr / อะไรก็ได้จากนั้นเลือก"Goto Definition"

2

ตรวจสอบแพ็คเกจ goto :

นี่เป็นการแทนที่แพ็กเกจมุมมองสัญลักษณ์ในตัวของ Atom ที่ใช้ไฟล์ไวยากรณ์ของ Atom เพื่อระบุสัญลักษณ์แทนที่จะเป็น ctags โปรเจ็กต์ ctags มีประโยชน์มาก แต่จะไม่ติดตามไวยากรณ์ Atom ใหม่ทั้งหมดที่จะสร้างขึ้นเมื่อ Atom เติบโตขึ้น

คำสั่ง:

  • cmd-r - สัญลักษณ์ไฟล์ไปที่
  • cmd-shift-r - ไปที่สัญลักษณ์โครงการ
  • cmd-alt-down - ไปประกาศ
  • สร้างดัชนีใหม่
  • ดัชนีไม่ถูกต้อง

ลิงก์ที่นี่: https://atom.io/packages/goto (หรือค้นหา "goto" ในโปรแกรมติดตั้งแพ็คเกจ)


1

ใช้atom-ctagsเป็นแพ็คเกจสำหรับภาษา C กับทุกสิ่งที่คุณต้องการ:

  • สร้างแท็กสำหรับโครงการของคุณ เติมข้อความอัตโนมัติ
  • ไปที่การประกาศ: Ctrl+ Alt+ DownและAlt+ คลิกตามค่าเริ่มต้น
  • มีตัวเลือกที่ปรับแต่งได้สำหรับการดำเนินการคลิก

เราไม่สามารถกลับไปประกาศโดยใช้ Alt + คลิกขวาได้หรือไม่?
user1519240

คุณสามารถกลับได้ แต่หากต้องการกลับคุณควรไปที่ใดที่หนึ่งก่อน หลังจากที่คุณทำ "Alt + Click" คุณจะกลับมาพร้อมกับ "Alt + คลิกซ้าย" ได้แน่นอน จากนั้น "Alt + คลิกขวา" เพื่อ "ย้อนกลับ" ไปข้างหน้า
Aleksandr Fadeev

apm enable symbols-viewถ้าคุณพยายามที่แพคเกจนี้แล้วลบมันจำได้ว่ายังเปิดใช้งานสัญลักษณ์มุมมอง:
Pablo Bianchi


0

ทางลัดสำหรับทั้ง mac และ windows มีดังนี้

สำหรับ Mac: command + G

สำหรับ Windows: CTRL + ALT + G


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.