**History of the TWiki Implementation (version TWiki-4.1.2, Sat, 03 Mar 2007, build 13046)** - [[PeterThoeny]] - 23 Jul 1998: Installed initial version, based on the JOS Wiki. See [[WikiWikiClones]] for details. - [[PeterThoeny]] - 27 Jul 1998: Added automatic links to topics in other TWiki webs by specifying <web name>.<topic name>, e.g. `Know.WebSeach` . - [[PeterThoeny]] - 28 Jul 1998: Topic [[WebSearch]] allows full text search and and topic search with/without regular expressions. - [[PeterThoeny]] - 28 Jul 1998: Topic index. (Technically speaking a simple '.\*' search on topic names.) - [[PeterThoeny]] - 28 Jul 1998: Topic [[WebChanges]] shows Wiki username instead of Intranet username, e.g. `PeterThoeny` instead of `thoeny` in case the Wiki username exists. Implementation: Automatic lookup of Wiki username in topic [[TWikiUsers]]. - [[PeterThoeny]] - 28 Jul 1998: Added TWiki variables, enclosed in % signs: `%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]] - 31 Jul 1998: Support for quoted text with a '>' at the beginning of the line. - [[PeterThoeny]] - 04 Aug 1998: Warn user if new topic name is not a valid Wiki name. (template file templates/Web/notwiki.tmpl) - [[PeterThoeny]] - 04 Aug 1998: Separate templates for text of non existing topic and default text of new topic. (template file templates/Web/notedited.tmpl) - [[PeterThoeny]] - 05 Aug 1998: Signature and date is inserted automatically when creating a new topic. - [[PeterThoeny]] - 06 Aug 1998: Added server side include of files. Syntax is `%INCLUDE:"filename.ext"%` - [[PeterThoeny]] - 07 Aug 1998: Automatic email notification when something has changed in a TWiki web. Each web has a topic [[WebNotify]] where one can subscribe and unsubscribe. - [[PeterThoeny]] - 13 Aug 1998: [[WikiNotation]] allows also numbers after the `AaA` sequence, e.g. `AaA1` is a valid [[WikiTopic]] name, but not `Aa1`. - [[PeterThoeny]] - 24 Sep 1998: Corrected templates for automatic email notification so that MS Outlook can display attachment as an HTML file. - [[PeterThoeny]] - 13 Oct 1998: Alphabetical topic index in [[WebSearch]]. - [[PeterThoeny]] - 14 Oct 1998: Refered-By: Find out which topics have a link to the current topic. Each topic has a |Ref-By| link for that. Note: Only references from the current web are shown, not references from other webs. - [[PeterThoeny]] - 26 Oct 1998: Added revision control using RCS. Each topic has now a list of revisions at the bottom and a revision info, e.g.
Topic TWikiHistory . \{ Edit | Ref-By | r1.3 | r1.2 | r1.1 \}
Revision r1.3: 1998/10/26 01:34:00 by [[PeterThoeny]]
- [[PeterThoeny]] - 26 Oct 1998: Added preview of topic changes before saving the topic. This was necessary to prevent unneeded revisions. - [[PeterThoeny]] - 10 Nov 1998: View differences between topic revisions. Each topic has a list of revisions (e.g. `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]]
- [[PeterThoeny]] - 10 Nov 1998: The email notification and the Changes topic have now a topic date that is linked. Clicking on the link will show the difference between the two most recent topic revisions. - [[PeterThoeny]] - 18 Nov 1998: Internal log of topic save actions to the file `data/logYYYYMM.txt`, where `YYYYMM` the year and month in numeric format is. Intended for auditing only, not accessible from the web. - [[PeterThoeny]] - 07 Dec 1998: Possible to add a category table to a TWiki topic. This permits storing and searching for more structured information. Editing a topic shows a HTML form with the usual text area and a table with selectors, checkboxes, radio buttons and text fields. [[TWikiDocumentation]] has more on setup. The TWiki.Know web uses this category table to set classification, platform and OS version. - [[PeterThoeny]] - 08 Dec 1998: Signature is shown below the text area when editing a topic. Use this to easily copy & paste your signature into the text. - [[PeterThoeny]] - 04 Jan 1999: Fixed bug when viewing differences between topic revisions that include HTML table tags like <table>, <tr>, <td>. - [[PeterThoeny]] - 03 Feb 1999: Possible to view complete revision history of a topic on one page. Access at the linked date in the Changes page, or the `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
- [[PeterThoeny]] - 09 Feb 1999: No new topic revision is created if the _same_ person saves a topic again within _one_ hour. - [[PeterThoeny]] - 09 Feb 1999: New text formatting rule for creating `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` . - [[PeterThoeny]] - 26 Mar 1999: New variables `%PUBURL%` (Public directory URL) and `%ATTACHURL%` (URL of topic file attachment). - [[PeterThoeny]] - 26 Mar 1999: File attachments: Upload and download any file as a topic attachment by using the browser. [[FileAttachment]] has more. - [[PeterThoeny]] - 15 Apr 1999: Topic locking: Warn user if a topic has been edited by an _other_ person within _one_ hour. This is to prevent contention, e.g. simultaneous topic updates. - [[PeterThoeny]] - 20 May 1999: New variables `%WIKIHOMEURL%` (link when pressing the icon on the upper left corner) and `%WIKITOOLNAME%` (the name of the wiki tool: `%WIKITOOLNAME%` ). - [[PeterThoeny]] - 20 May 1999: Added meta tag so that robots index only /view/ of topics, not /edit/, /attach/ e.t.c. Tag: <META NAME="ROBOTS" CONTENT="NOINDEX"> - [[DavidWarman]] - 21 May 1999: Externalize copyright text at the bottom of every page into a web-specific `webcopyright.inc` file. This is to easily customize the copyright text. - [[PeterThoeny]] - 23 Jun 1999: Separate wiki.pm into configuration (wikicfg.pm) and TWiki core (wiki.pm) . This is to ease the upgrade of TWiki installations, it also allows customized extensions to TWiki without affecting the TWiki core. - [[PeterThoeny]] - 23 Jun 1999: New [[TextFormattingRules]] to write **_bold italic_** text by enclosing words with double underline characters. - [[ChristopheVermeulen]] - 07 Jul 1999: Link a plural topic to a singular topic in case the plural topic does not exist. Example: `TestVersion` / `TestVersions` , `TestPolicy` / `TestPolicies` , `TestAddress` / `TestAddresses` , `TestBox` / `TestBoxes` . - [[PeterThoeny]] - 15 Jul 1999: Search path for include files in `%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. - [[PeterThoeny]] - 21 Jul 1999: Flag `$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` . - [[PeterThoeny]] - 22 Jul 1999: Flags `$doLogTopic*` in wikicfg.pm to selectively log topic view, edit, save, rdiff, attach, search and changes to monthly log file. - [[PeterThoeny]] - 03 Aug 1999: Online registration of new user using web form in [[TWikiRegistration]]. Authentication of users. - [[PeterThoeny]] - 08 Aug 1999: New text formatting rule for creating tables. Text gets rendered as a table if enclosed in "|" vertical bars. Example line as it is written and how it shows up:
`| This | is | a table | with | cells |`
This is a table with cells
- [[PeterThoeny]] - 31 Aug 1999: Fixed [[Y2K]] bug. (Date in year 2000 had wrong format.) - [[PeterThoeny]] - 03 Oct 1999: Limit the number of revisions shown at the bottom of the topic. Example:
Topic %TOPIC% . \{ ..... | [Diffs](../../rdiff/%WEB%/%TOPIC%) | r1.10 | [>](../../rdiff/%WEB%/%TOPIC%?rev1=1.10&rev2=1.9) | [r1.9](../../view/%WEB%/%TOPIC%?rev=1.9) | [>](../../rdiff/%WEB%/%TOPIC%?rev1=1.9&rev2=1.8) | [r1.8](../../view/%WEB%/%TOPIC%?rev=1.8) | [>](../../rdiff/%WEB%/%TOPIC%?rev1=1.8&rev2=1.7) | [r1.7](../../view/%WEB%/%TOPIC%?rev=1.7) | [>...](../../oops/%WEB%/%TOPIC%?template=oopsrev¶m1=1.10) \}
Additional revisions can be selected by pressing the `>...` link. - [[PeterThoeny]] - 10 Jan 2000: No more escaping for '%' percent characters. (Number of consecutive '%' entered and displayed is identical.) - [[PeterThoeny]] - 24 Jan 2000: Fixed bug where an email address starting with a [[WikiName]] was rendered as an internal Wiki link instead of an email address, i.e. . - [[PeterThoeny]] - 29 Jan 2000: Fixed bug where TWiki would not initialize correctly under certain circumstances, i.e. when running it under mod\_perl. Sub `initialize` in `wiki.pm` did not handle `$thePathInfo` correctly. - [[PeterThoeny]] - 04 Feb 2000: Access statistics. Each web has a [[WebStatistics]] topic that shows monthy statistics with number of topic views and changes, most popular topics, and top contributors. (It needs to be enabled, [[TWikiDocumentation]] has more.) - [[PeterThoeny]] - 07 Feb 2000: Inline search. New variable `%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. - [[PeterThoeny]] - 07 Feb 2000: Changed the syntax for server side include variable from `%INCLUDE:"filename.ext"%` to `%INCLUDE{"filename.ext"}%` . (Previous syntax still supported. Change was done because of inline search syntax) - [[PeterThoeny]] - 11 Feb 2000: New variable `%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. - [[PeterThoeny]] - 11 Feb 2000: New variable `%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". - [[PeterThoeny]] - 25 Feb 2000: Edit preferences topics to set TWiki variables. There are three level of preferences: Site-level ([[TWikiPreferences]]), web-level ([[WebPreferences]] in each web) and user-level preferences (for each of the [[TWikiUsers]]). With this, discontinue use of server side include of `wikiwebs.inc` , `wikiwebtable.inc` , `weblist.inc` , `webcopyright.inc` and `webcolors.inc` files. - [[PeterThoeny]] - 25 Feb 2000: New preference variables `%EDITBOXWIDTH%` and `%EDITBOXHEIGHT%` to specify the edit box size. - [[PeterThoeny]] - 11 Mar 2000: Better security with taint checking ( `Perl -T` option ) - [[PeterThoeny]] - 20 Mar 2000: Uploading a file (topic file attachment) will optionally create a link to the uploaded file at the end of the topic. The preference variable `%ATTACHLINKBOX%` controls the default state of the **_link_** check box in the attach file page. - [[JohnAltstadt]], [[PeterThoeny]] - 21 Apr 2000: [[TWikiRegistration]] is done separately for Intranet use (depends on remote\_user) or Internet use (depends on .htpasswd file). - [[PeterThoeny]] - 21 Apr 2000: New [[TWikiVariables]] `%HTTP_HOST%` , `%REMOTE_ADDR%` , `%REMOTE_PORT%` and `%REMOTE_USER%` . - [[KevinKinnell]], [[PeterThoeny]] - 02 May 2000: Advanced search features like search multiple webs; sort by topic name / modified time / author; limit the number of results returned. More in [[TWikiVariables]]. - [[PeterFokkinga]] - 15 May 2000: Each topic can have its own template file. [[TWikiTemplates]] has more. - [[PeterThoeny]] - 28 May 2000: Lock warning shows remaining lock time in minutes. - [[PeterThoeny]] - 29 May 2000: New `%GMTIME%` variable that shows the current GM time. - [[CrisBailiff]], [[PeterThoeny]] - 21 Jun 2000: Fixed security issue to prevent a server side `%INCLUDE%` of arbitrary files. - [[PeterThoeny]] - 21 Jun 2000: Fixed problem that a page redirect on some server environments is not working (host name is needed in URL). - [[PeterThoeny]] - 07 Jul 2000: Fixed problem of losing carriage returns when editing topics with KDE KFM browser or [[W3M]] browser. - [[PeterThoeny]] - 07 Jul 2000: Added an "Release edit lock" checkbox in preview to let other people edit the topic immediately without the one hour lock. - [[PeterThoeny]] - 22 Jul 2000: Split the TWiki.Main web into TWiki.Main (users, company data) and TWiki.TWiki (TWiki related documentation, registration) - [[PeterThoeny]] - 22 Jul 2000: More forgiving syntax for \*bold\*, _italic_, \_\_bold italic\_\_ and **fixed** , where it is not necessary anymore to have a trailing space before `.,;:?!` characters. - [[PeterThoeny]] - 23 Jul 2000: [[BookView]] search allows you show a set of topics for easy printing. - [[PeterThoeny]] - 23 Jul 2000: Changed include syntax from `%INCLUDE{"Web/TopicName.txt"}%` to `%INCLUDE{"Web.TopicName"}%` . Legacy syntax still supported. - [[PeterThoeny]] - 29 Jul 2000: New variables `%GMTIME{"..."}%` and `%SERVERTIME{"..."}%` . More in [[TWikiVariables]]. - [[PeterThoeny]] - 16 Aug 2000: New [[TWikiPreferences]] variables `%HTTP_EQUIV_ON_VIEW%` , `%HTTP_EQUIV_ON_EDIT%` and `%HTTP_EQUIV_ON_PREVIEW%` that define the `` meta tags for the TWiki templates. This can be used for example to set a document expiration time. - [[PeterThoeny]] - 19 Aug 2000: Ref-By link searches all webs (not just the current web.) - [[AlWilliams]], [[ManpreetSingh]], [[PeterThoeny]] - 18 Sep 2000: Added forced internal links. Write `[[text formatting FAQ]]` to get the link [[text formatting FAQ|Main/TextFormattingFAQ]] that points to topic [[TextFormattingFAQ]]. - [[PeterThoeny]] - 19 Sep 2000: Fixed [TWiki:Codev.AttachedNotificationLinksBug](http://TWiki.org/cgi-bin/view/Codev/AttachedNotificationLinksBug). - [[ManpreetSingh]] - 20 Sep 2000: New -q switch in `mailnotify` to suppress all normal output. - [[HaroldGottschalk]], [[AndreaSterbini]], [[PeterThoeny]] - 26 Sep 2000: Allow nesting of variables, i.e. `%INCLUDE{"%TWIKIWEB%.TWikiWebsTable"}%`. More in [TWiki:Codev.BetterTWikiTagTemplateProcessing](http://TWiki.org/cgi-bin/view/Codev/BetterTWikiTagTemplateProcessing) - [[AlWilliams]], [[PeterThoeny]] - 26 Sep 2000: Fixed [TWiki:Codev.UppercaseAttachments](http://TWiki.org/cgi-bin/view/Codev/UppercaseAttachments) bug and added `png` image support. - [[PeterThoeny]] - 05 Oct 2000: Remember user by IP address so that `view` "knows" the user once authenticated in `edit`. More in [[TWikiAuthentication]]. - [[PeterThoeny]] - 23 Oct 2000: Authorization based on groups. Define fine graned control who is allowed to change or create topics. More in [[TWikiAccessControl]] and [TWiki:Codev.AuthenticationBasedOnGroups](http://TWiki.org/cgi-bin/view/Codev/AuthenticationBasedOnGroups). - [[PeterThoeny]] - 01 Nov 2000: Added a "Cancel" link in edit that releases the edit lock. - [[PeterThoeny]] - 01 Nov 2000: New variable `%VAR{"NAME" web="Web"}%` to get web specific preferences. More in [[TWikiVariables]]. - [[PeterThoeny]] - 03 Nov 2000: Flag `$doHidePasswdInRegistration` in `wikicfg.pm` to hide plain text password in registration email. - [[PeterThoeny]] - 03 Dec 2000: New `noheader="on"` switch in `%SEARCH{...}%` to suppress table header. More in [[TWikiVariables]]. - [[PeterThoeny]] - 05 Dec 2000: Improved include handling. Infinite recursion of includes are prevented; new variables `%BASEWEB%`, `%INCLUDINGWEB%`, `%BASETOPIC%` and `%INCLUDINGTOPIC%` to have more control over include handling. More in [[TWikiVariables]] and [TWiki:Codev.IncludeHandlingImprovements](http://TWiki.org/cgi-bin/view/Codev/IncludeHandlingImprovements). - [[PeterThoeny]] - 05 Jan 2001: View authorization based on groups. Define who is allowed to see a TWiki web. More in [[TWikiAccessControl]] and [TWiki:Codev.AuthenticationBasedOnGroups](http://TWiki.org/cgi-bin/view/Codev/AuthenticationBasedOnGroups). - [[StanleyKnutson]] - 07 Jan 2001: Better error handling when saving a topic. - [[PeterThoeny]] - 16 Jan 2001: TWiki skins: Define a different page layout with a customized header and footer layout, i.e. a `print` skin for a printable view of a topic. More in [[TWikiSkins]] and [TWiki:Codev.TWikiSkins](http://TWiki.org/cgi-bin/view/Codev/TWikiSkins). - [[PeterThoeny]] - 16 Jan 2001: New variable `%STARTINCLUDE%` and `%STOPINCLUDE%` variables to control what gets included of a topic. More in [[TWikiVariables]]. - [[PeterThoeny]] - 18 Jan 2001: [[WebChanges]], [[WebSearch]] and e-mail notification indicate also the revision number of a topic (i.e. 18 Jan 2001 - 16:43 - r1.5), or NEW for a new topic (i.e. i.e. 18 Jan 2001 - 16:43 - **NEW**). - [[PeterThoeny]] - 20 Jan 2001: Format changed of `%GMTIME{"..."}%` and `%SERVERTIME{"..."}%` variables. Format is now `"$hour:$min"` instead of `"hour:min"`. More in [[TWikiVariables]]. **Related Topics** - [[TWikiDocumentation]] has implementation details. - [[TWikiPlannedFeatures]] has a list of planned features. - [[TWikiEnhancementRequests]] is the place where you can add your enhancement requests. -- [[PeterThoeny]] - 08 Nov 2000