如何本地化 VSCode 扩展

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

我编写了一个 VS Code 扩展来支持打印。由于最近的所有问题都与外国字符集相关的问题有关,看来我应该支持英语以外的语言。

但是我在 VS Code API 文档中找不到任何有关本地化的内容。有一个关于语言的部分,但这是关于计算机语言的解析和语法着色等。

是否有关于 VS Code 扩展本地化的任何支持或至少约定?


感谢 Gama11 为我指出了很好的资源。

visual-studio-code localization vscode-extensions
2个回答
8
投票

是的,这是可能的,并且实际上有一个 I18n 示例扩展:

最好阅读自述文件,但基本思想如下:

  • 使用
    vscode-nls-dev
    NPM包
  • 使用 NLS 标识符(例如
    "%extension.sayHello.title%"
    )作为命令标题等的占位符,如
    package.json
  • 类似地,在 JS 代码中,NLS 标识符可以使用从
    localize()
     导入的 
    vscode-nls
  • 方法进行翻译
  • 有一个顶级
    i18n
    目录,其中包含
    <file-name>.i18n.json
    文件中支持的语言的标识符的翻译

或者,您也可以看看 C++ 扩展是如何做到这一点的:

他们似乎采取了略有不同的方法:没有

i18n
目录,而是将翻译直接放在文件旁边(
package.nls.it.json
package.nls.zh-cn.json
package.nls.json
默认为英语)。我不确定它是否会翻译 JS 代码中
package.json
/ 之外的任何内容。


2
投票

官方的 l10n(本地化)示例扩展应该会有很大帮助,因为旧的 i18n(国际化)示例已被弃用。

在此处克隆它:https://github.com/microsoft/vscode-extension-samples/tree/main/l10n-sample

© www.soinside.com 2019 - 2024. All rights reserved.