Full po4a support!
[ikiwiki.git] / doc / todo / l10n.mdwn
1 From [[Recai]]:
2 > Here is my initial work on ikiwiki l10n infrastructure (I'm sending it
3 > before finalizing, there may be errors).
4
5 I've revised the patches (tested OK):
6
7 - $config{lang} patch:
8
9     <http://people.debian.org/~roktas/patches/ikiwiki/ikiwiki-lang.diff>
10
11   + Support for CGI::FormBuilder.
12   + Modify Makefile.PL for l10n.
13
14 - l10n infrastructure from Koha project.  (This patch must be applied with
15   '-p1', also, it needs a 'chmod +x l10n/*.pl' after patching.)
16
17   + Leave templates dir untouched, use a temporary translations directory
18     instead.
19   + Fix Makefile (it failed to update templates).
20
21     <http://people.debian.org/~roktas/patches/ikiwiki/ikiwiki-l10n.diff>
22
23 However...
24
25 > fine.  Also a final note, I haven't examined the quality of generated
26 > templates yet.
27
28 Looks like, tmpl_process3 cannot preserve line breaks in template files.
29 For example, it processed the following template:
30
31     Someone[1], possibly you, requested that you be emailed the password for
32 user
33     <TMPL_VAR USER_NAME> on <TMPL_VAR WIKINAME>[2].
34
35     The password is: <TMPL_VAR USER_PASSWORD>
36
37     --
38     ikiwiki
39
40     [1] The user requesting the password was at IP address <TMPL_VAR
41 REMOTE_ADDR>
42     [2] Located at <TMPL_VAR WIKIURL>
43
44 as (in Turkish):
45
46 Birisi[1], ki muhtemelen bu sizsiniz, <TMPL_VAR WIKINAME>[2] üzerindeki
47 <TMPL_VAR USER_NAME> kullanıcısına ait parolanın epostalanması isteğinde
48 bulundu. Parola: <TMPL_VAR USER_PASSWORD> -- ikiwiki [1] Parolayı isteyen
49 kullanıcının ait IP adresi: <TMPL_VAR REMOTE_ADDR>[2] <TMPL_VAR WIKIURL>
50
51 > Looks like, tmpl_process3 cannot preserve line breaks in template files.
52 > For example, it processed the following template:
53
54 This could be easily worked around in tmpl_process3, but I wouldn't like to
55 maintain a separate utility.
56
57 ----
58
59 As to the hardcoded strings in ikiwiki, I've internationalized the program,
60 and there is a po/ikiwiki.pot in the source that can be translated.
61 --[[Joey]]
62
63 ----
64
65 Danish l10n of templates and basewiki is available with the following commands:
66
67     git clone http://source.jones.dk/ikiwiki.git newsite
68     cd newsite
69     make
70
71 Updates are retrieved with this single command:
72
73     make
74
75 l10n is maintained using po4a for basewiki, smiley and templates - please  send me PO files if you
76 translate to other languagess than the few I know about myself: <dr@jones.dk>
77
78 As upstream ikiwiki is now maintained in GIT too, keeping the master mirror in sync with upstream
79 could probably be automated even more - but an obstacle seems to be that content is not maintained
80 separately but as an integral part of upstream source (GIT seems to not support subscribing to
81 only parts of a repository).
82
83 For example use, here's how to roll out a clone of the [Redpill support site](http://support.redpill.dk/):
84
85     mkdir -p ~/private_webdata
86     git clone http://source.redpill.dk/support.git ~/private_webdata/support.redpill.dk
87     cd ~/private_webdata/support.redpill.dk
88     make
89     mkdir -p ~/public_websites/support.redpill.dk
90     mkdir -p ~/public_websites/source.redpill.dk/support_content.git/hooks
91     mkdir -p ~/public_cgi/support.redpill.dk
92     make install
93
94 (Redpill support is inspired by <http://help.riseup.net> but needs to be reusable for several similarly configured networks)
95
96 --[[JonasSmedegaard]]