A one-page quick reference for Zwiki. See also HelpPage, configuring and the other docs at FrontPage. For questions and answers, see FrontPage#discussion.

Access keys

Zwiki provides a number of very useful keyboard shortcuts. See the access keys help.

Page types

Here are the page types currently supported. See TextFormattingRules for more about these. Also see Properties below for how to limit the page types that display in the edit form.

reStructured Text

(rst) From 2006, the default page type. Applies the docutils project's RestructuredText formatting rules. These are similar to STX, but more precise, better documented, and better suited to documentation. Clashes with Zwiki linking now and then. If enabled, DTML is also allowed and this appears as 'reStructured Text (+ DTML)'; DTML (or HTML) must be quoted in a raw literal block to take effect, eg:

.. raw:: html

   <b><dtml-var ZopeTime></b>

Structured Text

(stx) Until 2006, the default and best supported Zwiki page type. Applies Zope's StructuredText formatting rules, which also permit HTML. Works smoothly with most Zwiki linking & other features. If enabled, DTML is also allowed and this appears as 'Structured Text (+ DTML)'. May be more convenient when you want to mix in a lot of HTML and DTML.

HTML

(html) Allows standard HTML, does not apply any text formatting rules. Useful for pasting in HTML, editing with a real HTML external editor, or editing with Epoz wysiwyg editor. When pasting HTML, any <head> section is ignored for convenience. If Epoz is installed, this appears as 'HTML (WYSIWYG)' and uses the WYSIWYG editor built in to modern browsers. Otherwise DTML may be enabled, in which case this appears as 'HTML (+ DTML)'. (Epoz doesn't prevent DTML from working, but does mess it up when you save the page.) Zwiki comments also tend to get messed up on this kind of page, use another page type if you want those.

Plain text

(plaintext) Does no text formatting or linking at all; preserves line breaks.

WikiWikiWeb markup

(wwml) Applies the original WikiWikiWebMarkup rules, or something very like them. For wikizens who have those rules hard-wired in their brain.

MoinMoin markup

(moin) Applies MoinMoin's formatting rules, or close to them. Macros/templates are not supported.

Also, unless disabled, all of the above except Plain text do Zwiki-style wiki linking:

Linking

Here are (almost) all the ways you can make a hyperlink in a zwiki page.

Wikiname links

The classic wiki link. Just write a WikiName, naming a page which may or may not exist yet. Zwiki's allow one-letter words and digits on the end.

[WikiName]
AName
[WikiName]
Bracket links

A simple syntax for linking to free-form page names, now used on many wikis. Zwiki's bracket links are fuzzy - they ignore capitalization, whitespace and punctuation.

[free-form name]
Double-bracket links

Same as the above, but less likely to occur in ordinary text, and familiar to wikipedia users (but don't support all wikipedia's syntax). Not often used.

[[free-form name]]
Relabelled bracket links

As above, but a different link text can be specified after a | separator. Makes the wiki structure less clear but sometimes useful.

[[free-form name|show this instead]
[[WikiName|show this instead]
Issue links

A convenient shortcut for linking to IssueTracker issue pages by number: write # followed by the number.

#1 #0001
Bare URL links

Bare urls

http://some/where
ftp://some/where
mailto:someone@there
etc.
HTML links

Standard HTML hyperlinks, on page types which allow HTML tags (Structured Text, HTML, reStructured Text with ..raw, etc.).

<a href="http://some/where">link text</a>
reStructured Text links

reStructured Text has a plethora of linking methods. See the RestructuredText docs. Here's the simplest

`some text <http://url>`_
Structured Text links

Structured Text hyperlink syntax. Only allows ASCII characters.

"link text":http://some/where
Structured Text footnotes

Structured Text footnote links.

[1] (any number)

.. [1] footnote text.. something like that
Remote wiki links

A shortcut for linking to frequently-used other wikis or sites; see RemoteWikiLinks. The local page defines a partial url for a remote wiki or other site.

LocalWikiPage:RemoteWikiPage
LocalWikiPage:someotherthing

You can disable any of these by prepending a ! character, or start a line with ! to escape all links.

Permissions

Here are the current Zwiki and Zwiki-related permissions. You grant or deny these to various user roles in the ZMI Security tab for your wiki folder (the folder containing your wiki pages). You can also set permissions on a parent folder to be acquired by more than one wiki, or on an individual page.

Access contents information and View
allow accessing and viewing wiki pages and other objects.
Zwiki: Add wikis
allows pre-populated wikis to be created in the ZMI. (In Zwiki versions before 0.23 this was 'Add ZWiki Webs'.)
Zwiki: Add pages
allow zwiki page creation. (In Zwiki versions before 0.23 this was 'Add ZWiki Pages'.) In CMF/Plone, you also need Add portal content permission.
Zwiki: Add comments
enables the comment form
(In Zwiki versions before 0.23 this was 'Zwiki: Add comments to pages'.)
Zwiki: Change page types
allows page type to be changed (see also allowed_page_types property)
Zwiki: Delete pages and Delete objects and Copy or move
allow page deletion. Permission to paste things into the /recycle_bin subfolder is also required, but this usually does not require additional configuration. (In CMF/Plone, you may also need Modify portal content permission ?)
Zwiki: Edit pages
allows page editing. (In CMF/Plone, you may also need Modify portal content permission ?)
Zwiki: Rate pages
allows page rating
Zwiki: Rename pages
allows page renaming
Zwiki: Reparent pages
allows page reparenting
Add Documents, Images, and Files
allows image/file upload
FTP access
allows ftp access to wiki pages
Use external editor and WebDAV Lock items and WebDAV Unlock items
allow editing via ExternalEditor, if installed. You'll need 'Zwiki: Edit pages' permission as well. (And 'Use webdav locks' ?)
WebDAV access and WebDAV Lock items and WebDAV Unlock items
allow editing via WebDAV

Properties

The following optional properties may be added in the ZMI to configure Zwiki's behaviour. You usually add these to the wiki folder's Properties tab, to configure the whole wiki. Or, you can set them on a parent folder (eg the root folder) to influence all wikis below that point. Many will also work as page properties, to control a single page (use this sparingly to avoid excess work). Also: Plone users can use ZWikiFolder to get a nicer UI for these properties, if you don't mind using a special folder type for your wikis. Properties are of the string type unless otherwise noted.

boring_pages (lines)
to override the default boring pages, (which send less mail and are omitted from rss feeds etc.) set this property with one page name per line. All their offspring will be included. Default: SandBox, TestPage.
site_logo
the standard skin will use this HTML snippet for the site logo
allow_dtml (boolean)
if this is true, and no no_dtml property exists, any DTML code in wiki pages below this point will be executed when they are viewed. This is off by default. Check SecurityDiscussion if you enable this for untrusted users.
no_dtml
use this to completely disable DTML below this point regardless of any allow_dtml properties. If this property exists (any type, any value), DTML in wiki pages below this point is always ignored.
allowed_page_types (lines)

only these page types will be offered in the edit form. Have a look at HowToLimitAvailablePageTypes for newbie friendly detail. See page types above, but note you must enter page type ids here, not the friendly names. These are:

stx
rst
moin
wwml
html
plaintext

Remark: The first of the lines, in the example above "stx" is also the default page type which is used when creating a new page.

rst_raw_enabled (boolean) (default: false) (Zwiki 2)
enables raw html in restructured text pages.
use_wikiname_links (boolean) (default: true)
enables bare WikiName links
ignore_wikinames (lines)
a list of bare wikinames to ignore
use_bracket_links (boolean) (default: true)
enables single-bracket free-form links
use_double_bracket_links (boolean) (default: true)
enables mediawiki-style [[double-bracket links]]?
use_double_parenthesis_links (boolean) (default: true)
enables linking with double parenthesis around a freeform link ((double-parenthesis links))
space_wikinames (boolean, default: false)
displays WikiName with spaces added
show_subtopics (boolean, default: false)
if true, show subtopics (child pages) below the main content
banned_links (lines)
a list of strings or regular expressions, one per line, which if found in an edit or comment will raise an error. An anti-spam feature. NB: do use a lines property, not a text one.
max_anonymous_links (default: unlimited)
prevents any edits by anonymous users (with no username cookie) which contain more than this number of hyperlinks to other sites (http://...). An anti-spam feature.
edits_need_username (boolean, default: false)
if true, anonymous users are not permitted to edit until they configure a username cookie in options.
default_page
the name of this wiki's front page (defaults to 'FrontPage').
default_mailin_page
the name of the default destination page for mailins with no page name in the subject
auto_subscribe (boolean) (default: false)
if true, auto-subscribe page commenters and creators
mail_admin
address of an administrator to send mailout error reports to
mail_from
sets the mailout From address, page subscription gets enabled once the mail_from property has been set AND a Mail Host object exists in ZMI
mail_page_name (boolean, default: true)
enables/disables the page name in mailout subjects
mail_issue_name (boolean, default: false)
issue page names in mailout subjects are abbreviated to just the number, unless this is true
mail_replyto
sets the mailout Reply-To address
mail_signature
overrides the standard mailout footer
mail_to
sets the mailout To address
mailout_policy (default: comments)
can be comments or edits
mailin_policy (default: subscribers only)
open or subscribers
mail_accept_nonmembers (lines)
a list of non-subscribed addresses that may post (may be From or Sender)
subscriber_list (lines)
list of whole-wiki subscribers; this is normally updated by the subscribe form
issue_severities (lines)
define values for IssueTracker/FilterIssues
issue_categories (lines)
...
issue_statuses (lines)
...
issue_colours (lines)

customizes the colour coding for issues - see "ISSUE_COLOURS" in plugins/tracker/tracker.py for default value and instructions.

Note: after changing issue_ properties, you'll probably need to visit SOMEPAGE/setupTracker again to make sure the correct data appears in tracker listings.

In addition, every zwiki page has or can have these standard properties. Most of these can not or should not be changed directly in the ZMI, as it will (mildly) confuse Zwiki. The exception is subscriber_list, which can be convenient to edit directly.

title
stores the page name. Can be changed in the ZMI, but resist the urge! This will tend to confuse Zwiki (FAQ). Use the editform instead.
page_type
selects the render method/formatting rules. Should be read only, use the editform to change this.
last_editor
username of last editor
last_editor_ip
IP address of last editor
last_edit_time
time of last edit
creator
username of page creator
creator_ip
IP address of creator
creation_time
time of creation
parents
lines list of page names who are parents. If changed in the ZMI, you need to run SOMEPAGE/updatecontents to update the outline cache. Better to use the backlinks or page management form.
subscriber_list
lines list of page subscribers (email addresses or CMF member ids). If there is an :edits suffix, that subscriber will receive all edits. Useful to edit this when someone has forgotten their email address.
zwiki_content_type
overrides the HTTP Content-type header when viewing this page - an experimental addition for LatexWiki/MathML?.

Skin templates

Here are the page templates/dtml methods you can install in the ZODB in order to customize Zwiki's user interface. See customizing appearance or CustomizingTheSkin or HowZwikiSkinsWork or HowTos for more on how to do this.

Here is the list of skin templates (copied from the latest code). All but a few of these are used in both the standard and CMF/Plone skins.

accesskeys.pt defines the quick Access keys
addwikiform.dtml the ZMI 'Add ZWiki' form
addwikipageform.dtml the ZMI 'Add ZWiki Page' form
backlinks.pt the backlinks form, accessed by clicking the page title or alt-b
badtemplate.pt displayed when a custom template is broken
blank_star.png used in ratingform
commentform.pt the comment form
content.pt the main content area, used by wikipage
contentspage.pt the wiki contents view, alt-c
denied.pt displayed in some not permitted situations
diffform.pt the edit history browser, accessed by clicking a timestamp or alt-d
editform.pt the page edit form, alt-e. Also the page creation form. One of the more complicated templates.
head.pt the html head used in all views
hierarchylinks.pt hierarchy next/prev/up navigation links, disabled by default
links.pt wiki navigation links, usually at top right
maintemplate.pt the wrapper for all views when using the standard Zwiki skin. A good place to customize the global layout, eg to integrate your wiki with an existing site. When using the CMF/Plone skin, however, their main_template is used instead.
pageheader.pt the wiki logo, page title, parents, search box etc., used by wikipage. Enable the COMPACT_PARENTS flag to list parents on one line.
pagemanagementform.pt the quick page management form, usually at the bottom of the main page view
RecentChanges.dtml_ DTML implementation of the recent changes view; also the prototype for installing as a wiki page
recentchanges.pt wraps the above in the standard skin, alt-r
SearchPage.dtml_ DTML implementation of the search form; also the prototype for installing as a wiki page
searchwiki.pt wraps the above in the standard skin
siteheader.pt an optional site header displayed at the top of all views
star.png used by ratingform
stylesheet.css the CSS used by all views in the standard Zwiki skin. Includes general Zwiki and also reStructured Text-specific styles. Probably the first thing you'll want to customize. This may be a File, DTMLMethod, wiki page or whatever; the first is best for caching, the last is best for easy editing. In the CMF/Plone skin, however, their styles are used instead.
subscribeform.pt the mail subscription form, alt-m
subtopics_board.dtml an alternate message-board-style subtopics layout
subtopics_outline.dtml the default outline-style subtopics layout
UserOptions.dtml_ DTML implementation of the options form; also the prototype for installing as a wiki page.
useroptions.pt wraps the above in the standard skin, alt-o
wikipage_icon.gif used as generic Zwiki page icon, favicon and wiki logo
wikipage.pt the main wiki page view, alt-v. A good place to rearrange the layout of wiki page elements.

Additional templates defined by Zwiki plugins:

ratingform.pt displays the rating form, usually at top right; used by wikipage
FilterIssues.dtml_ DTML implementation of the filter issues form; also the prototype for installing as a wiki page
filterissues.pt wraps the above in the standard skin
IssueBrowser.dtml_ DTML implementation of the issue browser form; also the prototype for installing as a wiki page
issuebrowser.pt wraps the above in the standard skin
issuepropertiesform.dtml the issue properties form displayed at the top of all issue pages
IssueTracker.dtml_ DTML implementation of the issue tracker form; also the prototype for installing as a wiki page
issuetracker.pt wraps the above in the standard skin, alt-t