hl smartling can export official glossary CSV, XLSX, and TBX, and can list, create, and import translation memories. PDF writeback keeps the source font when it can render the translation; otherwise it embeds CJK, Thai, or Lao fonts.
View the GitHub release · Full changelog
Breaking changes
None.Features
- Add Smartling official glossary export and TM admin.
glossary downloadstill writes Hyperlocalise-shaped CSV by default. Pass--officialfor Smartling’s official CSV, or--format xlsx/--format tbxfor spreadsheet and TBX exports (TBX defaults to v3;--tbx-version v2selects TBX-Core v2).glossary importaccepts official.csv,.xlsx, and.tbx, and--archive-modearchives entries missing from the file.tm list,tm create, andtm importcover account translation memories;tm importuploads TMX (default 30-minute timeout,--timeout-secondsto raise it) and prints the accepted job UID.tm downloadstill writes Hyperlocalise CSV or TMX from the entries API.glossary createnow sends the v3glossaryNamefield. See Smartling. - Embed CJK, Thai, and Lao PDF fonts on writeback. A block keeps the source font when that font contains the translated glyphs. Latin WinAnsi text still uses Helvetica. Other Chinese, Japanese, Korean, Vietnamese, Thai, and Lao blocks are redrawn with a bundled font, which increases the file size. Line wrapping measures CJK as full-width and keeps closing punctuation off new lines. Scripts that need shaping (Arabic, Hebrew, Indic, Khmer, Myanmar, Sinhala, Thaana, Syriac) fail instead of writing missing glyphs. See Translate PDF documents.
Fixes
None.Performance
- React Intl
hl extractskips non-message JSX attribute values, uses an ASCII identifier fast path, and avoids string concatenation when scanning closing tags: about 29% faster extract with about 11% fewer allocations. - Subtitle timestamp checks scan SRT, WebVTT, and SBV cue lines as bytes instead of running a regexp on every non-blank line: about 2.5× faster parse and marshal.
- Gettext PO writeback reuses the precomputed singular key and clears
fuzzyflags in place, so catalog rewrite allocates less per entry.
Tests
- Official glossary export format and TBX version flags, TM list/create/import flags, and TMX-only import rejection.
- PDF CJK and Thai round-trip, font embedding, original-font reuse, CJK wrap width, and rejection of scripts that need shaping.
- Subtitle timestamp scanners matching the previous regexp, including hourless SRT times and trailing whitespace.
- PO fuzzy-flag clearing on rewritten singular entries.

