Releases: muhmoosa/claude-arabic-docs
v1.1.1 — skill name fix (arabic-rtl-docs)
v1.1.1
Renames the skill's name: field from claude-arabic-docs to arabic-rtl-docs — a skill name can't contain the reserved word "claude", which blocked installation of the v1.1.0 bundle.
No functional changes from v1.1.0: same --validate / --fix-jc validator, the python-docx template, and the refreshed docs. Only the installed skill identifier changed; the repository, README, and .skill filename are unaffected.
Install: download claude-arabic-docs.skill below → in Cowork, open the skills picker → Install Skill → choose the file.
v1.1.0 — content-level validator + python-docx template
What's new in v1.1.0
Follow-up to v1.0.0 after a real failure case: a generated Arabic document passed the structural harden and looked correct in a LibreOffice PDF preview, yet still violated three content-level rules and rendered wrong in Word. This release adds tooling to catch that class of mistake.
Added
harden_rtl.py --validate— flags content-level rule violations: abidiparagraph usingjc="right", and a single run mixing Arabic + Latin letters (errors); Latin digits or trailing Latin punctuation in RTL runs (warnings). Exits 1 on errors.harden_rtl.py --fix-jc— opt-in rewrite ofjc="right"→"start"in unambiguously-RTL paragraphs (have<w:bidi/>, no LTR runs).references/python-docx-template.md— a battle-tested python-docx helper layer (split_biditokenizer,add_para/add_run/make_table_rtl) that encodes rules 1–8 by construction, plus a worked example.- SKILL.md — new "python-docx gotcha" section: there is no
WD_ALIGN_PARAGRAPH.START, so the natural API emits the buggyjc="right".
Changed
- SKILL.md reference links repointed to existing files; per-language notes folded inline.
- README (EN + AR): documented
--validate/--fix-jc, addedreferences/to the layout, and the build command now bundlesreferences/.
Install: download claude-arabic-docs.skill below → in Cowork, open the skills picker → Install Skill → choose the file.
v1.0.0 — Initial release: six-layer RTL hardening
Initial release of claude-arabic-docs
A Claude skill that fixes the class of MS Word rendering bugs no docx generation library handles by default. Tested on Word for Mac and Word for Windows with two production legal documents (~30 pages of Arabic).
What's in this release
- SKILL.md — the full rule catalog (six layers) with rationale
- scripts/harden_rtl.py — idempotent post-processor; injects every RTL setting Word actually checks
- scripts/arabic_numerals.py — converts Western digits + Latin punctuation to Arabic conventions, while protecting IBANs, emails, license codes
- examples/sample-output.docx — generated Arabic test document
- examples/build_test_arabic.js — the docx-js code that produced it
- assets/before-after.png — visual of what the skill fixes
Install
- Download claude-arabic-docs.skill from the Assets below
- In Cowork: click the skills picker, choose Install Skill, select the .skill file
- In Claude Code: copy the folder to ~/.claude/skills/
The six layers it injects
| # | Layer | Why |
|---|---|---|
| 0.0 | settings.xml themeFontLang | Master switch — Word's RTL pipeline only engages when this is set |
| 0 | docDefaults rPr lang | Tells Word the complex-script language |
| 0.5 | docDefaults pPrDefault | Default direction for the Normal style |
| 1 | Section bidi | Section-level reading direction |
| 2 | Table bidiVisual | Flips column order so first cell renders on the right |
| 3 | Paragraph + run flags | Element-level RTL |
| 5 | Logical alignment (start/end) | Word for Mac re-interprets physical right as logical end — use start/end instead |
Full rationale and discovery history in CHANGELOG.md and SKILL.md.
License
MIT — use it, fork it, improve it. PRs welcome.