Skip to content

Fix transliteration of Latin typographic ligatures - #223

Open
ac1982 wants to merge 1 commit into
simov:masterfrom
ac1982:fix/latin-ligatures
Open

ac1982 wants to merge 1 commit into
simov:masterfrom
ac1982:fix/latin-ligatures

Conversation

@ac1982

@ac1982 ac1982 commented Oct 20, 2026

Copy link
Copy Markdown

Fixes #221.

Text containing Latin ligatures currently loses letters: slugify('file') returns le, and slugify('office') returns oce. Add U+FB00–U+FB06 and the uppercase/lowercase IJ ligatures to the existing charmap, and regenerate the distributed bundle.

The regression covers words containing all nine characters, strict/lower options, and the Dutch locale. npm test fails before the mappings and passes afterward (46 tests, Node 24.21.0). Browser-global and AMD exports were checked in Node VM contexts, and custom extend() overrides still work. git diff --check passes. Other Node versions and actual browsers were not run locally.

The mappings follow the Unicode Latin ligature chart and IJ character definitions, using the project's existing transliteration mechanism.

AI assistance: developed and validated with OpenAI Codex.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Latin ligatures (fi, fl, ff, ffi, ffl, st, ij) are silently dropped

1 participant