Skip to content

Add isv_latin: Interslavic (Latin), standard orthography - #4092

Open
radoslove wants to merge 2 commits into
keymanapp:masterfrom
radoslove:add-isv-latin
Open

Add isv_latin: Interslavic (Latin), standard orthography#4092
radoslove wants to merge 2 commits into
keymanapp:masterfrom
radoslove:add-isv-latin

Conversation

@radoslove

Copy link
Copy Markdown

First Interslavic keyboard in the catalogue.

Standard orthography only — č š ž ě plus the punctuation Interslavic texts use („ ” – —). The extended alphabet is deliberately absent: it is not written in new text, and this matches the author's Windows (.klc), macOS (.keylayout) and Android layouts, which carry exactly the same four letters.

Touch: no AltGr exists on a touchscreen, so the letters sit on longpress of their base key — hold c for č — the same mnemonic as AltGr+C on desktop. The longpress keys are touch-only T_* keys with their own rules rather than a re-use of the RALT rules, because a touch subkey cannot reach the rightalt layer. Both sets are generated from one table so they cannot drift apart.

Language: isv-Latn (ISO 639-3 isv), resolves natively. Tested on iPadOS 26 via Keyman: install, typing, longpress, capitals. Builds warning-clean with kmc 18.0.249.

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

First Interslavic keyboard in the catalogue.

Standard orthography only — č š ž ě plus the punctuation Interslavic texts use
(„ ” – —). The extended alphabet is deliberately absent: it is not written in
new text, and this matches the author's Windows (.klc), macOS (.keylayout) and
Android layouts, which carry exactly the same four letters.

Touch: no AltGr exists on a touchscreen, so the letters sit on longpress of
their base key — hold `c` for `č` — the same mnemonic as AltGr+C on desktop.
The longpress keys are touch-only T_* keys with their own rules rather than a
re-use of the RALT rules, because a touch subkey cannot reach the rightalt
layer. Both sets are generated from one table so they cannot drift apart.

Language: isv-Latn (ISO 639-3 `isv`), resolves natively.
Tested on iPadOS 26 via Keyman: install, typing, longpress, capitals.
Builds warning-clean with kmc 18.0.249.

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

Copy link
Copy Markdown
Collaborator

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.

radoslove pushed a commit to radoslove/keyboard-interslavic that referenced this pull request Aug 8, 2026
Reported from a real iPad: `s`, `c`, `z` produced the plain letter roughly half
the time. Not autocorrect and not a missing rule — a plain letter means Keyman
read the hold as a tap, so the longpress threshold was simply missed. `e` looked
reliable only because it happens to be pressed with a different rhythm.

Longpress is timing-dependent by nature, so rather than fight the threshold the
letters now also have a flick: swipe north-east. A flick cannot be mistaken for
a tap, and it is the same gesture the Android layout already uses for the same
four letters, so the two mobile platforms now share one habit.

Longpress is untouched — this is additive, not a replacement.

minKeymanVersion deliberately stays at 10.0 even though flicks need 17+.
Raising it would lock out everyone on an older Keyman to gain a feature they
would not get anyway; they keep longpress, which is what 10.0 supports. The
compiler hint about this is the correct outcome, not a defect to silence.

Not yet reflected in keymanapp/keyboards#4092 — that gets updated once the
fix is confirmed on the device it was reported from.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Licence: `Copyright © 2026 Radoslove` — the bare `©` came straight from the
`kmc generate` template. Same slip was in the lexical model submission and is
fixed there too.

Flicks: the four letters now respond to a swipe in any direction as well as to a
longpress. Reported from a real iPad — longpress alone gives the bare letter
roughly half the time, because Keyman expects you to slide onto the popup before
releasing and the popup lands somewhere different for every key. The stock
EuroLatin keyboard misses the same way, so this is not specific to this layout;
the flick simply removes the timing from the equation.

Longpress is untouched. minKeymanVersion deliberately stays at 10.0 even though
flicks need 17+ — raising it would lock out older installs to add a feature they
would not get anyway, and they keep the longpress that 10.0 supports.

Tested on iPadOS 26 via Keyman: install, typing, capitals, both gestures.
@LornaSIL

Copy link
Copy Markdown
Contributor

Thanks for your keyboard submission. It looks to be in very good shape. There are a few things you should update:

  • go to the "On-Screen" keyboard tab (in the .kmn) and select "Auto-fill underlying layout" and then select "Fill from layout". That way users who choose to use the On-Screen keyboard will see what they should type. This is also what we would use in our online help file. More on that below.
  • In the .kmn you can select the target of "any" and unselect all the others.
  • In the touch layout, when the tablet and phone have the exact layout, just remove one of them. In this case, remove the tablet one. That makes it much easier to maintain your keyboard when you make changes. The phone layout will work on tablet, etc.
  • Any keyboard that goes into the release section is required to have an online help file. You would create a help folder within source. Add a file called isv_latin.php in that folder. You would likely want to include most of the content you have in welcome.htm but you need to use the php header and styles. (You may not need the the "data-states" since you've documented the keyboard with a table.) You can read about it here: https://help.keyman.com/developer/keyboards/phphelpfile If you need help with this, I will look at it after you submit what you think will work.

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