Short description
With the current approach of listing all template pages in i18n.strings and their translations in i18n.system_pages we should be able to check for translated pages in wikiutil.isTemplatePage.
This will enable to write on all _(Template) pages Variables which weren't expanded by saving the page.
Currently we use a workaround of
@``ME@
which could be replaced on all _(Template) pages to
@``ME@ without the ``
1 diff -r efde74175d2d MoinMoin/wikiutil.py
2 --- a/MoinMoin/wikiutil.py Sat Apr 25 00:45:21 2009 +0200
3 +++ b/MoinMoin/wikiutil.py Sat Apr 25 21:59:00 2009 +0200
4 @@ -627,9 +627,16 @@
5
6 @param pagename: the page name
7 @rtype: bool
8 - @return: true if page is a template page
9 + @return: true if page is a template page or the translation of the page is a template page
10 """
11 - return request.cfg.cache.page_template_regexact.search(pagename) is not None
12 + from MoinMoin import i18n
13 + en_pagename = ''
14 + try:
15 + en_pagename = i18n.system_pages[pagename][1]
16 + except KeyError:
17 + pass
18 +
19 + return en_pagename.endswith('Template') or request.cfg.cache.page_template_regexact.search(pagename) is not None
20
21
22 def isGroupPage(pagename, cfg):
While that patch would be a nice hack for master wikis, it doesn't make too much sense in general IMHO.
For consistency, translated template pages should follow some pattern, e.g. if original template pages are all named *Template, then all german translations and also all german custom template pages should follow the same pattern, e.g. *Vorlage.
To have all those german pages recognized, admin needs to configure some appropriate template regex, matching all template pages.
This makes the above patch completely superfluous, because that configured regex will already match all pages, without any additional code.
The special problem on master wikis you are obviously trying to solve is that they have all languages, but I didn't configure a regex that matches all template pages (of all languages). That could be fixed though and would be a cleaner solution.
-- ThomasWaldmann 2009-04-26 13:24:00
agreed -- ReimarBauer 2009-04-26 15:32:47
The problem is currently that Template isn't translated in all languages moin supports. essential_template_pages doesn't show its translated name.