]> git.vanrenterghem.biz Git - git.ikiwiki.info.git/blobdiff - doc/plugins/po.mdwn
po plugin: add one more pagespec function to the specification
[git.ikiwiki.info.git] / doc / plugins / po.mdwn
index fddfe5c41756a0b87bbe735f2d22ecb6b992c651..9e9ba1fd841631ce6204a834229ca908050d05cf 100644 (file)
@@ -15,7 +15,7 @@ a "master" page, and is written in any supported format but PO.
 
 Example: `bla/page.mdwn` is a "master" Markdown page written in
 English; if `usedirs` is enabled, it is rendered as
-`bla/page/index.html.en`, else as `bla/page.html.en`.
+`bla/page/index.en.html`, else as `bla/page.en.html`.
 
 Any translation of a "master" page into a "slave" language is called
 a "slave" page; it is written in the gettext PO format. PO is now
@@ -23,7 +23,7 @@ a page type supported by ikiwiki.
 
 Example: `bla/page.fr.po` is the PO "message catalog" used to
 translate `bla/page.mdwn` into French; if `usedirs` is enabled, it is
-rendered as `bla/page/index.html.fr`, else as `bla/page.html.fr`
+rendered as `bla/page/index.fr.html`, else as `bla/page.fr.html`
 
 
 Configuration
@@ -58,8 +58,8 @@ the wiki context.
 
 Setting `DefaultLanguage LL` (replace `LL` with your default MIME
 language) for the wiki context can be needed, to ensure
-`bla/page/index.html.en` is served as `Content-Language: LL`.
-**FIXME**: is it still needed with the new `.html.en` naming convention?
+`bla/page/index.en.html` is served as `Content-Language: LL`.
+**FIXME**: is it still needed with the new `.en.html` naming convention?
 
 lighttpd
 --------
@@ -73,6 +73,29 @@ lighttpd unfortunately does not support content negotiation.
 TODO
 ====
 
+Links
+-----
+
+Choice between two behaviors must be possible in `ikiwiki.setup`;
+a `po_link_to_current_language` option must allow switching
+between them.
+
+If `po_link_to_current_language` is disabled, `[[page]]` links to the
+negotiated preferred language, i.e.:
+
+- `usedirs` enabled: `bla/page/`
+- `usedirs` disabled: `bla/page`
+
+This obviously does not work in case Content Negotiation is not
+supported by the web server, hence one can enable
+`po_link_to_current_language` to make `[[page]]` link to the current
+page's language, i.e.:
+
+- `usedirs` enabled: `bla/page/index.LL.html`
+- `usedirs` disabled: `bla/page.LL.html`
+
+**FIXME**: should `po_link_to_current_language` be enabled by default?
+
 Display available translations
 ------------------------------
 
@@ -138,12 +161,10 @@ Pages selection depending on language
 To improve user navigation in a multi-lingual wiki, site developers
 must be enabled to write:
 
-        \[[!map pages="dev/* and preferredlang()" feeds="no"]]
+        \[[!map pages="dev/* and lang(LL)" feeds="no"]]
 
         \[[!map pages="dev/* and currentlang()" feeds="no"]]
 
-Some new [[ikiwiki/pagespec]] functions have to be written.
-
 Translation quality assurance
 -----------------------------