国际化

使用预设语言包

每一个 Preset 都提供了对应的语言包,引入你所使用的 Preset 对应的语言包:

import { createUniver, defaultTheme, LocaleType, merge } from '@univerjs/presets';
import { UniverSheetsCorePreset } from '@univerjs/presets/preset-sheets-core';
import UniverPresetSheetsCoreZhCN from '@univerjs/presets/preset-sheets-core/locales/zh-CN';
import { UniverSheetsAdvancedPreset } from '@univerjs/presets/preset-sheets-advanced';
import UniverPresetSheetsAdvancedZhCN from '@univerjs/presets/preset-sheets-advanced/locales/zh-CN';
import { UniverSheetsDrawingPreset } from '@univerjs/presets/preset-sheets-drawing'
import UniverPresetSheetsDrawingZhCN from '@univerjs/presets/preset-sheets-drawing/locales/zh-CN'
 
import '@univerjs/presets/lib/styles/preset-sheets-core.css'
import '@univerjs/presets/lib/styles/preset-sheets-drawing.css'
import '@univerjs/presets/lib/styles/preset-sheets-advanced.css'
 
const { univerAPI } = createUniver({
  locale: LocaleType.ZH_CN,
  locales: {
    [LocaleType.ZH_CN]: merge(
      {},
      UniverPresetSheetsCoreZhCN,
      UniverPresetSheetsDrawingZhCN,
      UniverPresetSheetsAdvancedZhCN,
    ),
  },
  theme: defaultTheme,
  presets: [
    UniverSheetsCorePreset(),
    UniverSheetsDrawingPreset(),
    UniverSheetsAdvancedPreset(),
  ],
});

手动组合安装

0.1.13 版本后,Univer 不再内置任何语言包,所有语言包均由插件提供。

如需手动添加语言包,你可以参考以下示例,根据需要引入对应的语言包并组装成对象传入 Univer 实例:

import { LocaleType, merge, Univer } from '@univerjs/core';
import { defaultTheme } from "@univerjs/design";
import DesignZhCN from '@univerjs/design/locale/zh-CN';
import UIZhCN from '@univerjs/ui/locale/zh-CN';
import DocsUIZhCN from '@univerjs/docs-ui/locale/zh-CN';
import SheetsZhCN from '@univerjs/sheets/locale/zh-CN';
import SheetsUIZhCN from '@univerjs/sheets-ui/locale/zh-CN';
import SheetsNumfmtUIZhCN from '@univerjs/sheets-numfmt-ui/locale/zh-CN';
import SheetsFormulaUIZhCN from '@univerjs/sheets-formula-ui/locale/zh-CN';
 
const univer = new Univer({
  theme: defaultTheme,
  locale: LocaleType.ZH_CN,
  locales: {
    [LocaleType.ZH_CN]: merge(
      {},
      DesignZhCN,
      UIZhCN,
      DocsUIZhCN,
      SheetsZhCN,
      SheetsUIZhCN,
      SheetsNumfmtUIZhCN,
      SheetsFormulaUIZhCN,
    ),
  },
});

自定义语言包

Univer 也支持自定义语言包,你可以根据需要自行组装语言包对象并传入 Univer 实例。Univer 官方插件的语言包一般存放在 <rootDir>/packages/<PLUGIN_NAME>/locale 目录下,可供参考。

const univer = new Univer({
  theme: defaultTheme,
  locale: 'es-ES',
  locales: {
    'es-ES': {
      shortcut: {
        undo: 'Deshacer',
        redo: 'Rehacer',
      }
    },
  },
});

贡献语言包

Univer 目前提供了以下预设语言包:

  • zh-CN:简体中文
  • en-US:英文
  • zh-TW:繁体中文
  • ru-RU:俄文
  • vi-VN:越南文
  • fa-IR:波斯文
  • fr-FR:法语

其他的语言尚未支持。我们欢迎来自五湖四海的开发者为 Univer 添加或者改进语言包,如果你有兴趣为 Univer 贡献翻译,请参考 贡献指南


这个页面对您有帮助吗?