| Required Server Environment | ||
|---|---|---|
| Resource | Unix | Windows | 
| Perl | 5.005_03 or higher | |
| Non standard Perl modules | Net::SMTP(orsendmail) | Net::SMTP,MIME::Base64,Digest::SHA1 | 
| RCS | 5.7 or higher | |
| Other external programs | ls, fgrep, egrep | |
| Web server | Apache; others (with support for CGI, authentication, extended path) * | |
/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 /etc/httpd/httpd.conf 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.
Examplehttpd.confentries:ScriptAlias /twiki/bin/ "/home/httpd/twiki/bin/" Alias /twiki/ "/home/httpd/twiki/" <Directory "/home/httpd/twiki/bin"> Options +ExecCGI SetHandler cgi-script AllowOverride all Allow from all </Directory> <Directory "/home/httpd/twiki/pub"> Options FollowSymLinks +Includes AllowOverride None Allow 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)
TWiki dir: What it is: Where to copy: Example: twiki/binCGI bin cgi-enabled dir /home/smith/public_html/cgi-bintwiki/liblibrary files same level as twiki/bin/home/smith/public_html/libtwiki/pubpublic files htdoc enabled dir /home/smith/public_html/pubtwiki/datatopic data outside of htdoc tree (for security) /home/smith/twiki/datatwiki/templatesweb templates outside of htdoc tree (for security) /home/smith/twiki/templates
/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. Modify all twiki/bin script filenames 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, ex 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 sed: for f in *,v; do sed 's/nobody\:/www-data\:/' $f > x; mv x $f; done
twiki/lib/TWiki.cfg, setting the variables to your needs.
$scriptSuffix variable to cgi or pl if required.
$rcsDir in twiki/lib/TWiki.cfg to mach the location of your RCS binaries.
twiki/data , twiki/templates and all its subdirectories should be set so that they are not visible as a URL. (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.
http://yourdomain.com/twiki/bin/view and start TWiki-ing away!
WIKIWEBMASTER email address, and other preferences.
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 /urlpath/to/TWiki/index.html http://your.domain.com/urlpath/to/TWiki/bin/view AuthUserFile /filepath/to/TWiki/data/.htpasswd ErrorDocument 401 /urlpath/to/TWiki/bin/oops/TWiki/TWikiRegistration?template=oopsauth
edit, view, preview, etc entries in .htaccess.
.htaccess does not have the desired effect you need to enable it: Add "AllowOverride All" to the Directory section of access.conf for your twiki/bin directory.
.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 processed 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/data and check the file permission of the directory.
A..Z, followed by a..z and/or 0..9 characters, but not a WikiWord.
twiki/data/_default directory to the new data directory, preserving the original files' owner, group and permissions (on Unix, use cp -p). The data files must be writable by the owner the CGI scripts are running on (usually, nobody). 
.txt and .txt,v files to -rw-rw-rw- (666) and then edit the topic using your browser; RCS will restore the file permissions correctly when saving the topic.
%WIKIWEBLIST% variable.
%WEBTOPICLIST% variable to contain the web-specific links you prefer.
%WEBCOPYRIGHT% can be set for an individual web).
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! 
format="" parameter in %SEARCH{}% variable for database like reporting. 
SiteAlias:Page; rules are defined in InterWikis. (Get more Plugins from the TWiki:Plugins web.) 
%TOC% variable generates a hierarchical table of contents from topic headings: <h1>...<h6>.
twiki/bin directory into it's own twiki/lib directory tree. The following files have been renamed and moved:
| From TWiki 01-Dec-2000: | To TWiki 01-Dec-2001: | 
|---|---|
| twiki/bin/wikicfg.pm | twiki/lib/TWiki.cfg | 
| twiki/bin/wiki.pm | twiki/lib/TWiki.pm | 
| twiki/bin/wikiaccess.pm | twiki/lib/TWiki/Access.pm | 
| twiki/bin/wikiprefs.pm | twiki/lib/TWiki/Prefs.pm | 
| twiki/bin/wikisearch.pm | twiki/lib/TWiki/Search.pm | 
| twiki/bin/wikistore.pm | twiki/lib/TWiki/Store.pm | 
twiki/lib/TWiki/Plugins directory contains the new Plugin modules.
$TWIKIROOT is the root of your current 01-Sep-2001 release.
$TWIKIROOT/bin, $TWIKIROOT/pub, $TWIKIROOT/data, $TWIKIROOT/templates.
*.html and *.txt files in $TWIKIROOT with the new ones.
$TWIKIROOT/templates with the new ones.
$TWIKIROOT/bin with the new ones.
TWiki.pm library in $TWIKIROOT/lib with the new one.
*.pm library files in $TWIKIROOT/lib/TWiki and $TWIKIROOT/lib/TWiki/Plugins with the new ones.
twiki/data/TWiki directory where you unzipped the installation package:
TWikiPreferences.*, TWikiWebsTable.*, WebNotify.*, WebPreferences.*, WebStatistics.* and all WebTopic* files.
nobody: The *,v RCS repository files delivered with the installation package are locked by user nobody and need to be changed the user of your cgi-scripts, i.e. www-data. A simple way to switch the locker of the RCS files is to use sed:
           for f in *,v; do sed 's/nobody\:/www-data\:/' $f > x; mv x $f; done
*.txt and *.txt,v files from the temporary data/TWiki directory to your $TWIKIROOT/data/TWiki directory.
pub/TWiki/TWikiDocGraphics directory into your $TWIKIROOT/pub/TWiki directory.
| Before Switch: | After Switch: | ||
|---|---|---|---|
| Current 01-Dec-2000: | New 01-Dec-2001: | Obsolete 01-Dec-2000: | New 01-Dec-2001: | 
| twiki/templates/ | twiki/templates2/ | twiki/templates1/ | twiki/templates/ | 
| twiki/bin/ | twiki/bin/2/ | (overwritten) | twiki/bin/ | 
| (N/A) | twiki/bin/lib/ | (N/A) | twiki/lib/ | 
| twiki/data/TWiki | twiki/data/TWiki2 | twiki/data/TWiki1 | twiki/data/TWiki | 
| (other directories do not change) | |||
$TWIKIROOT is the root of your current 01-Dec-2000 release, ex: export TWIKIROOT=/some/dir/
twiki/bin, twiki/pub, twiki/data, twiki/templates.
mkdir -p ~/tmp/
     cp -p ~/downloads/TWiki20011201.zip ~/tmp/
     cd ~/tmp/
     unzip ~/tmp/TWiki20011201.zip
twiki ):
     mv ~/tmp/TWiki*.html $TWIKIROOT
     mv ~/tmp/index.html $TWIKIROOT
     mv ~/tmp/readme.txt $TWIKIROOT
     mv ~/tmp/license.txt $TWIKIROOT
twiki/templates2 directory, ex:
     mv ~/tmp/templates $TWIKIROOT/templates2
chmod 644 *.cgi
twiki/data/TWiki2 directory. Do the same to files attached to this web, ex:
     mv ~/tmp/data/TWiki $TWIKIROOT/data/TWiki2
     mv ~/tmp/pub/TWiki $TWIKIROOT/pub/TWiki2
twiki/data/Know2 directory, ex:
     mv ~/tmp/data/Know $TWIKIROOT/data/Know2
     mv ~/tmp/pub/Know $TWIKIROOT/pub/Know2
mv ~/tmp/data/_default $TWIKIROOT/data
     mv ~/tmp/data/Trash $TWIKIROOT/data
