Skip to content

Commit

Permalink
jv-kongres keyboard (#729)
Browse files Browse the repository at this point in the history
* jv-kongres keyboard

This is a rather simple transliteration keyboard that resulted from the Kongres Aksara Jawa I 2021. Users are required to memorize a lot of keys, and the typing speed is subpar from Nulisa transliteration method (jv-transliteration).

* Update jv-kongres.js

* Update jquery.ime.test.fixtures.js

* adding test cases

* Update jquery.ime.test.fixtures.js

escape characters

* Update jquery.ime.test.fixtures.js

try another test

* Squashing bug

What an elusive bug! There should be a documentation that these special characters need to be escaped!

* Update jquery.ime.test.fixtures.js

* Update rules/jv/jv-kongres.js

Thanks @labdajiwa

Co-authored-by: Labdajiwa <[email protected]>

* Update .gitignore

* Update .gitignore

* add jv-kongres to test and definitions

* Update .gitignore

* Update .gitignore

* Update jquery.ime.test.fixtures.js

---------

Co-authored-by: Labdajiwa <[email protected]>
Co-authored-by: SrishAkaTux <[email protected]>
Co-authored-by: SrishAkaTux <[email protected]>
  • Loading branch information
4 people authored Oct 2, 2024
1 parent f7e1453 commit 5ea9891
Show file tree
Hide file tree
Showing 3 changed files with 138 additions and 2 deletions.
120 changes: 120 additions & 0 deletions rules/jv/jv-kongres.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,120 @@
( function ( $ ) {
'use strict';

var jawaKbd = {
id: 'jv-kongres',
name: 'Aksara Jawa Kongres',
description: 'Papan Tombol Aksara Jawa berdasarkan Kongres Aksara Jawa I - 2021',
date: '2023-04-06',
URL: 'https://bennylin.github.io/kongres/jawa_standar_readme.htm',
author: 'Benny Lin',
version: '1.0',
patterns: [
[ 'q', '꧀' ], //pangkon
[ 'w', 'ꦮ' ],
[ 'e', 'ꦺ' ], //taling
[ 'r', 'ꦫ' ],
[ 't', 'ꦠ' ],
[ 'y', 'ꦪ' ],
[ 'u', 'ꦸ' ], //suku
[ 'i', 'ꦶ' ], //wulu
[ 'o', 'ꦺꦴ' ], //taling tarung
[ 'p', 'ꦥ' ],

[ 'a', 'ꦔ' ], //nga
[ 's', 'ꦱ' ],
[ 'd', 'ꦢ' ],
[ 'f', 'ꦉ' ], //rx
[ 'g', 'ꦒ' ],
[ 'h', 'ꦲ' ],
[ 'j', 'ꦗ' ],
[ 'k', 'ꦏ' ],
[ 'l', 'ꦭ' ],
[ ';', 'ꦝ' ], //dha
[ "'", 'ꦛ' ], //tha

[ 'z', 'ꦚ' ], //nya
[ 'x', 'ꦼ' ], //pepet
[ 'c', 'ꦕ' ],
[ 'v', 'ꦊ' ], //lx
[ 'b', 'ꦧ' ],
[ 'n', 'ꦤ' ],
[ 'm', 'ꦩ' ],

[ 'Q', 'ꦐ' ], //ka sasak
[ 'W', 'ꦻ' ], //dirga mure
[ 'E', 'ꦌ' ],
[ 'R', 'ꦿ' ], //cakra
[ 'T', 'ꦡ' ],
[ 'Y', 'ꦾ' ], //pengkal
[ 'U', 'ꦈ' ],
[ 'I', 'ꦆ' ],
[ 'O', 'ꦎ' ],
[ 'P', 'ꦦ' ],

[ 'A', 'ꦄ' ],
[ 'S', 'ꦯ' ],
[ 'D', 'ꦣ' ],
[ 'F', 'ꦽ' ], //cakra keret
[ 'G', 'ꦓ' ],
[ 'H', 'ꦃ' ], //wignyan
[ 'J', 'ꦘ' ], //nya murda
[ 'K', 'ꦑ' ],
[ 'L', 'ꦴ' ], //tarung

[ 'Z', 'ꦰ' ],
[ 'X', 'ꦬ' ], //ra agung
[ 'C', 'ꦖ' ],
[ 'V', 'ꦋ' ], //nga lelet raswadi
[ 'B', 'ꦨ' ],
[ 'N', 'ꦟ' ],
[ 'M', 'ꦍ' ], //Ai

[ '`', '꧇' ],
[ '1', '꧑' ],
[ '2', '꧒' ],
[ '3', '꧓' ],
[ '4', '꧔' ],
[ '5', '꧕' ],
[ '6', '꧖' ],
[ '7', '꧗' ],
[ '8', '꧘' ],
[ '9', '꧙' ],
[ '0', '꧐' ],
[ '-', '꦳' ],
[ '=', 'ꦀ' ],

[ '~', '꧊' ],
[ '!', 'ꦵ' ],
[ '@', 'ꧏ' ],
[ '#', '꧐' ],
[ '\\$', '꧞' ],
[ '\\%', '꧟' ],
[ '\\^', '꧃' ],
[ '\\&', '꧄' ],
[ '\\*', '꧅' ],
[ '\\(', '꧌' ],
[ '\\)', '꧍' ],
[ '\\_', 'ꦷ' ], //wulu melik
[ '\\+', 'ꦙ' ], //ja mahaprana

[ '\\[', 'ꦁ' ], //cecak
[ '\\]', 'ꦂ' ], //layar
[ '\\\\', '‌' ], //zwnj - zero-width non-joiner
[ '\\,', '꧈' ],
[ '\\.', '꧉' ],
[ '\\/', '꧋' ],

[ '\\{', '꧁' ],
[ '\\}', '꧂' ],
[ '\\|', '​' ], //zws - zero-width space
[ '\\:', 'ꦞ' ],
[ '\\"', 'ꦜ' ],
[ '\\<', 'ꦹ' ], //suku mendut
[ '\\>', 'ꦅ' ],
[ '\\?', 'ꦇ' ]
]
};

$.ime.register( jawaKbd );
}( jQuery ) );
6 changes: 5 additions & 1 deletion src/jquery.ime.inputmethods.js
Original file line number Diff line number Diff line change
Expand Up @@ -484,6 +484,10 @@
name: 'Jawa Latin extended',
source: 'rules/jv/jv-keyboard.js'
},
'jv-kongres': {
name: 'Kongres Aksara Jawa',
source: 'rules/jv/jv-kongres.js'
},
'ka-kbd': {
name: 'სტანდარტული კლავიატურის',
source: 'rules/ka/ka-kbd.js'
Expand Down Expand Up @@ -1404,7 +1408,7 @@
},
jv: {
autonym: 'ꦧꦱꦗꦮ (Basa Jawa)',
inputmethods: [ 'jv-transliteration', 'jv-keyboard' ]
inputmethods: [ 'jv-transliteration', 'jv-keyboard', 'jv-kongres' ]
},
ka: {
autonym: 'ქართული ენა',
Expand Down
14 changes: 13 additions & 1 deletion test/jquery.ime.test.fixtures.js
Original file line number Diff line number Diff line change
Expand Up @@ -3193,6 +3193,18 @@ var palochkaVariants = {
{ input: 'tula~da ~Da ~Ta ~ta', output: 'tulaḍa Ḍa Ṭa ṭa', description: 'Jawa Latin extended Ḍ and Ṭ - alternate' }
]
},
{
description: 'Javanese Kongres test',
inputmethod: 'jv-kongres',
tests: [
{ input: "/hncrkdtswlp;jyzmgb'zq", output: '꧋ꦲꦤꦕꦫꦏꦢꦠꦱꦮꦭꦥꦝꦗꦪꦚꦩꦒꦧꦛꦚ꧀', description: 'Javanese Kongres - hanacaraka sequence - adeg-adeg + 20 basic abugidas (aksara nglegena) + virama/pangkon' },
{ input: 'fvhihuhehohxh-h=h!h_h<', output: 'ꦉꦊꦲꦶꦲꦸꦲꦺꦲꦺꦴꦲꦼꦲ꦳ꦲꦀꦲꦵꦲꦷꦲꦹ', description: 'Javanese Kongres - other characters 1 (sandhangan swara)' },
{ input: 'AEIOUM>?NCKDTSPJGBZQXV+:"', output: 'ꦄꦌꦆꦎꦈꦍꦅꦇꦟꦖꦑꦣꦡꦯꦦꦘꦓꦨꦰꦐꦬꦋꦙꦞꦜ', description: 'Javanese Kongres - other characters 2 (aksara swara + murda)' },
{ input: 'hRhYhFhHh[h]hWhL', output: 'ꦲꦿꦲꦾꦲꦽꦲꦃꦲꦁꦲꦂꦲꦻꦲꦴ', description: 'Javanese Kongres - other characters 3 (wyanjana, sesigeg)' },
{ input: '`1234567890', output: '꧇꧑꧒꧓꧔꧕꧖꧗꧘꧙꧐', description: 'Javanese Kongres - other characters 4 (number/angka)' },
{ input: '~@#$%^&*(),.{}', output: '꧊ꧏ꧐꧞꧟꧃꧄꧅꧌꧍꧈꧉꧁꧂', description: 'Javanese Kongres - other characters 5 (symbols)' }
]
},
{
description: 'Georgian Transliteration test',
inputmethod: 'ka-transliteration',
Expand Down Expand Up @@ -7069,4 +7081,4 @@ var palochkaVariants = {
{ input: 'wang3', output: 'wǎng', description: 'Chinese Pinyin wǎng' }
]
}
];
];

0 comments on commit 5ea9891

Please sign in to comment.