Line: 1 to 1 | ||||||||
---|---|---|---|---|---|---|---|---|
Wysiwyg Plugin<--
| ||||||||
Deleted: | ||||||||
< < | <-- Do not attempt to edit this topic; it is auto-generated. Please add comments/questions/remarks to the Dev topic instead. --> | |||||||
Translator framework for WYSIWYG editors | ||||||||
Added: | ||||||||
> > | <-- Contributions to this plugin are appreciated. Please update the plugin page at http://twiki.org/cgi-bin/view/Plugins/WysiwygPlugin or provide feedback at http://twiki.org/cgi-bin/view/Plugins/WysiwygPluginDev. If you are a TWiki contributor please update the plugin in the SVN repository. --> | |||||||
Support for the integration of WYSIWYG (What-You-See-Is-What-You-Get) editors. On its own, the only thing this plugin gives you is a stand-alone HTML to TWiki translator script. For WYSIWYG editing in TWiki, you will also need to install a specific editor package such as TWiki:Plugins.KupuEditorContrib or TWiki:Plugins.WikiwygContrib. | ||||||||
Line: 94 to 100 | ||||||||
Other techniquesAsynchronous saves | ||||||||
Changed: | ||||||||
< < | Editors can use XmlHttpRequest to perform saves, by POSTing to the TWiki save script with the wysiwyg_edit parameter set to 1 . This parameter tells the beforeSaveHandler in the WysiwygPlugin to convert the content back to TML. See TWikiScripts for details of the other parameters to the save script. | |||||||
> > | Editors can use XmlHttpRequest to perform saves, by POSTing to the TWiki save script with the wysiwyg_edit parameter set to 1 . This parameter tells the beforeSaveHandler in the WysiwygPlugin to convert the content back to TML. See TWikiScripts for details of the other parameters to the save script. | |||||||
Once the save script has completed it responds with a redirect, either to an Oops page if the save failed, or to the appropriate post-save URL (usually a view ). The editor must be ready to handle this redirect. | ||||||||
Line: 143 to 149 | ||||||||
Plugin Configuration SettingsTranslator control | ||||||||
Changed: | ||||||||
< < |
The global TWiki Variable 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:
calls in WYSIWYG_EXCLUDE , you can still define a subset of TWiki variables that do not block edits. this is done in the global TWiki variable WYSIWYG_EDITABLE_CALLS , which should be a list of TWiki variable 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 TWikiPreferences, or in WebPreferences for each web.
You can define the global variable WYSIWYGPLUGIN_STICKYBITS to stop the plugin from ever trying to convert specific HTML tags into HTML 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 variable is used to tell the translator which attributes, when present on a tag, make it "stick" i.e. block conversion. For example, setting it to table=background,lang;tr=valign will stop the translator from trying to handle any table tag that has background or lang attributes, and any tr tag that has a valign attribute.
You can use perl regular expressions to match tag and attribute names, so .*=id,on.* will ensure that any tag with an on* event handler is kept as HTML.
The default setting for this variable is:
.*=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; DL=compact; FONT=size,face; H\d=align; HR=align,noshade,size,width; LEGEND=accesskey,align; LI=type,value; OL=compact,start,type; P=align; PARAM=name,type,value,valuetype; PRE=width; Q=cite; TABLE=align,bgcolor,border,cellpadding,cellspacing,frame,rules,summary,width; TBODY=align,char,charoff,valign; TD=abbr,align,axis,bgcolor,char,charoff,colspan,headers,height,nowrap,rowspan,scope,valign,width; TFOOT=align,char,charoff,valign; TH=abbr,align,axis,bgcolor,char,charoff,colspan,height,nowrap,rowspan,scope,valign,width,headers; THEAD=align,char,charoff,valign; TR=bgcolor,char,charoff,valign; UL=compact,typeIf 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. | |||||||
> > |
The global TWiki Variable 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:
calls in WYSIWYG_EXCLUDE , you can still define a subset of TWiki variables that do not block edits. this is done in the global TWiki variable WYSIWYG_EDITABLE_CALLS , which should be a list of TWiki variable 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 TWikiPreferences, or in WebPreferences for each web.
You can define the global variable WYSIWYGPLUGIN_STICKYBITS to stop the plugin from ever trying to convert specific HTML tags into HTML 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 variable is used to tell the translator which attributes, when present on a tag, make it "stick" i.e. block conversion. For example, setting it to table=background,lang;tr=valign will stop the translator from trying to handle any table tag that has background or lang attributes, and any tr tag that has a valign attribute.
You can use perl regular expressions to match tag and attribute names, so .*=id,on.* will ensure that any tag with an on* event handler is kept as HTML.
The default setting for this variable is:
.*=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; DL=compact; FONT=size,face; H\d=align; HR=align,noshade,size,width; LEGEND=accesskey,align; LI=type,value; OL=compact,start,type; P=align; PARAM=name,type,value,valuetype; PRE=width; Q=cite; TABLE=align,bgcolor,border,cellpadding,cellspacing,frame,rules,summary,width; TBODY=align,char,charoff,valign; TD=abbr,align,axis,bgcolor,char,charoff,colspan,headers,height,nowrap,rowspan,scope,valign,width; TFOOT=align,char,charoff,valign; TH=abbr,align,axis,bgcolor,char,charoff,colspan,height,nowrap,rowspan,scope,valign,width,headers; THEAD=align,char,charoff,valign; TR=bgcolor,char,charoff,valign; UL=compact,typeIf 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. | |||||||
Implementors note if you are using your own before/after edit handlers, you can call TWiki::Plugins::WysiwygPlugin::isWysiwygEditable() to check these controls. | ||||||||
Line: 179 to 185 | ||||||||
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Changed: | ||||||||
< < |
| |||||||
> > |
| |||||||
| ||||||||
Added: | ||||||||
> > |
| |||||||
| ||||||||
Line: 209 to 216 | ||||||||
| ||||||||
Changed: | ||||||||
< < | Related Topics: TWikiPreferences, TWikiPlugins
<-- Do not attempt to edit this topic; it is auto-generated. Please add comments/questions/remarks to the Dev topic instead. --> | |||||||
> > | Related Topics: TWikiPreferences, TWikiPlugins | |||||||
|