Smart Edit is a JavaScript editor "à la wikipedia" for TWiki.
It takes an alternate approach to the WYSIWYG one, as its goals are
The aim is to assist WikiSyntax editing by providing the following features as JavaScript code:
Smart Edit is a JavaScript application, working on Firefox , Internet Explorer and Mozilla . The code is clearly sub-optimal, and should be rewritten as it can be too slow on big topics. It is however much faster on firefox, meaning that you will be able to edit comfortably 15k topics with IE and 80k topics on Firefox. However, we use it as our default editor on our intranet.
Supported styles : Bold, Bold Italic, Italic, Formatted, Verbatim, Blockquote, Heading 1 to 6.
How does it work ?
When you click on the bold button (for example), Smart Edit gets your selection and inserts the bold tags at the right place. This editor doesn't have a context engine so if you click 2 times on the bold button, you will have 2 bold tags.
SmartEditAddOn aumatically detect blanks and line break to insert tags at the right place.
List types : Normal (bullet) and numered.
How does it work ?
Basically, it works like styles but a minimal context was developped to help you.
Configuration via the TWiki variables SMARTEDITICONSITE, SMARTEDITICONWEB, SMARTEDITICONUSER that take a list of XML values of the ICON graphics and its LABEL like
<tselement><tsname> LABEL </tsname><tsstring> ICON </tsstring></tselement>
e.g. <tselement><tsname> %ICON{lock}%</tsname><tsstring>%<nop>ICON{lock}%</tsstring></tselement>
To add more than one element, you just have to copy from <tselement>
to </tselement>
and to complete each one.
Warning: the ICON and LABEL should only use double quotes ", not simple quotes '. The %ICON{...}% construct uses double quote, as in <img src="...">
, you should not use <img src='...'>
otherwise smartedit wont run and you will stay in raw edit.
Use : Just open the icon chooser with icon button and click on your image to insert it into the text.
Basic insertion : Smart Edit provides you some basic tags to insert that are <nop>
, <br />
and <hr />
. But it is possible to configure personal strings to insert by editing a simple TWiki variable.
Configuration : via the TWiki variables SMARTEDITSTRINGSITE, SMARTEDITSTRINGWEB, SMARTEDITSTRINGUSERS that take a list of XML values of the STRING to insert and its LABEL like
<tselement><tsname> LABEL </tsname><tsstring> STRING </tsstring></tselement>
e.g. <tselement><tsname> Today's Date</tsname><tsstring> %GMTIME{$year-$mo-$day}%</tsstring></tselement>
To add more than one element, you just have to copy from <tselement>
to </tselement>
and to complete each one.
Warning: the ICON and LABEL should only use simple quotes ', not double quotes "
Smart Edit also provides you a search toolbar. You just have to type your text and you know automatically if the typed text is found into the textarea.
Info : When you are entering text into the search text box, a click on the "*return*" key automatically selects the first occurence of your text. Textarea size
Smart Edit gives you the ability to increase or decrease the textarea height with these buttons: . You can also set the textarea size to the exact number of lines in your text by clicking on the "Auto fit" button.
When a new release is available, you just have to download the zip file and to unzip it from your twiki root directory.
* Set SKIN = smarteditor, pattern
* Set SKIN = smarteditordefault, smarteditor, pattern
Set SKIN = smarteditor, editdefault, pattern
---++ Smartedit Warning: only use simple quotes ', not double quotes " in the following 3 vars: * Set SMARTEDITSTRINGSITE = <tselement><tsname>Today's Date</tsname><tsstring>%GMTIME{$year-$mo-$day}%</tsstring></tselement><tselement><tsname>User name</tsname><tsstring>%WIKIUSERNAME%</tsstring></tselement><tselement><tsname>Signature</tsname><tsstring>-- %WIKIUSERNAME% - %DATE%</tsstring></tselement><tselement><tsname>Comments, signed and dated, added at top</tsname><tsstring>%<nop>COMMENT{type='top'}%</tsstring></tselement><tselement><tsname>Comments, signed and dated, added at end</tsname><tsstring>%<nop>COMMENT{type='bottom'}%</tsstring></tselement><tselement><tsname>Comments, signed and dated, added immediately before</tsname><tsstring>%<nop>COMMENT{type='above'}%</tsstring></tselement><tselement><tsname>Bullet item added immediately before</tsname><tsstring>%<nop>COMMENT{type='bulletabove'}%</tsstring></tselement><tselement><tsname>Wiki thread mode comment, signed and dated</tsname><tsstring>%<nop>COMMENT{type='threadmode'}%</tsstring></tselement><tselement><tsname>Comments, signed and dated, added recurse after comment box</tsname><tsstring>%<nop>COMMENT{type='belowthreadmode'}%</tsstring></tselement><tselement><tsname>Comments, signed and dated, added immediately below</tsname><tsstring>%<nop>COMMENT{type='below'}%</tsstring></tselement><tselement><tsname>Comments, signed and dated, added at top of table below</tsname><tsstring>%<nop>COMMENT{type='tableprepend'}%</tsstring></tselement><tselement><tsname>Comments, signed and dated, added at end of table above</tsname><tsstring>%<nop>COMMENT{type='tableappend'}%</tsstring></tselement><tselement><tsname>Add before the comment box, after the last comment</tsname><tsstring>%<nop>COMMENT{type='after'}%</tsstring></tselement><tselement><tsname>Action of Action Tracker added to action table directly above</tsname><tsstring>%<nop>COMMENT{type='action'}%</tsstring></tselement><tselement><tsname>Tablerows adding on end</tsname><tsstring>%<nop>COMMENT{type='table'}%</tsstring></tselement><tselement><tsname>Talk using TOC adding on end</tsname><tsstring>%<nop>COMMENT{type='toctalk'}%</tsstring></tselement><tselement><tsname>Create a list of annotated bookmarks</tsname><tsstring>%<nop>COMMENT{type='bookmark'}%</tsstring></tselement><tselement><tsname>Post to a different topic and return to here</tsname><tsstring>%<nop>COMMENT{type='return'}%</tsstring></tselement> * Set SMARTEDITSTRINGWEB = * Set SMARTEDITSTRINGUSERS = Warning: only use double quotes ", not single quotes ' in the following 3 vars: * Set SMARTEDITICONSITE = <tselement><tsname> %ICON{info}%</tsname><tsstring>%<nop>ICON{info}%</tsstring></tselement><tselement><tsname> %ICON{more}%</tsname><tsstring>%<nop>ICON{more}%</tsstring></tselement><tselement><tsname> %ICON{note}%</tsname><tsstring>%<nop>ICON{note}%</tsstring></tselement><tselement><tsname> %ICON{pencil}%</tsname><tsstring>%<nop>ICON{pencil}%</tsstring></tselement><tselement><tsname> %ICON{question}%</tsname><tsstring>%<nop>ICON{question}%</tsstring></tselement><tselement><tsname> %ICON{stargold}%</tsname><tsstring>%<nop>ICON{stargold}%</tsstring></tselement><tselement><tsname> %ICON{starred}%</tsname><tsstring>%<nop>ICON{starred}%</tsstring></tselement><tselement><tsname> %ICON{stop}%</tsname><tsstring>%<nop>ICON{stop}%</tsstring></tselement><tselement><tsname> %ICON{target}%</tsname><tsstring>%<nop>ICON{target}%</tsstring></tselement><tselement><tsname> %ICON{tip}%</tsname><tsstring>%<nop>ICON{tip}%</tsstring></tselement><tselement><tsname> %ICON{warning}%</tsname><tsstring>%<nop>ICON{warning}%</tsstring></tselement><tselement><tsname> %ICON{wip}%</tsname><tsstring>%<nop>ICON{wip}%</tsstring></tselement><tselement><tsname> %ICON{watch}%</tsname><tsstring>%<nop>ICON{watch}%</tsstring></tselement><tselement><tsname> %ICON{wrench}%</tsname><tsstring>%<nop>ICON{wrench}%</tsstring></tselement><tselement><tsname> %ICON{person}%</tsname><tsstring>%<nop>ICON{person}%</tsstring></tselement><tselement><tsname> %ICON{group}%</tsname><tsstring>%<nop>ICON{group}%</tsstring></tselement><tselement><tsname> %ICON{key}%</tsname><tsstring>%<nop>ICON{key}%</tsstring></tselement><tselement><tsname> %ICON{lock}%</tsname><tsstring>%<nop>ICON{lock}%</tsstring></tselement><tselement><tsname> %ICON{new}%</tsname><tsstring>%<nop>ICON{new}%</tsstring></tselement><tselement><tsname> %ICON{todo}%</tsname><tsstring>%<nop>ICON{todo}%</tsstring></tselement><tselement><tsname> %ICON{updated}%</tsname><tsstring>%<nop>ICON{updated}%</tsstring></tselement><tselement><tsname> %ICON{done}%</tsname><tsstring>%<nop>ICON{done}%</tsstring></tselement><tselement><tsname> %ICON{closed}%</tsname><tsstring>%<nop>ICON{closed}%</tsstring></tselement><tselement><tsname> %ICON{choice-yes}%</tsname><tsstring>%<nop>ICON{choice-yes}%</tsstring></tselement><tselement><tsname> %ICON{choice-no}%</tsname><tsstring>%<nop>ICON{choice-no}%</tsstring></tselement><tselement><tsname> %ICON{choice-cancel}%</tsname><tsstring>%<nop>ICON{choice-cancel}%</tsstring></tselement><tselement><tsname> %ICON{minus}%</tsname><tsstring>%<nop>ICON{minus}%</tsstring></tselement><tselement><tsname> %ICON{plus}%</tsname><tsstring>%<nop>ICON{plus}%</tsstring></tselement><tselement><tsname> %ICON{home}%</tsname><tsstring>%<nop>ICON{home}%</tsstring></tselement><tselement><tsname> %ICON{left}%</tsname><tsstring>%<nop>ICON{left}%</tsstring></tselement><tselement><tsname> %ICON{right}%</tsname><tsstring>%<nop>ICON{right}%</tsstring></tselement><tselement><tsname> %ICON{up}%</tsname><tsstring>%<nop>ICON{up}%</tsstring></tselement><tselement><tsname> %ICON{down}%</tsname><tsstring>%<nop>ICON{down}%</tsstring></tselement> * Set SMARTEDITICONWEB = * Set SMARTEDITICONUSER =
README-SmartEditAddOn.txt
in the distrib
Add-on Author: | TWiki:Main/GaelCrova (Special thanks to TWiki:Main/ColasNahaboo and TWiki:Main/FredericLuddeni for their help and feedback) |
Add-on Version: | 23 Jan 2008 (v2) |
Change History: | |
25 Jan 2008: | v2.1: templates fixed: smartedit bars appeared on top on tinymce |
23 Jan 2008: | v2: Version for TWiki Freetown, 4.2.0 |
18 Aug 2006: | IE Toolbar width fixed |
16 Aug 2006: | Tab and SHIFT-TAB events disabled in Opera - Help in a specific topic with the viewprint template |
16 Aug 2006: | Blanks in external links fixed |
10 Aug 2006: | solved display bug for insert internal link |
09 Aug 2006: | solved some bugs on TWiki 4.0.2 |
09 Aug 2006: | Removed some debug information |
08 Aug 2006: | HTML Tags corrected |
08 Aug 2006: | IE display fixed - wiki link bugs fixed |
07 Aug 2006: | Initial version |
CPAN Dependencies: | none |
Other Dependencies: | none |
Perl Version: | 5.005 |
License: | GPL |
Add-on Home: | http://TWiki.org/cgi-bin/view/Plugins/SmartEditAddOn |
Feedback: | http://TWiki.org/cgi-bin/view/Plugins/SmartEditAddOnDev |
Appraisal: | http://TWiki.org/cgi-bin/view/Plugins/SmartEditAddOnAppraisal |
Related Topic: TWikiAddOns
-- TWiki:Main/GaelCrova - 07 Aug 2006