diff --git a/release/i/isv_latin/HISTORY.md b/release/i/isv_latin/HISTORY.md new file mode 100644 index 0000000000..1c740f5438 --- /dev/null +++ b/release/i/isv_latin/HISTORY.md @@ -0,0 +1,32 @@ +Medžuslovjansky (latinica) Change History +==================== + +1.6 (2026-08-17) +---------------- +* On-Screen Keyboard filled in: the underlying US layout on the base and shift + layers plus this keyboard's AltGr cells, so an OSK user can see that č is + AltGr+C. It was an empty stub before, and rendered blank. +* Online help added (source/help/isv_latin.php). +* &TARGETS is now 'any' instead of a hand-written list of every platform. +* The touch layout ships the phone form only. The tablet form was byte-identical + to it; Keyman uses the phone form on tablets when no tablet form is present. + +1.5 (2026-08-09) +---------------- +* Flick gestures on č š ž ě extended to all eight directions. Restricting them + to north-east still lost any swipe that drifted low or left. + +1.3 (2026-08-08) +---------------- +* Flick gestures added to č š ž ě, alongside longpress. A flick cannot be + mistaken for a tap, so it does not depend on release timing. + +1.2 (2026-08-08) +---------------- +* Fixed uppercase longpress: a subkey on the shift layer fires with the shift + modifier held, so the touch keys needed explicit [SHIFT T_*] rules. Before + this, holding a capital letter emitted nothing. + +1.0 (2026-08-08) +---------------- +* Created by Radoslove diff --git a/release/i/isv_latin/LICENSE.md b/release/i/isv_latin/LICENSE.md new file mode 100644 index 0000000000..5305d7c8fa --- /dev/null +++ b/release/i/isv_latin/LICENSE.md @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright © 2026 Radoslove + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/release/i/isv_latin/README.md b/release/i/isv_latin/README.md new file mode 100644 index 0000000000..b0def220f4 --- /dev/null +++ b/release/i/isv_latin/README.md @@ -0,0 +1,33 @@ +Medžuslovjansky (latinica) keyboard +============== + +Description +----------- +Interslavic Latin keyboard — standard orthography. + +Links +----- +Keyboard Homepage: https://github.com/radoslove/keyboard-interslavic + +Install on iPhone/iPad: get the free [Keyman](https://keyman.com/iphone-and-ipad/) app, +then open `keyman/isv_latin.kmp` on the device. + +Build from source: `python3 build_keyman.py && kmc build keyman/isv_latin/isv_latin.kpj` + +Copyright +--------- +See [LICENSE.md](LICENSE.md) + +Supported Platforms +------------------- + * Windows + * macOS + * Linux + * Web + * iPhone + * iPad + * Android phone + * Android tablet + * Mobile devices + * Desktop devices + * Tablet devices diff --git a/release/i/isv_latin/isv_latin.kpj b/release/i/isv_latin/isv_latin.kpj new file mode 100644 index 0000000000..7ed1ac72df --- /dev/null +++ b/release/i/isv_latin/isv_latin.kpj @@ -0,0 +1,8 @@ + + + + 2.0 + True + True + + diff --git a/release/i/isv_latin/source/help/isv_latin.php b/release/i/isv_latin/source/help/isv_latin.php new file mode 100644 index 0000000000..c2d48c4d1c --- /dev/null +++ b/release/i/isv_latin/source/help/isv_latin.php @@ -0,0 +1,108 @@ + + +

+ Tipkovnica za medžuslovjansky jezyk — standardna ortografija: č š ž ě.
+ Interslavic keyboard — standard orthography: č š ž ě. + The extended alphabet is deliberately not on this layout. +

+ +

+ ⚠ iOS 16+: vključi „Allow Full Access" v + Nastrojenja → Osnovne → Tipkovnica → Tipkovnici → Keyman. + Bez togo tipkovnica v drugyh aplikacijah jest prazdna — bez klaviš. + V samoj aplikaciji Keyman vse rabotaje i bez togo.
+ iOS 16+: turn on "Allow Full Access" in + Settings → General → Keyboard → Keyboards → Keyman. Without it the system + keyboard renders blank — no keys. Inside the Keyman app it works either way. +

+ +

Na telefonu · On phone and tablet

+ +

