Skip to content

sanm00/trans_cli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

翻译CLI工具

一个支持多种翻译接口的命令行翻译工具,支持百度翻译API和OpenAI GPT翻译。

功能特性

  • 🚀 支持多种翻译提供商(百度翻译、OpenAI GPT)
  • ⚙️ 灵活的配置管理
  • 🎨 美观的命令行界面
  • 📝 支持配置文件
  • 🌍 多语言支持

安装

  1. 克隆项目
git clone <repository-url> cd trans_cli
  1. 安装依赖并构建
make deps make build

或者手动构建:

go mod tidy go build -o trans
  1. 安装到系统路径(可选)
make install

使用方法

基本用法

# 查看帮助 ./trans # 智能翻译 ./trans "你好" # 中文翻译成英文 ./trans "hello" # 英文翻译成中文 ./trans -l ja "你好" # 翻译成日语 # 指定目标语言 ./trans -l ja "你好世界" ./trans -l fr "Hello World"

配置管理

# 初始化配置 ./trans config init # 校验配置 ./trans config validate # 显示当前配置 ./trans config show # 设置配置项 ./trans config set provider baidu ./trans config set api_key your_api_key ./trans config set secret_key your_secret_key

命令行参数

  • -l, --lang: 目标语言 (简写,如 -l ja)

其他配置通过配置文件 ~/.trans_cli.yaml 设置

配置

所有配置都通过配置文件 ~/.trans_cli.yaml 设置:

# 翻译提供商: baidu 或 openai provider: baidu # 百度翻译配置 baidu: app_id: your_baidu_app_id_here app_secret: your_baidu_app_secret_here # AI配置 (OpenAI等) ai: base_url: https://api.openai.com/v1 token: your_openai_token_here model: gpt-3.5-turbo

首次使用前请先配置:

# 初始化配置 ./trans config init # 设置百度翻译配置 ./trans config set baidu.app_id your_app_id ./trans config set baidu.app_secret your_app_secret # 设置AI配置 ./trans config set ai.token your_token ./trans config set ai.base_url your_base_url ./trans config set ai.model your_model # 校验配置 ./trans config validate

支持的翻译提供商

百度翻译

  • 需要申请百度翻译API
  • 需要提供App ID和Secret Key
  • 支持多种语言

OpenAI GPT

  • 需要OpenAI API密钥
  • 使用GPT-3.5-turbo模型
  • 支持自然语言翻译

语言代码

常用语言代码:

  • zh: 中文
  • en: 英语
  • ja: 日语
  • ko: 韩语
  • fr: 法语
  • de: 德语
  • es: 西班牙语
  • auto: 自动检测

示例

# 查看帮助 ./trans # 智能翻译 ./trans "你好" # 中文翻译成英文 ./trans "hello" # 英文翻译成中文 ./trans -l ja "你好世界" # 翻译成日语 ./trans -l fr "Hello World" # 翻译成法语 # 指定目标语言 ./trans -l ja "你好世界" ./trans -l fr "Hello World" ./trans -l de "你好世界" ./trans -l es "Hello World"

项目结构

trans_cli/ ├── main.go # 主程序入口 ├── go.mod # Go模块文件 ├── go.sum # 依赖校验文件 ├── Makefile # 构建脚本 ├── README.md # 项目文档 ├── example_config.yaml # 配置示例 ├── cmd/ # 命令行相关 │ ├── root.go # 根命令(智能翻译) │ └── config.go # 配置管理命令 ├── utils/ # 工具模块 │ └── config.go # 配置管理工具 └── translator/ # 翻译器实现 ├── translator.go # 翻译器接口 ├── baidu.go # 百度翻译实现 ├── openai.go # OpenAI翻译实现 └── translator_test.go # 测试文件 

目录说明

cmd/

命令行相关的代码,包含:

  • root.go: 主命令实现,处理智能翻译逻辑
  • config.go: 配置管理命令,提供配置的增删改查功能

utils/

工具模块,包含:

  • config.go: 配置管理工具,提供配置文件的创建、验证、备份等功能

translator/

翻译器实现,包含:

  • translator.go: 翻译器接口定义和工厂函数
  • baidu.go: 百度翻译API实现
  • openai.go: OpenAI GPT翻译实现
  • translator_test.go: 翻译器测试文件

设计原则

  1. 模块化设计: 将不同功能分离到不同模块
  2. 工具复用: 将通用工具放在utils目录下
  3. 接口分离: 翻译器通过接口实现,便于扩展
  4. 配置集中: 配置管理统一在utils/config.go中实现

许可证

MIT License

About

A simple translation tool

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors