Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Visual studio code 如何找出在vscode中提供命令的扩展名?_Visual Studio Code_Vscode Extensions - Fatal编程技术网

Visual studio code 如何找出在vscode中提供命令的扩展名?

Visual studio code 如何找出在vscode中提供命令的扩展名?,visual-studio-code,vscode-extensions,Visual Studio Code,Vscode Extensions,我不知道从哪个扩展中产生了什么特性,有没有办法显示它的源代码 我还想知道是否可以跟踪功能的源代码。我唯一能想到的就是检查package.json文件,因为它甚至只返回纯字符串。这可以通过API实现: import*作为“vscode”中的vscode; 导出函数激活(上下文:vscode.ExtensionContext){ 设置超时(()=>{ for(vscode.extensions.all的常量扩展){ 让commands=extension.packageJSON.contributi

我不知道从哪个扩展中产生了什么特性,有没有办法显示它的源代码


我还想知道是否可以跟踪功能的源代码。

我唯一能想到的就是检查
package.json
文件,因为它甚至只返回纯字符串。这可以通过API实现:

import*作为“vscode”中的vscode;
导出函数激活(上下文:vscode.ExtensionContext){
设置超时(()=>{
for(vscode.extensions.all的常量扩展){
让commands=extension.packageJSON.contributions?.commands;
如果(!Array.isArray(命令)){
继续;
}
for(命令的常量命令){
console.log(command.title+“来自”+扩展名.id);
}
}
}, 2000);
}
请注意,
all
仅包括激活的扩展,因此需要超时以确保启动时激活的所有扩展都在激活时完成

从VS代码文档中查看这一点

在这里,您可以看到默认情况下扩展的安装位置

此外,您还可以访问他们的源代码

在哪里安装了扩展?

扩展安装在每个用户的扩展文件夹中。根据您的平台,该位置位于以下文件夹中:

  • Windows
    %USERPROFILE%\.vscode\extensions
  • macOS
    ~/.vscode/extensions
  • Linux
    ~/.vscode/extensions
您可以通过使用--extensions dir命令行选项启动VS代码来更改位置

关于哪个功能来自哪个扩展,我不确定是否有可能实现

从哪个扩展中产生了什么特性

是的,您可以利用VSC的intellisense做到这一点:

  • 我假设(1)所说的功能,您指的是来自命令Pallete和

  • 在vscode中打开
    keybindings.json

  • 您应该看到如下所示的JSON;如果没有,添加一个如下所示(您不会保留它)

  • 在显示“用您的命令名替换它”的地方,开始键入您感兴趣的命令名

  • VSC建议小部件将打开,大致显示
    扩展名。您的\u命令
    。如果“建议”小部件未打开,请按
    ctrl+space
    将其打开

  • 注意分机的名称;这就是促成该功能/命令的原因。如果名称与扩展名不匹配,则可能是核心VSC功能

跟踪功能的源代码

  • 大多数扩展都在GitHub上,VSC的核心代码也在GitHub上,因此您只需导航到相关的存储库并搜索该命令的代码即可
单击一个扩展,在打开的编辑器中显示其
自述文件
,单击
功能贡献
链接,您将看到扩展贡献的设置和命令。例如:


而且大多数扩展都有一个指向其存储库的链接,您可以在其中查看源代码。。。
  {
    "key": ".",
    "command": "REPLACE THIS WITH YOUR COMMAND NAME",
    "when": "suggestWidgetVisible"
  }