如何在Atom文本编辑器中跳转到类/方法定义?


135

是否有捷径可寻?在Aptana上,我使用Control+ click,但我希望有一种方法可以在Atom上执行类似的操作。


1
Atom本身没有该功能,您可以安装一些可以处理它的软件包atom.io/packages/navigate
IROEGBU 2015年

@iroegbu我尝试了该程序包,但是它没有按预期工作,也不保证“双击进入定义”业务,因为有时您只想选择一些代码块,而执行的操作就是跳转到一个新文件而没有返回选项(f3不起作用)。
andromeda 2015年

1
我不使用的Atom,你可能想看看discuss.atom.io/t/is-there-a-simple-go-to-definition/11809
IROEGBU

感谢@iroegbu,我一定会看一下该页面的内容,然后弹出。
andromeda

Answers:


75

我遇到了同样的问题,atom-goto-definition(程序包名称goto-definition)对我来说就像是魅​​力。请尝试一次。您可以直接从Atom下载。

此软件包已弃用。请在Github中检查它。


1
我可以确认这可行。谢谢。默认的键绑定是CTRL + ALT + ENTER
andromeda

3
这是唯一适用于更大项目的软件包。谢谢!我曾尝试原子CTAGS,符号弄,后藤包,他们没有工作:-(要么导致原子碰撞或时间太长。
咪拉

这很慢,但是可以。我的项目很小,所以我真的认为这样做不会很好。
davegallant

50
这个不推荐使用的软件包有什么替代方案?
史蒂文·肖

1
autocomplete-python
Raj

32

我相信“转到”软件包的问题在于,每种语言它们的工作方式不同。

如果您使用Javascript js-hyperclickhyperclick(因为不赞成使用代码链接),则可以完成您所需的操作。


使用允许您搜索并跳至函数声明但仅针对当前打开文件的symbols-view软件包。不幸的是,我不知道任何其他语言的等效语言。

还有另一个对Python 入门有用的软件包:python-tools

随着2016年5月的,最近的Atom版本现在支持“去到” 本身。在此模块的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'9

我不会了解php软件包。这可能很远,但是您是否尝试过symbols-tree-view?当然,这不是您想要的,但是如果您的php类/文件很长,那么它至少会为您提供更轻松的视觉导航
cortopy 2015年

非常感激。我将看一下它所提供的功能。
andromeda

可以找到rails(.erb)文件符号吗?
艾伯特·卡塔拉(AlbertCatalà)

python-tools对于python [已测试]绝对适用。使用此命令进行安装apm install python-tools。安装后,重新启动您的atom编辑器,它将起作用(例如ctrl + alt + g)。
Kevin Patel

17

我也有同样的问题。我找到了解决方案:

CTRL+ALT+G

更新:

感谢@Joost,安装Atom软件包python-tools使其工作


15
截至2016年7月11日,此命令似乎未执行任何操作。
方陈

这种组合将启动Atom样式指南,向您展示Atom中使用的所有UI组件。在开发主题和程序包时可用作参考。
哈维PS

Ctrl + Shift + g运行样式指南,Ctrl + Alt + g似乎没有任何作用。
巴勃罗A

3
只为你想知道这是来自,CTRL+ALT+G是默认的键绑定goto:definitionpython-tools原子包。
Joost

您还需要在计算机上安装python python-tools才能正常工作
BugShotGG

12

该功能已经通过Symbols View包存在于atom中,您无需安装任何东西。

您要搜索的命令是Symbols-view:go-to-declaration(跳转到光标下方的符号),默认情况下,绑定到macOS上的cmd-alt-down和Linux上的ctrl-alt-down

只是注意,它只会工作,如果你将生成的标签为您的项目,或者通过这个包或通过CTAGS(旺盛与否)


1
在Linux上,默认情况下,您将获得Emacs ctag。如此处所述,运行真正的 ctags安装exuberant-ctags程序包(考虑到这一点似乎是Atom当前使用的一个)。
巴勃罗A

4
“ Linux上的ctrl-alt-down ” -很好的键选择,它不是用来在工作区中移动的。该死的原子,为什么这么复杂。:-\
丹尼尔(Daniel)

7

此功能已内置在Atom编辑器中(请参阅:symbols-viewpackage),但是您需要为项目GH-9GH-20生成ctags符号文件。

为此,请安装ctags命令(例如brew install ctags在macOS上),然后:

  1. 在macOS上附加,链接或复制ctags-config到您的~/.ctags示例:

    ln -vs "$(find /Applications/Atom.app -name ctags-config -print -quit)" ~/.ctags
    
  2. 转到项目文件夹并运行:

    cd your/project/directory
    ctags -R .
    
  3. 重新启动Atom编辑器。


或者,您可以使用symbol-genpackage根据文件中的选项为项目生成ctags符号.ctags文件。您可以从安装它的Atom包管理方式:apm install symbol-gen。然后打CMD- Alt- G生成您的项目标签文件。


完成上述操作后,可以使用上下文菜单中的“转到声明”选项。

在macOS上,您还可以使用以下键盘快捷键:

  • CMD- R跳转到当前编辑器中的功能/方法
  • Alt- CMD- Down去申报。

4

要解决此问题,您只需安装2个软件包。请遵循以下步骤。

  1. 打开atom,转到“ 程序包”(顶部栏)-> “设置”视图 ->“ 安装程序包/主题”

  2. 在搜索字段中键入“ goto”,然后单击右侧的“程序包”按钮。

  3. 安装“ goto(1.8.3)”“ goto-definition(1.1.9)”或更高版本。下载后请确保两个都启用。
  4. 如有必要,您可以重新启动Atom(适用于某些人)。
  5. 它现在应该可以工作了。右键单击方法/属性/任何内容,然后选择“转到定义”

2

查看goto软件包

这是使用Atom自己的语法文件识别符号而不是ctag的Atom内置symbols-view包的替代。ctags项目非常有用,但是它永远不会跟上随着Atom的增长而创建的所有新Atom语法。

命令:

  • cmd-r-转到文件符号
  • cmd-shift-r-转到项目符号
  • cmd-alt-down-转到声明
  • 重建索引
  • 无效索引

链接到这里:https : //atom.io/packages/goto(或在软件包安装程序中搜索“ goto”)


1

atom-ctags用作C语言的软件包,其中包含您需要的所有东西:

  • 为您的项目生成了ctags。自动完成。
  • 转到声明:Ctrl+ Alt+ DownAlt+默认情况下单击。
  • 点击操作有可自定义的选项。

我们不能使用Alt +右键单击返回声明吗?
user1519240

您可以返回,但是要返回,您首先应该去某个地方。完成“ Alt +单击”后,当然可以返回“ Alt +左​​键单击”。然后“ Alt +右键单击”向前“返回”。
Aleksandr Fadeev

如果你试试这个包,然后将其删除,记得也重新启用符号视图:apm enable symbols-view
巴勃罗(Pablo)



By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.