jquery.uls: * Make "ha" the primary code for Hausa (should address Bug T279269). * Localisation updates: ms-arab, ce, fur. * Minor whitespace fixes for eslint. Updating to9b879ca89bjquery.ime: * Minor whitespace and escaping fixes for eslint. Updating to1fd57c64b9Bug: T279269 Change-Id: I46aeb0a8397ebd9dc8a5d68a9e92368d8156ae2d
241 lines
6.7 KiB
JavaScript
241 lines
6.7 KiB
JavaScript
( function ( $ ) {
|
||
'use strict';
|
||
|
||
var ipaSil = {
|
||
id: 'ipa-sil',
|
||
name: 'International Phonetic Alphabet - SIL',
|
||
description: 'International Phonetic Alphabet - SIL',
|
||
date: '2012-11-23',
|
||
URL: 'http://scripts.sil.org/cms/scripts/page.php?site_id=nrsi&id=UniIPAKeyboard',
|
||
author: 'mapping by Martin Hosken and Lorna A. Priest; implementation by Amir E. Aharoni',
|
||
license: 'GPLv3',
|
||
version: '1.0',
|
||
contextLength: 0,
|
||
maxKeyLength: 2,
|
||
patterns: [
|
||
[ 'B=', 'ʙ' ],
|
||
[ 'f=', 'ɸ' ],
|
||
[ 'b=', 'β' ],
|
||
|
||
[ 'm>', 'ɱ' ],
|
||
[ 'v<', 'ⱱ' ],
|
||
[ 'v=', 'ʋ' ],
|
||
|
||
[ 't=', 'θ' ],
|
||
[ 'd=', 'ð' ],
|
||
|
||
[ 'r>', 'ɾ' ],
|
||
[ 'l=', 'ɬ' ],
|
||
[ 'l>', 'ɮ' ],
|
||
[ 'r=', 'ɹ' ],
|
||
|
||
[ 's=', 'ʃ' ],
|
||
[ 'z=', 'ʒ' ],
|
||
|
||
[ 't<', 'ʈ' ],
|
||
[ 'd<', 'ɖ' ],
|
||
[ 'n<', 'ɳ' ],
|
||
[ 'r<', 'ɽ' ],
|
||
[ 's<', 'ʂ' ],
|
||
[ 'z<', 'ʐ' ],
|
||
[ 'R<', 'ɻ' ],
|
||
[ 'l<', 'ɭ' ],
|
||
|
||
[ 'j=', 'ɟ' ],
|
||
[ 'n=', 'ɲ' ],
|
||
[ 'c=', 'ç' ],
|
||
[ 'j<', 'ʝ' ],
|
||
[ 'L<', 'ʎ' ],
|
||
|
||
[ 'g<', 'ɡ' ],
|
||
[ 'n>', 'ŋ' ],
|
||
[ 'g=', 'ɣ' ],
|
||
[ 'w>', 'ɰ' ],
|
||
[ 'L=', 'ʟ' ],
|
||
|
||
[ 'G=', 'ɢ' ],
|
||
[ 'N=', 'ɴ' ],
|
||
[ 'R=', 'ʀ' ],
|
||
[ 'x=', 'χ' ],
|
||
[ 'R>', 'ʁ' ],
|
||
|
||
[ 'h>', 'ħ' ],
|
||
[ '\\?<', 'ʕ' ],
|
||
|
||
[ '\\?=', 'ʔ' ],
|
||
[ 'h<', 'ɦ' ],
|
||
|
||
[ 'p=', 'ʘ' ],
|
||
[ 'ǃ<', 'ǀ' ], // This is not an exclamation mark
|
||
[ '!', 'ǃ' ],
|
||
[ 'ǃ=', 'ǂ' ], // This is not an exclamation mark
|
||
[ 'ǃ>', 'ǁ' ], // This is not an exclamation mark
|
||
|
||
[ 'b>', 'ɓ' ],
|
||
[ 'd>', 'ɗ' ],
|
||
[ 'j>', 'ʄ' ],
|
||
[ 'g>', 'ɠ' ],
|
||
[ 'G>', 'ʛ' ],
|
||
|
||
[ 'w=', 'ʍ' ],
|
||
[ 'y<', 'ɥ' ],
|
||
[ 'h=', 'ɥ' ],
|
||
[ 'H=', 'ʜ' ],
|
||
[ 'Q<', 'ʢ' ],
|
||
[ 'Q=', 'ʡ' ],
|
||
// TODO non-IPA retroflex hooks
|
||
|
||
[ 'c<', 'ɕ' ],
|
||
[ 'z>', 'ʑ' ],
|
||
[ 'L>', 'ɺ' ],
|
||
[ 'H<', 'ɧ' ],
|
||
|
||
[ 'i=', 'ɪ' ],
|
||
[ 'e<', 'ɛ' ],
|
||
[ 'a<', 'æ' ],
|
||
|
||
[ 'y=', 'ʏ' ],
|
||
[ 'o>', 'ø' ],
|
||
[ 'E<', 'œ' ],
|
||
[ 'E>', 'ɶ' ],
|
||
|
||
[ 'I=', 'ɨ' ],
|
||
[ 'E=', 'ɘ' ],
|
||
[ 'e=', 'ə' ],
|
||
[ 'e>', 'ɜ' ],
|
||
[ 'a>', 'ɐ' ],
|
||
[ 'U=', 'ʉ' ],
|
||
[ 'O=', 'ɵ' ],
|
||
[ 'O<', 'ɞ' ],
|
||
|
||
[ 'u=', 'ɯ' ],
|
||
[ 'O>', 'ɤ' ],
|
||
[ 'u>', 'ʌ' ],
|
||
[ 'a=', 'ɑ' ],
|
||
[ 'u', 'u' ],
|
||
[ 'u<', 'ʊ' ],
|
||
[ 'o<', 'ɔ' ],
|
||
[ 'o=', 'ɒ' ],
|
||
|
||
[ 'ˈ}', 'ˌ' ], // }}
|
||
[ '}', 'ˈ' ],
|
||
[ 'ː:', 'ˑ' ], // ::
|
||
[ 'ˑ:', 'ːː' ], // ::: // Not IPA sanctioned
|
||
[ ':', 'ː' ],
|
||
[ '\\*\\*\\*', '\u0306' ], // Combining breve
|
||
[ '\\.<', '|' ],
|
||
[ '\\.=', '‖' ],
|
||
[ '#=', '‿' ],
|
||
|
||
// Tones
|
||
[ '([˥-˩])4', '$1˥' ],
|
||
[ '([˥-˩])3', '$1˦' ],
|
||
[ '([˥-˩])2', '$1˧' ],
|
||
[ '([˥-˩])1', '$1˨' ],
|
||
[ '([˥-˩])0', '$1˩' ],
|
||
[ '#4', '˥' ],
|
||
[ '#3', '˦' ],
|
||
[ '#2', '˧' ],
|
||
[ '#1', '˨' ],
|
||
[ '#0', '˩' ],
|
||
[ '(?:\u0300)3', '\u030C' ], // @13 - Combining caron
|
||
[ '(?:\u0301)1', '\u0302' ], // @31 - Combining circumflex accent
|
||
[ '(?:\u0304)3', '\u1dc4' ], // @23 - Combining macron-acute
|
||
[ '(?:\u0300)2', '\u1dc5' ], // @12 - Combining grave-macron
|
||
[ '(?:\u030C)1', '\u1dc8' ], // @131 - Combining grave-acute-grave
|
||
[ '(?:\u0304)1', '\u1dc6' ], // @21 - Combining macron-grave // Not IPA sanctioned
|
||
[ '(?:\u0301)2', '\u1dc7' ], // @32 - Combining acute-macron // Not IPA sanctioned
|
||
[ '(?:\u0302)3', '\u1dc9' ], // @313 - Combining acute-grave-acute // Not IPA sanctioned
|
||
[ '(?:\u030a)4', '\u030b' ], // Combining double acute accent
|
||
[ '(?:\u030a)3', '\u0301' ], // Combining acute accent
|
||
[ '(?:\u030a)2', '\u0304' ], // Combining macron
|
||
[ '(?:\u030a)1', '\u0300' ], // Combining grave accent
|
||
[ '(?:\u030a)0', '\u030f' ], // Combining double grave accent
|
||
|
||
// Tone numbers (non-IPA)
|
||
[ '\\^0', '⁰' ], // Not IPA sanctioned
|
||
[ '\\^1', '¹' ], // Not IPA sanctioned
|
||
[ '\\^2', '²' ], // Not IPA sanctioned
|
||
[ '\\^3', '³' ], // Not IPA sanctioned
|
||
[ '\\^4', '⁴' ], // Not IPA sanctioned
|
||
[ '\\^5', '⁵' ], // Not IPA sanctioned
|
||
[ '\\^6', '⁶' ], // Not IPA sanctioned
|
||
[ '\\^7', '⁷' ], // Not IPA sanctioned
|
||
[ '\\^8', '⁸' ], // Not IPA sanctioned
|
||
[ '\\^9', '⁹' ], // Not IPA sanctioned
|
||
// This character is called "Superscript hyphen" in the layout document,
|
||
// and "Superscript minus" in Unicode
|
||
[ '\\^-', '⁻' ], // Not IPA sanctioned
|
||
|
||
[ 'ꜛ>', '↗' ], // #>>
|
||
[ 'ꜜ<', '↘' ], // #<<
|
||
[ '#<', 'ꜜ' ],
|
||
[ '#>', 'ꜛ' ],
|
||
|
||
// Diacritics and suprasegmentals
|
||
[ 'h\\^', 'ʰ' ],
|
||
[ 'w\\^', 'ʷ' ],
|
||
[ 'j\\^', 'ʲ' ],
|
||
[ 'ɣ\\^', 'ˠ' ], // g=
|
||
[ 'ʕ\\^', 'ˤ' ], // ?<
|
||
[ 'n\\^', 'ⁿ' ],
|
||
[ 'l\\^', 'ˡ' ],
|
||
// TODO non-IPA superscripts
|
||
|
||
[ 'ʽ\\[', '˞' ], // [[[
|
||
[ '\\[\\[', 'ʽ' ], // [[ // Not IPA sanctioned
|
||
[ '(?:\u031a)\\]', '‘' ], // ]]]] // Not IPA sanctioned
|
||
[ 'ʼ\\]', '\u031a' ], // ]]] // Combining left angle above
|
||
[ '\\]\\]', 'ʼ' ], // ]]
|
||
|
||
[ '(?:\u032f)\\$', '\u0330' ], // $$$ // Combining tilde below
|
||
[ '(?:\u0329)\\$', '\u032f' ], // $$ // Combining inverted breve below
|
||
[ '\\$', '\u0329' ], // $ // Combining vertical line below
|
||
|
||
// TODO non-IPA retroflex hooks
|
||
|
||
[ '(?:\u032c)%', '\u0324' ], // %%% // Combining diaeresis below
|
||
[ '(?:\u0325)%', '\u032c' ], // %% // Combining caron below
|
||
[ '%', '\u0325' ], // % // Combining ring below
|
||
|
||
// TODO non-IPA palatal hooks
|
||
|
||
[ '@', '\u030a' ], // Combining ring above
|
||
|
||
[ '(?:\u033c)\\{', '\u0323' ], // {{{{{ // Combining dot below
|
||
[ '(?:\u033b)\\{', '\u033c' ], // {{{{ // Combining seagull below
|
||
[ '(?:\u033a)\\{', '\u033b' ], // {{{ // Combining square below
|
||
[ '(?:\u032a)\\{', '\u033a' ], // {{ // Combining inverted bridge below
|
||
[ '\\{', '\u032a' ], // { // Combining bridge below
|
||
|
||
[ '(?:\u0303)~', '\u0334' ], // ~~ // Combining tilde overlay
|
||
[ '~', '\u0303' ], // ~ // Combining tilde
|
||
|
||
[ '(?:\u0306)\\*', '\u0307' ], // **** // Combining dot above
|
||
[ '(?:\u033d)\\*', '\u0306' ], // *** // Combining breve
|
||
[ '(?:\u0308)\\*', '\u033d' ], // ** // Combining x above
|
||
[ '\\*', '\u0308' ], // * // Combining diaeresis
|
||
|
||
// TODO Find out what the m with the five asterisks is.
|
||
|
||
[ '#&', '\u0361' ], // Combining double inverted breve
|
||
[ '(?:\u030a)&', '\u035c' ], // @& // Combining double breve below
|
||
|
||
[ '(?:\u0318)\\+', '\u0339' ], // ++++ // Combining right half ring below
|
||
[ '(?:\u0319)_', '\u031c' ], // ____ // Combining left half ring below
|
||
[ '(?:\u031d)\\+', '\u0318' ], // +++ // Combining left tack below
|
||
[ '(?:\u031e)_', '\u0319' ], // ___ // Combining right tack below
|
||
[ '(?:\u031f)\\+', '\u031d' ], // ++ // Combining up tack below
|
||
[ '(?:\u0320)_', '\u031e' ], // __ // Combining down tack below
|
||
[ '\\+', '\u031f' ], // + // Combining plus sign below
|
||
[ '_', '\u0320' ], // _ // Combining minus sign below
|
||
|
||
[ '=>', '→' ], // Not IPA sanctioned
|
||
[ 's>', 'σ' ], // Not IPA sanctioned
|
||
[ '=<', '\u200d' ] // Combining Grapheme Joiner
|
||
]
|
||
};
|
||
|
||
$.ime.register( ipaSil );
|
||
}( jQuery ) );
|