Visual Studio Code 中的方法列表

Posted

技术标签:

【中文标题】Visual Studio Code 中的方法列表【英文标题】:Method List in Visual Studio Code 【发布时间】:2016-07-09 08:00:51 【问题描述】:

我最近开始使用 Visual Studio Code 编辑器。我真的很喜欢它,但有一个(对我而言)我无法找到的关键功能。是否有方法列表,类似于 NetBeans 中的 Navigator 或 Visual Studio 中的 Member 下拉列表?

【问题讨论】:

见code.visualstudio.com/docs/editor/editingevolved 这个缺失的功能正在github.com/Microsoft/vscode/issues/5605进行跟踪 发布! code.visualstudio.com/updates/v1_24#_outline-view 我没有答案,也无法得到此页面上的任何建议来工作,所以我使用免费版本的 CodeLobster,并且已经使用了多年。它非常容易学习,并且有大量的智能感知框架。它还显示了具有不同脚本语言(即 phpjavascript)的页面的功能和方法。 不幸的是,侧边栏中的 Outline 和 Ctrl+Shift+O+: 似乎都无法通过符号的可见性过滤符号(例如,只有 public 的符号)。 vscode 的 GitHub 上也有问题(例如issue 和issue),但它们都已关闭,因为据说它们是重复的,而我找不到主要问题。谁能找到主要问题以便我支持它? 【参考方案1】:

是的,有workbench.action.gotoSymbol 命令。在 Windows 和 Linux 上,默认设置为 CTRL+Shift+O

如果此命令不适用于您正在使用的文件类型,那么您应该查看VSCode extensions。并非所有语言都支持此功能。

【讨论】:

嗯,不是我希望的行为。我尝试了几种文件类型:在 C++ 文件中,它显示“不幸的是,我们没有文件的符号信息”,而在 Python 中,它显示“Python 扩展中出现错误”。 好吧,该死,看来我倒霉了。我尝试了不同的 Python 扩展,现在我收到“无符号信息”错误。 :( 不过感谢您提供的信息。 这是symbols for PHP。 添加到这个,如果你在Ctrl+ Shift + O之后按:,结果将按类型分组,将所有功能都列在一个子列表中。 对于 macOS 用户,Cmd + Shift + O【参考方案2】:

更新:正如@jeff-xiao 在 cmets 中所述,此扩展已弃用,现在是 built in feature of Visual Studio code。它应该在文件资源管理器的底部作为“大纲”视图可用。

上一篇: 现在有一个扩展支持这一点。 Code Outline 在“资源管理器”部分创建一个面板,对于 JavaScript,将列出文件中的变量和函数。我已经使用了一段时间了,它会抓挠我的痒。其他评论者提到它很好地支持 Python 和 PHP。

它似乎仍在开发中,但我没有遇到任何问题。开发版可用on GitHub。如果您是阅读本文的作者 - 谢谢!

看起来是这样的:

如果代码大纲不可见,您可以通过以下方式显示它:

【讨论】:

很好的调用,与 JavaScript 配合良好,无需寻找隐藏的键盘快捷键,很好。 扩展名已弃用:已弃用。请使用 Visual Studio Code 自带的Outline view。 不支持在 Python 中查看类的所有方法,我是否正确? 我猜有时大纲视图不会显示 python 文件的任何内容。 C++有这样的选择吗?【参考方案3】:

调用代码的Go to symbol 命令:

macOS:cmd+shift+o(字母o,非零)

李>

Windows/Linux:ctrl+shift+o

在调用 Go to symbol 后键入冒号 (:) 将按类型(类、接口、方法、属性、变量)对符号进行分组。然后只需滚动到methods 部分。

【讨论】:

确认它也适用于 PHP,但请注意我安装了 PHP 智能感知插件。我不知道这有什么不同。 必须有一种简单的方法来查看方法。滚动浏览一堆其他东西的列表以找到方法部分是一种痛苦。如果无法做到这一点,应该有人制作插件来做到这一点。 输入 @ 而不是 : 用于 Go 函数列表 如果不适用于 PHP,那么请确保您有 'PHP Symbols' 插件并且可以正常工作。【参考方案4】:

2020版VSCodeCmd+P

# - 跨文件查找符号 @ - 在文件中查找符号 @: - 在文件中分组符号

【讨论】:

谢谢,这很方便! 这不是我最初看的,但它好多了【参考方案5】:

在VSCode 1.24 你可以这样做。

右击侧边栏的EXPLORER,勾选Outline

【讨论】:

无法使用outline探索js类的方法! 适用于 Java!我用的是vscode 2020更新版 但这是一个大纲,它显示的不仅仅是方法,比如编辑窗口上方方便的下拉框。无需借助快捷方式和额外的输入来获得我想要的东西。 edit 嗯..面包屑其实更符合它,如果你已经在一个例程中,你可以点击面包屑,它会弹出一个下拉框..【参考方案6】:

有一个新版本可以做到这一点! 在这里查看the latest release notes regarding code outline

【讨论】:

【参考方案7】:

更新:扩展功能现已内置,扩展本身现已弃用

我找到了这个扩展名:Code Outline。 看起来是这样的:



我相信这就是您一直在寻找的。

【讨论】:

此扩展已不存在。我认为它尚未发布,因为该功能现在已内置在 VSCode 中。【参考方案8】:

今天没有这样的功能, CTRL+SHIFT+O == CTRL+P @ 没有适用于所有语言。

作为最后的手段,您可以使用搜索面板 - 虽然它不像您希望的那样快速且易于使用 - 您可以在搜索面板中输入此正则表达式以查找所有功能:

function\s([_A-Za-z0-9]+)\s*\(

【讨论】:

这行不通,因为我们可以在 JavaScript 中编写 name = functionname: function(内部对象)和箭头函数【参考方案9】:

对于 PHP 用户:)

    确保你有 'PHP Symbol' 插件,然后你就可以在 'OUTLINE 中获取所有方法和类'侧边栏底部。

    在“macOS”中按 ⌘ 命令 + ⇧ shift + OCtrl + Shift + O 同时使用“Windows”

大纲:

@符号:

【讨论】:

这很好用。【参考方案10】:

Visual Studio Code 市场有一个非常好的扩展名为 Go To Method,用于在代码文件中导航 only 方法。

点击 Ctrl+Shift+P 并输入install extensions 并按回车键

现在在扩展市场的搜索框中输入Add to method,然后按回车。

点击安装来安装扩展。

最后一步是将键盘快捷键绑定到命令workbench.action.gotoMethod,使其成为开发人员真正的生产力。

【讨论】:

【参考方案11】:

这是对这个问题的答案的额外部分,但我认为它可能有用。正如许多人提到的,Visual Studio Code 具有OUTLINE 部分,它提供了浏览不同功能并将它们显示在侧面的能力。

我还想补充一点,如果您选中跟随光标标记,它会在 OUTLINE 视图中突出显示该函数名称,这对于浏览和查看您所在的函数非常有帮助。

【讨论】:

【参考方案12】:

Open symbol by name : CTRL+T 可能是您正在寻找的东西。与我的 TypeScript 项目完美搭配。

【讨论】:

【参考方案13】:
ctrl+shift+o // This should work for javascript files by default

对于 PHP 安装扩展 PHP SYMBOLS

为 PYTHON 安装扩展 PYTHON

在重新加载时,这会正常工作

【讨论】:

您也可以使用Ctrl+P 并输入@ - 这会列出文件中的所有函数/符号。当输入@function_name 时,会在符号上进行模糊字符串搜索。 是的好建议.. 但你知道它需要两个步骤,而 ctrl+shift+o 是一个步骤。 :)【参考方案14】:

