At work, we've had a development team's wiki for a little while now.
Now, the design team wants one of their own, and so does the boss (we've been storing some administrative stuff in an "admins only" section of the development wiki up to this point).
Here are the requirements:
- Namespaces or some sort of "sub-wiki" support - I don't want to create three separate wikis. I'd like one that is neatly partitioned into three areas, so that everyone can access with just one login
- Access control list (ACL) - going hand-in-hand with namespaces, I need to be able to set permissions so that everyone has the access/restrictions they should have
- WYSIWYG editor - we have no problem with wiki syntax on the engineering team. But the designers? Fuhgeddaboutit. Something that defaults to WYSIWYG and can flip over to real wiki syntax with a click would be ideal
- Namespace-aware linking - This is where I start to get into trouble. When creating a link to a wiki page on an existing page that's inside of a namespace, the wiki needs to be smart enough to default to making that link point to the same namespace, instead of assuming it's top-level. I can teach the designers to make links to new wiki pages, but I don't want to deal with making sure they prefix the links with their namespace every time, and having to clean up after them when they don't.
- Ruby, PHP, Python, or Perl (or possibly externally-hosted service). Not planning on running a Java application server just for a wiki. And don't even bring up any .NET crap. Suggest something .NET and you'll get the same treatment as people who don't backup.
What I've tried:
- Dokuwiki - Our existing wiki's engine. Very close to what we want, but the namespace support isn't seamless enough, especially with the WYSIWYG editor plugin we've tried (Dokuwiki by default will include non-namespaced links in the current namespace, but the stupid WYSIWYG editor inserts a leading : to force new links to the top level if they're not explicitly namespaced).
- Mediawiki - No ACL by default, explicit namespacing only.
Really, I don't think anyone's going to make namespaces invisible enough to do the kind of "three separate wikis in one" that I want, while still making things easy enough for the less-technical crowd. But I really don't want everything to be in separate wikis, especially since each team will have certain things they will need to read from the other group's wiki.