bmc-i18n-extract-cli
Version:
这是一款能够自动将代码里的中文转成i18n国际化标记的命令行工具。当然,你也可以用它实现将中文语言包自动翻译成其他语言。适用于vue2、vue3和react
83 lines (63 loc) • 1.8 kB
Markdown
> 基于 [@ifreeovo/i18n-extract-cli](https://github.com/IFreeOvO/i18n-cli) 项目改进和扩展的国际化工具
一个翻译工具函数库。支持有道,谷歌,百度,阿里云机器翻译,以及 OpenAI。
```
npm i @bmc/translate-utils
```
```ts
declare function googleTranslate(
word: string, // 待翻译文本
originLang: string, // 源语言
targetLang: string, // 目标语言
proxy: string | undefined // 代理地址
): Promise<string>
```
例子
```js
const res = await googleTranslate('翻译内容', 'zh-CN', 'en-US', 'socks://127.0.0.1:1080')
```
```ts
interface YoudaoConfig {
key?: string // 有道词典appKey
secret?: string // 有道词典appSecret
}
declare function youdaoTranslate(
word: string, // 待翻译文本
originLang: string, // 源语言
targetLang: string, // 目标语言
option: YoudaoConfig // 有道词典配置
): Promise<string>
```
例子
```js
const res = await googleTranslate('翻译内容', 'zh-CN', 'en-US', {
key: '2d8e89a6fd072117',
secret: 'HiX7rGmYRad3ISMLYexRLfpkJi2taMPh',
})
```
```ts
interface OpenAIConfig {
baseUrl?: string // OpenAI API base URL, 默认 https://api.openai.com/v1
apiKey?: string // OpenAI API Key
model?: string // 模型,默认 gpt-4o-mini
}
declare function openaiTranslate(
word: string, // 待翻译文本,可包含多行,按 \n 分割
originLang: string, // 源语言
targetLang: string, // 目标语言
option: OpenAIConfig
): Promise<string>
```
例子
```js
const res = await openaiTranslate('第一行\n第二行', 'zh-CN', 'en-US', {
apiKey: process.env.OPENAI_API_KEY,
baseUrl: 'https://api.openai.com/v1',
model: 'gpt-4o-mini',
})
```