Files
mediawiki-extensions-Univer…/lib/jquery.ime/rules/fonipa/ipa-sil.js
Santhosh Thottingal 0d4c477323 Update jquery.ime from upstream
* Hide the IME selector after a few milliseconds of inactivity.

Change-Id: I1d06cab7b5a573dea9c82a95fea463b021c4f8ba
2012-11-26 12:12:36 +05:30

241 lines
6.7 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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