DeckLingo for PPTX
by @neabigmo
Translate editable PowerPoint decks into Chinese, English, Japanese, and other target languages while preserving layout, glossary consistency, and editabilit...
clawhub install decklingo-pptxπ About This Skill
name: "decklingo-pptx" description: "Translate editable PowerPoint decks into Chinese, English, Japanese, and other target languages while preserving layout, glossary consistency, and editability. Use for PPTX localization, English-to-Chinese slides, Chinese-to-English decks, speaker note translation, and glossary-aware presentation workflows." license: "MIT" metadata: {"short-description":"Translate editable PPTX decks with glossary-aware verification.","openclaw":{"homepage":"https://github.com/Neabigmo/DeckLingo-for-PPTX","emoji":"π","requires":{"anyBins":["python","python3"],"bins":[],"env":[],"config":[]},"install":[{"id":"download-source","kind":"download","label":"Open GitHub repository","url":"https://github.com/Neabigmo/DeckLingo-for-PPTX","os":["darwin","linux","win32"]}]}}
DeckLingo for PPTX
Use this skill for translation tasks on existing .pptx decks when the output must stay editable and visually close to the source.
It is designed to stay tool-agnostic so the same skill package can be used in Codex-style environments, OpenClaw-style environments, and other agent runtimes that can execute local scripts and read SKILL.md.
Install on ClawHub:
clawhub install decklingo-pptx
Best search phrases for this skill:
What This Skill Covers
Real Example Prompts
When To Use It
When Not To Use It
Defaults
source language: autotarget language: infer from the request; if not clear, use the most obvious requested languageenglish -> chinese is a first-class workflow, not a fallback caseworking/output language: use the user's current language by defaulttranslation scope: slides on, notes on, layouts off, masters off unless the user requests a full inherited-text cleanupKeep these separate:
Workflow
1. Determine: - input PPTX path - output PPTX path - source language - target language - working language - whether notes/layouts/masters should be translated 2. Run the scan script first when the deck is unfamiliar or large. 3. Prefer XML-level translation so the deck remains editable and layout drift stays low. 4. Translate paragraph-sized text instead of isolated run fragments whenever possible. 5. Preserve numbers, dates, URLs, filenames, code snippets, and product names unless translation is clearly needed. 6. Re-scan the result and report: - output file path - paragraph counts - glossary usage - any remaining source-language text in editable objects
Scripts
Use the bundled scripts:
python .trae/skills/decklingo-pptx/scripts/scan_pptx_text.py \
--input "path/to/input.pptx" \
--source-lang zh \
--include-notes \
--include-layouts \
--include-masters
python .trae/skills/decklingo-pptx/scripts/translate_pptx_text.py \
--input "path/to/input.pptx" \
--output "path/to/output.pptx" \
--source-lang auto \
--target-lang en \
--ui-lang zh \
--include-notes \
--glossary-file ".trae/skills/decklingo-pptx/assets/glossary.sample.json" \
--report-file "translation-report.json"
Common Options
--source-lang: source language code, default auto--target-lang: target language code such as en, ja, fr, de, zh-CN--ui-lang: language for logs and summaries, usually zh or en--include-notes: include speaker notes--include-layouts: include slide layouts--include-masters: include slide masters--glossary-file: JSON glossary mapping source terms to preferred translations--skip-pattern-file: regex patterns to protect text like URLs, file names, code identifiers, or custom labels--report-file: write a machine-readable JSON report--dry-run: inspect and translate in memory without writing a new deck--backup-suffix: backup suffix used when translating in place, default .bakWhen To Load References
Notes
lxml, deep-translator, ZIP read/write access.π Tips & Best Practices
lxml, deep-translator, ZIP read/write access.