+ Prěvlečeš palcem iz tipky v goru — litera se napiše.
+ Swipe up from the key — the letter is typed. Any upward + direction works, so you do not have to aim. +

+ + + + + + + +
Svaip v goru · Swipe upRezultat · Result
cč
sš
zž
eě
+ +

+ Velike litery — najprvo Shift, potom prěvlečeš.
+ For capitals — press Shift first, then swipe. +

+ +

+ Drži tipku — to jest drugy sposob.
+ Holding the key also works, but on iOS it is less + reliable — Keyman wants you to slide onto the popup before releasing, and the + popup sits in a different place for every key. Swiping avoids that + entirely. +

+ +

+ ne imaje svoju tipku: to jest d + ž, dva udarjenja.
+ has no key of its own — it is d then + ž, two taps. +

+ +

+ Znaky citovanja i tire sut pod tipkoju . i pod - v numeričnom sloju + („ ” – —).
+ Quotes and dashes sit under the . key and under + - in the number layer. +

+ +

Na kompjuteru · On desktop

+ +

+ Iste litery sut pod AltGr — tako kako v našej tipkovnici za Windows.
+ The same letters sit under Right Alt (AltGr) — + exactly as in our Windows layout. Nothing on the base or shift layers is + changed, so the keyboard can be left on permanently. +

+ + + + + + + + + + +
AltGr +Rezultat · Result
cč
sš
zž
eě
;„   “
'’   ”
-–   —
+ +

Desktop Keyboard Layout

+
+
+ +

Phone Keyboard Layout

+
+
+ +

Pytanja i grěšky · Questions and bugs

+ +

+ github.com/radoslove/keyboard-interslavic +

+ +

© Radoslove · MIT