mv ~/tmp/data/mime.types $TWIKIROOT/data
mv ~/tmp/pub/*.gif $TWIKIROOT/pub
TWiki2 and Know2 directories and its files. The files must be writable by the cgi-scripts (usually user nobody).
nobody: The *,v RCS repository files delivered with the installation package are locked by user nobody and need to be changed the user of your cgi-scripts, i.e. www-data. A simple way to switch the locker of the RCS files is to use sed:
     for f in *,v; do sed 's/nobody\:/www-data\:/' $f > x; mv x $f; done
twiki/bin/2 directory, ex:
     mv ~/tmp/bin $TWIKIROOT/bin/2
.cgi
cp -p $TWIKIROOT/bin/somescript $TWIKIROOT/bin/2
.htaccess.txt to .htaccess and customize it, ex:
     cd $TWIKIROOT/bin/2
     mv .htaccess.txt .htaccess
     diff ../.htaccess .
     chmod 755 *.cgi
twiki/bin/lib directory, ex:
     mv ~/tmp/lib $TWIKIROOT/bin
chmod 644 *.pm
twiki/bin/wikicfg.pm into the new twiki/lib/TWiki.cfg configuration file. Use the diff command to find out the differences, ex:
     cd $TWIKIROOT/bin/lib
     diff ../wikicfg.pm TWiki.cfg
$scriptUrlPath    = "/twiki/bin/2";
     $templateDir      = "/home/httpd/twiki/templates2";
extendHandleCommonTags, extendGetRenderedVersionOutsidePRE, extendGetRenderedVersionInsidePRE from the old twiki/bin/wikicfg.pm. This is now handled by the Default plugin twiki/lib/TWiki/Plugins/Default.pm 
http://localhost/cgi-bin/view
http://localhost/cgi-bin/2/view
TWiki web.
TWiki2 web, which gets renamed to TWiki when you switch over the installation.
TWiki.TWikiRegistration, merge your changes back into TWiki2.TWikiRegistration.
TWiki.TWikiWebsTable to TWiki2.TWikiWebsTable.
TWiki web.
TWiki2.TWikiPreferences, merge the old TWiki.TWikiPreferences settings and customize it.
WebPreferences of all webs, add or change the following web preferences: (see TWiki.WebPreferences)
web="all" search:
        * Set NOSEARCHALL = on
%WEB% . {} decoration from the list (it is now in the templates), ex:
        * Set WEBTOPICLIST = <a href="Home">Home</a>
          | <a href="WebChanges">Changes</a>
     | <a href="WebIndex">Index</a>
     | <a href="WebSearch">Search</a>
     | Go <input type="text" name="topic" size="16" />
* Set DENYWEBVIEW =
        * Set ALLOWWEBVIEW =
        * Set DENYWEBRENAME =
        * Set ALLOWWEBRENAME =
* Set FINALPREFERENCES = WEBTOPICLIST, DENYWEBVIEW, ALLOWWEBVIEW, DENYWEBCHANGE, ALLOWWEBCHANGE, DENYWEBRENAME, ALLOWWEBRENAME
WebSearch of all webs, replace content with this one line:
        %INCLUDE{"%TWIKIWEB%.WebSearch"}%
WebChanges of all webs, replace content with this one line:
        %INCLUDE{"%TWIKIWEB%.WebChanges"}%
twiki/templates.
twiki/templates2, which gets renamed to twiki/templates when you switch over the installation.
=<p /> tag added.
WebForm topic based on twikicatitems.tmpl in each web that uses a Category Table. See details in TWikiForms and compare with the settings in the Know2.WebPreferences topic.
        twikicatitems.tmpl file, it is still used for topics that are of the old format.
[T] and [P] is done so that search does not find the topic where this search string is located in!)
notedited.tmpl template, create an equivalent WebTopicEditTemplate to conform with the new TemplateTopics. The new format replaces the notedited.tmpl, notext.tmpl and notwiki.tmpl templates.
twiki/bin/2/view to make sure everything works as expected.
$TWIKIROOT/bin/2/TWiki.cfg and remove the /2 from $scriptUrlPath and $templateDir, ex:
     $scriptUrlPath    = "/twiki/bin";
     $templateDir      = "/home/httpd/twiki/templates";
TWiki2 web to TWiki, including attachments, ex:
     cd $TWIKIROOT/data
     mv TWiki TWiki1
     mv TWiki2 TWiki
     cd $TWIKIROOT/pub
     mv TWiki TWiki1
     mv TWiki2 TWiki
templates2 directory to templates, ex:
     cd $TWIKIROOT
     mv templates templates1
     mv templates2 templates
lib directory one level up from $TWIKIROOT/bin/lib to $TWIKIROOT/lib, ex:
     cd $TWIKIROOT
     mv bin/lib .
bin/2 to bin, ex:
     cd $TWIKIROOT/bin
     cp -p bin/2/* .
     cp -p bin/2/.htaccess .
$TWIKIROOT/bin/2
$TWIKIROOT/templates1
$TWIKIROOT/data/TWiki1
$TWIKIROOT/pub/TWiki1
~/tmp
EmptyPlugin, DefaultPlugin, and InterwikiPlugin should be preinstalled. To check the InterwikiPlugin, go to its page.
extendHandleCommonTags, extendGetRenderedVersionOutsidePRE and extendGetRenderedVersionInsidePRE in twiki/bin/wikicfg.pm:
twiki/lib/TWiki/Plugins/Default.pm
%GMTIME{"..."}% and %SERVERTIME{"..."}% variables is now "$hour:$min" instead of "hour:min". More in TWikiVariables.
| *bold* | cells, |  center aligned  | and |   right aligned | cells, span multiple columns using | empty cells |||. More in TextFormattingRules.
Net::SMTP module instead of sendmail if installed. 
<verbatim> ... </verbatim> tags instead of <pre> ... </pre> tags where appropriate. More in TextFormattingRules.
%STARTINCLUDE% and %STOPINCLUDE% variables to control what gets included of a topic. More in TWikiVariables.
$attachAsciiPath in TWiki.cfg defines which file types are stored in ASCII, otherwise, binary format is used. This means that the RCS version used should support binary files.
edit.new.tmpl has been removed and replaced by template topics in the new TWikiTemplates.
warning.txt file can appear in the data directory. It may contain diagnostic info identifying problems that need fixing. This file could get fairly large if you have a lot of problems your site - you can delete it at any time.
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.
attach, edit=, installpasswd, preview, rename, save, upload using the .htaccess file. The TWikiInstallationGuide has step-by-step instructions. 
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.
pthoeny. This name is normally passed to Lash La Rue by the REMOTE_USER environment variable, and used by internally by Lash La Rue. 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.
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 Lash La Rue.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 ):
Change password
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.
TWiki/ResetPassword ):
Request for reset of password-- MikeMannix - 29 Aug 2001
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 receive a page with yor new password appearing encrypted.
Main web, like the TWikiAdminGroup?. To start a new group:
SomeGroup
    Set GROUP = Main.SomeUser, Main.OtherUser, Main.SomeOtherGroup
    Set ALLOWTOPICCHANGE = Main.TWikiAdminGroup     * Set DENYTOPICCHANGE = Main.SomeBadBoy, Main.SomeBadGirl, Main.SomeHackerGroup
    * Set ALLOWTOPICCHANGE = Main.SomeGoodGuy, Main.SomeGoodGirl, Main.TWikiAdminGroup
    * Set DENYTOPICRENAME = Main.SomeBadBoy, Main.SomeBadGirl, Main.SomeHackerGroup
    * Set ALLOWTOPICRENAME = Main.SomeGoodGuy, Main.SomeGoodGirl, Main.TWikiAdminGroup
.htaccess file.
view script from the .htaccess file.
$doRememberRemoteUser flag in lib/TWiki.cfg as described in TWikiUserAuthentication. Lash La Rue 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.
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.
NOSEARCHALL variable in its WebPreferences, like:
 To hide access control settings from normal browser viewing, place them in comment markers.
 To hide access control settings from normal browser viewing, place them in comment markers. 
<!--
Set DENYTOPICCHANGE = Main.SomeGroup
-->
$superAdminGroup variable in lib/TWiki.cfg to the name of a group of users that 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. | ---++ 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 fontby enclosing them in=equal signs. | =Fixed font= | Fixed font | |||||||||||||||
| Bold Fixed Font: Words get shown in bold fixed fontby enclosing them indouble equal signs. | ==Bold fixed== | Bold fixed | |||||||||||||||
| Note: Make sure to "stick" the * _ = ==signs to the words, e.g. take away spaces. | _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 and an asterisk. | * bullet item | 
 | |||||||||||||||
| Nested List Item: Six, nine, ... spaces and an asterisk. | 
      * nested stuff
 | 
 | |||||||||||||||
| Ordered List: Three spaces and a number. | 1 Sushi 1 Dim Sum | 
 | |||||||||||||||
| Definition List: Three spaces, the term, a colon, a space, followed by the definition. Note: Terms with spaces are not supported. In case you do have a term with more then one word, separate the words with dashes or with the  non-breaking-space entity. | Sushi: Japan Dim Sum: S.F. | 
 | |||||||||||||||
| Table: Optional spaces followed by the cells enclosed in vertical bars. Note: | *bold* |cells are rendered as table headers.Note: |   spaced   |cells are rendered center aligned.Note: |     spaced |cells are rendered right aligned.Note: | 2 colspan ||cells are rendered as multi-span columns.Note: In case you have a long row and you want it to be more readable when you edit the table you can split the row into lines that end with a '\'backslash character. | | *L* | *C* | *R* | | A2 | 2 | 2 | | A3 | 3 | 3 | | multi span ||| | A4 \ | next \ | next | | 
 | |||||||||||||||
| WikiWord Links: CapitalizedWordsStuckTogether (or WikiWords) will produce a link automatically. Note: In case you want to link to a topic in a different Lash La Rue web write Webname.TopicName. | WebNotify Know.ReadmeFirst | WebNotify ReadmeFirst | |||||||||||||||
| #SquareBrackets
 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; i.e. [[text formatting FAQ]]links to topic TextFormattingFAQ.  You can also refer to a different web and use anchors. | [[wiki syntax]] [[Main.TWiki users]] | wiki syntax Main.TWiki users | |||||||||||||||
| 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 (i.e. WikiSyntax) and external link references (i.e. http://TWiki.org/) are supported. The same Forced Links rules apply for internal link references. Anchor names can be added as well, like[[WebHome#MyAnchor][go home]]and[[http://www.yahoo.com/#somewhere][Yahoo!]]. | [[WikiSyntax][syntax]] [[http://gnu.org][GNU]] | syntax GNU | |||||||||||||||
| Anchors: You can define a link reference inside a Lash La Rue topic (called an anchor name) and link to that. To define an anchor write #AnchorNameat 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. | [[WebHome#NotThere]] [[#MyAnchor][Jump]] #MyAnchor To here | WebHome#NotThere Jump To here | |||||||||||||||
| Prevent a Link: Prevent a WikiWord from being linked by prepending it with the <nop>tag. | <nop>SunOS | SunOS | |||||||||||||||
 NOTE: TWiki is designed to work with a wide range of browsers and computer platforms, holding to HTML 3.2 compatibility in the standard installation - adding raw HTML, particularly browser-specific tags (or any other mark-up that doesn't degrade well) will reduce compatibility.
 NOTE: TWiki is designed to work with a wide range of browsers and computer platforms, holding to HTML 3.2 compatibility in the standard installation - adding raw HTML, particularly browser-specific tags (or any other mark-up that doesn't degrade well) will reduce compatibility.
 If you need to save HTML frequently, you may want to check out TWiki:Plugins/GenHTMLAddon - it will "generate a directory containing rendered versions of a set of TWiki pages together with any attached files."
 If you need to save HTML frequently, you may want to check out TWiki:Plugins/GenHTMLAddon - it will "generate a directory containing rendered versions of a set of TWiki pages together with any attached files."
 NOTE: The opening and closing angle brackets -
 NOTE: The opening and closing angle brackets - <...> - of an HTML tag must be on the same line, or the tag will be broken.
<, ex: a > b
 If you're pasting in preformatted HTML text and notice problems, check the file in a text processor with no text wrap. Also, save without hard line breaks on text wrap, in your HTML editing program.
 If you're pasting in preformatted HTML text and notice problems, check the file in a text processor with no text wrap. Also, save without hard line breaks on text wrap, in your HTML editing program. 
http://..., https://..., ftp://... and mailto:...@... are linked automatically.
name@domain.com are linked automatically.
[[Square bracket rules]] let you easily create non-WikiWord links.
%PLUGINDESCRIPTIONS%:
*_text_* as bold italic text.
ExternalSite:Page text to external sites based on aliases defined in the InterWikis topic.
%VARIABLE% - that expand into content whenever a page is opened. Variables are replaced by their actual values: stored data, or system info (like the date, or the current user). There are predefined variables, and Preference variables that you set. You can also define custom variables, with new names and values.
% percent signs):
| Variable: | Expanded to: | ||||||||||||||||||||||||||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| %WIKIHOMEURL% | The base script URL of Lash La Rue, is the link of the Home icon in the upper left corner, is http://www.lashlarue.de/ | ||||||||||||||||||||||||||||||||||||||||||||||||
| %SCRIPTURL% | The script URL of Lash La Rue, is http://lashlarue.de/bin | ||||||||||||||||||||||||||||||||||||||||||||||||
| %SCRIPTURLPATH% | The path of the script URL of Lash La Rue, is /bin | ||||||||||||||||||||||||||||||||||||||||||||||||
| %SCRIPTSUFFIX% | The script suffix, ex: .pl,.cgiis | ||||||||||||||||||||||||||||||||||||||||||||||||
| %PUBURL% | The public URL of TWiki, is http://lashlarue.de/pub | ||||||||||||||||||||||||||||||||||||||||||||||||
| %PUBURLPATH% | The path of the public URL of Lash La Rue, is /pub | ||||||||||||||||||||||||||||||||||||||||||||||||
| %ATTACHURL% | The attachment URL of the current topic, is http://lashlarue.de/pub/TWiki/TWikiVariables Example: If you attach a file you can refer to it as %ATTACHURL%/image.gif | ||||||||||||||||||||||||||||||||||||||||||||||||
| %ATTACHURLPATH% | The path of the attachment URL of the current topic, is /pub/TWiki/TWikiVariables | ||||||||||||||||||||||||||||||||||||||||||||||||
| %URLPARAM{"name"}% | Returns the value of a URL parameter. Ex: %URLPARAM{"skin"}%returns print for a.../view/TWiki/TWikiVariables?skin=printURL. Is | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WIKITOOLNAME% | Name of wiki tool, is Lash La Rue | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WIKIVERSION% | Wiki tool version is 04 Sep 2004 $Rev: 1742 $ | ||||||||||||||||||||||||||||||||||||||||||||||||
| %USERNAME% | Your login username is guest | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WIKINAME% | Your Wiki username. Same as %USERNAME% if not defined in the TWikiUsers topic. Is TWikiGuest | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WIKIUSERNAME% | Your %WIKINAME% including the Main web name. Usefull for signatures. Is Main.TWikiGuest | ||||||||||||||||||||||||||||||||||||||||||||||||
| %MAINWEB% | The Main web containing TWikiUsers, OfficeLocations? and TWikiGroups?. Is Main | ||||||||||||||||||||||||||||||||||||||||||||||||
| %TWIKIWEB% | The web containing all documentation and configuration of Lash La Rue is TWiki | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WEB% | The current web is TWiki | ||||||||||||||||||||||||||||||||||||||||||||||||
| %BASEWEB% | The web name where the includes started, e.g. the web of the first topic of nested includes. Same as %WEB%in case there is no include. | ||||||||||||||||||||||||||||||||||||||||||||||||
| %INCLUDINGWEB% | The web name of the topic that includes the current topic. Same as %WEB%in case there is no include. | ||||||||||||||||||||||||||||||||||||||||||||||||
| %HOMETOPIC% | The home topic in each web. Is Home? | ||||||||||||||||||||||||||||||||||||||||||||||||
| %NOTIFYTOPIC% | The notify topic in each web. Is WebNotify | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WIKIUSERSTOPIC% | The index topic of all registered users. Is TWikiUsers | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WIKIPREFSTOPIC% | The web preferences topic. Is TWikiPreferences | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WEBPREFSTOPIC% | The web preferences topic. Is WebPreferences | ||||||||||||||||||||||||||||||||||||||||||||||||
| %STATISTICSTOPIC% | The web statistics topic. Is WebStatistics | ||||||||||||||||||||||||||||||||||||||||||||||||
| %TOPIC% | The current topic name, is TWikiVariables | ||||||||||||||||||||||||||||||||||||||||||||||||
| %BASETOPIC% | The name of the topic where the includes started, e.g. the first topic of nested includes. Same as %TOPIC%in case there is no include. | ||||||||||||||||||||||||||||||||||||||||||||||||
| %INCLUDINGTOPIC% | The name of the topic that includes the current topic. Same as %TOPIC%in case there is no include. | ||||||||||||||||||||||||||||||||||||||||||||||||
| %SPACEDTOPIC% | The current topic name with added spaces, for regular expression search of Ref-By, is TWiki%20*Variables | ||||||||||||||||||||||||||||||||||||||||||||||||
| %TOPICLIST{"format"}% | Topic index of a web. The "format" defines the format of one topic item. It may include variables: The $namevariable gets expanded to the topic name; the$webvariable gets expanded to the name of the web.
    Parameters are format, separator and 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). | ||||||||||||||||||||||||||||||||||||||||||||||||
| %WEBLIST{"format"}% | Web index, e.g. list of all webs. Hidden webs are excluded, e.g. webs with a NOSEARCHALL=onpreference variable. The"format"defines the format of one web item. The$namevariable gets expanded to the name of the web,$qnamegets expanded to double quoted name,$markertomarkerwhere web matchesselection.
    Parameters are format, separator and web:
 %WEBLIST{"   * [[$name.Home]]"}%creates a bullet list of all webs.%WEBLIST{"" webs="Trash,public" selection="TWiki" separator=" "}%Dropdown of all public Webs + Trash Web, current Web highlighted. | ||||||||||||||||||||||||||||||||||||||||||||||||
| %GMTIME% | GM time, is 31 Oct 2025 - 11:12 | ||||||||||||||||||||||||||||||||||||||||||||||||
| %GMTIME{"format"}% | Formatted GM time based on time variables. 
 %GMTIME{"$day $month, $year - $hour:$min:$sec"}%is31 Oct, 2025 - 11:12:31 | ||||||||||||||||||||||||||||||||||||||||||||||||
| %SERVERTIME% | Server time, is 31 Oct 2025 - 12:12 | ||||||||||||||||||||||||||||||||||||||||||||||||
| %SERVERTIME{"format"}% | Formatted server time. Example: %SERVERTIME{"$hou:$min"}%is 12:12 | ||||||||||||||||||||||||||||||||||||||||||||||||
| %HTTP_HOST% | HTTP_HOST environment variable, is lashlarue.de | ||||||||||||||||||||||||||||||||||||||||||||||||
| %REMOTE_ADDR% | REMOTE_ADDR environment variable, is 216.73.216.151 | ||||||||||||||||||||||||||||||||||||||||||||||||
| %REMOTE_PORT% | REMOTE_PORT environment variable, is 62496 | ||||||||||||||||||||||||||||||||||||||||||||||||
| %REMOTE_USER% | REMOTE_USER environment variable, is | ||||||||||||||||||||||||||||||||||||||||||||||||
| %INCLUDE{"page" ...}% | Server side include to IncludeTopicsAndWebPages. Parameters are page name, and an optional pattern="(reg-exp)". The page name is:
 | ||||||||||||||||||||||||||||||||||||||||||||||||
| %STARTINCLUDE% | If present in included topic, start to include text from this location up to the end, or up to the location of the %STOPINCLUDE%variable. A normal view of the topic shows everyting exept the%STARTINCLUDE%variable itself. | ||||||||||||||||||||||||||||||||||||||||||||||||
| %STOPINCLUDE% | If present in included topic, stop to include text at this location and ignore the remaining text. A normal view of the topic shows everyting exept the %STOPINCLUDE%variable itself. | ||||||||||||||||||||||||||||||||||||||||||||||||
| %TOC% | Table of Contents of current topic. | ||||||||||||||||||||||||||||||||||||||||||||||||
| %TOC{"SomeTopic" ...}% | Table of Contents. Shows a TOC that is generated automatically based on headings of a topic. Headings in WikiSyntax ( "---++ text") and HTML ("<h2>text<h2>") are taken into account. (But not"<H2>text</H2>", which can be used to exclude a heading from the TOC.) Parameters are topic name, web and depth:
 %TOC{depth="2"}%,%TOC{"TWikiDocumentation" web="TWiki"}% | ||||||||||||||||||||||||||||||||||||||||||||||||
| %SEARCH{"text" ...}% | Inline search, shows a search result embedded in a topic. Parameters are the search term, web, scope, order and many more: [1] 
 %SEARCH{"wiki" web="Main" scope="topic"}% | ||||||||||||||||||||||||||||||||||||||||||||||||
| %METASEARCH{...}% | Special search of meta data 
 %METASEARCH{type="topicmoved" web="%WEB%" topic="%TOPIC%" title="This topic used to exist and was moved to: "}%, you may want to use this in WebTopicViewTemplate and WebTopicNonWikiTemplate%METASEARCH{type="parent" web="%WEB%" topic="%TOPIC%" title="Children: "}% | ||||||||||||||||||||||||||||||||||||||||||||||||
| %VAR{"NAME" web="Web"}% | Get a preference value from a web other then the current one. Example: To get %WEBBGCOLOR%of the Main web write%VAR{"WEBBGCOLOR" web="Main"}%, is#000000 | 
[1] Note: The search form uses identical names for input fields. [2] Note: A web can be excluded from aweb="all"search if you define aNOSEARCHALL=onvariable in its WebPreferences.
| Variable: | Level: | What: | 
|---|---|---|
| %WIKIWEBMASTER% | SL | Webmaster email address (sender of email notifications) , is webmaster@your.company | 
| %WIKIWEBLIST% | SL | List of Lash La Rue webs (in upper right corner of topics) | 
| %WEBTOPICLIST% | WL | Common links of web (second line of topics) | 
| %WEBCOPYRIGHT% | SL , WL | Copyright notice (bottom right corner of topics) | 
| %WEBBGCOLOR% | WL | Background color of web | 
| %NOSEARCHALL% | WL | Exclude web from a web="all"search (set variable toonfor hidden webs) | 
| %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 ) | 
| %EDITBOXWIDTH% | SL , UL | Horizontal size of edit box, is 100 | 
| %EDITBOXHEIGHT% | SL , UL | Vertical size of edit box, is 25 | 
| %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: | 
| %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: | 
| %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: | 
| %HTTP_EQUIV_ON_VIEW% | SL | http-equiv meta tags for view, rdiff, attach, search* scripts. | 
| %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. | 
| %DENYWEBCHANGE% | WL | List of users and groups who are not allowed to change topics in the Lash La Rue web. (More in TWikiAccessControl) | 
| %ALLOWWEBCHANGE% | WL | List of users and groups who are allowed to change topics in the Lash La Rue web. (More in TWikiAccessControl) | 
| %DENYTOPICCHANGE% | (any topic) | List of users and groups who are not allowed to change the current topic. (More in TWikiAccessControl) | 
| %ALLOWTOPICCHANGE% | (any topic) | List of users and groups who are allowed to change the current topic. (More in TWikiAccessControl) | 
| %DENYWEBRENAME% | WL | List of users and groups who are not allowed to rename topics in the Lash La Rue web. (More in TWikiAccessControl) | 
| %ALLOWWEBRENAME% | WL | List of users and groups who are allowed to rename topics in the Lash La Rue web. (More in TWikiAccessControl) | 
| %DENYTOPICRENAME% | (any topic) | List of users and groups who are not allowed to rename 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) | 
| %FINALPREFERENCES% | SL , WL | List of preferences that are not allowed to be overridden by next level preferences | 
Set VARIABLENAME = value
Example: Create a custom logo variable-- PeterThoeny - 13 Sep 2001
- To place a logo anywhere in a web by typing
%MYLOGO%, simply define the variable on the web's WebPreferences page. You also have to uploadlogo.gif- this can be done by attaching a file toLogoTopic(any topic name you choose):
Set MYLOGO = %PUBURL%/%MAINWEB%/LogoTopic/logo.gif
*.php files are renamed to *.php.txt.
Sample.txt
%ATTACHURL%/Sample.txt
%ATTACHURL text appears as: http://lashlarue.de/pub/TWiki/FileAttachment/Sample.txt, a link.
%PUBURL%/%WEB%/OtherTopic/Sample.txt (for the same web)
%PUBURL%/Otherweb/OtherTopic/Sample.txt (for adifferent web)
Sample.txt
%INCLUDE{"%ATTACHURL%/Sample.txt"}%
Smile.gif
%ATTACHURL%/Smile.gif
 , an image.
, an image.
Attachment: Action: Size: Date: Who: Comment: Sample.txt
action 30 22 Jul 2000 - 19:37 PeterThoeny Just a sample Smile.gif
action 94 22 Jul 2000 - 19:38 PeterThoeny Smiley face 
h means the attachment is hidden, it isn't listed when viewing a topic.
| 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.
NOTE: If things aren't working correctly, there may be useful entries in data/warning.txt.
Example: WebForm from the TWiki.Know web| *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... 
Example: WebFormTemplate
- Know.WebFormTemplate Form main definition:
Name Type Size Values Tooltip message TopicClassification select 1 ... blah blah... OperatingSystem checkbox 3 ... blah blah... OsVersion text 16 ... blah blah... 
- Know.TopicClassification field value definition:
Name Type Tooltip message NoDisclosure option blah blah... PublicSupported option blah blah... PublicFAQ option blah blah... 
[[...]] links can be used for force a link, at present [[...][...]] format is not supported.
WebTopicEditTemplate or using field=value or for checkboxes fieldWEBFORMS 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. formtemplate parameter in the URL.
WEBFORMS variable defines alternative Form Templates 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.
&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, like twiki.print.tmpl, that redefines the header and footer.
twiki.tmpl, that all other templates use.
Template variable: Defines: %TMPL:DEF{"sep"}% "|" separator %TMPL:DEF{"htmldoctype"}% Start of all HTML pages %TMPL:DEF{"standardheader"}% Standard header (ex: view, index, seach) %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 per web. The following search order applies:
twiki/templates/$webName/$scriptName.tmpl
twiki/templates/$scriptName.tmpl
$webName is the name of the web (ex: Main), and $scriptName is the script (ex: view).
Note: TWikiSkins can be defined to overload the standard templates.
Special variables are used in templates, especially in view, to display meta data.
All template topics are located in the TWiki web. The WebTopicEditTemplate can be overloaded. The following search order applies when you create a new topic:
Topic Name: What it is: WebTopicViewTemplate Help text shown when you view a non existing topic. WebTopicNonWikiTemplate Help text shown when you view a non existing topic that has not a WikiName. WebTopicEditTemplate Default text shown when you create a new topic. 
templatetopic CGI parameter.
<form name="new" action="%SCRIPTURLPATH%/edit%SCRIPTSUFFIX%/%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="onlywikiname" value="on" />
     <input type="submit" value="Create" />
     (date format is <nop>YYYYxMMxDD)
</form>
The "onlywikiname" parameter enforces WikiWords for topic names.
Note: Use can use the %WIKIUSERNAME% and %DATE% variables in your topic templates as the signature; those variables are expanded when a new topic is created. The standard topic signature is: -- %WIKIUSERNAME% - %DATE%
oopsbase.tmpl and a example oops dialog oopstest.tmpl which is based on the base template. 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/Test/TestTopic2?template=oopstest¶m1=WebHome¶m2=WebNotify
.tmpl filename extension - it contains unresolved %VARIABLES%, but can 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.
SKIN Preference variable in TWikiPreferences, one of the WebPreferences, or in a user - TWikiGuest? - topic.
Set SKIN = print
?skin=name to the URL, for this example:
?skin=name URL parameter overrides the SKIN Preference value.
-- PeterThoeny - 14 Jul 2001 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 (i.e. %SEARCH{ "food" format="| $topic | $summary |" }%).
header="..." parameter
Use the header paramter to specify the header of a search result. It should correspond to the format of the format parameter. This parameter is optional. I.e. header="| *Topic:* | *Summary:* |"
2. format="..." parameter
Use the format paramter to specify the format of one search hit. I.e. format="| $topic | $summary |"
Variables that can be used in the format string:
| Name: | Expands To: | 
|---|---|
| $n | New line | 
| $web | Name of the web | 
| $topic | Topic name | 
| $locked | LOCKED flag (if any) | 
| $date | Time stamp of last topic update, i.e. 31 Oct 2025 - 11:12 | 
| $isodate | Time stamp of last topic update, i.e. 2025-10-31T11:12Z | 
| $rev | Number of last topic revision, i.e. 1.4 | 
| $wikiusername | Wiki user name of last topic update, i.e. Main.JohnSmith | 
| $username | User name of last topic update, i.e. JohnSmith | 
| $summary | Topic summary | 
| $formfield(name) | The field value of a form field, i.e. $formfield(TopicClassification)would get expanded toPublicFAQ. This applies only to topics that have a TWikiForm | 
| $pattern(reg-exp) | A regular expression pattern to extract some text from a topic, i.e. $pattern(.*?\*.*?Email\:\s*([^\n\r]+).*)extracts the email address from a bullet of format* Email: .... | 
$pattern(reg-exp), specify a RegularExpression that scans from start to end and contains the text you want to keep in parenthesis, i.e. $pattern(.*?(from here.*?to here).*). You need to make sure that the integrity of a web page is not compromised, i.e. 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:
META variable name/value pairs
META variables to store topic data that's separate from the main free-form content. This includes program-generated info like FileAttachment and topic movement data, and user-defined TWikiForms info. Use META variables to format and display Meta Data.  
%META:<type>{key1="value1" key2="value2" ...}%
name, this appears first for easier searching (note the order of the variables themselves is defined).
\n (new line) is represented in values by %_N_ and " (double-quotes) by %_Q_%.
Example of Format
%META:TOPICINFO{version="1.6" date="976762663" author="PeterThoeny" format="1.0"}%
   text of the topic
%META:TOPICMOVED{from="Codev.OldName" to="Codev.NewName"
   by="JohnTalintyre" date="976762680"}%
%META:TOPICPARENT{name="NavigationByTopicContext"}%
%META:FILEATTACHMENT{name="Sample.txt" version="1.3" ... }%
%META:FILEATTACHMENT{name="Smile.gif" version="1.1" ... }%
%META:FORM{name="WebFormTemplate"}%
%META:FIELD{name="OperatingSystem" value="OsWin"}%
%META:FIELD{name="TopicClassification" value="PublicFAQ"}%
| Key | Comment | 
|---|---|
| version | Same as RCS version | 
| date | integer, unx time, seconds since start 1970 | 
| author | last to change topic, is the REMOTE_USER | 
| format | Format of this topic, will be used for automatic format conversion | 
%META:TOPICMOVED{from="Codev.OldName" to="Codev.NewName" by="talintj" date="976762680"}%
       | Key | Comment | 
|---|---|
| from | Full name i.e. web.topic | 
| to | Full name i.e. web.topic | 
| by | Who did it, is the REMOTE_USER, not WikiName | 
| date | integer, unx time, seconds since start 1970 | 
| Key | Comment | 
|---|---|
| name | The topic from which this was created, WebHome if done from Go, othewise topic where?or form used.  Normally just topic, but is full web.topic format if parent is in a different Web.  Renaming a Web will then only break a few of these references or they can be scanned and fixed. | 
| Key | Comment | 
|---|---|
| name | Name of file, no path. Must be unique within topic | 
| version | Same as RCS revision | 
| path | Full path file was loaded from | 
| size | In bytes | 
| date | integer, unx time, seconds since start 1970 | 
| user | the REMOTE_USER, not WikiName | 
| comment | As supplied when file uploaded | 
| attr | hif hidden, optional | 
| Key | Comment | 
|---|---|
| movedfrom | full topic name - web.topic | 
| movedby | the REMOTE_USER, not WikiName | 
| movedto | full topic name - web.topic | 
| moveddate | integer, unx time, seconds since start 1970 | 
| Key | Comment | 
|---|---|
| name | A topic name - the topic represents one of the TWikiForms. Can optionally include the web name i.e. web.topic, but doesn't normally | 
| Key | Name | 
|---|---|
| name | Ties to entry in TWikiForms template, is title with all bar alphanumerics and . removed | 
| title | Full text from TWikiForms template | 
| value | Value user has supplied via form | 
diff function output appears in a logical order
text of topic
Raw Text link can be clicked to show the text of a topic (ie: as seen when editing).  This is done by adding raw=on to URL.  raw=debug shows the meta data as well as the topic data, ex: debug view for this topic
view, preview and edit scripts.
Current support covers:
              | Variable usage: | Comment: | 
|---|---|
| %META{"form"}% | Show form data, see TWikiForms | 
| %META{"attachments"}% | Show attachments, exclude hidden | 
| Options for Attachments: | |
| all="on" | Show ALL attachments (including hidden) | 
| %META{"moved"}% | Details of any topic moves | 
| %META{"parent [options]"}% | Show topic parent | 
| Options for parent: | |
| dontrecurse="on" | By default recurses up tree, at some cost | 
| prefix="..." | Prefix for parents, only if there are parents; default "" | 
| suffix="..." | Suffix, only appears if there are parents; default "" | 
| separator="..." | Separator between parents, default is " > " | 
Meta.pm code that supports the format needs only minor alteration.
-- JohnTalintyre - 29 Aug 2001 TWiki:Plugins expands to TWiki:Plugins on TWiki.org. You can edit the predefined set of of Wiki-related sites, and add your own.
SomePlugin), there's a separate development page.
Dev (SomePluginDev).
twiki/bin and twiki/lib directories for the Test version, adjusting the paths in the new lib/TWiki.cfg, the twiki/data; the twiki/templates and twiki/pub directories are shared. 
 If you modify topics using the new features, live users will likely see unfamiliar new META tags showing up on their pages - to avoid this, create and edit test-only topics to try out new features.
 If you modify topics using the new features, live users will likely see unfamiliar new META tags showing up on their pages - to avoid this, create and edit test-only topics to try out new features.
Test in the DISABLEDPLUGINS variable in TWikiPreferences. Redefine the DISABLEDPLUGINS variable in the Test web and do the testing there.
lib/TWiki/Plugins directory are activated automatically unless disabled by the DISABLEDPLUGINS Preferences variable in TWikiPreferences. You can optionally list the installed Plugins in the INSTALLEDPLUGINS Preferences variable. This is useful to define the sequence of Plugin execution, or to specify other webs than the Lash La Rue web for the Plugin topics. Settings in TWikiPreferences are:
Set INSTALLEDPLUGINS = DefaultPlugin, ... 
Set DISABLEDPLUGINS = EmptyPlugin, ...
web.topicname name, if specified in INSTALLEDPLUGINS; next, the TWiki web is searched; and finally, the current web.
Plugin-specific settings are done in individual Plugin topics. Two settings are standard for each Plugin:
Set SHORTDESCRIPTION = Blah blah woof woof.
data/debug.txt. Set to 0=off or 1=on:
Set DEBUG = 0
%<pluginname>_<var>%, ex: %DEFAULTPLUGIN_SHORTDESCRIPTION% shows the description of the DefaultPlugin.
%ACTIVATEDPLUGINS% variable lists activated Plugins by name. (This variable is displayed in TWikiPreferences for debugging use.)
%PLUGINDESCRIPTIONS% variable displays a bullet list with a one-line description of each active Plugins. This variable is based on the %<plugin>_SHORTDESCRIPTION% Preferences variables of individual topics and is shown in TextFormattingRules.
DEMO: Automatically List Active Plugins Using Variables Using%ACTIVATEDPLUGINS%:
On this TWiki site, the active Plugins are: DefaultPlugin, InterwikiPlugin, TablePlugin. Using%:PLUGINDESCRIPTIONS% 
You can use any of these active TWiki Plugins:
- DefaultPlugin: This plugin can be used to specify some simple custom rendering rules. It also renders deprecated
*_text_*as bold italic text.- InterwikiPlugin: Link
ExternalSite:Pagetext to external sites based on aliases defined in the InterWikis topic.- TablePlugin: Control attributes of tables and sorting of table columns
lib/TWiki/Func.pm implements ALL official Plugin functions. Plugins should ONLY use functions published in this module. 
 If you use functions not in
 If you use functions not in Func.pm, you run the risk of creating security holes. Also, your Plugin will likely break and require updating when you upgrade to a new version of TWiki.
outsidePREHandler and insidePREHandler are particularly expensive. 
lib/TWiki/Plugins/EmptyPlugin.pm module.
DISABLE_ from the function name.
GetVersion detection routine are provided for automatic compatibility checking.
$VERSION='0.000' variable, beginning at 1.000.
initPlugin handler should check all dependencies and return TRUE if the initialization is OK or FALSE if something went wrong.
initPlugin handler).
$VERSION='1.000' is the current setting in TWiki::Plugins.pm and in the preinstalled system Plugins (DefaultPlugin, EmptyPlugin, InterwikiPlugin).
MyFirstPlugin.pm
MyFirstPlugin.txt
MyFirstPlugin topic. Other needed Perl code is best placed in a lib/TWiki/Plugins/MyFirstPlugin/ directory.
The Plugin API handles the details of connecting your Perl module with main TWiki code. When you're familiar with the Plugin API, you're ready to develop Plugins.
lib/TWiki/Plugins/EmptyPlugin.pm to <name>Plugin.pm. EmptyPlugin.pm contains no executable code, so it does nothing, but it's ready to be used. Customize it. Refer to the Plugin API specs for more information.
OUTLINE: Doc Topic Contents
Check EmptyPlugin on TWiki.org for the latest Plugin doc topic template. Here's a quick overview of what's covered: Syntax Rules: <Describe any special text formatting that will be rendered.>" MyFirstPlugin Settings: <Description and settings for custom Plugin %VARIABLES%, and those required by TWiki.>"How-to Instructions: <Step-by-step set-up guide, user help, whatever it takes to install and run, goes here.>" Test Example: <Include an example of the Plugin in action: if it works, the installation was a success!>" Plugin Info: <Version, credits, history, requirements - entered in a form, displayed as a table. Both are automatically generated when you create or edit a page in the TWiki:Plugins web.>"
- Plugins Preferences <If user settings are needed, explain... Entering valuse works exactly like TWikiPreferences and WebPreferences: six (6) spaces and then:>"
- Set <EXAMPLE = value added>
Plugin, ex: MyFirstPlugin.pm, and a documentation page with the same name(MyFirstPlugin.txt).
lib/TWiki/Plugins/MyFirstPlugin.pm
data/TWiki/MyFirstPlugin.txt
pub/TWiki/MyFirstPlugin/uparrow.gif [a required graphic]
MyFirstPlugin.zip) and add the entire directory structure from Step 1. The archive should look like this:
lib/TWiki/Plugins/MyFirstPlugin.pm
data/TWiki/MyFirstPlugin.txt
pub/TWiki/MyFirstPlugin/uparrow.gif
MyFirstPlugin.txt
MyFirstPlugin.zip
Dev, ex: MyFirstPluginDev. This is the discussion page for future development. (User support for Plugins is handled in TWiki:Support.)
mailnotify is called by a deamon in regular intervals. The script sends an automated email to subscribed users if topics were changed in a web within last interval.
%NOTIFYTOPIC%
Net::SMTP module if it is installed on your system. Set this with the SMTPMAILHOST variable in TWikiPreferences.
You can use an external mail program, like sendmail, if the Net::SMTP module is not installed. Set the program path in $mailProgram in TWiki.cfg.
 Net::SMTP can be easily disabled (ex: if there is an installation error) by setting
 Net::SMTP can be easily disabled (ex: if there is an installation error) by setting SMTPMAILHOST in TWikiPreferences to an empty value.
 You can set a separate
 You can set a separate SMTPSENDERHOST variable to define the mail sender host (some SMTP installations require this). 
cron table so that mailnotify is called in an interval of your choice. Please consult man crontab of how to modify the table that schedules program execution at certain intervals. Example:
% crontab -e 15,45 * * * * (cd ~twiki/public_html/bin; ./mailnotify -q)The above line will call mailnotify at 15 minutes and 45 minutes past every hour. The
-q switch suppresses all normal output.
For ISP installations: Many ISPs don't allow hosted accounts direct cron access, as it's often used for things that can heavily load the server. Workaround scripts are available.
On Windows NT/2000: You can use a scheduled task if you have administrative privileges.
Note: AT on an NT machine is pretty limited.
Microsoft lists several third-party
replacements
(as of 2001-11-20, none of them free).
%STATISTICSTOPIC%
$doLogTopicView, $doLogTopicSave and $doLogTopicUpload in TWiki.cfg 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
SEARCH. The number of topics listed by the limit parameter.:
%SEARCH{".*" web="TWiki" regex="on" nosearch="on" order="modified" 
reverse="on" limit="50"}%
SEARCH:
%SEARCH{"\.*" scope="topic" regex="on" nosearch="on"}%
-- MikeMannix? - 01 Dec 2001
Trash web.
[More] (bottom right of page) on the topic to be changed, then, in the new screen, on [Rename/move].
Trash to delete a topic
[Rename/Move]: the topic will be renamed and links to the topic updated as requested.
[Rename/Move].
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 refernces to the topic being changed.
Changed references are kept are as short as possible, ex: topic is used in preference to web.topic.
Trash web - 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.
Trash web should be be cleared periodically, by archiving the contents if required (recommended), then deleting the files from the Trash directory.
%<nop>METASEARCH{type="topicmoved" web="%WEB%" topic="%TOPIC%" 
title="This topic used to exist and was moved to: "}%
<pre> and <verbatim> are honoured - no changes are made to text within these areas.
search can show matches that will not be updated because of case differences. Other mismatches to actual rendered output are also possible as the approaches are so different.
The following shows some limitations of square bracket processing.
-- MikeMannix - 15 Sep 2001[[Old Topic]] => [[NewTopic][Old Topic]] [[old topic]] => [[NewTopic][old topic]] [[old t opic]] => not changed [[OldTopic]] => [[NewTopic]]
twiki/data/, ex: twiki/data/Newweb twiki/data/_default.
%, 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.
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 subdirectory structure 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 | 
| twiki/pub | list | Public files (e.g. images) and FileAttachments and their RCS histories | 
| twiki/data | list | Topic text (page content) and RCS histories | 
| twiki/templates | list | HTML templates, used by TWiki scripts | 
twiki | File: | Used for: | 
|---|---|
| index.html | A page with a link to first launch TWiki after install | 
| 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 | 
twiki/bin | File: | Used for: | 
|---|---|
| .htaccess.txt | Authentication. Rename to .htaccess and customize if used | 
| attach | Script that shows the attach file page (FileAttachment) | 
| edit | Script to edit a topic | 
| geturl | Script to fetch URL data | 
| installpasswd | Script to install new password by admin | 
| mailnotify | Script called by cron job to notify users of changes | 
| oops | Script that shows an OK or oops dialog | 
| passwd | Script to reset and change password | 
| preview | Script to preview topic after edit | 
| rdiff | Script to see differences of topics | 
| register | Script to register new users | 
| rename | Script to rename/move topics and move attachments | 
| save | Script that saves a topic, called by preview | 
| search | Script that displays search results | 
| statistics | Script to create statistics topic | 
| testenv | Script to test CGI environment variables | 
| upload | Script that does file upload (FileAttachment) | 
| view | Script to view a topic ( the script ) | 
| viewfile | Script to 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 | For 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, *.txttext file and*.txt,vRCS repository file handling | 
| 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 data-related files, including images used by TWiki and FileAttachments. Attachments are stored in sub-directories created with the related topic name. Partial file list:
| File: | Used for: | 
|---|---|
| favicon.ico | ICO file | 
| twikilogo.gif | GIF file | 
| twikilogo1.gif | GIF file | 
| twikilogo2.gif | GIF file | 
| twikilogo3.gif | GIF file | 
| twikilogo4.gif | GIF file | 
| twikilogo88x31 | GIF file | 
| wikiHome.gif | GIF file | 
| icn/_filetypes.txt | GIF file | 
| icn/bat.gif | GIF file | 
| icn/bmp.gif | GIF file | 
| ... | ... | 
| TWiki/FileAttachment/Sample.txt | TEXT file | 
| TWiki/FileAttachment/Smile.gif | GIF file | 
| TWiki/PreviewBackground/blankltgraybg.gif | GIF file | 
| TWiki/PreviewBackground/blankwhitebg.gif | GIF file | 
| TWiki/PreviewBackground/previewbg.gif | GIF file | 
| TWiki/WabiSabi/wabisabi.gif | GIF file | 
| Know/IncorrectDllVersionW32PTH10DLL/W32PTH10.DLL | DLL file | 
twiki/data Main, TWiki, Know, Test - with documentation and demo content, a Trash web, and a _default directory containing all topics required to start a new web. Partial file list: 
| File: | Used for: | 
|---|---|
| .htpasswd | Basic Authentication (htaccess) password file | 
| debug.txt | Program messages useful for debugging | 
| mime.types | Recognized file formats | 
| warning.txt | Diagnostic messages for identifying problems | 
| _default directory can be copied to empty directory when creating new Webs | |
| _default/.changes | Web-level record of topic changes | 
| _default/.mailnotify | Web-level timstamp of last e-mail notification | 
| _default/WebChanges.txt | Display most recent topic changes in web | 
| _default/WebChanges.txt,v | Revisions history (RCS) | 
| _default/WebHome.txt | Default web home page | 
| _default/WebHome.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 | Web-level preference settings | 
| _default/WebPreferences.txt,v | Revisions history (RCS) | 
| _default/WebSearch.txt | Web-level search options | 
| _default/WebSearch.txt,v | Revisions history (RCS) | 
| _default/WebStatistics.txt | Generates web usage statistics | 
| _default/WebStatistics.txt,v | Revisions history (RCS) | 
| ... | ... | 
twiki/templates | File: | Used for: | 
|---|---|
| attach.tmpl | Attach file control screen | 
| attachagain.tmpl | Control screen | 
| attachnew.tmpl | Control screen | 
| changeform.tmpl | Control screen | 
| changes.tmpl | Displays WebChanges 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 | Control screen | 
| oopsaccesschange.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 | 
| 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 | 
| oopsregexist.tmpl | Error message | 
| oopsregpasswd.tmpl | Error message | 
| oopsregrequ.tmpl | Error message | 
| oopsregthanks.tmpl | Error message | 
| oopsregwiki.tmpl | Error message | 
| oopsrenameerr.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) | 
| register.tmpl | Registration page | 
| registernotify.tmpl | Registration notification | 
| rename.tmpl | Doing a new topic rename, user chooses web & topic | 
| renamebase.tmpl | Used by other rename templates | 
| renameconfirm.tmpl | Confirms a pre-specified rename, ex: undoing a rename | 
| renamerefs.tmpl | Rename done, but some references not changed (topics were locked) | 
| search.tmpl | Search screen | 
| searchbookview.tmpl | Search results with full topic content | 
| searchmeta.tmpl | Search screen | 
| searchrenameview.tmpl | Used by renameto list references to topic being renamed | 
| twiki.tmpl | Base template definitions used by other templates | 
| view.plain.tmpl | Printable topic view with reduced header/footer | 
| view.print.tmpl | Topic view without header/footer | 
| view.tmpl | Main topic view | 
twiki/bin:
drwxrwxr-x 2 twiki twiki 4096 Sep 14 22:45 . drwxrwxr-x 5 twiki twiki 4096 Aug 3 01:57 .. -rw-rw-r-- 1 twiki twiki 895 Aug 25 01:32 .htaccess -rw-rw-r-- 1 twiki twiki 782 Aug 25 01:32 .htaccess.txt -rw-rwxr-x 1 twiki twiki 4819 Sep 7 01:44 attach -rwxrwxr-x 1 twiki twiki 3381 Jul 21 18:41 changes -rw-rwxr-x 1 twiki twiki 8056 Sep 3 22:44 edit -rwxrwxr-x 1 twiki twiki 1736 Nov 17 2000 geturl -rwxrwxr-x 1 twiki twiki 4481 Aug 21 19:10 installpasswd -rwxrwxr-x 1 twiki twiki 5829 Aug 21 22:03 mailnotify -rwxrwxr-x 1 twiki twiki 4512 Aug 25 22:10 makedistrib -rw-rwxr-x 1 twiki twiki 2254 Aug 21 19:25 oops -rwxrwxr-x 1 twiki twiki 6399 Aug 22 18:31 passwd -rw-rwxr-x 1 twiki twiki 5315 Sep 3 22:45 preview -rwxrwxr-x 1 twiki twiki 8946 Sep 8 18:35 rdiff -rw-rwxr-x 1 twiki twiki 9199 Aug 25 21:02 register -rwxrwxr-x 1 twiki twiki 13481 Sep 7 21:17 rename -rw-rwxr-x 1 twiki twiki 4645 Sep 7 01:44 save -rwxrwxr-x 1 twiki twiki 4166 Jul 21 18:45 search -rw-rwxr-x 1 twiki twiki 10006 Sep 7 01:42 statistics -rwxrwxr-x 1 twiki twiki 9356 Aug 31 10:04 testenv -rw-rwxr-x 1 twiki twiki 13782 Aug 21 22:17 upload -rwxrwxr-x 1 twiki twiki 10164 Sep 8 18:24 view -rw-rwxr-x 1 twiki twiki 2773 Sep 13 17:21 viewfileDirectory
twiki/templates/:
drwxrwxr-x 2 twiki twiki 4096 Sep 8 00:47 . drwxrwxr-x 4 twiki twiki 4096 Sep 10 23:21 .. -rw-rw-r-- 1 twiki twiki 2573 Aug 31 13:06 attach.tmpl -rw-rw-r-- 1 twiki twiki 1604 Aug 3 14:52 attachagain.tmpl -rw-rw-r-- 1 twiki twiki 449 Aug 3 14:47 attachnew.tmpl -rw-rw-r-- 1 twiki twiki 1309 Sep 3 22:47 changeform.tmpl -rw-rw-r-- 1 twiki twiki 1619 Aug 31 13:16 changes.tmpl -rw-rw-r-- 1 twiki twiki 11842 Sep 10 19:00 edit.iejs.tmpl -rw-rw-r-- 1 twiki twiki 2603 Sep 3 22:48 edit.tmpl -rw-rw-r-- 1 twiki twiki 981 May 28 20:14 mailnotify.tmpl -rw-rw-r-- 1 twiki twiki 1499 Aug 31 13:16 moveattachment.tmpl -rw-rw-r-- 1 twiki twiki 570 Aug 1 01:24 oopsaccesschange.tmpl -rw-rw-r-- 1 twiki twiki 586 Aug 1 01:24 oopsaccessgroup.tmpl -rw-rw-r-- 1 twiki twiki 573 Aug 1 01:47 oopsaccessrename.tmpl -rw-rw-r-- 1 twiki twiki 573 Aug 1 01:24 oopsaccessview.tmpl -rw-rw-r-- 1 twiki twiki 1014 Aug 1 01:25 oopsauth.tmpl -rw-rw-r-- 1 twiki twiki 405 Aug 1 01:49 oopsbadpwformat.tmpl -rw-rw-r-- 1 twiki twiki 344 Jul 31 10:16 oopschangepasswd.tmpl -rw-rw-r-- 1 twiki twiki 624 Jul 31 02:09 oopsempty.tmpl -rw-rw-r-- 1 twiki twiki 918 Jul 31 02:20 oopslocked.tmpl -rw-rw-r-- 1 twiki twiki 590 Jul 31 10:25 oopslockedrename.tmpl -rw-rw-r-- 1 twiki twiki 328 Jul 31 10:26 oopsmissing.tmpl -rw-rw-r-- 1 twiki twiki 2158 Sep 13 02:03 oopsmore.tmpl -rw-rw-r-- 1 twiki twiki 407 Aug 1 10:22 oopsmoveerr.tmpl -rw-rw-r-- 1 twiki twiki 1136 Aug 1 01:30 oopsnoformdef.tmpl -rw-rw-r-- 1 twiki twiki 522 Aug 1 01:31 oopsnotwikiuser.tmpl -rw-rw-r-- 1 twiki twiki 413 Jul 31 02:07 oopsnoweb.tmpl -rw-rw-r-- 1 twiki twiki 393 Aug 1 01:32 oopspreview.tmpl -rw-rw-r-- 1 twiki twiki 462 Aug 1 01:32 oopsregexist.tmpl -rw-rw-r-- 1 twiki twiki 345 Aug 1 00:52 oopsregpasswd.tmpl -rw-rw-r-- 1 twiki twiki 356 Aug 1 00:53 oopsregrequ.tmpl -rw-rw-r-- 1 twiki twiki 540 Aug 1 01:57 oopsregthanks.tmpl -rw-rw-r-- 1 twiki twiki 679 Aug 1 01:02 oopsregwiki.tmpl -rw-rw-r-- 1 twiki twiki 411 Aug 1 10:23 oopsrenameerr.tmpl -rw-rw-r-- 1 twiki twiki 483 Aug 1 01:59 oopsresetpasswd.tmpl -rw-rw-r-- 1 twiki twiki 921 Sep 7 23:47 oopsrev.tmpl -rw-rw-r-- 1 twiki twiki 774 Aug 1 01:35 oopssave.tmpl -rw-rw-r-- 1 twiki twiki 477 Aug 1 02:01 oopssaveerr.tmpl -rw-rw-r-- 1 twiki twiki 452 Aug 1 01:37 oopssendmailerr.tmpl -rw-rw-r-- 1 twiki twiki 379 Aug 1 10:23 oopstopicexists.tmpl -rw-rw-r-- 1 twiki twiki 342 Jul 31 10:09 oopsupload.tmpl -rw-rw-r-- 1 twiki twiki 364 Aug 1 02:05 oopswrongpassword.tmpl -rw-rw-r-- 1 twiki twiki 2584 Sep 3 22:49 preview.tmpl -rw-rw-r-- 1 twiki twiki 1539 Sep 8 18:29 rdiff.tmpl -rw-rw-r-- 1 twiki twiki 552 Jul 14 19:23 register.tmpl -rw-rw-r-- 1 twiki twiki 1151 Aug 23 16:38 registernotify.tmpl -rw-rw-r-- 1 twiki twiki 789 Aug 8 23:32 rename.tmpl -rw-rw-r-- 1 twiki twiki 2310 Sep 10 14:56 renamebase.tmpl -rw-rw-r-- 1 twiki twiki 475 Aug 3 16:53 renameconfirm.tmpl -rw-rw-r-- 1 twiki twiki 589 Aug 8 23:32 renamerefs.tmpl -rw-rw-r-- 1 twiki twiki 1792 Aug 31 18:38 search.tmpl -rw-rw-r-- 1 twiki twiki 1650 Aug 31 18:38 searchbookview.tmpl -rw-rw-r-- 1 twiki twiki 149 Sep 13 02:00 searchmeta.tmpl -rw-rw-r-- 1 twiki twiki 2044 Aug 31 18:38 searchrenameview.tmpl -rw-rw-r-- 1 twiki twiki 2246 Aug 31 13:08 twiki.tmpl -rw-rw-r-- 1 twiki twiki 418 Aug 31 13:07 view.plain.tmpl -rw-rw-r-- 1 twiki twiki 826 Aug 31 13:08 view.print.tmpl -rw-rw-r-- 1 twiki twiki 1770 Sep 8 00:32 view.tmplDirectory
twiki/data/:
drwxrwxr-x 8 nobody nobody 4096 Sep 7 01:04 . drwxrwxr-x 4 nobody nobody 4096 Sep 10 23:21 .. -rw-rw-rw- 1 twiki twiki 159 Aug 24 19:49 .htpasswd drwxrwxr-x 2 nobody nobody 4096 Sep 9 02:45 Know drwxrwxr-x 2 nobody nobody 4096 Sep 9 02:45 Main drwxrwxr-x 2 nobody nobody 8192 Sep 14 23:22 TWiki drwxrwxr-x 2 nobody nobody 4096 Sep 9 02:45 Test drwxrwxr-x 2 nobody nobody 4096 Sep 14 12:04 Trash drwxrwxr-x 2 nobody nobody 4096 Sep 9 02:45 _default -rw-rw-rw-- 1 twiki twiki 0 Jul 1 02:20 debug.txt -rw-rw-r-- 1 twiki twiki 3419 Aug 13 00:15 mime.types -rw-rw-rw-- 1 twiki twiki 0 Jul 1 02:19 warning.txtPartial file list for
twiki/data/Main:
drwxrwxrwx 2 nobody nobody 4096 Aug 19 04:15 . drwxrwxrwx 6 nobody nobody 4096 Aug 3 01:09 .. -rw-rw-rw- 1 twiki twiki 3716 Aug 19 02:19 .changes -rw-rw-rw- 1 twiki twiki 9 Aug 19 02:45 .mailnotify -rw-r--r-- 1 nobody nobody 358 Aug 18 17:22 OfficeLocations.txt -r--r--r-- 1 nobody nobody 878 Aug 18 17:22 OfficeLocations.txt,v -rw-r--r-- 1 nobody nobody 680 Aug 18 17:36 TWikiGuest.txt -r--r--r-- 1 nobody nobody 1989 Aug 18 17:36 TWikiGuest.txt,v -rw-r--r-- 1 nobody nobody 459 Aug 18 17:19 TWikiUsers.txt -r--r--r-- 1 nobody nobody 3840 Aug 18 17:19 TWikiUsers.txt,v -rw-r--r-- 1 nobody nobody 95 Aug 19 03:06 WebChanges.txt -r--r--r-- 1 nobody nobody 284 Aug 19 03:06 WebChanges.txt,v -rw-r--r-- 1 nobody nobody 1853 Aug 18 18:08 WebHome.txt -r--r--r-- 1 nobody nobody 6523 Aug 18 18:08 WebHome.txt,vDirectory
twiki/pub/:
drwxrwxrwx 6 nobody nobody 4096 Aug 3 01:21 . drwxrwxr-x 3 twiki twiki 4096 Jun 17 16:35 .. drwxrwxrwx 3 nobody nobody 4096 Jun 17 16:35 Know drwxrwxrwx 3 nobody nobody 4096 Aug 3 01:21 TWiki -rw-rw-r-- 1 twiki twiki 1078 Jan 14 2000 favicon.ico drwxrwxr-x 2 twiki twiki 4096 Jun 17 16:35 icn -rw-rw-r-- 1 twiki twiki 3016 Oct 5 1999 twikilogo.gif -rw-rw-r-- 1 twiki twiki 5320 Oct 5 1999 twikilogo1.gif -rw-rw-r-- 1 twiki twiki 6125 Oct 5 1999 twikilogo2.gif -rw-rw-r-- 1 twiki twiki 7218 Oct 5 1999 twikilogo3.gif -rw-rw-r-- 1 twiki twiki 6710 Oct 5 1999 twikilogo4.gif -rw-rw-r-- 1 twiki twiki 3501 Sep 14 11:57 twikilogo88x31.gif -rw-rw-r-- 1 twiki twiki 2877 Jun 7 1999 wikiHome.gifPartial file list for
twiki/pub/icn/:
drwxrwxr-x 2 twiki twiki 4096 Jun 17 16:35 . drwxrwxrwx 6 nobody nobody 4096 Aug 3 01:21 .. -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.gif-- MikeMannix? - 14 Sep 2001
%SEARCH{}% variable for database like reporting.
TWiki.cfg
notedited.tmpl, notext.tmpl and notwiki.tmpl templates. More in TWikiTemplates. 
%TOPICLIST{"format"}% and %WEBLIST{"format"}% variables to get a formatted topic index and web index, respectively. More in TWikiVariables. 
%URLPARAM{"name"}% variable to query URL parameters. More in TWikiVariables. 
| *bold* | cells as table headers, (ii) render space padded cells |   center aligned   | and |   right aligned |, (iii) span multiple columns using | empty cells |||. More in TextFormattingRules. 
.htaccess files that are attached to a topic get a .txt suffix appended to the file name. See also TWiki:Codev/FileAttachmentFilterSecurityAlert 
---++ My Title; and new %TOC% variable to build a table of content from headings in a topic. More in TWikiVariables. 
[[http://TWki.org][TWiki]]) and internal links (i.e [[WikiSyntax][syntax]]). More in TWikiVariables. 
#MyAnchor at the beginning of a line, and link to it with [[#MyAnchor]]. More in TWikiVariables. 
Net::SMTP module instead of sendmail if installed. 
<verbatim> ... </verbatim> tags to show source code "as is". Unlike the <pre> ... </pre> tags, it also shows <, >, & characters "as is". 
==Bold Fixed== to get Bold Fixed. 
%GMTIME{"..."}% and %SERVERTIME{"..."}% variables. Format is now "$hour:$min" instead of "hour:min". More in TWikiVariables. Attention: Check your existing topics when you upgrade TWiki! 
%STARTINCLUDE% and %STOPINCLUDE% variables to control what gets included of a topic. More in TWikiVariables. 
print skin for a printable view of a topic. More in TWikiSkins and TWiki:Codev/TWikiSkins. 
%BASEWEB%, %INCLUDINGWEB%, %BASETOPIC% and %INCLUDINGTOPIC% to have more control over include handling. More in TWikiVariables and TWiki:Codev/IncludeHandlingImprovements. 
noheader="on" switch in %SEARCH{...}% to suppress table header. More in TWikiVariables. 
$doHidePasswdInRegistration in wikicfg.pm to hide plain text password in registration email. 
%VAR{"NAME" web="Web"}% to get web specific preferences. More in TWikiVariables. 
view "knows" the user once authenticated in edit. More in TWikiUserAuthentication. 
png image support. 
%INCLUDE{"%TWIKIWEB%.TWikiWebsTable"}%. More in TWiki:Codev/BetterTWikiTagTemplateProcessing. 
mailnotify to suppress all normal output. 
[[text formatting FAQ]] to get the link text formatting FAQ that points to topic TextFormattingFAQ. 
%HTTP_EQUIV_ON_VIEW% , %HTTP_EQUIV_ON_EDIT% and %HTTP_EQUIV_ON_PREVIEW% that define the <meta http-equiv="..."> meta tags for the TWiki templates. This can be used for example to set a document expiration time. 
%GMTIME{"..."}% and %SERVERTIME{"..."}% . More in TWikiVariables. 
%INCLUDE{"Web/TopicName.txt"}% to %INCLUDE{"Web.TopicName"}% . Legacy syntax still supported. 
*bold*, italic, __bold italic__ and fixed , where it is not necessary anymore to have a trailing space before .,;:?! characters. 
%INCLUDE% of arbitrary files. 
%GMTIME% variable that shows the current GM time. 
%HTTP_HOST% , %REMOTE_ADDR% , %REMOTE_PORT% and %REMOTE_USER% . 
%ATTACHLINKBOX% controls the default state of the link check box in the attach file page. 
Perl -T option ) 
%EDITBOXWIDTH% and %EDITBOXHEIGHT% to specify the edit box size. 
wikiwebs.inc , wikiwebtable.inc , weblist.inc , webcopyright.inc and webcolors.inc files.  
%SCRIPTSUFFIX% / $scriptSuffix containing an optional file extension of the TWiki Perl script. Templates have been changed to use this variable. This allows you to rename the Perl script files to have a file extension like for example ".cgi". 
%SCRIPTURLPATH% / $scriptUrlPath containing the script URL without the domain name. Templates have been changed to use this variable instead of %SCRIPTURL% . This is for performance reasons. 
%INCLUDE:"filename.ext"% to %INCLUDE{"filename.ext"}% . (Previous syntax still supported. Change was done because of inline search syntax) 
%SEARCH{"str" ...}% to show a search result embedded in a topic text. TWikiVariables has more on the syntax. Inline search combined with the category table feature can be used for example to create a simple bug tracking system. 
initialize in wiki.pm did not handle $thePathInfo correctly. 
$doLogTopic* in wikicfg.pm to selectively log topic view, edit, save, rdiff, attach, search and changes to monthly log file. 
$doRemovePortNumber in wikicfg.pm to optionally remove the port number from the TWiki URL. Example www.some.domain:1234/twiki gets www.some.domain/twiki . 
%INCLUDE:"file.inc"% variable. Search first in the current web, then in parent data directory. Useful to overload default include text in the data directory by web-specific text, like for example webcopyright.inc text. 
TestVersion / TestVersions , TestPolicy / TestPolicies , TestAddress / TestAddresses , TestBox / TestBoxes .
webcopyright.inc file. This is to easily customize the copyright text.  
%WIKIHOMEURL% (link when pressing the icon on the upper left corner) and %WIKITOOLNAME% (the name of the wiki tool Lash La Rue ). 
%PUBURL% (Public directory URL) and %ATTACHURL% (URL of topic file attachment). 
fixed font text . Words get showns in fixed font by enclosing them in "=" equal signs. Example Writing =fixed font= will show up as fixed font . 
Diffs link at the bottom of each topic, e.g.  Topic TWikiHistory . { Edit   Ref-By   Diffs   r1.3   >   r1.2   >   r1.1 } 
 Revision r1.3 1998/11/10 01:34 by PeterThoeny  
data/logYYYYMM.txt, where YYYYMM the year and month in numeric format is. Intended for auditing only, not accessible from the web. 
r1.3) and differences thereof (e.g. >) at the bottom  Topic TWikiHistory . { Edit   Ref-By   r1.3   >   r1.2   >   r1.1 } 
 Revision r1.3 1998/11/10 01:34 by PeterThoeny  
 Topic TWikiHistory . { Edit   Ref-By   r1.3   r1.2   r1.1 } 
 Revision r1.3 1998/10/26 01:34:00 by PeterThoeny  
AaA sequence, e.g. AaA1 is a valid WikiTopic name, but not Aa1. 
%INCLUDE:"filename.ext"% 
%TOPIC% (Topic name), %WEB% (web name), %SCRIPTURL% (script URL), %DATE% (current date), %WIKIWEBMASTER% (Wiki webmaster address), %WIKIVERSION% (Wiki version), %USERNAME% (user name), %WIKIUSERNAME% (Wiki user name). 
PeterThoeny instead of thoeny in case the Wiki username exists. Implementation Automatic lookup of Wiki username in topic TWikiUsers. 
Know.WebSeach . 
| Topic TWikiDocumentation . { Edit | Attach | Ref-By | Printable | Diffs | r1.39 | > | r1.38 | > | r1.37 | More } | 
| Revision r1.39 - 03 Dec 2001 - 12:38 - MikeMannix? | Copyright © 2001 by the contributing authors. 
All material on this collaboration tool is the property of the contributing authors. Ideas, requests, problems regarding Lash La Rue? Send feedback. |