]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/commitdiff
Merge commit 'upstream/po' into prv/po
authorintrigeri <intrigeri@boum.org>
Wed, 12 Nov 2008 00:08:57 +0000 (01:08 +0100)
committerintrigeri <intrigeri@boum.org>
Wed, 12 Nov 2008 00:08:57 +0000 (01:08 +0100)
1  2 
doc/plugins/po.mdwn

diff --combined doc/plugins/po.mdwn
index 125a9b016ef1b5fef44c14c395d71c76b4bed897,5cac86d26b5d84b0136b34bf7882b7f5ed8f7dce..eeeabe7306fde63139c3334f6b6f2e43a33bc415
@@@ -299,6 -299,8 +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 +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 +434,9 @@@ an
  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,37 -496,20 +496,37 @@@ gettext/po4a rough corner
    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
@@@ -519,8 -535,8 +552,8 @@@ A new `cansave` type of hook would be n
  Note: committing to the underlying repository is a way to bypass
  this check.
  
 -Broken links
 -------------
 +Creating new pages on the web
 +-----------------------------
  
  See [[contrib/po]].
  
@@@ -528,5 -544,5 +561,5 @@@ Documentatio
  -------------
  
  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.