如何使可变自定义数据可用于自定义扩展?

问题描述 投票:0回答:1

也许谷歌尚未学习或者我只是无法构建正确的魔法搜索文本,或者这是不可能做到的。

简短的介绍。我正在为Code创建自定义扩展。代码将由另一个应用程序启动。这个其他应用程序需要将一些信息移交给代码和扩展,这取决于Code的启动位置,但我不知道如何实现这一点。当从Pallette发出命令时,扩展程序将使用此信息来执行特定的操作。

我一直在研究命令行参数,但我找不到文档或谷歌搜索,向我展示扩展如何访问命令行并解析参数。

参数可以是customerID和其他特定数据,Code和扩展都不能自己找到,除非某些值从启动应用程序推送到Code ...

我是否认为它不可能扩展读取命令行参数或者我只是愚蠢地在VS Code bla bla google搜索?

我已经为launch.json添加了一个参数“--testparameter = testvalue”,我看到code.exe是用这个参数启动的,但我的扩展如何访问这个参数超出了我...

visual-studio-code
1个回答
0
投票

我们通过让其他应用程序将所需的所有设置添加到.code-workspace文件来解决这个问题。通过使用内置工作区配置对象可以轻松访问该数据。假设该文件包含一个名为'extension.friendlyname'的设置,这就是我们读它的方式:

getFriendlyName(): string
{
    return this.getConfig('extension.friendlyname');
}

private getConfig(configName:string): string
{
    const configuration = vscode.workspace.getConfiguration();
    const configValue = configuration.get(configName);
    return  String(configValue);
}
© www.soinside.com 2019 - 2024. All rights reserved.