Post by Jeff SadowskiSo if I install ubuntu on a vm for each language I want to support would
I be able to copy the output for each language?
The messages specific to scanimage (look at the scanimage source, but
things like progress and error messages, e.g.
https://anonscm.debian.org/cgit/sane/sane-backends.git/tree/frontend/scanimage.c,
line 1919) are not translated, because scanimage hasn't tried to.
However, scanimage just passes on the strings for the option titles and
descriptions from the backend, and these are (often) translated.
Your application can do the same - just pass on the translations from
the backends (remember to use the sane-backends domain for gettext).
Obviously messages from your application you will have to translate
yourself.
Post by Jeff SadowskiOr would it be better to do a google translate for the languages? I
can add tables for translating the common options if need be.
NOOOOOOO! Google translate is excellent for getting the gist of
something written in a language you don't understand, but the
translations are almost always really horrible.
The standard method for translating applications in C, Perl, etc. is to
mark the strings. Tradition dictates an underscore, e.g. _"string to be
translated" but sane-backends uses SANE_I18N (e.g.
https://anonscm.debian.org/cgit/sane/sane-backends.git/tree/backend/fujitsu.c,
line 3097).
PHP uses a similar method:
http://php.net/manual/en/function.gettext.php
So having appropriately marked your strings, gettext will extract them
into a .pot file, which you can give to your translators (I use rosetta
on launchpad), and you get a .po file for each language with the
appropriate translations (or not).
You convert the .po files to .mo files when you build the application
and install them to the appropriate place, and Bob should be your uncle.
It all works for me. The strings specific to gscan2pdf I have had
translated as above, and I fetch the backend strings from the
sane-backend domain.
Regards
Jeff