diff --git a/release/i/isv_latin/source/isv_latin.ico b/release/i/isv_latin/source/isv_latin.ico new file mode 100644 index 0000000000..ddcd70d8c3 Binary files /dev/null and b/release/i/isv_latin/source/isv_latin.ico differ diff --git a/release/i/isv_latin/source/isv_latin.keyman-touch-layout b/release/i/isv_latin/source/isv_latin.keyman-touch-layout new file mode 100644 index 0000000000..640171df5c --- /dev/null +++ b/release/i/isv_latin/source/isv_latin.keyman-touch-layout @@ -0,0 +1,942 @@ +{ + "phone": { + "font": "Tahoma", + "layer": [ + { + "id": "default", + "row": [ + { + "id": 1, + "key": [ + { + "id": "K_Q", + "text": "q" + }, + { + "id": "K_W", + "text": "w" + }, + { + "id": "K_E", + "text": "e", + "sk": [ + { + "text": "ě", + "id": "T_ECARON" + } + ], + "flick": { + "n": { + "text": "ě", + "id": "T_ECARON" + }, + "ne": { + "text": "ě", + "id": "T_ECARON" + }, + "e": { + "text": "ě", + "id": "T_ECARON" + }, + "se": { + "text": "ě", + "id": "T_ECARON" + }, + "s": { + "text": "ě", + "id": "T_ECARON" + }, + "sw": { + "text": "ě", + "id": "T_ECARON" + }, + "w": { + "text": "ě", + "id": "T_ECARON" + }, + "nw": { + "text": "ě", + "id": "T_ECARON" + } + } + }, + { + "id": "K_R", + "text": "r" + }, + { + "id": "K_T", + "text": "t" + }, + { + "id": "K_Y", + "text": "y" + }, + { + "id": "K_U", + "text": "u" + }, + { + "id": "K_I", + "text": "i" + }, + { + "id": "K_O", + "text": "o" + }, + { + "id": "K_P", + "text": "p" + } + ] + }, + { + "id": 2, + "key": [ + { + "id": "K_A", + "text": "a", + "pad": "50" + }, + { + "id": "K_S", + "text": "s", + "sk": [ + { + "text": "š", + "id": "T_SCARON" + } + ], + "flick": { + "n": { + "text": "š", + "id": "T_SCARON" + }, + "ne": { + "text": "š", + "id": "T_SCARON" + }, + "e": { + "text": "š", + "id": "T_SCARON" + }, + "se": { + "text": "š", + "id": "T_SCARON" + }, + "s": { + "text": "š", + "id": "T_SCARON" + }, + "sw": { + "text": "š", + "id": "T_SCARON" + }, + "w": { + "text": "š", + "id": "T_SCARON" + }, + "nw": { + "text": "š", + "id": "T_SCARON" + } + } + }, + { + "id": "K_D", + "text": "d" + }, + { + "id": "K_F", + "text": "f" + }, + { + "id": "K_G", + "text": "g" + }, + { + "id": "K_H", + "text": "h" + }, + { + "id": "K_J", + "text": "j" + }, + { + "id": "K_K", + "text": "k" + }, + { + "id": "K_L", + "text": "l" + }, + { + "text": "", + "width": "10", + "sp": "10" + } + ] + }, + { + "id": 3, + "key": [ + { + "id": "K_SHIFT", + "text": "*Shift*", + "sp": "1", + "nextlayer": "shift" + }, + { + "id": "K_Z", + "text": "z", + "sk": [ + { + "text": "ž", + "id": "T_ZCARON" + } + ], + "flick": { + "n": { + "text": "ž", + "id": "T_ZCARON" + }, + "ne": { + "text": "ž", + "id": "T_ZCARON" + }, + "e": { + "text": "ž", + "id": "T_ZCARON" + }, + "se": { + "text": "ž", + "id": "T_ZCARON" + }, + "s": { + "text": "ž", + "id": "T_ZCARON" + }, + "sw": { + "text": "ž", + "id": "T_ZCARON" + }, + "w": { + "text": "ž", + "id": "T_ZCARON" + }, + "nw": { + "text": "ž", + "id": "T_ZCARON" + } + } + }, + { + "id": "K_X", + "text": "x" + }, + { + "id": "K_C", + "text": "c", + "sk": [ + { + "text": "č", + "id": "T_CCARON" + } + ], + "flick": { + "n": { + "text": "č", + "id": "T_CCARON" + }, + "ne": { + "text": "č", + "id": "T_CCARON" + }, + "e": { + "text": "č", + "id": "T_CCARON" + }, + "se": { + "text": "č", + "id": "T_CCARON" + }, + "s": { + "text": "č", + "id": "T_CCARON" + }, + "sw": { + "text": "č", + "id": "T_CCARON" + }, + "w": { + "text": "č", + "id": "T_CCARON" + }, + "nw": { + "text": "č", + "id": "T_CCARON" + } + } + }, + { + "id": "K_V", + "text": "v" + }, + { + "id": "K_B", + "text": "b" + }, + { + "id": "K_N", + "text": "n" + }, + { + "id": "K_M", + "text": "m" + }, + { + "id": "K_PERIOD", + "text": ".", + "sk": [ + { + "text": ",", + "id": "K_COMMA" + }, + { + "text": "!", + "id": "K_1", + "layer": "shift" + }, + { + "text": "?", + "id": "K_SLASH", + "layer": "shift" + }, + { + "text": "„", + "id": "T_QUOTLOW" + }, + { + "text": "”", + "id": "T_QUOTHIGH" + }, + { + "text": "'", + "id": "K_QUOTE" + }, + { + "text": "\"", + "id": "K_QUOTE", + "layer": "shift" + }, + { + "text": ":", + "id": "K_COLON", + "layer": "shift" + }, + { + "text": ";", + "id": "K_COLON" + } + ] + }, + { + "id": "K_BKSP", + "text": "*BkSp*", + "width": "100", + "sp": "1" + } + ] + }, + { + "id": 4, + "key": [ + { + "id": "K_NUMLOCK", + "text": "*123*", + "width": "150", + "sp": "1", + "nextlayer": "numeric" + }, + { + "id": "K_LOPT", + "text": "*Menu*", + "width": "120", + "sp": "1" + }, + { + "id": "K_SPACE", + "text": "", + "width": "610", + "sp": "0" + }, + { + "id": "K_ENTER", + "text": "*Enter*", + "width": "150", + "sp": "1" + } + ] + } + ] + }, + { + "id": "shift", + "row": [ + { + "id": 1, + "key": [ + { + "id": "K_Q", + "text": "Q" + }, + { + "id": "K_W", + "text": "W" + }, + { + "id": "K_E", + "text": "E", + "sk": [ + { + "text": "Ě", + "id": "T_ECARON_UC" + } + ], + "flick": { + "n": { + "text": "Ě", + "id": "T_ECARON_UC" + }, + "ne": { + "text": "Ě", + "id": "T_ECARON_UC" + }, + "e": { + "text": "Ě", + "id": "T_ECARON_UC" + }, + "se": { + "text": "Ě", + "id": "T_ECARON_UC" + }, + "s": { + "text": "Ě", + "id": "T_ECARON_UC" + }, + "sw": { + "text": "Ě", + "id": "T_ECARON_UC" + }, + "w": { + "text": "Ě", + "id": "T_ECARON_UC" + }, + "nw": { + "text": "Ě", + "id": "T_ECARON_UC" + } + } + }, + { + "id": "K_R", + "text": "R" + }, + { + "id": "K_T", + "text": "T" + }, + { + "id": "K_Y", + "text": "Y" + }, + { + "id": "K_U", + "text": "U" + }, + { + "id": "K_I", + "text": "I" + }, + { + "id": "K_O", + "text": "O" + }, + { + "id": "K_P", + "text": "P" + } + ] + }, + { + "id": 2, + "key": [ + { + "id": "K_A", + "text": "A", + "pad": "50" + }, + { + "id": "K_S", + "text": "S", + "sk": [ + { + "text": "Š", + "id": "T_SCARON_UC" + } + ], + "flick": { + "n": { + "text": "Š", + "id": "T_SCARON_UC" + }, + "ne": { + "text": "Š", + "id": "T_SCARON_UC" + }, + "e": { + "text": "Š", + "id": "T_SCARON_UC" + }, + "se": { + "text": "Š", + "id": "T_SCARON_UC" + }, + "s": { + "text": "Š", + "id": "T_SCARON_UC" + }, + "sw": { + "text": "Š", + "id": "T_SCARON_UC" + }, + "w": { + "text": "Š", + "id": "T_SCARON_UC" + }, + "nw": { + "text": "Š", + "id": "T_SCARON_UC" + } + } + }, + { + "id": "K_D", + "text": "D" + }, + { + "id": "K_F", + "text": "F" + }, + { + "id": "K_G", + "text": "G" + }, + { + "id": "K_H", + "text": "H" + }, + { + "id": "K_J", + "text": "J" + }, + { + "id": "K_K", + "text": "K" + }, + { + "id": "K_L", + "text": "L" + }, + { + "text": "", + "width": "10", + "sp": "10" + } + ] + }, + { + "id": 3, + "key": [ + { + "id": "K_SHIFT", + "text": "*Shift*", + "sp": "1", + "nextlayer": "default" + }, + { + "id": "K_Z", + "text": "Z", + "sk": [ + { + "text": "Ž", + "id": "T_ZCARON_UC" + } + ], + "flick": { + "n": { + "text": "Ž", + "id": "T_ZCARON_UC" + }, + "ne": { + "text": "Ž", + "id": "T_ZCARON_UC" + }, + "e": { + "text": "Ž", + "id": "T_ZCARON_UC" + }, + "se": { + "text": "Ž", + "id": "T_ZCARON_UC" + }, + "s": { + "text": "Ž", + "id": "T_ZCARON_UC" + }, + "sw": { + "text": "Ž", + "id": "T_ZCARON_UC" + }, + "w": { + "text": "Ž", + "id": "T_ZCARON_UC" + }, + "nw": { + "text": "Ž", + "id": "T_ZCARON_UC" + } + } + }, + { + "id": "K_X", + "text": "X" + }, + { + "id": "K_C", + "text": "C", + "sk": [ + { + "text": "Č", + "id": "T_CCARON_UC" + } + ], + "flick": { + "n": { + "text": "Č", + "id": "T_CCARON_UC" + }, + "ne": { + "text": "Č", + "id": "T_CCARON_UC" + }, + "e": { + "text": "Č", + "id": "T_CCARON_UC" + }, + "se": { + "text": "Č", + "id": "T_CCARON_UC" + }, + "s": { + "text": "Č", + "id": "T_CCARON_UC" + }, + "sw": { + "text": "Č", + "id": "T_CCARON_UC" + }, + "w": { + "text": "Č", + "id": "T_CCARON_UC" + }, + "nw": { + "text": "Č", + "id": "T_CCARON_UC" + } + } + }, + { + "id": "K_V", + "text": "V" + }, + { + "id": "K_B", + "text": "B" + }, + { + "id": "K_N", + "text": "N" + }, + { + "id": "K_M", + "text": "M" + }, + { + "id": "K_PERIOD", + "text": ".", + "sk": [ + { + "text": ",", + "id": "K_COMMA" + }, + { + "text": "!", + "id": "K_1", + "layer": "shift" + }, + { + "text": "?", + "id": "K_SLASH", + "layer": "shift" + }, + { + "text": "„", + "id": "T_QUOTLOW" + }, + { + "text": "”", + "id": "T_QUOTHIGH" + }, + { + "text": "'", + "id": "K_QUOTE" + }, + { + "text": "\"", + "id": "K_QUOTE", + "layer": "shift" + }, + { + "text": ":", + "id": "K_COLON", + "layer": "shift" + }, + { + "text": ";", + "id": "K_COLON" + } + ] + }, + { + "id": "K_BKSP", + "text": "*BkSp*", + "width": "100", + "sp": "1" + } + ] + }, + { + "id": 4, + "key": [ + { + "id": "K_NUMLOCK", + "text": "*123*", + "width": "150", + "sp": "1", + "nextlayer": "numeric" + }, + { + "id": "K_LOPT", + "text": "*Menu*", + "width": "120", + "sp": "1" + }, + { + "id": "K_SPACE", + "text": "", + "width": "610", + "sp": "0" + }, + { + "id": "K_ENTER", + "text": "*Enter*", + "width": "150", + "sp": "1" + } + ] + } + ] + }, + { + "id": "numeric", + "row": [ + { + "id": 1, + "key": [ + { + "id": "K_1", + "text": "1" + }, + { + "id": "K_2", + "text": "2" + }, + { + "id": "K_3", + "text": "3" + }, + { + "id": "K_4", + "text": "4" + }, + { + "id": "K_5", + "text": "5" + }, + { + "id": "K_6", + "text": "6" + }, + { + "id": "K_7", + "text": "7" + }, + { + "id": "K_8", + "text": "8" + }, + { + "id": "K_9", + "text": "9" + }, + { + "id": "K_0", + "text": "0" + } + ] + }, + { + "id": 2, + "key": [ + { + "id": "K_4", + "text": "$" + }, + { + "id": "K_2", + "text": "@" + }, + { + "id": "K_3", + "text": "#" + }, + { + "id": "K_5", + "text": "%" + }, + { + "id": "K_7", + "text": "&" + }, + { + "id": "K_HYPHEN", + "text": "_" + }, + { + "id": "K_EQUAL", + "text": "=" + }, + { + "id": "K_BKSLASH", + "text": "|" + }, + { + "id": "K_BKSLASH", + "text": "\\" + }, + { + "text": "", + "width": "10", + "sp": "10" + } + ] + }, + { + "id": 3, + "key": [ + { + "id": "K_LBRKT", + "text": "[" + }, + { + "id": "K_9", + "text": "(" + }, + { + "id": "K_0", + "text": ")" + }, + { + "id": "K_RBRKT", + "text": "]" + }, + { + "id": "K_EQUAL", + "text": "+" + }, + { + "id": "K_HYPHEN", + "text": "-", + "sk": [ + { + "text": "–", + "id": "T_ENDASH" + }, + { + "text": "—", + "id": "T_EMDASH" + } + ] + }, + { + "id": "K_8", + "text": "*" + }, + { + "id": "K_SLASH", + "text": "/" + }, + { + "id": "K_BKSP", + "text": "*BkSp*", + "width": "100", + "sp": "1" + } + ] + }, + { + "id": 4, + "key": [ + { + "id": "K_LOWER", + "text": "*abc*", + "width": "150", + "sp": "1", + "nextlayer": "default" + }, + { + "id": "K_LOPT", + "text": "*Menu*", + "width": "120", + "sp": "1" + }, + { + "id": "K_SPACE", + "text": "", + "width": "610", + "sp": "0" + }, + { + "id": "K_ENTER", + "text": "*Enter*", + "width": "150", + "sp": "1" + } + ] + } + ] + } + ] + } +} diff --git a/release/i/isv_latin/source/isv_latin.kmn b/release/i/isv_latin/source/isv_latin.kmn new file mode 100644 index 0000000000..31048ba80f --- /dev/null +++ b/release/i/isv_latin/source/isv_latin.kmn @@ -0,0 +1,68 @@ +c isv_latin - Interslavic (Latin), standard orthography +c GENERATED by build_keyman.py - do not edit by hand + +store(&NAME) 'Medžuslovjansky (latinica)' +store(©RIGHT) '© Radoslove' +store(&VERSION) '10.0' +store(&KEYBOARDVERSION) '1.6' +store(&TARGETS) 'any' +store(&VISUALKEYBOARD) 'isv_latin.kvks' +store(&LAYOUTFILE) 'isv_latin.keyman-touch-layout' +store(&BITMAP) 'isv_latin.ico' + +begin Unicode > use(main) + +group(main) using keys + +c --- desktop: AltGr, mirroring windows/src/KBDMSSTD.klc --- ++ [RALT K_C] > 'č' ++ [SHIFT RALT K_C] > 'Č' ++ [RALT K_S] > 'š' ++ [SHIFT RALT K_S] > 'Š' ++ [RALT K_Z] > 'ž' ++ [SHIFT RALT K_Z] > 'Ž' ++ [RALT K_E] > 'ě' ++ [SHIFT RALT K_E] > 'Ě' + ++ [RALT K_COLON] > '„' ++ [SHIFT RALT K_COLON] > '“' ++ [RALT K_QUOTE] > '’' ++ [SHIFT RALT K_QUOTE] > '”' ++ [RALT K_HYPHEN] > '–' ++ [SHIFT RALT K_HYPHEN] > '—' + +c --- touch: longpress keys. Subkeys cannot reach RALT, so these +c touch-only T_ keys carry the same letters explicitly. +c +c GOTCHA, paid for on a device twice: a subkey on the SHIFT layer +c fires with the shift modifier held, so a bare '+ [T_X]' rule does +c NOT match there and the key silently emits nothing. The fix is the +c [SHIFT ...] rules below. Do NOT also pin the subkey to +c layer 'default' in the touch layout - that breaks id resolution +c and the subkey falls back to its parent letter (C instead of Č). ++ [T_CCARON] > 'č' ++ [SHIFT T_CCARON] > 'č' ++ [T_CCARON_UC] > 'Č' ++ [SHIFT T_CCARON_UC] > 'Č' ++ [T_SCARON] > 'š' ++ [SHIFT T_SCARON] > 'š' ++ [T_SCARON_UC] > 'Š' ++ [SHIFT T_SCARON_UC] > 'Š' ++ [T_ZCARON] > 'ž' ++ [SHIFT T_ZCARON] > 'ž' ++ [T_ZCARON_UC] > 'Ž' ++ [SHIFT T_ZCARON_UC] > 'Ž' ++ [T_ECARON] > 'ě' ++ [SHIFT T_ECARON] > 'ě' ++ [T_ECARON_UC] > 'Ě' ++ [SHIFT T_ECARON_UC] > 'Ě' + ++ [T_QUOTLOW] > '„' ++ [SHIFT T_QUOTLOW] > '„' ++ [T_QUOTHIGH] > '”' ++ [SHIFT T_QUOTHIGH] > '”' ++ [T_ENDASH] > '–' ++ [SHIFT T_ENDASH] > '–' ++ [T_EMDASH] > '—' ++ [SHIFT T_EMDASH] > '—' + diff --git a/release/i/isv_latin/source/isv_latin.kps b/release/i/isv_latin/source/isv_latin.kps new file mode 100644 index 0000000000..70f26af98e --- /dev/null +++ b/release/i/isv_latin/source/isv_latin.kps @@ -0,0 +1,51 @@ + + + + 18.0.249.0 + 7.0 + + + readme.htm + ..\LICENSE.md + welcome.htm + + + + Medžuslovjansky (latinica) + © Radoslove + Radoslove + Tipkovnica za medžuslovjansky jezyk — standardna ortografija: č š ž ě. +Interslavic keyboard — standard orthography: č š ž ě. + + + + ..\build\isv_latin.kmx + + + ..\build\isv_latin.js + + + ..\build\isv_latin.kvk + + + isv_latin.ico + + + welcome.htm + + + readme.htm + + + ..\LICENSE.md + + + + + isv_latin + + Interslavic + + + + diff --git a/release/i/isv_latin/source/isv_latin.kvks b/release/i/isv_latin/source/isv_latin.kvks new file mode 100644 index 0000000000..c9e4c7bc1f --- /dev/null +++ b/release/i/isv_latin/source/isv_latin.kvks @@ -0,0 +1,131 @@ + + +
+ 10.0 + isv_latin + + + + +
+ + + ` + 1 + 2 + 3 + 4 + 5 + 6 + 7 + 8 + 9 + 0 + - + = + q + w + e + r + t + y + u + i + o + p + [ + ] + \ + a + s + d + f + g + h + j + k + l + ; + ' + z + x + c + v + b + n + m + , + . + / + + + + ~ + ! + @ + # + $ + % + ^ + & + * + ( + ) + _ + + + Q + W + E + R + T + Y + U + I + O + P + { + } + | + A + S + D + F + G + H + J + K + L + : + " + Z + X + C + V + B + N + M + < + > + ? + + + + č + š + ž + ě + + + + + + Č + Š + Ž + Ě + + + + + +
diff --git a/release/i/isv_latin/source/readme.htm b/release/i/isv_latin/source/readme.htm new file mode 100644 index 0000000000..5ba639049d --- /dev/null +++ b/release/i/isv_latin/source/readme.htm @@ -0,0 +1,32 @@ + + + + + + Medžuslovjansky (latinica) + + + + +

Medžuslovjansky (latinica)

+ +

+ Tipkovnica za medžuslovjansky jezyk — standardna ortografija: + č š ž ě.
+ Interslavic keyboard — standard orthography: č š ž ě. +

+ +

+ Bez registracije, bez konta, bez e-pošty.
+ No registration, no account, no e-mail. +

+ +

© Radoslove · MIT

+ + + diff --git a/release/i/isv_latin/source/welcome.htm b/release/i/isv_latin/source/welcome.htm new file mode 100644 index 0000000000..3371ef88a6 --- /dev/null +++ b/release/i/isv_latin/source/welcome.htm @@ -0,0 +1,101 @@ + + + + + + Medžuslovjansky (latinica) + + + + +

Medžuslovjansky (latinica)

+ +

+ Tipkovnica za medžuslovjansky jezyk — standardna ortografija.
+ Interslavic keyboard — standard orthography. +

+ +

+ ⚠ iOS 16+: vključi „Allow Full Access" v + Nastrojenja → Osnovne → Tipkovnica → Tipkovnici → Keyman. + Bez togo tipkovnica v drugyh aplikacijah jest prazdna — bez klaviš. + V samoj aplikaciji Keyman vse rabotaje i bez togo.
+ iOS 16+: turn on "Allow Full Access" in + Settings → General → Keyboard → Keyboards → Keyman. Without it the system + keyboard renders blank — no keys. Inside the Keyman app it works either way. +

+ +

Na telefonu · On phone and tablet

+ +

+ Prěvlečeš palcem iz tipky v goru — litera se napiše.
+ Swipe up from the key — the letter is typed. Any upward direction works, + so you do not have to aim. +

+ + + + + + + +
Svaip v goru · Swipe upRezultat · Result
cč
sš
zž
eě
+ +

+ Velike litery — najprvo Shift, potom prěvlečeš.
+ For capitals — press Shift first, then swipe.

+ +

+ Drži tipku — to jest drugy sposob.
+ Holding the key also works, but on iOS it is less reliable — Keyman wants + you to slide onto the popup before releasing, and the popup sits in a + different place for every key. Swiping avoids that entirely. +

+ +

+ ne imaje svoju tipku: to jest d + ž, dva udarjenja.
+ has no key of its own — it is d then ž, two taps. +

+ +

+ Znaky citovanja i tire sut pod tipkoju . i pod - v numeričnom sloju + („ ” – —).
+ Quotes and dashes sit under the . key and under - in the + number layer. +

+ +

Na kompjuteru · On desktop

+ +

+ Iste litery sut pod AltGr — tako kako v našej tipkovnici za Windows.
+ The same letters sit under AltGr — exactly as in our Windows layout. +

+ + + + + + + + + + +
AltGr +Rezultat · Result
cč
sš
zž
eě
;„   “
'’   ”
-–   —
+ +

Pytanja i grěšky · Questions and bugs

+ +

+ github.com/radoslove/keyboard-interslavic +

+ + +