X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/24006aa6a84a2a80b8a544a8440bc1cfd7e648fd..8926a3bfbe84b9628c0a441d73059029eb47300b:/doc/features.mdwn diff --git a/doc/features.mdwn b/doc/features.mdwn index 2e7f4aead..95e3bcfc7 100644 --- a/doc/features.mdwn +++ b/doc/features.mdwn @@ -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,7 +38,66 @@ Currently implemented: Arbitrarily deep hierarchies of pages with fairly simple and useful [[SubPage/LinkingRUles]] ----- +* [[blog]]s + + 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. + +* 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]].