axetroy / vscode-nls-i18n

vscode library for supporting i18n
Apache License 2.0
12 stars 5 forks source link

如何初始化之后在另外一个文件使用 `localize` #64

Closed Yanren1225 closed 2 years ago

Yanren1225 commented 2 years ago

extension.ts

import * as vscode from "vscode";
import { init, localize } from "vscode-nls-i18n";
import { CONFIG_API_TYPE } from "./menu/config-api";

export function activate(context: vscode.ExtensionContext) {
  init(context.extensionPath);

  let configApi = vscode.commands.registerCommand(
    "contract-viewer.configApi",
    () => {
      vscode.window.showQuickPick(CONFIG_API_TYPE).then((item) => {});
    }
  );

  context.subscriptions.push(configApi);
}

export function deactivate() {}

config-api.ts

import { localize } from "vscode-nls-i18n";

export const CONFIG_API_TYPE = [
  {
    label: "eth",
    description: localize("menu.configApi.eth.description"),
  },
];

我看文档应该是这样用,但是会报错 Activating extension 'MetaPlasia.contract-viewer' failed: Cannot read property 'menu.configApi.eth.description' of undefined.

axetroy commented 2 years ago

要写有语言文件

这里有个例子 https://github.com/axetroy/vscode-gpm/ https://github.com/axetroy/vscode-deno/

Yanren1225 commented 2 years ago

要写有语言文件

这里有个例子 https://github.com/axetroy/vscode-gpm/ https://github.com/axetroy/vscode-deno/

我是有写语言文件的,看了下我现在知道怎么在其他文件用了,感谢