JasonWoof Got questions, comments, patches, etc.? Contact Jason Woofenden
vanilla ckeditor-3.5.3
[ckeditor.git] / _source / plugins / specialchar / plugin.js
1 /*\r
2 Copyright (c) 2003-2011, CKSource - Frederico Knabben. All rights reserved.\r
3 For licensing, see LICENSE.html or http://ckeditor.com/license\r
4 */\r
5 \r
6 /**\r
7  * @file Special Character plugin\r
8  */\r
9 \r
10 CKEDITOR.plugins.add( 'specialchar',\r
11 {\r
12         // List of available localizations.\r
13         availableLangs : { en:1 },\r
14 \r
15         init : function( editor )\r
16         {\r
17                 var pluginName = 'specialchar',\r
18                         plugin = this;\r
19 \r
20                 // Register the dialog.\r
21                 CKEDITOR.dialog.add( pluginName, this.path + 'dialogs/specialchar.js' );\r
22 \r
23                 editor.addCommand( pluginName,\r
24                         {\r
25                                 exec : function()\r
26                                 {\r
27                                         var langCode = editor.langCode;\r
28                                         langCode = plugin.availableLangs[ langCode ] ? langCode : 'en';\r
29 \r
30                                         CKEDITOR.scriptLoader.load(\r
31                                                         CKEDITOR.getUrl( plugin.path + 'lang/' + langCode + '.js' ),\r
32                                                         function()\r
33                                                         {\r
34                                                                 CKEDITOR.tools.extend( editor.lang.specialChar, plugin.langEntries[ langCode ] );\r
35                                                                 editor.openDialog( pluginName );\r
36                                                         });\r
37                                 },\r
38                                 modes : { wysiwyg:1 },\r
39                                 canUndo : false\r
40                         });\r
41 \r
42                 // Register the toolbar button.\r
43                 editor.ui.addButton( 'SpecialChar',\r
44                         {\r
45                                 label : editor.lang.specialChar.toolbar,\r
46                                 command : pluginName\r
47                         });\r
48         }\r
49 } );\r
50 \r
51 /**\r
52   * The list of special characters visible in Special Character dialog.\r
53   * @type Array\r
54   * @example\r
55   * config.specialChars = [ '"', '’', [ '&custom;', 'Custom label' ] ];\r
56   * config.specialChars = config.specialChars.concat( [ '"', [ '’', 'Custom label' ] ] );\r
57   */\r
58 CKEDITOR.config.specialChars =\r
59         [\r
60                 '!','"','#','$','%','&',"'",'(',')','*','+','-','.','/',\r
61                 '0','1','2','3','4','5','6','7','8','9',':',';',\r
62                 '<','=','>','?','@',\r
63                 'A','B','C','D','E','F','G','H','I','J','K','L','M','N','O',\r
64                 'P','Q','R','S','T','U','V','W','X','Y','Z',\r
65                 '[',']','^','_','`',\r
66                 'a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p',\r
67                 'q','r','s','t','u','v','w','x','y','z',\r
68                 '{','|','}','~',\r
69                 "€", "‘", "’", "“", "”", "–", "—", "¡", "¢", "£", "¤", "¥", "¦", "§", "¨", "©", "ª", "«", "¬", "®", "¯", "°", "&", "²", "³", "´", "µ", "¶", "·", "¸", "¹", "º", "&", "¼", "½", "¾", "¿", "À", "Á", "Â", "Ã", "Ä", "Å", "Æ", "Ç", "È", "É", "Ê", "Ë", "Ì", "Í", "Î", "Ï", "Ð", "Ñ", "Ò", "Ó", "Ô", "Õ", "Ö", "×", "Ø", "Ù", "Ú", "Û", "Ü", "Ý", "Þ", "ß", "à", "á", "â", "ã", "ä", "å", "æ", "ç", "è", "é", "ê", "ë", "ì", "í", "î", "ï", "ð", "ñ", "ò", "ó", "ô", "õ", "ö", "÷", "ø", "ù", "ú", "û", "ü", "ü", "ý", "þ", "ÿ", "Œ", "œ", "Ŵ", "&#374", "&#373", "ŷ", "‚", "‛", "„", "…", "™", "►", "•", "→", "⇒", "⇔", "♦", "≈"\r
70         ];\r