X-Git-Url: http://git.vanrenterghem.biz/git.ikiwiki.info.git/blobdiff_plain/3fb1893fb120ce04382136cc7d2980adbab75c9d..6c8cf5dd571662f981227489f7c4652a1a1f10cd:/doc/features.mdwn?ds=sidebyside diff --git a/doc/features.mdwn b/doc/features.mdwn index 735f4a173..c20da504d 100644 --- a/doc/features.mdwn +++ b/doc/features.mdwn @@ -1,5 +1,24 @@ +[[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). + + 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. + + 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]] ikiwiki supports pages using [[MarkDown]] as their markup language. Any @@ -8,7 +27,69 @@ Currently implemented: and is quite smart about converting it to html. The only additional markup provided by ikiwiki aside from regular markdown is the [[WikiLink]]. ----- +* support for other file types + + ikiwiki also supports files of any other type, including raw html, text, + images, etc. These are not converted to wiki pages, they are just copied + unchanged by ikiwiki as it builds your wiki. So you can check in an image, + program, or other special file and link to it from your wiki pages. + +* [[SubPage]]s + + Arbitrarily deep hierarchies of pages with fairly simple and useful [[SubPage/LinkingRUles]] + +* 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]].