]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/plugins/po.mdwn
remove: implemented a new canremove hook; use it in the po plugin
[git.ikiwiki.info.git] / doc / plugins / po.mdwn
index 209b573cbc7aaff4c7b4dc1669df9ed69f1d1883..919864ede5952e9a613f5c9aa7ec6ed22658b913 100644 (file)
@@ -219,6 +219,22 @@ interface could also be implemented at some point).
 If [[tips/untrusted_git_push]] is setup, one can edit the PO files in one's
 preferred `$EDITOR`, without needing to be online.
 
+Markup languages support
+------------------------
+
+Markdown is well supported. Some other markup languages supported by
+ikiwiki mostly work, but some pieces of syntax are not rendered
+correctly on the slave pages:
+
+* [[reStructuredText|rst]]: anonymous hyperlinks and internal
+  cross-references
+* [[wikitext]]: conversion of newlines to paragraphs
+* [[creole]]: verbatim text is wrapped, tables are broken
+* [[html]] and LaTeX: not supported yet; the dedicated po4a modules
+  could be used to support them, but they would need a security audit
+* other markup languages have not been tested.
+
+
 TODO
 ====
 
@@ -505,45 +521,11 @@ Better links
 
 ### 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).
-
-### Redirect after edit
-
-After editing master page, when using `po_link_to=negotiated`, one is
-redirected to the page in her preferred language. Would be slightly
-better to be redirected, in any case, to the just saved page.
-
-Page formats
-------------
-
-Markdown is well supported, great, but what about others?
-
-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
-wrapping issues; e.g. there is code in po4a dedicated to prevent
-re-wrapping the underlined Markdown headers.
-
-While it would be easy to better support formats such as [[html]] or
-LaTeX, by using for each one the dedicated po4a module, this can be
-problematic from a security point of view.
-
-**TODO**: test the more popular formats and write proper documentation
-about it.
+Using the fix to
+[[bugs/pagetitle_function_does_not_respect_meta_titles]] from
+[[intrigeri]]'s `meta` branch, the generated links' text is based on
+the page titles set with the [[meta|plugins/meta]] plugin. This has to
+be merged upstream, though.
 
 Translation quality assurance
 -----------------------------
@@ -562,12 +544,12 @@ Creating new pages on the web
 
 See [[contrib/po|contrib/po]].
 
-Deleting/renaming pages
+Renaming/deleting pages
 -----------------------
 
-- When a master page is renamed or deleted, its translations (and the
-  pot file?) must be renamed or deleted accordingly.
-- Renaming a translation should be forbidden.
+Renaming or deleting a translation in the CGI should be forbidden.
+Implementing this requires two new hooks: `canrename` and `canremove`,
+that would be run respectively by the `rename` and the `remove` plugins.
 
 Robustness tests
 ----------------
@@ -592,23 +574,21 @@ Robustness tests
 ### Creating pages
 
 - creating a master page via RCS: **OK**
-- creating a master page via CGI: **FIXME** the new master page has no
-  `otherlanguages` links until refreshed once more
+- creating a master page via CGI: **OK**
 
 ### Deleting pages
 
-- removing a master page via RCS
+- removing a master page via RCS: **OK**
 - removing a translation via RCS: **OK**
-- removing a master page via CGI
-- removing a translation via CGI: **FIXME** the PO file is
-  re-generated as if it wasn't a translation; touch'ing
-  `masterpage.mdwn` + manual refresh fixes it.
+- removing a master page via CGI: **OK**
+- removing a translation via CGI: **OK**
 
 ### Renaming pages
 
-- renaming a master page via RCS 
-- renaming a master page and its translations via RCS
-- renaming a master page via CGI
+- renaming a master page via RCS: **OK** (but the old translations
+  are lost, because not all RCS track file renaming)
+- renaming a master page and its translations via RCS: **OK**
+- renaming a master page via CGI: **OK**
 - renaming a translation via RCS
 - renaming a translation via CGI