chromeplugin

英汉翻译Chrome插件

一个支持音标显示和发音的英汉翻译Chrome插件。

功能特性

主要界面与交互

项目结构

src/
  ├── manifest.json           # 插件配置文件
  ├── background.js           # 后台脚本(翻译API代理)
  ├── content.js              # 内容脚本(主要功能)
  ├── popup.html              # 弹窗界面
  ├── popup.js                # 弹窗逻辑
  └── icons/
      ├── icon-16.png
      ├── icon-48.png
      └── icon-128.png
release/                      # 构建产物目录
release.zip                   # 打包zip
node_modules/                 # 依赖目录
tests/                        # 测试目录
  ├── dj_phonetic_convert.test.js # DJ音标自动转换测试
  ├── translation.test.js     # 翻译解析测试
  ├── benchmark_cn_providers.js # 中国用户翻译提供方基准测试
  ├── translation_api_config.test.js # 翻译API配置测试
  ├── refactoring.test.js     # 代码重构测试
  └── run-tests.js            # 测试运行器
build.js                      # 构建脚本
package.json                  # 项目配置
README.md                     # 项目说明
PRIVACY_POLICY.md             # 隐私政策
.gitignore                    # Git忽略文件

开发指南

安装依赖

cd chromeplugin
npm install

运行测试

npm test
# 或直接运行
node tests/run-tests.js

翻译API配置

插件支持多种翻译API,根据用户地理位置智能选择:

配置说明:中国用户优先使用百度翻译代理(平均396ms),备用MyMemory API(平均502ms);非中国用户使用Google翻译API(平均90ms)。所有API都保持100%成功率,确保翻译服务的稳定性。

智能错误处理机制

代码重构亮点

构建发布

npm run build:test   # 运行测试后构建
npm run build        # 仅构建
npm run build:zip    # 构建并打包为release.zip
npm run zip          # 只打包release目录为zip
npm run clean        # 清理发布目录
npm run bench:cn     # 运行中国用户翻译提供方基准测试

说明:

测试系统

运行测试

npm test
# 或单独运行
node tests/dj_phonetic_convert.test.js
node tests/translation.test.js
node tests/benchmark_cn_providers.js
node tests/translation_api_config.test.js
node tests/refactoring.test.js

性能测试结果

基于实际测试的API性能对比(5个单词,每个运行4次):

API 平均响应时间 成功率 性能评级
百度翻译代理 396ms 100% 🟢 优秀
MyMemory API 502ms 100% 🟡 良好
Google翻译API 90ms 100% 🟢 优秀

性能特点

调试指南

查看调试信息

调试信息格式

所有调试信息都包含接口标识,便于追踪:

[百度翻译代理] 发送请求: https://api.yun.info/api/translate?q=hello&from=en&to=zh
[百度翻译代理] 接收响应: {...}
[百度翻译代理] 解析结果: 你好
[Background] 检测到中国用户,优先使用百度翻译代理

发布流程

  1. 运行测试:确保所有功能正常
    npm test
    
  2. 构建并打包发布文件:生成干净的 release.zip
    npm run build:zip
    
  3. 检查发布包:确认 release.zip 内包含所需文件
    • manifest.json
    • background.js
    • content.js
    • popup.html
    • popup.js
    • icons/
  4. 上传插件:将 release.zip 上传到 Chrome Web Store

注意事项

技术栈

许可证

MIT License