diff --git a/rules/str/str-sencoten.js b/rules/str/str-sencoten.js new file mode 100644 index 00000000..6fa81e15 --- /dev/null +++ b/rules/str/str-sencoten.js @@ -0,0 +1,46 @@ +( function ( $ ) { + 'use strict'; + + var strSencoten = { + id: 'str-sencoten', + name: 'SENĆOŦEN Keyboard', + description: 'Saanich SENĆOŦEN Keyboard', + date: '2024-11-23', + URL: 'http://github.com/wikimedia/jquery.ime', + author: 'Anne Drew Hu', + license: 'MIT', + version: '1.0', + maxKeyLength: 4, + patterns: [ + [ 'S', 's' ], + [ '([a-z])', function ( $1 ) { + return $1.toUpperCase(); + } ], + [ 'A\'', 'Á' ], + [ 'A/', 'Ⱥ' ], + [ 'C\'', 'Ć' ], + [ 'C/', 'Ȼ' ], + [ 'I\'', 'Í' ], + [ ',', '¸' ], + [ '<', ','], + [ 'K-', '₭' ], + [ 'K_', 'Ḵ' ], + [ 'K;', 'Ḵ' ], + [ 'K\'', 'Ḱ' ], + [ 'L-', 'Ƚ' ], + [ 'N_', 'Ṉ' ], + [ 'N;', 'Ṉ' ], + [ 'S\'', 'Ś' ], + [ 'T/', 'Ⱦ' ], + [ 'T_', 'Ṯ' ], + [ 'T;', 'Ṯ' ], + [ 'T-', 'Ŧ' ], + [ 'W_', 'W̱' ], + [ 'W;', 'W̱' ], + [ 'X;', 'X̱' ], + [ 'X_', 'X̱' ], + ] + }; + + $.ime.register( strSencoten ); +}( jQuery ) ); \ No newline at end of file diff --git a/src/jquery.ime.inputmethods.js b/src/jquery.ime.inputmethods.js index 7cbbcd06..87a11172 100755 --- a/src/jquery.ime.inputmethods.js +++ b/src/jquery.ime.inputmethods.js @@ -950,6 +950,10 @@ name: 'Sesotho tilde', source: 'rules/st/st-tilde.js' }, + 'str-sencoten': { + name: 'SENĆOŦEN keyboard', + source: 'rules/str/str-sencoten.js' + }, 'su-keyboard': { name: 'Sundanese keyboard', source: 'rules/su/su-keyboard.js' @@ -1782,6 +1786,10 @@ autonym: 'Sesotho', inputmethods: [ 'st-tilde' ] }, + str: { + autonym: 'SENĆOŦEN', + inputmethods: [ 'str-sencoten' ] + }, su: { autonym: 'Sunda', inputmethods: [ 'su-keyboard' ] diff --git a/test/jquery.ime.test.fixtures.js b/test/jquery.ime.test.fixtures.js index d04c5149..49ead992 100644 --- a/test/jquery.ime.test.fixtures.js +++ b/test/jquery.ime.test.fixtures.js @@ -6196,6 +6196,26 @@ var palochkaVariants = { { input: 'ro~-na', output: 'rōna', description: 'Sotho tilde rōna' } ] }, + { + description: 'Straits Salish (Saanich) SENĆOŦEN test', + inputmethod: 'str-sencoten', + tests: [ + { input: "senc'ot-en", output: 'SENĆOŦEN', description: 'Straits Salish SENĆOŦEN' }, + { input: "pet/en_eu,ec'", output: 'PEȾEṈEU¸EĆ', description: 'Straits Salish PEȾEṈEU¸EĆ' }, + { input: "sda/y,es", output: 'SDȺY¸ES', description: 'Straits Salish SDȺY¸ES' }, + { input: "ta'nS", output: 'TÁNs', description: 'Straits Salish TÁNs' }, + { input: "qa'sset", output: 'QÁSSET', description: 'Straights Salish QÁSSET' }, + { input: "qa',les sc/a'c'el", output: 'QÁ¸LES SȻÁĆEL', description: 'Straights Salish SȻÁĆEL' }, + { input: "qi'yec'en", output: 'QÍYEĆEN', description: 'Straights Salish QÍYEĆEN' }, + { input: "sa',i'eu", output: 'SÁ¸ÍEU', description: 'Straights Salish SÁ¸ÍEU' }, + { input: "s,i'e,", output: 'S¸ÍE¸', description: 'Straights Salish S¸ÍE¸' }, + { input: "sk-ek'c'es", output: 'S₭EḰĆES', description: 'Straights Salish S₭EḰĆES' }, + { input: "sk_a'keten;", output: 'SḴÁKETEṈ', description: 'Straights Salish SḴÁKETEṈ' }, + { input: "l-a'u