Le GNU a2ps - Working on Translations

Le GNU a2ps

Working on Translations

General Info

What is GNU a2ps
Features of 4.13
Features of 4.12
Features of 4.10.4
Contributions
Projects Related with a2ps
Ports and Packages
Ports to M$ world
Giving Feedback

Documentation

Manual of 4.12
Manual of 4.10
Manual of 4.8
Glossary
Known Bugs
FAQ
a2ps List Archive

Extensions

Sheets Files
Delegations

Internationalization

a2ps & I18n
Existing Translations
Working on Translation
Guide Line

Development

Download
NEWS

The most important thing is never work on an old file you kept, always pick the one on this page! Please, read also the guidelines.

Improving an existing translation

Basically, two cases may happen.

The message has never been translated

This is easy to see: there are no corresponding translation (With your favorit editor, look for `msgstr "" ', i.e., with two new-lines). For instance:

#: src/main.c:98
msgid "Send bugs reports and comments to demaille@inf.enst.fr\n"
msgstr ""

Then simply fill the blank:

#: src/main.c:98
msgid "Send bugs reports and comments to demaille@inf.enst.fr\n"
msgstr "Envoyer vos commentaires et rapport de bogues à demaille@inf.enst.fr\n"

If the message, is very long, the process is still the same:

# , c-format
#: src/main.c:154
#, c-format
msgid ""
"Virtual pages:\n"
"  number lines          = %s\n"
"  format                = %s\n"
"  tabulation size       = %d\n"
"  non printable format  = %s\n"
msgstr ""

becomes

# , c-format
#: src/main.c:154
#, c-format
msgid ""
"Virtual pages:\n"
"  number lines          = %s\n"
"  format                = %s\n"
"  tabulation size       = %d\n"
"  non printable format  = %s\n"
msgstr ""
"Pages virtuelles\n"
"  numérotation des lignes    = %s\n"
"  format                     = %s\n"
"  taille de la tabulation    = %d\n"
"  caractères non imprimables = %s\n"

The message is apparently translated, but wrong

This is also easy to see, since each time the GNU tool feel a message has slightly changed in English, it suggest a translation, but tags it with the keyword `fuzzy'.

For instance:

#: src/main.c:332
#, fuzzy
msgid ""
"Virtual pages:\n"
"  --line-numbers=NUM         precede each NUM lines with its line number\n"
"  -C                         alias for --line-numbers=5\n"
msgstr ""
"Pages:\n"
"  -C, --line-numbers*        numéroter les lignes\n"

You see the difference? Now the option has been decomposed into two. So put the new translation, and remove fuzzy. Is is extremely important that you remove the fuzzy, otherwise it means you are not sure of the translation, and it will not be taken into account.

#: src/main.c:332
msgid ""
"Virtual pages:\n"
"  --line-numbers=NUM         precede each NUM lines with its line number\n"
"  -C                         alias for --line-numbers=5\n"
msgstr ""
"Pages:\n"
"  -C, --line-numbers=NB      numéroter les lignes de NB en NB\n"
"  -C                         alias de --line-numbers=5\n"

For help messages, or "formatted" messages, please try not to use more than 79 columns: it looks bad on the screen.

Note that if fuzzy is alone on the line, you should remove the whole line, otherwise just fuzzy:

#: src/main.c:883
#, fuzzy, c-format
msgid "unexpected option: `%c' (%d)"
msgstr "%s: nieznana opcja `%c%s'\n"

becomes

#: src/main.c:883
#, c-format
msgid "unexpected option: `%c' (%d)"
msgstr "nieznana opcja `%c' (%d)"

A language that has never been addressed before

The process is as simple, you just take a blank file, and there you go!

Note The current official a2ps is the 4.8.* series. Nevertheless, going forward, the 4.9.* is the one being translated.

And after?

First of all, please double check the translation file :). In particular, beware not to use %d instead of %s etc. In the package GNU gettext there are wonderful tools to check the translation page. In particular, I strongly recommend the Emacs po-mode.

Afterwards, send me via \mail(demaille@inf.enst.fr, email) the file you improved. Your piece of work will soon be included!

Even more: say you want to be the official maintainer of the translation. Then just tell me, and add a reference to you in the "complain about bugs" message. Something like:

#: src/main.c:72
msgid "Send bugs reports and comments to demaille@inf.enst.fr\n"
msgstr ""
"Enviar informes de error y comentarios a demaille@inf.enst.fr\n"
"Enviar informes sobre la traducción a mvaro@dlsi.ua.es\n"