多引擎命令行翻译
gotrans 是受 translate-shell 启发的 Go 实现:快捷的 CLI 输出、可选的 REST 服务,以及 Google、Bing、Yandex、Apertium 等后端。
CLI · 管道与脚本
REST · HTTP API
分块 · 长文本
多引擎
为什么做它
以终端为主的工作流仍然需要可靠的翻译工具:可预期的参数、用于自动化的 --text,以及在需要与其他服务对接时的一层轻量 HTTP——而不必拖上一整套浏览器环境。
它是什么
gotrans 是 translate-shell 的 Go 版本,在相同方向之上增加了更多进阶能力:单个二进制既可在 shell 中翻译,也可通过 INI 配置启动 REST 服务;引擎可切换;输出可简可详,或仅纯文本;超长输入会按顺序分块发送,降低触及服务商限制的概率。
引擎
Google(默认)、Bing、Yandex、Apertium、自动选择与用于测试的 mock。
两种用法
在终端一次性翻译,或用 INI 跑 REST API。
适合自动化
--text、标准输入、-i/-o 文件,以及 :fr / -t 语言简写。
CLI 快速上手
翻译
gotrans "Hello, world!" gotrans :fr "Hello" gotrans -e bing -t es "Good morning" echo "pipe me" | gotrans --text -t de gotrans -i document.txt -t fr gotrans --text -i in.txt -o out.txt -t de
服务(示例)
gotrans --service --init=service-scripts/gotrans.ini
示例配置默认常绑定在 localhost:8100。请在 INI 中调整主机、端口、引擎与语言。
REST API
服务启动后,可使用健康检查、引擎列表、语言列表与翻译等接口。
GET /api/v1/health · POST /api/v1/translate · GET /api/v1/engines · GET /api/v1/languages
健康检查
curl -fsS http://127.0.0.1:8100/api/v1/health
翻译(JSON)
curl -sS http://127.0.0.1:8100/api/v1/translate \
-H 'content-type: application/json' \
-d '{"text":"Hello, World!","source_lang":"auto","target_lang":"es","engine":"google"}'
下载
各平台的预编译二进制(zip 压缩包)。