]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/features.mdwn
web commit by tschwinge: News about git / distributed infrastructure.
[git.ikiwiki.info.git] / doc / features.mdwn
index 1f0a018f46ed3bfd94abdff8dc5613f0414628e5..53a8ffb75944d0d1bb393eb8b540147721187f7e 100644 (file)
@@ -4,25 +4,25 @@ An overview of some of ikiwiki's features:
 ## Uses a real RCS
 
 Rather than implement its own system for storing page histories etc,
-ikiwiki uses a real RCS. This isn't because we're lazy, it's because a
-real RCS is a good thing to have, and there are advantages to using one
-that are not possible with a standard wiki.
+ikiwiki uses a real Revision Control System. This isn't (just) because we're
+lazy, it's because a real RCS is a good thing to have, and there are
+advantages to using one that are not possible with a standard wiki.
 
 Instead of editing pages in a stupid web form, you can use vim and commit
-changes via svn. Or work disconnected using svk and push your changes out
-when you come online. Or use git to work in a distributed fashion all the
-time. (It's also possible to [[plugins/write]] a plugin to support other
-systems.)
+changes via [[Subversion]]. Or work disconnected using svk and push your
+changes out when you come online. Or use [[git]], [[tla]], or [[mercurial]]
+to work in a distributed fashion all the time. (It's also possible to
+[[plugins/write]] a plugin to support other systems.)
 
 ikiwiki can be run from a [[post-commit]] hook to update your wiki
-immediately whenever you commit.
+immediately whenever you commit a change using the RCS.
 
 Note that ikiwiki does not require a RCS to function. If you want to
 run a simple wiki without page history, it can do that too.
 
 ## A wiki compiler
 
-ikiwiki is a wiki compiler; it builds static website for your wiki, and
+ikiwiki is a wiki compiler; it builds static website for your wiki, and
 updates it as pages are edited. It is fast and smart about updating a wiki,
 it only builds pages that have changed (and tracks things like creation of
 new pages and links that can indirectly cause a page to need a rebuild)
@@ -39,7 +39,8 @@ provided by ikiwiki on top of regular markdown is the [[WikiLink]] and
 If you prefer to use some other markup language, ikiwiki allows others to
 easily be added by [[plugins]]. For example it also supports traditional
 [[plugins/WikiText]] formatted pages, pages written as pure
-[[plugins/HTML]], or pages written in [[reStructuredText|plugins/rst]].
+[[plugins/HTML]], or pages written in [[reStructuredText|plugins/rst]]
+or [[Textile|plugins/textile]].
 
 ikiwiki also supports files of any other type, including plain text,
 images, etc. These are not converted to wiki pages, they are just copied
@@ -50,21 +51,26 @@ program, or other special file and link to it from your wiki pages.
 
 You can turn any page in the wiki into a [[blog]]. Pages matching a
 specified [[PageSpec]] will be displayed as a weblog within the blog
-page. And an RSS feed can be generated to follow the blog.
+page. And RSS or Atom feeds can be generated to follow the blog.
 
 Ikiwiki's own [[TODO]], [[news]], and [[plugins]] pages are good examples
-of some of the flexible ways that this can be used.
+of some of the flexible ways that this can be used. There is also an 
+[[example_blog|examples/blog]] set up that you can copy into your own wiki.
 
 Ikiwiki can also [[plugins/aggregate]] external blogs, feeding them into
 the wiki. This can be used to create a Planet type site that aggregates
 interesting feeds.
 
-## Valid html and css
+You can also mix blogging with podcasting by dropping audio files where
+they will be picked up like blog posts. This will work for any files that
+you would care to syndicate.
+
+## Valid html and [[css]]
 
 ikiwiki aims to produce 
-[valid XHTML 1.0](http://validator.w3.org/check?url=referer).
-ikiwiki generates html using [[templates]], and uses css, so you can 
-change the look and layout of all pages in any way you would like.
+[valid XHTML 1.0](http://validator.w3.org/check?url=referer). ikiwiki
+generates html using [[templates|wikitemplates]], and uses [[css]], so you
+can change the look and layout of all pages in any way you would like.
 
 ## [[Plugins]]
 
@@ -75,7 +81,7 @@ and more. Most of ikiwiki's features are actually provided by plugins.
 Ikiwiki's backend RCS support is also pluggable, so support for new
 revision control systems can be added to ikiwiki.
 
-### [[todo/utf8]]
+## [[todo/utf8]]
 
 After rather a lot of fiddling, we think that ikiwiki correctly and fully
 supports utf8 everywhere.
@@ -86,11 +92,11 @@ The above are the core design goals and features of ikiwiki, but on that
 foundation a lot of other important features are added. Here is an
 incomplete list of some of them.
 
-## [[Tags]]
+### [[Tags]]
 
 You can tag pages and use these tags in various ways. Tags will show
 up in the ways you'd expect, like at the bottom of pages, in blogs, and
-in rss feeds.
+in RSS and Atom feeds.
 
 ### [[SubPages|SubPage]]
 
@@ -123,8 +129,12 @@ and can be enabled by enabling [[CGI]].
 
 ### User registration
 
-Can optionally be configured to allow only registered users to post
-pages; online user registration form, etc.
+Can optionally be configured to allow only registered users to edit
+pages.
+
+User registration can be done using a web form, or ikiwiki can be
+configured to accept users authenticated with OpenID, or HTTP basic
+authentication, or other methods implemented via plugins.
 
 ### Discussion pages
 
@@ -132,14 +142,17 @@ Thanks to subpages, every page can easily and automatically have a
 /Discussion subpage. By default, these links are included in the
 [[templates]] for each page.
 
-### Page locking
+### Edit controls
 
-Wiki admins can lock pages so that only other admins can edit them.
+Wiki admins can [[lock_pages|page_locking]] so that only other admins can
+edit them. Or a wiki can be set up to allow anyone to edit Discussion
+pages, but only registered users to edit other pages. These are just two
+possibilities, since page edit controls can be changed via plugins.
 
 ### [[PageHistory]]
 
 Well, sorta. Rather than implementing YA history browser, it can link to
-[[ViewCVS]] or the like to browse the history of a wiki page.
+[[ViewVC]] or the like to browse the history of a wiki page.
 
 ### Full text search