summaryrefslogtreecommitdiff
path: root/IkiWiki/Plugin/po.pm
AgeCommit message (Collapse)Author
2009-01-16po: when possible, disable use of Text::WrapI18N in po4a; else warn about ↵intrigeri
too old po4a Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-16po(change): re-render all rendered files in one corner caseintrigeri
All meta titles are first extracted at scan time, i.e. before we turn PO files back into translated markdown; escaping of double-quotes in PO files breaks the meta plugin's parsing enough to save ugly titles to %pagestate at this time. Then, at render time, every page's passes on row through the Great Rendering Chain (filter->preprocess->linkify->htmlize), and the meta plugin's preprocess hook is this time in a position to correctly extract the titles from slave pages. This is, unfortunately, too late: if the page A, linking to the page B, is rendered before B, it will display the wrongly-extracted meta title as the link text to B. On the one hand, such a corner case only happens on rebuild: on refresh, every rendered page is fixed to contain correct meta titles. On the other hand, it can take some time to get every page fixed. We therefore re-render every rendered page after a rebuild to fix them at once. As this more or less doubles the time needed to rebuild the wiki, we do so only when really needed. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-15po: pages in underlay dirs are not translatableintrigeri
Fixes build break due to read-only underlay dirs, e.g. basewiki. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-15po(_istranslation): fix unitialized valueintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-15po: fix broken links from slave pagesintrigeri
... by overriding cgiurl. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-13po: do not add translation status to parentlinksintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po(isvalidpo): more meaningful error messageintrigeri
... explaining how to go on with edit. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: back to the cansave hook, as the form validation is not sufficientintrigeri
Form validation works, but after trying to save invalid PO content, the user is brought back to the page he/she was editing, without any single clue to explain why it was not saved. The dedicated cansave hook is thus necessary. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: first attempt to replace cansave hook with form validate tweaksintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po/i18n: move the function names out of the translatable stringsintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: updated copyright yearsintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po(formbuilder_setup): remove the rename/remove buttons on slave pagesintrigeri
This has to be done after the rename/remove plugins have added their buttons, so we set this hook to be run last. The canrename/canremove hooks already ensure this is forbidden at the backend level, so this is only UI sugar. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: avoid warnings and possible bugs with nested named subroutinesintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: gettext-ize error messagesintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: do not allow to create pages of type pointrigeri
The main reason to do so is to bypass the "favor the type of linking page on page creation" logic, which is unsuitable when a broken link is clicked on a slave (PO) page. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: cosmetic changes to percent translated displayintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po(formbuilder_setup): use a template to display the warningintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: test formbuilder_setup hook to warn about new master page's languageintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-02po: require ikiwiki plugin interface 3.0intrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: send msgfmt output to /dev/null, else it creates messages.mo filesintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: fix error messagesintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po(cansave): check PO validity using new isvalidpo functionintrigeri
... because Po4a's parser does not care about malformed PO data. Use gettext's msgfmt program instead. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po(cansave): use po_to_markup to check PO validityintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: move most of filter code to its own functionintrigeri
Allow this new po_to_markup function to run in non-fatal mode, we need this in our cansave hook. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: register a (dummy) cansave hookintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01Pass src, srcfile, dest and destfile to the canrename hook.intrigeri
This is not needed by the use I'm doing of it, but seems more consistent to me. Future users of this hook may need this data to make their mind. Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: bugfixintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: fix canrename hookintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: use the new canrename hook to prevent translation renames in the CGIintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01remove: implemented a new canremove hook; use it in the po pluginintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po(myurlto): more robust run_by_editpage logicintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: some code/comments refactoringintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: follow new coding style (removed Vim folding markersintrigeri
) Signed-off-by: intrigeri <intrigeri@boum.org>
2009-01-01po: added postscan hook, to make pages depend on the pages linking to themintrigeri
... so that nicepagetitle hook's effects, such as translation status displayed in links, are updated when the linked page changes. The replacement of 'my %backlinks' with 'our %backlinks' in Render.pm made this work: previously, every postscan hook was called with an almost empty %backlinks, which defeated all my attempts to implement this feature. This feature hits performance a bit. Its cost was quite small in my real-world use-cases (a few percents bigger refresh time), but could be bigger in worst cases. Time will tell. NB: this hack could also be used by my meta branch. It may even be a ikiwiki optional feature. Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-31po: new po_translation_status_in_links optionintrigeri
... to make configurable the last implemented feature. Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-31po(nicepagetitle): forgot to display %intrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-31po(percenttranslated): fix issue with leading /intrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-31po(nicepagetitle): append translation status to links to translated pagesintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-31po: inject our own (currently a no-op) nicepagetitle functionintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-31po: fix redirect after edit, using a somehow tricky hackintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-31po: delete translations of deleted master pagesintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-30po: remove debug statementsintrigeri
2008-12-30po: remove renamed pages special handling, not needed anymoreintrigeri
Thanks to the new rename hook behaviour, the whole renaming work is now done by the rename plugin, and we don't need to remember which pages were renamed.
2008-12-30the rename hook can now change the list of pages to renameintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-12-30renamed the renamepage hook to renamelink, added rename hookintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13po(change): reset renamed pages status at a better timeintrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13po: initial infrastructure to deal with renamed master pageintrigeri
This is a skeleton that does nothing yet. See the comments in the code for an overview of the issue that arises, due to the renamepage hook never being called globally. Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13po(delete): added hook, and function skeletonintrigeri
Not implemented yet, 'cos the renamepage hook has to come first. Else translations would be deleted on rename, what a shame. Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13po(change): avoid losing information before guessing the same...intrigeri
Signed-off-by: intrigeri <intrigeri@boum.org>
2008-11-13po(istranslatablefile): extracted this from istranslatableintrigeri
... will need this soon to deal with master file deletion. Signed-off-by: intrigeri <intrigeri@boum.org>