Extension Chinese Reader(插件中文介绍)一个 VS Code 插件:当你安装新插件、或在扩展商店里点开某个插件时,自动读取它的 README 与描述,翻译成中文,并在独立面板中展示,同时用大模型为你生成一段通俗易懂的「插件简介」,并显示本次翻译消耗的 token 数量。
✨ 功能特性
🚀 安装方式一:从 VSIX 安装(推荐)
或命令行:
方式二:从源码运行(开发)
在 VS Code 中按 📖 使用方法自动触发(无需任何操作)
手动命令按
面板内容说明打开的介绍面板从上到下依次为:
⚙️ 设置项在设置中搜索
🔌 翻译服务配置详解
|
| 服务 | llmBaseUrl |
llmModel 示例 |
llmApiKey |
|---|---|---|---|
| 本地 Ollama | http://127.0.0.1:11434/v1 |
qwen3.8:27b-nothink(ollama list 中的模型名) |
任意值,如 ollama |
| DeepSeek | https://api.deepseek.com/v1 |
deepseek-chat |
你的 DeepSeek API Key |
| SiliconFlow | https://api.siliconflow.cn/v1 |
deepseek-ai/DeepSeek-V3 |
你的 SiliconFlow API Key |
| 通义千问 | https://dashscope.aliyuncs.com/compatible-mode/v1 |
qwen-plus |
你的 DashScope API Key |
本地 Ollama 需先启动:
ollama serve,并拉取模型:ollama pull qwen3.8:27b-nothink。
mymemory(免费,无需密钥)
- 无需任何配置,开箱即用。
- 免费接口有速率限制,长文档可能较慢或偶发失败,可稍后重试。
- 单次请求约 500 字符上限,插件会自动分段。
bing(微软翻译 API)
- 需在 Azure 门户 创建 Translator 资源,获取
bingApiKey与bingRegion。 - 质量稳定,但需要付费/试用资源。
none(不翻译)
- 不调用任何翻译接口,直接展示原文 README 与描述。
- 适合离线环境或仅想查看原文的场景。
❓ 常见问题
Q:为什么没有「插件简介」?
A:简介仅在 provider 为 llm 且生成成功时显示。若使用 mymemory / bing / none,或 LLM 调用失败,该区块会自动隐藏,不影响其余翻译内容。
Q:token 用量是精确的吗?
A:llm 模式下为接口返回的精确值;mymemory / bing 不返回 usage,插件按字符经验值估算(英文约 4 字符/token、中文约 1.5 字符/token),并在面板中标注「估算值」。
Q:翻译失败怎么办?
A:面板会显示错误原因。常见原因是免费接口被限流,可稍后重试;或改用 llm(推荐)/ bing。单段失败会保留原文,不会导致整体失败。
Q:为什么不能直接改写商店原生的扩展详情页? A:VS Code 没有提供公开 API 来改写原生的「扩展详情页面」(Marketplace Webview)。因此本插件采用可行的替代方案:检测到新插件安装或商店点开插件后,读取其 README 并翻译,在独立面板中展示中文介绍。这是目前在不修改 VS Code 内部实现前提下最稳定的做法。
Q:如何排查商店页识别问题?
A:运行命令 插件中文介绍: [调试] 查看当前 Tab 结构,在「插件中文介绍 Debug」输出面板中查看当前所有 Tab 的 input 结构与解析出的扩展 ID。
🛠️ 本地开发
npm install # 安装依赖
npm run compile # 编译 TypeScript 到 out/
npm run watch # 监听模式,自动重新编译
按 F5 启动扩展开发宿主进行测试。
📦 打包发布
npm install -g @vscode/vsce
# 确认 package.json 中的 publisher 字段
npx vsce package
打包前会自动执行 vscode:prepublish(即 npm run compile),确保 out/ 为最新代码。产物为 extension-chinese-reader-<version>.vsix。
📁 目录结构
├── package.json # 插件清单(命令、设置、入口)
├── tsconfig.json
├── src/
│ ├── extension.ts # 入口:检测新安装 / 商店页、编排流程
│ ├── translator.ts # 翻译逻辑(LLM / MyMemory / Bing)+ 简介生成 + token 统计
│ ├── readerPanel.ts # Webview 面板 + 极简 Markdown 渲染
│ └── marketplace.ts # 从 VS Code Marketplace 拉取未安装插件信息
└── out/ # 编译产物