birdmj73 downloadsTranslate books and papers into Chinese with page-aligned bilingual side-by-side reading, formula-safe LaTeX handling, and glossary control.
Translate books and papers into Chinese with page-aligned bilingual side-by-side reading, formula-safe LaTeX handling, and glossary control — then read original and translation locked together, scrolling in sync.
中文说明见下方 中文简介。
Existing translators produce a separate Chinese copy of a note. PageSync Translate is built for reading imported English books and papers inside Obsidian:
[p.23] etc.) are translated page by page; the reading view shows aligned page dividers on both sides and lets you jump to any original page.$$…$$, $…$), code blocks, wikilinks and images are masked into placeholders before the engine sees them and restored after, with automatic validation and retry when the model drops one./chat/completions endpoint (set Base URL + Model).The interface is bilingual — Interface language offers 中文 / English / both side by side / follow Obsidian's locale. 界面支持中英文切换(设置最顶部「界面语言」:中文 / English / 双语同显 / 跟随 Obsidian)。Use the Test buttons next to the model fields to verify provider, key and model before translating.
| Command | What it does |
|---|---|
| Open bilingual view for current note | Side-by-side reader with sync scrolling |
| Translate current note (background) | Translate the note with cache + estimate |
| Translate all notes in a folder | Queue a whole book split across files |
| Translate selection | Popup dictionary / sentence translation |
| Jump to page | Go to an original page number |
| Export interleaved bilingual document | Write a … 双语对照.md file |
| Export (translation only) | Pick "Translation only" in the export dialog for a clean … 译文.md copy |
| Import PDF and translate | Page-marked markdown from a PDF (text or vision) |
| Pause / resume translation queue | Control a running job |
| Show translation queue and retry failures | Inspect and retry failed blocks |
Clicking an untranslated block or page in the bilingual view translates just that page.
A markdown table (default file Glossary.md):
| Term | Translation or LEAVE |
| --- | --- |
| betweenness centrality | LEAVE |
| graph neural network | 图神经网络 |
LEAVE (or 保留/不译) keeps the term in English. Per-document overrides go in frontmatter:
---
glossary: path/to/book-terms.md # extra glossary file for this book
leave-terms: [betweenness centrality, layering]
term-map: {smurfing: 蚂蚁搬家}
---
Presets: [p.23], [Page 23], {p.23}, --- Page 23 ---, %%page: 23%%, or a custom regex with one capture group. Documents without markers fall back to paragraph alignment.
data.json inside your vault; nothing is sent anywhere else..bilingual/) inside your vault.Using a paid API requires your own key and usage costs; the plugin shows token estimates before large runs.
npm install
npm run dev # watch build
npm test # core logic tests (segmenter, masker, glossary, batching)
npm run build # production build
PageSync Translate 面向在 Obsidian 中阅读英文书籍/论文的场景:
[p.23] 等),译文与原文按页对齐,可跳转任意原版页码$$…$$、$…$、代码块、wiki 链接在送入模型前用占位符保护,翻译后还原并校验,丢失自动重试| 英文术语 | 译文或 LEAVE |,LEAVE 表示保留英文;翻译后自动校验,违规重试;文档级覆盖写在 frontmatterPlanned for the next version (cost-focused):
MIT