| Topics in TWiki web: | Changed: | Changed by: |
ATasteOfTWiki | 18 Mar 2004 - 08:31 - NEW | PeterThoeny |
| ![]() |
| ![]() |
| r1.6 > r1.5 > r1.4 |
| ![]() |
| MyCo.MyTopic | |
| Changes | Index | Search | Go | ||
| MyCo.MyTopic | |
| Changes | Index | Search | Go | ||
| Edit | Attach | Diffs | r1.2 > r1.1 | More | |
| Revision r1.2 - 13 Feb 2004 - 09:09 GMT - TWikiPresenter |
Copyright © 1999-2013 by the contributing authors.
All material on this collaboration platform is the property of the contributing authors. Ideas, requests, problems regarding Galeon? Send feedback. |
the world is an OblateSpheroid
_Everyone_ *knows* that =the world= is an OblateSpheroid
Actually it is perfectly and absolutely flatappears as
Actually it is perfectly and absolutely flat
_Actually_ it is *perfectly* and __absolutely__ flatappears as
Actually it is perfectly and absolutely flat
| You type | You see |
|---|---|
---+ This is a heading | This is a heading |
---++ And so is this | And so is this |
like this | You type | You see |
|---|---|
* Bullet * Sub-bullet |
|
1 | Cat | Feline | | Bear | Ursine | | Wolf | Vulpine |appears as
| Cat | Feline |
| Bear | Ursine |
| Wolf | Vulpine |
[[BumpyWords][bumpy words]] appears as bumpy words
[[http://www..google.com][google]] appears as google
<nop>
<nop>_word_ appears as _word_
Attachment ![]() |
Action | Size | Date | Who | Comment |
|---|---|---|---|---|---|
|
|
manage | 9.6 K | 13 Feb 2004 - 18:41 | MushroomMagicMan | Attached image file |
%ACTION...
%CALENDAR...%
%COMMENT...
%CHART...
%EDITTABLE...
%RENDERLIST...
%SLIDESHOWSTART...
%CALC...
%TABLE...
%DRAWING...
ATasteOfTWikiTemplate | 18 Mar 2004 - 08:29 - NEW | PeterThoeny |
| %SLIDETITLE% | |
|
|
%SLIDETEXT% |
|
%SLIDENAVFIRST% %SLIDENAVPREV%
Slide %SLIDENUM% of %SLIDEMAX%
%SLIDENAVNEXT% %SLIDENAVLAST% Copyright © 2013 by the contributing authors |
|
AdminSkillsAssumptions | 16 Dec 2003 - 07:48 - r1.3 | PeterThoeny |
configure, make, etc. This is often not necessary on Linux or Windows.
mc -ac and ESC 1 to get help.
-- TWiki:Main.RichardDonkin - 27 Apr 2002
AppendixFileSystem | 04 Jul 2004 - 18:27 - r1.13 | TommiKomulainen |
twiki - to whatever you like by changing it in the TWiki.cfg configuration file. However, to keep the current installation and future upgrades simple, you should leave the five main subdirectories intact:
| Directory: | Files: | Used for: |
|---|---|---|
twiki | list | Start-up info |
twiki/bin | list | Perl scripts |
twiki/lib | list | Configuration file, main library, Perl system modules, Plugins directory |
twiki/pub | list | Public files (eg: images) and FileAttachments and their RCS histories |
twiki/data | list | Individual topics (page content) and their RCS histories |
twiki/templates | list | HTML templates, used by TWiki scripts |
twiki | File: | Used for: |
|---|---|
index.html | Links to launch TWiki after install and for files in this directory |
license.txt | GNU General Public License and TWiki-specific info |
readme.txt | General TWiki start-up info with relevant URLs |
TWikiDocumentation.html | All documentation packaged as a single page |
TWikiHistory.html | TWiki development timeline: versions, features, developers |
twiki/bin | File: | Used for: |
|---|---|
.htaccess.txt | Authentication. Rename to .htaccess and customize if used |
attach | Shows the attach file page (FileAttachment) |
edit | Edit a topic |
geturl | Fetch URL data |
installpasswd | Install new password by admin |
mailnotify | Script called by cron job to notify users of changes |
manage | Manage script to create new webs |
oops | Shows an OK or oops dialog |
passwd | Reset and change password |
preview | Preview topic after edit |
rdiff | See differences of topics |
register | Register new users |
rename | Rename/move topics and move attachments |
save | Saves a topic, called by preview |
search | Displays search results |
setlib.cfg | Location of the TWiki libraries. Customize if needed |
statistics | Create statistics topic |
testenv | Test CGI environment variables |
upload | Does file upload (FileAttachment) |
view | View a topic ( the script ) |
viewfile | View a file attachment |
twiki/lib lib/TWiki/Plugins directories contain configuration, library and function files, and TWikiPlugins. Full file list:
| File: | Used for: |
|---|---|
TWiki.cfg | Main configuration, used by TWiki.pm |
TWiki.pm | Main TWiki library |
TWiki/Access.pm | Access control |
TWiki/Attach.pm | Attachment handling |
TWiki/Form.pm | Form handling |
TWiki/Func.pm | Public functions that Plugins may use |
TWiki/Meta.pm | Meta data in topics |
TWiki/Net.pm | SMTP mail handling |
TWiki/Plugins.pm | Plugin handling |
TWiki/Prefs.pm | Preferences handling |
TWiki/Search.pm | Search engine, used by wiki.pm |
TWiki/Store.pm | Back-end storage, *.txt text file and *.txt,v RCS repository file handling |
TWiki/Store/RcsFile.pm | Generic file handling code, a class |
TWiki/Store/RcsWrap.pm | Wrappers around RCS executables, a class that inherits from RcsFile |
TWiki/Store/RcsLite.pm | A Perl RCS implemention, a class that inherits from RcsFile |
TWiki/Plugins/DefaultPlugin.pm | Handles some legacy rules |
TWiki/Plugins/EmptyPlugin.pm | Empty plugin, use to create your own |
TWiki/Plugins/InterwikiPlugin.pm | Use aliases as links for predefined URLs |
twiki/pub pub directory stores topic-related files, including images used by TWiki and FileAttachments. Attachments are stored in subdirectories created with the related topic name. You can also upload files directly for and link manually (but not through Attach) Partial file list:
| File: | Used for: |
|---|---|
favicon.ico | ICO file |
wikiHome.gif | GIF file |
icn/_filetypes.txt | Lookup table to translate file extension to file type |
icn/bat.gif | GIF file for file type |
icn/bmp.gif | GIF file for file type |
| ... | ... |
TWiki/FileAttachment/Sample.txt | TEXT file: sample |
TWiki/FileAttachment/Smile.gif | GIF image: sample |
TWiki/FileAttachment/Smile.gif,v | RCS repository for GIF file |
TWiki/PreviewBackground/blankltgraybg.gif | GIF image |
TWiki/PreviewBackground/blankwhitebg.gif | GIF image |
TWiki/PreviewBackground/previewbg.gif | GIF image: Preview view background |
TWiki/PreviewBackground/preview2bg.gif | GIF image: Alternate preview view background |
TWiki/TWikiLogos/twikiRobot121x54.gif | GIF image: TWiki logo |
| ... | ... |
TWiki/TWikiTemplates/testscreen.gif | GIF image: Screen shot |
TWiki/WabiSabi/wabisabi.gif | GIF image: illustration |
Know/IncorrectDllVersionW32PTH10DLL/W32PTH10.DLL | DLL file: sample |
twiki/data Main, TWiki, Know, Sandbox - with documentation and demo content, a Trash web for browser-based, recoverable topic deletion, and a _default directory containing a core topic set required to start a new web. Partial file list:
| File: | Used for: |
|---|---|
.htpasswd | Basic Authentication (htaccess) users file with username and encrypted password pairs |
debug.txt | Program-generated messages useful for debugging |
mime.types | Recognized file formats |
warning.txt | Diagnostic messages for identifying problems |
_default/.changes | Per web record of topic changes |
_default/.mailnotify | Per web timestamp of most recent email notification |
_default/WebChanges.txt | Display most recent topic changes in web |
_default/WebChanges.txt,v | Revisions history (RCS) |
_default/Home.txt | Default web home page |
_default/Home.txt,v | Revisions history (RCS) |
_default/WebIndex.txt | Lists all topics in a web |
_default/WebIndex.txt,v | Revisions history (RCS) |
_default/WebNotify.txt | Subscribe/unsubscribe to web changes email alert |
_default/WebNotify.txt,v | Revisions history (RCS) |
_default/WebPreferences.txt | Per web Preference Settings |
_default/WebPreferences.txt,v | Revisions history (RCS) |
_default/WebSearch.txt | Per web search options |
_default/WebSearch.txt,v | Revisions history (RCS) |
_default/WebStatistics.txt | Generates web usage statistics |
_default/WebStatistics.txt,v | Revisions history (RCS) |
_default/WebTopicList.txt | Lists all topics in a web in compact format |
_default/WebTopicList.txt,v | Revisions history (RCS) |
| ... | ... |
twiki/templates | File: | Used for: |
|---|---|
attach.tmpl | Attach (FileAttachments) control screen |
attachagain.tmpl | Attachment control screen |
attachnew.tmpl | Attachment control screen |
changeform.tmpl | Control screen to change the form in edit mode |
changes.tmpl | Displays list of recently changed topics |
edit.iejs.tmpl | Edit window with IE-specific JavaScript |
edit.tmpl | Main edit window |
mailnotify.tmpl | Email notification |
moveattachment.tmpl | Move attachment control screen |
oopsaccesschange.tmpl | Error message |
oopsaccesscreateweb.tmpl | Error message |
oopsaccessgroup.tmpl | Error message |
oopsaccessrename.tmpl | Error message |
oopsaccessview.tmpl | Error message |
oopsauth.tmpl | Error message |
oopsbadpwformat.tmpl | Error message |
oopschangepasswd.tmpl | Error message |
oopsempty.tmpl | Error message |
oopslocked.tmpl | Error message |
oopslockedrename.tmpl | Error message |
oopsmanage.tmpl | Error message |
oopsmissing.tmpl | Error message |
oopsmore.tmpl | More topic actions message |
oopsmoveerr.tmpl | Error message |
oopsnoformdef.tmpl | Error message |
oopsnotwikiuser.tmpl | Error message |
oopsnoweb.tmpl | Error message |
oopspreview.tmpl | Error message |
oopsregemail.tmpl | Error message |
oopsregexist.tmpl | Error message |
oopsregpasswd.tmpl | Error message |
oopsregrequ.tmpl | Error message |
oopsregthanks.tmpl | Error message |
oopsregwiki.tmpl | Error message |
oopsrenameerr.tmpl | Error message |
oopsrenamenotwikiword.tmpl | Error message |
oopsresetpasswd.tmpl | Error message |
oopsrev.tmpl | Error message |
oopssave.tmpl | Error message |
oopssaveerr.tmpl | Error message |
oopssendmailerr.tmpl | Error message |
oopstopicexists.tmpl | Error message |
oopsupload.tmpl | Error message |
oopswrongpassword.tmpl | Error message |
preview.tmpl | Preview Changes screen |
rdiff.tmpl | Displays text changes before & after Diffs |
registernotify.tmpl | Registration notification |
rename.tmpl | Rename/move control screen (choose web & new topic tile |
renamebase.tmpl | Used by other rename templates |
renameconfirm.tmpl | Confirms a pre-specified rename, ex: undoing a rename |
renamerefs.tmpl | Display if rename done, but some references not changed (topics were locked) |
search.tmpl | Search screen |
searchbookview.tmpl | Search results with full topic content |
searchformat.tmpl | Search screen for formatted search |
searchmeta.tmpl | Search screen |
searchrenameview.tmpl | Used by rename to list references to topic being renamed |
twiki.tmpl | Master template: definitions are used by other templates |
view.plain.tmpl | Skin for bare bone topic view without header/footer |
view.print.tmpl | Skin for printable topic view with a simple header/footer |
view.rss.tmpl | Skin for topic view in RDF XML format |
view.tmpl | Main topic view - the standard regular Web page |
twiki twiki - will probably be your domain or login name, eg: yourdomain yourdomain and can't be changed; same for nobody nobody files further down. Also, in the bin directory, scripts might need a .cgi (sometimes .pl) extension._
twiki/bin:
drwxrwxr-x 2 twiki twiki 4096 Jan 7 23:56 . drwxrwxr-x 5 twiki twiki 4096 Nov 18 12:21 .. -rw-rw-r-- 1 twiki twiki 979 Aug 3 19:36 .htaccess -rw-rw-r-- 1 twiki twiki 1598 Jun 1 2002 .htaccess.txt -rwxrwxr-x 1 twiki twiki 4986 Jan 4 17:27 attach -rwxrwxr-x 1 twiki twiki 3734 Jan 4 17:27 changes -rwxrwxr-x 1 twiki twiki 9362 Jan 4 18:04 edit -rwxrwxr-x 1 twiki twiki 1878 Jan 4 17:28 geturl -rwxrwxr-x 1 twiki twiki 4587 Jan 4 17:28 installpasswd -rwxrwxr-x 1 twiki twiki 7231 Jan 6 09:04 mailnotify -rwxrwxr-x 1 twiki twiki 6000 Dec 11 01:26 makedistrib -rwxrwxr-x 1 twiki twiki 8228 Jan 4 18:25 manage -rwxrwxr-x 1 twiki twiki 2445 Jan 4 18:08 oops -rwxrwxr-x 1 twiki twiki 6936 Jan 4 18:08 passwd -rwxrwxr-x 1 twiki twiki 5820 Jan 4 17:30 preview -rwxrwxr-x 1 twiki twiki 9235 Jan 4 17:31 rdiff -rwxrwxr-x 1 twiki twiki 10584 Jan 4 18:09 register -rwxrwxr-x 1 twiki twiki 14746 Jan 5 00:14 rename -rwxrwxr-x 1 twiki twiki 4800 Jan 4 18:09 save -rwxrwxr-x 1 twiki twiki 4729 Jan 4 17:32 search -rw-rw-r-- 1 twiki twiki 1446 Jan 8 01:03 setlib.cfg -rwxrwxr-x 1 twiki twiki 19261 Jan 4 17:33 statistics -rwxrwxr-x 1 twiki twiki 30626 Jan 4 17:33 testenv -rwxrwxr-x 1 twiki twiki 14306 Jan 4 18:11 upload -rwxrwxr-x 1 twiki twiki 11414 Jan 5 01:12 view -rwxrwxr-x 1 twiki twiki 2944 Jan 5 00:36 viewfileDirectory
twiki/templates/:
drwxrwxr-x 2 twiki twiki 4096 Dec 11 00:38 . drwxrwxr-x 4 twiki twiki 4096 Jan 8 01:03 .. -rw-rw-r-- 1 twiki twiki 2590 Jan 7 22:53 attach.tmpl -rw-rw-r-- 1 twiki twiki 1604 Aug 3 2001 attachagain.tmpl -rw-rw-r-- 1 twiki twiki 449 Aug 3 2001 attachnew.tmpl -rw-rw-r-- 1 twiki twiki 1276 Dec 9 21:48 changeform.tmpl -rw-rw-r-- 1 twiki twiki 1620 Dec 9 21:48 changes.tmpl -rw-rw-r-- 1 twiki twiki 12777 Jan 7 22:54 edit.iejs.tmpl -rw-rw-r-- 1 twiki twiki 2801 Jan 7 22:54 edit.tmpl -rw-rw-r-- 1 twiki twiki 975 Dec 9 21:48 mailnotify.tmpl -rw-rw-r-- 1 twiki twiki 1606 Jan 7 22:54 moveattachment.tmpl -rw-rw-r-- 1 twiki twiki 570 Aug 1 2001 oopsaccesschange.tmpl -rw-rw-r-- 1 twiki twiki 596 Apr 13 2002 oopsaccesscreateweb.tmpl -rw-rw-r-- 1 twiki twiki 586 Aug 1 2001 oopsaccessgroup.tmpl -rw-rw-r-- 1 twiki twiki 573 Aug 1 2001 oopsaccessrename.tmpl -rw-rw-r-- 1 twiki twiki 573 Aug 1 2001 oopsaccessview.tmpl -rw-rw-r-- 1 twiki twiki 997 Nov 11 22:21 oopsauth.tmpl -rw-rw-r-- 1 twiki twiki 405 Aug 1 2001 oopsbadpwformat.tmpl -rw-rw-r-- 1 twiki twiki 344 Jul 31 2001 oopschangepasswd.tmpl -rw-rw-r-- 1 twiki twiki 624 Jul 31 2001 oopsempty.tmpl -rw-rw-r-- 1 twiki twiki 891 Dec 30 15:51 oopslocked.tmpl -rw-rw-r-- 1 twiki twiki 589 Dec 30 15:55 oopslockedrename.tmpl -rw-rw-r-- 1 twiki twiki 678 Apr 12 2002 oopsmanage.tmpl -rw-rw-r-- 1 twiki twiki 328 Jul 31 2001 oopsmissing.tmpl -rw-rw-r-- 1 twiki twiki 2352 Apr 13 2002 oopsmngcreateweb.tmpl -rw-rw-r-- 1 twiki twiki 2322 Jan 7 22:55 oopsmore.tmpl -rw-rw-r-- 1 twiki twiki 407 Aug 1 2001 oopsmoveerr.tmpl -rw-rw-r-- 1 twiki twiki 1132 Nov 30 2001 oopsnoformdef.tmpl -rw-rw-r-- 1 twiki twiki 520 Jan 4 18:21 oopsnotwikiuser.tmpl -rw-rw-r-- 1 twiki twiki 1495 Apr 7 2002 oopsnoweb.tmpl -rw-rw-r-- 1 twiki twiki 393 Aug 1 2001 oopspreview.tmpl -rw-rw-r-- 1 twiki twiki 340 Dec 10 14:14 oopsregemail.tmpl -rw-rw-r-- 1 twiki twiki 475 Jun 10 2002 oopsregexist.tmpl -rw-rw-r-- 1 twiki twiki 345 Aug 1 2001 oopsregpasswd.tmpl -rw-rw-r-- 1 twiki twiki 356 Aug 1 2001 oopsregrequ.tmpl -rw-rw-r-- 1 twiki twiki 540 Aug 1 2001 oopsregthanks.tmpl -rw-rw-r-- 1 twiki twiki 679 Aug 1 2001 oopsregwiki.tmpl -rw-rw-r-- 1 twiki twiki 502 Mar 24 2002 oopsrenameerr.tmpl -rw-rw-r-- 1 twiki twiki 433 May 19 2002 oopsrenamenotwikiword.tmpl -rw-rw-r-- 1 twiki twiki 506 Jun 10 2002 oopsresetpasswd.tmpl -rw-rw-r-- 1 twiki twiki 957 Jan 7 22:55 oopsrev.tmpl -rw-rw-r-- 1 twiki twiki 774 Aug 1 2001 oopssave.tmpl -rw-rw-r-- 1 twiki twiki 477 Aug 1 2001 oopssaveerr.tmpl -rw-rw-r-- 1 twiki twiki 465 Jun 10 2002 oopssendmailerr.tmpl -rw-rw-r-- 1 twiki twiki 379 Aug 1 2001 oopstopicexists.tmpl -rw-rw-r-- 1 twiki twiki 342 Jul 31 2001 oopsupload.tmpl -rw-rw-r-- 1 twiki twiki 364 Aug 1 2001 oopswrongpassword.tmpl -rw-rw-r-- 1 twiki twiki 2603 Jan 7 22:55 preview.tmpl -rw-rw-r-- 1 twiki twiki 1719 Jan 7 22:56 rdiff.tmpl -rw-rw-r-- 1 twiki twiki 1160 Dec 9 21:48 registernotify.tmpl -rw-rw-r-- 1 twiki twiki 993 Jun 23 2002 rename.tmpl -rw-rw-r-- 1 twiki twiki 2369 Jan 7 22:56 renamebase.tmpl -rw-rw-r-- 1 twiki twiki 471 May 31 2002 renameconfirm.tmpl -rw-rw-r-- 1 twiki twiki 595 May 31 2002 renamerefs.tmpl -rw-rw-r-- 1 twiki twiki 1818 Jan 7 22:56 search.tmpl -rw-rw-r-- 1 twiki twiki 1676 Jan 7 22:57 searchbookview.tmpl -rw-rw-r-- 1 twiki twiki 980 Jan 7 22:57 searchformat.tmpl -rw-rw-r-- 1 twiki twiki 149 Sep 13 2001 searchmeta.tmpl -rw-rw-r-- 1 twiki twiki 2071 Jan 7 22:57 searchrenameview.tmpl -rw-rw-r-- 1 twiki twiki 2284 Dec 9 21:48 twiki.tmpl -rw-rw-r-- 1 twiki twiki 419 Dec 9 21:48 view.plain.tmpl -rw-rw-r-- 1 twiki twiki 827 Dec 9 21:48 view.print.tmpl -rw-rw-r-- 1 twiki twiki 300 Dec 14 17:16 view.rss.tmpl -rw-rw-r-- 1 twiki twiki 1629 Jan 7 22:58 view.tmplDirectory
twiki/data/:
drwxrwxr-x 8 nobody nobody 4096 Jan 3 23:50 . drwxrwxr-x 4 twiki twiki 4096 Jan 8 01:03 .. -rw-rw-rw- 1 twiki twiki 210 Jan 11 15:58 .htpasswd drwxrwxr-x 2 nobody nobody 4096 Dec 11 02:15 Know drwxrwxr-x 2 nobody nobody 4096 Jan 11 17:45 Main drwxrwxr-x 2 nobody nobody 4096 Dec 11 02:15 Sandbox drwxrwxr-x 2 nobody nobody 8192 Jan 11 22:45 TWiki drwxrwxr-x 2 nobody nobody 4096 Dec 11 02:15 Trash drwxrwxr-x 2 nobody nobody 4096 Dec 11 01:01 _default -rw-rw-rw- 1 twiki twiki 0 Aug 2 14:16 debug.txt -rw-rw-r-- 1 nobody nobody 36630 Jan 11 22:26 log200301.txt -rw-rw-r-- 1 twiki twiki 3419 Aug 13 2001 mime.types -rw-rw-rw- 1 twiki twiki 1320 Dec 11 00:18 warning.txtPartial file list for
twiki/data/Main:
.txt,v.
drwxrwxr-x 2 nobody nobody 4096 Jan 11 17:45 . drwxrwxr-x 8 nobody nobody 4096 Jan 3 23:50 .. -rw-rw-rw- 1 twiki twiki 3662 Jan 11 16:29 .changes -rw-rw-rw- 1 twiki twiki 9 Oct 25 2001 .mailnotify -rw-r--r-- 1 nobody nobody 280 Dec 15 2000 TokyoOffice.txt -rw-r--r-- 1 nobody nobody 774 Dec 15 2000 TokyoOffice.txt,v -rw-r--r-- 1 nobody nobody 124 Aug 16 2001 WebChanges.txt -r--r--r-- 1 nobody nobody 526 Aug 16 2001 WebChanges.txt,v -rw-r--r-- 1 nobody nobody 1721 Jun 28 2002 WebHome.txt -r--r--r-- 1 nobody nobody 11314 Jun 28 2002 WebHome.txt,v -rw-r--r-- 1 nobody nobody 176 Nov 24 2001 WebIndex.txt -r--r--r-- 1 nobody nobody 483 Nov 24 2001 WebIndex.txt,v -rw-r--r-- 1 nobody nobody 729 Mar 24 2001 WebNotify.txt -r--r--r-- 1 nobody nobody 2981 Mar 24 2001 WebNotify.txt,v -rw-r--r-- 1 nobody nobody 3670 Apr 12 2002 WebPreferences.txt -r--r--r-- 1 nobody nobody 8203 Apr 12 2002 WebPreferences.txt,v -rw-r--r-- 1 nobody nobody 158 Aug 7 2001 WebSearch.txt -r--r--r-- 1 nobody nobody 18332 Aug 7 2001 WebSearch.txt,v -rw-r--r-- 1 nobody nobody 850 Dec 11 00:58 WebStatistics.txt -r--r--r-- 1 nobody nobody 1690 Dec 11 00:58 WebStatistics.txt,v -rw-r--r-- 1 nobody nobody 182 Nov 24 2001 WebTopicList.txt -r--r--r-- 1 nobody nobody 371 Nov 24 2001 WebTopicList.txt,vDirectory
twiki/pub/:
drwxrwxr-x 8 nobody nobody 4096 Nov 18 12:31 . drwxrwxr-x 3 twiki twiki 4096 Nov 18 12:31 .. drwxrwxr-x 3 nobody nobody 4096 Nov 18 12:31 Know drwxrwxr-x 2 nobody nobody 4096 Apr 7 2002 Main drwxrwxr-x 2 nobody nobody 4096 Apr 20 2002 Sandbox drwxrwxr-x 8 nobody nobody 4096 Nov 18 12:31 TWiki drwxrwxr-x 2 nobody nobody 4096 Dec 3 2001 Trash -rw-rw-r-- 1 twiki twiki 1078 Jan 14 2000 favicon.ico drwxrwxr-x 2 twiki twiki 4096 Nov 18 12:31 icn -rw-rw-r-- 1 twiki twiki 2877 Jun 7 1999 wikiHome.gifPartial file list for
twiki/pub/icn/:
drwxrwxr-x 2 twiki twiki 4096 Nov 18 12:31 . drwxrwxr-x 8 nobody nobody 4096 Nov 18 12:31 .. -rw-rw-r-- 1 twiki twiki 801 Mar 26 1999 _filetypes.txt -rw-rw-r-- 1 twiki twiki 143 Mar 9 1999 bat.gif -rw-rw-r-- 1 twiki twiki 926 Mar 9 1999 bmp.gif -rw-rw-r-- 1 twiki twiki 141 Mar 25 1999 c.gif -rw-rw-r-- 1 twiki twiki 144 Mar 9 1999 dll.gif -rw-rw-r-- 1 twiki twiki 152 Mar 9 1999 doc.gifDirectory
twiki/pub/TWiki:
drwxrwx--x 8 nobody nobody 4096 Nov 18 12:31 . drwxrwxr-x 8 nobody nobody 4096 Nov 18 12:31 .. drwxrwxr-x 2 nobody nobody 4096 Nov 18 12:31 FileAttachment drwxrwxr-x 2 nobody nobody 4096 Nov 18 12:31 PreviewBackground drwxrwxr-x 2 nobody nobody 4096 Nov 18 12:31 TWikiDocGraphics drwxrwxr-x 2 nobody nobody 4096 Nov 18 12:31 TWikiLogos drwxrwxr-x 2 nobody nobody 4096 Nov 18 12:31 TWikiTemplates drwxrwxr-x 2 nobody nobody 4096 Nov 18 12:31 WabiSabiDirectory
twiki/pub/TWiki/FileAttachment:
drwxrwxr-x 2 nobody nobody 4096 Nov 18 12:31 . drwxrwx--x 8 nobody nobody 4096 Nov 18 12:31 .. -rw-rw-r-- 1 nobody nobody 30 Jul 22 1999 Sample.txt -rw-rw-r-- 1 nobody nobody 94 Jun 7 1999 Smile.gif -r--r--r-- 1 nobody nobody 81 Aug 15 10:14 Smile.gif,v-- PeterThoeny - 11 Jan 2003
BookView | 23 Oct 2002 - 05:29 - r1.2 | PeterThoeny |
BumpyWord | 10 Jul 2004 - 23:35 - NEW | TWikiGuest |
ChangePassword | 17 Dec 2003 - 08:31 - r1.8 | PeterThoeny |
.htpassword file managed by TWiki. It does not apply if you are using external authentication, such as an IT managed password system. (remove this note if you are using Basic Authentication; else replace this topic with a note describing how to change the password in your organization)
DefaultPlugin | 21 Mar 2004 - 08:12 - r1.6 | PeterThoeny |
%INCLUDE:"TopicName"% ) if Plugin Preferences variable OLDINCLUDE is set to 1
*_text_* as bold italic text. Test if installed: This is bold italic
TWiki/Plugins/DefaultPlugin.pm to add your own rules or to enable JosWiki rules.
%<plugin>_<setting>%, i.e. %DEFAULTPLUGIN_SHORTDESCRIPTION%
*_text_* as bold italic text.
%INCLUDE:"TopicName"% syntax:
data/debug.txt)
| Plugin Author: | TWiki:Main.AndreaSterbini, TWiki:Main.PeterThoeny |
| Plugin Version: | 21 Mar 2004 |
| Change History: | |
| 21 Mar 2004: | Added afterSaveHandler |
| 14 Jul 2001: | Changed to plug&play |
| 27 Feb 2001: | Initial version |
| CPAN Dependencies: | none |
| Other Dependencies: | none |
| Perl Version: | 5.0 |
| Plugin Home: | http://TWiki.org/cgi-bin/view/Plugins/DefaultPlugin |
| Feedback: | http://TWiki.org/cgi-bin/view/Plugins/DefaultPluginDev |
DeleteOrRenameATopic | 16 Dec 2003 - 07:41 - r1.6 | PeterThoeny |
Trash web, where it's hidden but can be "undeleted" with system administrator access.
Click [More] on the control bar at the bottom of the page you want to change, then choose [Rename/move], and make your changes to that screen. There's a link that launches to the ManagingTopics reference page in a pop-up window.
NOTE: The configuration of your site and your own access permissions determine whether you can access these functions.
Note for site administrators: To remove a topic permanently move it to the Trash web, then with file-level access, delete the .txt and .txt,v files manually from /twiki/data/Trash.
Back to: TWikiFAQ
-- PeterThoeny - 09 May 2003
DeleteOrRenameAnAttachment | 09 May 2003 - 06:19 - NEW | PeterThoeny |
TrashAttachment topic in the Trash web, where it's hidden but can be "undeleted" with system administrator access. Please note that you cannot rename an attachment in the current TWiki release.
Click on action on the file in the FileAttachment table, then in the Update attachment screen choose [Move attachment], and make your changes to that screen.
NOTE: The configuration of your site and your own access permissions determine whether you can access these functions.
Note for system administrators: To remove an attachment permanently move it to the Trash.TrashAttachment topic, then with file-level access, delete the file attachment and its ,v repository file manually from twiki/pub/Trash/TrashAttachment.
Back to: TWikiFAQ
-- PeterThoeny - 09 May 2003
DontNotify | 13 Jul 2001 - 23:56 - r1.2 | PeterThoeny |
DONTNOTIFYCHECKBOX preferences variable. See TWikiPreferences for more.
EditDoesNotIncreaseTheRevision | 01 Sep 2001 - 00:19 - r1.2 | PeterThoeny |
EditTablePlugin | 09 May 2004 - 07:21 - r1.8 | PeterThoeny |
%EDITTABLE{...}% variable. Each column can be a text field, a drop down box, a date field, etc. Multiple tables per topic are editable, but only one at a time can be edited.
%EDITTABLE{...}% variable just before an existing table to make it editable, or add the variable anywhere in a topic to start a new table. Parameters:
| Parameter | Comment | Default |
|---|---|---|
header | Specify the header format of a new table like "|*Food*|*Drink*|". Useful to start a table with only a button | (no header) |
format | The format of one column when editing the table. A cell can be a text input field, or any of these edit field types: - Text input field (1 line): | text, <size>, <initial value> | - Textarea input field: | textarea, <rows>x<columns>, <initial value> | - Drop down box: | select, <size>, <option 1>, <option 2>, etc | - Fixed label: | label, 0, <label text> | - Row number: | row, <offset> | - Date: | date, <size>, <initial value>, <DHTML date format> | | "text, 16" for all cells |
changerows | Rows can be added and removed if "on";Rows can be added but not removed if "add" | CHANGEROWS Plugin setting |
quietsave | Quiet Save button is shown if "on", hidden if "off" | QUIETSAVE Plugin setting |
include | Other topic defining the EDITTABLE parameters. The first %EDITTABLE% in the topic is used. This is useful if you have many topics with the same table format and you want to update the format in one place. | (none) |
helptopic | Topic name containing help text shown below the table when editing a table. The %STARTINCLUDE% and %STOPINCLUDE% variables can be used in the topic to specify what is shown. | (no help text) |
headerislabel | Table header cells are read-only (labels) if "on"; header cells can be edited if "off" or "0" | "on" |
editbutton | Set edit button text, e.g. "Edit this table"; set button image with alt text, e.g. "Edit table, %PUBURL%/%TWIKIWEB%/TWikiDocGraphics/edittopic.gif"; hide edit button at the end of the table with "hide" (Note: Button is automatically hidden if an edit button is present in a cell) | EDITBUTTON Plugin setting |
<initial value> (of text input field) and <label text> (of fixed label) get expanded when a new row is added. This can be used for example to add a timestamp to a label. You can escape characters if you do not want that:
| Text: | To Escape: |
|---|---|
$quot | Double quote ("). Alternatively write \" to escape it |
$percnt | Percent sign (%) |
$dollar | Dollar sign ($) |
$nop or $nop() | Is a "no operation" |
The date field type allows one to choose a date with a popup calendar. Popup calendar works for Netscape 6.0 or better, all other Gecko-based browsers, Internet Explorer 5.0 or better for Windows, Opera 7 and Konqueror 3.1.2. The ... button is inactive if the browser cannot support the popup calendar. It uses the nice Mishoo DHTML calendar, see also TWiki:Codev/JavaScriptDatePickerForForm %EDITCELL{ "type, ..." }% variable at the end of the cell content. This is useful to override the per column %EDITTABLE{ format="..." }% settings, or to create tables with key/value rows. All edit field types of the format="..." parameter are supported. For example, to define a text field, type: | cell content %EDITCELL{ "text, 20" }% |
It is also possible to place the edit button inside a cell instead of default location below the table. Type | %EDITCELL{ "editbutton, 1, Edit this table" }% | to show a button, or | %EDITCELL{ "editbutton, 1, Edit table, Image-URL" }% | to show a button image with alternate text.
Note: The %EDITCELL{ }%=variable cannot be used by itself; place an =%EDITTABLE{ }%=variable at the beginning of a table where you want to use =%EDITCELL{ }% variables.
%EDITTABLE{ header="|*Nr*|*Text field sandbox*|*Drop down sandbox*|*Timestamp*|" format="| row, -1 | text, 20, init | select, 1, one, two, three, four | label, 0, %SERVERTIME{"$day $mon $year $hour:$min"}% |" changerows="on" }%
Note: Please use TWiki:Sandbox.EditTablePluginTesting if you want to try out this Plugin
If this plugin is installed you will see an [ Edit table ] button above; when you click on it you get this form:
The following example shows a simple table with key/value rows. The default edit field type for the value column is a text field. This is overloaded by a selector for the Gender, and a date picker for the DOB. This is typically used by TWiki applications where new topics with tables are created based on a template topic.
You type:
%EDITTABLE{ format="| label | text, 40 |" }%
|*Key*|*Value*|
| Name: | John Smith |
| Gender: | M %EDITCELL{select, 1, , F, M}% |
| DOB: | 1999/12/31 %EDITCELL{date, 10}% |
| City: | New York |
|
Screenshot:
|
Screenshot in edit mode:
|
%<plugin>_<setting>%, for example, %EDITTABLEPLUGIN_SHORTDESCRIPTION%
data/debug.txt. Default: 0
on, off, add
on to show the Quiet Save button, off to hide
button text, or specify alternate text, image URL
calendar-<code>.js language file: en, af, br, ca, cs-win, da, de, du, el, es, fr, hr, hr-utf8, hu, it, jp, nl, no, pl, pt, ro, ru, sk, sp, sv, tr, zh
JSCALENDAR* settings first in the TWiki Preferences, then in above Plugin settings
| ... ||) and cell justification (e.g. | centered | right |)
%ATTACHURL% get expanded unless they are in a label
%EDITTABLE{}% statements on the same line in the source
select,1,%<nop>X%,%<nop>Y%
EditTablePlugin.zip in your twiki installation directory. Content:
| File: | Description: |
|---|---|
data/TWiki/EditTablePlugin.txt | Plugin topic |
data/TWiki/EditTablePlugin.txt,v | Plugin topic repository |
lib/TWiki/Plugins/EditTablePlugin.pm | Plugin Perl module |
pub/TWiki/EditTablePlugin/edittable.gif | Edit table button image |
pub/TWiki/EditTablePlugin/*.gif | Screenshots and Mishoo DHTML calendar images |
pub/TWiki/EditTablePlugin/README | Mishoo DHTML calendar README |
pub/TWiki/EditTablePlugin/release-notes.html | Mishoo DHTML calendar release notes |
pub/TWiki/EditTablePlugin/*.js | Mishoo DHTML calendar JavaScript files |
pub/TWiki/EditTablePlugin/calendar-system.css | Mishoo DHTML calendar stylesheet |
viewauth script to authenticate the user. As described in TWikiAccessControl, copy the view script to viewauth (or better, create a symbolic link) and add viewauth to the list of authenticated scripts in the .htaccess file.
| Plugin Author: | TWiki:Main/PeterThoeny |
| Plugin Version: | 07 Apr 2004 |
| Change History: | |
| 07 Apr 2004: | Fixed bug where two tables got updated when you edit and save a table included into a topic containing other edit tables |
| 02 Mar 2004: | Default for %EDITCELL{editbutton}% is EDITBUTTON preference |
| 27 Feb 2004: | Added QUIETSAVE setting and quietsave parameter; image for Edit button |
| 18 Feb 2004: | Doc fixes; allow edit button anywhere in a cell not just at the end of a cell |
| 17 Feb 2004: | Added per cell definition of edit field types with %EDITCELL{}% variable; added headerislabel and editbutton parameters |
| 20 Dec 2003: | Fixed bug where calendar did not work after adding a row (TWiki:Main/PaulineCheung); added all language files of Mishoo DHTML calendar 0.9.5 |
| 13 Dec 2003: | Added CHANGEROWS, JSCALENDARDATEFORMAT, JSCALENDARLANGUAGE, JSCALENDAROPTIONS settings |
| 16 Oct 2003: | small typo fixed (garbled if ---+ header on top) |
| 15 Oct 2003: | new date field type with javascript calendar - CN |
| 14 Oct 2003: | docfix: the documentation page was an old one - CN |
| 13 Oct 2003: | bugfix: %-vars in select were resetted to first on add/del row - CN |
| 18 Sep 2003: | incompatibility: changed default of changerows to on; support for %-vars, Quiet save for saving without notification; all other fixes in Dev topic integrated - CN |
| 08 Nov 2002: | Prevent variable expansion in label text; added escape characters |
| 27 Jun 2002: | New helptopic parameter |
| 26 Jun 2002: | Support for variables in included EDITTABLE parameters; fixed problem with HTML in cells |
| 21 May 2002: | Added fixed label format; new changerows="add" parameter |
| 27 Apr 2002: | Fixed bug where text after a double quote in a cell disappeared |
| 18 Apr 2002: | Fixed bug where table was breaking when pasting multiple lines into an edit field using Netscape on Unix |
| 08 Apr 2002: | Check for change permission and edit lock of topic |
| 05 Apr 2002: | Initial version |
| CPAN Dependencies: | none |
| Other Dependencies: | Mishoo DHTML calendar (version 0.9.5 preinstalled); TWiki version 01 Feb 2003 or later |
| Perl Version: | 5.0 |
| TWiki:Plugins/Benchmark: | GoodStyle 98%, FormattedSearch 98%, EditTablePlugin 95% |
| Plugin Home: | http://TWiki.org/cgi-bin/view/Plugins/EditTablePlugin |
| Feedback: | http://TWiki.org/cgi-bin/view/Plugins/EditTablePluginDev |
EmptyPlugin | 21 Mar 2004 - 08:04 - r1.6 | PeterThoeny |
TWiki/Plugins/EmptyPlugin.pm to <name>Plugin.pm and customize the plugin.
<name>Plugin topic in the TWiki web. Do so by visiting http://TWiki.org/cgi-bin/view/Plugins/ and starting a new topic to get the default plugin topic text (don't save the topic). Customize your plugin topic to your needs.
%<plugin>_<setting>%, i.e. %EMPTYPLUGIN_SHORTDESCRIPTION%
data/debug.txt)
| Plugin Author: | TWiki:Main.AndreaSterbini, TWiki:Main.PeterThoeny |
| Plugin Version: | 21 Mar 2003 |
| Change History: | |
| 21 Mar 2004: | Added afterSaveHandler |
| 14 Jul 2001: | Changed to plug&play |
| 27 Feb 2001: | Initial version |
| CPAN Dependencies: | none |
| Other Dependencies: | none |
| Perl Version: | 5.0 |
| TWiki:Plugins/Benchmark: | GoodStyle 99%, FormattedSearch 99%, EmptyPlugin 99% |
| Plugin Home: | http://TWiki.org/cgi-bin/view/Plugins/EmptyPlugin |
| Feedback: | http://TWiki.org/cgi-bin/view/Plugins/EmptyPluginDev |
ExampleTopicTemplate | 16 Dec 2003 - 08:26 - r1.3 | PeterThoeny |
FileAttachment | 08 May 2004 - 21:52 - r1.13 | PeterThoeny |
Attach link at the bottom of the page. The Attach screen lets you browse for a file, add a comment, and upload it. The uploaded file will show up in the File Attachment table.
*.php files are renamed to *.php.txt so that no one can place code that would be read in a .php file.
%ATTACHFILESIZELIMIT% variable of the TWikiPreferences, currently set at 10000 KB.
Manage on the Attachment to be moved.
Move. The attachment and its version history are moved. The original location is stored as topic Meta Data.
Trash, topic TrashAttachment.
Attach file: Sample.txt
Edit topic and enter: %ATTACHURL%/Sample.txt
Preview: %ATTACHURL%/Sample.txt text appears as: http://galeon.sourceforge.net/twiki/pub/TWiki/FileAttachment/Sample.txt, a link to the text file.
%PUBURL%/%WEB%/OtherTopic/Sample.txt (if it's within the same web)
%PUBURL%/Otherweb/OtherTopic/Sample.txt (if it's in a different web)
Attach file: Sample.txt
Edit topic and write text: %INCLUDE{"%ATTACHURL%/Sample.txt"}%
Attach file: Smile.gif
Edit topic and write text: %ATTACHURL%/Smile.gif
Preview: text appears as
, an image.
Attachment Action Size Date Who Comment Sample.txt
manage 0.1 K 22 Jul 2000 - 19:37 PeterThoeny Just a sample Smile.gif
manage 0.1 K 22 Jul 2000 - 19:38 PeterThoeny Smiley face
Manage link takes you to a new page that looks like this:
h means the attachment is hidden, it isn't listed when viewing a topic.
Hide file checkbox, then click Change properties.
FileAttribute | 17 Mar 2002 - 09:14 - r1.2 | PeterThoeny |
FormattedSearch | 05 Aug 2005 - 17:08 - r1.15 | JeremyHolms |
%SEARCH{...}% variable documented in TWikiVariables has a fixed format for the search result, that is, a table consisting of topic names and topic summaries. Use the format="..." parameter to specify a customized format of the search result. The string of the format parameter is typically a bullet list or table row containing variables (such as %SEARCH{ "food" format="| $topic | $summary |" }%).
header="..." parameter
Use the header parameter to specify the header of a search result. It should correspond to the format of the format parameter. This parameter is optional. header="| *Topic:* | *Summary:* |"
2. format="..." parameter
Use the format parameter to specify the format of one search hit.
format="| $topic | $summary |"
Variables that can be used in the format string:
| Name: | Expands To: |
|---|---|
$web | Name of the web |
$topic | Topic name |
$topic(20) | Topic name, "- " hyphenated each 20 characters |
$topic(30, -<br />) | Topic name, hyphenated each 30 characters with separator "-<br />" |
$topic(40, ...) | Topic name, shortended to 40 characters with "..." indication |
$text | Formatted topic text. In case of a multiple="on" search, it is the line found for each search hit. |
$locked | LOCKED flag (if any) |
$date | Time stamp of last topic update, e.g. 14 May 2013 - 15:44 |
$isodate | Time stamp of last topic update, e.g. 2013-05-14T15:44Z |
$rev | Number of last topic revision, e.g. 1.4 |
$username | Login name of last topic update, e.g. jsmith |
$wikiname | Wiki user name of last topic update, e.g. JohnSmith |
$wikiusername | Wiki user name of last topic update, like Main.JohnSmith |
$createdate | Time stamp of topic revision 1.1 |
$createusername | Login name of topic revision 1.1, e.g. jsmith |
$createwikiname | Wiki user name of topic revision 1.1, e.g. JohnSmith |
$createwikiusername | Wiki user name of topic revision 1.1, e.g. Main.JohnSmith |
$summary | Topic summary |
$formname | The name of the form attached to the topic; empty if none |
$formfield(name) | The field value of a form field; for example, $formfield(TopicClassification) would get expanded to PublicFAQ. This applies only to topics that have a TWikiForm |
$formfield(name, 10) | Form field value, "- " hyphenated each 10 characters |
$formfield(name, 20, -<br />) | Form field value, hyphenated each 20 characters with separator "-<br />" |
$formfield(name, 30, ...) | Form field value, shortended to 30 characters with "..." indication |
$pattern(reg-exp) | A regular expression pattern to extract some text from a topic (does not search meta data; use $formfield instead). In case of a multiple="on" search, the pattern is applied to the line found in each search hit. The pattern must cover the whole text (topic or line). For example, $pattern(.*?\*.*?Email\:\s*([^\n\r]+).*) extracts the email address from a bullet of format * Email: .... This example has non-greedy .*? patterns to scan for the first occurance of the Email bullet; use greedy .* patterns to scan for the last occurance. |
$n or $n() | New line |
$nop or $nop() | Is a "no operation". This variable gets removed; useful for nested search |
$quot | Double quote ("). Alternatively write \" to escape it |
$percnt | Percent sign (%) |
$dollar | Dollar sign ($) |
$pattern(reg-exp), specify a RegularExpression that scans from start to end and contains the text you want to keep in parenthesis, like $pattern(.*?(from here.*?to here).*). You need to make sure that the integrity of a web page is not compromised; for example, if you include a table make sure to include everything including the table end tag.
%SEARCH{ "FAQ" scope="topic" nosearch="on" nototal="on" header=" * *Topic: Summary:*" format=" * [[$topic]]: $summary" }%
To get this:
| *Topic:* | *OperatingSystem:* | *OsVersion:* | %SEARCH{ "[T]opicClassification.*?value=\"[P]ublicFAQ\"" scope="text" regex="on" nosearch="on" nototal="on" format="| [[$topic]] | $formfield(OperatingSystem) | $formfield(OsVersion) |" }%
To get this:
| Topic: | OperatingSystem: | OsVersion: |
|---|---|---|
| IncorrectDllVersionW32PTH10DLL | OsWin | 95/98 |
| WinDoze95Crash | OsWin | 95 |
%SEARCH{ "__Back to\:__ TWikiFAQ" scope="text" regex="on" nosearch="on" nototal="on" header="TWiki FAQs:" format=" * $pattern(.*?FAQ\:[\n\r]*([^\n\r]+).*) [[$topic][Answer...]]" }%
To get this:
TWiki FAQs:
%SEARCH{ "culture" format=" * $topic is referenced by: (list all references)" nosearch="on" nototal="on" }%
%SEARCH{ "(topic found in first search)" format="$topic" nosearch="on" nototal="on" separator=", " }%
$percnt to escape the leading percent of the second search
\" to escape the double quotes
$dollar to escape the $ of $topic
$nop to escape the }% sequence
%SEARCH{ "culture" format=" * $topic is referenced by:$n * $percntSEARCH{ \"$topic\" format=\"$dollartopic\" nosearch=\"on\" nototal=\"on\" separator=\", \" }$nop%" nosearch="on" nototal="on" }%
To get this:
%SEARCH{ "\.*" scope="topic" regex="on" nosearch="on" nototal="on" order="modified" reverse="on" format="| [[$topic]] | $wikiusername | $date |" limit="7" }%
To get this:
| WebStatistics | TWikiGuest | 09 Jul 2006 - 23:55 |
| WebRssBase | CrispinFlowerday | 05 Aug 2005 - 19:32 |
| TWikiShorthand | JeremyHolms | 05 Aug 2005 - 17:23 |
| WikiReferences | JeremyHolms | 05 Aug 2005 - 17:22 |
| WikiSyntax | JeremyHolms | 05 Aug 2005 - 17:20 |
| FormattedSearch | JeremyHolms | 05 Aug 2005 - 17:08 |
| WebRss | PhilipLangdale | 05 Aug 2005 - 07:07 |
%CALC{$SET(weekold, $TIMEADD($TIME(), -7, day))}% %SEARCH{ "." scope="topic" regex="on" nosearch="on" nototal="on" order="modified" reverse="on" format="$percntCALC{$IF($TIME($date) < $GET(weekold), <nop>, | [[$topic]] | $wikiusername | $date | $rev |)}$percnt" limit="100" }%
weekold variable to the serialized date of exactly one week ago
$percnt makes sure that the CALC gets executed once for each search hit
weekold date
<nop> is returned, which gets removed at the end of the TWiki rendering process
%URLPARAM{"..."}% variable. Example:
Write this:
<form action="%SCRIPTURLPATH%/TWiki/FormattedSearch">
Find Topics:
<input type="text" name="q" size="32" value="%URLPARAM{"q"}%" />
<input type="submit" value="Search" />
</form>
Result:
%SEARCH{ search="%URLPARAM{"q"}%" format=" * $web.$topic: %BR% $summary" nosearch="on" }%
To get this:
Result:
Number of topics: 0
-- TWiki:Main.PeterThoeny - 16 Mar 2004
GnuGeneralPublicLicense | 01 Sep 2001 - 00:20 - r1.2 | PeterThoeny |
GoBox | 29 Jan 2003 - 08:16 - NEW | PeterThoeny |
GoodStyle | 02 Aug 2005 - 00:05 - r1.11 | TWikiGuest |
-- Main.TWikiGuest - 14 May 2013
-- [[Main.TWikiGuest][ZXQ]] - 14 May 2013
* Initials: ZXQ to your home page.
Contributors: at the end of the page
http://etcete.ra/... - it'll be clear to anyone where they're headed on click. Or you can type [[http://etcete.ra/ website]] to get website
01 Sep 2003 or 2003/09/01 is preferred. It's clearer than the xx/xx/xx format, where a date like 9/1/01 can mean either Jan or Sep, depending on the local conventions of the readers. For months, use the first three letters: Jan, Feb, Mar, Apr,...
Edit on the lower toolbar. To see earlier versions, click More, then check Raw text format and click View revision. A bit of HTML experience can't hurt, but you'll soon see with TWikiShorthand how far that is from necessary.
HiddenAttachment | 13 Nov 2001 - 22:02 - NEW | PeterThoeny |
Home | 02 Aug 2005 - 00:06 - r1.84 | TWikiGuest |
| Welcome to TWiki: a flexible, powerful, secure, yet simple web-based collaboration platform. Use TWiki to run a project development space, a document management system, a knowledge base or any other groupware tool on either an intranet or on the Internet. This is the place to learn about TWiki features, find where to download it, and try it out for yourself... |
The official TWikiTM site is http://twiki.org/ |
TWiki User's GuideDocumentation for TWiki users.
|
- DefaultPlugin: This plugin can be used to specify some simple custom rendering rules. It also renders depreciated
*_text_*as bold italic text.- SpreadSheetPlugin: Add spreadsheet calculation like
"$SUM( $ABOVE() )"to tables located in Galeon topics.- EditTablePlugin: Edit TWiki tables using edit fields, date pickers and drop down boxes
- InterwikiPlugin: Link
ExternalSite:Pagetext to external sites based on aliases defined in the InterWikis topic- RenderListPlugin: Render bullet lists in a variety of formats
- SlideShowPlugin: Create web based presentations based on topics with headings.
- SmiliesPlugin: Render smilies as icons, like
:-)foror
:cool:for![]()
- TablePlugin: Control attributes of tables and sorting of table columns
| Web | Galeon Site Map | Use to... |
|---|---|---|
| Main |
Welcome to Galeon... Users - tour this expandable virtual workspace. | ...get a first-hand feel for TWiki possibilities. |
| You can use color coding by web for identification and reference. This table is updated automatically based on WebPreferences settings of the individual webs. Contact tko@users.sourceforge.net if you need a separate collaboration web for your team. | ||
| Legend of icons: |
|
|
HowToLogOff | 15 Apr 2003 - 05:54 - NEW | PeterThoeny |
IncludeTopicsAndWebPages | 01 Feb 2003 - 12:26 - r1.6 | PeterThoeny |
%INCLUDE{...}% Variable %INCLUDE{...}% variable to embed the content of another topic or web page inside a Galeon topic. The whole content or only parts of a page can be included. If needed, set a proxy server in TWikiPreferences.
%INCLUDE{ "page" pattern="reg-exp" rev="1.2" }%
"page": %INCLUDE{"WebNotify"}%
Web.Topic name specifying a topic in another web, e.g., %INCLUDE{"TWiki.SiteMap"}%
http protocol, domain name and optional port number, e.g., %INCLUDE{"http://twiki.org:80/index.html"}%. Supported content types are text/html and text/plain. The full page is included by default, but the HTML header and scripts are stripped in case it is a web page.
pattern="reg-exp": '^') to end and contains the text you want to keep in parenthesis, e.g., pattern="^.*?(from here.*?to here).*". You need to make sure that the integrity of a web page is not compromised; for example, if you include a table, make sure to include everything including the table end tag.
rev="1.x": %STARTINCLUDE%, %STOPINCLUDE% and/or a pattern parameter.
<pre>
%INCLUDE{"http://domain/~qa/v1.1/REDTest.log.txt"}%
</pre>
%INCLUDE{"http://www.yahoo.com/robots.txt"}%
SUNW: %INCLUDE{"http://finance.yahoo.com/q?s=SUNW&d=v1&o=t" pattern="^.*?>SUNW</a>[^<]+(.*?)\s+\S+\s+<small.*"}%
San Francisco: %INCLUDE{"http://weather.yahoo.com/forecast/San_Francisco_CA_US_f.html" pattern="^.*?([0-9]+\º\;F).*"}%
InstallPassword | 17 Dec 2003 - 08:37 - r1.4 | PeterThoeny |
InstalledPlugins | 12 May 2002 - 06:46 - NEW | MikeMannix? |
*_text_* as bold italic text.
"$SUM( $ABOVE() )" to tables located in Galeon topics.
ExternalSite:Page text to external sites based on aliases defined in the InterWikis topic
:-) for
or :cool: for
InstantEnhancements | 31 Jan 2003 - 09:03 - NEW | PeterThoeny |
view.tmpl (in the templates directory). In the HTML at the top, the body tag has the page background hardcoded to white bgcolor="#ffffff". You can change that color value to new variable. First, define a new preferences variable in the site-level TWikiPreferences, e.g. * Set =PAGEBGCOLOR = #d0d0d0, then edit the view.tmpl template file and change bgcolor="#ffffff" to bgcolor="%PAGEBGCOLOR%". If you want you can set the page background color individualy per web, simple add a * Set =PAGEBGCOLOR = #d0d0d0 bullet to the WebPreferences to overload the site-level preferences. (Without font color control, you'll have to stick to light colors.
WebIndex with WebTopicList, and save.
Edit is disabled. Instead, go to More and view the topic in raw format.
HELP, WARN etc. You can also add your own images, e.g. a NEW, or a ASK to ask question.
of course) can help them. On HELP pages, most people tend to jump around looking for answers rather than reading through - icons help point out the most important bits.
How to create your own set of icons:
Preferences topic: TWikiPreferences for site-wide use, or WebPreferences for use in one web only.
Attach a graphic (the ones on this page are 16x16 pixels), then define a Preference Variable with a short but recognizable name.
%TEST% to get %TEST% - see how it's done.
---++ , see TWikiShorthand).
For example, you may want to put all your custom variables in TWikiPreferences right on top of the page, and generate table of contens, like:
w3m pager/browser for Linux. This is a text based version similar to lynx but it includes text editor features and a configurable command set to act like lynx if you are more accustomed to it.
__Here's a list of topics I've been involved in recently:__
---++++ Codev
%SEARCH{ "InstantEnhancements" web="Codev" scope="text" nosearch="on" nosummary="on" noheader="on" nototal="on" regex="off" order="modified" reverse="on" limit="20"}%
---++++ Support
%SEARCH{ "InstantEnhancements" web="Support" scope="text" nosearch="on" nosummary="on" noheader="on" nototal="on" regex="off" order="modified" reverse="on" limit="20"}%
---++++ TWiki
%SEARCH{ "InstantEnhancements" web="TWiki" scope="text" nosearch="on" nosummary="on" noheader="on" nototal="on" regex="off" order="modified" reverse="on" limit="10"}%
End Copy
The SEARCH variable has many more formatting options, see TWikiVariables.
Edit.
Set ALLOWTOPICCHANGE = Main.UserName, Main.GroupName
<!-- on the line _above the setting, and --> on the line below.
[Add] button, and select the form if it isn't alredy enabled. Then, click the title to get to the actual form, [Edit], and carefully change values, probably basic page classifications. You'll get some increased value, and hands-on experience with TWikiForms, without having to read up about them first. view.tmpl (in the templates directory) for some dramatic effects. The top of the template is mostly regular HTML with some variables. Open up some space in the <head> area, and you can drop in reliable JavaScripts - a pop-up window script, for example - or tag it as an external script.
InterWikis | 21 Apr 2002 - 06:03 - r1.3 | PeterThoeny |
ExternalSite:Page it will be linked automatically to the page on the external site. The link points to the URL corresponding to the ExternalSite alias below, concatenated to the Page you choose. Example: Type Wiki:RecentChanges to get Wiki:RecentChanges, the RecentChanges page at the original Wiki site.
| External site alias | URL | Tooltip help text |.
$page variables; the variable gets expanded to the page name.
<nop> escape code), no internal WikiWord links, and no external links. Hint: Escape 'WikiWords' and '$page'.
| Alias: | URL: | Tooltip Text: |
|---|---|---|
| Acronym | http://www.acronymfinder.com/af-query.asp?Acronym=$page&String=exact | Look up '$page' on Acronym Finder site |
| http://google.com/search?q= | Search for '$page' on Google | |
| Group | http://groups.google.com/groups?hl=en&safe=off&group= | News group '$page' at Google.com |
| ISBN | http://service.bfast.com/bfast/click?bfmid=2181&sourceid=38704253&bfpid= | Book with ISBN#$page (One click patent? Say no to Amazon!) |
| RFC | http://www.faqs.org/rfcs/rfc$page.html | IETF RFC #$page |
| Alias: | URL: | Tooltip Text: |
|---|---|---|
| Advogato | http://www.advogato.org/ | '$page' on Advogato community site (with peer review) |
| C2find | http://c2.com/cgi/wiki?FindPage&value= | Search '$page' on the original 'WikiWikiWeb' site |
| DolphinWiki | http://www.object-arts.com/wiki/html/Dolphin/ | '$page' on Dolphin Wiki site |
| EfnetCppWiki | http://www.encrypted.net/~jh/cpp-wiki/moin.cgi/ | '$page' on Efnet Cpp Wiki site |
| EfnetPythonWiki | http://www.encrypted.net/~jh/python-wiki/moin.cgi/ | '$page' on 'EfnetPythonWiki' site |
| EfnetXmlWiki | http://www.encrypted.net/~jh/xml-wiki/moin.cgi/ | '$page' on Efnet XML Wiki site |
| FoxWiki | http://fox.wikis.com/wc.dll?Wiki~ | '$page' on Fox Wiki site |
| HammondWiki | http://www.dairiki.org/HammondWiki/index.php3? | '$page' on 'HammondWiki' site |
| LegoWiki | http://www.object-arts.com/wiki/html/Lego-Robotics/ | '$page' on 'LegoWiki' site |
| MbTest | http://www.usemod.com/cgi-bin/mbtest.pl? | '$page' on 'UseMod' Wiki variant |
| MeatBall | http://www.usemod.com/cgi-bin/mb.pl? | '$page' on 'MeatBall' site, a 'UseMod' Wiki variant |
| MoinMoin | http://moin.sourceforge.net/cgi-bin/moin/moin/ | '$page' on 'MoinMoin' Wiki site |
| MuWeb | http://www.dunstable.com/scripts/MuWebWeb? | '$page' on 'MuWeb' site |
| OrgPatterns | http://i44pc48.info.uni-karlsruhe.de/cgi-bin/OrgPatterns? | '$page' on Organizational Patterns site |
| PhpWiki | http://phpwiki.sourceforge.net/phpwiki/index.php3? | '$page' on Wiki site written in PHP |
| PolitizenWiki | http://www.politizen.com/wiki.asp? | '$page' on 'PolitizenWiki' site |
| PPR | http://c2.com/cgi/wiki? | '$page' on the original 'PortlandPatternRepository' site |
| PyWiki | http://www.voght.com/cgi-bin/pywiki? | '$page' on Wiki site written in Python |
| TWiki | http://twiki.org/cgi-bin/view/ | '$page' on TWiki site, we know it! |
| Squeak | http://minnow.cc.gatech.edu/squeak/ | '$page' on Squeak Smalltalk Wiki |
| UseMod | http://www.usemod.com/cgi-bin/wiki.pl? | '$page' on 'UseMod' Wiki site |
| VisualWorks | http://wiki.cs.uiuc.edu/VisualWorks/ | '$page' on 'VisualWorks' site |
| Wiki | http://c2.com/cgi/wiki? | '$page' on the original 'WikiWikiWeb' site |
| Wikipedia | http://www.wikipedia.com/wiki/ | '$page' on 'Wikipedia' |
| ZWiki | http://joyful.com/zwiki/ | '$page' on Zope's Wiki |
InterwikiPlugin | 10 Mar 2004 - 06:20 - r1.7 | PeterThoeny |
ExternalSite:Page text to external sites based on aliases defined in the InterWikis topic. This plugin is inspired by UseMod Wiki's inter-wiki links, http://www.usemod.com/cgi-bin/wiki.pl?InterWiki.
ExternalSite:Page to create a link that points to the Page on the ExternalSite server.
ExternalSite aliases are defined in the InterWikis topic.
TWikisite:Webname/SomePage
%<plugin>_<setting>%, for example, %INTERWIKIPLUGIN_SHORTDESCRIPTION%
ExternalSite:Page text to external sites based on aliases defined in the InterWikis topic
0 or 1, default is 0)
data/debug.txt)
InterwikiPlugin.zip in your TWiki installation directory. Content:
| File: | Description: |
|---|---|
data/TWiki/InterwikiPlugin.txt | Plugin topic |
data/TWiki/InterWikis.txt | Link rules topic for inter-site links |
lib/TWiki/Plugins/InterwikiPlugin.pm | Plugin Perl module |
| Plugin Author: | TWiki:Main.AndreaSterbini, TWiki:Main.PeterThoeny |
| Plugin Version: | 09 Mar 2004, 1.005 |
| Change History: | |
| 09 Mar 2004: | Internal changes: Use only official TWiki::Func Plugin API; for increased speed, moved Interwiki link handling from outsidePREHandler to startRenderingHandler |
| 16 Feb 2004: | Support [[Site:Page][label]] Interwiki links (PTh); use TWiki::Func interface for I18N regular expressions (Walter Mundt) |
| 18 Jan 2003: | Allow number sign # in Page name (PTh) |
| 31 Aug 2002: | Allow percent sign % in page name (PTh) |
| 27 Jul 2001: | Allow numbers 0-9 in site name |
| 26 Jul 2001: | Fixed alternating missed link bug due to greedy $postfixPattern (fix by Richard Donkin) |
| 14 Jul 2001: | Changed to plug & play |
| 16 Jun 2001: | Made tooltips optional; prevent Module::Sub type of link |
| 12 Jun 2001: | Added optional tool tips (IE only); added the link rules topic name variable; added flexible link patterns; optional $page in URL |
| 10 Jun 2001: | Changed rules topic to table-based syntax |
| 20 Feb 2001: | Initial version |
| CPAN Dependencies: | none |
| Other Dependencies: | none |
| Perl Version: | 5.0 |
| Plugin Home: | http://TWiki.org/cgi-bin/view/Plugins/InterwikiPlugin (TWiki:Plugins/InterwikiPlugin) |
| Feedback: | http://TWiki.org/cgi-bin/view/Plugins/InterwikiPluginDev (TWiki:Plugins/InterwikiPluginDev) |
MainFeatures | 04 Aug 2002 - 02:58 - NEW | PeterThoeny |
Edit link at the bottom of the page.
ManagingTopics | 12 Jan 2003 - 09:14 - r1.17 | PeterThoeny |
Trash web.
[More] (bottom right of page) on the topic to be changed, then, in the new screen, on [Rename/move]. You can now rename and/or move/delete in one operation:
Trash to delete a topic.
[Rename/Move]: the topic will be renamed and links to the topic updated as requested.
[Rename/Move].
Rename/Move/Delete - an instruction line and undo link will appear at the bottom of the modified topic. This allows you to revert from the last modification only.
Trash web - they are NOT physically erased from the server. All webs share Trash - in case of a name conflict with a topic already Trash, the user is alerted and asked to choose a new name.
The Trash web should be be cleared periodically, by archiving (saving) the text and RCS files if required (recommended), then deleting them from the Trash directory.
Trash directory is all that's required for maintenance, it's possible to grant Trash admin privileges to multiple users, while strictly limiting server access.
%<nop>METASEARCH{type="topicmoved" web="TWiki" topic="ManagingTopics"
title="This topic used to exist and was moved to: "}%
<pre> and <verbatim> are honoured - no changes are made to text within these areas.
searchrenameview.tmpl. First, matching topics in the current web are listed - matches are to topic. Next, all webs (including the current one) are listed that match web.topic. Because %SEARCH% is used, webs marked in WebPreferences as NOSEARCHALL will not show up in the search for references to the topic being changed.
Changed references are kept are as short as possible, ex: topic is used in preference to web.topic.
ALLOWTOPICCHANGE and ALLOWTOPICRENAME permission for that topic. To alter referring topics, you need change permission. See TWikiAccessControl for information on setting up access permissions.
search can show matches that will not be updated due to case differences. Other mismatches with actual rendered output are also possible as the approaches are so different.
The following shows some limitations of square bracket processing.
-- MikeMannix? - 27 Dec 2001[[Old Topic]] => [[NewTopic][Old Topic]] [[old topic]] => [[NewTopic][old topic]] [[old t opic]] => not changed [[OldTopic]] => [[NewTopic]]
ManagingWebs | 08 Jan 2003 - 07:25 - r1.22 | PeterThoeny |
% MAINWEB%, default named Main. That means, every WikiName signature - Main.SomeUserName - points to it and would need updating (unless the variable, %MAINWEB%.SomeUserName, is used throughout).
Oldwebname., including the dot so you'll find references like Oldwebname.SomeTopic.
Newwebname.SomeTopic or better yet, to %MAINWEB%.SomeTopic.
WIKIWEBLIST variable.
twiki/data and rename or remove the web directory.
twiki/templates and rename or remove the web directory if present.
twiki/pub and rename or remove the web directory if present.
MetaDataDefinition | 07 Sep 2001 - 12:43 - r1.7 | MikeMannix? |
MetaDataRendering | 11 Jan 2002 - 08:00 - r1.3 | PeterThoeny |
view, preview and edit scripts.
At present support is fairly basic:
| Variable usage: | Comment: |
|---|---|
%META{"form"}% | Show form data, see Form Templates |
%META{"attachments"}% | Show attachments, excluding hidden ones. Options: all="on": Show all attachments i.e. including hidden ones |
%META{"moved"}% | Details of any topic moves |
%META{"parent"}% | Show topic parent. Options: dontrecurse="on": By default recurses up tree, this has some cost. nowebhome="on": Suppress Home. prefix="...": Prefix that goes before parents, but only if there are parents, default "". suffix="...": Suffix, only appears if there are parents, default "". separator="...": Separator between parents, default is " > ". |
MoveTopic | 01 Sep 2001 - 07:38 - r1.2 | MikeMannix? |
NewUserTemplate | 25 Apr 2004 - 00:33 - r1.6 | PeterThoeny |
width: 99% for full window width (default), width: auto to disable.
PeterThoeny | 12 Jan 2003 - 02:31 - r1.4 | PeterThoeny |
PreviewBackground | 23 Jan 2003 - 07:56 - r1.4 | PeterThoeny |
RegularExpression | 15 Apr 2003 - 05:19 - r1.5 | PeterThoeny |
awk, grep, lex, perl, and sed ).
compan(y|ies) | Search for company, companies |
(peter|paul) | Search for peter, paul |
bug* | Search for bug, bugg, buggg or simply bu (a star matches zero or more instances of the previous character) |
bug.* | Search for bug, bugs, bugfix (a dot-star matches zero or more instances of any character) |
[Bb]ag | Search for Bag, bag |
b[aiueo]g | Second letter is a vowel. Matches bag, bug, big |
b.g | Second letter is any letter. Matches also b&g |
[a-zA-Z] | Matches any one letter (but not a number or a symbol) |
[^0-9a-zA-Z] | Matches any symbol (but not a number or a letter) |
[A-Z][A-Z]* | Matches one or more uppercase letters |
[0-9]{3}-[0-9]{2}-[0-9]{4} | US social security number, e.g. 123-45-6789 |
PNG;Chart | Search for topics containing the words PNG and Chart. The ";" and separator is TWiki-specific and is not a regular expression; it is a useful facility that is enabled when regular expression searching is enabled. |
;. Example search for "form" and "template": form;template
site:twiki.org +form +template
A regular expression is a pattern that describes a set of strings. Regular expressions are constructed analogously to arithmetic expressions, by using various operators to combine smaller expressions. The fundamental building blocks are the regular expressions that match a single character. Most characters, including all letters and digits, are regular expressions that match themselves. Any metacharacter with special meaning may be quoted by preceding it with a backslash. A bracket expression is a list of characters enclosed by [ and ]. It matches any single character in that list; if the first character of the list is the caret ^ then it matches any character not in the list. For example, the regular expression [0123456789] matches any single digit. Within a bracket expression, a range expression consists of two characters separated by a hyphen. It matches any single character that sorts between the two characters, inclusive, using the locale's collating sequence and character set. For example, in the default C locale, [a-d] is equivalent to [abcd]. Many locales sort characters in dictionary order, and in these locales [a-d] is typically not equivalent to [abcd]; it might be equivalent to [aBbCcDd], for example. Finally, certain named classes of characters are predefined within bracket expressions, as follows. Their names are self explanatory, and they are [:alnum:], [:alpha:], [:cntrl:], [:digit:], [:graph:], [:lower:], [:print:], [:punct:], [:space:], [:upper:], and [:xdigit:]. For example, [[:alnum:]] means [0-9A-Za-z], except the latter form depends upon the C locale and the ASCII character encoding, whereas the former is independent of locale and character set. (Note that the brackets in these class names are part of the symbolic names, and must be included in addition to the brackets delimiting the bracket list.) Most metacharacters lose their special meaning inside lists. To include a literal ] place it first in the list. Similarly, to include a literal ^ place it anywhere but first. Finally, to include a literal - place it last. The period . matches any single character. The symbol \w is a synonym for [[:alnum:]] and \W is a synonym for [^[:alnum]]. The caret ^ and the dollar sign $ are metacharacters that respectively match the empty string at the beginning and end of a line. The symbols \< and \> respectively match the empty string at the beginning and end of a word. The symbol \b matches the empty string at the edge of a word, and \B matches the empty string provided it's not at the edge of a word. A regular expression may be followed by one of several repetition operators:Two regular expressions may be concatenated; the resulting regular expression matches any string formed by concatenating two substrings that respectively match the concatenated subexpressions. Two regular expressions may be joined by the infix operator |; the resulting regular expression matches any string matching either subexpression. Repetition takes precedence over concatenation, which in turn takes precedence over alternation. A whole subexpression may be enclosed in parentheses to override these precedence rules. The backreference \n, where n is a single digit, matches the substring previously matched by the nth parenthesized subexpression of the regular expression.
? The preceding item is optional and matched at most once. * The preceding item will be matched zero or more times. + The preceding item will be matched one or more times. {n} The preceding item is matched exactly n times. {n,} The preceding item is matched n or more times. {n,m} The preceding item is matched at least n times, but not more than m times.
RenderListPlugin | 21 Mar 2004 - 08:52 - r1.7 | PeterThoeny |
%RENDERLIST{ <parameters> }% before any bullet list
%TOC%, or the result of a FormattedSearch
"name" ortheme="name" | Select a rendering theme |
focus="any text" | Focus list on a bullet with specified text |
depth="2" | Remove bullets with an indent greater then the depth. The depth is relative to the highlighted bullet in case focus is specified |
<name>_THEME Plugin settings
Set <name>_THEME = tree, <0/1 flag to suppress/show lines of first level>
Set <name>_THEME = icon, <0/1 flag to suppress/show lines of first level>, <icon width>, <icon height>, <spacer graph>, <T-line graph>, <I-line graph>, <L-line graph>, <icon image>
[[][]] links on bullet where text is found
* bullets
Like this
Align continuation lines with leading spaces linke this
myicon.gif, or
globe.gif,
home.gif,
virtualhome.gif,
group.gif,
persons.gif,
virtualpersons.gif,
person.gif,
virtualperson.gif,
email.gif,
trend.gif,
folder.gif,
file.gif,
doc.gif,
image.gif,
pdf.gif,
ppt.gif,
sound.gif,
xls.gif,
zip.gif,
see.gif
icon:myicon Followed by normal bullet text
| You type: | You get: (simulated) | You get: (if installed) | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
%RENDERLIST{"thread"}%
* one
* one.a
* one.a.x
* one.b
* one.b.x
continue
* one.b.y
* icon:person Tim
* icon:person Mico
* two
* three
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
%RENDERLIST{"org"}%
* one
* one.a
* one.a.x
* one.b
* one.b.x
continue
* one.b.y
* icon:person Tim
* icon:person Mico
* two
* three
|
|
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
%RENDERLIST{ "org" focus="one.b" }%
* one
* one.a
* one.a.x
* one.b
* one.b.x
continue
* one.b.y
* icon:person Tim
* icon:person Mico
* two
* three
|
|
|
%<plugin>_<setting>%, i.e. %RENDERPLUGIN_SHORTDESCRIPTION%
data/debug.txt)
<SOMETHING>_THEME and contain a comma delimited list of render type with parameters:
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
,
RenderListPlugin.zip in your twiki installation directory. Content:
| File: | Description: |
|---|---|
data/TWiki/RenderListPlugin.txt | Plugin topic |
data/TWiki/RenderListPlugin.txt,v | Plugin topic repository |
lib/TWiki/Plugins/RenderListPlugin.pm | Plugin Perl module |
pub/TWiki/RenderListPlugin/*.gif | Image files for themes |
| Plugin Author: | TWiki:Main/PeterThoeny |
| Plugin Version: | 21 Mar 2004 (V1.031) |
| Change History: | |
| 21 Mar 2004: | Internal change: Fixed inofficial function call |
| 01 Mar 2004: | Added FILE_THEME and folder/file icons |
| 29 Dec 2003: | Fixed rendering issue if focus bullet contains icon:name; added TREND_THEME |
| 16 Dec 2003: | Specify icons with icon:name syntax |
| 11 Dec 2003: | Added focus and depth parameters |
| 05 Dec 2003: | Fixed rendering issue with IE; added EMAIL_THEME |
| 02 Dec 2003: | Initial version |
| CPAN Dependencies: | none |
| Other Dependencies: | none |
| Perl Version: | 5.005 |
| Plugin Home: | http://TWiki.org/cgi-bin/view/Plugins/RenderListPlugin |
| Feedback: | http://TWiki.org/cgi-bin/view/Plugins/RenderListPluginDev |
ResetPassword | 18 Dec 2003 - 11:15 - r1.7 | SvenDowideit? |
.htpassword file managed by TWiki. It does not apply if you are using external authentication, such as an IT managed password system. (remove this note if you are using Basic Authentication; replace this topic with a note describing how to reset the password in your organization)
SearchDoesNotWork | 01 Sep 2001 - 00:21 - r1.2 | PeterThoeny |
egrep and fgrep commands on your system. Check the $egrepCmd and $fgrepCmd variables in twiki/lib/TWiki.cfg.
Back to: TWikiFAQ
-- PeterThoeny - 26 Jan 2001
SearchHelp | 18 Jan 2004 - 10:04 - NEW | PeterThoeny |
intranet web service returns all pages that have the three words anywhere in the page
intranet +web +service
"web service"
soap -shampoo
"-nowarn"
"how" and "where", defined in the SEARCHSTOPWORDS setting in the TWikiPreferences
"SOAP", "WSDL", a literal "web service", but not "shampoo",soap +wsdl "web service" -shampoo
keyword: The basic search type
literal: Simple search where text is searched literally
regex: A RegularExpression search for power users
!web service
\!shampoo
"SOAP", "WSDL", a literal "web service", but not "shampoo",soap;wsdl;web service;!shampoo
%SEARCH{}% variable described in TWikiVariables.
SEARCHDEFAULTTTYPE: Default search type for search forms which calls the search script
SEARCHVARDEFAULTTYPE: Default search type for %SEARCH{} variable
SEARCHSTOPWORDS: List of stop words
SimultaneousEdits | 01 Sep 2001 - 00:22 - r1.2 | PeterThoeny |
SiteMap | 01 Nov 2003 - 09:40 - r1.5 | PeterThoeny |
| Web | Galeon Site Map | Use to... |
|---|---|---|
| Main |
Welcome to Galeon... Users - tour this expandable virtual workspace. | ...get a first-hand feel for TWiki possibilities. |
| You can use color coding by web for identification and reference. This table is updated automatically based on WebPreferences settings of the individual webs. Contact tko@users.sourceforge.net if you need a separate collaboration web for your team. | ||
| Legend of icons: |
|
|
SiteUsageStatistics | 01 Sep 2001 - 07:27 - NEW | MikeMannix? |
$doLogTopicView, $doLogTopicSave and $doLogTopicUpload in wikicfg.pm are set. This will generate log entries in file twiki/data/log<date>.txt .
twiki/bin/statistics script from a cron job, once a day is recommended. This will update the WebStatistics topics in all webs.
nobody on most systems. Example crontab entry: 0 0 * * * (cd /path/to/TWiki/bin; ./statistics >/dev/null 2>&1)
nobody : Run the utility twiki/bin/geturl in your cron job and specify the URL of the twiki/bin/statistics script as a parameter. Example: 0 0 * * * (cd /path/to/TWiki/bin; ./geturl mydomain.com /urlpath/to/TWiki/bin/statistics >/dev/null 2>&1)
twiki/bin/statistics script can also be executed as a CGI script, just enter the URL in your browser. Examples:
http://mydomain.com/twiki/bin/statistics
http://mydomain.com/twiki/bin/statistics/Main
http://mydomain.com/twiki/bin/statistics/Main?logdate=200001
SlideShowPlugin | 21 Mar 2004 - 08:59 - r1.2 | PeterThoeny |
"---++" heading. There are two modes to view a topic:
%SLIDESHOWSTART%
template parameter to specify your own slide template topic, e.g. %SLIDESHOWSTART{ template="MyOwnSlideTemplate" }%
"---++" heading and add text like paragraphs, bullets, tables and images.
%SLIDESHOWEND%
TEMPLATE setting, or per slide show with the %SLIDESHOWSTART{ template="MyOwnSlideTemplate" }% setting.
| Keyword | What it means |
|---|---|
%SLIDETITLE% | The heading of the slide |
%SLIDETEXT% | The text of the slide |
%SLIDENUM% | The current slide number |
%SLIDEMAX% | The last slide number |
%SLIDENAV% | The navigation buttons for "First", "Previous", "Next" slide |
%SLIDENAVALL% | The navigation buttons for "First", "Previous", "Next", "Last" slide |
%SLIDENAVFIRST% | The navigation button for "First slide" |
%SLIDENAVPREV% | The navigation button for "Previous slide" |
%SLIDENAVNEXT% | The navigation button for "Next slide" |
%SLIDENAVLAST% | The navigation button for "Last slide" |
%STARTINCLUDE% and %STOPINCLUDE% is used for the template.
%<plugin>_<setting>%, i.e. %SLIDESHOWPLUGIN_SHORTDESCRIPTION%
data/debug.txt)
---+++ Comments heading:
|
%SLIDETITLE% | %SLIDENAVNEXT% |
|
|
%SLIDETEXT% |
| %SLIDENAVALL% | Slide %SLIDENUM% of %SLIDEMAX% | COPYRIGHT © 2013 by the contributing authors |
SlideShowPlugin.zip in your twiki installation directory. Content:
| File: | Description: |
|---|---|
data/TWiki/SlideShowPlugin.txt | Plugin topic |
data/TWiki/SlideShowPlugin.txt,v | Plugin topic repository |
lib/TWiki/Plugins/SlideShowPlugin.pm | Plugin Perl module |
pub/TWiki/*.gif | Various button image files |
| Plugin Author: | TWiki:Main/PeterThoeny |
| Plugin Version: | 21 Mar 2004 (V1.003) |
| Change History: | |
| 21 Mar 2004: | Internal change: Fixed inofficial function call |
| 14 Dec 2002: | Added %SLIDENAVALL% template keyword; added HIDECOMMENTS setting |
| 23 Nov 2002: | Added %SLIDENAVLAST% template keyword; using print Skin for presentation mode |
| 19 Nov 2002: | Added "Start presentation" and "End presentation" buttons; added %SLIDENAVFIRST%, %SLIDENAVPREV%, %SLIDENAVNEXT% template keywords |
| 17 Nov 2002: | Initial version |
| CPAN Dependencies: | none |
| Other Dependencies: | none |
| Perl Version: | 5.005 |
| Plugin Home: | http://TWiki.org/cgi-bin/view/Plugins/SlideShowPlugin |
| Feedback: | http://TWiki.org/cgi-bin/view/Plugins/SlideShowPluginDev |
SmiliesPlugin | 17 Feb 2004 - 07:17 - r1.2 | PeterThoeny |
| You type | You see | Emotion |
|---|---|---|
| :-) | | "smile" |
| :) | | "smile" |
| 8-) | | "cool!" |
| :cool: | | "cool!" |
| :-I | | "indifferent" |
| :( | | "frown" |
| :-( | | "frown" |
| :o | | "embarrassment" |
| :D | | "big grin" |
| :-D | | "big grin" |
| ;) | | "wink" |
| ;-) | | "wink" |
| :p | | "razz (stick out tongue)" |
| :rolleyes: | | "roll eyes (sarcastic)" |
| :mad: | | "mad!" |
| :eek: | | "eek!" |
| :confused: | | "confused" |
| >:-) | | "hehe!" |
| :devil: | | "hehe!" |
| >;-) | | "hehe! (friendly)" |
| :devilish: | | "hehe! (friendly)" |
%<plugin>_<setting>%, for example, %INTERWIKIPLUGIN_SHORTDESCRIPTION%
:-) for
or :cool: for
data/debug.txt. Default: 0
TWiki.SmiliesPlugin
$emoticon (e.g. :D), $url (e.g. %ATTACHURL%/biggrin.gif) and $tooltip (e.g. "big grin"). Default: <img src="$url" alt="$tooltip" />
* #Set FORMAT = <img src="$url" alt="$emoticon" />
SmiliesPlugin.zip in your twiki installation directory. Content:
| File: | Description: |
|---|---|
data/TWiki/SmiliesPlugin.txt | Plugin topic |
data/TWiki/SmiliesPlugin.txt,v | Plugin topic repository |
lib/TWiki/Plugins/SmiliesPlugin.pm | Plugin Perl module |
pub/TWiki/SmiliesPlugin/*.gif | Plugin icon files |
| Plugin Author: | TWiki:Main.AndreaSterbini |
| Plugin Version: | 16 Feb 2004 (v1.002) |
| Change History: | |
| 16 Feb 2004: | Added "devil" and "devilwink" smilies (by TWiki:Main.CrawfordCurrie) |
| 26 Feb 2003: | Added "indifferent" smilie |
| 20 Oct 2002: | Fixed STDERR warning for non-initialized Plugin |
| 20 Apr 2002: | Improved performance; removed non-standard Plugin API dependencies; added standard plugin topic content -- TWiki:Main.PeterThoeny |
| 23 Nov 2001: | Added TOPIC and FORMAT setting |
| 10 Jun 2001: | Packaged into ZIP |
| 28 Feb 2001: | Initial version |
| CPAN Dependencies: | none |
| Other Dependencies: | none |
| Perl Version: | 5.0 |
| Plugin Home: | http://TWiki.org/cgi-bin/view/Plugins/SmiliesPlugin |
| Feedback: | http://TWiki.org/cgi-bin/view/Plugins/SmiliesPluginDev |
SpreadSheetPlugin | 03 Apr 2004 - 17:50 - r1.8 | PeterThoeny |
%CALC{"$INT(7/3)"}% are evaluated at page view time. They can be placed in table cells and outside of tables. In other words, this Plugin provides general formula evaluation capability, not just classic spreadsheet functions.
Example:
| Interactive example: | |||||||||||||||
The formula next to "Total" is %CALC{"$SUM( $ABOVE() )"}%. (you see the formula instead of the sum in case the Plugin is not installed or not enabled.) | ||||||||||||||||
%CALC{"..."}% variable, which gets rendered according to the built-in function(s) found between the quotes.
$FUNCNAME(parameter)
%CALC{"$SUM( R2:C$COLUMN(0)..R$ROW(-1):C$COLUMN(0) )"}%
%CALC{"$SUM( 3, 5, 7 )"}%
R1:C1. Table address matrix:
R1:C1 | R1:C2 | R1:C3 | R1:C4 |
R2:C1 | R2:C2 | R2:C3 | R2:C4 |
"..", e.g. "row 1 through 20, column 3" is: R1:C3..R20:C3
%CALC{"$SUM( 3, 5, $T(R1:C7), R1:C11..R1:C15 )"}%
| Function | Description |
|---|---|
"$ABOVE()" | The address range of cells above the current cell |
"$ABS(num)" | The absolute value of a number. Example: %CALC{"$ABS(-12.5)"}% returns 12.5 |
"$AND(list)" | The logcial AND of a list. Example: %CALC{"$AND(1, 0, 1)"}% returns 0 |
"$AVERAGE(list)" | The average of a list or a range of cells. Example: To get the average of column 5 excluding the title row, write in the last row: %CALC{"$AVERAGE( R2:C5..R$ROW(-1):C5 )"}% |
"$CHAR(number)" | The ASCII character represented by number. Example: %CALC{"$CHAR(97)"}% returns a |
"$CODE(text)" | The ASCII numeric value of the first character in text. Example: %CALC{"$CODE(abc)"}% returns 97 |
"$COLUMN(offset)" | The current column number with an optional offset |
"$COUNTITEMS(list)" | Counts individual items in a list. Example: %CALC{"$COUNTITEMS( $ABOVE() )"}% returns Closed: 1, Open: 2 assuming one cell above the current cell contains Closed and two cells contain Open |
"$COUNTSTR(list, str)" | Counts the number of cells in a list equal to a given string (if str is specified), or counts the number of non empty cells in a list. Example: To count the number of non empty cells above the current cell, write %CALC{"$COUNTSTR( $ABOVE() )"}%; to count the number of cells equal to DONE, write %CALC{"$COUNTSTR( $ABOVE(), DONE )"}%; |
"$DEF(list)" | Returns the first list item or cell reference that is not empty. Example: %CALC{"$DEF( R1:C1..R1:C3 )"}% |
"$EVAL(formula)" | Evaluates a simple formula. Only addition, substraction, multiplication, division and modulus of numbers are supported. Any nesting is permitted. Example: %CALC{"$EVAL( (5 * 3) / 2 + 1.1 )"}% returns 8.6 |
"$EXACT(text1, text2)" | Compares two text strings and returns 1 if they are exactly the same, or 0 if not. Example: %CALC{"$EXACT( foo, Foo )"}% returns 0; %CALC{"$EXACT( foo, $LOWER(Foo) )"}% returns 1 |
"$FIND(search_string, text, start_index)" | Finds one text string search_string, within another text string text, and returns the number of the starting position of search_string, from the first character of text. This search is case sensitive and is not a regular expression search; use $SEARCH() for regular expression searching. Starting position is 1; a 0 is returned if nothing is matched. Examples: %CALC{"$FIND(f, fluffy)"}% returns 1 %CALC{"$FIND(f, fluffy, 2)"}% returns 4 %CALC{"$FIND(@, fluffy, 1)"}% returns 0 |
"$FORMAT(type, prec, number)" | Formats a number to a certain type and precision. Types with examples: - %CALC{"$FORMAT( COMMA, 2, 12345.6789 )"}% returns 12,345.68 - %CALC{"$FORMAT( DOLLAR, 2, 12345.67 )"}% returns $12,345.68 - %CALC{"$FORMAT( NUMBER, 1, 12345.67 )"}% returns 12345.7 - %CALC{"$FORMAT( PERCENT, 1, 0.1234567 )"}% returns 12.3% |
"$FORMATTIME(serial, text)" | Convert a serialized date into a date string; the following variables in text are expanded: $second (seconds, 00..59); $minute (minutes, 00..59); $hour (hours, 00..23); $day (day of month, 01..31); $month (month, 01..12); $mon (month in text format, Jan..Dec); $year (4 digit year, 1999); $ye (2 digit year, 99), $wd (day number of the week, 1 for Sunday, 2 for Monday, etc), $wday (day of the week, Sun..Sat), $weekday (day of the week, Sunday..Saturday), $yearday (day of the year, 1..365, or 1..366 in leap years). Date is assumed to be server time; add GMT to indicate Greenwich time zone. See also $TIME(), $TODAY(), $FORMATGMTIME(), $TIMEDIFF(). Example: %CALC{"$FORMATTIME(0, $year/$month/$day GMT)"}% returns 1970/01/01 GMT |
"$FORMATGMTIME(serial, text)" | Convert a serialized date into a date string in Greenwich time zone. Same variables expansion as in $FORMATTIME(). Example: %CALC{"$FORMATGMTIME(1041379200, $day $mon $year)"}% returns 01 Jan 2003 |
"$GET(name)" | Get the value of a previously set variable. Specify the variable name (alphanumeric characters and underscores). An empty string is returned if the variable does not exist. Use $SET() to set a variable first. Unlike table ranges, variables live for the time of the page view and persist across tables, i.e. you can use it to summarize results across several tables. See also $SET(). Example: %CALC{"$GET(my_total)"}% returns the value of the my_total variable |
"$IF(condition, value if true, value if 0)" | Returns one value if a condition is met, and another value if not. The condition can be a number (where 0 means condition not met), or two numbers with a comparison operator < (less than), <= (less than or equal), == (equal), != (not equal), >= (greater than or equal), > (greater than). Examples:%CALC{"$IF( $T(R1:C5) > 1000, Over Budget, OK)"}% returns Over Budget if value in R1:C5 is over 1000, OK if not%CALC{"$IF( $EXACT($T(R1:C2),), empty, $T(R1:C2))"}% returns the content of R1:C2 or empty if empty%CALC{"$SET(val, $IF( $T(R1:C2) == 0, zero, $T(R1:C2)))"}% sets a variable conditionally |
"$INT(formula)" | Evaluates a simple formula and rounds the result down to the nearest integer. Example: %CALC{"$INT(10 / 4)"}% returns 2 |
"$LEFT()" | The address range of cells to the left of the current cell |
"$LENGTH(text)" | The length in bytes of text. Example: %CALC{"$LENGTH(abcd)"}% returns 4 |
"$LIST(range)" | Converts the content of a range of cells into a flat list, delimited by comma. Cells containing commas are merged into the list. Example: %CALC{"$LIST( $LEFT() )"}% returns Apples, Lemons, Oranges, Kiwis assuming the cells to the left contain | Apples | Lemons, Oranges | Kiwis | |
"$LISTIF(condition, list)" | Remove elements from a list that do not meet a condition. In addition to the condition described in $IF(), you can use $item to indicate the current element, and $index for the list index, starting at 1. Examples: %CALC{"$LISTIF($item > 12, 14, 7, 25)"}% returns 14, 25 %CALC{"$LISTIF($NOT($EXACT($item,)), A, B, , E)"}% returns non-empty elements A, B, E %CALC{"$LISTIF($index > 2, A, B, C, D)"}% returns C, D |
"$LISTITEM(index, list)" | Get one element of a list. Index is 1 to size of list; use a negative number to count from the end of the list. Examples:%CALC{"$LISTITEM(2, Apple, Orange, Apple, Kiwi)"}% returns Orange %CALC{"$LISTITEM(-1, Apple, Orange, Apple, Kiwi)"}% returns Kiwi |
"$LISTMAP(formula, list)" | Evaluate and update each element of a list. In the formula you can use $item to indicate the element; $index to show the index of the list, starting at 1. Example: %CALC{"$LISTMAP($index: $EVAL(2 * $item), 3, 5, 7, 11)"}% returns 1: 6, 2: 10, 3: 14, 4: 22 |
"$LISTREVERSE(list)" | The opposite order of a list. Example: %CALC{"$LISTREVERSE(Apple, Orange, Apple, Kiwi)"}% returns Kiwi, Apple, Orange, Apple |
"$LISTSIZE(list)" | The number of elements in a list. Example: %CALC{"$LISTSIZE(Apple, Orange, Apple, Kiwi)"}% returns 4 |
"$LISTSORT(list)" | Sorts a list in ASCII order, or numerically if all elements are numeric. Example: %CALC{"$LISTSORT(Apple, Orange, Apple, Kiwi)"}% returns Apple, Apple, Kiwi, Orange |
"$LISTUNIQUE(list)" | Removes all duplicates from a list. Example: %CALC{"$LISTUNIQUE(Apple, Orange, Apple, Kiwi)"}% returns Apple, Orange, Kiwi |
"$LOWER(text)" | The lower case string of a text. Example: %CALC{"$LOWER( $T(R1:C5) )"}% returns the lower case string of the text in cell R1:C5 |
"$MAX(list)" | The biggest value of a list or range of cells. Example: To find the biggest number to the left of the current cell, write: %CALC{"$MAX( $LEFT() )"}% |
"$MEDIAN(list)" | The median of a list or range of cells. Example: %CALC{"$MEDIAN(3, 9, 4, 5)"}% returns 4.5 |
"$MIN(list)" | The smallest value of a list or range of cells. Example: %CALC{"$MIN(15, 3, 28)"}% returns 3 |
"$MOD(num, divisor)" | The reminder after dividing num by divisor. Example: %CALC{"$MOD(7, 3)"}% returns 1 |
"$NOP(text)" | A no-operation. Allows one to defy the order of Plugin execution. For example, it will allow preprossing to be done before %SEARCH{}% is evaluated. Use $per to escape '%'. |
"$NOT(num)" | The reverse logic of a number. Returns 0 if num is not zero, 1 if zero. Example: %CALC{"$NOT(0)"}% returns 1 |
"$OR(list)" | The logcial OR of a list. Example: %CALC{"$OR(1, 0, 1)"}% returns 1 |
"$PRODUCT(list)" | The product of a list or range of cells. Example: to calculate the product of the cells to the left of the current one use %CALC{"$PRODUCT($LEFT())"}% |
"$PROPER(text)" | Capitalizes letters in text that follow any character other than a letter. Converts all other letters to lowercase letters. Examples:%CALC{"PROPER(a small STEP)"}% returns A Small Step %CALC{"PROPER(f1 (formula-1))"}% returns F1 (Formula 1) |
"$PROPERSPACE(text)" | Properly spaces out WikiWords preceeded by white space, parenthesis, or ][. Words listed in the DONTSPACE TWikiPreferences variable or DONTSPACE Plugins setting are excluded. Example, assuming DONTSPACE contains McIntosh: %CALC{"PROPERSPACE(Old MacDonald had a ServerFarm, EeEyeEeEyeOh"}% returns Old MacDonald had a Server Farm, Ee Eye Ee Eye Oh |
"$RAND(max)" | Random number, evenly distributed between 0 and max, or 0 and 1 if max is not specified. |
"$REPEAT(text)" | Repeat text a number of times. Example: %CALC{"$REPEAT(/\, 5)"}% returns /\/\/\/\/\ |
"$REPLACE(text, start_num, num_chars, new_text)" | Replaces part of text string text, based on the starting position start_num, and the number of characters to replace num_chars. The characters are replaced with new_text. Starting position is 1; use a negative start_num to count from the end of the text. See also $SUBSTITUTE(), $TRANSLATE(). Example: %CALC{"$REPLACE(abcdefghijk,6,5,*)"}% returns abcde*k |
"$RIGHT()" | The address range of cells to the right of the current cell |
"$ROUND(formula, digits)" | Evaluates a simple formula and rounds the result up or down to the number of digits if digits is positive; to the nearest integer if digits is missing; or to the left of the decimal point if digits is negative. Examples: %CALC{"$ROUND(3.15, 1)"}% returns 3.2 %CALC{"$ROUND(3.149, 1)"}% returns 3.1 %CALC{"$ROUND(-2.475, 2)"}% returns -2.48 %CALC{"$ROUND(34.9, -1)"}% returns 30 |
"$ROW(offset)" | The current row number with an offset. Example: To get the number of rows excluding table heading ( first row) and summary row (last row you are in), write: %CALC{"$ROW(-2)"}% |
"$SEARCH(search_string, text, start_index)" | Finds one text string search_string, within another text string text, and returns the number of the starting position of search_string, from the first character of text. This search a RegularExpression search; use $FIND() for non-regular expression searching. Starting position is 1; a 0 is returned if nothing is matched. Examples: %CALC{"$SEARCH([uy], fluffy)"}% returns 3 %CALC{"$SEARCH([uy], fluffy, 3)"}% returns 6 %CALC{"$SEARCH([abc], fluffy,)"}% returns 0 |
"$SET(name, value)" | Set a variable for later use. Specify the variable name (alphanumeric characters and underscores) and the value. The value may contain a formula; formulas are evaluated before the variable assignment. This function returns no output. Use $GET() to retrieve variables. Unlike table ranges, variables live for the time of the page view and persist across tables, i.e. you can use it to summarize results across several tables. See also $GET(). Example: %CALC{"$SET( my_total, $SUM($ABOVE()) )"}% sets the my_total variable to the sum of all table cells located above the current cell and returns an empty string |
"$SETM(name, formula)" | Updates an existing variable based on a formula. Specify the variable name (alphanumeric characters and underscores) and the formula. The formula must start with an operator to + (add), - (subtract), * (multiply), or / (divide) something to the variable. This function returns no output. Use $GET() to retrieve variables. Example: %CALC{"$SETM( total, + $SUM($LEFT()) )"}% adds the sum of all table cells on the left to the total variable, and returns an empty string |
"$SIGN(num)" | The sign of a number. Returns -1 if num is negative, 0 if zero, or 1 if positive. Example: %CALC{"$SIGN(-12.5)"}% returns -1 |
"$SUBSTITUTE(text, old, new, instance, option)" | Substitutes new text for old text in a text string. instance specifies which occurance of old you want to replace. If you specify instance, only that instance is replaced. Otherwise, every occurance is changed to the new text. A literal search is performed by default; a RegularExpression search if the option is set to r. See also $REPLACE(), $TRANSLATE(). Examples: %CALC{"$SUBSTITUTE(Good morning, morning, day)"}% returns Good day %CALC{"$SUBSTITUTE(Q2-2002,2,3)"}% returns Q3-3003 %CALC{"$SUBSTITUTE(Q2-2002,2,3,3)"}% returns Q2-2003 %CALC{"$SUBSTITUTE(abc123def,[0-9],9,,r)"}% returns abc999def |
"$SUM(list)" | The sum of a list or range of cells. Example: To sum up column 5 excluding the title row, write: %CALC{"$SUM( R2:C5..R$ROW(-1):C5 )"}% in the last row; or simply %CALC{"$SUM( $ABOVE() )"}% |
"$SUMDAYS(list)" | The total number of days in a list or range of cells containing numbers of hours, days or weeks. The default unit is days; units are indicated by a h, hours, d, days, w, weeks suffix. One week is assumed to have 5 working days, one day 8 hours. Example: %CALC{"$SUMDAYS( 2w, 1, 2d, 4h )"}% returns 13.5, the evaluation of (2*5 + 1 + 2 + 4/8) |
"$SUMPRODUCT(list, list, ...)" | The scalar product on ranges of cells. Example: %CALC{"$SUM( R2:C1..R4:C1, R2:C5..R4:C5 )"}% evaluates and returns ($T(R2:C1) * $T(R2:C5) + $T(R3:C1) * $T(R3:C5) + $T(R4:C1) * $T(R4:C5)) |
"$T(address)" | The content of a cell. Example: %CALC{"$T(R1:C5)"}% returns the text in cell R1:C5 |
"$TRANSLATE(text, from, to)" | Translate text from a set of characters to another set, one character by one. The text may contain commas; the last two comma separated parameters are required. For from and to parameters, you can write $comma to escape comma, $sp to escape space. See also $REPLACE(), $SUBSTITUTE(). Examples: %CALC{"$TRANSLATE(boom,bm,cl)"}% returns cool %CALC{"$TRANSLATE(one, two,$comma,;)"}% returns one; two |
"$TIME(text)" | Converts a date string into a serialized date number (seconds since the Epoch, e.g. midnight, 01 Jan 1970). Current time is taken if the date string is empty. Supported date formats: 31 Dec 2009; 31 Dec 2009 GMT; 31 Dec 09; 31-Dec-2009; 31/Dec/2009; 2009/12/31; 2009-12-31; 2009/12/31; 2009/12/31 23:59; 2009/12/31 - 23:59; 2009-12-31-23-59; 2009/12/31 - 23:59:59; 2009.12.31.23.59.59. Date is assumed to be server time; add GMT to indicate Greenwich time zone. See also $TODAY(), $FORMATTIME(), $FORMATGMTIME(), $TIMEDIFF(). Example: %CALC{"$TIME( 2003/10/14 GMT )"}% returns 1066089600 |
"$TIMEADD( serial, value, unit )" | Add a value to a serialized date. The unit is seconds if not specified; unit can be second, minute, hour, day, week, month, year. Note: An approximation is used for month and year calculations. See also $TIME(), $TIMEDIFF(), $TODAY(), $FORMATTIME(). Example: %CALC{"$TIMEADD( $TIME(), 2, week )"}% returns the serialized date two weeks from now |
"$TIMEDIFF( serial_1, serial_2, unit )" | Time difference between two serialized dates. The unit is seconds if not specified; unit can be specified as in $TIMEADD(). Note: An approximation is used for month and year calculations. Use $FORMAT() or $INT() to format real numbers. See also $TIME(), $TIMEADD(), $TODAY(), $FORMATTIME(). Example: %CALC{"$TIMEDIFF( $TIME(), $EVAL($TIME()+90), minute )"}% returns 1.5 |
"$TODAY()" | Get the serialized date of today at midnight GMT. The related $TIME() returns the serialized date of today at the current time, e.g. it includes the number of seconds since midnight GMT. See also $FORMATTIME(), $FORMATGMTIME(), $TIMEDIFF(). Example: %CALC{"$TODAY()"}% returns the number of seconds since Epoch |
"$TRIM(text)" | Removes all spaces from text except for single spaces between words. Example: %CALC{"$TRIM( eat spaces )"}% returns eat spaces. |
"$UPPER(text)" | The upper case string of a text. Example: %CALC{"$UPPER( $T(R1:C5) )"}% returns the upper case string of the text in cell R1:C5 |
"$VALUE(text)" | Extracts a number from text. Returns 0 if not found. Examples:%CALC{"$VALUE(US$1,200)"}% returns 1200 %CALC{"$VALUE(PrjNotebook1234)"}% returns 1234 %CALC{"$VALUE(Total: -12.5)"}% returns -12.5 |
| Bug#: | Priority: | Subject: | Status: | Days to fix |
|---|---|---|---|---|
| Bug:1231 | Low | File Open ... | Open | 3 |
| Bug:1232 | High | Memory Window ... | Fixed | 2 |
| Bug:1233 | Medium | Usability issue ... | Assigned | 5 |
| Bug:1234 | High | No arrange ... | Fixed | 1 |
| Total: 4 | High: 2 Low: 1 Medium: 1 | . | Assigned: 1 Fixed: 2 Open: 1 | Total: 11 |
| Total: %CALC{"$ROW(-2)"}% \
| %CALC{"$COUNTITEMS( R2:C$COLUMN()..R$ROW(-1):C$COLUMN() )"}% | . \
| %CALC{"$COUNTITEMS( R2:C$COLUMN()..R$ROW(-1):C$COLUMN() )"}% \
| Total: %CALC{"$SUM( R2:C$COLUMN()..R$ROW(-1):C$COLUMN() )"}% |
Above table is created manually. Another Plugin could build the table dynamically, e.g. by pulling data out of a bug tracking system. The Spreadsheet Plugin can be used to display table data statistics.
%<plugin>_<setting>%, i.e. %SPREADSHEETPLUGIN_SHORTDESCRIPTION%
"$SUM( $ABOVE() )" to tables located in Galeon topics.
data/debug.txt)
%CALC{}% tag in included topic while including topic: (default: 1)
$PROPERSPACE(text) function. This comma delimited list can be overloaded by a DONTSPACE preferences variable:
SpreadSheetPlugin.zip in your twiki installation directory. Content:
| File: | Description: |
|---|---|
data/TWiki/SpreadSheetPlugin.txt | Plugin topic |
data/TWiki/SpreadSheetPlugin.txt,v | Plugin topic repository |
lib/TWiki/Plugins/SpreadSheetPlugin.pm | Plugin Perl module |
| Plugin Author: | TWiki:Main/PeterThoeny |
| Plugin Version: | 03 Apr 2004 |
| Change History: | |
| 03 Apr 2004: | Added $ABS(), $LISTIF(); fixed $VALUE() to remove leading zeros; changed $FIND() and $SEARCH() to return 0 instead of empty string if no match |
| 21 Mar 2004: | Added $LISTITEM(); fixed call to unofficial function |
| 16 Mar 2004: | Added $LISTMAP(), $LISTREVERSE(), $LISTSIZE(), $LISTSORT(), $LISTUNIQUE(), $SETM(); retired $COUNTUNIQUE() in favor of $COUNTITEMS($LISTUNIQUE()); fixed evaluation order issue of $IF(); fixed missing eval error messages suppressed since version 06 Mar 2004; redirect stderr messages to warning |
| 08 Mar 2004: | Added $LIST() |
| 06 Mar 2004: | Added $AND(), $MOD(), $NOT(), $OR(), $PRODUCT(), $PROPER(), $PROPERSPACE(), $RAND(), $REPEAT(), $SIGN(), $VALUE(); added digits parameter to $ROUND(); renamed $MULT() to $PRODUCT(); $MULT() is deprecated and undocumented |
| 27 Feb 2004: | Added $COUNTUNIQUE() |
| 24 Oct 2003: | Added $SET(), $GET(), $MEDIAN(); added $SUMPRODUCT(), inspired by TWiki:Main/RobertWithrow; added $SUMDAYS(), contributed by TWiki:Main/SvenDowideit |
| 21 Oct 2003: | Added support for lists (1, 2, 3) and lists of table ranges (R1:C1..R1:C5, R3:C1..R3:C5) for all functions that accept a table range; added $TIMEADD(); in $TIMEDIFF() added week unit; in $FORMATTIME() changed $weekday to $wd and added $wday and $weekday |
| 14 Oct 2003: | Added $TIME(), $TODAY(), $FORMATTIME(), $FORMATGMTIME(), $TIMEDIFF() |
| 13 Oct 2003: | Added $MULT(), contributed by TWiki:Main/GerritJanBaarda |
| 30 Jul 2003: | Added $TRANSLATE() |
| 19 Jul 2003: | Added $FIND(), $NOP(), $REPLACE(), $SEARCH(), $SUBSTITUTE(), contributed by TWiki:Main/PaulineCheung |
| 19 Apr 2003: | Added $COUNTSTR(), $EXACT(), $IF(), $ROUND(), $TRIM(); added $FORMAT(), contributed by TWiki:Main/JimStraus; support % modulus operator in $EVAL, $INT, and $ROUND; fixed bug in $DEF |
| 07 Jun 2002: | Added $DEF(), contributed by TWiki:Main/MartinFuzzey; allow values with HTML formatting like <u>102</u>, suggested by TWiki:Main/GladeDiviney; added SKIPINCLUDE setting |
| 12 Mar 2002: | Support for multiple functions per nesting level |
| 15 Jan 2002: | Added $CHAR(), $CODE() and $LENGTH() |
| 12 Nov 2001: | Added $RIGHT() |
| 12 Aug 2001: | Fixed bug of disappearing multi-column cells |
| 19 Jul 2001: | Fixed incorrect $SUM calculation of cell with value 0 |
| 14 Jul 2001: | Changed to plug & play |
| 01 Jun 2001: | Fixed insecure dependencies for $MIN and $MAX |
| 16 Apr 2001: | Fixed div by 0 bug in $AVERAGE |
| 17 Mar 2001: | Initial version |
| CPAN Dependencies: | none |
| TWiki:Plugins/Benchmark: | GoodStyle 99%, FormattedSearch 99%, SpreadSheetPlugin 95% |
| Other Dependencies: | none |
| Perl Version: | 5.000 and up |
| Plugin Home: | http://TWiki.org/cgi-bin/view/Plugins/SpreadSheetPlugin |
| Feedback: | http://TWiki.org/cgi-bin/view/Plugins/SpreadSheetPluginDev |
StandardColors | 16 Dec 2003 - 07:59 - r1.6 | PeterThoeny |
| #000000 | #000033 | #000066 | #000099 | #0000CC | #0000FF |
| #003300 | #003333 | #003366 | #003399 | #0033CC | #0033FF |
| #006600 | #006633 | #006666 | #006699 | #0066CC | #0066FF |
| #009900 | #009933 | #009966 | #009999 | #0099CC | #0099FF |
| #00CC00 | #00CC33 | #00CC66 | #00CC99 | #00CCCC | #00CCFF |
| #00FF00 | #00FF33 | #00FF66 | #00FF99 | #00FFCC | #00FFFF |
| #330000 | #330033 | #330066 | #330099 | #3300CC | #3300FF |
| #333300 | #333333 | #333366 | #333399 | #3333CC | #3333FF |
| #336600 | #336633 | #336666 | #336699 | #3366CC | #3366FF |
| #339900 | #339933 | #339966 | #339999 | #3399CC | #3399FF |
| #33CC00 | #33CC33 | #33CC66 | #33CC99 | #33CCCC | #33CCFF |
| #33FF00 | #33FF33 | #33FF66 | #33FF99 | #33FFCC | #33FFFF |
| #660000 | #660033 | #660066 | #660099 | #6600CC | #6600FF |
| #663300 | #663333 | #663366 | #663399 | #6633CC | #6633FF |
| #666600 | #666633 | #666666 | #666699 | #6666CC | #6666FF |
| #669900 | #669933 | #669966 | #669999 | #6699CC | #6699FF |
| #66CC00 | #66CC33 | #66CC66 | #66CC99 | #66CCCC | #66CCFF |
| #66FF00 | #66FF33 | #66FF66 | #66FF99 | #66FFCC | #66FFFF |
| #990000 | #990033 | #990066 | #990099 | #9900CC | #9900FF |
| #993300 | #993333 | #993366 | #993399 | #9933CC | #9933FF |
| #996600 | #996633 | #996666 | #996699 | #9966CC | #9966FF |
| #999900 | #999933 | #999966 | #999999 | #9999CC | #9999FF |
| #99CC00 | #99CC33 | #99CC66 | #99CC99 | #99CCCC | #99CCFF |
| #99FF00 | #99FF33 | #99FF66 | #99FF99 | #99FFCC | #99FFFF |
| #CC0000 | #CC0033 | #CC0066 | #CC0099 | #CC00CC | #CC00FF |
| #CC3300 | #CC3333 | #CC3366 | #CC3399 | #CC33CC | #CC33FF |
| #CC6600 | #CC6633 | #CC6666 | #CC6699 | #CC66CC | #CC66FF |
| #CC9900 | #CC9933 | #CC9966 | #CC9999 | #CC99CC | #CC99FF |
| #CCCC00 | #CCCC33 | #CCCC66 | #CCCC99 | #CCCCCC | #CCCCFF |
| #CCFF00 | #CCFF33 | #CCFF66 | #CCFF99 | #CCFFCC | #CCFFFF |
| #FF0000 | #FF0033 | #FF0066 | #FF0099 | #FF00CC | #FF00FF |
| #FF3300 | #FF3333 | #FF3366 | #FF3399 | #FF33CC | #FF33FF |
| #FF6600 | #FF6633 | #FF6666 | #FF6699 | #FF66CC | #FF66FF |
| #FF9900 | #FF9933 | #FF9966 | #FF9999 | #FF99CC | #FF99FF |
| #FFCC00 | #FFCC33 | #FFCC66 | #FFCC99 | #FFCCCC | #FFCCFF |
| #FFFF00 | #FFFF33 | #FFFF66 | #FFFF99 | #FFFFCC | #FFFFFF |
StartingPoints | 22 Mar 2003 - 06:32 - r1.4 | PeterThoeny |
TWikiAccessControl | 14 Apr 2003 - 07:19 - r1.28 | PeterThoeny |
.htpasswd if authentication is enabled.
Main web, like the TWikiAdminGroup. To create a new group:
Edit TWikiGroups by entering a new topic with a name that ends in Group. Example:
SomeGroup
Set GROUP = < list of Users and/or Groups >
Set ALLOWTOPICCHANGE = < list of Users and/or Groups >
Set GROUP = Main.SomeUser, Main.OtherUser, Main.SomeGroup
Set ALLOWTOPICCHANGE = Main.TWikiAdminGroup
Set DENYTOPICCHANGE = < list of Users and Groups >
Set ALLOWTOPICCHANGE = < list of Users and Groups >
Set DENYTOPICCHANGE = Main.SomeBadBoy, Main.SomeBadGirl, Main.SomeHackerGroup
Set ALLOWTOPICCHANGE = Main.SomeGoodGuy, Main.SomeGoodGirl, Main.TWikiAdminGroup
Set DENYWEBCHANGE = < list of Users and Groups >
Set ALLOWWEBCHANGE = < list of Users and Groups >
Set DENYTOPICRENAME = < list of Users and Groups >
Set ALLOWTOPICRENAME = < list of Users and Groups >
Set DENYTOPICRENAME = Main.SomeBadBoy, Main.SomeBadGirl, Main.SomeHackerGroup
Set ALLOWTOPICRENAME = Main.SomeGoodGuy, Main.SomeGoodGirl, Main.TWikiAdminGroup
Set DENYWEBRENAME = < list of Users and Groups >
Set ALLOWWEBRENAME = < list of Users and Groups >
DENYTOPICVIEW / ALLOWTOPICVIEW preferences variables, provided that the view script is authenticated. However this setup is not recommended since all content is searchable within a web - a search will turn up view restricted topics.
all webs search option from accessing obfuscated webs. Do so by enabling the NOSEARCHALL variable in WebPreferences:
Set NOSEARCHALL = on
Set DENYWEBVIEW = < list of Users and Groups >
Set ALLOWWEBVIEW = < list of Users and Groups >
DENYWEBVIEW is evaluated before ALLOWWEBVIEW. Access is denied if the authenticated person is in the DENYWEBVIEW list, or not in the ALLOWWEBVIEW list. Access is granted in case DENYWEBVIEW and ALLOWWEBVIEW is not defined.
NOSEARCHALL variable in its WebPreferences topic:
Set NOSEARCHALL = on
view to the list of authenticated scripts in the .htaccess file.
view script is authenticated, which means that all Users have to login, even for read-only access. (An open guest account, like TWikiGuest, can get around this, allowing anyone to login to a common account with, for example, view-only access for public webs.) TWikiInstallationGuide has more on Basic Authentication, using the .htaccess file.
Set DENYWEBVIEW = < list of Users and Groups >
Set ALLOWWEBVIEW = < list of Users and Groups >
DENYWEBVIEW is evaluated before ALLOWWEBVIEW. Access is denied if the authenticated person is in the DENYWEBVIEW list, or not in the ALLOWWEBVIEW list. Access is granted in case DENYWEBVIEW and ALLOWWEBVIEW is not defined.
NOSEARCHALL variable in its WebPreferences topic:
Set NOSEARCHALL = on
$doRememberRemoteUser flag in lib/TWiki.cfg as described in TWikiUserAuthentication. Galeon will now remember the IP address of an authenticated user.
view script to viewauth (or better, create a symbolic link)
viewauth to the list of authenticated scripts in the .htaccess file. The view script should not be listed in the .htaccess file.
view script to the viewauth script once (this happens only if the user has never edited a topic). Doing so will ask for authentication. The viewauth script shows the requested topic if the user could log on and if the user is authorized to see that web.
$superAdminGroup variable in lib/TWiki.cfg to the name of a group of Users who are always allowed to edit/view topics.
$superAdminGroup = "TWikiAdminGroup";
TWikiAdminCookBook | 01 Feb 2003 - 20:46 - r1.2 | PeterThoeny |
Main web to User. It will make WikiWord links to usernames more meaningful (User.UserName instead of Main.UserName); but does not bring much gain for other types of topics like (User.EngineeringGroup or User.TokyoOffice). Just rename data/Main to data/User, and change $mainWebname variable in lib/TWiki.cfg file. Signatures in all existing topics need to be fixed as well.
See also TWiki:Codev.RenameMainWebToHome, TWiki:Codev.RenameTheMainWeb, TWiki:Codev.SeparateHowtoWeb for arguments pro and con.
.htaccess file.
AuthName 'TWiki UserName (i.e. TWikiGuest/guest)'
Edit, without losing Wiki spirit. Comments can be entered in a conventional Web form style with a text box and a submit button. This is all displayed on a TWiki page without having to use TWiki's Edit. Text added appears exactly as if edited normally, and topic can be edited also using the full TWiki Edit. This is useful to encourage participation among your users who are not yet comfortable with TWiki capabilities.
"$SUM( $ABOVE() )" to tables located in TWiki topics.
TWikiCategoryTable | 18 Sep 2001 - 06:31 - r1.7 | PeterThoeny |
TWikiContributor | 09 May 2004 - 06:50 - r1.11 | PeterThoeny |
TWikiDocGraphics | 16 Jul 2004 - 16:07 - r1.31 | TommiKomulainen |
%PUBURL%/%TWIKIWEB%/TWikiDocGraphics/help.gif to show the
icon
%VARIABLES%, may be worth checking out for extended use
%ICON{"pdf"}% to show the | Icon | File Name | Comment |
|---|---|---|
| | help.gif | Help |
| | note.gif | Note |
| | bubble.gif | Speech bubble |
| | tip.gif | Tip / Idea |
| | warning.gif | Warning / Important |
| | stop.gif | Stop |
| | target.gif | Blue target |
| | pencil.gif | Refactor / Edit |
| | choice-yes.gif | Yes / Done |
| | choice-no.gif | No |
| | choice-cancel.gif | Cancel |
| | updated.gif | Updated |
| | new.gif | New |
| | starred.gif | Highlight (positive) |
| | stargold.gif | Favorites (gold star) |
| | hand.gif | Pointing hand |
| | arrowleft.gif | Arrow red left |
| | arrowright.gif | Arrow red right |
| | arrowup.gif | Arrow red up |
| | arrowdown.gif | Arrow red down |
| | arrowbleft.gif | Arrow blue left |
| | arrowbright.gif | Arrow blue right |
| | arrowbup.gif | Arrow blue up |
| | arrowbdown.gif | Arrow blue down |
| | arrowdot.gif | Meet here (arrows to red dot) |
| | go_start.gif | Go start |
| | go_fb.gif | Go fast back |
| | go_back.gif | Go back |
| | go_forward.gif | Go forward |
| | go_ff.gif | Go fast forward |
| | go_end.gif | Go end |
| | wip.gif | Work in progress |
| | rfc.gif | Request for comments |
| | days.gif | Days |
| | hourglass.gif | Hour glass |
| | watch.gif | Watch |
| | globe.gif | Globe |
| | home.gif | Home |
| | group.gif | Group |
| | person.gif | Person |
| | persons.gif | Persons |
| | lock.gif | Lock |
| | folder.gif | Folder |
| | lockfolder.gif | Locked folder |
| | lockfoldergray.gif | Locked folder, gray |
| | locktopic.gif | Locked topic |
| | locktopicgray.gif | Locked topic, gray |
| | refreshtopic.gif | Refresh topic |
| | viewtopic.gif | View topic |
| | edittopic.gif | Edit topic |
| | topicdiffs.gif | Topic difference |
| | topicbacklinks.gif | Topic back-links |
| | newtopic.gif | New topic |
| | searchtopic.gif | Search topic |
| | printtopic.gif | Print topic |
| | attachfile.gif | Attach file |
| | recentchanges.gif | Recent changes |
| | changes.gif | Changes |
| | notify.gif | Notify |
| | mail.gif | |
| | trash.gif | Trash |
| | empty.gif | Empty transparent 16x16 spacer |
| | line_ud.gif | Line graph up-down |
| | line_lr.gif | Line graph left-right |
| | line_udlr.gif | Line graph up-down-left-right |
| | line_ur.gif | Line graph up-right |
| | line_rd.gif | Line graph right-down |
| | line_ld.gif | Line graph left-down |
| | line_ul.gif | Line graph up-left |
| | line_udr.gif | Line graph up-down-right |
| | line_lrd.gif | Line graph left-right-down |
| | line_udl.gif | Line graph up-down-left |
| | line_ulr.gif | Line graph up-left-right |
| | dot_ud.gif | Dot graph up-down |
| | dot_lr.gif | Dot graph left-right |
| | dot_udlr.gif | Dot graph up-down-left-right |
| | dot_ur.gif | Dot graph up-right |
| | dot_rd.gif | Dot graph right-down |
| | dot_ld.gif | Dot graph left-down |
| | dot_ul.gif | Dot graph up-left |
| | dot_udr.gif | Dot graph up-down-right |
| | dot_lrd.gif | Dot graph left-right-down |
| | dot_udl.gif | Dot graph up-down-left |
| | dot_ulr.gif | Dot graph up-left-right |
| | xml.gif | XML |
TWikiDocumentation | 31 Jan 2003 - 07:15 - r1.43 | PeterThoeny |
| Resource | Required Server Environment * |
|---|---|
| Perl | 5.005_03 or higher (5.6.1 recommended, 5.8.0 not recommended yet, see TWiki:Codev.IssuesWithPerl5dot8) |
| Non-standard Perl modules | • Unix: Net::SMTP (or sendmail) • Windows: Net::SMTP, MIME::Base64, Digest::SHA1 |
| RCS | 5.7 or higher (including GNU diff) Optional, but the all-Perl RCS replacement is not currently recommended for live sites - see TWiki:Codev.RcsLite |
GNU diff | GNU diff 2.7 or higher is required when not using the all-Perl RcsLite. Install on PATH if not included with RCS (check version with diff -v) Must be the version used by RCS, to avoid problems with binary attachments - RCS may have hard-coded path to diff |
| Other external programs | fgrep, egrep |
| Cron/scheduler | • Unix: cron • Windows: cron equivalents |
| Web server | Apache 1.3 is well supported; Apache 2.0 is not recommended yet (see TWiki:Codev.IssuesWithApache2dot0). For other servers, CGI support, authentication, extended path info required; also, the register script is likely to need significant changes |
mod_perl, web hosts, etc.
diff and grep tools if in doubt!) and TWiki:Codev/TWikiOnLinux.
/home/httpd/twiki and unzip the TWiki distribution into this directory.
twiki/bin directory of TWiki must be set as a cgi-bin directory. Add /home/httpd/twiki/bin to file httpd.conf (typcially located in /etc/httpd/) with only ExecCGI option.
twiki/pub directory of TWiki must be set so that it is visible as a URL. Add /home/httpd/twiki to file httpd.conf with normal access options (copy from /home/httpd/html ).
ScriptAlias for /twiki/bin and Alias for /twiki to file httpd.conf .
ScriptAlias must come before the Alias, otherwise, Apache will fail to correctly set up /twiki/bin/, by treating it as just another subdirectory of the /twiki/ alias.
twiki/data and twiki/templates directories should be set so that they are not visible as URLs. Add them to httpd.conf with deny from all.
Examplehttpd.confentries:ScriptAlias /twiki/bin/ "/home/httpd/twiki/bin/" Alias /twiki/ "/home/httpd/twiki/" <Directory "/home/httpd/twiki/bin"> Options +ExecCGI SetHandler cgi-script Allow from all </Directory> <Directory "/home/httpd/twiki/pub"> Options FollowSymLinks +Includes AllowOverride None Allow from all </Directory> <Directory "/home/httpd/twiki/data"> deny from all </Directory> <Directory "/home/httpd/twiki/templates"> deny from all </Directory>
/etc/rc.d/rc5.d/S85httpd restart .
twiki/bin directory is CGI-enabled by trying visiting it in your browser:
bin directory, http://yourdomain.com/twiki/bin/.
"Forbidden. You don't have permission to access /twiki/bin/ on this server".
"Index of /twiki/bin" - recheck your httpd.conf file.
pub)
If you are not able to create the
TWiki dir: What it is: Where to copy: Example: twikistart-up pages root TWiki dir /home/smith/twiki/twiki/binCGI bin CGI-enabled dir /home/smith/twiki/bintwiki/liblibrary files same level as twiki/bin/home/smith/twiki/libtwiki/pubpublic files htdoc enabled dir /home/smith/twiki/pubtwiki/datatopic data dir secure from public access /home/smith/twiki/datatwiki/templatesweb templates dir secure from public access /home/smith/twiki/templates
twiki/lib directory at the same level as the twiki/bin directory (e.g. because CGI bin directories can't be under your home directory and you don't have root access), you can create this directory elsewhere and edit the setlib.cfg file in the bin directory:
# -------------- Change these settings if required
$twikiLibPath = '/some/other/path/lib'; # Path to lib directory containing TWiki.pm
You can also edit $localPerlLibPath in the setlib.cfg file if you are not root and need to install additional CPAN modules, but can't update the main Perl installation files on the server. Just set this variable to the full pathname to your local lib directory, typically under your home directory.
/usr/bin/perl. If it's elsewhere, change the path to Perl in the first line of each script in the twiki/bin directory, or create a symbolic link from /usr/bin/perl.
.cgi extension to run. Some systems need .pl, the regular Perl extension. Rename all twiki/bin scripts if necessary.
twiki/bin directory as executable to -rwxr-xr-x (755).
.tmpl files it is necessary to chown and chgrp -R twiki so all the files have the owner you want.
nobody ownership for all files manipulated by the CGI scripts (executed by the Web server), and user twiki for all other files. You can:
nobody with another user if your server executes scripts under a different name (ex: default for Debian is www-data).
testenv script from your browser: http://yourdomain.com/twiki/bin/testenv. It will show you the user name of the CGI scripts, a table listing all CGI environment variables, and a test of your twiki/lib/TWiki.cfg configuration file (you'll configure that in a minute).
twiki with your own username
twiki/data so that they are writable by user nobody. A simple way is to chmod them to -rw-rw-r-- (664) and to chown them to nobody.
twiki/data directory and its subdirectories so that files in there are writable by user nobody. A simple way is to chmod them to drwxrwxr-x (775) and to chown them to nobody.
twiki/pub directory and all its subdirectories so that files in there are writable by user nobody. A simple way is to chmod them to drwxrwxr-x (775) and to chown them to nobody.
twiki/data/*/*.txt,v RCS repository files in the installation package are locked by user nobody. If your CGI scripts are not running as user nobody, it's not possible to check in files (you'll see that the revision number won't increase after saving a topic). In this case, you need to unlock all repository files (check the RCS man pages) and lock them with a different user, such as www-data, or delete them all - new files will be automatically created the first time each topic is edited. A simple way to change ownership is with a search-and-replace in all files; for example, using Perl (type this carefully!):
cd twiki/data perl -pi~ -e 'NR <= 10 && s/nobody:/www-data:/ ' */*,v
twiki/lib/TWiki.cfg, setting the variables to your needs.
$scriptSuffix variable to cgi or pl if required.
$storeTopicImpl = "RcsWrap"; for the RCS executables and make sure RCS is installed. Set $rcsDir in twiki/lib/TWiki.cfg to match the location of your RCS binaries. You can check this by issuing the command rcs at the prompt, it should result in something like "rcs: no input file".
diff, by typing diff -v - an error indicates you have a non-GNU diff, so install the GNU diffutils package and make sure that diff is on the PATH used by TWiki (see $safeEnvPath in the TWiki.cfg file).
$storeTopicImpl = "RcsLite"; for the Perl based RCS
twiki/data , twiki/templates and all their subdirectories should be set so that they are not visible through URLs. (Alternatively, move the directories to a place where they are not visible, and change the variables in twiki/lib/TWiki.cfg accordingly)
testenv script from your browser: http://yourdomain.com/twiki/bin/testenv. Check if your twiki/lib/TWiki.cfg configuration file settings are correct.
WIKIWEBMASTER email address, and other email settings required for registration and WebChangesAlert to work:
WIKIWEBMASTER should be set to the email address of the TWiki administrator
SMTPMAILHOST is typically set on Windows or other non-Unix/Linux systems, where sendmail or similar is not available. When this is set and the Perl module Net::SMTP is installed, TWiki will connect to this SMTP server (e.g. mail.yourdomain.com) to send email for user registration and WebChangesAlerts. If you do have a sendmail-type program, leave SMTPMAILHOST unset so that the external sendmail program is used instead (defined by $mailProgram in TWiki.cfg).
SMTPSENDERHOST is optional, and set to the domain name sending the email (e.g. twiki.yourdomain.com). For use where the SMTP server requires that you identify the TWiki server sending mail. If not set, Net::SMTP will guess it for you.
http://yourdomain.com/twiki/bin/view and start TWiki-ing away!
http://yourdomain.com/twiki/ to get the pre-TWiki index.html page, with a link to the view script. Customize this page if you want a public intro screen with a login link, instead of immediately calling up the .htaccess login dialog by going directly to view.
WEBCOPYRIGHT messages, and other preferences.
%VARIABLES%. Define site-level variables in the TWikiPreferences topic. See also: TWikiVariables.
.htaccess.txt in the twiki/bin directory to .htaccess and change it to your needs. For details, consult the HTTP server documentation (for Apache server: [1], [2]). In particular, the following red part needs to be configured correctly: Redirect /urlpathto/twiki/index.html http://yourdomain.com/urlpathto/twiki/bin/view AuthUserFile /filepathto/twiki/data/.htpasswd ErrorDocument 401 /urlpathto/twiki/bin/oops/TWiki/TWikiRegistration?template=oopsauth
.cgi or .pl file extension to the bin scripts, make sure to do the same for edit, view, preview, and all the other script names in .htaccess.
.htaccess does not have the desired effect, you need to enable it: Add "AllowOverride All" to the Directory [3] section of access.conf for your twiki/bin directory.
twiki/data/.htpasswd.txt file contains several TWiki core team user accounts and a guest user account. You probably want to remove those accounts by deleting the entries in .htpasswd. Do not remove the guest user if you want to allow guest logins.
.txt and .txt,v files in the twiki/data/TWiki directory.
name="" parameter of the input tags must start with: "Twk0..." (if this is an optional entry), or "Twk1..." (if this is a required entry). This ensures that the fields are carried over into the user home page correctly.
data/.htpasswd file. The .htpasswd file that comes with the TWiki installation includes user accounts for TWiki core team members that are used for testing on TWiki.org. You can edit the file and delete those lines.
twiki/templates/Someweb directory (otherwise, templates are inherited from twiki/templates).
Main.UserName or %MAINWEB%.UserName format. (The %MAINWEB% variable is an advantage if you ever change the Main web name, but the standard Main.UserName is easier for users to enter, which is the bottom line!
binutils to list of Cygwin packages, and added warning not to use Apache 2.0
SMTPMAILHOST for user registration and notification
grep commands in TWiki.cfg
c:/twiki directory
c:/cygwin directories) is essential for binary attachment uploads to work properly
egrep and fgrep on some Cygwin versions (fix from TWiki:Main.DavidLeBlanc)
c:\temp, based on comments by TWiki:Main.MaryDeMarco
pcre to list of Cygwin packages (required by grep), fixed bug in Apache config (Apache doesn't allow '#' comments on same line as config)
register script committed to TWiki:Codev.TWikiAlphaRelease - most users can ignore this for now, but the edits in step 5 will eventually go away
uname -a command to check Cygwin DLL version, and delete Apache config's PassEnv line
register, fixed minor typo in Cygwin binary mode section, after beta testing by TWiki:Main.JerryWard (thanks!)
| Component | Name, version | Comment |
|---|---|---|
| Operating System | Windows 2000 | Should also work for Windows NT |
| Web Server | Apache 1.3.26 | Windows-specific security holes fixed in this build (check latest version at http://httpd.apache.org, but don't use Apache 2.0 yet) |
| Unix tools | Cygwin 1.3.9 | Simplest way to get a whole set of required tools |
| Perl | Cygwin perl-5.6.1-2 | Comes with Cygwin |
| RCS | Cygwin rcs-5.7-2 | Comes with Cygwin, includes a file corruption bugfix |
TWiki.cfg, and is probably a simpler choice if you need an easy way to install mod_perl (see TWiki:Codev.ModPerl). TWiki:Codev.ActiveState Perl can be substituted without too much hassle, and in fact the same TWiki.cfg can be used for both TWiki:Codev.ActiveState and Cygwin Perl.
$ : Cygwin DLL version is the number in 1.3.x format $ uname -r $ less c:/your-apache-dir/Announcement $ perl -v $ rcs -VIf you have an older version of any component, do yourself a favour and upgrade it as part of the install process.
nano, a non-GUI editor, but if you prefer to use a GUI editor, you should first install PFE, a freeware editor that supports Unix format files. PFE is available on download.com and Simtel.
Another good TWiki:Codev.OpenSource editor is SciTE (aka WSciTE), available at http://www.scintilla.org/SciTE.html.
c:/apache almost everywhere in Windows - try it in a File Open dialogue box. The main exception is the Win2000 cmd.exe command line shell - here, you must use double quotes around forward slashes, e.g. dir "c:/apache" will work fine.
The reason this matters is that '\' is a special character to Perl and other tools, so it's much easier to use '/' everywhere.
c:/apache format, but it also provides a more Unixlike syntax, e.g. /usr/bin/rcs.exe, because some Unix tools ported onto Cygwin only support the Unix format.
When you launch a Cygwin shell, your existing PATH variable is translated from the Windows format to the Unix format, and the ';' separators in the Windows PATH are changed into ':' separators as required by Unix. A Cygwin tool (e.g. Cygwin Perl or Cygwin RCS) will always use the Unix PATH format, and will accept Unix format pathnames.
httpd.conf file. There have been some security-related bugs in Apache with long pathnames, which are a bit more likely if you use spaces, so it's best to just avoid long names and using spaces.
ls, egrep, and RCS tools that it (typically) launches with the bash shell.
If you need to use spaces in file names (not recommended), you may be able to put double quotes around the file name in the TWiki.cfg file - however, it's not clear whether all the TWiki code would work with this.
apache_1.3.X-win32-x86-no_src.msi where 'X' is 20 or higher
instmsi.exe) from the Apache Win32 download page - this enables you to install .MSI files. You may need to update the .MSI Installer if you have an old version under NT.
c:\ as the installation directory - this actually installs Apache into c:\apache (if you specify c:\apache, it installs into c:\apache\Apache). Putting Apache into c:\Program Files is not recommended for easy editing of Apache config files from Cygwin.
apache -k start -n apache) or standalone (by typing apache -k start)
apache -k restart for standalone Apache process running in another window
apache -k restart -n apache for Apache running as a Win2000 service (-n gives name of service)
apache -k stop.
setup.exe in a directory, e.g. c:\download\cygwin-dist.
Now run the Cygwin setup.exe file - this will also install Perl and RCS in one fell swoop.
c:\download\cygwin-dist as the local package directory, and suitable proxy settings, then pick a local mirror site
bash
binutils
diffutils
gcc
grep
gzip
make
nano
ncftp
pcre
perl (5.6.1-2 or higher)
rcs (5.7-2 or higher)
tar
textutils
unzip
w32api
wget (optional, useful for Perl install and TWiki:Codev.ReadWriteOfflineWiki)
lynx if you are upgrading from an older Cygwin installation (to avoid annoying DLL messages) - if you want Lynx, read the Cygwin FAQ entry and upgrade libncurses5.
gcc, which is required for simple installation of Perl modules that use the C language. Something like 20 to 30 MB of free disk space should be enough for Cygwin, but I didn't test this (try a du -k / after a new install and let me know the last figure).
bash shell, which has command line editing features
bash will 'complete' the name. If bash beeps at you, hit TAB again to see the files/directories that match the name so far, and type a bit more before hitting TAB. This saves a lot of time!
rcs -V - you should see the RCS version, 5.7
perl -v - you should see cygwin mentioned in the first line, and the Perl version, 5.6.1
grep home /etc/passwd - you should see some output.
$ mkdir /twiki /c c:/twiki $ mount -b -s c:/twiki /twiki $ mount -b -s c:/ /c $ mount -b -c /cygdrive $ mount Device Directory Type Flags C:\cygwin\bin /usr/bin system binmode C:\cygwin\lib /usr/lib system binmode C:\cygwin / system binmode c:\twiki /twiki system binmode c: /c system binmode
/twiki (known as a 'mount point') to map onto c:/twiki and for that directory tree to always be in binary mode, and does the same for /c, mapping it onto c:/. The last-but-one command sets binary as the default for any unmounted drives (e.g. z:/, aka /cygdrive/z).
mount say 'binmode' under Flags
C:\cygwin directories do not, you should uninstall and then re-install Cygwin to ensure that binary attachment uploads will work.
/twiki/bin/view or /c/apache/Announcement - see the Cygwin documentation for more details on this.
cd /twiki
echo hi >t
cat -v t - you should see hi as the output
hi^M as output, your /twiki directory is not in binary mode
rm t
.profile file. For more information on binary vs text mode, see this User Guide section and this FAQ entry.
c:/twiki directory.
8. Install TWiki
Unzip the ZIP file under c:/twiki using WinZip, or by going into Cygwin and doing the following - you can hit the TAB key to complete filenames after you've typed the first part:
$ cd /twiki $ unzip TWiki20011201.zip
'nano', or the Windows PFE editor, unless you already know 'vi'), edit c:/apache/conf/httpd.conf as follows - this tells Apache where TWiki lives, and removes the need to tinker with the Windows 2000 environment settings.
nano -w filename - this turns off wrapping of long lines.
c:\temp directory, by typing mkdir c:\temp in a DOS command line window
# Change this to point to the Apache administrator (e.g. you) ServerAdmin you@yourdomain.com # Replaces DocumentRoot "C:/apache/htdocs" DocumentRoot "C:/twiki" # Replaces <Directory "C:/apache/htdocs"> <Directory "C:/twiki">
# Alias /twiki/ "C:/twiki/"
# ScriptAlias /twiki/bin/ "C:/twiki/bin/"
<Directory "C:/twiki/bin/">
# RD: Changed None to All in next line, to enable .htaccess
AllowOverride All
Allow From All
Options ExecCGI
SetHandler cgi-script
</Directory>
# Environment setup required to run Apache as service or as a
# standalone process.
<IfModule mod_env.c>
# Adjust TZ for your server timezone, e.g. EST5EDT - put the non-daylight-savings
# timezone code first (e.g. EST or GMT), followed by the number of hours that it's behind GMT
# during non-daylight-savings time (use '-5' for timezones in advance of GMT).
SetEnv TZ GMT0BST
SetEnv RCSINIT -x,v/
# Adjust TEMP and TMP for your server and create directories if necessary
SetEnv TEMP c:/temp
SetEnv TMP c:/temp
SetEnv LOGNAME system
SetEnv HOME c:/twiki
</IfModule>
2. Configure Apache (part 2)
Add an AddHandler line to the <IfModule mod_mime.c> section of httpd.conf - this removes the need to rename all the TWiki CGI scripts later in the installation.
#
# Document types
#
<IfModule mod_mime.c>
# TWiki setup - avoid renaming scripts
AddHandler cgi-script .
</IfModule>
c:/twiki/lib/TWiki.cfg (or in Cygwin terms, /twiki/lib/TWiki.cfg) as follows:
c:/twiki format pathnames for Cygwin, given the above binmode setup, but I have not tested this fully - a Cygwin Perl test script does generate binary mode files in this configuration, so it should work with RCS as well (really need a small RCS file corruption test case). Watch out for RCS file corruption carefully if you do try c:/twiki pathnames with Cygwin, and do report your experiences...
fgrep and egrep to grep, requiring the settings for these commands to point directly to grep (with suitable flags to provide fgrep and egrep behaviour).
# variables that need to be changed when installing on a new server:
# ==================================================================
# http://galeon.sourceforge.net/Main : link of TWiki icon in upper left corner :
$wikiHomeUrl = "http://yourdomain.com/bin/view";
# Host of TWiki URL : (Example "http://myhost.com:123")
$defaultUrlHost = "http://yourdomain.com";
# : cgi-bin path of TWiki URL:
$scriptUrlPath = "/bin";
# /twiki/pub : Public data path of TWiki URL (root of attachments) :
$pubUrlPath = "/pub";
# NOTE: Next three settings should be valid absolute pathnames using Cygwin; if using
# TWiki:Codev.ActiveState Perl, use z:/twiki format pathnames if your TWiki directory is not on C:.
# Public data directory, must match $pubUrlPath :
$pubDir = "/twiki/pub";
# Template directory :
$templateDir = "/twiki/templates";
# Data (topic files) root directory :
$dataDir = "/twiki/data";
....
# Set ENV{'PATH'} explicitly for taint checks ( #!perl -T option ) :
# (Note: PATH environment variable is not changed if set to "")
# On Windows, $safeEnvPath needs only one component, the directory where RCS is installed
# - used by 'rcsdiff' to run 'co' program, so PATH must be correct.
# Unix/Linux setting:
# $safeEnvPath = "/bin:/usr/bin";
# Using Cygwin perl, so can use Unix-like paths, with ':' as separator.
# Note that /usr/bin and /bin are identical due to default /usr/bin mount
# in Cygwin. Must NOT use 'c:/foo' type paths, as ':' is taken as separator
# meaning that 'c' is interpreted as a pathname, giving Perl taint error.
$safeEnvPath = "/bin";
# If using ActiveState perl, use Windows paths instead
# $safeEnvPath = "c:/cygwin/bin";
...
# RCS directory (find out by 'which rcs') :
$rcsDir = "c:/cygwin/bin";
...
# Unix egrep command :
$egrepCmd = "/bin/grep -E";
# Unix fgrep command :
$fgrepCmd = "/bin/grep -F";
For the cookbook install using Cygwin Perl, there's no more TWiki.cfg editing to be done, so you can get onto the next section.
# NOTE: When using ActiveState Perl, you must specify # a full Windows-style pathname, using '\\' for backslashes, # for the ls, egrep and fgrep commands, because Cygwin's shell # is not used - forward slashes are OK in Windows everywhere # except in the cmd.exe shell. Drive letters are OK - e.g. # 'c:\\foo\\ls' will work. When using Cygwin perl, just # use the default '/bin/ls' type settings. # # Unix ls command : $lsCmd = "c:\\cygwin\\bin\\ls"; # Unix egrep command : $egrepCmd = "c:\\cygwin\\bin\\grep"; # Unix fgrep command : $fgrepCmd = "c:\\cygwin\\bin\\grep";
perl line, you can restore from the .backup directory and re-run the command, as it will only edit the original files, not the backups with '~' suffixes.
$ cd /twiki/bin $ ls attach geturl oops rdiff save testenv viewfile changes installpasswd passwd register search upload edit mailnotify preview rename statistics view $ mkdir .backup $ cp * .backup $ head -1 view #!/usr/bin/perl -wT $ perl -pi~ -e 's;#!/usr/bin/perl;#!c:/cygwin/bin/perl;' *[a-z] $ head -1 view #!c:/cygwin/bin/perl -wT $ ls attach geturl oops rdiff save testenv viewfile~ attach~ geturl~ oops~ rdiff~ save~ testenv~ view~ changes installpasswd passwd register search upload changes~ installpasswd~ passwd~ register~ search~ upload~ edit mailnotify preview rename statistics view edit~ mailnotify~ preview~ rename~ statistics~ viewfileIf for some reason the edit goes wrong, just type
cp .backup/* . (while within the bin directory) to restore the original distribution files. Use ls -a to see the .backup directory, and ls -a .backup to view its contents.
Optional step: you can do 'rm *~' to clean out the backups made by Perl, but that's not essential as all the original files cannot be executed. If you do this, type the command very carefully, as a space after the '*' will wipe out all files in this directory!
5. Minor changes to TWiki scripts
TWiki Dec 2001 release only - fixed in Feb 2003 release
If using the Dec 2001 release, you now need to make some minor edits to files in the c:/twiki/bin directory, using a suitable editor (remember to use nano -w filename if you prefer nano to vi - or just use the Windows PFE editor).
register script in /twiki/bin - change line 200 to read as follows (insert the MIME::Base64:: part):
return $user . ':{SHA}' . MIME::Base64::encode_base64(Digest::SHA1::sha1($passwd));
testenv, see TWiki:Codev.CookbookActivePerlTestenv
register script to work properly. Fortunately, there is an automated tool that makes it easy to do this - it's called cpan, and goes to the Perl module archive site, http://www.cpan.org/, to download all required modules, and then build and install them. Here's what you need to do:
First of all, you need to get the cpan tool configured and working - this is only necessary once. From the Cygwin shell, type the following (putting the export command in ~/.profile is recommended to make this setting persistent). Without the TEMP variable, some modules may fail to install on Windows 2000 and higher.
$ export TEMP=/c/temp $ cpan Lots of questions about configuration and preferences - just hit Enter until you get to the questions about mirror sites, but answer the questions about FTP proxies etc if you are behind a proxy-based firewall. The CPAN tool will fetch a series of files, some quite large, as part of this setup process, so be patient...NOTE: If you are behind a non-proxy-based firewall that requires the use of passive FTP, the initial downloads of files using Net::FTP may appear to hang - just wait 5 or more minutes, however, and the CPAN tool should eventually hit on
ncftpget, which is part of Cygwin and does work OK. If this doesn't work and you are behind a typical NAT-based firewall, try doing the following at the Cygwin shell before running cpan - this forces Net::FTP to use passive FTP, letting it get through such firewalls:
$ export FTP_PASSIVE=1If this works, add this line to your
~/.profile file for future use.
Once some initial files are downloaded, you are asked to select your continent and country, and then mirror sites - just type the number of the mirror sites you want to use (pick a few in case one is down):
... (28) Turkey (29) Ukraine (30) United Kingdom Select your country (or several nearby countries) [] 30 (1) ftp://cpan.teleglobe.net/pub/CPAN (2) ftp://ftp.clockerz.net/pub/CPAN/ (3) ftp://ftp.demon.co.uk/pub/CPAN/ (4) ftp://ftp.flirble.org/pub/languages/perl/CPAN/ (5) ftp://ftp.mirror.ac.uk/sites/ftp.funet.fi/pub/languages/perl/CPAN/ (6) ftp://ftp.plig.org/pub/CPAN/ (7) ftp://mirror.uklinux.net/pub/CPAN/ (8) ftp://sunsite.doc.ic.ac.uk/packages/CPAN/ (9) ftp://usit.shef.ac.uk/pub/packages/CPAN/ Select as many URLs as you like, put them on one line, separated by blanks [] 4 7 8 Enter another URL or RETURN to quit: [] New set of picks: ftp://ftp.flirble.org/pub/languages/perl/CPAN/ ftp://mirror.uklinux.net/pub/CPAN/ ftp://sunsite.doc.ic.ac.uk/packages/CPAN/Eventually, you'll get to the CPAN tool's shell prompt, where you need to install a few modules - the tool will do all the work for you.
make and gcc packages, which are required by the CPAN installer (gcc is required for modules that include C language code) - you can install them now by launching Cygwin's setup.exe from c:/download/cygwin-dist (no need to exit the CPAN installer).
cpan shell -- CPAN exploration and modules installation (v1.59_54) cpan> install Net::SMTP May already be installed - if it is, try 'force install', since it's useful to be able to set firewall and passive FTP configuration when using Net::FTP. Make sure you answer 'Y' to the question about whether you want to configure this package. cpan> install Digest::SHA1 Lots of output about how CPAN finds, builds and installs the module - watch for any errors, though it should work fine if you have installed the Cygwin packages listed above (particularly 'gcc' and 'make'). cpan> install MIME::Base64 May already be installed.
testenv script doesn't work, go back and check the configuration of the Apache httpd.conf file, and TWiki.cfg. Have a look at the Apache error log, c:/apache/logs/error_log, and the TWiki error log, /twiki/data/log*.txt.
rcs -u and rcs -l, but it's a painfully manual process. Instead, just use Perl again to mass-edit all the RCS files, as follows:
$ cd /twiki/data $ : Make a backup of all files $ tar czvf all-files.tar.gz */* $ : Test edit a single file to check your typing $ perl -pi~~~ -e 'NR <= 10 && s/nobody:/system:/ ' Main/WebIndex.txt,v $ diff Main/WebIndex.txt,v Main/WebIndex.txt,v~~~ 5c5 < system:1.2; strict; --- > nobody:1.2; strict; $ : Now edit all the RCS files at once - use cursor-up to recall previous command $ perl -pi~~~ -e 'NR <= 10 && s/nobody:/system:/ ' */*,v $ : Check for any remaining files not edited $ grep 'strict;$' */*,v | grep -v system $ : Clean up - type this very carefully $ rm */*~~~
tar xzvf all-files.tar.gz and all your files, both .txt and .txt,v, will be back as they were before the edits.
SMTPMAILHOST in TWikiPreferences to an SMTP email host that is reachable and currently working. Otherwise you'll get a confusing message from TWiki when registering new users or running mailnotify (for WebNotify), along the lines of:
Software Error: Can't call method "mail" on an undefined value at ../lib/TWiki/Net.pm line 187.There are other settings to be made in TWikiPreferences, e.g. the
WIKIWEBMASTER and (probably) the SMTPSENDERHOST (normally your mail server or TWiki server). See the TWikiInstallationGuide for more details, what's listed here is just enough to let you run the basic tests.
http://yourdomain.com/bin/testenv and check for warnings
view script) - click around a few pages and make sure the links are OK
rdiff script) - click on the Diffs link and on the '>' links at bottom of page
register script to create a new user entry in /twiki/data/.htpasswd (the Apache password file), ability to send email via Net::SMTP, and whether SMTPMAILHOST was set correctly in TWikiPreferences.
tail -30 /c/apache/logs/error_log to see last 30 errors from Apache
error_log file to see if there are any RCS errors so far
ls and grep are working
ls and grep are working
/twiki/pub directory.
error_log file again
httpd.conf file, and TWiki.cfg. Have a look at the Apache error log, c:/apache/logs/error_log, and the TWiki error log, /twiki/data/log*.txt, and if necessary enable debugging on selected scripts (the commands are right at the top of each script) - the results go into /twiki/data/debug.txt. There is also a /twiki/data/warning.txt file that contains less serious messages.
See TWiki:Codev.TWikiPatches in case there are patches (i.e. specific code changes) for particular problems that may affect you (e.g. TWiki:Codev.ChangePasswordOnWin2K).
If you find that the Index feature doesn't work, or topic name searches fail, you should check you have set $egrepCmd and $fgrepCmd correctly, as mentioned above.
#!/bin/something). This is what has been used for this cookbook.
c:/twiki type filenames (i.e. Windows format) since you are using Apache for Windows.
mod_perl - this is somewhat more complex and follows a different model, so it's best to get some experience with TWiki, Apache and Perl first.
.htaccess file and c:/apache/conf/httpd.conf) always use Windows format paths, with forward slashes, e.g. c:/twiki
c:/cygwin/bin/perl
/twiki (using Cygwin Perl as per this cookbook)
c:/twiki
/twiki
readTopicText, saveTopicText, setTopicEditLock, checkTopicEditLock
registrationHandler, beforeEditHandler, afterEditHandler, beforeSaveHandler, writeHeaderHandler, redirectCgiQueryHandler, getSessionValueHandler, setSessionValueHandler
%SEARCH{}% variable, FormattedSearch and WebSearch
$TWIKIROOT is the root of your current 01-Dec-2001 release. As written this will require some downtime. A process for switching over without downtime is described at the end of this section.
$TWIKIROOT/bin, $TWIKIROOT/pub, $TWIKIROOT/data, $TWIKIROOT/templates, $TWIKIROOT/lib.
*.html and *.txt files in $TWIKIROOT with the new ones.
$TWIKIROOT/templates with the new ones.
%WIKIHOMEURL% with %WIKILOGOURL%
src=%PUBURLPATH%/wikiHome.gif with src=%WIKILOGOIMG%
alt="TWiki Home" with alt="%WIKILOGOALT%"
charset=iso-8859-1" with charset=%CHARSET%"
%TOPIC% to form action of GoBox
.../view%SCRIPTSUFFIX%/%WEB%/%TOPIC%" with .../view%SCRIPTSUFFIX%/%INTURLENCODE{"%WEB%/%TOPIC%"}%
$TWIKIROOT/bin with the new ones.
.cgi
$TWIKIROOT/bin/setlib.cfg and point $twikiLibPath to the absolute file path of $TWIKIROOT/lib
$TWIKIROOT/bin/.htaccess to include a directive for the new manage script:<Files "manage"> require valid-user </Files>
chmod 775 $TWIKIROOT/bin/*
TWiki.cfg configuration file in $TWIKIROOT/lib with the new one.
TWiki.pm library in $TWIKIROOT/lib with the new one.
$TWIKIROOT/lib with the new ones. Make sure to preserve any extra Plugins you might have in $TWIKIROOT/lib/TWiki/Plugins
chmod -R 664 $TWIKIROOT/lib/*
bin/testenv script from the browser (e.g. http://localhost/bin/testenv) to verify if the cgi-scripts are running as user nobody.
*,v RCS repository files delivered with the installation package are locked by user nobody and need to be changed to the user of your cgi-scripts, e.g. www-data:
twiki/data/* directories where you unzipped the installation package: A simple way to switch the locker of the RCS files is to use sed in the :
for f in *,v; do sed 's/nobody\:/www-data\:/' $f > x; mv x $f; done
twiki/data/TWiki directory where you unzipped the installation package:
InterWikis.*, TWikiRegistration.*, TWikiRegistrationPub.*, WebNotify.*, WebPreferences.*, WebStatistics.* and all WebTopic* files.
$TWIKIROOT/data/TWiki/TWikiPreferences.* to TWikiPreferencesSave.*.
*.txt and *.txt,v files from the temporary data/TWiki directory to your $TWIKIROOT/data/TWiki directory, overwriting the existing ones.
TWikiPreferencesSave.txt settings into $TWIKIROOT/data/TWiki/TWikiPreferences.txt.
data/_default directory from the temporary location to your $TWIKIROOT/data directory.
data/Sandbox directory from the temporary location to your $TWIKIROOT/data directory $TWIKIROOT/data are writable by your cgi-script user.
TWiki and _default):
WebHome.txt and WebPreferences.txt of your other webs to make sure, you have the improvements applied also in your other webs.
pub/TWiki from your temporary directory into your $TWIKIROOT/pub/TWiki directory.
$TWIKIROOT/pub/TWiki are writable by your cgi-script user.
pub/icn directory from the temporary location to your $TWIKIROOT/pub/icn directory.
ALLOWWEBMANAGE to the FINALPREFERENCES list so that nobody can overwrite the setting:
$TWIKIROOT/bin/testenv script from your browser (e.g. http://localhost/bin/testenv) to see if it reports any issues; fix any potential problems.
$TWIKIROOT/bin1, $TWIKIROOT/lib1, $TWIKIROOT/templates1, $TWIKIROOT/data/TWiki1 (from data/TWiki), $TWIKIROOT/pub/TWiki1 (from pub/TWiki), and configure TWiki.cfg to point to the same data and pub directory like the existing installation. Once tested and ready to go, reconfigure $TWIKIROOT/bin1/setlib.cfg and $TWIKIROOT/lib1/TWiki.cfg, then rename $TWIKIROOT/bin to $TWIKIROOT/bin2, $TWIKIROOT/bin1 to $TWIKIROOT/bin. Do the same with the lib, templates and data/TWiki directories.
REMOTE_USER environment variable. This variable is set when you enable Basic Authentication (.htaccess) or SSL "secure server" authentication (https protocol).
TWiki uses visitor identification to keep track of who made changes to topics at what time and to manage a wide range of personal site settings. This gives a complete audit trail of changes and activity.
.htaccess) to control access by protecting key scripts: attach, edit, installpasswd, manage, preview, rename, save, upload using the .htaccess file. The TWikiInstallationGuide has step-by-step instructions.
twiki/bin directory. Consult your web server documentation.
lib/TWiki.cfg. It lets you combine open access to some functions, with authentication on others, with full user activity tracking:
REMOTE_USER environment variable is set for the scripts that are under authentication. If, for example, the edit, save and preview scripts are authenticated, but not view, you would get your WikiName in preview for the %WIKIUSERNAME% variable, but view will show TWikiGuest instead of your WikiName.
view, will show the correct username instead of TWikiGuest.
$doRememberRemoteUser flag in TWiki.cfg. TWiki then persistently stores the IP address/username pairs in the file, $remoteUserFilename, which is "$dataDir/remoteusers.txt" by default.
view script to viewauth (or better, create a symbolic link)
viewauth to the list of authenticated scripts in the twiki/bin/.htaccess file. The view script should not be listed in the .htaccess file.
pthoeny. This name is normally passed to TWiki by the REMOTE_USER environment variable, and used internally. Login Usernames are maintained by your system administrator.
PeterThoeny, is recorded when you register using TWikiRegistration; doing so also generates a personal home page in the Main web.
twiki/data, there are two registration form topics, TWikiRegistration and TWikiRegistrationPub. The original form includes an intranet Login Username field. For Basic Authentication, the original form is replaced by the Pub version. If you started using TWiki on Basic Authentication and want to change, you have to switch back forms for future use, and manually correct the existing entries, by editing TWikiUsers, adding the Login Username for each member - PeterThoeny - pthoeny - 01 Jan 1999 - and also in the .htpasswd file, where you can either replace the WikiNames or duplicate the entries and have both, so both usernames will work.
NOTE: To correctly enter a WikiName - your own or someone else's - be sure to include the Main web name in front of the Wiki username, followed by a period, and no spaces. Ex:This pointsMain.WikiUsernameor%MAINWEB%.WikiUsernameWikiUserto the Galeon.Main web, where user registration pages are stored, no matter which web it's entered in. Without the web prefix, the name appears as a NewTopic? everywhere but in the Main web.
TWiki/ChangePassword ):
Forgot your old password? Then use ResetPassword instead. Please only use ResetPassword in case you really forgot your password. Thank you. After submitting this form your password will be changed. If you have questions please contact the TWiki webmaster tko@users.sourceforge.net.
TWiki/ResetPassword ):
Please only use this ResetPassword form in case you really forgot your password. Otherwise just change it using ChangePassword. Thank you. After submitting this form you will see a page with your new password appearing encrypted. You will have to e-mail this information to the Wiki webmaster, tko@users.sourceforge.net, who will set your account to use the new password.-- TWiki.Main.MikeMannix - 19 May 2002
.htpasswd if authentication is enabled.
Main web, like the TWikiAdminGroup. To create a new group:
Edit TWikiGroups by entering a new topic with a name that ends in Group. Example:
SomeGroup
Set GROUP = < list of Users and/or Groups >
Set ALLOWTOPICCHANGE = < list of Users and/or Groups >
Set GROUP = Main.SomeUser, Main.OtherUser, Main.SomeGroup
Set ALLOWTOPICCHANGE = Main.TWikiAdminGroup
Set DENYTOPICCHANGE = < list of Users and Groups >
Set ALLOWTOPICCHANGE = < list of Users and Groups >
Set DENYTOPICCHANGE = Main.SomeBadBoy, Main.SomeBadGirl, Main.SomeHackerGroup
Set ALLOWTOPICCHANGE = Main.SomeGoodGuy, Main.SomeGoodGirl, Main.TWikiAdminGroup
Set DENYWEBCHANGE = < list of Users and Groups >
Set ALLOWWEBCHANGE = < list of Users and Groups >
Set DENYTOPICRENAME = < list of Users and Groups >
Set ALLOWTOPICRENAME = < list of Users and Groups >
Set DENYTOPICRENAME = Main.SomeBadBoy, Main.SomeBadGirl, Main.SomeHackerGroup
Set ALLOWTOPICRENAME = Main.SomeGoodGuy, Main.SomeGoodGirl, Main.TWikiAdminGroup
Set DENYWEBRENAME = < list of Users and Groups >
Set ALLOWWEBRENAME = < list of Users and Groups >
DENYTOPICVIEW / ALLOWTOPICVIEW preferences variables, provided that the view script is authenticated. However this setup is not recommended since all content is searchable within a web - a search will turn up view restricted topics.
all webs search option from accessing obfuscated webs. Do so by enabling the NOSEARCHALL variable in WebPreferences:
Set NOSEARCHALL = on
Set DENYWEBVIEW = < list of Users and Groups >
Set ALLOWWEBVIEW = < list of Users and Groups >
DENYWEBVIEW is evaluated before ALLOWWEBVIEW. Access is denied if the authenticated person is in the DENYWEBVIEW list, or not in the ALLOWWEBVIEW list. Access is granted in case DENYWEBVIEW and ALLOWWEBVIEW is not defined.
NOSEARCHALL variable in its WebPreferences topic:
Set NOSEARCHALL = on
view to the list of authenticated scripts in the .htaccess file.
view script is authenticated, which means that all Users have to login, even for read-only access. (An open guest account, like TWikiGuest, can get around this, allowing anyone to login to a common account with, for example, view-only access for public webs.) TWikiInstallationGuide has more on Basic Authentication, using the .htaccess file.
Set DENYWEBVIEW = < list of Users and Groups >
Set ALLOWWEBVIEW = < list of Users and Groups >
DENYWEBVIEW is evaluated before ALLOWWEBVIEW. Access is denied if the authenticated person is in the DENYWEBVIEW list, or not in the ALLOWWEBVIEW list. Access is granted in case DENYWEBVIEW and ALLOWWEBVIEW is not defined.
NOSEARCHALL variable in its WebPreferences topic:
Set NOSEARCHALL = on
$doRememberRemoteUser flag in lib/TWiki.cfg as described in TWikiUserAuthentication. Galeon will now remember the IP address of an authenticated user.
view script to viewauth (or better, create a symbolic link)
viewauth to the list of authenticated scripts in the .htaccess file. The view script should not be listed in the .htaccess file.
view script to the viewauth script once (this happens only if the user has never edited a topic). Doing so will ask for authentication. The viewauth script shows the requested topic if the user could log on and if the user is authorized to see that web.
$superAdminGroup variable in lib/TWiki.cfg to the name of a group of Users who are always allowed to edit/view topics.
$superAdminGroup = "TWikiAdminGroup";
| Formatting Command: | Example: You write: | You get: | |||||||||||||||||||
|
Paragraphs: Blank lines will create new paragraphs. |
1st paragraph 2nd paragraph | 1st paragraph 2nd paragraph | |||||||||||||||||||
|
Headings: At least three dashes at the beginning of a line, followed by plus signs and the heading text. One plus creates a level 1 heading (most important), two pluses a level 2 heading; the maximum is level 6. Note: A Table of Content can be created automatically with the %TOC% variable, see TWikiVariables. Any heading text after !! is excluded from the TOC; for example, write ---+!! text if you do not want to list a header in the TOC.
|
---++ Sushi ---+++ Maguro |
SushiMaguro |
|||||||||||||||||||
|
Bold Text: Words get bold by enclosing them in * asterisks.
|
*Bold* | Bold | |||||||||||||||||||
|
Italic Text: Words get italic by enclosing them in _ underscores.
|
_Italic_ | Italic | |||||||||||||||||||
|
Bold Italic: Words get _bold italic by enclosing them in _ double-underscores.
|
__Bold italic__ | Bold italic | |||||||||||||||||||
|
Fixed Font: Words get shown in fixed font by enclosing them in = equal signs.
|
=Fixed font= |
Fixed font
|
|||||||||||||||||||
|
Bold Fixed Font: Words get shown in bold fixed font by enclosing them in double equal signs.
|
==Bold fixed== |
Bold fixed
|
|||||||||||||||||||
Note: Make sure there is no space between the text and the bold, italic, or other indicators (* _ __ = ==).
|
_This works_, _this not _ |
This works, _this not _ |
|||||||||||||||||||
|
Verbatim Mode: Surround code excerpts and other formatted text with <verbatim> and </verbatim> tags. Note: Use <pre> and </pre> tags instead if you want that HTML code is interpreted. Note: Each tag must be on a line by itself. |
<verbatim>
class CatAnimal {
void purr() {
<code here>
}
}
</verbatim>
|
class CatAnimal {
void purr() {
<code here>
}
}
|
|||||||||||||||||||
|
Separator: At least three dashes at the beginning of a line. |
------- |
|
|||||||||||||||||||
|
List Item: Three spaces, an asterisk, and another space. |
* bullet item |
|
|||||||||||||||||||
|
Nested List Item: Six, nine, ... spaces, an asterisk, and another space. |
* level 1
* level 2
|
|
|||||||||||||||||||
|
Ordered List: Three spaces, a number, a dot, and another space. Several types are available besides a number:
|
1. Sushi 1. Dim Sum A. Sushi A. Dim Sum i. Sushi i. Dim Sum |
|
|||||||||||||||||||
|
Definition List: Three spaces, a dollar sign, the term, a colon, a space, followed by the definition. |
$ Sushi: Japan $ Dim Sum: S.F. |
|
|||||||||||||||||||
|
Table: Any number of lines of text. Each line is one row of the table consisting of one or more cells. Each cell starts and ends with a vertical bar '|'. Any spaces at the beginning of a line are ignored. Notes: • | *bold* | cells are displayed as table headers.• | center-spaced | cells are displayed center aligned.• | right-spaced | cells are displayed right aligned.• | 2 colspan || cells are displayed as multi-span columns (i.e., a cell with no text spans a column).• |^| cells with a caret indicate follow-up rows of multi-span rows (this functionality is provided by TablePlugin).• If a row contains a large amount of text, and you want it to be more readable while editing the table, split the row into multiple text lines by ending each line with a backslash character '\'.• Table cells wrap automatically as determined by the browser. |
| *L* | *C* | *R* | | A2 | 2 | 2 | | A3 | 3 | 3 | | multi span ||| | A4-6 | four | four | |^| five | five | |^| six | six | |
|
|||||||||||||||||||
|
WikiWord Links: CapitalizedWordsStuckTogether (or WikiWords) will produce a link automatically. Note: In case you want to link to a topic in a different Galeon web write Webname.TopicName.
|
WebNotify Know.ReadmeFirst | WebNotify ReadmeFirst? | |||||||||||||||||||
|
Forced Links: You can create a forced internal link by enclosing words in double square brackets. Note: Text within the brackets may contain optional spaces; the topic name is formed by capitalizing the initial letter and by removing the spaces; for example, [[text formatting FAQ]] links to topic TextFormattingFAQ. You can also refer to a different web and use anchors.
Note: To "escape" double square brackets that would otherwise be a correct link, prefix the leading left square brackets with an exclamation point, that is, begin with ![[....
|
[[wiki syntax]] [[Main.TWiki users]] escaped: ![[wiki syntax]] | wiki syntax Main.TWiki users escaped: [[wiki syntax]] | |||||||||||||||||||
|
Specific Links: Create a link where you can specify the link text and the link reference separately, using nested square brackets like [[reference][text]]. Internal link references (e.g. WikiSyntax) and external link references (e.g. http://TWiki.org/) are supported.
Note: The same Forced Links rules apply for internal link references. Note: For external link references, you can simply use a space instead of ][ to separate the link URL from the descriptive text.
Note: Anchor names can be added as well, like [[Home#MyAnchor][go home]] and [[http://gnu.org/#Action][GNU Action]].
|
[[WikiSyntax][syntax]] [[http://gnu.org][GNU]] [[http://xml.org XML]] | syntax GNU XML | |||||||||||||||||||
|
Anchors: You can define a link reference inside a Galeon topic (called an anchor name) and link to that. To define an anchor write #AnchorName at the beginning of a line. The anchor name must be a WikiWord. To link to an anchor name use the [[MyTopic#MyAnchor]] syntax. You can omit the topic name if you want to link within the same topic.
|
[[WikiWord#NotThere]] [[#MyAnchor][Jump]] #MyAnchor To here | WikiWord#NotThere Jump To here | |||||||||||||||||||
|
Prevent a Link: Prevent a WikiWord from being linked by prepending it with an exclamation point. |
!SunOS | SunOS | |||||||||||||||||||
|
Disable Links: You can disable automatic linking of WikiWords by surrounding text with <noautolink> and </noautolink> tags.
Note: Each tag must be on a line by itself. Note: This also works for TWiki tables, but only if you add a blank line between the end of the table and the closing </noautolink> tag (known issue of the TablePlugin).
|
<noautolink> RedHat & SuSE </noautolink> |
|
|||||||||||||||||||
|
Mailto: Links: To create 'mailto:' links that have more descriptive link text, specify subject lines or message bodies, or omit the email address, you can write [[mailto:user@domain descriptive text]].
|
[[mailto:a@z.com Mail]] [[mailto:?subject=Hi Hi]] | Mail Hi | |||||||||||||||||||
<...> - of an HTML tag must be on the same line, or the tag will be broken.
<, ex: a < b
<pre> tags:
<script language="JavaScript"> <!-- Hide JavaScript and <pre> escape TWiki rendering ... put your JavaScript code here... // Stop hiding and stop </pre> escaping TWiki rendering --> </script>
http://..., https://..., ftp://..., gopher://..., news://..., file://..., telnet://...
and mailto:...@... are linked automatically.
name@domain.com are linked automatically.
[[Square bracket rules]] let you easily create non-WikiWord links.
[[http://www.website.com website]] as an easier way of doing external links with descriptive text for the link, such as website.
% that are expanded on the fly.
%TOC% : Automatically generates a table of contents based on headings in a topic - see the top of this page for an example.
%WEB% : The current web, is TWiki.
%TOPIC% : The current topic name, is TextFormattingRules.
%ATTACHURL% : The attachment URL of the current topic. Example usage: If you attach a file to a topic you can refer to it as %ATTACHURL%/image.gif to show the URL of the file or the image in your text.
%INCLUDE{"SomeTopic"}% : Server side include, includes another topic. The current Galeon web is the default web. Example: %INCLUDE{"TWiki.SiteMap"}%
%SEARCH{"sushi"}% : Inline search showing the search result embedded in a topic. FormattedSearch gives you control over formatting, used to create web-based applications.
%BR% to start a new line.
%RED% Red %ENDCOLOR% and %BLUE% blue %ENDCOLOR% colors to get: Red and blue colors.
%H% Help, %T% Tip, %X% Alert to get: !%SOMEVARIABLE% to get: %SOMEVARIABLE%.
%PLUGINDESCRIPTIONS%:
*_text_* as bold italic text.
"$SUM( $ABOVE() )" to tables located in Galeon topics.
ExternalSite:Page text to external sites based on aliases defined in the InterWikis topic
:-) for
or :cool: for
<filename> is not displayed. How can I show it as it is?
'<' and '>' characters have a special meaning in HTML, they define HTML tags. You need to escape them, so write '<' instead of '<', and '>' instead of '>'. 'prog <filename>' to get 'prog <filename>'.
'&' character sometimes not displayed?
'&' character has a special meaning in HTML, it starts a so called character entity, i.e. '©' is the © copyright character. You need to escape '&' to see it as it is, so write '&' instead of '&'. 'This & that' to get 'This & that'.
%VARIABLE% - that expand into content whenever a page is opened. When a topic is rendered for viewing, VARIABLES are replaced by data, either user-entered, or info automatically generated by TWiki (like the date, or the current username). There are predefined variables, and Preference variables that you configure. You can also define custom variables, with new names and values.
Note: To leave a variable unexpanded, preceed it with an exclamation point, e.g. type !%TOPIC% to get %TOPIC%.
lib/twiki.cfg file, when TWiki was installed, or taken from server info (like current username, or date and time). Many of the variables let you format the appearance of the display results.
%INCLUDINGTOPIC%, %INCLUDE%, and the mighty %SEARCH%.
% percent signs):
%ATTACHURL%
http://galeon.sourceforge.net/twiki/pub/TWiki/TWikiVariables
%ATTACHURL%/image.gif
%ATTACHURLPATH%
/twiki/pub/TWiki/TWikiVariables
%TOPIC% if there is no INCLUDE
%BASETOPIC%
%WEB% in case there is no include.
%BASEWEB%
%DISPLAYTIME%
14 May 2013 - 15:44
%GMTIME%
%DISPLAYTIME{"format"}%
%DISPLAYTIME{"$hou:$min"}% expands to 15:44
%ENCODE{"string"}%
| Parameter: | Description: | Default: |
|---|---|---|
"string" | String to encode | required (can be empty) |
type="entity" | Encode special characters into HTML entities, like a double quote into " | URL encoding |
type="url" | Encode special characters for URL parameter use, like a double quote into %22 | (this is the default) |
%ENCODE{"spaced name"}% expands to spaced%20name
%GMTIME%
14 May 2013 - 15:44
%GMTIME{"format"}%
Variable: ![]() | Unit: | Example |
|---|---|---|
$year | 4 digit year | 1999 |
$ye | 2 digit year | 99 |
$wday | day of the Week (Sun, Mon, Tue, Wed, Thu, Fri, Sat) | Thu |
$tz | either "GMT" (if set to gmtime), or "Local" (if set to servertime) | GMT |
$seconds | seconds | 59 |
$rcs | RCS format timestamp | 2013/05/14 15:44:47 |
$month | month in ISO format | Dec |
$mo | 2 digit month | 12 |
$minutes | minutes | 59 |
$iso | ISO format timestamp | 2013-05-14T15:44Z |
$http | E-mail & http format timestamp | Tue, 14 May 2013 15:44:47 GMT |
$hours | hours | 23 |
$day | day of month | 31 |
%GMTIME{"$day $month, $year - $hour:$min:$sec"}% expands to 14 May, 2013 - 15:44:47
%HOMETOPIC%
Home, renders as Home
%HTTP_HOST%
galeon.sourceforge.net
%ICON{"type"}%
bmp, doc, gif, hlp, html, mp3, pdf, ppt, txt, xls, xml, zip
%ICON{"pdf"}% expands to %INCLUDE{"page" ...}%
| Parameter: | Description: | Default: |
|---|---|---|
"SomeTopic" | The name of a topic located in the current web, i.e. %INCLUDE{"WebNotify"}% | |
"Web.Topic" | A topic in another web, i.e. %INCLUDE{"TWiki.SiteMap"}% | |
"http://..." | A full qualified URL, i.e. %INCLUDE{"http://twiki.org/"}% | |
pattern="..." | A RegularExpression pattern to include a subset of a topic or page | none |
rev="1.2" | Include a previous topic revision; N/A for URLs | top revision |
warn="off" | Warn if topic include fails: Fail silently (if off); output default warning (if set to on); else, output specific text (use $topic for topic name) | %INCLUDE- WARNING% preferences setting |
%TOPIC% in case there is no include
%INCLUDINGTOPIC%
%WEB% if there is no INCLUDE.
%INCLUDINGWEB%
%MAINWEB%
Main
%METASEARCH{...}%
| Parameter: | Description: | Default: |
|---|---|---|
type="topicmoved" | What sort of search is required? "topicmoved" if search for a topic that may have been moved "parent" if searching for topics that have a specific parent i.e. its children | required |
web="%WEB%" | Wiki web to search: A web, a list of webs separated by whitespace, or all webs. | required |
topic="%TOPIC%" | The topic the search relates to | required |
title="Title" | Text that is prepended to any search results | required |
%METASEARCH{type="topicmoved" web="%WEB%" topic="%TOPIC%" title="This topic used to exist and was moved to: "}%
%METASEARCH{type="parent" web="%WEB%" topic="%TOPIC%" title="Children: "}%
%NOTIFYTOPIC%
WebNotify, renders as WebNotify
%PUBURL%
http://galeon.sourceforge.net/twiki/pub
%PUBURL%/%WEB%/OtherTopic/image.gif
%PUBURLPATH%
/twiki/pub
%REMOTE_ADDR%
127.0.0.1
%REMOTE_PORT%
46655
%REMOTE_USER%
%SCRIPTURL%
http://galeon.sourceforge.net
%SCRIPTURL%/viewauth%SCRIPTSUFFIX%/%WEB%/%TOPIC% which expands to http://galeon.sourceforge.net/viewauth/TWiki/TWikiVariables
%SCRIPTURLPATH%
.pl or .cgi
%SCRIPTSUFFIX%
%SEARCH{"text" ...}%
| Parameter: | Description: | Default: |
|---|---|---|
"text" | Search term. Is a keyword search, literal search or regular expression search, depending on the type parameter. SearchHelp has more | required |
search="text" | (Alternative to above) | N/A |
web="Name" web="Main, Know" web="all" | Wiki web to search: A web, a list of webs separated by comma, or all webs. [2] | Current web |
topic="WebPreferences" topic="*Bug" | Limit search to topics: A topic, a topic with asterisk wildcards, or a list of topics separated by comma. | All topics in a web |
excludetopic="Web*" excludetopic="Home, WebChanges" | Exclude topics from search: A topic, a topic with asterisk wildcards, or a list of topics separated by comma. | None |
type="keyword" type="literal" type="regex" | Do a keyword search like soap "web service" -shampoo; a literal search like web service; or RegularExpression search like soap;web service;!shampoo | %SEARCHVAR- DEFAULTTYPE% preferences setting (literal) |
scope="topic" scope="text" scope="all" | Search topic name (title); the text (body) of topic; or all (both) | "text" |
order="topic" order="created" order="modified" order="editby" order= | Sort the results of search by the topic names, topic creation time, last modified time, last editor, or named field of TWikiForms. The sorting is done web by web; in case you want to sort across webs, create a formatted table and sort it with TablePlugin's initsort | Sort by topic name |
limit="all" limit="16" | Limit the number of results returned. This is done after sorting in case order is specified | All results |
reverse="on" | Reverse the direction of the search | Ascending search |
casesensitive="on" | Case sensitive search | Ignore case |
nosummary="on" | Show topic title only | Show topic summary |
bookview="on" | BookView search, e.g. show complete topic text | Show topic summary |
nosearch="on" | Suppress search string | Show search string |
noheader="on" | Suppress search header Topics: Changed: By: | Show search header |
nototal="on" | Do not show number of topics found | Show number |
header="..." format="..." | Custom format results: see FormattedSearch for usage, variables & examples | Results in table |
expandvariables="on" | Expand variables before applying a FormattedSearch on a search hit. Useful to show the expanded text, e.g. to show the result of a SpreadSheetPlugin %CALC{}% instead of the formula | Raw text |
multiple="on" | Multiple hits per topic. Each hit can be formatted. The last token is used in case of a regular expression ";" and search | Only one hit per topic |
separator=", " | Line separator between hits | Newline "$n" |
%SEARCH{"wiki" web="Main" scope="topic"}%
%SEARCH{"FAQ" scope="topic" nosearch="on" nototal="on" header="| *Topic: * | *Summary: * |" format="| $topic | $summary |"% (displays results in a table with header - details)
%TABLE{}% variable just before the %SEARCH{}% to alter the output of a search. Example: %TABLE{ tablewidth="90%" }%
web="all" search if you define a NOSEARCHALL=on variable in its WebPreferences
%SERVERTIME%
14 May 2013 - 15:44
%GMTIME%
%SERVERTIME{"format"}%
%SERVERTIME{"$hou:$min"}% expands to 15:44
%SPACEDTOPIC%
TWiki%20*Variables
%STOPINCLUDE% variable. A normal view of the topic shows everyting exept the %STARTINCLUDE% variable itself.
%STARTINCLUDE%
%STATISTICSTOPIC%
WebStatistics, renders as WebStatistics
%STOPINCLUDE% variable itself.
%STOPINCLUDE%
%TOC%
%TOC{"SomeTopic" ...}%
"---++ text") and HTML ("<h2>text</h2>") are taken into account. Any heading text after "!!" is excluded from the TOC; for example, write "---+!! text" if you do not want to list a header in the TOC
| Parameter: | Description: | Default: |
|---|---|---|
"TopicName" | topic name | Current topic |
web="Name" | Name of web | Current web |
depth="2" | Limit depth of headings shown in TOC | 6 |
title="Some text" | Title to appear at top of TOC | none |
%TOC{depth="2"}%
%TOC{"TWikiDocumentation" web="TWiki" title="Contents:"}%
%TOPIC%
TWikiVariables, renders as TWikiVariables
$name variable gets expanded to the topic name; the $web variable gets expanded to the name of the web.
%TOPICLIST{"format" ...}%
| Parameter: | Description: | Default: |
|---|---|---|
"format" | Format of one line, may include $name and $web variables | "$name" |
format="format" | (Alternative to above) | "$name" |
separator=", " | line separator | "\n" (new line) |
web="Name" | Name of web | Current web |
%TOPICLIST{" * $web.$name"}% creates a bullet list of all topics
%TOPICLIST{separator=", "}% creates a comma separated list of all topics
%TOPICLIST{" <option>$name</option>"}% creates an option list (for drop down menus)
%TWIKIWEB%
TWiki
%URLPARAM{"name"}%
| Parameter: | Description: | Default: |
|---|---|---|
"name" | The name of a URL parameter | required |
default="..." | Default value in case parameter is empty or missing | empty string |
newline="<br />" | Convert newlines in textarea to other delimiters | no conversion |
encode="entity" | Encode special characters into HTML entities, like a double quote into ". This is needed if text is put into an HTML form field | no encoding |
encode="url" | Encode special characters for URL parameter use, like a double quote into %22 | no encoding |
multiple="on" multiple="[[$item]]" | If set, gets all selected elements of a <select multiple="multiple"> tag. A format can be specified, with $item indicating the element, e.g. multiple="Option: $item" | first element |
separator=", " | Separator between multiple selections. Only relevant if multiple is specified | "\n" (new line) |
%URLPARAM{"skin"}% returns print for a .../view/TWiki/TWikiVariables?skin=print URL. Test this:
jsmith, WIKINAME like JohnSmith and WIKIUSERNAME like Main.JohnSmith. A user is a TWikiGuest in case the topic is not authenticated
%USERNAME%
guest
%VAR{"NAME" web="Web"}%
%WEBBGCOLOR% of the Main web write %VAR{"WEBBGCOLOR" web="Main"}%, which expands to #CFCBCF
%WEB%
TWiki
NOSEARCHALL=on preference variable. The "format" defines the format of one web item. The $name variable gets expanded to the name of the web, $qname gets expanded to double quoted name, $marker to marker where web matches selection.
%WEBLIST{"format" ...}%
| Parameter: | Description: | Default: |
|---|---|---|
"format" | Format of one line, may include $name variable | "$name" |
format="format" | (Alternative to above) | "$name" |
separator=", " | line separator | "\n" (new line) |
webs="public" | comma sep list of Web, public expands to all non-hidden | "public" |
marker="selected" | Text for $marker where item matches selection, otherwise equals "" | "selected" |
selection="%WEB%" | Current value to be selected in list | section="%WEB%" |
%WEBLIST{" * [[$name.Home]]"}% creates a bullet list of all webs.
%WEBLIST{"<option $marker value=$qname>$name</option>" webs="Trash,public" selection="TWiki" separator=" "}% Dropdown of all public Webs + Trash Web, current Web highlighted.
%WEBPREFSTOPIC%
WebPreferences, renders as WebPreferences
%WIKIHOMEURL%
http://galeon.sourceforge.net/Main
%WIKINAME%
TWikiGuest
%WIKIPREFSTOPIC%
TWikiPreferences, renders as TWikiPreferences
%WIKITOOLNAME%
Galeon
%WIKIUSERNAME%
Main.TWikiGuest, renders as TWikiGuest
%WIKIUSERSTOPIC%
TWikiUsers, with Main prefix renders as TWikiUsers
%WIKIVERSION%
07 May 2004
| Variable: | Level: | What: |
|---|---|---|
%ALLOWTOPICCHANGE% |
(any topic) | List of users and groups who are allowed to change the current topic. (More in TWikiAccessControl) |
%ALLOWTOPICRENAME% |
(any topic) | List of users and groups who are allowed to rename the current topic. (More in TWikiAccessControl) |
%ALLOWWEBCHANGE% |
WL | List of users and groups who are allowed to change topics in the Galeon web. (More in TWikiAccessControl) |
%ALLOWWEBRENAME% |
WL | List of users and groups who are allowed to rename topics in the Galeon web. (More in TWikiAccessControl) |
%ATTACHLINKBOX% |
SL , UL | Default state of the link check box in the attach file page. Check box is initially checked if value is set to CHECKED , unchecked if empty. If checked, a link is created to the attached file at the end of the topic. Value is: |
%DENYTOPICCHANGE% |
(any topic) | List of users and groups who are not allowed to change the current topic. (More in TWikiAccessControl) |
%DENYTOPICRENAME% |
(any topic) | List of users and groups who are not allowed to rename the current topic. (More in TWikiAccessControl) |
%DENYWEBCHANGE% |
WL | List of users and groups who are not allowed to change topics in the Galeon web. (More in TWikiAccessControl) |
%DENYWEBRENAME% |
WL | List of users and groups who are not allowed to rename topics in the Galeon web. (More in TWikiAccessControl) |
%DONTNOTIFYCHECKBOX% |
SL , UL | Default state of the "Minor Changes, Don't Notify" (DontNotify) check box in preview. Check box is initially checked if Set DONTNOTIFYCHECKBOX = checked="checked", or unchecked if empty. Value is: |
%EDITBOXHEIGHT% |
SL , UL | Vertical size of edit box, is 17 |
%EDITBOXWIDTH% |
SL , UL | Horizontal size of edit box, is 70 |
%EDITBOXSTYLE% |
SL , UL | Style of text edit box. Set to width: 99% for full window width (default; overwrites the EDITBOXWIDTH setting), or width: auto to disable. Value is: width: 99% |
%FINALPREFERENCES% |
SL , WL | List of preferences that are not allowed to be overridden by next level preferences |
%HTTP_EQUIV_ON_EDIT% |
SL , UL | http-equiv meta tags for edit script. |
%HTTP_EQUIV_ON_PREVIEW% |
SL , UL | http-equiv meta tags for preview script. |
%HTTP_EQUIV_ON_VIEW% |
SL | http-equiv meta tags for view, rdiff, attach, search* scripts. |
%NEWTOPICBGCOLOR% |
SL , UL | Background color of non existing topic. ( UL needs authentication for topic views ) |
%NEWTOPICFONTCOLOR% |
SL , UL | Font color of non existing topic. ( UL needs authentication for topic views ) |
%NOSEARCHALL% |
WL | Exclude web from a web="all" search (set variable to on for hidden webs) |
%RELEASEEDITLOCKCHECKBOX% |
SL , UL | Default state of the "Release edit lock" (UnlockTopic) check box in preview. Checkbox is initially checked if Set RELEASEEDITLOCKCHECKBOX = checked="checked", or unchecked if empty. If checked, make sure to click on Edit to do more changes; do not go back in your browser to the edit page, or you risk that someone else will edit the topic at the same time! Value is: checked="checked" |
%WEBBGCOLOR% |
WL | Background color of web |
%WEBCOPYRIGHT% |
SL , WL | Copyright notice (bottom right corner of topics) |
%WEBTOPICLIST% |
WL | Common links of web (second line of topics) |
%WIKIWEBLIST% |
SL | List of Galeon webs (in upper right corner of topics) |
%WIKIWEBMASTER% |
SL | Webmaster email address (sender of email notifications) , is tko@users.sourceforge.net |
%BR% for line break, colors like %RED% for colored text and small icons like %H% for a Set VARIABLENAME = value
Set VARIABLENAME = value
Example: Create a custom logo variable the TWiki web-- TWiki:Main.PeterThoeny - 09 May 2004
- To place a logo anywhere in a web by typing
%MYLOGO%, define the Variable on the web's WebPreferences page, and upload a logo file, ex:mylogo.gif. You can upload by attaching the file to WebPreferences, or, to avoid clutter, to any other topic in the same web, ex:LogoTopic:
Set MYLOGO = %PUBURL%/TWiki/LogoTopic/mylogo.gif
Attach link at the bottom of the page. The Attach screen lets you browse for a file, add a comment, and upload it. The uploaded file will show up in the File Attachment table.
*.php files are renamed to *.php.txt so that no one can place code that would be read in a .php file.
%ATTACHFILESIZELIMIT% variable of the TWikiPreferences, currently set at 10000 KB.
Manage on the Attachment to be moved.
Move. The attachment and its version history are moved. The original location is stored as topic Meta Data.
Trash, topic TrashAttachment.
Attach file: Sample.txt
Edit topic and enter: %ATTACHURL%/Sample.txt
Preview: %ATTACHURL%/Sample.txt text appears as: http://galeon.sourceforge.net/twiki/pub/TWiki/FileAttachment/Sample.txt, a link to the text file.
%PUBURL%/%WEB%/OtherTopic/Sample.txt (if it's within the same web)
%PUBURL%/Otherweb/OtherTopic/Sample.txt (if it's in a different web)
Attach file: Sample.txt
Edit topic and write text: %INCLUDE{"%ATTACHURL%/Sample.txt"}%
Attach file: Smile.gif
Edit topic and write text: %ATTACHURL%/Smile.gif
Preview: text appears as
, an image.
Attachment Action Size Date Who Comment Sample.txt
manage 0.1 K 22 Jul 2000 - 19:37 PeterThoeny Just a sample Smile.gif
manage 0.1 K 22 Jul 2000 - 19:38 PeterThoeny Smiley face
Manage link takes you to a new page that looks like this:
h means the attachment is hidden, it isn't listed when viewing a topic.
Hide file checkbox, then click Change properties.
| Input type | Type field | Size field | Value field |
|---|---|---|---|
| One or more checkboxes | checkbox | number of checkboxes per line | comma list of checkbox labels |
| One or more checkboxes, plus Set and Clear buttons | checkbox+buttons | (same) | (same) |
| Read-only label text | label | 1 | (unused) |
| One or more radio buttons | radio | number of radio buttons per line | comma list of checkbox labels |
| Drop-down menu or scrollable box | label | 1 for drop down, 2 and up for scrollable box | comma list of options |
| A one-line text field | text | text box width in number of characters | (unused) |
| A text box; size is 40x10 (columns x rows) | textarea | columns x rows, e.g. 40x6 | (unused) |
YourForm, ExpenseReport, InfoCategory, RecordReview, whatever you need.
Name, Type, Size, Values, and Tooltip message (see sample below).
Example:WebForm| *Name* | *Type* | *Size* | *Values* | *Tooltip message* | | Know.TopicClassification | select | 1 | Know.NoDisclosure, Know.PublicSupported, Know.PublicFAQ | blah blah... | | Know.OperatingSystem | checkbox | 3 | Know.OsHPUX, Know.OsLinux, Know.OsSolaris, Know.OsWin | blah blah... | | Know.OsVersion | text | 16 | | blah blah... |
Name Type Size Values Tooltip message TopicClassification? select 1 NoDisclosure?, PublicSupported?, PublicFAQ? blah blah... OperatingSystem? checkbox 3 OsHPUX?, OsLinux?, OsSolaris?, OsWin? blah blah... OsVersion? text 16 blah blah...
FormTemplate topic defines the Form, ex: YourFormTemplate.
Example: WebFormTemplate
[[...]] links can be used to force a link (at present, the [[...][...]] format is not supported).
Tooltip message column is used as a tooltip for the field name (only if field name is a WikiName) - you only see the tooltip In edit.
WebTopicEditTemplate, with field=value, or, for checkboxes, field=1 .
WEBFORMS variable in WebPreferences is optional and defines a list of possible form templates. Example:
WEBFORMS enabled, an extra button is added to the edit view. If the topic doesn't have a Form, an Add Form button appears at the end of the topic. If a Form is present, a Change button appears in the top row of the Form. The buttons open a screen that enables selection of a form specified in WEBFORMS, or the No form option.
WebTopicEditTemplate topic in a web and adding a form to it. Initial Form values can be set there.
formtemplate parameter in the URL. Initial values can then be provided in the URLs or as form values:
name, ex: ?BugPriority=1
namevalue=1, ex: ?ColourRed=1. WEBFORMS variable defines alternative forms that can be selected by pressing Change in edit mode.
SubmitExpenseReport topic where you can create new expense reports, a SubmitVacationRequest topic, and so on. These can specify the required template topic with its associated form.
SEARCH and METASEARCH variables in TWikiVariables, and TWiki Formatted Search for various options.
| Form Templates | Category Tables |
|---|---|
| defined in topics | defined in templates |
| many forms per web | one table per web |
| saved as Meta Data | saved as HTML |
| Change & Add Form buttons | UseCategory radio button |
twikicatitems.tmpl. The replacement Form Template must be set as the first item in the WebPreferences variable WEBFORMS. If missing, pages will display, but attempting to edit results in an error message.
The new Form Template system should work with old Category Table data with no special conversion. Data is assigned to Meta variables the first time an imported topic is edited and saved in the new system.
data/warning.txt.
-- TWiki:Main.JohnTalintyre - 16 Aug 2001 &TWiki::Store::readTemplate() so that the caller simply gets an expanded template file (the same as before).
%TMPL:<key>% and %TMPL:<key>{"attr"}%.
%TMPL:INCLUDE{"file"}%: Includes a template file. The template directory of the current web is searched first, then the templates root (twiki/templates).
%TMPL:DEF{"var"}%: Define a variable. Text between this and the END directive is not returned, but put into a hash for later use.
%TMPL:END%: Ends variable definition.
%TMPL:P{"var"}%: Prints a previously defined variable.
twiki.tmpl master template, like twiki.print.tmpl, that redefines the header and footer.
twiki.tmpl is the default master template.
Template variable: Defines: %TMPL:DEF{"sep"}% "|" separator %TMPL:DEF{"htmldoctype"}% Start of all HTML pages %TMPL:DEF{"standardheader"}% Standard header (ex: view, index, search) %TMPL:DEF{"simpleheader"}% Simple header with reduced links (ex: edit, attach, oops) %TMPL:DEF{"standardfooter"}% Footer, excluding revision and copyright parts %TMPL:DEF{"oops"}% Skeleton of oops dialog
twiki/templates directory. As an example, twiki/templates/view.tmpl is the template file for the twiki/bin/view script. Templates can be overloaded by individual webs. The following search order applies:
twiki/templates/$webName/$scriptName.tmpl
twiki/templates/$scriptName.tmpl
$webName is the name of the web (ex: Main)
$scriptName is the script (ex: view).
view, to display meta data.
All template topics are located in the TWiki web. The WebTopicEditTemplate can be overloaded. When you create a new topic, TWiki locates a topic to use as a content template according to the following search order:
Topic Name: What it is: WebTopicViewTemplate Error page shown when you try to view a nonexistent topic WebTopicNonWikiTemplate Alert page shown when you try to view a nonexistent topic with a non-WikiName WebTopicEditTemplate Default text shown when you create a new topic.
templatetopic CGI parameter.
Notes:
Variable: Description: %DATE%Current date, e.g. 14 May 2013%USERNAME%Login name, e.g. jsmith%WIKINAME%WikiName of user, e.g. JohnSmith%WIKIUSERNAME%User name, e.g. Main.JohnSmith%URLPARAM{"name"}%Value of a named URL parameter %NOP%A no-operation variable that gets removed. Useful to prevent a SEARCH from hitting an edit template topic; also useful to escape a variable like %URLPARAM%NOP%{...}%%NOP{ ... }%A no-operation text that gets removed. Useful to write-protect an edit template topic, but not the topics based this template topic. See notes below. Example:
%NOP{
* Set ALLOWTOPICCHANGE = Main.TWikiAdminGroup
}%
%NOP{ ... }% can span multiple lines.
}% pattern is "non-greedy", that is, it stops at the first occurance. That means, you need to escape variables with parameters located inside %NOP{ ... }%: Insert a %NOP% between } and %. Silly example: %NOP{ %GMTIME{"$year"}%NOP%% }%.
templatetopic specifies ExampleTopicTemplate as the template topic to use. Here is the HTML source of the form:
<form name="new" action="%SCRIPTURLPATH%/edit%SCRIPTSUFFIX%/%INTURLENCODE{"%WEB%"}%/">
* New example topic:
<input type="text" name="topic" value="ExampleTopic%SERVERTIME{$yearx$mox$day}%" size="23" />
<input type="hidden" name="templatetopic" value="ExampleTopicTemplate" />
<input type="hidden" name="topicparent" value="%TOPIC%" />
<input type="hidden" name="onlywikiname" value="on" />
<input type="hidden" name="onlynewtopic" value="on" />
<input type="submit" value="Create" />
(date format is <nop>YYYYxMMxDD)
</form>
The edit scipt understands the following parameters, typically supplied by HTML input fields:
Parameter: Description: topicName of topic to create. Can be set in a text field, or is set programmatically (e.g. with a sequential number) onlywikinameIf set, TWiki will complain if the topic name is not a WikiWord onlynewtopicIf set, TWiki will complain if a topic of the same name already exists templatetopicThe name of the template topic, e.g. topic used to copy the initial content topicparentSets the parent topic TopicClassificationAssuming the template topic has a form with a field called "TopicClassification", it will set the value of the field anynameAny parameter can passed to the new topic; if the template topic contains %URLPARAM{"anyname"}%, it will be replaced by its value
%WIKIUSERNAME% and %DATE% variables in your topic templates to include the signature of the person creating a new topic. The variables are expanded into fixed text when a new topic is created. The standard signature is: -- %WIKIUSERNAME% - %DATE%
oopsbase.tmpl and an example oops dialog oopstest.tmpl based on the base template. %A% NOTE: This isn't the release version, just a quick, simple demo.
%TMPL:P{"sep"}%
%TMPL:DEF{"sep"}% | %TMPL:END% <html> <head> <title> %WIKITOOLNAME% . %WEB% . %TOPIC% %.TMPL:P{"titleaction"}%</title> <base href="%SCRIPTURL%/view%SCRIPTSUFFIX%/%WEB%/%TOPIC%"> <meta name="robots" content="noindex"> </head> <body bgcolor="#FFFFFF"> <table width="100%" border="0" cellpadding="3" cellspacing="0"> <tr> <td bgcolor="%WEBBGCOLOR%" rowspan="2" valign="top" width="1%"> <a href="%WIKIHOMEURL%"> <img src="%PUBURLPATH%/wikiHome.gif" border="0"></a> </td> <td> <b>%WIKITOOLNAME% . %WEB% . </b><font size="+2"> <B>%TOPIC%</b> %TMPL:P{"titleaction"}%</font> </td> </tr> <tr bgcolor="%WEBBGCOLOR%"> <td colspan="2"> %TMPL:P{"webaction"}% </td> </tr> </table> --- ++ %TMPL:P{"heading"}% %TMPL:P{"message"}% <table width="100%" border="0" cellpadding="3" cellspacing="0"> <tr bgcolor="%WEBBGCOLOR%"> <td valign="top"> Topic <b>%TOPIC%</b> . { %TMPL:P{"topicaction"}% } </td> </tr> </table> </body>
%TMPL:DEF{"titleaction"}% (test =titleaction=) %TMPL:END% %TMPL:DEF{"webaction"}% test =webaction= %TMPL:END% %TMPL:DEF{"heading"}% Test heading %TMPL:END% %TMPL:DEF{"message"}% Test =message=. Blah blah blah blah blah blah blah blah blah blah blah... * Some more blah blah blah blah blah blah blah blah blah blah... * Param1: %PARAM1% * Param2: %PARAM2% * Param3: %PARAM3% * Param4: %PARAM4% %TMPL:END% %TMPL:DEF{"topicaction"}% Test =topicaction=: [[%WEB%.%TOPIC%][OK]] %TMPL:P{"sep"}% [[%TWIKIWEB%.TWikiRegistration][Register]] %TMPL:END% %TMPL:INCLUDE{"oopsbase"}%
.../bin/oops/Sandbox/TestTopic2?template=oopstest¶m1=WebHome¶m2=WebNotify
.tmpl filename extension - it contained unresolved %VARIABLES%, but could still be previewed directly in a browser.
twiki/templates directory and are named with the syntax: <scriptname>.<skin>.tmpl. For example, the Printable skin for the view template is view.print.tmpl.
Use the existing TWikiTemplates (like view.tmpl) or skin files as a base for your own skin, name it for example view.myskin.tmpl.
| Variable: | Expanded to: |
|---|---|
%WIKILOGOURL% | Link of page logo |
%WIKILOGOIMG% | Image URL of page logo |
%WIKILOGOALT% | Alt text of page logo |
%WEBBGCOLOR% | Web specific background color, defined in the WebPreferences |
%WIKITOOLNAME% | The name of your TWiki site |
%SCRIPTURL% | The script URL of TWiki |
%SCRIPTSUFFIX% | The script suffix, ex: .pl, .cgi |
%WEB% | The name of the current web. Note: It is recommended to URL-encode the variable in form actions with %INTURLENCODE{"%WEB%"}% for proper handling in an internationalized environment |
%TOPIC% | The name of the current topic. Note: It is recommended to URL-encode the variable in form actions with %INTURLENCODE{"%TOPIC%"}% for proper handling in an internationalized environment |
%WEBTOPICLIST% | Common links of current web, defined in the WebPreferences. It includes a #GoBox |
%TEXT% | The topic text, e.g. the content that can be edited |
%META{"form"}% | TWikiForm, if any |
%META{"attachments"}% | FileAttachment table |
%META{"parent"}% | The topic parent |
%EDITTOPIC% | Edit link |
%REVTITLE% | The revision title, if any, ex: (r1.6) |
%REVINFO% | Revision info, ex: r1.6 - 24 Dec 2002 - 08:12 GMT - TWikiGuest |
%WEBCOPYRIGHT% | Copyright notice, defined in the WebPreferences |
%BROADCASTMESSAGE% | Broadcast message at the beginning of your view template, can be used to alert users of scheduled downtimes; is set in TWikiPreferences |
%WEBTOPICLIST% includes a "Go" box to jump to a topic. The box also understand URLs, e.g. you can type http://www.google.com/ to jump to an external web site. The feature is handy if you build a skin that has a select box of frequently used links, like Intranet home, employee database, sales database and such. A little JavaScript gets into action on the onSelect method of the select tag to fill the selected URL into the "Go" box field, then submits the form.
Here is an example form that has a select box and the "Go" box for illustration purposes. You need to have JavaScript enabled for this to work: