【问题标题】:How can I jump to class/method definition in Atom text editor?如何在 Atom 文本编辑器中跳转到类/方法定义?
【发布时间】:2015-09-13 15:45:27
【问题描述】:

有没有简单的方法来做到这一点?在 Aptana 上,我使用了 Control+click,我希望有一种方法可以在 Atom 上做类似的事情。

【问题讨论】:

标签: atom-editor


【解决方案1】:

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

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

【讨论】:

  • 我可以确认这是可行的。谢谢。默认键绑定是 CTRL+ALT+ENTER
  • 这是唯一适用于更大项目的软件包。谢谢!我已经尝试过 atom-ctags、symbol-get、goto 包,但它们都没有工作:-(。要么导致 atom 崩溃,要么花费了太长时间。
  • 这很慢但是很有效。我的项目很小,所以我真的认为这不会很好地扩展。
  • 这个已弃用的软件包的替代方案是什么?
  • 自动完成-python
【解决方案2】:

我认为“转到”包的问题在于它们对每种语言的工作方式不同。

如果您使用 Javascript js-hyperclickhyperclick(因为不推荐使用 code-links)可能会满足您的需求。


使用symbols-view package 让您搜索并跳转到函数声明,但只是当前打开的文件。不幸的是,我不知道任何其他语言的等价物。

还有另一个包可能对 Python 中的 go-to 有用:python-tools

截至 2016 年 5 月,最新版本的 Atom 现在原生支持“Go-To”。在此模块的 GitHub 存储库中,您会获得以下键的列表:

  • symbols-view:toggle-file-symbols 显示当前文件中的所有符号
  • symbols-view:toggle-project-symbols 显示项目中的所有符号
  • symbols-view:go-to-declaration to 跳转到光标下的符号
  • symbols-view:return-from-declaration 从跳跃中返回

我现在在 Atom 中只缺少一件事:鼠标点击绑定。如果有人想关注该功能,请打开issue on Github

【讨论】:

  • 谢谢@corpy code-links 对于 js 来说是个不错的主意,我会尝试一下。我不得不适应不包含此功能的工作流程,因为我主要使用 php 编写代码。
  • 我不知道 php 包。这可能是一个长镜头,但你试过symbols-tree-view吗?这当然不是你想要的,但如果你的 php 类/文件很长,至少它会提供一些更容易的视觉导航
  • 非常感谢。我会看看它提供了什么。
  • 你能找到 rails (.erb) 文件的符号吗?
  • python-tools 对 python [已测试] 非常有效。使用此命令apm install python-tools 安装。安装后重新启动您的原子编辑器,它将工作(例如 ctrl+alt+g)。
【解决方案3】:

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

CTRL+ALT+G

更新:

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

【讨论】:

  • 截至 2016 年 7 月 11 日,此命令似乎没有任何作用。
  • 这个组合推出了 Atom 的 Styleguide,它将向您展示 Atom 中使用的所有 UI 组件。在开发主题和包时作为参考非常有用。
  • Ctrl+Shift+g 运行样式指南,Ctrl+Alt+g 似乎没有任何作用。
  • 只是为了让您想知道它来自哪里,CTRL+ALT+Gpython-tools atom 包中 goto:definition 的默认键绑定。
  • 你还需要在你的机器上安装 python,python-tools 才能工作
【解决方案4】:

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

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

请注意,只有当您通过this package 或通过ctags(exuberant 或不)为您的项目生成标签时,它才会起作用

【讨论】:

  • 默认在 Linux 上你会得到 Emacs ctag。作为 said here 运行 real ctags 安装 exuberant-ctags 包(考虑到 thisthis 似乎是 Atom 当前使用的一个)。
  • "Linux 上的ctrl-alt-down" -- 键的绝佳选择,它不像用于在工作区中移动的键。该死的原子,为什么这么复杂。 :-\
  • @Daniel - 或者,如果您不幸拥有正确的 windows,您可以翻转屏幕!该死的窗户,为什么这么愚蠢;/
【解决方案5】:

Atom 编辑器已内置此功能(参见:symbols-view package),但您需要为您的项目生成 ctags 符号文件GH-9GH-20

>

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

  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 package 根据.ctags 文件中的选项为您的项目生成ctags 符号文件。您可以通过 Atom 包管理器 安装它:apm install symbol-gen。然后点击 CMD-Alt-G 为您的项目生成标签文件。


完成上述操作后,您可以使用上下文菜单中的 Go To Declaration 选项。

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

  • CMD-R 跳转到当前编辑器中的函数/方法
  • Alt-CMD-Down去声明。

【讨论】:

    【解决方案6】:

    要解决此问题,您只需安装 2 个软件包。请按照以下步骤操作。

    1. 打开 atom,转到 Packages(顶栏)--> Settings View --> Install Packages/Themes

    2. 在搜索字段中输入“goto”,然后点击右侧的包按钮。

    3. 同时安装 "goto(1.8.3)""goto-definition(1.1.9)" 或更高版本。确保下载后两者均已启用。
    4. 如有必要,您可以重新启动 atom(对于某些人)。
    5. 现在应该可以工作了。右键单击方法/attr/whatever,然后选择“Goto Definition”

    【讨论】:

      【解决方案7】:

      查看转到包

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

      命令:

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

      链接:https://atom.io/packages/goto(或在安装包中搜索“goto”)

      【讨论】:

        【解决方案8】:

        atom-ctags 用作C 语言包,满足您的所有需求:

        • 为您的项目生成 ctags。自动完成。
        • 进入声明:Ctrl+Alt+DownAlt+默认点击。
        • 点击操作有可自定义的选项。

        【讨论】:

        • 我们不能使用 Alt + 右键单击​​返回声明吗?
        • 您可以返回,但要返回,您首先应该去某个地方。完成“Alt + 单击”后,您当然可以使用“Alt + 左键”返回。然后“Alt +右键单击”以“重新返回”前进。
        • 如果您尝试使用此软件包然后将其删除,请记住还要重新启用符号视图:apm enable symbols-view
        【解决方案9】:

        对于 Typescript 用户,“atom-typescript”包增加了一个 typescript 感知符号视图,你可以用 Cmd+R 触发它,跳转到方法效果很好-

        https://atom.io/packages/atom-typescript#alternative-to-symbols-view

        【讨论】:

          【解决方案10】:

          截至 2018 年 11 月,包 autocomplete-python 提供了此组合键的功能:

          Ctrl+Alt+G

          将鼠标光标放在函数调用上。

          【讨论】:

            【解决方案11】:

            以下是 mac 和 windows 的快捷方式:

            对于 Mac:command + G

            对于 Windows:CTRL+ALT+G

            【讨论】:

              猜你喜欢
              • 2017-05-26
              • 1970-01-01
              • 1970-01-01
              • 2022-12-03
              • 2014-04-17
              • 2021-11-27
              • 2022-10-23
              • 2015-06-18
              • 2014-06-30
              相关资源
              最近更新 更多