我们希望为 VS Code GitHub 做出贡献,并希望为某些命令添加功能。但是,我们找不到定义命令的位置。谁能告诉我这些代码在哪个目录?
我们尝试了按键绑定和工作台。但是我们找不到我们想要编辑的“ctrl + p”(命令调色板)的定义。
对于内置 VS Code 命令,您需要实现
Action2
,然后将实现传递给对 registerAction2
的调用 - 两者均在文件 microsoft/vscode/src/vs/platform/actions/common/ 中定义actions.ts。 registerAction2
- 除其他外 - 对 CommandsRegistry.registerCommand
、MenuRegistry.appendMenuItem
(这使得命令可从命令面板使用)和 KeybindingsRegistry.registerKeybindingRule
)进行必要的调用。
请注意,如果您不坚持将该命令作为 VS Code 的内置命令,您可以通过扩展来完成此操作,方法是 在扩展清单中贡献一个命令 (
contributes.commands
),然后 注册该命令的实现命令(参见vscode.commands.registerCommand
)。您可以在 src/vs/workbench/services/actions/common/menusExtensionPoint.ts中对
commandsExtensionPoint.setHandler
的调用中找到 VS Code 的命令贡献处理程序,您会注意到它调用了 MenuRegistry.addCommand
,因此命令可以从命令面板访问。