Visual Studio代码中的方法列表


278

我最近开始使用Visual Studio代码编辑器。我真的很喜欢它,但是有一个关键功能(对我而言)是我找不到的。是否有一个方法列表,类似于NetBeans中的“导航器”或Visual Studio中的“成员”下拉列表?




Answers:


266

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

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


4
嗯,不是我希望的行为。我尝试了几种文件类型:在C ++文件中,它说“不幸的是我们没有该文件的符号信息”,在Python中它说“ Python扩展中有错误”。
吉姆·卡尔

好吧,党,看来我不走运。我尝试了其他Python扩展,但现在出现“无符号信息”错误。:(感谢您的信息,但。
吉姆·卡尔

6
这是PHP的符号
ariefbayu

在javascript中效果很好,使用其他快捷键映射时,快捷键可以有所不同
Ray1618

38
此外,如果您按:after Ctrl+ Shift + O,则结果将按类型分组,这将在一个子列表中列出所有功能。
Aditya Vikas Devarapalli

184

更新:正如@ jeff-xiao的评论中所述,此扩展名已弃用,现已成为Visual Studio代码内置功能。它应该在文件资源管理器的底部作为“概述”视图可用。

上一文本:现在有一个支持此功能的扩展程序。 Code Outline在“ Explorer”部分中创建一个面板,对于JavaScript,它将在文件中列出变量和函数。我已经使用了一段时间了,它刮擦了我的痒。其他评论者提到它很好地支持Python和PHP。

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

看起来是这样的:
VSCode的代码大纲插件

如果“代码大纲”不可见,则可以通过以下方式显示它: 在此处输入图片说明


4
通话良好,可与JavaScript配合使用,并且无需寻找隐藏的键盘快捷键,非常好。
朱利安·奈特2009年

6
该扩展名已弃用:DEPRECATED。请使用Visual Studio Code附带的Outline视图

我是否正确,不支持在Python中查看类的所有方法?
埃里克·奥尔德'18

我想有时大纲视图对于python文件没有显示任何内容。
nurp

C ++有这样的选择吗?
Dikla

118

调用代码的Go to symbol命令:

  • MacOS的:cmd+ shift+ o(字母o,而不是0)

  • 在Windows / Linux的:ctrl+ shift+o

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


3
确认它也可以在PHP上使用,但是请注意我已经安装了PHP intellisense插件。我不知道这有什么区别。
伊格纳西奥·塞古拉

必须有一种简单的方法来仅查看方法。滚动浏览其他内容列表以找到“方法”部分是一种痛苦。如果没有其他方法,则应该制作一个插件来执行此操作。
6

1
输入@而不是:用于Go函数列表
Altimac '18

1
如果不适用于PHP,请确保您具有“ PHP Symbols”插件,并且可以正常使用。
Neeraj Singh,



15

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

我发现了这种扩展:代码大纲。它是这样的:


看起来像这样


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


1
该扩展名不再存在。我认为它尚未发布,因为该功能现在已内置在VSCode中。
Gama11

13

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

作为最后的选择,您可以使用搜索面板-尽管它不如您所希望的那样简单易用-您可以在搜索面板中输入此正则表达式以查找所有功能:

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

5

对于PHP用户:)

  1. 确保您具有“ PHP Symbol ”插件,然后可以在“ OUTLINE ”侧边栏的底部获得所有方法和类。

  2. ⌘ command+ ⇧ shift+ O中的“MacOS的”或Ctrl+ Shift+ O,同时使用“窗口”

大纲: 在此处输入图片说明

@符号: 在此处输入图片说明


4

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

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

在此处输入图片说明


4

Visual Studio Code市场上有一个很好的扩展名为Go To Method,用于浏览代码文件中的方法。

点击Ctrl+ Shift+ P并输入,install extensions然后按Enter

在此处输入图片说明

现在,Add to method在扩展程序市场的搜索框中输入内容,然后按Enter。

在此处输入图片说明

单击install以安装扩展。

最后一步是将键盘快捷键绑定到命令,workbench.action.gotoMethod以使其对开发人员而言真正具有生产力。



3

2020年版VSCode
Cmd+P

  • # -在文件中查找符号
  • @ -在文件中查找符号
  • @: -文件中的组符号

文件中的符号 VS Code v1.44.0


2
ctrl+shift+o // This should work for javascript files by default

对于PHP,请安装扩展PHP SYMBOLS

对于PYTHON,请安装扩展程序PYTHON

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


2
您也可以Ctrl+P输入以下内容@-这列出了文件中的所有功能/符号。并在键入时@function_name对符号进行模糊字符串搜索。
Roopak A Nelliat

是的,不错的建议。但是您知道这需要两步,其中ctrl + shift + o是一步。:)
Moh .S


1

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


2
欢迎使用指向解决方案的链接,但是请确保没有该链接的情况下,您的回答是有用的:在链接周围添加上下文,以便您的其他用户可以了解它的含义以及为什么存在,然后引用您页面中最相关的部分如果目标页面不可用,请重新链接。只是链接的答案可能会被删除。
佐伊

1

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

例如: #signin

在此处输入图片说明


0

看一下Show Functions插件。它可以通过可配置的正则表达式列出功能,符号,书签。正则表达式是真正的节省者,特别是在您不使用主流语言并且CodeOutline不能完成工作时。看到具有这些功能的拆分窗口是很丑陋的(CodeOutline似乎更好地集成了),但是至少有一些需要使用的东西

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.