TinyMCEPlugin
Integration of the Tiny MCE WYSIWYG Editor
On this page:
This is an integration of the fast and highly functional TinyMCE WYSIWYG editor. It supports a wide range of browsers, including Firefox, IE, Safari, Opera and Google Chrome (see compatibility chart). At the time of writing it doesn't work with Konqueror.
The integration uses the Foswiki:Extensions.WysiwygPlugin to translate text to and from a format that TinyMCE can edit.
This plugin is able to swap out standard text areas and replace them with WYSIWYG editors. This means you get WYSIWYG editors for textareas in forms, as well as for the main text of the topic. It can also co-exist alongside other WYSIWYG editors.
The editor automatically "switches itself off" (i.e. reverts to the old text-only window) when editing topics that contain Foswiki content it can't handle, such as complex macros.
Editor Notes
The editor uses a translator module to convert from Foswiki Topic Markup Language (TML) to HTML and back. The translator converts special macros - such as %MACROS% - to plain text, and encloses them within HTML spans using a special style calledWYSIWYG_PROTECTED. In this way the editor can detect text that is not meant to be HTML formatted. This style is also used to protect special text you enter into the editor from being interpreted when the topic is translated back into TML. If you want to add any special features that are sensitive to formatting, such as Set statements, then you should format those regions using 'Protect on save' or 'Protect forever'.
Installation Instructions
NOTES:- This plugin comes pre-installed on Foswiki. You should only need to re-install if there is an upgrade to the plugin.
- It requires the very latest revision of Wysiwyg Plugin
- When installed, it replaces the old "textarea" editor. You may still access the plaintext editor with the "Wiki Text" button provided in the toolbar, however this does not necessarily give you the original raw/wiki text version of the topic content. To bypass the TML to HTML conversion process entirely, use the
Edit wiki textlink provided by the default Foswiki skin at the bottom of the page.
configure, then you can still install manually from the command-line. See http://foswiki.org/Support/ManuallyInstallingExtensions for more help.
- Enable the Wysiwyg Plugin in
configure. - Enable the Tiny MCEPlugin in
configure. - Click on edit of any topic.
Preferences
The default configuration of Tiny MCEPlugin should prove sufficient for most users. The TinyMCE editor itself is customised through a Javascript object holding a substantial number of initialisation parameters. In previous versions of Tiny MCEPlugin, a text string making up the Javascript object was held in an ordinary Foswiki preference variableTINYMCEPLUGIN_INIT which should be removed and replaced with TINYMCEPLUGIN_INIT_TOPIC (described below) in most circumstances.
TINYMCEPLUGIN_INIT_TOPIC
To make configuration easier and less error-prone, configuration is now held in a topic section. The name of the topic is set in the preference variableTINYMCEPLUGIN_INIT_TOPIC, from which the section named TINYMCEPLUGIN_INIT is used.
For a full explanation and guidance on configuration of available TinyMCE options, see the Moxicode TinyMCE Wiki.
Below is the default configuration. If it is to be modified, it should be copied (including %START/ENDSECTION{}% macros) to a different topic to avoid customisations being overwritten when Tiny MCEPlugin is upgraded.
TINYMCEPLUGIN_INIT
%STARTSECTION{"TINYMCEPLUGIN_INIT"}%
"mode" : "textareas",
"editor_selector" : "foswikiWysiwygEdit",
"save_on_tinymce_forms" : true,
"cleanup" : true,
"theme" : "advanced",
"convert_urls" : true,
"relative_urls" : false,
"remove_script_host" : false,
"dialog_type" : "modal",
"extended_valid_elements" : "li[type]",
"setupcontent_callback" : "FoswikiTiny.setUpContent",
"urlconverter_callback" : "FoswikiTiny.convertLink",
"foswikipuburl_callback" : "FoswikiTiny.convertPubURL",
"save_callback" : "FoswikiTiny.saveCallback",%IF{
"$TINYMCEPLUGIN_DEBUG"
then="
\"debug\" : true,"
}%
"plugins" : "%IF{
"defined 'TINYMCEPLUGIN_MCEPLUGINS'"
then="%TINYMCEPLUGIN_MCEPLUGINS%"
else="%STARTSECTION{"MCEPLUGINS"}%contextmenu, table, searchreplace, autosave, paste, legacyoutput, inlinepopups, fullscreen, foswiki, foswikibuttons, foswikiimage%ENDSECTION{"MCEPLUGINS"}%"
}%%IF{
"defined 'TINYMCEPLUGIN_ADDITIONAL_MCEPLUGINS'"
then=", %TINYMCEPLUGIN_ADDITIONAL_MCEPLUGINS%"
}%",
"foswiki_secret_id" : "%WYSIWYG_SECRET_ID%",
"foswiki_vars" : {
"PUBURLPATH" : "%PUBURLPATH%",
"PUBURL" : "%PUBURL%",
"WEB" : "%BASEWEB%",
"TOPIC" : "%BASETOPIC%",
"ATTACHURL" : "%PUBURL%/%BASEWEB%/%BASETOPIC%",
"ATTACHURLPATH" : "%PUBURLPATH%/%BASEWEB%/%BASETOPIC%",
"VIEWSCRIPTURL" : "%SCRIPTURL{view}%",
"SCRIPTSUFFIX" : "%SCRIPTSUFFIX%",
"SCRIPTURL" : "%SCRIPTURL%",
"SYSTEMWEB" : "%SYSTEMWEB%"
},
"theme_advanced_toolbar_align" : "left",
"foswikibuttons_formats" : {
/* Use 'attributes : { class : "foo" }' instead of 'classes: "foo"'
* because this is how it's done in the default advanced theme shipped
* with TinyMCE which seems to be a few ms faster on cursor movement
*/
"Normal" : { "remove" : "all" },
"Heading 1" : { "block" : "h1", "remove" : "all" },
"Heading 2" : { "block" : "h2", "remove" : "all" },
"Heading 3" : { "block" : "h3", "remove" : "all" },
"Heading 4" : { "block" : "h4", "remove" : "all" },
"Heading 5" : { "block" : "h5", "remove" : "all" },
"Heading 6" : { "block" : "h6", "remove" : "all" },
"VERBATIM" : { "block" : "pre", "remove" : "all", "attributes" : { "class" : "TMLverbatim" } },
"LITERAL" : { "block" : "div", "remove" : "all", "attributes" : { "class" : "WYSIWYG_LITERAL" } },
"Protect on save" : { "block" : "div", "remove" : "all", "attributes" : { "class" : "WYSIWYG_PROTECTED" } },
"Protect forever" : { "block" : "div", "remove" : "all", "attributes" : { "class" : "WYSIWYG_STICKY" } }
},
"foswikibuttons_cursoridletime" : 250,
"paste_create_paragraphs" : true,
"paste_create_linebreaks" : false,
"paste_convert_middot_lists" : true,
"paste_convert_headers_to_strong" : false,
"paste_remove_spans" : true,
"paste_remove_styles" : true,
"paste_strip_class_attributes" : "all",
"theme_advanced_buttons1" : "%IF{
"defined 'TINYMCEPLUGIN_BUTTONS1'"
then="%TINYMCEPLUGIN_BUTTONS1%"
else="%STARTSECTION{"BUTTONS1"}%foswikiformat, separator, bold, italic, tt, colour, removeformat, separator, bullist, numlist, outdent, indent, blockquote, separator, link, unlink, anchor, separator, undo, redo, separator, search, replace%ENDSECTION{"BUTTONS1"}%"
}%%IF{
"defined 'TINYMCEPLUGIN_ADDITIONAL_BUTTONS1'"
then=", %TINYMCEPLUGIN_ADDITIONAL_BUTTONS1%"
}%",
"theme_advanced_buttons2" : "%IF{
"defined 'TINYMCEPLUGIN_BUTTONS2'"
then="%TINYMCEPLUGIN_BUTTONS2%"
else="%STARTSECTION{"BUTTONS2"}%tablecontrols, separator, attach, image, charmap, hr, separator, restoredraft, fullscreen, code, hide%ENDSECTION{"BUTTONS2"}%"
}%%IF{
"defined 'TINYMCEPLUGIN_ADDITIONAL_BUTTONS2'"
then=", %TINYMCEPLUGIN_ADDITIONAL_BUTTONS2%"
}%",
"theme_advanced_buttons3" : "%IF{
"defined 'TINYMCEPLUGIN_BUTTONS3'"
then="%TINYMCEPLUGIN_BUTTONS3%"
}%%IF{
"defined 'TINYMCEPLUGIN_ADDITIONAL_BUTTONS3'"
then=", %TINYMCEPLUGIN_ADDITIONAL_BUTTONS3%"
}%",
"autosave_interval" : "%IF{
"defined 'TINYMCEPLUGIN_AUTOSAVE_INTERVAL'"
then="%TINYMCEPLUGIN_AUTOSAVE_INTERVAL%"
else="%STARTSECTION{"AUTOSAVE_INTERVAL"}%180s%ENDSECTION{"AUTOSAVE_INTERVAL"}%"
}%",
"autosave_retention" : "%IF{
"defined 'TINYMCEPLUGIN_AUTOSAVE_RETENTION'"
then="%TINYMCEPLUGIN_AUTOSAVE_RETENTION%"
else="%STARTSECTION{"AUTOSAVE_RETENTION"}%4320m%ENDSECTION{"AUTOSAVE_RETENTION"}%"
}%",
"theme_advanced_toolbar_location" : "top",
"theme_advanced_resize_horizontal" : false,
"theme_advanced_resizing" : true,
"theme_advanced_path" : false,
"theme_advanced_statusbar_location" : "bottom",
"keep_styles" : false,
"content_css" : "%PUBURLPATH%/%SYSTEMWEB%/TinyMCEPlugin/wysiwyg%IF{
"$TINYMCEPLUGIN_DEBUG"
then="_src"
}%.css,%PUBURLPATH%/%SYSTEMWEB%/SkinTemplates/base.css,%FOSWIKI_STYLE_URL%,%FOSWIKI_COLORS_URL%"
%ENDSECTION{"TINYMCEPLUGIN_INIT"}%
- Create Main.TinyMCEPlugin, copying the text above
- Update the
TINYMCEPLUGIN_INIT_TOPICvariable to point to the newly created topic, Eg. in Site Preferences or MyWeb.WebPreferences:
* Set TINYMCEPLUGIN_INIT_TOPIC = Main.TinyMCEPlugin
Settings
| Variable | Default | Description |
|---|---|---|
TINYMCEPLUGIN_INIT |
- | A string holding the TinyMCE initialisation object. If set, TINYMCEPLUGIN_INIT_TOPIC is ignored |
TINYMCEPLUGIN_INIT_TOPIC |
System.Tiny MCEPlugin | The fully qualified Web.Topic containing a section named INIT which holds the TinyMCE initialisation parameters |
TINYMCEPLUGIN_MCEPLUGINS |
contextmenu, table, searchreplace, autosave, paste, legacyoutput, inlinepopups, fullscreen, foswiki, foswikibuttons, foswikiimage | Comma separated list of TinyMCE plugins to initialise |
TINYMCEPLUGIN_ADDITIONAL_MCEPLUGINS |
Comma separated list of additional TinyMCE plugins to initialise. | |
TINYMCEPLUGIN_BUTTONS1 |
foswikiformat, separator, bold, italic, tt, colour, removeformat, separator, bullist, numlist, outdent, indent, blockquote, separator, link, unlink, anchor, separator, undo, redo, separator, search, replace | Comma separated list of toolbar buttons (in order) for the first, second and third rows (of buttons) |
TINYMCEPLUGIN_BUTTONS2 |
tablecontrols, separator, attach, image, charmap, hr, separator, restoredraft, fullscreen, code, hide | |
TINYMCEPLUGIN_BUTTONS3 |
||
TINYMCEPLUGIN_ADDITIONAL_BUTTONS1, TINYMCEPLUGIN_ADDITIONAL_BUTTONS2, TINYMCEPLUGIN_ADDITIONAL_BUTTONS3 |
Comma separated list of toolbar buttons (in order) to be appended to the end of a button row | |
TINYMCEPLUGIN_AUTOSAVE_RETENTION |
4320m | Autosave drafts stored in the web browser are expired after this length of time (minutes or seconds). See autosave plugin notes |
TINYMCEPLUGIN_AUTOSAVE_INTERVAL |
180s | Frequency (in minutes or seconds) that the autosave plugin updates the draft stored in the web browser |
TINYMCEPLUGIN_INIT_browser |
See Browser Specific Settings below | Add extra parameters to TINYMCEPLUGIN_INIT string for a specific _browser |
TINYMCEPLUGIN_DISABLE |
0 | If set to 1, disables Tiny MCEPlugin. Please use NOWYSIWYG instead |
NOWYSIWYG |
0 | If this global setting is set to 1, Tiny MCEPlugin (and all other WYSIWYG editors) will be disabled. |
TINYMCEPLUGIN_BAD_BROWSERS |
(?i-xsm:Konqueror) |
A regular expression that matches the user-agent string of any browser for which TinyMCE should not be loaded. |
TINYMCEPLUGIN_DEBUG |
0 | If set to 1, the uncompressed version of TinyMCE Javascript and CSS sources will be loaded by the browser. Useful for debugging. |
Browser Specific Settings
Additional options may be set for specific browsers. You can define extra options for MSIE, OPERA, GECKO and SAFARI. For example,* Set TINYMCEPLUGIN_INIT_MSIE = "paste_auto_cleanup_on_paste" : falseThe defaults are:
MSIE => '',
OPERA => '',
GECKO => '"gecko_spellcheck" : true',
SAFARI => '',
CHROME => ''
TinyMCE Plugins & Toolbar Buttons
Documentation for standard plugins shipped with TinyMCE can be found at http://wiki.moxiecode.com/index.php/TinyMCE:Plugins. Documentation for standard theme_advanced toolbar buttons (Eg. superscript/subscript, strikethrough, highlight colours etc) can be found at http://wiki.moxiecode.com/index.php/TinyMCE:Control_reference.Default Plugins
These plugins are enabled by default in the standard distribution of Foswiki.| Plugin Name | Toolbar buttons | Description | Notes | |
|---|---|---|---|---|
| autosave | restoredraft | Saves the editor content to your web browser's local storage periodically so that it may be restored later | See TINYMCEPLUGIN_AUTOSAVE_INTERVAL and defaults to 180s; TINYMCEPLUGIN_AUTOSAVE_RETENTION defaults to 4320m |
|
| contextmenu | Provides context (right-click) menu capability | Allows the table plugin to offer copy & paste of rows & columns |
||
foswiki |
- | Fixup TinyMCE bugs, Foswiki integration issues | init param foswiki_autosave_no_fixup prevents fixup of autosave plugin if true; only works if foswiki is after autosave in the plugins list |
|
foswikibuttons |
tt, colour, attach, hide | Provides toolbar buttons, dialogues and formatting styles for Foswiki | List of formats populated from foswikibuttons_formats init param; ms of cursor idle time required before update of toolbar buttons/format state is set from foswikibuttons_cursoridletime param |
|
foswikiimage |
image | Provides image toolbar button, dialogue for Foswiki | ||
| fullscreen | fullscreen | Provides fullscreen capability | ||
| legacyoutput | Maintains compatibility for <font>, <u>, <b>, <strike> etc. tags |
|||
| paste | pastetext, pasteword, selectall | "Cleans" content pasted from clipboard; useful when pasting from MS Office | ||
| searchreplace | search, replace | Refer to TinyMCE documentation | ||
| table | tablecontrols, others | Refer to TinyMCE documentation |
Additional Plugins
To enable extra plugins, set theTINYMCEPLUGIN_ADDITIONAL_MCEPLUGINS variable in your Main.Site Preferences.
If the plugin also offers a toolbar button, you will need to add it into the appropriate place in the TINYMCEPLUGIN_ADDITIONAL_BUTTONS* variables.
For example, to make use of the emotions and wordcount plugins add the following to Main.Site Preferences:
---++ TinyMCE customisations * Set TINYMCEPLUGIN_ADDITIONAL_MCEPLUGINS = emotions, wordcount * Set TINYMCEPLUGIN_ADDITIONAL_BUTTONS2 = emotionsSome notable plugins:
| Plugin Name | Toolbar buttons | Description | Notes |
|---|---|---|---|
| autoresize | - | Automatically resizes the editor to the content inside it | |
| emotions | emotions | Insert smiley images into the TinyMCE editable area | |
| iespell | iespell | Provides spell check for Internet Explorers | |
| insertdatetime | insertdate, inserttime | Provides buttons to insert customised date and time strings | |
| media | media | Handles embedded media such as QuickTime, Flash, ShockWave, RealPlayer and Windows Media Player | Requires customisation of edit templates |
| spellchecker | spellchecker | Adds spellchecker functionality to TinyMCE by providing a new button that performs a AJAX call to a backend PHP page that uses PSpell/ASpell or Google spellchecker | |
| style | styleprops | Adds CSS style editing support to TinyMCE, this will enable you to edit almost any CSS style property in a visual way. | Generally, HTML/CSS markup in topics is not desirable |
| visualchars | visualchars | Adds the possibility to see invisible characters like |
|
| wordcount | - | Display the number of words down in the right corner of the editor. | |
| xhtmlxtras | cite, ins, del, abbr, acronym | Adds support for some XHTML elements, including cite, ins, del, abbr, and acronym. | Generally, XHTML markup in topics is not desirable. Foswiki plugins exist to provide similar functions with more friendly TML markup |
Frequently Asked Questions
The topic Tiny MCEFrequently Asked Questions contains more help with things like: "How do I configure the buttons in my skin?", "How do I disable the WYSIWYG?" etc.Wysiwyg Plugin Settings
Tiny MCEPlugin depends on Wysiwyg Plugin to do the conversions from HTML to TML (Topic Markup Language) and back again. For more information, see Wysiwyg Plugin.WYSIWYG_EXCLUDE - Prevent WYSIWYG editing
The global preference settingThis is not supported currently by the TinyMCE Editor. This setting is not used.
WYSIWYG_EXCLUDE can be set to make the plugin sensitive to what is in a topic, before allowing it to be edited. You can set it up to veto an edit if the topic contains: -
html- HTML tags (e.g.<div>, not including <br>), or -
macros- simple macros (e.g.%VAR%) or -
calls- macros with parameters e.g.%MACRO{...}% -
preblocks (<pre>) - HTML
comments(<!--...-->)
WYSIWYG_EDITABLE_CALLS - Exceptions to WYSIWYG_EXCLUDE
If you excludedcalls in WYSIWYG_EXCLUDE, you can still define a subset of macros that do not block edits. this is done in the global preference setting WYSIWYG_EDITABLE_CALLS, which should be a list of macro names separated by vertical bars, with no spaces, e.g: * Set WYSIWYG_EDITABLE_CALLS = COMMENT|CALENDAR|INCLUDE
You should set WYSIWYG_EXCLUDE and WYSIWYG_EDITABLE_CALLS in Site Preferences, or in Web Preferences for each web.
WYSIWYGPLUGIN_PROTECT_EXISTING_TAGS - Protect specific tags originally in the topic text
TheWYSIWYGPLUGIN_PROTECT_EXISTING_TAGS preference tells the translator
that certain HTML tags which were originally in the topic text should remain as HTML tags;
the translator will not try to convert them to TML.
The default setting for this preference is defined within the plugin.
It corresponds to div, span.
This feature may be disabled by setting the preference to a single comma.
Thi does not guarantee that HTML markup will be removed; the conversion
of HTML tags to TML markup remains subject to the other controls provided
by the WysiwygPlugin, including the WYSIWYGPLUGIN_STICKYBITS preference,
<sticky> blocks, <literal> blocks and the rules applied
to tables and lists.
WYSIWYGPLUGIN_STICKYBITS - Protect tags based upon their arguments
You can define the global preferenceWYSIWYGPLUGIN_STICKYBITS to stop the
plugin from ever trying to convert specific HTML tags into
TML when certain specific attributes are present on the tag. This is most
useful when you have styling or alignment information in tags that must be
preserved.
This preference setting is used to tell the translator which attributes, when present
on a tag, make it "stick" i.e. block conversion back to TML. For example, setting it toThis setting is used only after the page has been processed by the editor. If the editor does not support a particular tag or attribute and the editor corrupts the tag, this setting will not be helpful. It is only used to prevent an HTML tag from being converted back to TML. Format of the setting istable=background,lang;tr=valignwill stop the translator from trying to convert anytabletag that hasbackgroundorlangattributes, and anytrtag that has avalignattribute back to Foswiki| table | column |markup (regardless of where thattabletag comes from).
tag1=attrib,attrib;tag2=attrib. Attributes delimited by
comma, and tags delimited by semicolon. - The left side of the equal sign is the tag.
- The right side of the equal sign is a comma delimited list of attributes to be matched.
.*=id,on.* will ensure that any tag with an id or on* event handler is kept as
HTML.
The default setting for this preference are hard coded in the plugin. If you
wish to change the settings, the following list is the default setting coded
in the plugin:
* Set WYSIWYGPLUGIN_STICKYBITS =
.*=id,lang,title,dir,on.*;
A=accesskey,coords,shape,target;
BDO=dir;
BR=clear;
COL=char,charoff,span,valign,width;
COLGROUP=align,char,charoff,span,valign,width;
DIR=compact;
DIV=align,style;
DL=compact;
FONT=size,face;
H[0-9]=align;
HR=align,noshade,size,width;
LEGEND=accesskey,align;
LI=value;
OL=compact,start,type;
P=align;
PARAM=name,type,value,valuetype;
PRE=width;
Q=cite;
TABLE=align,bgcolor,frame,rules,summary,width;
TBODY=align,char,charoff,valign;
TD=abbr,align,axis,bgcolor,char,charoff,headers,height,nowrap,rowspan,scope,valign,width;
TFOOT=align,char,charoff,valign;
TH=abbr,align,axis,bgcolor,char,charoff,height,nowrap,rowspan,scope,valign,width,headers;
THEAD=align,char,charoff,valign;
TR=bgcolor,char,charoff,valign;
UL=compact,type
If you edit using the plain-text editor, you can use the <sticky>..</sticky> tags to delimit HTML (or TML) that you do not want to be WYSIWYG edited.
Upgrading from Tiny MCEPlugin versions prior to 05 Mar 2010 release
TheTINYMCEPLUGIN_INIT string needs to be built differently, due to the API change affecting the way custom formats are applied in TinyMCE 3.3.x since 3.2.x
If a customised TINYMCEPLUGIN_INIT string is in use, it should be re-built based on the content of this documentation. The customisations should be reviewed to determine if they are still necessary.
Known Issues of Tiny MCEPlugin
- Foswikitask:Item8475 - Foswiki introduces errant spaces into table cells
- Foswikitask:Item8582 - X11 environments: Tiny MCEPlugin editor copies current topic onto the "Primary Selection"
- Foswikitask:Item8712 - Outdenting list items in Firefox soemtimes does not work correctly
- Description: The list symbol (number, bullet, etc) sometimes disappears from the item after being outdented. When this happens, it is also not possible to outdent the item another level.
- Work-around: Position the cursor to the beginning of the line (where the symbol should appear) and press the enter key. The symbol should be restored and another outdent will be possible.
- Foswikitask:Item8981 - Copy & paste of list items into a list breaks up the list
- Description: Consult the task linked above. After the operation described, the list is broken into three.
- Work-around: Users may elect to persist with this behaviour, or alternatively, override
TINYMCEPLUGIN_MCEPLUGINSto omit thepasteplugin: however, this solution may introduce its own problems.
- Foswikitask:Item9198 - After inserting new table at top of document: unable to position cursor above
- Work-around: Use 'Save and continue' or switch to Wiki Text? and back to WYSIWYG again to allow Wysiwyg Plugin to add an empty
<p/>above the table
- Work-around: Use 'Save and continue' or switch to Wiki Text? and back to WYSIWYG again to allow Wysiwyg Plugin to add an empty
Known Issues of Wysiwyg Plugin (partial list)
For the full list, consult WysiwygPlugin documentation- Foswikitask:Item2174 - Wysiwyg Plugin removes line breaks
- Work-around: Use the
* Set NOWYSIWYG = 1setting to disable WYSIWYG on line-sensitive topics
- Work-around: Use the
- Foswikitask:Item1396 - Anchors are not handled by Wysiwyg Plugin
- Foswikitask:Item5955 - Wysiwyg Plugin fails to roundtrip tables with align="center", border attributes, etc.
- Description: Sometimes tables will fail to be converted to TML syntax (will stay as HTML) because there are attributes on the table (such as alignment or border decorations) that Wysiwyg Plugin does not know how to preserve. If such attributes are necessary, please use Var TABLE instead.
- Work-around:
- Click inside the offending table
- Click the table toolbar button (usually used to create a new table)
- With the exception of
ColsandRows, delete/reset all content from the fields on the 'General' and 'Advanced' tabs. - Write a Var TABLE macro above the offending table that adds the desired attributes safely
Plugin Info
Another great Foswiki extension from the
WikiRing - working together to improve your wiki experience!
| Author: | Crawford Currie | ||||||||||||
| Copyright: | © 2007-2010 Crawford Currie http://c-dot.co.uk | ||||||||||||
| License: | GPL (Gnu General Public License) | ||||||||||||
| This package also includes the complete sources for version 3.3.8 of the TinyMCE editor which is covered by its own license. | |||||||||||||
| Version: | 9855 (2010-11-04) | ||||||||||||
| Release: | 04 Nov 2010 | ||||||||||||
| Change History: | |||||||||||||
| ? | Foswikitask:Item2174: JS fix for deleting encoded-TML-whitespace on Firefox | ||||||||||||
| 04 Nov 2010 | Foswikitask:Item9706: Upgrade to TinyMCE 3.3.9.2 Foswikitask:Item9953: Fix JS error transitioning to WikiText from fullscreen Foswikitask:Item9952: Fix bold & italics buttons not activating on already bolded/italicised text properly Foswikitask:Item9960: Fix JS error switching tabs on the attach dialogue |
||||||||||||
| 25 Oct 2010 | Foswikitask:Item9870: Fix JS error on Internet Explorers | ||||||||||||
| 28 Sep 2010 | Foswikitask:Item9236: Enable contextmenu TinyMCE plugin, allows table row/column copy & paste Foswikitask:Item9263: Fix autosave breaking on IECollections' IE6 Foswikitask:Item9424: Use non-jQuery build to avoid IE8 resizing quirks on jquery-1.3.2 Foswikitask:Item9427: Only update button state if cursor has been idle > 300ms, improves cursor movement responsiveness in >250KiB documents on IE/slow PCs Foswikitask:Item9415: Documentation updates Foswikitask:Item9570: Make table text larger, to be the same size as normal paragraph text Foswikitask:Item9577: Apply background to protected and literal text (similar to verbatim), so that it is easier to see these special regions |
||||||||||||
| 01 Jul 2010 | Foswikitask:Item9221: Fix colour formatting problem and JS error transitioning to fullscreen Foswikitask:Item9222: Fix autosave implementation compatibility with Foswiki 1.0.x JQuery Plugin Foswikitask:Item9234: Upgrade to TinyMCE 3.3.8 |
||||||||||||
| 28 Jun 2010 | Foswikitask:Item9155: Fix applying non-heading formats in TinyMCE 3.3 Foswikitask:Item2125: Change attach dialogue button text from 'cancel' to 'close' Foswikitask:Item1482: Improve attach dialogue usability: auto-refresh attachment list after switching from upload tab; auto-select upload tab if there are zero existing attachments Foswikitask:Item1378: Fix dialogue window sizes are too small for link, attachments and colour dialogues Foswikitask:Item9210: Replace TINYMCEPLUGIN_INIT in favour of TINYMCEPLUGIN_INIT_TOPIC sectionsFoswikitask:Item9199: Fix misbehaving %AQUA% colour in the colours dialogue; grouped standard colours separate to extended coloursFoswikitask:Item1952: Make autosave plugin functional Foswikitask:Item1392: Fixed in TinyMCE 3.3: (IE only) Cursor jumps to beginning of document unintendedly Foswikitask:Item9204: Fixed in TinyMCE 3.3: TinyMCE strips out 'type' arguments when pasting Foswiki macros from MS Word |
||||||||||||
| 20 Mar 2010 | Foswikitask:Item8930: Change Foswiki integration to use more JQuery Plugin features. Fixes bug where IE6 users with latest Nat Skin? get: "Unable to install TinyMCE; <META..." | ||||||||||||
| 05 Mar 2010 | Foswikitask:Item8476: Upgrade to TinyMCE 3.3, Foswiki now uses jQuery version | ||||||||||||
| 19 Feb 2010 | Foswikitask:Item8566: Fix for sites with latest JQuery Plugin where IE users get: "Unable to install TinyMCE; <META..." | ||||||||||||
| 24 Jan 2010 | Foswikitask:Item8416: add TINYMCEPLUGIN_ADDITIONAL_MCEPLUGINS and TINYMCEPLUGIN_BUTTONS(123) to allow wiki, web and topic specific plugins to be added SD | ||||||||||||
| 29 Dec 2009 | Foswikitask:Item2447: Fix unable to apply "Normal" format in some browsers (notes added to System topic) Foswikitask:Item1462: Block attachments to unsaved AUTOINC topics |
||||||||||||
| 25 Nov 2009 | Foswikitask:Item2412: Inserting images - fixed a problem where it wasn't easy (impossible unless > 1 attachments) to select the first image in the attachment list; improved layout of dialog window where preview obscures insert/cancel buttons. | ||||||||||||
| 09 Nov 2009 | Foswikitask:Item2341: Added blockquote button and rearranged toolbars slightly; cleaned up System topic | ||||||||||||
| 29 Oct 2009 | Foswikitask:Item2245: Updated documentation, removed redundant setting: paste_auto_cleanup_on_paste : true for MSIE browsers (TinyMCE now defaults to true for all browsers) |
||||||||||||
| 21 Oct 2009 | Foswikitask:Item1558: TinyMCE project now supports Opera, so remove it from _BAD_BROWSERS | ||||||||||||
| 18 Oct 2009 | Foswikitask:Item2270: Fix wordcount plugin to show correct count when user first enters edit mode | ||||||||||||
| 17 Oct 2009 | Foswikitask:Item2245: Upgrade to TinyMCE 3.2.7 | ||||||||||||
| 20 Sep 2009 | Foswikitask:Item2121: Remove 2 MB of developer files that are not used | ||||||||||||
| 19 Sep 2009 | Foswikitask:Item2037: Fix fullscreen-to-WikiText transition | ||||||||||||
| 18 Sep 2009 | Foswikitask:Item1798: Fixed a problem where editor wants to put text elements into blocks causing unwanted new lines. Foswikitask:Item1341: Fixed a problem so that editor does not convert TML lettered and roman numeral lists back to numbered lists. |
||||||||||||
| 03 Jul 2009 | Foswikitask:Item8178: Check that the help elements are present before hiding or showing them, as they are not present in all skins. | ||||||||||||
| 06 Jun 2009 | Foswikitask:Item5628: Make browser reload the javascript when this plugin is upgraded (Michael Tempest, Colas Nahaboo) Foswikitask:Item1529: Disable "Wiki text" button until editor has loaded topic text (Michael Tempest) | ||||||||||||
| 24 May 2009 | Foswikitask:Item1205: add support for global NOWYSIWYG flag Foswikitask:Item1341: keep TML lettered & roman numeral lists (Michael Tempest) Foswikitask:Item1534: fix typewriter text (Michael Tempest) Foswikitask:Item1548: fix data-loss warning when saving from wiki-text (Michael Tempest) | ||||||||||||
| 10 Apr 2009 | Foswikitask:Item1394: fixed colour handling Foswikitask:Item8108: added safari,inlinepopups,fullscreen plugins, fixed some minor bugs on IE | ||||||||||||
| 03 Apr 2009 | Foswikitask:Item1383: Optimised the preferences Foswikitask:Item8094: fixed the pickaxe | ||||||||||||
| 15 Mar 2009 | Foswikitask:Item930: Crawford Currie upgraded to Tiny MCE 3.2.2 and recoded all the standard plugins that had to be recoded | ||||||||||||
| 21 Jan 2009 | Foswikitask:Item833: added SYSTEMWEB to foswiki_vars, simplifying the activation of the foswikilink dialog of Tiny MCEUsability Upgrade Plugin? (if installed) - Eugen Mayer | ||||||||||||
| 06 Dec 2008 | Foswikitask:Item5859: removed XHR headers that were banjaxing NTLM - Eugen Mayer | ||||||||||||
| 03 Dec 2008 | Crawford Currie re-released for the Foswiki project | ||||||||||||
| 03 Aug 2008 | TWiki 4.2.1 release version | ||||||||||||
| 04 May 2008 | TWikibug:Item5547: Change mechanism by which TMCE recognises textareas to camp on. Use class instead of element name. | ||||||||||||
| 12 Apr 2008 | TWikibug:Item4946: I think I have finally fixed non-iso-8859-1 character sets. Painful. | ||||||||||||
| 31 Mar 2008 | TWikibug:Item5314: TWikibug:Item5457: Fixed pickaxe mode for editing UTF-8. Characters above 255 are converted to entitites, which is a bit of a PITA, but at least it no longer corrupts topics. NOTE: YOU MUST UPGRADE Wysiwyg Plugin TO 16600 OR LATER | ||||||||||||
| 28 Mar 2008 | TWikibug:Item5432: added upper case file extensions for images TWikibug:Item5206: fixed expansion of simple filenames entered in image popup TWikibug:Item5462: fixed hide attachment switch | ||||||||||||
| 25 Jan 2008 | TWikibug:Item5287: links entered through dialog weren't working | ||||||||||||
| 24 Jan 2008 | TWikibug:Item4840: TWikibug:Item5138: UTF8 fixes, TWikibug:Item5022: made TT font size same as verbatim. Had to add a new style to do it, as TMCE didn't want to play with TT or CODE tags. TWikibug:Item5138: post-conversion of 8-bit entities to characters to aid searching, TWikibug:Item5254: non-fatal JS error fixed, TWikibug:Item5263: remove preview on WYSIWYG edit, TWikibug:Item5116: added Opera to bad browsers filter | ||||||||||||
| 20 Dec 2007 | TWikibug:Item5047: disable save and preview during page load TWikibug:Item5111: make the entry in the format menu sensitive to where the cursor is TWikibug:Item5022: made TT font size same as verbatim. Had to add a new style to do it, as TMCE didn't want to play with TT or CODE tags. | ||||||||||||
| 19 Nov 2007 | TWikibug:Item4742: auto-disable if Wysiwyg is not enabled TWikibug:Item4820: validate mandatory fields on save TWikibug:Item4747: add <sticky> TWikibug:Item4811: noautolink looks like an HTML construct but in fact is not; the tag is infact an "on-off" switch and does not imply any HTML structure, so cannot be converted to a DIV or a span, so has to be removed. TWikibug:Item4817: added typewriter text button TWikibug:Item4850: added font colour controls TWikibug:Item4645: added attachment management features TWikibug:Item4945: added switch to raw and back | ||||||||||||
| 16 Sep 2007 | TWikibug:Item4630: polished up the way the secret string is done, to ensure synch between perl and JS. TWikibug:Item4622: added UTF-8 handling steps that fixup malformed UTF8 strings before presenting them to the editor (saves Moz) and stops the editor passing them back to TWiki (saves IE). TWikibug:Item4603: added the draft help, so we can at least build the beta without the nasty warning | ||||||||||||
| 13 Sep 2007 | TWikibug:Item4613 fixed navigate-away prompt when unchanged TWikibug:Item4583 TWikibug:Item4604 TWikibug:Item4614 TWikibug:Item4616 A clutch of issues caused by use of the wrong encoding function when passing UTF8 parameters to REST using XMLHttp Request?. | ||||||||||||
| 12 Sep 2007 | TWikibug:Item4604 Converted to REST call for content conversion, to provide safe callback if JS is disabled in the browser TWikibug:Item4583 relaxed regex to try and make it work for UTF-8 topic names | ||||||||||||
| 11 Sep 2007 | TWikibug:Item4535 refinements to link handling to improve topic name recognition | ||||||||||||
| 07 Sep 2007 | TWikibug:Item4503 excess empty lines TWikibug:Item4486 no toc headers with unofficial syntax TWikibug:Item4560: empty lines lost TWikibug:Item4566: corrupted table on save | ||||||||||||
| 06 Sep 2007 | TWikibug:Item4557 added missing files to package | ||||||||||||
| 04 Sep 2007 | TWikibug:Item4534 TWikibug:Item4535 fixed | ||||||||||||
| 14679 | TWikibug:Item4481 TWikibug:Item4524 fixed | ||||||||||||
| 14668 | Bugfixes and refinements done as part of 4.2 release | ||||||||||||
| 14543 | Added PROTECTED style, to allow protection of special text. Disable on unsupported browsers (untested) | ||||||||||||
| 14538 | First release | ||||||||||||
| Dependencies: |
|
||||||||||||
| Plugin Home: | Foswiki:Extensions.TinyMCEPlugin | ||||||||||||
| Support: | Foswiki:Support.TinyMCEPlugin |
Attachments of TinyMCEPlugin
| I | Attachment | Action | Size | Date | Who | Comment | Attribute |
|---|---|---|---|---|---|---|---|
| |
screenshot.png | manage | 0.1 K | 01 Jan 1970 - 00:00 | Unknown User | h | |
| |
tinymce.gif | manage | 0.1 K | 01 Jan 1970 - 00:00 | Unknown User | screenshot | h |
| |
wikiringlogo20x20.png | manage | 0.1 K | 01 Jan 1970 - 00:00 | Unknown User | h |