我的扩展程序在资源管理器树中创建了一个上下文菜单:
"contributes": {
"commands": [
...
{
"command": "myextension.mycommand",
"title": "Run my command"
}
],
"menus": {
"explorer/context": [{
"when": "resourceLangId == python",
"command": "myextension.mycommand",
"group": "MyGroup"
}]
}
}
在extension.ts
中:
export function activate(context: vscode.ExtensionContext) {
context.subscriptions.push(vscode.commands.registerCommand('myextension.mycommand', () => {
//How to get the filename or file path here?
}));
我想获取运行命令时右键单击上下文菜单的文件的文件名或文件路径。你能告诉我如何吗? 非常感谢你!
答案 0 :(得分:3)
回调将收到带有vscode.Uri
对象的参数:
vscode.commands.registerCommand('myextension.mycommand', (uri:vscode.Uri) => {
console.log(uri.fsPath);
});