* Add support for mercurial, contributed by Emanuele Aina.
[ikiwiki.git] / doc / usage.mdwn
index 03f40a8924edb902483d80bf16ba20e4fb6c9fd5..0c7e7d036cb266c30374cb81a0c481b63b13a631 100644 (file)
@@ -11,7 +11,8 @@ ikiwiki --setup configfile
 # DESCRIPTION
 
 `ikiwiki` is a wiki compiler. It builds static html pages for a wiki, from
 # DESCRIPTION
 
 `ikiwiki` is a wiki compiler. It builds static html pages for a wiki, from
-`source` in the [[MarkDown]] language, and writes it out to `destination`.
+`source` in the [[MarkDown]] language (or others), and writes it out to
+`destination`.
 
 Note that most options can be shortened to single letters, and boolean
 flags such as --verbose can be negated with --no-verbose.
 
 Note that most options can be shortened to single letters, and boolean
 flags such as --verbose can be negated with --no-verbose.
@@ -46,7 +47,7 @@ These options control the mode that ikiwiki is operating in.
   directory. The filename to use for the wrapper is optional.
 
   The wrapper is designed to be safely made suid and be run by untrusted
   directory. The filename to use for the wrapper is optional.
 
   The wrapper is designed to be safely made suid and be run by untrusted
-  users, as a [[Subversion]] [[post-commit]] hook, or as a [[CGI]].
+  users, as a [[post-commit]] hook, or as a [[CGI]].
 
   Note that the generated wrapper will ignore all command line parameters.
 
 
   Note that the generated wrapper will ignore all command line parameters.
 
@@ -57,14 +58,31 @@ These options control the mode that ikiwiki is operating in.
 
   The default action when --setup is specified is to automatically generate
   wrappers for a wiki based on data in a config file, and rebuild the wiki.
 
   The default action when --setup is specified is to automatically generate
   wrappers for a wiki based on data in a config file, and rebuild the wiki.
-  If you also pass the --refresh option, ikiwiki will instead just refresh
-  the wiki described in the setup file.
 
   [[ikiwiki.setup]] is an example of such a config file.
 
 
   [[ikiwiki.setup]] is an example of such a config file.
 
+* --wrappers
+
+  If used with --setup --refresh, this makes it also update any configured
+  wrappers.
+
+* --aggregate
+
+  If the [[plugins/aggregate]] plugin is enabled, this makes ikiwiki poll
+  configured feeds and save new posts to the srcdir.
+
+  Note that to rebuild previously aggregated posts, use the --rebuild option
+  along with this one. --rebuild will also force feeds to be polled even if
+  they were polled recently.
+
+* --version
+
+  Print ikiwiki version number.
+
 # CONFIG OPTIONS
 
 # CONFIG OPTIONS
 
-These options configure the wiki.
+These options configure the wiki. Note that [[plugins]] can add additional
+configuration options of their own.
 
 * --wikiname
 
 
 * --wikiname
 
@@ -73,13 +91,15 @@ These options configure the wiki.
 * --templatedir
 
   Specify the directory that the page [[templates]] are stored in.
 * --templatedir
 
   Specify the directory that the page [[templates]] are stored in.
-  Default is `/usr/share/ikiwiki/templates`.
+  Default is `/usr/share/ikiwiki/templates`, or another location as
+  configured at build time.
 
 * --underlaydir
 
   Specify the directory that is used to underlay the source directory.
   Source files will be taken from here unless overridden by a file in the
 
 * --underlaydir
 
   Specify the directory that is used to underlay the source directory.
   Source files will be taken from here unless overridden by a file in the
-  source directory. Default is `/usr/share/ikiwiki/basewiki`.
+  source directory. Default is `/usr/share/ikiwiki/basewiki` or another
+  location as configured at build time.
 
 * --wrappermode mode
 
 
 * --wrappermode mode
 
@@ -88,14 +108,22 @@ These options configure the wiki.
 * --notify
 
   Enable email notification of commits. This should be used when running
 * --notify
 
   Enable email notification of commits. This should be used when running
-  ikiwiki as a [[Subversion]] [[post-commit]] hook.
+  ikiwiki as a [[post-commit]] hook.
 
 * --rcs=svn, --no-rcs
 
   Enable or disable use of a revision control system.
 
 
 * --rcs=svn, --no-rcs
 
   Enable or disable use of a revision control system.
 
