1275 lines
		
	
	
	
		
			23 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
			
		
		
	
	
			1275 lines
		
	
	
	
		
			23 KiB
		
	
	
	
		
			JavaScript
		
	
	
	
	
	
| (function () {
 | |
| var charmap = (function () {
 | |
|     'use strict';
 | |
| 
 | |
|     var global = tinymce.util.Tools.resolve('tinymce.PluginManager');
 | |
| 
 | |
|     var fireInsertCustomChar = function (editor, chr) {
 | |
|       return editor.fire('insertCustomChar', { chr: chr });
 | |
|     };
 | |
|     var Events = { fireInsertCustomChar: fireInsertCustomChar };
 | |
| 
 | |
|     var insertChar = function (editor, chr) {
 | |
|       var evtChr = Events.fireInsertCustomChar(editor, chr).chr;
 | |
|       editor.execCommand('mceInsertContent', false, evtChr);
 | |
|     };
 | |
|     var Actions = { insertChar: insertChar };
 | |
| 
 | |
|     var global$1 = tinymce.util.Tools.resolve('tinymce.util.Tools');
 | |
| 
 | |
|     var getCharMap = function (editor) {
 | |
|       return editor.settings.charmap;
 | |
|     };
 | |
|     var getCharMapAppend = function (editor) {
 | |
|       return editor.settings.charmap_append;
 | |
|     };
 | |
|     var Settings = {
 | |
|       getCharMap: getCharMap,
 | |
|       getCharMapAppend: getCharMapAppend
 | |
|     };
 | |
| 
 | |
|     var isArray = global$1.isArray;
 | |
|     var getDefaultCharMap = function () {
 | |
|       return [
 | |
|         [
 | |
|           '160',
 | |
|           'no-break space'
 | |
|         ],
 | |
|         [
 | |
|           '173',
 | |
|           'soft hyphen'
 | |
|         ],
 | |
|         [
 | |
|           '34',
 | |
|           'quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '162',
 | |
|           'cent sign'
 | |
|         ],
 | |
|         [
 | |
|           '8364',
 | |
|           'euro sign'
 | |
|         ],
 | |
|         [
 | |
|           '163',
 | |
|           'pound sign'
 | |
|         ],
 | |
|         [
 | |
|           '165',
 | |
|           'yen sign'
 | |
|         ],
 | |
|         [
 | |
|           '169',
 | |
|           'copyright sign'
 | |
|         ],
 | |
|         [
 | |
|           '174',
 | |
|           'registered sign'
 | |
|         ],
 | |
|         [
 | |
|           '8482',
 | |
|           'trade mark sign'
 | |
|         ],
 | |
|         [
 | |
|           '8240',
 | |
|           'per mille sign'
 | |
|         ],
 | |
|         [
 | |
|           '181',
 | |
|           'micro sign'
 | |
|         ],
 | |
|         [
 | |
|           '183',
 | |
|           'middle dot'
 | |
|         ],
 | |
|         [
 | |
|           '8226',
 | |
|           'bullet'
 | |
|         ],
 | |
|         [
 | |
|           '8230',
 | |
|           'three dot leader'
 | |
|         ],
 | |
|         [
 | |
|           '8242',
 | |
|           'minutes / feet'
 | |
|         ],
 | |
|         [
 | |
|           '8243',
 | |
|           'seconds / inches'
 | |
|         ],
 | |
|         [
 | |
|           '167',
 | |
|           'section sign'
 | |
|         ],
 | |
|         [
 | |
|           '182',
 | |
|           'paragraph sign'
 | |
|         ],
 | |
|         [
 | |
|           '223',
 | |
|           'sharp s / ess-zed'
 | |
|         ],
 | |
|         [
 | |
|           '8249',
 | |
|           'single left-pointing angle quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '8250',
 | |
|           'single right-pointing angle quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '171',
 | |
|           'left pointing guillemet'
 | |
|         ],
 | |
|         [
 | |
|           '187',
 | |
|           'right pointing guillemet'
 | |
|         ],
 | |
|         [
 | |
|           '8216',
 | |
|           'left single quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '8217',
 | |
|           'right single quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '8220',
 | |
|           'left double quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '8221',
 | |
|           'right double quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '8218',
 | |
|           'single low-9 quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '8222',
 | |
|           'double low-9 quotation mark'
 | |
|         ],
 | |
|         [
 | |
|           '60',
 | |
|           'less-than sign'
 | |
|         ],
 | |
|         [
 | |
|           '62',
 | |
|           'greater-than sign'
 | |
|         ],
 | |
|         [
 | |
|           '8804',
 | |
|           'less-than or equal to'
 | |
|         ],
 | |
|         [
 | |
|           '8805',
 | |
|           'greater-than or equal to'
 | |
|         ],
 | |
|         [
 | |
|           '8211',
 | |
|           'en dash'
 | |
|         ],
 | |
|         [
 | |
|           '8212',
 | |
|           'em dash'
 | |
|         ],
 | |
|         [
 | |
|           '175',
 | |
|           'macron'
 | |
|         ],
 | |
|         [
 | |
|           '8254',
 | |
|           'overline'
 | |
|         ],
 | |
|         [
 | |
|           '164',
 | |
|           'currency sign'
 | |
|         ],
 | |
|         [
 | |
|           '166',
 | |
|           'broken bar'
 | |
|         ],
 | |
|         [
 | |
|           '168',
 | |
|           'diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '161',
 | |
|           'inverted exclamation mark'
 | |
|         ],
 | |
|         [
 | |
|           '191',
 | |
|           'turned question mark'
 | |
|         ],
 | |
|         [
 | |
|           '710',
 | |
|           'circumflex accent'
 | |
|         ],
 | |
|         [
 | |
|           '732',
 | |
|           'small tilde'
 | |
|         ],
 | |
|         [
 | |
|           '176',
 | |
|           'degree sign'
 | |
|         ],
 | |
|         [
 | |
|           '8722',
 | |
|           'minus sign'
 | |
|         ],
 | |
|         [
 | |
|           '177',
 | |
|           'plus-minus sign'
 | |
|         ],
 | |
|         [
 | |
|           '247',
 | |
|           'division sign'
 | |
|         ],
 | |
|         [
 | |
|           '8260',
 | |
|           'fraction slash'
 | |
|         ],
 | |
|         [
 | |
|           '215',
 | |
|           'multiplication sign'
 | |
|         ],
 | |
|         [
 | |
|           '185',
 | |
|           'superscript one'
 | |
|         ],
 | |
|         [
 | |
|           '178',
 | |
|           'superscript two'
 | |
|         ],
 | |
|         [
 | |
|           '179',
 | |
|           'superscript three'
 | |
|         ],
 | |
|         [
 | |
|           '188',
 | |
|           'fraction one quarter'
 | |
|         ],
 | |
|         [
 | |
|           '189',
 | |
|           'fraction one half'
 | |
|         ],
 | |
|         [
 | |
|           '190',
 | |
|           'fraction three quarters'
 | |
|         ],
 | |
|         [
 | |
|           '402',
 | |
|           'function / florin'
 | |
|         ],
 | |
|         [
 | |
|           '8747',
 | |
|           'integral'
 | |
|         ],
 | |
|         [
 | |
|           '8721',
 | |
|           'n-ary sumation'
 | |
|         ],
 | |
|         [
 | |
|           '8734',
 | |
|           'infinity'
 | |
|         ],
 | |
|         [
 | |
|           '8730',
 | |
|           'square root'
 | |
|         ],
 | |
|         [
 | |
|           '8764',
 | |
|           'similar to'
 | |
|         ],
 | |
|         [
 | |
|           '8773',
 | |
|           'approximately equal to'
 | |
|         ],
 | |
|         [
 | |
|           '8776',
 | |
|           'almost equal to'
 | |
|         ],
 | |
|         [
 | |
|           '8800',
 | |
|           'not equal to'
 | |
|         ],
 | |
|         [
 | |
|           '8801',
 | |
|           'identical to'
 | |
|         ],
 | |
|         [
 | |
|           '8712',
 | |
|           'element of'
 | |
|         ],
 | |
|         [
 | |
|           '8713',
 | |
|           'not an element of'
 | |
|         ],
 | |
|         [
 | |
|           '8715',
 | |
|           'contains as member'
 | |
|         ],
 | |
|         [
 | |
|           '8719',
 | |
|           'n-ary product'
 | |
|         ],
 | |
|         [
 | |
|           '8743',
 | |
|           'logical and'
 | |
|         ],
 | |
|         [
 | |
|           '8744',
 | |
|           'logical or'
 | |
|         ],
 | |
|         [
 | |
|           '172',
 | |
|           'not sign'
 | |
|         ],
 | |
|         [
 | |
|           '8745',
 | |
|           'intersection'
 | |
|         ],
 | |
|         [
 | |
|           '8746',
 | |
|           'union'
 | |
|         ],
 | |
|         [
 | |
|           '8706',
 | |
|           'partial differential'
 | |
|         ],
 | |
|         [
 | |
|           '8704',
 | |
|           'for all'
 | |
|         ],
 | |
|         [
 | |
|           '8707',
 | |
|           'there exists'
 | |
|         ],
 | |
|         [
 | |
|           '8709',
 | |
|           'diameter'
 | |
|         ],
 | |
|         [
 | |
|           '8711',
 | |
|           'backward difference'
 | |
|         ],
 | |
|         [
 | |
|           '8727',
 | |
|           'asterisk operator'
 | |
|         ],
 | |
|         [
 | |
|           '8733',
 | |
|           'proportional to'
 | |
|         ],
 | |
|         [
 | |
|           '8736',
 | |
|           'angle'
 | |
|         ],
 | |
|         [
 | |
|           '180',
 | |
|           'acute accent'
 | |
|         ],
 | |
|         [
 | |
|           '184',
 | |
|           'cedilla'
 | |
|         ],
 | |
|         [
 | |
|           '170',
 | |
|           'feminine ordinal indicator'
 | |
|         ],
 | |
|         [
 | |
|           '186',
 | |
|           'masculine ordinal indicator'
 | |
|         ],
 | |
|         [
 | |
|           '8224',
 | |
|           'dagger'
 | |
|         ],
 | |
|         [
 | |
|           '8225',
 | |
|           'double dagger'
 | |
|         ],
 | |
|         [
 | |
|           '192',
 | |
|           'A - grave'
 | |
|         ],
 | |
|         [
 | |
|           '193',
 | |
|           'A - acute'
 | |
|         ],
 | |
|         [
 | |
|           '194',
 | |
|           'A - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '195',
 | |
|           'A - tilde'
 | |
|         ],
 | |
|         [
 | |
|           '196',
 | |
|           'A - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '197',
 | |
|           'A - ring above'
 | |
|         ],
 | |
|         [
 | |
|           '256',
 | |
|           'A - macron'
 | |
|         ],
 | |
|         [
 | |
|           '198',
 | |
|           'ligature AE'
 | |
|         ],
 | |
|         [
 | |
|           '199',
 | |
|           'C - cedilla'
 | |
|         ],
 | |
|         [
 | |
|           '200',
 | |
|           'E - grave'
 | |
|         ],
 | |
|         [
 | |
|           '201',
 | |
|           'E - acute'
 | |
|         ],
 | |
|         [
 | |
|           '202',
 | |
|           'E - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '203',
 | |
|           'E - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '274',
 | |
|           'E - macron'
 | |
|         ],
 | |
|         [
 | |
|           '204',
 | |
|           'I - grave'
 | |
|         ],
 | |
|         [
 | |
|           '205',
 | |
|           'I - acute'
 | |
|         ],
 | |
|         [
 | |
|           '206',
 | |
|           'I - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '207',
 | |
|           'I - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '298',
 | |
|           'I - macron'
 | |
|         ],
 | |
|         [
 | |
|           '208',
 | |
|           'ETH'
 | |
|         ],
 | |
|         [
 | |
|           '209',
 | |
|           'N - tilde'
 | |
|         ],
 | |
|         [
 | |
|           '210',
 | |
|           'O - grave'
 | |
|         ],
 | |
|         [
 | |
|           '211',
 | |
|           'O - acute'
 | |
|         ],
 | |
|         [
 | |
|           '212',
 | |
|           'O - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '213',
 | |
|           'O - tilde'
 | |
|         ],
 | |
|         [
 | |
|           '214',
 | |
|           'O - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '216',
 | |
|           'O - slash'
 | |
|         ],
 | |
|         [
 | |
|           '332',
 | |
|           'O - macron'
 | |
|         ],
 | |
|         [
 | |
|           '338',
 | |
|           'ligature OE'
 | |
|         ],
 | |
|         [
 | |
|           '352',
 | |
|           'S - caron'
 | |
|         ],
 | |
|         [
 | |
|           '217',
 | |
|           'U - grave'
 | |
|         ],
 | |
|         [
 | |
|           '218',
 | |
|           'U - acute'
 | |
|         ],
 | |
|         [
 | |
|           '219',
 | |
|           'U - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '220',
 | |
|           'U - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '362',
 | |
|           'U - macron'
 | |
|         ],
 | |
|         [
 | |
|           '221',
 | |
|           'Y - acute'
 | |
|         ],
 | |
|         [
 | |
|           '376',
 | |
|           'Y - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '562',
 | |
|           'Y - macron'
 | |
|         ],
 | |
|         [
 | |
|           '222',
 | |
|           'THORN'
 | |
|         ],
 | |
|         [
 | |
|           '224',
 | |
|           'a - grave'
 | |
|         ],
 | |
|         [
 | |
|           '225',
 | |
|           'a - acute'
 | |
|         ],
 | |
|         [
 | |
|           '226',
 | |
|           'a - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '227',
 | |
|           'a - tilde'
 | |
|         ],
 | |
|         [
 | |
|           '228',
 | |
|           'a - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '229',
 | |
|           'a - ring above'
 | |
|         ],
 | |
|         [
 | |
|           '257',
 | |
|           'a - macron'
 | |
|         ],
 | |
|         [
 | |
|           '230',
 | |
|           'ligature ae'
 | |
|         ],
 | |
|         [
 | |
|           '231',
 | |
|           'c - cedilla'
 | |
|         ],
 | |
|         [
 | |
|           '232',
 | |
|           'e - grave'
 | |
|         ],
 | |
|         [
 | |
|           '233',
 | |
|           'e - acute'
 | |
|         ],
 | |
|         [
 | |
|           '234',
 | |
|           'e - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '235',
 | |
|           'e - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '275',
 | |
|           'e - macron'
 | |
|         ],
 | |
|         [
 | |
|           '236',
 | |
|           'i - grave'
 | |
|         ],
 | |
|         [
 | |
|           '237',
 | |
|           'i - acute'
 | |
|         ],
 | |
|         [
 | |
|           '238',
 | |
|           'i - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '239',
 | |
|           'i - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '299',
 | |
|           'i - macron'
 | |
|         ],
 | |
|         [
 | |
|           '240',
 | |
|           'eth'
 | |
|         ],
 | |
|         [
 | |
|           '241',
 | |
|           'n - tilde'
 | |
|         ],
 | |
|         [
 | |
|           '242',
 | |
|           'o - grave'
 | |
|         ],
 | |
|         [
 | |
|           '243',
 | |
|           'o - acute'
 | |
|         ],
 | |
|         [
 | |
|           '244',
 | |
|           'o - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '245',
 | |
|           'o - tilde'
 | |
|         ],
 | |
|         [
 | |
|           '246',
 | |
|           'o - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '248',
 | |
|           'o slash'
 | |
|         ],
 | |
|         [
 | |
|           '333',
 | |
|           'o macron'
 | |
|         ],
 | |
|         [
 | |
|           '339',
 | |
|           'ligature oe'
 | |
|         ],
 | |
|         [
 | |
|           '353',
 | |
|           's - caron'
 | |
|         ],
 | |
|         [
 | |
|           '249',
 | |
|           'u - grave'
 | |
|         ],
 | |
|         [
 | |
|           '250',
 | |
|           'u - acute'
 | |
|         ],
 | |
|         [
 | |
|           '251',
 | |
|           'u - circumflex'
 | |
|         ],
 | |
|         [
 | |
|           '252',
 | |
|           'u - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '363',
 | |
|           'u - macron'
 | |
|         ],
 | |
|         [
 | |
|           '253',
 | |
|           'y - acute'
 | |
|         ],
 | |
|         [
 | |
|           '254',
 | |
|           'thorn'
 | |
|         ],
 | |
|         [
 | |
|           '255',
 | |
|           'y - diaeresis'
 | |
|         ],
 | |
|         [
 | |
|           '563',
 | |
|           'y - macron'
 | |
|         ],
 | |
|         [
 | |
|           '913',
 | |
|           'Alpha'
 | |
|         ],
 | |
|         [
 | |
|           '914',
 | |
|           'Beta'
 | |
|         ],
 | |
|         [
 | |
|           '915',
 | |
|           'Gamma'
 | |
|         ],
 | |
|         [
 | |
|           '916',
 | |
|           'Delta'
 | |
|         ],
 | |
|         [
 | |
|           '917',
 | |
|           'Epsilon'
 | |
|         ],
 | |
|         [
 | |
|           '918',
 | |
|           'Zeta'
 | |
|         ],
 | |
|         [
 | |
|           '919',
 | |
|           'Eta'
 | |
|         ],
 | |
|         [
 | |
|           '920',
 | |
|           'Theta'
 | |
|         ],
 | |
|         [
 | |
|           '921',
 | |
|           'Iota'
 | |
|         ],
 | |
|         [
 | |
|           '922',
 | |
|           'Kappa'
 | |
|         ],
 | |
|         [
 | |
|           '923',
 | |
|           'Lambda'
 | |
|         ],
 | |
|         [
 | |
|           '924',
 | |
|           'Mu'
 | |
|         ],
 | |
|         [
 | |
|           '925',
 | |
|           'Nu'
 | |
|         ],
 | |
|         [
 | |
|           '926',
 | |
|           'Xi'
 | |
|         ],
 | |
|         [
 | |
|           '927',
 | |
|           'Omicron'
 | |
|         ],
 | |
|         [
 | |
|           '928',
 | |
|           'Pi'
 | |
|         ],
 | |
|         [
 | |
|           '929',
 | |
|           'Rho'
 | |
|         ],
 | |
|         [
 | |
|           '931',
 | |
|           'Sigma'
 | |
|         ],
 | |
|         [
 | |
|           '932',
 | |
|           'Tau'
 | |
|         ],
 | |
|         [
 | |
|           '933',
 | |
|           'Upsilon'
 | |
|         ],
 | |
|         [
 | |
|           '934',
 | |
|           'Phi'
 | |
|         ],
 | |
|         [
 | |
|           '935',
 | |
|           'Chi'
 | |
|         ],
 | |
|         [
 | |
|           '936',
 | |
|           'Psi'
 | |
|         ],
 | |
|         [
 | |
|           '937',
 | |
|           'Omega'
 | |
|         ],
 | |
|         [
 | |
|           '945',
 | |
|           'alpha'
 | |
|         ],
 | |
|         [
 | |
|           '946',
 | |
|           'beta'
 | |
|         ],
 | |
|         [
 | |
|           '947',
 | |
|           'gamma'
 | |
|         ],
 | |
|         [
 | |
|           '948',
 | |
|           'delta'
 | |
|         ],
 | |
|         [
 | |
|           '949',
 | |
|           'epsilon'
 | |
|         ],
 | |
|         [
 | |
|           '950',
 | |
|           'zeta'
 | |
|         ],
 | |
|         [
 | |
|           '951',
 | |
|           'eta'
 | |
|         ],
 | |
|         [
 | |
|           '952',
 | |
|           'theta'
 | |
|         ],
 | |
|         [
 | |
|           '953',
 | |
|           'iota'
 | |
|         ],
 | |
|         [
 | |
|           '954',
 | |
|           'kappa'
 | |
|         ],
 | |
|         [
 | |
|           '955',
 | |
|           'lambda'
 | |
|         ],
 | |
|         [
 | |
|           '956',
 | |
|           'mu'
 | |
|         ],
 | |
|         [
 | |
|           '957',
 | |
|           'nu'
 | |
|         ],
 | |
|         [
 | |
|           '958',
 | |
|           'xi'
 | |
|         ],
 | |
|         [
 | |
|           '959',
 | |
|           'omicron'
 | |
|         ],
 | |
|         [
 | |
|           '960',
 | |
|           'pi'
 | |
|         ],
 | |
|         [
 | |
|           '961',
 | |
|           'rho'
 | |
|         ],
 | |
|         [
 | |
|           '962',
 | |
|           'final sigma'
 | |
|         ],
 | |
|         [
 | |
|           '963',
 | |
|           'sigma'
 | |
|         ],
 | |
|         [
 | |
|           '964',
 | |
|           'tau'
 | |
|         ],
 | |
|         [
 | |
|           '965',
 | |
|           'upsilon'
 | |
|         ],
 | |
|         [
 | |
|           '966',
 | |
|           'phi'
 | |
|         ],
 | |
|         [
 | |
|           '967',
 | |
|           'chi'
 | |
|         ],
 | |
|         [
 | |
|           '968',
 | |
|           'psi'
 | |
|         ],
 | |
|         [
 | |
|           '969',
 | |
|           'omega'
 | |
|         ],
 | |
|         [
 | |
|           '8501',
 | |
|           'alef symbol'
 | |
|         ],
 | |
|         [
 | |
|           '982',
 | |
|           'pi symbol'
 | |
|         ],
 | |
|         [
 | |
|           '8476',
 | |
|           'real part symbol'
 | |
|         ],
 | |
|         [
 | |
|           '978',
 | |
|           'upsilon - hook symbol'
 | |
|         ],
 | |
|         [
 | |
|           '8472',
 | |
|           'Weierstrass p'
 | |
|         ],
 | |
|         [
 | |
|           '8465',
 | |
|           'imaginary part'
 | |
|         ],
 | |
|         [
 | |
|           '8592',
 | |
|           'leftwards arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8593',
 | |
|           'upwards arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8594',
 | |
|           'rightwards arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8595',
 | |
|           'downwards arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8596',
 | |
|           'left right arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8629',
 | |
|           'carriage return'
 | |
|         ],
 | |
|         [
 | |
|           '8656',
 | |
|           'leftwards double arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8657',
 | |
|           'upwards double arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8658',
 | |
|           'rightwards double arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8659',
 | |
|           'downwards double arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8660',
 | |
|           'left right double arrow'
 | |
|         ],
 | |
|         [
 | |
|           '8756',
 | |
|           'therefore'
 | |
|         ],
 | |
|         [
 | |
|           '8834',
 | |
|           'subset of'
 | |
|         ],
 | |
|         [
 | |
|           '8835',
 | |
|           'superset of'
 | |
|         ],
 | |
|         [
 | |
|           '8836',
 | |
|           'not a subset of'
 | |
|         ],
 | |
|         [
 | |
|           '8838',
 | |
|           'subset of or equal to'
 | |
|         ],
 | |
|         [
 | |
|           '8839',
 | |
|           'superset of or equal to'
 | |
|         ],
 | |
|         [
 | |
|           '8853',
 | |
|           'circled plus'
 | |
|         ],
 | |
|         [
 | |
|           '8855',
 | |
|           'circled times'
 | |
|         ],
 | |
|         [
 | |
|           '8869',
 | |
|           'perpendicular'
 | |
|         ],
 | |
|         [
 | |
|           '8901',
 | |
|           'dot operator'
 | |
|         ],
 | |
|         [
 | |
|           '8968',
 | |
|           'left ceiling'
 | |
|         ],
 | |
|         [
 | |
|           '8969',
 | |
|           'right ceiling'
 | |
|         ],
 | |
|         [
 | |
|           '8970',
 | |
|           'left floor'
 | |
|         ],
 | |
|         [
 | |
|           '8971',
 | |
|           'right floor'
 | |
|         ],
 | |
|         [
 | |
|           '9001',
 | |
|           'left-pointing angle bracket'
 | |
|         ],
 | |
|         [
 | |
|           '9002',
 | |
|           'right-pointing angle bracket'
 | |
|         ],
 | |
|         [
 | |
|           '9674',
 | |
|           'lozenge'
 | |
|         ],
 | |
|         [
 | |
|           '9824',
 | |
|           'black spade suit'
 | |
|         ],
 | |
|         [
 | |
|           '9827',
 | |
|           'black club suit'
 | |
|         ],
 | |
|         [
 | |
|           '9829',
 | |
|           'black heart suit'
 | |
|         ],
 | |
|         [
 | |
|           '9830',
 | |
|           'black diamond suit'
 | |
|         ],
 | |
|         [
 | |
|           '8194',
 | |
|           'en space'
 | |
|         ],
 | |
|         [
 | |
|           '8195',
 | |
|           'em space'
 | |
|         ],
 | |
|         [
 | |
|           '8201',
 | |
|           'thin space'
 | |
|         ],
 | |
|         [
 | |
|           '8204',
 | |
|           'zero width non-joiner'
 | |
|         ],
 | |
|         [
 | |
|           '8205',
 | |
|           'zero width joiner'
 | |
|         ],
 | |
|         [
 | |
|           '8206',
 | |
|           'left-to-right mark'
 | |
|         ],
 | |
|         [
 | |
|           '8207',
 | |
|           'right-to-left mark'
 | |
|         ]
 | |
|       ];
 | |
|     };
 | |
|     var charmapFilter = function (charmap) {
 | |
|       return global$1.grep(charmap, function (item) {
 | |
|         return isArray(item) && item.length === 2;
 | |
|       });
 | |
|     };
 | |
|     var getCharsFromSetting = function (settingValue) {
 | |
|       if (isArray(settingValue)) {
 | |
|         return [].concat(charmapFilter(settingValue));
 | |
|       }
 | |
|       if (typeof settingValue === 'function') {
 | |
|         return settingValue();
 | |
|       }
 | |
|       return [];
 | |
|     };
 | |
|     var extendCharMap = function (editor, charmap) {
 | |
|       var userCharMap = Settings.getCharMap(editor);
 | |
|       if (userCharMap) {
 | |
|         charmap = getCharsFromSetting(userCharMap);
 | |
|       }
 | |
|       var userCharMapAppend = Settings.getCharMapAppend(editor);
 | |
|       if (userCharMapAppend) {
 | |
|         return [].concat(charmap).concat(getCharsFromSetting(userCharMapAppend));
 | |
|       }
 | |
|       return charmap;
 | |
|     };
 | |
|     var getCharMap$1 = function (editor) {
 | |
|       return extendCharMap(editor, getDefaultCharMap());
 | |
|     };
 | |
|     var CharMap = { getCharMap: getCharMap$1 };
 | |
| 
 | |
|     var get = function (editor) {
 | |
|       var getCharMap = function () {
 | |
|         return CharMap.getCharMap(editor);
 | |
|       };
 | |
|       var insertChar = function (chr) {
 | |
|         Actions.insertChar(editor, chr);
 | |
|       };
 | |
|       return {
 | |
|         getCharMap: getCharMap,
 | |
|         insertChar: insertChar
 | |
|       };
 | |
|     };
 | |
|     var Api = { get: get };
 | |
| 
 | |
|     var getHtml = function (charmap) {
 | |
|       var gridHtml, x, y;
 | |
|       var width = Math.min(charmap.length, 25);
 | |
|       var height = Math.ceil(charmap.length / width);
 | |
|       gridHtml = '<table role="presentation" cellspacing="0" class="mce-charmap"><tbody>';
 | |
|       for (y = 0; y < height; y++) {
 | |
|         gridHtml += '<tr>';
 | |
|         for (x = 0; x < width; x++) {
 | |
|           var index = y * width + x;
 | |
|           if (index < charmap.length) {
 | |
|             var chr = charmap[index];
 | |
|             var charCode = parseInt(chr[0], 10);
 | |
|             var chrText = chr ? String.fromCharCode(charCode) : ' ';
 | |
|             gridHtml += '<td title="' + chr[1] + '">' + '<div tabindex="-1" title="' + chr[1] + '" role="button" data-chr="' + charCode + '">' + chrText + '</div>' + '</td>';
 | |
|           } else {
 | |
|             gridHtml += '<td />';
 | |
|           }
 | |
|         }
 | |
|         gridHtml += '</tr>';
 | |
|       }
 | |
|       gridHtml += '</tbody></table>';
 | |
|       return gridHtml;
 | |
|     };
 | |
|     var GridHtml = { getHtml: getHtml };
 | |
| 
 | |
|     var getParentTd = function (elm) {
 | |
|       while (elm) {
 | |
|         if (elm.nodeName === 'TD') {
 | |
|           return elm;
 | |
|         }
 | |
|         elm = elm.parentNode;
 | |
|       }
 | |
|     };
 | |
|     var open = function (editor) {
 | |
|       var win;
 | |
|       var charMapPanel = {
 | |
|         type: 'container',
 | |
|         html: GridHtml.getHtml(CharMap.getCharMap(editor)),
 | |
|         onclick: function (e) {
 | |
|           var target = e.target;
 | |
|           if (/^(TD|DIV)$/.test(target.nodeName)) {
 | |
|             var charDiv = getParentTd(target).firstChild;
 | |
|             if (charDiv && charDiv.hasAttribute('data-chr')) {
 | |
|               var charCodeString = charDiv.getAttribute('data-chr');
 | |
|               var charCode = parseInt(charCodeString, 10);
 | |
|               if (!isNaN(charCode)) {
 | |
|                 Actions.insertChar(editor, String.fromCharCode(charCode));
 | |
|               }
 | |
|               if (!e.ctrlKey) {
 | |
|                 win.close();
 | |
|               }
 | |
|             }
 | |
|           }
 | |
|         },
 | |
|         onmouseover: function (e) {
 | |
|           var td = getParentTd(e.target);
 | |
|           if (td && td.firstChild) {
 | |
|             win.find('#preview').text(td.firstChild.firstChild.data);
 | |
|             win.find('#previewTitle').text(td.title);
 | |
|           } else {
 | |
|             win.find('#preview').text(' ');
 | |
|             win.find('#previewTitle').text(' ');
 | |
|           }
 | |
|         }
 | |
|       };
 | |
|       win = editor.windowManager.open({
 | |
|         title: 'Special character',
 | |
|         spacing: 10,
 | |
|         padding: 10,
 | |
|         items: [
 | |
|           charMapPanel,
 | |
|           {
 | |
|             type: 'container',
 | |
|             layout: 'flex',
 | |
|             direction: 'column',
 | |
|             align: 'center',
 | |
|             spacing: 5,
 | |
|             minWidth: 160,
 | |
|             minHeight: 160,
 | |
|             items: [
 | |
|               {
 | |
|                 type: 'label',
 | |
|                 name: 'preview',
 | |
|                 text: ' ',
 | |
|                 style: 'font-size: 40px; text-align: center',
 | |
|                 border: 1,
 | |
|                 minWidth: 140,
 | |
|                 minHeight: 80
 | |
|               },
 | |
|               {
 | |
|                 type: 'spacer',
 | |
|                 minHeight: 20
 | |
|               },
 | |
|               {
 | |
|                 type: 'label',
 | |
|                 name: 'previewTitle',
 | |
|                 text: ' ',
 | |
|                 style: 'white-space: pre-wrap;',
 | |
|                 border: 1,
 | |
|                 minWidth: 140
 | |
|               }
 | |
|             ]
 | |
|           }
 | |
|         ],
 | |
|         buttons: [{
 | |
|             text: 'Close',
 | |
|             onclick: function () {
 | |
|               win.close();
 | |
|             }
 | |
|           }]
 | |
|       });
 | |
|     };
 | |
|     var Dialog = { open: open };
 | |
| 
 | |
|     var register = function (editor) {
 | |
|       editor.addCommand('mceShowCharmap', function () {
 | |
|         Dialog.open(editor);
 | |
|       });
 | |
|     };
 | |
|     var Commands = { register: register };
 | |
| 
 | |
|     var register$1 = function (editor) {
 | |
|       editor.addButton('charmap', {
 | |
|         icon: 'charmap',
 | |
|         tooltip: 'Special character',
 | |
|         cmd: 'mceShowCharmap'
 | |
|       });
 | |
|       editor.addMenuItem('charmap', {
 | |
|         icon: 'charmap',
 | |
|         text: 'Special character',
 | |
|         cmd: 'mceShowCharmap',
 | |
|         context: 'insert'
 | |
|       });
 | |
|     };
 | |
|     var Buttons = { register: register$1 };
 | |
| 
 | |
|     global.add('charmap', function (editor) {
 | |
|       Commands.register(editor);
 | |
|       Buttons.register(editor);
 | |
|       return Api.get(editor);
 | |
|     });
 | |
|     function Plugin () {
 | |
|     }
 | |
| 
 | |
|     return Plugin;
 | |
| 
 | |
| }());
 | |
| })();
 |