ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

免费的JSON翻译工具jsontt:一条命令把语言文件翻译成100多种语言,还不动你的代码逻辑

免费的JSON翻译工具jsontt:一条命令把语言文件翻译成100多种语言,还不动你的代码逻辑 免费的JSON翻译工具jsontt一条命令把语言文件翻译成100多种语言还不动你的代码逻辑【免费下载链接】json-translatorjsontt - AI JSON Translator with GPT / Gemma / Mixtral / llama other FREE translation modules to translate your json/yaml files into other languages ✅ Check Readme ✌ Supports GPT / Gemma / Mixtral / llama / DeepL / Google / Bing / Libre / Argos项目地址: https://gitcode.com/gh_mirrors/js/json-translator你有没有过这样的时刻产品要出海了老板丢给你一个 600 行的en.json说周五前给我日、法、德、西四个版本你打开翻译网站开始逐条复制、粘贴、再复制回来。两个小时后你发现{{userName}}被翻成了{{用户名}}——变量坏了整个登录页直接白屏。这就是无数开发者做国际化i18n时踩过的坑。而今天要介绍的jsontt是一个免费开源的 JSON翻译工具专门解决多语言文件翻译这件事无论你的 JSON 还是 YAML 文件有多深、多大它都能一条命令批量翻译成上百种语言同时自动保护变量和链接不被破坏。下面就用一个小故事带你走一遍它的完整用法。一、故事的开头小林的周五魔咒小林是一家创业公司的前端负责一个电商 App。产品要进军日本、德国和法国市场他的任务很明确把src/i18n/en.json翻译成三种语言。他最初的做法可能和你现在一模一样步骤传统手工流程用 jsontt 的做法打开文件手动逐条复制文本什么也不用做逐条翻译粘贴到网页翻译器一条命令搞定复制回来手动粘贴回 JSON自动生成新语言文件检查变量肉眼排查{{xxx}}有没有被翻坏内置保护无需操心换下一种语言重复上面所有步骤一条命令同时出多语言传统流程做完一版要半天还要花更多时间修格式错误。jsontt 的做法是把翻译语言文件这件事压缩成一条命令的时间。二、第一关5 秒完成你的第一次翻译先安装。确保 Node.js 版本在 16 以上然后全局装一下因为后面要用命令行工具npm install -g parvineyvazov/json-translator装好之后jsontt命令就属于你了。现在找一个英文的en.json敲下这一条命令jsontt en.json --module google --from en --to zh-CN运行结束后你会在en.json旁边的目录看到自动生成的zh-CN.json。就这么简单——没有复制粘贴没有打开网页没有逐条核对。这就是这个 JSON翻译工具第一次向你展示它的价值你只需要关心从哪来、到哪去剩下的它全包了。翻译结果默认和源文件放在同一目录文件结构、键名顺序都保持原样方便你直接对比检查。三、第二关一条命令批量搞定多语言只翻一种语言不过瘾小林的真实需求是一次出日、法、德三种。jsontt 的多语言文件批量翻译就是在-t参数后面多写几个语言而已jsontt en.json --module google --from en --to ja fr de --name myApp命令结束后你会得到├── en.json # 原文件纹丝不动 ├── myApp.ja.json # 日语版 ├── myApp.fr.json # 法语版 └── myApp.de.json # 德语版--name参数可以给输出文件自定义前缀不写的话默认直接生成ja.json、fr.json这种简洁文件名正好符合 i18n 框架的命名习惯。对小林来说一个下午的工作量现在 5 分钟内出完初稿。四、第三关变量和链接为什么翻不坏你可能已经注意到我反复强调保护变量。这是新手最容易栽的坑也是 jsontt 最核心的卖点——翻译保持格式不变。看这个典型场景。你的语言文件里全是带占位符的文案{ welcome: Welcome {{name}}, glad to see you!, link: Check this: https://example.com/docs, count: You have {count} new messages }如果直接丢给普通翻译器{{name}}很可能变成{{名称}}https://example.com/docs也可能被翻得支离破碎。而 jsontt 内部有一套先上锁、再翻译、后解锁的机制翻译前先用占位符把{{xxx}}、{xxx}和 URL 全部锁起来翻译完成后原样放回。翻译成德语后你看到的是{ welcome: Willkommen {{name}}, schön dich zu sehen!, link: Schau dir das an: https://example.com/docs, count: Sie haben {count} neue Nachrichten }{{name}}、{count}和链接一个都没变只有真正需要翻译的文字被处理了。这套上锁解锁的逻辑就藏在源码的 src/core/ignorer.ts 里感兴趣的话可以去看看代码不长思路很妙。它对深层嵌套的对象同样适用——翻译时会递归遍历每一层数组、多层对象都能完整覆盖。五、进阶玩法选对翻译引擎省钱又保质量jsontt 最让我惊喜的一点是它不绑定某一家翻译服务。支持的引擎列表见 src/modules/modules.ts非常丰富我们把它分成两类看免费即用型无需任何 API Key引擎覆盖语言适用场景Google Translate104 种日常通用首选Bing Microsoft Translate110 种谷歌不稳时的备胎Libre Translate29 种注重隐私、可自建服务Argos Translate17 种完全离线部署llama.cpp不限本地跑模型零依赖AI 模型型需要设置环境变量引擎需要什么适合谁gpt-4o / gpt-4o-miniOPENAI_API_KEY追求翻译质量的技术文档gemma / mixtral / llama3 系列GROQ_API_KEY想尝鲜开源大模型DeepLDEEPL_API_KEY商业级严谨翻译切换引擎只需换--module参数。比如小林觉得技术文案机翻味太重想升级成 GPT 翻译export OPENAI_API_KEYsk-你的密钥 jsontt en.json --module gpt-4o-mini --from en --to ja预算敏感的团队就用免费的 Google/Bing 引擎先跑初稿对质量有更高要求的章节再单独用 AI 引擎精翻——丰俭由人。六、高手技巧三个参数解决翻车、限速和重复劳动入门之后有三个参数值得刻进脑子里。它们分别解决三个真实痛点痛点一引擎偶尔翻车怎么办翻译服务总有不稳定的时候一条文案失败可能导致整个文件中断。用--fallback yes开启兜底逻辑当前引擎失败时自动尝试其他可用的翻译模块而不是让任务卡死jsontt en.json --module google --from en --to fr --fallback yes痛点二文件大、请求多被限速封 IP 怎么办jsontt 内置了队列和并发控制机制默认并发数是 3。你可以根据文件大小手动调节jsontt big.json --module google --from en --to ja --concurrencylimit 8--concurrencylimit调高翻译更快但更容易被服务商限流调低更稳。大文件建议从 5 起步自己试出平衡点。痛点三同一个词反复翻译浪费流量和时间怎么办开启缓存翻译过的内容会存进本地缓存文件下次遇到相同文本直接秒回还能统计跳过数量jsontt en.json --module google --from en --to ja --cache另外如果翻译文件已经存在jsontt 会自动复用其中已翻译的内容只翻译新增或修改的字段——也就是说你改了几行文案重跑命令时不会被全量重翻一遍这对持续迭代的 i18n 项目简直太友好了。七、想把它写进代码里它也准备好了如果你不想用命令行而是想把翻译能力集成到自己的 Node.js 项目里比如写个构建脚本打包前自动生成多语言文件jsontt 同样支持。安装后直接 importconst translator require(parvineyvazov/json-translator); // 把 en.json 翻译成德语、日语输出到同目录 await translator.translateFile( C:/files/en.json, translator.languages.English, [translator.languages.German, translator.languages.Japanese] );它还提供translateWord翻译单词/句子和translateObject直接翻译内存里的 JSON 对象三个 API 覆盖了从一句话到整个文件的所有粒度。入口定义在 src/index.ts代码量不大读起来很清爽。八、回到小林的周五那天下午小林用 jsontt 跑了三条命令日、法、德三个语言文件全部生成{{name}}之类的变量一个没坏。他顺手把旧文件里的已翻译内容也复用了增量翻译只花了几分钟。下班前他还用--module gpt-4o给几段关键营销文案做了精翻整体质量比纯机翻高出一截。这就是这个免费 JSON翻译工具的全部价值它把你从复制、粘贴、修格式的流水线里解放出来让你把时间花在真正重要的事上。现在就试试吧运行npm install -g parvineyvazov/json-translator再对着你的en.json敲一次jsontt en.json --from en --to zh-CN。感受一下 5 秒出多语言文件的爽快感——然后你会回来感谢小林的。如果还想看它支持的全部语言代码可以翻阅官方语言列表文档 docs/LANGUAGES.md里面有 100 多种语言的对照表随查随用。【免费下载链接】json-translatorjsontt - AI JSON Translator with GPT / Gemma / Mixtral / llama other FREE translation modules to translate your json/yaml files into other languages ✅ Check Readme ✌ Supports GPT / Gemma / Mixtral / llama / DeepL / Google / Bing / Libre / Argos项目地址: https://gitcode.com/gh_mirrors/js/json-translator创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表