paperlib-pdf2zh-translate-extension
v0.1.7
Published
Translate PDFs using pdf2zh (PDFMathTranslate) directly in Paperlib.
Downloads
78
Maintainers
Readme
Paperlib PDF Translation Extension (pdf2zh)
A Paperlib extension that integrates pdf2zh_next for translating academic PDFs directly from your library.
Features
- One-click PDF translation via CLI subprocess
- Preserves formulas, charts, and layout
- Real-time progress display in the detail panel
- Monolingual and bilingual output
- Configurable default open version
Prerequisites
Install pdf2zh_next:
# Using pip
pip install pdf2zh-next
# Using uv
uv tool install pdf2zh-nextVerify installation:
pdf2zh_next --versionInstallation
- Clone and build:
git clone https://github.com/starandhonor/paperlib-pdf2zh-translate-extension.git
cd paperlib-pdf2zh-translate-extension
npm install
npm run build- In Paperlib:
File→Preferences→Extensions→Install from Path→ select the project root directory.
Usage
- Select a paper with a PDF in your library.
- Trigger translation via one of:
- Right-click → "Translate PDF (pdf2zh)"
- Command bar:
Cmd/Ctrl+Shift+P→ "Translate PDF"
- Progress is shown in the detail panel slot. Wait for completion.
- Translated PDFs appear as updated files or supplementaries depending on your settings.
Preferences
| Setting | Default | Description |
|---------|---------|-------------|
| Target Language | Chinese (zh) | Translation target language |
| Translation Service | Google | Backend service (Google, Bing, DeepL, OpenAI, Ollama, DeepSeek, SiliconFlow, OpenAI Compatible) |
| Output Mode | Both | Generate monolingual only, bilingual only, or both |
| Default Open | Bilingual translation | Which version opens by default after translation: original, monolingual, or bilingual |
| Timeout (minutes) | 30 | Maximum wait time per translation |
| pdf2zh_next Binary Path | /home/user/.local/bin/pdf2zh_next | Absolute path to the pdf2zh_next executable |
Service-specific configuration
For OpenAI, DeepSeek, SiliconFlow, etc., set environment variables before launching Paperlib:
export OPENAI_API_KEY="sk-..."
export OPENAI_BASE_URL="https://api.openai.com/v1"
export DEEPSEEK_API_KEY="sk-..."Build
npm install
npm run buildOutput: dist/main.js.
License
MIT
