diff --git a/Odia/Lekhani-01.png b/Odia/Lekhani-01.png new file mode 100644 index 0000000..e8b8ed3 Binary files /dev/null and b/Odia/Lekhani-01.png differ diff --git a/Odia/Lekhani.zip b/Odia/Lekhani.zip new file mode 100644 index 0000000..96c1f68 Binary files /dev/null and b/Odia/Lekhani.zip differ diff --git a/Odia/Lekhani/Lekhani-code.js b/Odia/Lekhani/Lekhani-code.js new file mode 100644 index 0000000..70dcce2 --- /dev/null +++ b/Odia/Lekhani/Lekhani-code.js @@ -0,0 +1,172 @@ +( function ( $ ) { + 'use strict'; + + var orLekhani = { + id: 'or-lekhani', + name: 'ଫୋନେଟିକ', + description: 'Odia Lekhani phonetic input method', + date: '2012-10-14', + URL: 'http://github.com/wikimedia/jquery.ime', + author: 'Junaid P V, Subhashish Panigrahi and Jnanaranjan Sahu', + license: 'GPLv3', + version: '1.0', + contextLength: 4, + maxKeyLength: 2, + patterns: [ + [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ], + + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])a', '$1ା' ], + [ '([କ-ଳଲନ୍ଧଥଡ଼ଢ଼ହୟୱରକ୍ଷଶସଷଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])i', '$1\u0b3f' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])I', '$1ୀ' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])u', '$1\u0b41' ], + [ '([କ-ହୟୱ])(U|\u0b41u)', '$1\u0b42' ], + [ '([କ-ହୟୱ])R', '$1\u0b43' ], + [ '([କ-ହୟୱ])\u0b43R', '$1\u0b44' ], + [ '([କ-ହୟୱ])୍ଳ୍l', '$1ୢ' ], + [ '([କ-ହୟୱ])ୢl', '$1ୣ' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])e', '$1େ' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])o', '$1ୋ' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])(ାu|ୋu)', '$1ୌ' ], + [ '([କ-ହୟୱ])E', '$1\u0B48' ], + [ '([କ-ହୟୱ])(w|v)', '$1୍ୱ' ], + [ '([କ-ହୟୱ])~', '$1\u200C' ], + + [ '([କ-ହୱ])y', '$1୍ୟ' ], // y + + [ 'z', '୍' ], // halanta + [ '\\.', '।' ], // purnacheda + [ 'ଅa', 'ଆ' ], + [ 'ଏe', 'ଐ' ], + [ '(ଅu|O)', 'ଔ' ], + [ 'ଋR', 'ୠ' ], // RR + [ 'ଳl', 'ଌ' ], // Ll + [ 'ଌl', 'ୡ' ], // Lll + [ 'ଞ୍ଚh', 'ଞ୍ଛ' ], // nch + [ 'ଞ୍ଜh', 'ଞ୍ଝ' ], // njh + [ 'ଙ୍କh', 'ଙ୍ଖ' ], // nkh + [ 'ଙ୍ଗh', 'ଙ୍ଘ' ], // ngh + [ 'ମ୍ବh', 'ମ୍ଭ' ], // mbh or nbh + [ 'ଣ୍ଡai', 'ଣ୍ଡାଇ' ], // NDai + [ 'ଜ୍ଜh', 'ଜ୍ଝ' ], // jjh + [ 'ଚ୍ଚh', 'ଚ୍ଛ' ], // cch + + [ 'ଣG', 'ଙ' ], // NG + [ 'ଣg', 'ଞ' ], // Ng + [ 'କh', 'ଖ' ], // kh + [ 'ଗh', 'ଘ' ], // gh + [ 'ନc', 'ଞ୍ଚ' ], // nc + [ 'ନg', 'ଙ୍ଗ' ], // ng + [ 'ଚh', 'ଛ' ], // ch + [ 'C', 'ଛ' ], // ch + [ 'ଜh', 'ଝ' ], // jh + [ 'ନj', 'ଞ୍ଜ' ], // nj + [ 'ନk', 'ଙ୍କ' ], // nk + [ 'ନd', 'ନ୍ଦ' ], // nd + [ 'ନD|ଣD', 'ଣ୍ଡ' ], // nd + [ 'ଣDh', 'ଣ୍ଢ' ], // ndh + [ 'ନdh', 'ନ୍ଧ' ], // ndht + [ 'ଟh', 'ଠ' ], // Th + [ 'ଡh', 'ଢ' ], // Dh + [ 'ତh', 'ଥ' ], // th + [ 'ଦh', 'ଧ' ], // dh + [ '(f|ପh|P)', 'ଫ' ], // ph or f + [ 'ବh', 'ଭ' ], // bh + [ 'ସh', 'ଷ' ], // sh + [ 'ମb', 'ମ୍ବ' ], // mb or nb + [ 'ଣT', 'ଣ୍ଟ' ], // NT + [ 'ଣTh', 'ଣ୍ଠ' ], // NTh + [ '(ଷ|ମ)p', '$1୍ପ' ], // sp/shp + [ 'shp', 'ଷ୍ପ' ], // sp + [ 'ଂM', 'ଁ' ], // MM + + [ 'କk', 'କ୍କ' ], // kk + [ 'ଗg', 'ଗ୍ଗ' ], // gg + [ 'ଚc', 'ଚ୍ଚ' ], // cc + [ 'ଜj', 'ଜ୍ଜ' ], // jj + [ 'ଦd', 'ଦ୍ଦ' ], // dd + [ 'ଟT', 'ଟ୍ଟ' ], // TT + [ 'ଡD', 'ଡ୍ଡ' ], // DD + [ 'ତt', 'ତ୍ତ' ], // tt + [ 'ଲl', 'ଲ୍ଲ' ], // ll + [ 'ପp', 'ପ୍ପ' ], // pp + [ '_', '\u200c' ], + + [ 'ଆ\\\\', '\u0B3E' ], // aa sign + [ 'ଇ\\\\', '\u0B3F' ], // i sign + [ 'ଈ\\\\', '\u0B40' ], // I sign + [ 'ଉ\\\\', '\u0B41' ], // u sign + [ 'ଉ\\\\', '\u0B42' ], // U sign + [ 'ଋ\\\\', '\u0B43' ], // R sign + [ 'ୠ\\\\', '\u0B44' ], // RR sign + [ 'ଌ\\\\', '\u0B62' ], // L sign + [ 'ୡ\\\\', '\u0B63' ], // LL sign + [ 'ଏ\\\\', '\u0B47' ], // e sign + [ 'ଐ\\\\', '\u0B48' ], // ai sign + [ 'ଓ\\\\', '\u0B4B' ], // o sign + [ 'ଔ\\\\', '\u0B4C' ], // au sign + + [ '\u200c?a', 'ଅ' ], + [ 'b', 'ବ' ], + [ 'c', '', 'ଚ' ], + [ 'd', 'ଦ' ], + [ '\u200c?e', 'ଏ' ], + [ 'g', 'ଗ' ], + [ 'G', 'ଘ' ], + [ 'h', 'ହ' ], + [ '\u200c?i', 'ଇ' ], + [ 'j', 'ଜ' ], + [ 'k', 'କ' ], + [ 'l', 'ଲ' ], + [ 'm', 'ମ' ], + [ 'n', 'ନ' ], + [ '\u200c?o', 'ଓ' ], + [ 'p', 'ପ' ], + [ 'q', 'ଡ଼' ], + [ 'r', 'ର' ], + [ 's', 'ସ' ], + [ 't', 'ତ' ], + [ '\u200c?u', 'ଉ' ], + [ '[vwVW]', 'ୱ' ], + [ 'x', 'କ୍ଷ' ], + [ '[Y]', 'ୟ' ], + [ '[y]', 'ଯ' ], + [ '\u200c?A', 'ଆ' ], + [ 'B', 'ବ' ], + [ 'C', 'ଛ' ], + [ 'D', 'ଡ' ], + [ '\u200c?E', 'ଐ' ], + [ 'F', 'ଫ' ], + [ 'G', 'ଗ' ], + [ 'H', 'ଃ' ], + [ '\u200c?I', 'ଈ' ], + [ 'J', 'ଯ' ], + [ 'K', 'ଖ' ], + [ 'L', 'ଳ' ], + [ 'M', 'ଂ' ], + [ 'N', 'ଣ' ], + [ '\u200c?O', 'ଔ' ], + [ 'P', 'ଫ' ], + [ 'Q', 'ଢ଼' ], + [ 'R', 'ଋ' ], + [ 'S', 'ଶ' ], + [ 'T', 'ଟ' ], + [ '\u200c?U', 'ଊ' ], + [ 'X', 'ଁ' ], + [ 'Z', 'ଜ୍ଞ' ], + [ '//', '୍ର' ], + + [ '0', '୦' ], + [ '1', '୧' ], + [ '2', '୨' ], + [ '3', '୩' ], + [ '4', '୪' ], + [ '5', '୫' ], + [ '6', '୬' ], + [ '7', '୭' ], + [ '8', '୮' ], + [ '9', '୯' ] + ] + }; + + $.ime.register( orLekhani ); +}( jQuery ) ); diff --git a/Odia/Lekhani/Lekhani-codes.txt b/Odia/Lekhani/Lekhani-codes.txt new file mode 100644 index 0000000..5f28270 --- /dev/null +++ b/Odia/Lekhani/Lekhani-codes.txt @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Odia/Lekhani/Lekhani-help.htm b/Odia/Lekhani/Lekhani-help.htm new file mode 100644 index 0000000..6d44e4a --- /dev/null +++ b/Odia/Lekhani/Lekhani-help.htm @@ -0,0 +1,94 @@ +Lekhani is a phonetic Odia input layout. Lekhani draws inspiration from "Oriya phonetic typing on Ubuntu" and "Oriya - QUERTY" on Mac. It was initiated in 2011 and implemented on Mediawiki during 2012. + +Features + + Lekhani is a phonetic input layout, so individual key input gives Odia characters without a halanta + Halanta ( ୍ ) is normally used to type conjuncts (ଯୁକ୍ତାଷର). You need to type z to get ୍. For example type କ ୍ (Type z)ତ to get କ୍ତ. + Most used conjuncts (e.g. ଙ୍କ, ଙ୍ଖ, ଙ୍ଗ, ମ୍ପ, ଞ୍ଜ, ମ୍ବ) could be written by joining two characters with a halanta (z is used to type halanta) + +Vowels +ଅ ଆ ଇ ଈ ଉ ଊ +a aa i I u U +ଏ ଐ ଓ ଔ ଋ +e ai o au R + +Consonants +କ ଖ ଗ ଘ ଙ +k kh g gh NG +ଚ ଛ ଜ ଝ ଞ +c Ch j jh Ng +ଟ ଠ ଡ ଢ ଣ +T Th D Dh N +ତ ଥ ଦ ଧ ନ +t th d dh n +ପ ଫ ବ ଭ ମ +p ph/F b bh m +ଯ ର ଲ ୱ ଶ +y r l w S +ଷ ସ ହ ଳ କ୍ଷ +X s h L x +ଜ୍ଞ ଡ଼ ଢ଼ +Z q Q + +Matra +କା କି କୀ କେ କୈ କୁ କୂ କୋ କୌ +ka ki kI ke kE ku kU ko kou +୍ (ହଳନ୍ତ) କ୍ର କ୍ରା କ୍ରି କ୍ରେ କ୍ରୋ କ୍ରୀ କ୍ରୌ କ୍ରୈ +z kzr kzra kzri kzre kzro kzrI kzrou kzrE +Conjuncts +କ୍କ +kk ଚ୍ଚ +cc ଚ୍ଛ +cch ଜ୍ଜ +jj ଟ୍ଟ +TT ଡ୍ଡ +DD ଣ୍ଣ +NzN ତ୍ତ +tt ଦ୍ଦ +dd ନ୍ନ +nn ପ୍ପ +pp ଭ୍ଭ +bhzbh ମ୍ମ +mzm ଲ୍ଲ +ll +ଜ୍ଝ +jzjh ତ୍ଥ +tzth ଦ୍ଧ +dzdh ବ୍ଦ +dzdh ବ୍ଧ +bzdh କ୍ଟ କ୍ତ କ୍ଥ କ୍ନ କ୍ମ କ୍ର କ୍ଳ କ୍ଲ କ୍ୱ +କ୍ସ +kzs ଗ୍ଣ +gzm ଗ୍ର +gzr ଗ୍ଳ +gzL ଗ୍ଳ +gzL ଗ୍ୱ +gw ଘ୍ନ +ghzn ଘ୍ର +ghzr ଙ୍କ +nk ଙ୍ଖ +nkh ଙ୍ଗ +ng ଙ୍ଘ +ngh ଚ୍ର +czr ଜ୍ର +jzr +ଞ୍ଚ +nc ଞ୍ଛ +nch ଞ୍ଜ +nj ଞ୍ଝ +njh + +Test examples + +Use halanta ୍ to join two characters to write conjuncts (Odia: ଯୁକ୍ତାକ୍ଷର or Juktakhyara) z + + ସ‌ହର= s_hr + ସ୍ୱର୍ଣ୍ଣ = swrzNzN + ପ୍ରତି = p zrti + ପ୍ରୌଢ଼ = pzrouQ + କୃତ୍ୟ = kRtY + ଟାଇପ୍‌ର = Taipz_r + +Resources: +1. Help page in English: https://www.mediawiki.org/wiki/Help:Extension:UniversalLanguageSelector/Input_methods/or-lekhani +2. Help page in Odia: https://or.wikipedia.org/s/oup \ No newline at end of file diff --git a/Odia/Lekhani/Lekhani.css b/Odia/Lekhani/Lekhani.css new file mode 100644 index 0000000..5f28270 --- /dev/null +++ b/Odia/Lekhani/Lekhani.css @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Odia/Lekhani/Lekhani.ico b/Odia/Lekhani/Lekhani.ico new file mode 100644 index 0000000..3ed6749 Binary files /dev/null and b/Odia/Lekhani/Lekhani.ico differ diff --git a/Odia/Lekhani/Lekhani.kmn b/Odia/Lekhani/Lekhani.kmn new file mode 100644 index 0000000..bd947cf --- /dev/null +++ b/Odia/Lekhani/Lekhani.kmn @@ -0,0 +1,81 @@ +c Source code from Wikimedia jQuery IME (https://github.com/wikimedia/jquery.ime/tree/master/rules/or).IMEs created by multiple developers. +store(&VERSION) '9.0' +store(&TARGETS) 'any windows macosx linux web iphone ipad androidphone androidtablet mobile desktop tablet' +store(&NAME) 'Lekhani' +store(ÐNOLOGUECODE) 'ori' +store(©RIGHT) '© O Foundation' +store(&MESSAGE) 'Designed by Subhashish Panigrahi for O Foundation' +store(&LANGUAGE) 'x0448' +store(&WINDOWSLANGUAGES) 'x0448' +store(&BITMAP) 'Lekhani.ico' +store(&VISUALKEYBOARD) 'Lekhani.kvk' +store(&KMW_HELPFILE) 'Lekhani-help.htm' +store(&KMW_EMBEDJS) 'Lekhani-code.js' +store(&KMW_EMBEDCSS) 'Lekhani.css' +store(&INCLUDECODES) 'Lekhani-codes.txt' +begin Unicode > use(main) + + +group(main) using keys ++ [K_0] > '୦' ++ [K_9] > '୯' ++ [K_8] > '୮' ++ [K_7] > '୭' ++ [K_6] > '୬' ++ [K_5] > '୫' ++ [K_4] > '୪' ++ [K_3] > '୩' ++ [K_2] > '୨' ++ [K_1] > '୧' ++ [K_M] > 'ମ' ++ [K_N] > 'ନ' ++ [K_B] > 'ବ' ++ [K_V] > 'ୱ' ++ [K_C] > 'ଚ' ++ [K_X] > 'କ୍ଷ' ++ [K_Z] > '୍' ++ [K_L] > 'ଲ' ++ [K_J] > 'ଜ' ++ [K_H] > 'ହ' ++ [K_G] > 'ଗ' ++ [K_F] > 'ଫ' ++ [K_D] > 'ଦ' ++ [K_S] > 'ସ' ++ [K_A] > 'ଅ' ++ [K_P] > 'ପ' ++ [K_O] > 'ଓ' ++ [K_I] > 'ଇ' ++ [K_U] > 'ଉ' ++ [K_Y] > 'ଯ' ++ [K_T] > 'ତ' ++ [K_R] > 'ର' ++ [K_E] > 'ଏ' ++ [K_W] > 'ୱ' ++ [K_Q] > 'ଡ଼' ++ [SHIFT K_L] > 'ଳ' ++ [SHIFT K_Y] > 'ୟ' ++ [SHIFT K_V] > 'ୱ' ++ [SHIFT K_Z] > 'ଜ୍ଞ' ++ [SHIFT K_W] > 'ୱ' ++ [SHIFT K_Q] > 'ଢ଼' ++ [SHIFT K_P] > 'ଫ' ++ [SHIFT K_S] > 'ଶ' ++ [SHIFT K_B] > 'ବ' ++ [SHIFT K_F] > 'ଫ' ++ [SHIFT K_N] > 'ଣ' ++ [SHIFT K_D] > 'ଡ' ++ [SHIFT K_T] > 'ଟ' ++ [SHIFT K_R] > 'ଋ' ++ [SHIFT K_U] > 'ଊ' ++ [SHIFT K_I] > 'ଈ' ++ [SHIFT K_A] > 'ଆ' ++ [SHIFT K_X] > 'ଁ' ++ [SHIFT K_M] > 'ଂ' ++ [SHIFT K_H] > 'ଃ' ++ [SHIFT K_J] > 'ଝ' ++ [SHIFT K_C] > 'ଛ' ++ [SHIFT K_G] > 'ଘ' ++ [SHIFT K_O] > 'ଔ' ++ [SHIFT K_E] > 'ଐ' ++ [SHIFT K_K] > 'ଖ' ++ [K_K] > 'କ' diff --git a/Odia/Lekhani/Lekhani.kmx b/Odia/Lekhani/Lekhani.kmx new file mode 100644 index 0000000..fc150c4 Binary files /dev/null and b/Odia/Lekhani/Lekhani.kmx differ diff --git a/Odia/Lekhani/Lekhani.kvk b/Odia/Lekhani/Lekhani.kvk new file mode 100644 index 0000000..638e1b4 Binary files /dev/null and b/Odia/Lekhani/Lekhani.kvk differ diff --git a/Odia/Lekhani/lekhani-1.0.js b/Odia/Lekhani/lekhani-1.0.js new file mode 100644 index 0000000..a33db0b --- /dev/null +++ b/Odia/Lekhani/lekhani-1.0.js @@ -0,0 +1,438 @@ +KeymanWeb.KR(new Keyboard_lekhani()); +function Keyboard_lekhani() +{ + this.KI="Keyboard_lekhani"; + this.KN="Lekhani"; + this.KV={F:' 1em "Arial"',K102:0,BK:new Array("","୧","୨","୩","୪","୫","୬","୭","୮","୯","୦","","","","","","ଡ଼","ୱ","ଏ","ର","ତ","ଯ","ଉ","ଇ","୨","ପ","","","","","","","ଅ","ସ","ଦ","ଫ","ଗ","ହ","ଜ","କ","ଲ","","","","","","","","","୍","କ୍ଷ","ଚ","ୱ","ବ","ନ","ମ","","","","","","","","","","","","","","","","","","","","","","","","","","ଢ଼","ୱ","ଐ","ଋ","ଟ","ୟ","ଊ","ଈ","ଔ","ଫ","","","","","","","ଆ ","ଶ","ଡ","ଫ","ଘ","ଃ","ଯ","ଖ","ଳ","","","","","","","","","ଜ୍ଞ","ଁ","ଛ","ୱ","ବ","ଣ","ଂ","","","","","","","","","")};this.KDU=1; + this.KH='Lekhani is a phonetic Odia input layout. Lekhani draws inspiration from "Oriya phonetic typing on Ubuntu" and "Oriya - QUERTY" on Mac. It was initiated in 2011 and implemented on Mediawiki during 2012. Features Lekhani is a phonetic input layout, so individual key input gives Odia characters without a halanta Halanta ( ୍ ) is normally used to type conjuncts (ଯୁକ୍ତାଷର). You need to type z to get ୍. For example type କ ୍ (Type z)ତ to get କ୍ତ. Most used conjuncts (e.g. ଙ୍କ, ଙ୍ଖ, ଙ୍ଗ, ମ୍ପ, ଞ୍ଜ, ମ୍ବ) could be written by joining two characters with a halanta (z is used to type halanta) Vowels ଅ ଆ ଇ ଈ ଉ ଊ a aa i I u U ଏ ଐ ଓ ଔ ଋ e ai o au R Consonants କ ଖ ଗ ଘ ଙ k kh g gh NG ଚ ଛ ଜ ଝ ଞ c Ch j jh Ng ଟ ଠ ଡ ଢ ଣ T Th D Dh N ତ ଥ ଦ ଧ ନ t th d dh n ପ ଫ ବ ଭ ମ p ph/F b bh m ଯ ର ଲ ୱ ଶ y r l w S ଷ ସ ହ ଳ କ୍ଷ X s h L x ଜ୍ଞ ଡ଼ ଢ଼ Z q Q Matra କା କି କୀ କେ କୈ କୁ କୂ କୋ କୌ ka ki kI ke kE ku kU ko kou ୍ (ହଳନ୍ତ) କ୍ର କ୍ରା କ୍ରି କ୍ରେ କ୍ରୋ କ୍ରୀ କ୍ରୌ କ୍ରୈ z kzr kzra kzri kzre kzro kzrI kzrou kzrE Conjuncts କ୍କ kk ଚ୍ଚ cc ଚ୍ଛ cch ଜ୍ଜ jj ଟ୍ଟ TT ଡ୍ଡ DD ଣ୍ଣ NzN ତ୍ତ tt ଦ୍ଦ dd ନ୍ନ nn ପ୍ପ pp ଭ୍ଭ bhzbh ମ୍ମ mzm ଲ୍ଲ ll ଜ୍ଝ jzjh ତ୍ଥ tzth ଦ୍ଧ dzdh ବ୍ଦ dzdh ବ୍ଧ bzdh କ୍ଟ କ୍ତ କ୍ଥ କ୍ନ କ୍ମ କ୍ର କ୍ଳ କ୍ଲ କ୍ୱ କ୍ସ kzs ଗ୍ଣ gzm ଗ୍ର gzr ଗ୍ଳ gzL ଗ୍ଳ gzL ଗ୍ୱ gw ଘ୍ନ ghzn ଘ୍ର ghzr ଙ୍କ nk ଙ୍ଖ nkh ଙ୍ଗ ng ଙ୍ଘ ngh ଚ୍ର czr ଜ୍ର jzr ଞ୍ଚ nc ଞ୍ଛ nch ଞ୍ଜ nj ଞ୍ଝ njh Test examples Use halanta ୍ to join two characters to write conjuncts (Odia: ଯୁକ୍ତାକ୍ଷର or Juktakhyara) z ସ‌ହର= s_hr ସ୍ୱର୍ଣ୍ଣ = swrzNzN ପ୍ରତି = p zrti ପ୍ରୌଢ଼ = pzrouQ କୃତ୍ୟ = kRtY ଟାଇପ୍‌ର = Taipz_r Resources: 1. Help page in English: https://www.mediawiki.org/wiki/Help:Extension:UniversalLanguageSelector/Input_methods/or-lekhani 2. Help page in Odia: https://or.wikipedia.org/s/oup '; + this.KM=0; + this.KBVER="1.0"; + this.KVER="9.0.526.0"; + this.gs=function(t,e) { + return this.g_main(t,e); + }; + this.g_main=function(t,e) { + var k=KeymanWeb,r=0,m=0; + if(k.KKM(e,16384,48)) { // Line 20 + r=m=1; + k.KO(0,t,"୦"); + } + else if(k.KKM(e,16384,49)) { // Line 29 + r=m=1; + k.KO(0,t,"୧"); + } + else if(k.KKM(e,16384,50)) { // Line 28 + r=m=1; + k.KO(0,t,"୨"); + } + else if(k.KKM(e,16384,51)) { // Line 27 + r=m=1; + k.KO(0,t,"୩"); + } + else if(k.KKM(e,16384,52)) { // Line 26 + r=m=1; + k.KO(0,t,"୪"); + } + else if(k.KKM(e,16384,53)) { // Line 25 + r=m=1; + k.KO(0,t,"୫"); + } + else if(k.KKM(e,16384,54)) { // Line 24 + r=m=1; + k.KO(0,t,"୬"); + } + else if(k.KKM(e,16384,55)) { // Line 23 + r=m=1; + k.KO(0,t,"୭"); + } + else if(k.KKM(e,16384,56)) { // Line 22 + r=m=1; + k.KO(0,t,"୮"); + } + else if(k.KKM(e,16384,57)) { // Line 21 + r=m=1; + k.KO(0,t,"୯"); + } + else if(k.KKM(e,16384,65)) { // Line 44 + r=m=1; + k.KO(0,t,"ଅ"); + } + else if(k.KKM(e,16400,65)) { // Line 71 + r=m=1; + k.KO(0,t,"ଆ"); + } + else if(k.KKM(e,16384,66)) { // Line 32 + r=m=1; + k.KO(0,t,"ବ"); + } + else if(k.KKM(e,16400,66)) { // Line 63 + r=m=1; + k.KO(0,t,"ବ"); + } + else if(k.KKM(e,16384,67)) { // Line 34 + r=m=1; + k.KO(0,t,"ଚ"); + } + else if(k.KKM(e,16400,67)) { // Line 76 + r=m=1; + k.KO(0,t,"ଛ"); + } + else if(k.KKM(e,16384,68)) { // Line 42 + r=m=1; + k.KO(0,t,"ଦ"); + } + else if(k.KKM(e,16400,68)) { // Line 66 + r=m=1; + k.KO(0,t,"ଡ"); + } + else if(k.KKM(e,16384,69)) { // Line 52 + r=m=1; + k.KO(0,t,"ଏ"); + } + else if(k.KKM(e,16400,69)) { // Line 79 + r=m=1; + k.KO(0,t,"ଐ"); + } + else if(k.KKM(e,16384,70)) { // Line 41 + r=m=1; + k.KO(0,t,"ଫ"); + } + else if(k.KKM(e,16400,70)) { // Line 64 + r=m=1; + k.KO(0,t,"ଫ"); + } + else if(k.KKM(e,16384,71)) { // Line 40 + r=m=1; + k.KO(0,t,"ଗ"); + } + else if(k.KKM(e,16400,71)) { // Line 77 + r=m=1; + k.KO(0,t,"ଘ"); + } + else if(k.KKM(e,16384,72)) { // Line 39 + r=m=1; + k.KO(0,t,"ହ"); + } + else if(k.KKM(e,16400,72)) { // Line 74 + r=m=1; + k.KO(0,t,"ଃ"); + } + else if(k.KKM(e,16384,73)) { // Line 47 + r=m=1; + k.KO(0,t,"ଇ"); + } + else if(k.KKM(e,16400,73)) { // Line 70 + r=m=1; + k.KO(0,t,"ଈ"); + } + else if(k.KKM(e,16384,74)) { // Line 38 + r=m=1; + k.KO(0,t,"ଜ"); + } + else if(k.KKM(e,16400,74)) { // Line 75 + r=m=1; + k.KO(0,t,"ଝ"); + } + else if(k.KKM(e,16400,75)) { // Line 80 + r=m=1; + k.KO(0,t,"ଖ"); + } + else if(k.KKM(e,16384,75)) { // Line 81 + r=m=1; + k.KO(0,t,"କ"); + } + else if(k.KKM(e,16384,76)) { // Line 37 + r=m=1; + k.KO(0,t,"ଲ"); + } + else if(k.KKM(e,16400,76)) { // Line 55 + r=m=1; + k.KO(0,t,"ଳ"); + } + else if(k.KKM(e,16384,77)) { // Line 30 + r=m=1; + k.KO(0,t,"ମ"); + } + else if(k.KKM(e,16400,77)) { // Line 73 + r=m=1; + k.KO(0,t,"ଂ"); + } + else if(k.KKM(e,16384,78)) { // Line 31 + r=m=1; + k.KO(0,t,"ନ"); + } + else if(k.KKM(e,16400,78)) { // Line 65 + r=m=1; + k.KO(0,t,"ଣ"); + } + else if(k.KKM(e,16384,79)) { // Line 46 + r=m=1; + k.KO(0,t,"ଓ"); + } + else if(k.KKM(e,16400,79)) { // Line 78 + r=m=1; + k.KO(0,t,"ଔ"); + } + else if(k.KKM(e,16384,80)) { // Line 45 + r=m=1; + k.KO(0,t,"ପ"); + } + else if(k.KKM(e,16400,80)) { // Line 61 + r=m=1; + k.KO(0,t,"ଫ"); + } + else if(k.KKM(e,16384,81)) { // Line 54 + r=m=1; + k.KO(0,t,"ଡ଼"); + } + else if(k.KKM(e,16400,81)) { // Line 60 + r=m=1; + k.KO(0,t,"ଢ଼"); + } + else if(k.KKM(e,16384,82)) { // Line 51 + r=m=1; + k.KO(0,t,"ର"); + } + else if(k.KKM(e,16400,82)) { // Line 68 + r=m=1; + k.KO(0,t,"ଋ"); + } + else if(k.KKM(e,16384,83)) { // Line 43 + r=m=1; + k.KO(0,t,"ସ"); + } + else if(k.KKM(e,16400,83)) { // Line 62 + r=m=1; + k.KO(0,t,"ଶ"); + } + else if(k.KKM(e,16384,84)) { // Line 50 + r=m=1; + k.KO(0,t,"ତ"); + } + else if(k.KKM(e,16400,84)) { // Line 67 + r=m=1; + k.KO(0,t,"ଟ"); + } + else if(k.KKM(e,16384,85)) { // Line 48 + r=m=1; + k.KO(0,t,"ଉ"); + } + else if(k.KKM(e,16400,85)) { // Line 69 + r=m=1; + k.KO(0,t,"ଊ"); + } + else if(k.KKM(e,16384,86)) { // Line 33 + r=m=1; + k.KO(0,t,"ୱ"); + } + else if(k.KKM(e,16400,86)) { // Line 57 + r=m=1; + k.KO(0,t,"ୱ"); + } + else if(k.KKM(e,16384,87)) { // Line 53 + r=m=1; + k.KO(0,t,"ୱ"); + } + else if(k.KKM(e,16400,87)) { // Line 59 + r=m=1; + k.KO(0,t,"ୱ"); + } + else if(k.KKM(e,16384,88)) { // Line 35 + r=m=1; + k.KO(0,t,"କ୍ଷ"); + } + else if(k.KKM(e,16400,88)) { // Line 72 + r=m=1; + k.KO(0,t,"ଁ"); + } + else if(k.KKM(e,16384,89)) { // Line 49 + r=m=1; + k.KO(0,t,"ଯ"); + } + else if(k.KKM(e,16400,89)) { // Line 56 + r=m=1; + k.KO(0,t,"ୟ"); + } + else if(k.KKM(e,16384,90)) { // Line 36 + r=m=1; + k.KO(0,t,"୍"); + } + else if(k.KKM(e,16400,90)) { // Line 58 + r=m=1; + k.KO(0,t,"ଜ୍ଞ"); + } + return r; + }; +( function ( $ ) { + 'use strict'; + + var orLekhani = { + id: 'or-lekhani', + name: 'ଫୋନେଟିକ', + description: 'Odia Lekhani phonetic input method', + date: '2012-10-14', + URL: 'http://github.com/wikimedia/jquery.ime', + author: 'Junaid P V, Subhashish Panigrahi and Jnanaranjan Sahu', + license: 'GPLv3', + version: '1.0', + contextLength: 4, + maxKeyLength: 2, + patterns: [ + [ '\\\\([A-Za-z\\>_~\\.0-9])', '\\\\', '$1' ], + + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])a', '$1ା' ], + [ '([କ-ଳଲନ୍ଧଥଡ଼ଢ଼ହୟୱରକ୍ଷଶସଷଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍ଜ])i', '$1\u0b3f' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])I', '$1ୀ' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])u', '$1\u0b41' ], + [ '([କ-ହୟୱ])(U|\u0b41u)', '$1\u0b42' ], + [ '([କ-ହୟୱ])R', '$1\u0b43' ], + [ '([କ-ହୟୱ])\u0b43R', '$1\u0b44' ], + [ '([କ-ହୟୱ])୍ଳ୍l', '$1ୢ' ], + [ '([କ-ହୟୱ])ୢl', '$1ୣ' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])e', '$1େ' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])o', '$1ୋ' ], + [ '([କ-ହୟୱଡ଼ଢ଼ଙ୍କଙ୍ଖଙ୍ଗଙ୍ଘଞ୍ଚଞ୍ଛଞ୍ଝଣ୍ଟଣ୍ଠଣ୍ଡଣ୍ଢନ୍ତନ୍ଥନ୍ଦନ୍ଧମ୍ପମ୍ଫମ୍ବମ୍ଭଞ୍])(ାu|ୋu)', '$1ୌ' ], + [ '([କ-ହୟୱ])E', '$1\u0B48' ], + [ '([କ-ହୟୱ])(w|v)', '$1୍ୱ' ], + [ '([କ-ହୟୱ])~', '$1\u200C' ], + + [ '([କ-ହୱ])y', '$1୍ୟ' ], // y + + [ 'z', '୍' ], // halanta + [ '\\.', '।' ], // purnacheda + [ 'ଅa', 'ଆ' ], + [ 'ଏe', 'ଐ' ], + [ '(ଅu|O)', 'ଔ' ], + [ 'ଋR', 'ୠ' ], // RR + [ 'ଳl', 'ଌ' ], // Ll + [ 'ଌl', 'ୡ' ], // Lll + [ 'ଞ୍ଚh', 'ଞ୍ଛ' ], // nch + [ 'ଞ୍ଜh', 'ଞ୍ଝ' ], // njh + [ 'ଙ୍କh', 'ଙ୍ଖ' ], // nkh + [ 'ଙ୍ଗh', 'ଙ୍ଘ' ], // ngh + [ 'ମ୍ବh', 'ମ୍ଭ' ], // mbh or nbh + [ 'ଣ୍ଡai', 'ଣ୍ଡାଇ' ], // NDai + [ 'ଜ୍ଜh', 'ଜ୍ଝ' ], // jjh + [ 'ଚ୍ଚh', 'ଚ୍ଛ' ], // cch + + [ 'ଣG', 'ଙ' ], // NG + [ 'ଣg', 'ଞ' ], // Ng + [ 'କh', 'ଖ' ], // kh + [ 'ଗh', 'ଘ' ], // gh + [ 'ନc', 'ଞ୍ଚ' ], // nc + [ 'ନg', 'ଙ୍ଗ' ], // ng + [ 'ଚh', 'ଛ' ], // ch + [ 'C', 'ଛ' ], // ch + [ 'ଜh', 'ଝ' ], // jh + [ 'ନj', 'ଞ୍ଜ' ], // nj + [ 'ନk', 'ଙ୍କ' ], // nk + [ 'ନd', 'ନ୍ଦ' ], // nd + [ 'ନD|ଣD', 'ଣ୍ଡ' ], // nd + [ 'ଣDh', 'ଣ୍ଢ' ], // ndh + [ 'ନdh', 'ନ୍ଧ' ], // ndht + [ 'ଟh', 'ଠ' ], // Th + [ 'ଡh', 'ଢ' ], // Dh + [ 'ତh', 'ଥ' ], // th + [ 'ଦh', 'ଧ' ], // dh + [ '(f|ପh|P)', 'ଫ' ], // ph or f + [ 'ବh', 'ଭ' ], // bh + [ 'ସh', 'ଷ' ], // sh + [ 'ମb', 'ମ୍ବ' ], // mb or nb + [ 'ଣT', 'ଣ୍ଟ' ], // NT + [ 'ଣTh', 'ଣ୍ଠ' ], // NTh + [ '(ଷ|ମ)p', '$1୍ପ' ], // sp/shp + [ 'shp', 'ଷ୍ପ' ], // sp + [ 'ଂM', 'ଁ' ], // MM + + [ 'କk', 'କ୍କ' ], // kk + [ 'ଗg', 'ଗ୍ଗ' ], // gg + [ 'ଚc', 'ଚ୍ଚ' ], // cc + [ 'ଜj', 'ଜ୍ଜ' ], // jj + [ 'ଦd', 'ଦ୍ଦ' ], // dd + [ 'ଟT', 'ଟ୍ଟ' ], // TT + [ 'ଡD', 'ଡ୍ଡ' ], // DD + [ 'ତt', 'ତ୍ତ' ], // tt + [ 'ଲl', 'ଲ୍ଲ' ], // ll + [ 'ପp', 'ପ୍ପ' ], // pp + [ '_', '\u200c' ], + + [ 'ଆ\\\\', '\u0B3E' ], // aa sign + [ 'ଇ\\\\', '\u0B3F' ], // i sign + [ 'ଈ\\\\', '\u0B40' ], // I sign + [ 'ଉ\\\\', '\u0B41' ], // u sign + [ 'ଉ\\\\', '\u0B42' ], // U sign + [ 'ଋ\\\\', '\u0B43' ], // R sign + [ 'ୠ\\\\', '\u0B44' ], // RR sign + [ 'ଌ\\\\', '\u0B62' ], // L sign + [ 'ୡ\\\\', '\u0B63' ], // LL sign + [ 'ଏ\\\\', '\u0B47' ], // e sign + [ 'ଐ\\\\', '\u0B48' ], // ai sign + [ 'ଓ\\\\', '\u0B4B' ], // o sign + [ 'ଔ\\\\', '\u0B4C' ], // au sign + + [ '\u200c?a', 'ଅ' ], + [ 'b', 'ବ' ], + [ 'c', '', 'ଚ' ], + [ 'd', 'ଦ' ], + [ '\u200c?e', 'ଏ' ], + [ 'g', 'ଗ' ], + [ 'G', 'ଘ' ], + [ 'h', 'ହ' ], + [ '\u200c?i', 'ଇ' ], + [ 'j', 'ଜ' ], + [ 'k', 'କ' ], + [ 'l', 'ଲ' ], + [ 'm', 'ମ' ], + [ 'n', 'ନ' ], + [ '\u200c?o', 'ଓ' ], + [ 'p', 'ପ' ], + [ 'q', 'ଡ଼' ], + [ 'r', 'ର' ], + [ 's', 'ସ' ], + [ 't', 'ତ' ], + [ '\u200c?u', 'ଉ' ], + [ '[vwVW]', 'ୱ' ], + [ 'x', 'କ୍ଷ' ], + [ '[Y]', 'ୟ' ], + [ '[y]', 'ଯ' ], + [ '\u200c?A', 'ଆ' ], + [ 'B', 'ବ' ], + [ 'C', 'ଛ' ], + [ 'D', 'ଡ' ], + [ '\u200c?E', 'ଐ' ], + [ 'F', 'ଫ' ], + [ 'G', 'ଗ' ], + [ 'H', 'ଃ' ], + [ '\u200c?I', 'ଈ' ], + [ 'J', 'ଯ' ], + [ 'K', 'ଖ' ], + [ 'L', 'ଳ' ], + [ 'M', 'ଂ' ], + [ 'N', 'ଣ' ], + [ '\u200c?O', 'ଔ' ], + [ 'P', 'ଫ' ], + [ 'Q', 'ଢ଼' ], + [ 'R', 'ଋ' ], + [ 'S', 'ଶ' ], + [ 'T', 'ଟ' ], + [ '\u200c?U', 'ଊ' ], + [ 'X', 'ଁ' ], + [ 'Z', 'ଜ୍ଞ' ], + [ '//', '୍ର' ], + + [ '0', '୦' ], + [ '1', '୧' ], + [ '2', '୨' ], + [ '3', '୩' ], + [ '4', '୪' ], + [ '5', '୫' ], + [ '6', '୬' ], + [ '7', '୭' ], + [ '8', '୮' ], + [ '9', '୯' ] + ] + }; + + $.ime.register( orLekhani ); +}( jQuery ) ); +} diff --git a/Odia/Lekhani/lekhani-1.0.json b/Odia/Lekhani/lekhani-1.0.json new file mode 100644 index 0000000..1f95147 --- /dev/null +++ b/Odia/Lekhani/lekhani-1.0.json @@ -0,0 +1,20 @@ +{ + "options" : { + "device" : "any", + "keyboardBaseUri" : "http://your-host-here/keyboard-path/", + "fontBaseUri" : "http://your-host-here/font-path/" + }, + "keyboard" : { + "id" : "lekhani", + "name" : "Lekhani", + "filename" : "lekhani-1.0.js", + "version" : "1.0", + "lastModified" : "2018-01-11T12:11:16.187+05:30", + "languages" : [ + { + "id" : "ori", + "name" : "Oriya" + } + ] + } +} diff --git a/Odia/Lekhani/lekhani-1.0_load.js b/Odia/Lekhani/lekhani-1.0_load.js new file mode 100644 index 0000000..c4fe8b5 --- /dev/null +++ b/Odia/Lekhani/lekhani-1.0_load.js @@ -0,0 +1 @@ +KeymanWeb.KRS(new Stub_Keyboard_lekhani()); function Stub_Keyboard_lekhani() {this.KF="lekhani-1.0.js";this.KI="Keyboard_lekhani";this.KN="Lekhani";} \ No newline at end of file diff --git a/Odia/Lekhani/source_package.kps b/Odia/Lekhani/source_package.kps new file mode 100644 index 0000000..608815c --- /dev/null +++ b/Odia/Lekhani/source_package.kps @@ -0,0 +1,2 @@ + +9.0.526.07.01.0Lekhani© O FoundationLekhani.kvkFile Lekhani.kvk0.kvkLekhani.kmxKeyboard Lekhani0.kmx