Hello! Here's an update on what I'm doing, and a request for input.
At the moment, I'm concentrating on making it easier for people to
customise their Guides without having to fork. I've added a config
option to let you suppress the recent changes on the home page, and
I've split out the "guts" of the navbar into smaller sub-templates, so
navbar.tt is now incredibly simple:
<div id="navbar">
[% INCLUDE navbar_home_link.tt %]
[% INCLUDE navbar_tools.tt %]
[% INCLUDE navbar_help.tt %]
[% INCLUDE navbar_options.tt %]
[% INCLUDE navbar_search.tt %]
[% INCLUDE navbar_this_page.tt %]
[% INCLUDE navbar_revision_info.tt %]
</div>
(I noticed some people had rearranged the order of things in their
navbar; this allows you to do that without potentially locking yourself
out of upgrades if we have to make code changes in the navbar templatey
bits. And it makes it a lot clearer what's going on, which is good.)
Anyway, while I was doing this I came across the question of these
common categories/locales. When Nick put them in, Clair asked if they
could be moved into the navbar, and Nick said he didn't want to do
this, but didn't really explain why. I think they should be in the
navbar. Semantically, they belong there; they're means of navigation,
entry points into the Guide. Also, I see only three guides that
actually have them turned on; RGL has a hacked template that puts them
in the navbar anyway, and the other two (can't remember which, sorry)
seem not to have noticed them, since they're just stuck awkwardly at
the bottom of the page. Nick, can you explain why you think they
don't belong in the navbar?
The other thing is that they should really be specified in wiki.conf,
since (a) they should be configurable, and (b) they need to be run
through the node_name_to_node_param method of the formatter before
being plonked on the page. I'm not sure of the best way of doing
this, since Config::Tiny doesn't let you specify more than one value
for a key. Can we assume that nobody will ever want to use a
category/locale with a comma in for this purpose, and just use a
comma-separated list? Or can someone come up with a better idea? I
don't want to rush in with a half-baked solution that will need to be
done over again in a few months.
Kake