]> scripts.mit.edu Git - autoinstalls/wordpress.git/blob - wp-includes/js/tinymce/themes/advanced/js/charmap.js
Wordpress 3.0.6-scripts
[autoinstalls/wordpress.git] / wp-includes / js / tinymce / themes / advanced / js / charmap.js
1 tinyMCEPopup.requireLangPack();
2
3 var charmap = [
4         [' ',    ' ',  true, 'no-break space'],
5         ['&',     '&',   true, 'ampersand'],
6         ['"',    '"',   true, 'quotation mark'],
7 // finance
8         ['¢',    '¢',  true, 'cent sign'],
9         ['€',    '€', true, 'euro sign'],
10         ['£',   '£',  true, 'pound sign'],
11         ['¥',     '¥',  true, 'yen sign'],
12 // signs
13         ['©',    '©',  true, 'copyright sign'],
14         ['®',     '®',  true, 'registered sign'],
15         ['™',   '™', true, 'trade mark sign'],
16         ['‰',  '‰', true, 'per mille sign'],
17         ['µ',   'µ',  true, 'micro sign'],
18         ['·',  '·',  true, 'middle dot'],
19         ['•',    '•', true, 'bullet'],
20         ['…',  '…', true, 'three dot leader'],
21         ['′',   '′', true, 'minutes / feet'],
22         ['″',   '″', true, 'seconds / inches'],
23         ['§',    '§',  true, 'section sign'],
24         ['¶',    '¶',  true, 'paragraph sign'],
25         ['ß',   'ß',  true, 'sharp s / ess-zed'],
26 // quotations
27         ['‹',  '‹', true, 'single left-pointing angle quotation mark'],
28         ['›',  '›', true, 'single right-pointing angle quotation mark'],
29         ['«',   '«',  true, 'left pointing guillemet'],
30         ['»',   '»',  true, 'right pointing guillemet'],
31         ['‘',   '‘', true, 'left single quotation mark'],
32         ['’',   '’', true, 'right single quotation mark'],
33         ['“',   '“', true, 'left double quotation mark'],
34         ['”',   '”', true, 'right double quotation mark'],
35         ['‚',   '‚', true, 'single low-9 quotation mark'],
36         ['„',   '„', true, 'double low-9 quotation mark'],
37         ['<',      '<',   true, 'less-than sign'],
38         ['>',      '>',   true, 'greater-than sign'],
39         ['≤',      '≤', true, 'less-than or equal to'],
40         ['≥',      '≥', true, 'greater-than or equal to'],
41         ['–',   '–', true, 'en dash'],
42         ['—',   '—', true, 'em dash'],
43         ['¯',    '¯',  true, 'macron'],
44         ['‾',   '‾', true, 'overline'],
45         ['¤',  '¤',  true, 'currency sign'],
46         ['¦',  '¦',  true, 'broken bar'],
47         ['¨',     '¨',  true, 'diaeresis'],
48         ['¡',   '¡',  true, 'inverted exclamation mark'],
49         ['¿',  '¿',  true, 'turned question mark'],
50         ['ˆ',    'ˆ',  true, 'circumflex accent'],
51         ['˜',   '˜',  true, 'small tilde'],
52         ['°',     '°',  true, 'degree sign'],
53         ['−',   '−', true, 'minus sign'],
54         ['±',  '±',  true, 'plus-minus sign'],
55         ['÷',  '÷',  true, 'division sign'],
56         ['⁄',   '⁄', true, 'fraction slash'],
57         ['×',   '×',  true, 'multiplication sign'],
58         ['¹',    '¹',  true, 'superscript one'],
59         ['²',    '²',  true, 'superscript two'],
60         ['³',    '³',  true, 'superscript three'],
61         ['¼',  '¼',  true, 'fraction one quarter'],
62         ['½',  '½',  true, 'fraction one half'],
63         ['¾',  '¾',  true, 'fraction three quarters'],
64 // math / logical
65         ['ƒ',    'ƒ',  true, 'function / florin'],
66         ['∫',     '∫', true, 'integral'],
67         ['∑',     '∑', true, 'n-ary sumation'],
68         ['∞',   '∞', true, 'infinity'],
69         ['√',   '√', true, 'square root'],
70         ['∼',     '∼', false,'similar to'],
71         ['≅',    '≅', false,'approximately equal to'],
72         ['≈',   '≈', true, 'almost equal to'],
73         ['≠',      '≠', true, 'not equal to'],
74         ['≡',   '≡', true, 'identical to'],
75         ['∈',    '∈', false,'element of'],
76         ['∉',   '∉', false,'not an element of'],
77         ['∋',      '∋', false,'contains as member'],
78         ['∏',    '∏', true, 'n-ary product'],
79         ['∧',     '∧', false,'logical and'],
80         ['∨',      '∨', false,'logical or'],
81         ['¬',     '¬',  true, 'not sign'],
82         ['∩',     '∩', true, 'intersection'],
83         ['∪',     '∪', false,'union'],
84         ['∂',    '∂', true, 'partial differential'],
85         ['∀',  '∀', false,'for all'],
86         ['∃',   '∃', false,'there exists'],
87         ['∅',   '∅', false,'diameter'],
88         ['∇',   '∇', false,'backward difference'],
89         ['∗',  '∗', false,'asterisk operator'],
90         ['∝',    '∝', false,'proportional to'],
91         ['∠',     '∠', false,'angle'],
92 // undefined
93         ['´',   '´',  true, 'acute accent'],
94         ['¸',   '¸',  true, 'cedilla'],
95         ['ª',    'ª',  true, 'feminine ordinal indicator'],
96         ['º',    'º',  true, 'masculine ordinal indicator'],
97         ['†',  '†', true, 'dagger'],
98         ['‡',  '‡', true, 'double dagger'],
99 // alphabetical special chars
100         ['À',  'À',  true, 'A - grave'],
101         ['Á',  'Á',  true, 'A - acute'],
102         ['Â',   'Â',  true, 'A - circumflex'],
103         ['Ã',  'Ã',  true, 'A - tilde'],
104         ['Ä',    'Ä',  true, 'A - diaeresis'],
105         ['Å',   'Å',  true, 'A - ring above'],
106         ['Æ',   'Æ',  true, 'ligature AE'],
107         ['Ç',  'Ç',  true, 'C - cedilla'],
108         ['È',  'È',  true, 'E - grave'],
109         ['É',  'É',  true, 'E - acute'],
110         ['Ê',   'Ê',  true, 'E - circumflex'],
111         ['Ë',    'Ë',  true, 'E - diaeresis'],
112         ['Ì',  'Ì',  true, 'I - grave'],
113         ['Í',  'Í',  true, 'I - acute'],
114         ['Î',   'Î',  true, 'I - circumflex'],
115         ['Ï',    'Ï',  true, 'I - diaeresis'],
116         ['Ð',     'Ð',  true, 'ETH'],
117         ['Ñ',  'Ñ',  true, 'N - tilde'],
118         ['Ò',  'Ò',  true, 'O - grave'],
119         ['Ó',  'Ó',  true, 'O - acute'],
120         ['Ô',   'Ô',  true, 'O - circumflex'],
121         ['Õ',  'Õ',  true, 'O - tilde'],
122         ['Ö',    'Ö',  true, 'O - diaeresis'],
123         ['Ø',  'Ø',  true, 'O - slash'],
124         ['Œ',   'Œ',  true, 'ligature OE'],
125         ['Š',  'Š',  true, 'S - caron'],
126         ['Ù',  'Ù',  true, 'U - grave'],
127         ['Ú',  'Ú',  true, 'U - acute'],
128         ['Û',   'Û',  true, 'U - circumflex'],
129         ['Ü',    'Ü',  true, 'U - diaeresis'],
130         ['Ý',  'Ý',  true, 'Y - acute'],
131         ['Ÿ',    'Ÿ',  true, 'Y - diaeresis'],
132         ['Þ',   'Þ',  true, 'THORN'],
133         ['à',  'à',  true, 'a - grave'],
134         ['á',  'á',  true, 'a - acute'],
135         ['â',   'â',  true, 'a - circumflex'],
136         ['ã',  'ã',  true, 'a - tilde'],
137         ['ä',    'ä',  true, 'a - diaeresis'],
138         ['å',   'å',  true, 'a - ring above'],
139         ['æ',   'æ',  true, 'ligature ae'],
140         ['ç',  'ç',  true, 'c - cedilla'],
141         ['è',  'è',  true, 'e - grave'],
142         ['é',  'é',  true, 'e - acute'],
143         ['ê',   'ê',  true, 'e - circumflex'],
144         ['ë',    'ë',  true, 'e - diaeresis'],
145         ['ì',  'ì',  true, 'i - grave'],
146         ['í',  'í',  true, 'i - acute'],
147         ['î',   'î',  true, 'i - circumflex'],
148         ['ï',    'ï',  true, 'i - diaeresis'],
149         ['ð',     'ð',  true, 'eth'],
150         ['ñ',  'ñ',  true, 'n - tilde'],
151         ['ò',  'ò',  true, 'o - grave'],
152         ['ó',  'ó',  true, 'o - acute'],
153         ['ô',   'ô',  true, 'o - circumflex'],
154         ['õ',  'õ',  true, 'o - tilde'],
155         ['ö',    'ö',  true, 'o - diaeresis'],
156         ['ø',  'ø',  true, 'o slash'],
157         ['œ',   'œ',  true, 'ligature oe'],
158         ['š',  'š',  true, 's - caron'],
159         ['ù',  'ù',  true, 'u - grave'],
160         ['ú',  'ú',  true, 'u - acute'],
161         ['û',   'û',  true, 'u - circumflex'],
162         ['ü',    'ü',  true, 'u - diaeresis'],
163         ['ý',  'ý',  true, 'y - acute'],
164         ['þ',   'þ',  true, 'thorn'],
165         ['ÿ',    'ÿ',  true, 'y - diaeresis'],
166     ['Α',   'Α',  true, 'Alpha'],
167         ['Β',    'Β',  true, 'Beta'],
168         ['Γ',   'Γ',  true, 'Gamma'],
169         ['Δ',   'Δ',  true, 'Delta'],
170         ['Ε', 'Ε',  true, 'Epsilon'],
171         ['Ζ',    'Ζ',  true, 'Zeta'],
172         ['Η',     'Η',  true, 'Eta'],
173         ['Θ',   'Θ',  true, 'Theta'],
174         ['Ι',    'Ι',  true, 'Iota'],
175         ['Κ',   'Κ',  true, 'Kappa'],
176         ['Λ',  'Λ',  true, 'Lambda'],
177         ['Μ',      'Μ',  true, 'Mu'],
178         ['Ν',      'Ν',  true, 'Nu'],
179         ['Ξ',      'Ξ',  true, 'Xi'],
180         ['Ο', 'Ο',  true, 'Omicron'],
181         ['Π',      'Π',  true, 'Pi'],
182         ['Ρ',     'Ρ',  true, 'Rho'],
183         ['Σ',   'Σ',  true, 'Sigma'],
184         ['Τ',     'Τ',  true, 'Tau'],
185         ['Υ', 'Υ',  true, 'Upsilon'],
186         ['Φ',     'Φ',  true, 'Phi'],
187         ['Χ',     'Χ',  true, 'Chi'],
188         ['Ψ',     'Ψ',  true, 'Psi'],
189         ['Ω',   'Ω',  true, 'Omega'],
190         ['α',   'α',  true, 'alpha'],
191         ['β',    'β',  true, 'beta'],
192         ['γ',   'γ',  true, 'gamma'],
193         ['δ',   'δ',  true, 'delta'],
194         ['ε', 'ε',  true, 'epsilon'],
195         ['ζ',    'ζ',  true, 'zeta'],
196         ['η',     'η',  true, 'eta'],
197         ['θ',   'θ',  true, 'theta'],
198         ['ι',    'ι',  true, 'iota'],
199         ['κ',   'κ',  true, 'kappa'],
200         ['λ',  'λ',  true, 'lambda'],
201         ['μ',      'μ',  true, 'mu'],
202         ['ν',      'ν',  true, 'nu'],
203         ['ξ',      'ξ',  true, 'xi'],
204         ['ο', 'ο',  true, 'omicron'],
205         ['π',      'π',  true, 'pi'],
206         ['ρ',     'ρ',  true, 'rho'],
207         ['ς',  'ς',  true, 'final sigma'],
208         ['σ',   'σ',  true, 'sigma'],
209         ['τ',     'τ',  true, 'tau'],
210         ['υ', 'υ',  true, 'upsilon'],
211         ['φ',     'φ',  true, 'phi'],
212         ['χ',     'χ',  true, 'chi'],
213         ['ψ',     'ψ',  true, 'psi'],
214         ['ω',   'ω',  true, 'omega'],
215 // symbols
216         ['ℵ', 'ℵ', false,'alef symbol'],
217         ['ϖ',     'ϖ',  false,'pi symbol'],
218         ['ℜ',    'ℜ', false,'real part symbol'],
219         ['ϑ','ϑ',  false,'theta symbol'],
220         ['ϒ',   'ϒ',  false,'upsilon - hook symbol'],
221         ['℘',  '℘', false,'Weierstrass p'],
222         ['ℑ',   'ℑ', false,'imaginary part'],
223 // arrows
224         ['←',    '←', true, 'leftwards arrow'],
225         ['↑',    '↑', true, 'upwards arrow'],
226         ['→',    '→', true, 'rightwards arrow'],
227         ['↓',    '↓', true, 'downwards arrow'],
228         ['↔',    '↔', true, 'left right arrow'],
229         ['↵',   '↵', false,'carriage return'],
230         ['⇐',    '⇐', false,'leftwards double arrow'],
231         ['⇑',    '⇑', false,'upwards double arrow'],
232         ['⇒',    '⇒', false,'rightwards double arrow'],
233         ['⇓',    '⇓', false,'downwards double arrow'],
234         ['⇔',    '⇔', false,'left right double arrow'],
235         ['∴',  '∴', false,'therefore'],
236         ['⊂',     '⊂', false,'subset of'],
237         ['⊃',     '⊃', false,'superset of'],
238         ['⊄',    '⊄', false,'not a subset of'],
239         ['⊆',    '⊆', false,'subset of or equal to'],
240         ['⊇',    '⊇', false,'superset of or equal to'],
241         ['⊕',   '⊕', false,'circled plus'],
242         ['⊗',  '⊗', false,'circled times'],
243         ['⊥',    '⊥', false,'perpendicular'],
244         ['⋅',    '⋅', false,'dot operator'],
245         ['⌈',   '⌈', false,'left ceiling'],
246         ['⌉',   '⌉', false,'right ceiling'],
247         ['⌊',  '⌊', false,'left floor'],
248         ['⌋',  '⌋', false,'right floor'],
249         ['⟨',    '〈', false,'left-pointing angle bracket'],
250         ['⟩',    '〉', false,'right-pointing angle bracket'],
251         ['◊',     '◊', true,'lozenge'],
252         ['♠',  '♠', false,'black spade suit'],
253         ['♣',   '♣', true, 'black club suit'],
254         ['♥',  '♥', true, 'black heart suit'],
255         ['♦',   '♦', true, 'black diamond suit'],
256         [' ',    ' ', false,'en space'],
257         [' ',    ' ', false,'em space'],
258         [' ',  ' ', false,'thin space'],
259         ['‌',    '‌', false,'zero width non-joiner'],
260         ['‍',     '‍', false,'zero width joiner'],
261         ['‎',     '‎', false,'left-to-right mark'],
262         ['‏',     '‏', false,'right-to-left mark'],
263         ['­',     '­',  false,'soft hyphen']
264 ];
265
266 tinyMCEPopup.onInit.add(function() {
267         tinyMCEPopup.dom.setHTML('charmapView', renderCharMapHTML());
268 });
269
270 function renderCharMapHTML() {
271         var charsPerRow = 20, tdWidth=20, tdHeight=20, i;
272         var html = '<table border="0" cellspacing="1" cellpadding="0" width="' + (tdWidth*charsPerRow) + '"><tr height="' + tdHeight + '">';
273         var cols=-1;
274
275         for (i=0; i<charmap.length; i++) {
276                 if (charmap[i][2]==true) {
277                         cols++;
278                         html += ''
279                                 + '<td class="charmap">'
280                                 + '<a onmouseover="previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');" onfocus="previewChar(\'' + charmap[i][1].substring(1,charmap[i][1].length) + '\',\'' + charmap[i][0].substring(1,charmap[i][0].length) + '\',\'' + charmap[i][3] + '\');" href="javascript:void(0)" onclick="insertChar(\'' + charmap[i][1].substring(2,charmap[i][1].length-1) + '\');" onclick="return false;" onmousedown="return false;" title="' + charmap[i][3] + '">'
281                                 + charmap[i][1]
282                                 + '</a></td>';
283                         if ((cols+1) % charsPerRow == 0)
284                                 html += '</tr><tr height="' + tdHeight + '">';
285                 }
286          }
287
288         if (cols % charsPerRow > 0) {
289                 var padd = charsPerRow - (cols % charsPerRow);
290                 for (var i=0; i<padd-1; i++)
291                         html += '<td width="' + tdWidth + '" height="' + tdHeight + '" class="charmap">&nbsp;</td>';
292         }
293
294         html += '</tr></table>';
295
296         return html;
297 }
298
299 function insertChar(chr) {
300         tinyMCEPopup.execCommand('mceInsertContent', false, '&#' + chr + ';');
301
302         // Refocus in window
303         if (tinyMCEPopup.isWindow)
304                 window.focus();
305
306         tinyMCEPopup.editor.focus();
307         tinyMCEPopup.close();
308 }
309
310 function previewChar(codeA, codeB, codeN) {
311         var elmA = document.getElementById('codeA');
312         var elmB = document.getElementById('codeB');
313         var elmV = document.getElementById('codeV');
314         var elmN = document.getElementById('codeN');
315
316         if (codeA=='#160;') {
317                 elmV.innerHTML = '__';
318         } else {
319                 elmV.innerHTML = '&' + codeA;
320         }
321
322         elmB.innerHTML = '&amp;' + codeA;
323         elmA.innerHTML = '&amp;' + codeB;
324         elmN.innerHTML = codeN;
325 }