01294: Suggestion for pmwiki.tmpl
Description: There have been some discussion around replacing the PmWiki skin.
In the interim I believe that there are some changes that could be made to improve the skin template.
The reasons include
- CSS cascade ordering to allow included CSS to override generated CSS
- orthogonal use of DefaultGroup
| ||Use |
|move to after |
| ||no change|
|Moved from before |
| ||add |
| ||add |
| ||add |
|insert ending tag|
| ||use |
|add Cookbook:WikiFooter to the core|
IMHO, PmWiki really deserves an improved (while kept simple) skin. --Dfaure August 26, 2012, at 04:51 AM
I would "+1" what Petko Yotov has written on the pmwiki-users discussion list about the default skin's cascade order. The existing order is deliberate and should remain the way it is. Here's what he wrote:
Keep in mind that such a change in the "default" skin will have consequences not only on new wikis, but also on any wiki which is upgraded and has some recipes. Which may change the appearance of the site without the user having asked for anything.
If we don't have a way to enable this kind of disruptive changes only on new wikis, even if the pros are more than the cons, we shouldn't force them.
In the case of pmwiki.css before the HTMLHeader, there is one feature that wasn't mentioned, the local files pub/css/local.css, pub/css/Group.css and pub/css/Group.Page.css that are loaded after the css file of the skin. Having it after pmwiki.css (or anyskin.css) allows a wiki to adapt the appearance of the skin more easily.
The current order seems to me very good, even if we didn't have existing wikis that would break when we change it. The current order is:
- pmwiki.css (or anyskin.css, if the skin author respected the order) -
$HTMLStylesFmtfrom the core and from recipes, in a <style> block - from pub/css/ : local.css, Group.css and Group.Page.css in that order if they exist
So, we are unlikely to change that order for the default skin. Skin authors may select a different way if they have reasons for it.
Proposed changes to the default skin need to be carefully considered because they may break existing wikis unexpectedly. For example, suddenly switching to
Titlespaced would impart not-so-subtle changes to a wiki's pages after an upgrade.