有一个名为show functions 的插件,它列出了文件中的所有函数定义。它还允许您对函数进行排序,以便轻松搜索它们。

【讨论】:

欢迎提供解决方案链接,但请确保您的答案在没有它的情况下有用:add context around the link 这样您的其他用户就会知道它是什么以及为什么会出现,然后引用最相关的您链接到的页面的一部分,以防目标页面不可用。 Answers that are little more than a link may be deleted.【参考方案15】:

内置代码 OUTLINE 现在可用于 VS 代码

【讨论】:

【参考方案16】:

CTRL+F12CMD+F12 for Mac)-为我打开所有方法和成员PHP 类。

【讨论】:

不起作用,您确定您没有使用任何扩展程序吗?【参考方案17】:

对于所有文件中的查找方法,您可以按CTRL + P,然后使用#开始搜索

示例:#signin

【讨论】:

【参考方案18】:

对于浏览器视图中的python,点击OUTLINE如下:

【讨论】:

【参考方案19】:

看看Show Functions 插件。 它可以通过可配置的正则表达式列出函数、符号、书签。正则表达式是一个真正的节省者,特别是当您不使用主流语言并且 CodeOutline 无法完成工作时。 看到带有这些功能的拆分窗口很难看(CodeOutline 似乎集成得更好),但至少有一些东西可以使用

【讨论】:

以上是关于Visual Studio Code 中的方法列表的主要内容,如果未能解决你的问题,请参考以下文章

折叠 Visual Studio Code 中的所有方法 [重复]

在 Visual Studio Code 中将语言更改为 JSX

Visual Studio Code 1.73发布!

Visual Studio Code 中的远程调试

Visual Studio Code 格式化ESlint 的方法

转到定义并返回到 Visual Studio Code 中的引用