]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/plugins/po.mdwn
Merge commit 'intrigeri/po'
[git.ikiwiki.info.git] / doc / plugins / po.mdwn
index 97c2e2d4e6fbdb5446142616db4b76011a95aa83..fe6b6b562a9260459aec13a20a5c458e19fc9a8e 100644 (file)
@@ -196,6 +196,22 @@ Also, when the plugin has just been enabled, or when a page has just
 been declared as being translatable, the needed POT and PO files are
 created, and the PO files are checked into version control.
 
 been declared as being translatable, the needed POT and PO files are
 created, and the PO files are checked into version control.
 
+Discussion pages
+----------------
+
+Discussion should happen in the language in which the pages are written for
+real, *i.e.* the "master" one. If discussion pages are enabled, "slave" pages
+therefore link to the "master" page's discussion page.
+
+Translating
+-----------
+
+One can edit the PO files using ikiwiki's CGI (a message-by-message interface
+could also be implemented at some point).
+
+If [[tips/untrusted_git_push]] is setup, one can edit the PO files in her
+preferred `$EDITOR`, without needing to be online.
+
 TODO
 ====
 
 TODO
 ====
 
@@ -221,72 +237,61 @@ Security checks
 gettext/po4a rough corners
 --------------------------
 
 gettext/po4a rough corners
 --------------------------
 
-- fix the duplicated PO header mysterious bug
-- fix the "duplicate message definition" error when updating a PO
-  file; do PO files need normalizing? (may be a side effect of
-  previous bug)
 - fix infinite loop when synchronizing two ikiwiki (when checkouts
   live in different directories): say bla.fr.po has been updated in
   repo2; pulling repo2 from repo1 seems to trigger a PO update, that
   changes bla.fr.po in repo1; then pushing repo1 to repo2 triggers
   a PO update, that changes bla.fr.po in repo2; etc.; fixed in
 - fix infinite loop when synchronizing two ikiwiki (when checkouts
   live in different directories): say bla.fr.po has been updated in
   repo2; pulling repo2 from repo1 seems to trigger a PO update, that
   changes bla.fr.po in repo1; then pushing repo1 to repo2 triggers
   a PO update, that changes bla.fr.po in repo2; etc.; fixed in
-  `629968fc89bced6727981c0a1138072631751fee` ?
+  `629968fc89bced6727981c0a1138072631751fee`?
+- new translations created in the web interface must get proper charset/encoding
+  gettext metadata, else the next automatic PO update removes any non-ascii
+  chars; possible solution: put such metadata into the Pot file, and let it
+  propagate; should be fixed in `773de05a7a1ee68d2bed173367cf5e716884945a`, time
+  will tell.
 
 Misc. improvements
 ------------------
 
 
 Misc. improvements
 ------------------
 
-### page titles
+### preview
 
 
-Use nice page titles from meta plugin in links, as inline already does.
+preview does not work for PO files.
 
 
-Translation quality assurance
------------------------------
-
-Modifying a PO file via the CGI must be forbidden if the new version
-is not a valid PO file. As a bonus, check that it provides a more
-complete translation than the existing one.
+### automatic POT/PO update
 
 
-A new `cansave` type of hook would be needed to implement this.
+Use the `change` hook instead of `needsbuild`?
 
 
-Note: committing to the underlying repository is a way to bypass
-this check.
+### page titles
 
 
-Translating online
-------------------
+Use nice page titles from meta plugin in links, as inline already does. This is
+actually a duplicate for
+[[bugs/pagetitle_function_does_not_respect_meta_titles]], which might be fixed
+by something like [[todo/using_meta_titles_for_parentlinks]].
 
 
-As PO is a wiki page type, we already have an online PO editor, that
-is ikiwiki's CGI.
+### websetup
 
 
-**FIXME** preview does not work for PO files.
+Which configuration settings are safe enough for websetup?
 
 
-A message-by-message interface could also be implemented at some
-point; a nice way to do offline translation work (without VCS access)
-still has to be offered, though.
+### parentlinks
 
 
-Translating offline without VCS access
---------------------------------------
+When the wiki home page is translatable, the parentlinks plugin sets
+`./index.html` as its translations' single parent link. Ideally, the home page's
+translations should get no parent link at all, just like the version written in
+the master language.
 
 
-The following workflow should be made possible for translators without
-VCS access who need to edit the PO files in another editor than a web
-browser:
+### backlinks
 
 
-- download the page's PO file
-- use any PO editor to update the translation
-- upload the updated PO file
+If a given translatable `sourcepage.mdwn` links to \[[destpage]],
+`sourcepage.LL.po` also link to \[[destpage]], and the latter has the master
+page *and* all its translations listed in the backlinks.
 
 
-Implementation note: a generic mechanism to upload a page's source is
-needed: it's only an alternative way to allow saving a the modified
-page's source with the CGI.
+Translation quality assurance
+-----------------------------
 
 
-### Short-term workflow
+Modifying a PO file via the CGI must be forbidden if the new version
+is not a valid PO file. As a bonus, check that it provides a more
+complete translation than the existing one.
 
 
-A possible workaround is:
+A new `cansave` type of hook would be needed to implement this.
 
 
-- pretend to edit the PO file online
-- copy the PO file content from the textarea
-- cancel the edit
-- paste the content into a local file.
-- edit the local file in any PO editor
-- pretend to edit the PO file online
-- paste the modified local file's content into the edit textarea
-- save
+Note: committing to the underlying repository is a way to bypass
+this check.