]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/features.mdwn
web commit by joey
[git.ikiwiki.info.git] / doc / features.mdwn
index 4c138f3c8f0ba15714ab175ee3cbd8687a6fcd6b..4f728fa4a92931b4b05159853f19ecb14892c822 100644 (file)
@@ -1,12 +1,23 @@
+[[WhyIkiWiki]]?
+
 Currently implemented:
 
 * [[Subversion]]
 
-  Rather than implement its own system for storing page histories etc, ikiwiki      simply uses subversion. (Supporting other revision control systems is also possible, ikiwiki only needs $FOO add, $FOO commit, and $FOO log).
+  Rather than implement its own system for storing page histories etc,
+  ikiwiki simply uses subversion. (Supporting other revision control
+  systems is also possible, ikiwiki only needs $FOO add, $FOO commit, and
+  $FOO log).
+
+  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.
 
-  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.
+  ikiwiki can be run from a [[post-commit]] hook to update your wiki
+  immediately whenever you commit.
 
- ikiwiki can be run from a [[post-commit]] hook to update your wiki immediatly whenever you commit.
+  Note that ikiwiki does not require subversion to function. If you want to
+  run a simple wiki without page history, it can do that too.
 
 * [[MarkDown]]
 
@@ -27,11 +38,68 @@ Currently implemented:
 
   Arbitrarily deep hierarchies of pages with fairly simple and useful [[SubPage/LinkingRUles]]
 
-* [[RecentChanges]], editng pages in a web browser
+* [[blog]]s
 
-  Nearly the definition of a wiki, although perhaps ikiwiki challenges how much of that web gunk a wiki really needs. These features are optional and can be enabled by enabling [[CGI]].
+  You can turn any page in the wiki into a [[blog]]. Pages with names 
+  matching a specified [[GlobList]] will be displayed as a weblog within
+  the blog page. And an RSS feed can be generated to follow the blog.
 
-----
+  Ikiwikit's own [[TODO]] and [[news]] pages are good examples of some of the flexible ways that this can be used.
+
+* Fast compiler
+
+  ikiwiki 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)
+
+* [[Templates]]
+
+  ikiwiki generates html using templates so you can change the look and 
+  layout of all pages in any way you would like.
+
+* [[BackLinks]]
+
+  Automatically included on pages. Rather faster than eg [[MoinMoin]] and always there to help with navigation.
+
+* [[PageHistory]]
+
+  Well, sorta. Rather than implementing YA history browser, it can link to
+  [[ViewCVS]] or the link to browse the history of a wiki page.
+
+* [[RecentChanges]], editing pages in a web browser
 
+  Nearly the definition of a wiki, although perhaps ikiwiki challenges how
+  much of that web gunk a wiki really needs. These features are optional
+  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.
+
+* Discussion pages
+
+  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.
+
+* Smart merging and conflict resolution in your web browser
+
+  Since it uses subversion, ikiwiki takes advantage of its smart merging to
+  avoid any conflicts when two people edit different parts of the same page
+  at the same time. No annoying warnings about other editors, or locking,
+  etc, instead the other person's changes will be automaticaly merged with
+  yours when you commit.
+
+  In the rare cases where automatic merging fails due to the same part of a
+  page being concurrently edited, regular subversion commit markers are
+  shown in the file to resolve the conflict, so if you're already familiar
+  with that there's no new commit marker syntax to learn.
+
+* page locking
+
+  Wiki admin can [[lock]] pages so that only other admins can edit them.
+
+----
 
-[[TODO]]
\ No newline at end of file
+It also has some [[TODO]] items and [[Bugs]].