X-Git-Url: https://sipb.mit.edu/gitweb.cgi/ikiwiki.git/blobdiff_plain/8dc18fc9d401faca9b066d25d1a893528c9cacaa..d8d994b07c616e6f4891289aef0abcc4a8a6015e:/doc/todo/more_customisable_titlepage_function.mdwn diff --git a/doc/todo/more_customisable_titlepage_function.mdwn b/doc/todo/more_customisable_titlepage_function.mdwn index 46f7f6a2a..51b560746 100644 --- a/doc/todo/more_customisable_titlepage_function.mdwn +++ b/doc/todo/more_customisable_titlepage_function.mdwn @@ -2,10 +2,30 @@ I understand the `IkiWiki::titlepage` function is used to generate filenames fro I imagine two things: a lookup hash and a template. -Since `IkiWiki::titlepage` basically translates characters, it would be cool to be able to define a lookup hash in the configuration, which would be consulted before falling back to the generic `__xx__` `ord()` representation of a letter. For instance, in German, I might prefer to have 'ä' become 'ae' instead of something illegible. +Since `IkiWiki::titlepage` basically translates characters, it would be cool to be able to define a lookup hash in the configuration, which would be consulted before falling back to the generic `__xx__` `ord()` representation of a letter. For instance, in German, I might prefer to have 'ä' become 'ae' instead of something illegible. Second, maybe a template could be honoured. The template could have a slot `%s` where the calculated title goes, and it could contain `strftime` symbols as well as variables, which get interpolated on use. +Another option would be a function I could define in the setup file, or an external script, though that would be pretty expensive. + -- [[madduck]] +I don't think that changing titlepage is a good idea, there are +compatability problems. + +Instead, I think that in the specific case of the blogpost form, there +should be an interface to allow plugins to do arbitrary transformatiosn of +the page name. + +So, add a hidden field to blogpost.tmpl, something like blogpost=1. Then in +`editpage`, if blogpost is set, call the blogpost hooks, which are passed +a page name and return a transformed version. + +If the page name is changed by those, then the user's original title might +need to be preserved via a meta title directive. This could just be +inserted if any changes are made to the page name. Only problem with this +is that having the directive appear in the edit box for a new page could +confuse the user. The title could be passed on in a hidden field, and +prepended to the page when it's saved.. + [[wishlist]]