Skip to content

Commit

Permalink
feat(resources): add pcm keyboard 🙀
Browse files Browse the repository at this point in the history
- keyman side of unicode-org/cldr#3123
- validating that tests pass

#7042
  • Loading branch information
srl295 committed Aug 24, 2023
1 parent 16beb46 commit 4c9c7e4
Show file tree
Hide file tree
Showing 3 changed files with 85 additions and 0 deletions.
1 change: 1 addition & 0 deletions core/tests/unit/ldml/keyboards/meson.build
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,7 @@ tests_from_cldr = [
'ja-Latn',
'pt-t-k0-abnt2',
'fr-t-k0-azerty',
'pcm',
]

tests_without_testdata = [
Expand Down
70 changes: 70 additions & 0 deletions resources/standards-data/ldml-keyboards/techpreview/3.0/pcm.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE keyboard SYSTEM '../dtd/ldmlKeyboard.dtd'>
<keyboard locale="pcm" conformsTo="techpreview">
<version number="1.0.0" />
<names>
<name value="Nigerian Pidgin" />
<name value="Naijíriá Píjin" />
</names>
<settings fallback="omit" />
<keys>
<import base="cldr" path="techpreview/keys-Zyyy-punctuation.xml" />
<import base="cldr" path="techpreview/keys-Zyyy-currency.xml" />
<key id="grave" to="̀" /> <!-- TODO: move to NCR -->
<key id="acute" to="́" /> <!-- TODO: move to NCR -->

<!-- accented vowels -->
<key id="odot" to="" />
<key id="Odot" to="" />
<key id="edot" to="" />
<key id="Edot" to="" />

<!-- currency -->
<key id="naira" to="" />
</keys>

<layers form="iso">
<layer modifier="none">
<row
keys="grave 1 2 3 4 5 6 7 8 9 0 hyphen equal" />
<row keys="acute w e r t y u i o p open-square close-square" />
<row keys="a s d f g h j k l odot edot slash" />
<row keys="slash z c v b n m comma period semi-colon apos" />
<row keys="space" />
</layer>

<layer modifier="shift">
<row
keys="grave bang at hash dollar naira percent amp asterisk open-paren close-paren underscore plus" />
<row keys="acute W E R T Y U I O P open-curly close-curly" />
<row keys="A S D F G H J K L Odot Edot" />
<row keys="question Z C V B N M open-angle close-angle colon double-quote" />
<row keys="space" />
</layer>
</layers>

<transforms type="simple">
<transformGroup>
<!-- Change vowels with appended acute, grave, and dot below combiners to combined forms -->
<transform from="a\u{300}" to="à" />
<transform from="E\u{300}" to="È" />
<transform from="o\u{301}" to="ó" />
<transform from="O\u{300}" to="Ò" />
<transform from="o\u{323}" to="" />
<transform from="A\u{323}" to="" />
<transform from="a\u{323}" to="" />
<transform from="a\u{301}" to="á" />
<transform from="A\u{300}" to="À" />
<transform from="E\u{323}" to="" />
<transform from="O\u{323}" to="" />
<transform from="''" to="\u{323}" /> <!-- Quick way to add dot below -->
<transform from="A\u{301}" to="Á" />
<transform from="e\u{323}" to="" />
<transform from="O\u{301}" to="Ó" />
<transform from="e\u{301}" to="é" />
<transform from="e\u{300}" to="è" />
<transform from="E\u{301}" to="É" />
<transform from="o\u{300}" to="ò" />
</transformGroup>
</transforms>
</keyboard>
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE keyboardTest SYSTEM "../dtd/ldmlKeyboardTest.dtd">
<keyboardTest conformsTo="techpreview">
<info keyboard="pcm.xml" author="Team Keyboard" name="pcm-test" />
<repertoire name="simple-repertoire" chars="[a b c d e \u{22}]" type="simple" />
<tests name="key-tests">
<test name="null-test">
<startContext to="abc"/>
<!-- tests by pressing key ids -->
<keystroke key="d"/>
<check result="abcd" />
</test>
</tests>
</keyboardTest>

0 comments on commit 4c9c7e4

Please sign in to comment.