Skip to content

[radoslove.isv-latn.wordlist] - Initial creation of Interslavic lexical model - #351

Merged
darcywong00 merged 2 commits into
keymanapp:masterfrom
radoslove:add-isv-wordlist
Aug 10, 2026
Merged

[radoslove.isv-latn.wordlist] - Initial creation of Interslavic lexical model#351
darcywong00 merged 2 commits into
keymanapp:masterfrom
radoslove:add-isv-wordlist

Conversation

@radoslove

Copy link
Copy Markdown

First Interslavic lexical model in the catalogue. Companion to the isv_latin keyboard.

39,777 inflected forms, not lemmas. In a language this heavily inflected the distinction decides whether prediction is useful at all: you type slovami, not slovo.

Derived from the 248,845-form wordlist generated from the medzuslove dictionary database — the same source as the Interslavic HeliBoard dictionary. Trimmed to frequency >= 100 because the full list compiles to a 33 MB trie, past what an iOS keyboard extension can hold. Vocabulary specific to Interslavic itself is kept regardless of frequency: the source corpus scores medžuslovjansky at f=26 and tipkovnica at 99, so a plain cut-off would drop precisely the words its users type most.

Standard orthography only, matching the keyboard — the suggestion bar never proposes a spelling the standard does not use.

Sources and the generator: https://github.com/radoslove/keyboard-interslavic

First Interslavic lexical model in the catalogue. Companion to the `isv_latin`
keyboard.

39,777 inflected forms, not lemmas. In a language this heavily inflected the
distinction decides whether prediction is useful at all: you type `slovami`,
not `slovo`.

Derived from the 248,845-form wordlist generated from the medzuslove
dictionary database — the same source as the Interslavic HeliBoard dictionary.
Trimmed to frequency >= 100 because the full list compiles to a 33 MB trie,
past what an iOS keyboard extension can hold. Vocabulary specific to Interslavic
itself is kept regardless of frequency: the source corpus scores
`medžuslovjansky` at f=26 and `tipkovnica` at 99, so a plain cut-off would drop
precisely the words its users type most.

Standard orthography only, matching the keyboard — the suggestion bar never
proposes a spelling the standard does not use.

Sources and the generator: https://github.com/radoslove/keyboard-interslavic
@keyman-server

Copy link
Copy Markdown

Thank you for your pull request. You'll see a "build failed" message until the Keyman team has reviewed the pull request and manually initiated the build process.

Every change committed to this branch will become part of this pull request. When you have finished submitting files and are ready for the Keyman team to review this pull request, please post a "Ready for review" comment.

@darcywong00

Copy link
Copy Markdown
Contributor

Thanks for the submission. Do you know if there's any plans to make an Interslavic lexical model using Cyrillic script?

I wonder if we should rename the paths (and references) to radoslove.isv-latn.wordlist to distinguish from isv-cyrl

Comment thread release/radoslove/radoslove.isv.wordlist/LICENSE.md Outdated
Both from review feedback.

Rename: plain `isv` claimed the whole language while the model only covers Latin,
and Interslavic is genuinely written in both scripts. `isv-latn` also lines up
with the companion keyboard, which is already `isv_latin`. Paths, project file,
package, model source and all references renamed together.

Licence: `Copyright © 2026 Radoslove` — the bare `©` came from the
`kmc generate` template.
@radoslove

Copy link
Copy Markdown
Author

Agreed on the rename — pushed as radoslove.isv-latn.wordlist. You're right that plain isv claims the whole language when the model only covers Latin, and Interslavic really is written in both scripts. The companion keyboard is already
isv_latin, so the naming lines up. (The licence line came from the kmc generate template, so the same slip was in keymanapp/keyboards#4092 — corrected there too.)

On Cyrillic: not in the immediate plans. Cyrillic layouts for Interslavic do exist in my repo, but they've never been audited to the same standard as the Latin one, and I have no way to test a Cyrillic model properly right now. I'd rather submit it as a separate PR once it's actually verified than add an unchecked script to this one.

@radoslove

Copy link
Copy Markdown
Author

Ready for review

radoslove pushed a commit to radoslove/keyboard-interslavic that referenced this pull request Aug 9, 2026
…oth READMEs

All four come from review feedback or from checking what the docs actually promise.

Rename (keymanapp/lexical-models#351 review): `radoslove.isv.wordlist` ->
`radoslove.isv-latn.wordlist`. Plain `isv` claimed the whole language while the
model only covers Latin, and Interslavic is genuinely written in both scripts.
Renamed together: directory, .kpj, .kps, .model.ts, the published .kmp, every
reference in the generators and docs, and the upstream_prep staging.

Licence: `Copyright © 2026 Radoslove` — the bare `©` came from the `kmc generate`
template, so the same slip was in both submissions and both are fixed.

README, Windows section: it told users to run `setup.exe` for the Latin layout.
That layout has no setup.exe — it installs via `install.ps1`. The claim was false
for the one layout we actually recommend, in both language versions.

README, contributing section: it described an opt-in on-device collection system —
pseudonyms, filters, withdrawable consent — as though it existed. It does not. The
section now documents the channel that does exist (GitHub Issues) and marks the
rest as planned, including why collection has to live in the app rather than the
keyboard on iOS.

Both packages rebuilt warning-clean; check_docs.py passes 53 checks.
@darcywong00 darcywong00 changed the title Add radoslove.isv.wordlist: Interslavic lexical model [radoslove.isv-latn.wordlist] - Initial creation of Interslavic lexical model Aug 10, 2026

@darcywong00 darcywong00 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm (looks good to me).
Thanks for the submission!

@darcywong00
darcywong00 merged commit 131f844 into keymanapp:master Aug 10, 2026
2 checks passed
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.

4 participants