模块 @pandapro-project/webtools-translator - v1.2.1

webtools-translator

主要用于文档多语言翻译的脚本工具, 目前只用于Nextra文档翻译

参考仓库:scrapeless-docs

@pandapro-project:registry=https://npm.pkg.github.com/
//npm.pkg.github.com/:_authToken=GITHUB_TOKEN
 pnpm -D add @pandapro-project/webtools-translator
npm -D install @pandapro-project/webtools-translator

在项目跟目录添加 webtools.config.js,加入以下配置

/**
* @type {import('@pandapro-project/webtools-configuration').WebtoolsConfig}
* */
export default {
translator: {
concurrency: 100,
field: "web scrape",
format: "mdx",
// gemini模型列表 https://ai.google.dev/gemini-api/docs/models/gemini#model-variations
gemini: {
apiKey: "联系团队获得",
model: "gemini-1.5-flash-latest",
baseUrl: "https://generativelanguage.googleapis.com" // 可选,默认值
},
i18nConfig: [
{ locale: "en", name: "English" },
{ locale: "es", name: "Español" },
{ locale: "hi", name: "हिन्दी" },
{ locale: "ja", name: "日本語" },
{ locale: "pt", name: "Português" },
{ locale: "zh", name: "简体中文" },
{ locale: "vi", name: "Tiếng Việt" },
],
nextraMetaFile: "_meta.tsx",
original: "en",
retry: {
count: 3,
delay: 500,
},
testUrl: "http://localhost:3002",
},
}
/**
* @type {import('@pandapro-project/webtools-configuration').WebtoolsConfig}
* */
export default {
translator: {
concurrency: 100,
field: "web scrape",
format: "mdx",
gemini: { apiKey: "fallback-key" }, // 保留作为后备
// OpenRouter 配置(如果配置了 openRouter,将优先使用)
openRouter: {
apiKey: "your-openrouter-api-key",
model: "google/gemini-2.0-flash-exp:free", // 或其他支持的模型
baseUrl: "https://openrouter.ai/api/v1" // 可选,默认值
},
i18nConfig: [
{ locale: "en", name: "English" },
{ locale: "es", name: "Español" },
{ locale: "hi", name: "हिन्दी" },
{ locale: "ja", name: "日本語" },
{ locale: "pt", name: "Português" },
{ locale: "zh", name: "简体中文" },
{ locale: "vi", name: "Tiếng Việt" },
],
nextraMetaFile: "_meta.tsx",
original: "en",
retry: {
count: 3,
delay: 500,
},
testUrl: "http://localhost:3002",
},
}

安装 webtools-configuration 以获取完整类型提示与属性描述

pnpm -D add @pandapro-project/webtools-configuration

在项目的 package.json 中加入以下脚本

{
"t": "webtools-translator ng",
"test": "webtools-translator test",
"test-all": "webtools-translator test-all",
}
  1. 修改或新增英文原文档,(可以通过 original 设置其他语言为原文档)
  2. 在代码commit前,使用 pnpm run t 将自动同步生成、翻译其他语言的文档和配置文件;最后还会自动对翻译结果进行测试, 避免字符翻译错误导致的页面崩溃(需要开启代理的Tun模式才能执行该脚本)
  3. 你可以手动测试变动的文档: pnpm run test;或是测试所有的文档 pnpm run test-all
  4. 最后推荐再人工审查翻译后的文档细节

Type Aliases

TestMode

Functions

accessibilityTest
autoTranslateAndGenerate