-  If you use svn ([[Subversion]]), the `source` directory is assumed to be
-  a working copy, and is automatically updated before building the wiki.
+  If you use svn, the `source` directory is assumed to be
+  a [[Subversion]] working copy.
+
+  If you use git, the `source` directory is assumed to be a clone of the
+  [[git]] repository.
+
+  If you use tla, the `source` directory is assumed to be a tla import.
+
+  If you use mercurial, the `source` directory is assumed to be the
+  [[mercurial]] repository.
 
   In [[CGI]] mode, with a revision control system enabled pages edited via
   the web will be committed. Also, the [[RecentChanges]] link will be placed
 
   In [[CGI]] mode, with a revision control system enabled pages edited via
   the web will be committed. Also, the [[RecentChanges]] link will be placed
@@ -125,7 +153,16 @@ These options configure the wiki.
   If rss is set, ikiwiki will generate rss feeds for pages that inline
   a [[blog]].
 
   If rss is set, ikiwiki will generate rss feeds for pages that inline
   a [[blog]].
 
-* --url http://url/
+* --pingurl url
+
+  Set this to the url to an XML-RPC service to ping when an RSS feed is
+  updated. For example, to ping Technorati, use the url
+  http://rpc.technorati.com/rpc/ping
+
+  This parameter can be specified multiple times to specify more than one
+  url to ping.
+
+* --url url
 
   Specifies the url to the wiki. This is a required parameter in [[CGI]] mode.
 
 
   Specifies the url to the wiki. This is a required parameter in [[CGI]] mode.
 
@@ -134,7 +171,7 @@ These options configure the wiki.
   Specifies the url to the ikiwiki [[CGI]] script wrapper. Required when
   building the wiki for links to the cgi script to be generated.
 
   Specifies the url to the ikiwiki [[CGI]] script wrapper. Required when
   building the wiki for links to the cgi script to be generated.
 
-* --historyurl http://url/trunk/\[[file]]?root=wiki
+* --historyurl url
 
   Specifies the url to link to for page history browsing. In the url,
   "\[[file]]" is replaced with the file to browse. It's common to use
 
   Specifies the url to link to for page history browsing. In the url,
   "\[[file]]" is replaced with the file to browse. It's common to use
@@ -144,7 +181,7 @@ These options configure the wiki.
 
   Specifies the email address that ikiwiki should use for sending email.
 
 
   Specifies the email address that ikiwiki should use for sending email.
 
-* --diffurl http://url/trunk/\[[file]]?root=wiki&r1=\[[r1]]&r2=\[[r2]]
+* --diffurl url
 
   Specifies the url to link to for a diff of changes to a page. In the url,
   "\[[file]]" is replaced with the file to browse, "\[[r1]]" is the old
 
   Specifies the url to link to for a diff of changes to a page. In the url,
   "\[[file]]" is replaced with the file to browse, "\[[r1]]" is the old
@@ -164,8 +201,8 @@ These options configure the wiki.
 
 * --plugin name
 
 
 * --plugin name
 
-  Enables the use of the specified plugin in the wiki. See [[plugins]] for
-  details. Note that plugin names are case sensative.
+  Enables the use of the specified [[plugin|plugins]] in the wiki. 
+  Note that plugin names are case sensative.
 
 * --disable-plugin name
 
 
 * --disable-plugin name
 
@@ -177,16 +214,37 @@ These options configure the wiki.
   Enables or disables "Discussion" links from being added to the header of
   every page. The links are enabled by default.
 
   Enables or disables "Discussion" links from being added to the header of
   every page. The links are enabled by default.
 
-* --verbose
+* --timeformat format
+
+  Specify how to display the time or date. The format string is passed to the
+  strftime(3) function.
+
+* --verbose, --no-verbose
 
   Be vebose about what is being done.
 
 
   Be vebose about what is being done.
 
-* --fixctime
+* --syslog, --no-syslog
+
+  Log to syslog.
+
+* --w3mmode, --no-w3mmode
+
+  Enable [[w3mmode]], which allows w3m to use ikiwiki as a local CGI script,
+  without a web server.
+
+* --sslcookie
+
+  Only send cookies over an SSL connection. This should prevent them being
+  intercepted. If you enable this option then you must run at least the 
+  CGI portion of ikiwiki over SSL.
+
+* --getctime
 
 
-  Pull last changed time for all pages out of the revision control system.
-  This rarely used option provides a way to get the real creation times of
-  items in weblogs, for example when building a wiki from a new subversion
-  checkout. It is unoptimised and quite slow.
+  Pull last changed time for each new page out of the revision control
+  system. This rarely used option provides a way to get the real creation
+  times of items in weblogs, for example when building a wiki from a new
+  subversion checkout. It is unoptimised and quite slow. It is best used
+  with --rebuild, to force ikiwiki to get the ctime for all pages.
 
 # AUTHOR
 
 
 # AUTHOR