一个 VSCode 扩展,用于将 Jupyter Notebook (.ipynb) 文件中的英文 Markdown 单元格自动翻译成中文。
- 🔐 安全存储 (Security): API Key 不再明文存储,集成 VSCode Keychain 安全管理 🆕
- 🗂️ 多配置管理 (Profiles): 支持保存多套翻译配置(OpenAI, Ollama, 百度),一键切换 🆕
- 🧠 推理模型支持: 完美支持 DeepSeek R1 等推理模型,自动清洗
<think>思维链内容 🆕 - ✅ 智能缓存: 避免重复翻译,节省 Token
- ✅ 双语对照: 支持保留原文(
bilingual)或直接替换(replace)
- 从 Releases 下载最新的
.vsix文件 - 在 VSCode 中:扩展 → 更多操作(···) → 从 VSIX 安装
打开 .ipynb 文件,点击状态栏右下角的 $(globe) ProfileName 图标,或使用命令面板:
Cmd+Shift+P-> 输入IPynb Translator: Manage Profiles创建配置。- 输入
IPynb Translator: Translate Notebook开始翻译。
v0.3.1 引入了统一的 Manage Profiles 命令,一站式完成“增删改查”:
IPynb Translator: Manage Profiles← 统一入口 🆕- $(arrow-swap) Switch Profile: 切换配置(失败自动回滚)
- $(add) Add New Profile: 新建配置(向导式输入)
- $(trash) Delete Profile: 安全删除(同时清除密钥)
虽然推荐使用 UI,但你也可以在 settings.json 中预设 Profile 结构(注意:不要填写 sensitive keys)。
"ipynbTranslator.profiles": [
{
"name": "My OpenAI",
"provider": "openai",
"model": "gpt-4o-mini",
"baseUrl": "https://api.openai.com/v1",
"customPrompt": "Translate to Chinese (Technical)"
},
{
"name": "Local DeepSeek",
"provider": "ollama",
"model": "deepseek-r1",
"endpoint": "http://localhost:11434"
}
]API Key 去哪了?
为了安全,v0.3.0+ 不再将 apiKey 或 secretKey 保存在 settings.json 中。
- 存储: 密钥存储在操作系统的安全钥匙串 (Keychain) 中。
- 设置: 使用
Manage Profiles->Add New Profile进行设置。 - 删除: 通过
Manage Profiles->Delete Profile安全删除(配置 + 密钥原子清除)🆕 - 自动回滚: 切换配置失败时,自动回退到上一个可用配置 🆕
| 配置项 | 说明 |
|---|---|
ipynbTranslator.profiles |
翻译配置列表 (Array) |
ipynbTranslator.activeProfile |
当前激活的配置名称 (自动管理,勿手改) |
ipynbTranslator.translationMode |
翻译模式:bilingual (双语) 或 replace (替换) |
ipynbTranslator.enableStatsLogging |
是否记录翻译统计到 .vscode/translator-stats.jsonl |
- V0.3 技术文档 (Architecture) 🆕 v0.3.1 补丁
- V0.2 技术文档
- V0.1 技术文档
- 支持更多厂商(Google, DeepL)
- 批量翻译多个文件
- 术语表支持
欢迎提交 Issue 或 Pull Request!
如果这个项目对你有帮助,请给个 ⭐️ Star 支持一下!