]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/bugs/pagetitle_function_does_not_respect_meta_titles.mdwn
hint
[ikiwiki.git] / doc / bugs / pagetitle_function_does_not_respect_meta_titles.mdwn
index 48fd7c647e17c3ea8389225ada3e7f52f6247ffe..4a83f9ec8ab8d1f77dda156842c436281e1ea85c 100644 (file)
@@ -162,14 +162,14 @@ So, looking at your meta branch: --[[Joey]]
   1) It needs the full page name, not basename.
   2) `titlepage(pagetitle($page))` reversability.
   
-  #1: If you look at all the callers
+  1) If you look at all the callers
   Of `pagetitle` most of them pass a complete page name, not just the
   basename. In most cases `pagetitle` is used to display the full name
   of the page, including any subdirectory it's in. So why not just make
   it consitently be given the full name of the page, with another argument
   specifying if we want to get back just the base name.
 
-  #2: I can't find any code that actually uses the reversability like that.
+  2) I can't find any code that actually uses the reversability like that.
   The value passed to `titlepage` always comes from some external
   source. Unless I missed one.
 * The use of `File::Spec->rel2abs` is a bit scary.
@@ -185,3 +185,49 @@ So, looking at your meta branch: --[[Joey]]
   `pagetemplate` hook. (Although this would eliminate handling of
   `title_overridden` -- but that is little used and would not catch
   all the other ways titles can be overridden with this patch anyway.)
+
+> I'm not a reviewer or anything, but can I chime in on changes to pagetitle?
+> I don't think having meta-titles in wikilinks and the parentlinks path by
+> default is necessarily a good thing. I don't consider the meta-title of a page
+> as used in `<title>` to be the same thing as the short title you
+> want in those contexts - IMO, the meta-title is the "formal" title of the page,
+> enough to identify it with no other context, and frequently too long to be used
+> as a link title or a parentlink, whereas the parentlinks title in particular
+> should be some abbreviated form that's enough to identify it in context.
+> [tbm](http://www.cyrius.com/) expressed a similar opinion when I was discussing
+> ikiwiki with him at the weekend.
+>
+> It's a matter of taste whether wikilinks are "like a parentlink" or "like a
+> `<title>`"; I could be persuaded either way on that one.
+>
+> An example from my site: [this page](http://www.pseudorandom.co.uk/2004/debian/ipsec/)
+> is the parent of [this page](http://www.pseudorandom.co.uk/2004/debian/ipsec/wifi/)
+> with a title too long to use in the latter's parentlinks; I think the titles of
+> both those pages are too long to use as wikilink text too. Similarly, tbm's page
+> about [Debian on Orion devices from Buffalo](http://www.cyrius.com/debian/orion/buffalo/)
+> can simply be called "Buffalo" in context.
+>
+> Having a `\[[!meta abbrev="..."]]` that took precedence over title
+> in parentlinks and possibly wikilinks might be a good way to fix this? Or if your
+> preference goes the other way, perhaps a `\[[!meta longtitle=""]]` could take
+> precedence when generating the `<title>` and the title that comes after the
+> parentlinks. --[[smcv]]
+
+>> I think you've convinced me. (I had always had some doubt in my mind as
+>> to whether using titles in all these other places would make sense.)
+>> 
+>> Instead of meta abbrev, you could have a meta pagename that
+>> overrides the page name displayed everywhere (in turn overridden by
+>> meta title iff the page's title is being displayed). But is this complexity
+>> needed? We have meta redir, so if you want to change the name of a page,
+>> you can just rename it, and put in a stub redirection page so links
+>> still work.
+>> 
+>> This leaves the [[plugins/contrib/po]] plugin, which really does need
+>> a way to change the displayed page name everywhere, and at least a
+>> subset of the changes in the meta branch are needed to support that.
+>> 
+>> (This would also get around my concern about inter-page dependency
+>> handling, since po contains a workaround for that, and it's probably
+>> acceptable to use potentially slow methods to handle this case.)
+>> --[[Joey]]