]> sipb.mit.edu Git - ikiwiki.git/blobdiff - doc/plugins/po.mdwn
Merge commit 'upstream/po' into prv/po
[ikiwiki.git] / doc / plugins / po.mdwn
index 544c7ef62b880c7dd72e572597cebba62039e783..eeeabe7306fde63139c3334f6b6f2e43a33bc415 100644 (file)
@@ -299,6 +299,8 @@ means the `Text` module only.
   variables; they seem safe to me, but someone more expert than me
   will need to check. Joey?
 
+  > Freaky code, but seems ok due to use of `quotementa`.
+
 ##### Text::WrapI18N
 
 `Text::WrapI18N` can cause DoS (see the
@@ -318,6 +320,34 @@ in this field. Joey? [[--intrigeri]]
 > familiar with. I can learn and do it, in case no Perl wizard
 > volunteers to provide the po4a patch. [[--intrigeri]]
 
+>> That doesn't really need to be in a BEGIN. This patch moves it to
+>> `import`, and makes this disable wrap18n:
+>> `use Locale::Po4a::Common q{nowrapi18n}` --[[Joey]]
+
+<pre>
+--- /usr/share/perl5/Locale/Po4a/Common.pm     2008-07-21 14:54:52.000000000 -0400
++++ Common.pm  2008-11-11 18:27:34.000000000 -0500
+@@ -30,8 +30,16 @@
+ use strict;
+ use warnings;
+-BEGIN {
+-    if (eval { require Text::WrapI18N }) {
++sub import {
++    my $class=shift;
++    my $wrapi18n=1;
++    if ($_[0] eq 'nowrapi18n') {
++      shift;
++      $wrapi18n=0;
++    }
++    $class->export_to_level(1, $class, @_);
++
++    if ($wrapi18n && eval { require Text::WrapI18N }) {
+     
+         # Don't bother determining the wrap column if we cannot wrap.
+         my $col=$ENV{COLUMNS};
+</pre>
+
 ##### Term::ReadKey
 
 `Term::ReadKey` is not a hard dependency in our case, *i.e.* po4a
@@ -404,6 +434,9 @@ and
 Perl seems to exit cleanly, and an incomplete PO file is written on
 disk. I not sure whether if this is a bug in Perl or in `Po.pm`.
 
+> It's fairly standard perl behavior when fed malformed utf-8. As long as it doesn't
+> crash ikiwiki, it's probably acceptable. Ikiwiki can do some similar things itself when fed malformed utf-8 (doesn't crash tho) --[[Joey]]
+
 #### po4a-translate
 
 `po4a-translate` uses more or less the same po4a features as our
@@ -463,20 +496,37 @@ gettext/po4a rough corners
   into the Pot file, and let it propagate; should be fixed in
   `773de05a7a1ee68d2bed173367cf5e716884945a`, time will tell.
 
-Page titles in links
---------------------
+Better links
+------------
+
+### Subpages
+
+On a translation page, links to subpages should actually be links to
+the master page's subpages. They currently appear as broken links.
 
-To use the page titles set with the [meta](plugins/meta) plugin when
+### Page title in links
+
+To use the page titles set with the [[meta|plugins/meta]] plugin when
 rendering links would be very much nicer, than the current
 "filename.LL" format. This is actually a duplicate for
 [[bugs/pagetitle_function_does_not_respect_meta_titles]].
 
+Going to work on this in my `meta` branch.
+
+### Translation status in links
+
+See [[contrib/po]].
+
+### Backlinks
+
+They are not updated when the source page changes (e.g. meta title).
+
 Page formats
 ------------
 
 Markdown is well supported, great, but what about others?
 
-The [po](plugins/po) uses `Locale::Po4a::Text` for every page format;
+The [[po|plugins/po]] uses `Locale::Po4a::Text` for every page format;
 this can be expected to work out of the box with most other wiki-like
 formats supported by ikiwiki. Some of their ad-hoc syntax might be
 parsed in a strange way, but the worst problems I can imagine would be
@@ -502,8 +552,8 @@ A new `cansave` type of hook would be needed to implement this.
 Note: committing to the underlying repository is a way to bypass
 this check.
 
-Broken links
-------------
+Creating new pages on the web
+-----------------------------
 
 See [[contrib/po]].
 
@@ -511,5 +561,5 @@ Documentation
 -------------
 
 Maybe write separate documentation depending on the people it targets:
-translators, wiki administrators, hackers. This plugin is maybe
-complex enough to deserve this.
+translators, wiki administrators, hackers. This plugin may be complex
+enough to deserve this.