( 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 ) );