1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
|
Things we plan to do. Comments welcome.
- Documentation: Distinguish more clearly between gettext/xgettext,
the Translation Project for GNU packages, and the PO mode.
- Look at Christian Robottom Reis's manual:
http://www.async.com.br/~kiko/gettext.html
- KBabel:
http://i18n.kde.org/translation-howto/gui-specialized-apps.html
http://i18n.kde.org/tools/kbabel/
- Tool to help people to correct msgid strings:
1. Program to move msgstr contents to msgid contents,
2. Program to update the translations accordingly, much like msgmerge.
- Mention Qt linguist (part of Qt 3)
- Easier delivery of PO directory for maintainer! Add a target for incoming
PO files
- Qt 3.0 compatibility:
- .ts, .qph catalogs, example: http://dooble.svn.sourceforge.net/viewvc/dooble/trunk/browser/translations/
- .qm binary catalogs
- Add logging to libintl, in order to catch each of these problems:
> - if the directory that was argument to bindtextdomain is usable
> - what catalogs are installed there
> - if the language , that is requested by LC_ALL or some other
> variable is really there ...
> - if program tries to translate some message, it doesn't really know
> if it really get translated ... And if requested more than
> one language , you have no way to realize into what
> language, it had been really translated !!!!!!!
- msgdiff
People recommend the 'poediff' program from Pology:
http://pology.nedohodnik.net
which supports merging the diff back to the PO
- automake integration: Add to "make dist" an invocation of
"intltool-update --maintain", parametrized through a few variables that
specify
- where to look for i18n files,
- which file types are to be considered by i18n,
- which files are explicitly not i18n (e.g. generated files like
src/po-gram-gen.c)
- Generating sr@latin PO file automatically from sr.po.
- XLIFF support
- object-oriented locale datatype, similar to giulia/glocale
- automatic download at installation time of PO files that have been
provided by the translators after the official release.
- Conversion of compendia from/to TMX format.
- Support some of the conversions found in the translate-toolkit package, see
http://translate.sourceforge.net/wiki/nonpo
- xgettext should have a simpler way to specify the --flags.
- man page pgettext.3
- po-mode.el: Editing of msgstr[i] plural forms, and setting of formula.
- The recode-* programs and msggrep should ignore the accelerator char
transparently.
a word is divided by shortcut symbol (like "Raści_ahni") that will be
converted incorrectly (like "Расьці_агні", not "Расьц_ягні")
- PO spell checker. People recommend:
- 'pospell' - qui ne gère apparemment pas les accents
- gettext-lint / POFileSpell - qui fonctionne mais le contexte est
trop court
- une version mise à jour de
http://lists.debian.org/debian-l10n-french/2000/04/msg00058.html
(qui date de 2000 quand même - voir en fin de message) - pas mal,
mais pas moyen de sauvegarder ni même de s'arrêter avant la fin du
.po
- pofilter
- acheck
- An alternative converter for Java .properties files.
E.g.
error.socket.connect=Cannot connect socket
error.database.connect=Cannot connect to database {0}
->
msgctxt "error.socket.connect"
msgid "Cannot connect socket"
msgstr ""
msgctxt "error.database.connect"
msgid "Cannot connect to database {0}"
msgstr ""
- For people who use a 15 MB large compendium:
Add an msgmerge option --cache-compendium, which stores (during the
first run) or reuses (during subsequent runs) an mmapable file that
represents the index of the compendium file. Should be located in
/var/tmp/, in a filename that is a hash of the realpath of the compendium.
- Translating via an intermediate language (see thread 2006-09-28):
> For my language alone, there are many possible translators who would
> work much better from Chinese or Russian to Vietnamese than from
> English. It's simply a matter of which languages you have had the
> opportunity to learn.
Now _that_ is an interesting idea!
Gettext can already nearly do this, too, if you write three small scripts/
programs to
- convert an English-based .pot file into a Russian-based .pot file,
- convert an English->Vietnamese PO file to a Russian->Vietnamese PO file,
(to be used when such a translator starts her work),
- convert an Russian->Vietnamese PO file back to an English->Vietnamese PO file
(to be used when a translator is done with her work).
And then the translator has these additional conversions steps all the time.
It would be better, for the future, that the translator has only one
additional step to perform: When she gets a new PO file, she converts it
to a mixed English/Russian->Vietnamese PO file. Such a mixed
English/Russian->Vietnamese PO file would
1) permit the translator to peek into the English original when something is
unclear,
2) also work when not some of the Russian translations are missing or fuzzy,
3) get rid of the "convert back" step, since msgfmt could directly grok
the mixed English/Russian->Vietnamese PO file.
The syntax for a mixed PO file could like this:
msgid "Hello, world!"
msgid[ru] "Здравствуй, мир!"
msgstr "Chào thế giới !"
- filter-sr-latin should transform the resulting output to NFC form.
Needed because the input may contain decomposed Cyrillic accented letters.
- In x-c.c, support C++0x escape sequences, see
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm
- Use libunistring as hard dependency.
- Texinfo document translation, through TexinfoXML.
- A way to hook xgettext to call external scanner written in the
target programming language. This would be particularly useful for
scripting languages which need run-time information to extract
strings. Some programming languages already provide their own
scanners: pygettext in Python, rgettext in Ruby.
- Make xgettext XML handling extensible through user ITS files
http://lists.gnu.org/archive/html/bug-gettext/2014-06/msg00026.html
- 3-way merge tool for PO files
msg3way was proposed by Panos Christeas
http://lists.gnu.org/archive/html/bug-gnu-utils/2010-11/msg00051.html
|