Notes on the Free Translation Project
*************************************
Free software is going international! The Free Translation Project
is a way to get maintainers of free software, translators, and users all
together, so that will gradually become able to speak many languages.
A few packages already provide translations for their messages.
If you found this `ABOUT-NLS' file inside a distribution, you may
assume that the distributed package does use GNU `gettext' internally,
itself available at your nearest GNU archive site. But you do *not*
need to install GNU `gettext' prior to configuring, installing or using
this package with messages translated.
Installers will find here some useful hints. These notes also
explain how users should proceed for getting the programs to use the
available translations. They tell how people wanting to contribute and
work at translations should contact the appropriate team.
When reporting bugs in the `intl/' directory or bugs which may be
related to internationalization, you should tell about the version of
`gettext' which is used. The information can be found in the
`intl/VERSION' file, in internationalized packages.
One advise in advance
=====================
If you want to exploit the full power of internationalization, you
should configure it using
./configure --with-included-gettext
to force usage of internationalizing routines provided within this
package, despite the existence of internationalizing capabilities in the
operating system where this package is being installed. So far, only
the `gettext' implementation in the GNU C library version 2 provides as
many features (such as locale alias or message inheritance) as the
implementation here. It is also not possible to offer this additional
functionality on top of a `catgets' implementation. Future versions of
GNU `gettext' will very likely convey even more functionality. So it
might be a good idea to change to GNU `gettext' as soon as possible.
So you need not provide this option if you are using GNU libc 2 or
you have installed a recent copy of the GNU gettext package with the
included `libintl'.
INSTALL Matters
===============
Some packages are "localizable" when properly installed; the
programs they contain can be made to speak your own native language.
Most such packages use GNU `gettext'. Other packages have their own
ways to internationalization, predating GNU `gettext'.
By default, this package will be installed to allow translation of
messages. It will automatically detect whether the system provides
usable `catgets' (if using this is selected by the installer) or
`gettext' functions. If neither is available, the GNU `gettext' own
library will be used. This library is wholly contained within this
package, usually in the `intl/' subdirectory, so prior installation of
the GNU `gettext' package is *not* required. Installers may use
special options at configuration time for changing the default
behaviour. The commands:
./configure --with-included-gettext
./configure --with-catgets
./configure --disable-nls
will respectively bypass any pre-existing `catgets' or `gettext' to use
the internationalizing routines provided within this package, enable
the use of the `catgets' functions (if found on the locale system), or
else, *totally* disable translation of messages.
When you already have GNU `gettext' installed on your system and run
configure without an option for your new package, `configure' will
probably detect the previously built and installed `libintl.a' file and
will decide to use this. This might be not what is desirable. You
should use the more recent version of the GNU `gettext' library. I.e.
if the file `intl/VERSION' shows that the library which comes with this
package is more recent, you should use
./configure --with-included-gettext
to prevent auto-detection.
By default the configuration process will not test for the `catgets'
function and therefore they will not be used. The reasons are already
given above: the emulation on top of `catgets' cannot provide all the
extensions provided by the GNU `gettext' library. If you nevertheless
want to use the `catgets' functions use
./configure --with-catgets
to enable the test for `catgets' (this causes no harm if `catgets' is
not available on your system). If you really select this option we
would like to hear about the reasons because we cannot think of any
good one ourself.
Internationalized packages have usually many `po/LL.po' files, where
LL gives an ISO 639 two-letter code identifying the language. Unless
translations have been forbidden at `configure' time by using the
`--disable-nls' switch, all available translations are installed
together with the package. However, the environment variable `LINGUAS'
may be set, prior to configuration, to limit the installed set.
`LINGUAS' should then contain a space separated list of two-letter
codes, stating which languages are allowed.
Using This Package
==================
As a user, if your language has been installed for this package, you
only have to set the `LANG' environment variable to the appropriate
ISO 639 `LL' two-letter code prior to using the programs in the
package. For example, let's suppose that you speak German. At the
shell prompt, merely execute `setenv LANG de' (in `csh'),
`export LANG; LANG=de' (in `sh') or `export LANG=de' (in `bash'). This
can be done from your `.login' or `.profile' file, once and for all.
An operating system might already offer message localization for
many of its programs, while other programs have been installed locally
with the full capabilities of GNU `gettext'. Just using `gettext'
extended syntax for `LANG' would break proper localization of already
available operating system programs. In this case, users should set
both `LANGUAGE' and `LANG' variables in their environment, as programs
using GNU `gettext' give preference to `LANGUAGE'. For example, some
Swedish users would rather read translations in German than English for
when Swedish is not available. This is easily accomplished by setting
`LANGUAGE' to `sv:de' while leaving `LANG' to `sv'.
Translating Teams
=================
For the Free Translation Project to be a success, we need interested
people who like their own language and write it well, and who are also
able to synergize with other translators speaking the same language.
Each translation team has its own mailing list, courtesy of Linux
International. You may reach your translation team at the address
`LL@li.org', replacing LL by the two-letter ISO 639 code for your
language. Language codes are *not* the same as the country codes given
in ISO 3166. The following translation teams exist, as of December
1997:
Chinese `zh', Czech `cs', Danish `da', Dutch `nl', English `en',
Esperanto `eo', Finnish `fi', French `fr', German `de', Hungarian
`hu', Irish `ga', Italian `it', Indonesian `id', Japanese `ja',
Korean `ko', Latin `la', Norwegian `no', Persian `fa', Polish
`pl', Portuguese `pt', Russian `ru', Slovenian `sl', Spanish `es',
Swedish `sv', and Turkish `tr'.
For example, you may reach the Chinese translation team by writing to
`zh@li.org'.
If you'd like to volunteer to *work* at translating messages, you
should become a member of the translating team for your own language.
The subscribing address is *not* the same as the list itself, it has
`-request' appended. For example, speakers of Swedish can send a
message to `sv-request@li.org', having this message body:
subscribe
Keep in mind that team members are expected to participate
*actively* in translations, or at solving translational difficulties,
rather than merely lurking around. If your team does not exist yet and
you want to start one, or if you are unsure about what to do or how to
get started, please write to `translation@iro.umontreal.ca' to reach the
coordinator for all translator teams.
The English team is special. It works at improving and uniformizing
the terminology in use. Proven linguistic skill are praised more than
programming skill, here.
Available Packages
==================
Languages are not equally supported in all packages. The following
matrix shows the current state of internationalization, as of December
1997. The matrix shows, in regard of each package, for which languages
PO files have been submitted to translation coordination.
Ready PO files cs da de en es fi fr it ja ko nl no pl pt ru sl sv
.----------------------------------------------------.
bash | [] [] [] | 3
bison | [] [] [] | 3
clisp | [] [] [] [] | 4
cpio | [] [] [] [] [] [] | 6
diffutils | [] [] [] [] [] | 5
enscript | [] [] [] [] [] [] | 6
fileutils | [] [] [] [] [] [] [] [] [] [] | 10
findutils | [] [] [] [] [] [] [] [] [] | 9
flex | [] [] [] [] | 4
gcal | [] [] [] [] [] | 5
gettext | [] [] [] [] [] [] [] [] [] [] [] | 12
grep | [] [] [] [] [] [] [] [] [] [] | 10
hello | [] [] [] [] [] [] [] [] [] [] [] | 11
id-utils | [] [] [] | 3
indent | [] [] [] [] [] | 5
libc | [] [] [] [] [] [] [] | 7
m4 | [] [] [] [] [] [] | 6
make | [] [] [] [] [] [] | 6
music | [] [] | 2
ptx | [] [] [] [] [] [] [] [] | 8
recode | [] [] [] [] [] [] [] [] [] | 9
sh-utils | [] [] [] [] [] [] [] [] | 8
sharutils | [] [] [] [] [] [] | 6
tar | [] [] [] [] [] [] [] [] [] [] [] | 11
texinfo | [] [] [] | 3
textutils | [] [] [] [] [] [] [] [] [] | 9
wdiff | [] [] [] [] [] [] [] [] | 8
`----------------------------------------------------'
17 languages cs da de en es fi fr it ja ko nl no pl pt ru sl sv
27 packages 6 4 25 1 18 1 26 2 1 12 20 9 19 7 4 7 17 179
Some counters in the preceding matrix are higher than the number of
visible blocks let us expect. This is because a few extra PO files are
used for implementing regional variants of languages, or language
dialects.
For a PO file in the matrix above to be effective, the package to
which it applies should also have been internationalized and
distributed as such by its maintainer. There might be an observable
lag between the mere existence a PO file and its wide availability in a
distribution.
If December 1997 seems to be old, you may fetch a more recent copy
of this `ABOUT-NLS' file on most GNU archive sites.
nsertions'>+56
* | pass meeting boolean for gnome_calendar_edit_object and | JP Rosevear | 2002-02-08 | 15 | -100/+212 |
* | Bumped the required version of gal. | Christopher James Lahey | 2002-02-07 | 3 | -67/+85 |
* | convert months from 1-12 to 0-11. Fixes bug #19235. | Damon Chaplin | 2002-02-07 | 2 | -0/+11 |
* | new gui routines for conduit settings (e_todo_gui_fill_config): ditto | JP Rosevear | 2002-02-05 | 2 | -6/+88 |
* | if this is a reply, print the attendee status | JP Rosevear | 2002-01-31 | 2 | -0/+39 |
* | Use 1 instead of zero as the minimum value for the repetitions spin button | Federico Mena Quintero | 2002-01-26 | 2 | -1/+8 |
* | Ooops. Forgot to use EVOLUTION_CALENDAR_LIBS here. | Ettore Perazzoli | 2002-01-25 | 2 | -1/+6 |
* | Clean up some of the Makefiles so we dont' link every library multiple | Ettore Perazzoli | 2002-01-25 | 10 | -68/+45 |
* | Pass a NULL @icon to | Ettore Perazzoli | 2002-01-24 | 3 | -8/+13 |
* | Buffers Files Tools Edit Search Mule Help | JP Rosevear | 2002-01-22 | 3 | -11/+31 |
* | save the alarm string in the correct variable (str), so it actually gets | Damon Chaplin | 2002-01-18 | 2 | -2/+7 |
* | default component classification to PUBLIC. Fixes internal bug #1066 | Rodrigo Moya | 2002-01-17 | 2 | -3/+10 |
* | move all functions here, get rid of header files, use e-pilot-settings to | JP Rosevear | 2002-01-15 | 11 | -568/+509 |
* | use icaltimetype_to_tm | JP Rosevear | 2002-01-15 | 2 | -7/+5 |
* | figure out when today is and highlight if it is not selected | JP Rosevear | 2002-01-15 | 4 | -3/+30 |
* | add protos | JP Rosevear | 2002-01-14 | 4 | -21/+164 |
* | translate timezone names when displayed. Fixes bug #6544. | Damon Chaplin | 2002-01-12 | 4 | -15/+59 |
* | new verb callback (sensitize_commands): set sensitivity of mark complete | JP Rosevear | 2002-01-04 | 6 | -3/+79 |
* | only need one warning message now | JP Rosevear | 2002-01-04 | 3 | -46/+14 |
* | confirm expunging of the tasks (tasks_control_expunge_cmd): verb callback | JP Rosevear | 2002-01-03 | 11 | -822/+302 |
* | remove needs send signal related cruft (save_comp_with_send): with | JP Rosevear | 2001-12-22 | 8 | -59/+58 |
* | inherit from bonobo window | 1 | 2001-12-21 | 3 | -34/+58 |
* | -- Merge fix for #17377 from the evolution-1-0-branch. | Ettore Perazzoli | 2001-12-20 | 2 | -0/+9 |
* | go slow and clear the map if the last uri and the current uri do not match | JP Rosevear | 2001-12-19 | 10 | -77/+243 |
* | use get_real_item (get_refresh_options): uncomment out (get_real_item): | JP Rosevear | 2001-12-18 | 4 | -41/+151 |
* | new file to contain all timezone names for translation. We won't be using | Damon Chaplin | 2001-12-14 | 3 | -0/+393 |
* | ungrab the pointer before calling e_day_view_finish_long_event_resize | JP Rosevear | 2001-12-13 | 3 | -9/+50 |
* | properly convert the dtstart and dtend times if they are UTC (cursor_cb): | JP Rosevear | 2001-12-12 | 4 | -38/+97 |
* | removed code that connects to GnomeCalendar's "dates_shown_changed" | Damon Chaplin | 2001-12-11 | 3 | -10/+24 |
* | fixed executable name. Fixes bug #16880. | Damon Chaplin | 2001-12-11 | 2 | -1/+6 |
* | if we have an alarm that can be represented on the pilot, set the | JP Rosevear | 2001-12-09 | 3 | -14/+137 |
* | s/%/%s | Rodrigo Moya | 2001-12-08 | 2 | -2/+7 |
* | (committed by Damon) | Federico Mena Quintero | 2001-12-08 | 2 | -25/+72 |
* | if the key in the config database does not exist, just return the local | Rodrigo Moya | 2001-12-07 | 2 | -2/+27 |
* | default component classification to PUBLIC | Rodrigo Moya | 2001-12-07 | 2 | -3/+10 |
* | Explicitly destroy the EMeetingModel. This is a hack to work around | Jon Trowbridge | 2001-12-07 | 4 | -0/+28 |
* | added entry for the LOCATION field | Rodrigo Moya | 2001-12-06 | 3 | -2/+82 |
* | Marked strings for translation. | Zbigniew Chyla | 2001-12-06 | 2 | -13/+21 |
* | make sure we call e_table_model_pre_change() before changing the model. | Damon Chaplin | 2001-12-04 | 4 | -8/+34 |
* | disabled 'Alarms', 'End Date' and 'Show Time As' fields, as these are not | Damon Chaplin | 2001-12-04 | 2 | -3/+9 |
* | connect to "cal_set_mode" signal before calling cal_client_set_mode. Also, | Rodrigo Moya | 2001-12-03 | 2 | -7/+13 |
* | only show the dialog if we created it. Hopefully fixes bug #15774. Also | Damon Chaplin | 2001-12-01 | 2 | -3/+27 |
* | Set the category of the new task to that of the search bar. Fixes bug | Federico Mena Quintero | 2001-11-30 | 2 | -0/+9 |
* | fixed typos in translatable strings. Fixes Ximian #15456 | Rodrigo Moya | 2001-11-28 | 3 | -2/+8 |
* | Substituted gnome_font_get_width_string() with gnome_font_get_width_utf8() | Damon Chaplin | 2001-11-15 | 2 | -8/+14 |
* | Convert the buffer to UTF8. (calendar_model_value_to_string): Do not | Federico Mena Quintero | 2001-11-15 | 2 | -2/+10 |
* | #ifdef'ed out the LOCATION field for now, since it wasn't supported | Damon Chaplin | 2001-11-15 | 3 | -0/+16 |
* | don't abort when e_table_selected_count() returns odd values. There seems | Damon Chaplin | 2001-11-15 | 2 | -4/+14 |
* | (committed to CVS by Damon) Fixes bug #15137. | Federico Mena Quintero | 2001-11-15 | 3 | -13/+144 |
* | remove silly debug warning | JP Rosevear | 2001-11-15 | 2 | -2/+5 |
* | make the timezone default to UTC. Fixes bug #14362. | Damon Chaplin | 2001-11-14 | 5 | -25/+36 |
* | only change the day, month and year for the start date, for not screwing | Rodrigo Moya | 2001-11-13 | 3 | -61/+81 |
* | The last argument to the bonobo_config_get_XXX_with_default() is a | Federico Mena Quintero | 2001-11-12 | 2 | -14/+15 |
* | recurrence expansion callback for free/busy (create_user_free_busy): | JP Rosevear | 2001-11-12 | 2 | -18/+51 |
* | new protos | JP Rosevear | 2001-11-12 | 4 | -20/+68 |
* | don't subtract a day from DTEND. For DATE values we don't include the | Damon Chaplin | 2001-11-10 | 2 | -2/+6 |
* | fix buffer overflow. Fixes bug #10285 (the printing of lines & dates in | Damon Chaplin | 2001-11-10 | 2 | -1/+7 |
* | Convert strings to GTK+ encoding. (meeting_page_destroy): Free allocated | Chyla Zbigniew | 2001-11-10 | 2 | -2/+12 |
* | don't let an empty event occur for all days when auto scrolling | JP Rosevear | 2001-11-09 | 2 | -0/+16 |
* | don't leak the string returned by cal_component_get_as_string nor the | Rodrigo Moya | 2001-11-09 | 2 | -1/+14 |
* | don't add the item, remove it if declining (in case it was added before) | JP Rosevear | 2001-11-08 | 2 | -4/+9 |
* | Convert generated string to UTF-8. | Chyla Zbigniew | 2001-11-08 | 2 | -1/+6 |
* | emit changed signal (e_meeting_time_selector_on_end_time_changed): emit | JP Rosevear | 2001-11-08 | 2 | -18/+60 |
* | make sure to remove all attendees from the model when we edit a new comp, | JP Rosevear | 2001-11-07 | 4 | -10/+34 |
* | <ettore> ok so <ettore> should I build this tarball again? ettore doesn't | Dan Winship | 2001-11-06 | 3 | -1/+8 |
* | add a changed signal (e_meeting_time_selector_construct): emit changed | JP Rosevear | 2001-11-06 | 6 | -73/+194 |
* | removed ';' in the wrong place. Fixes bug #14421. | Damon Chaplin | 2001-11-06 | 2 | -1/+6 |
* | -export-dynamic for libglade custom widget. | Dan Winship | 2001-11-05 | 2 | -0/+7 |
* | use TZID from the builtin timezone, instead of using the location name. | Damon Chaplin | 2001-11-05 | 2 | -1/+10 |
* | Short-circuit the calculation of the repeat time if there are zero | Federico Mena Quintero | 2001-11-03 | 2 | -4/+14 |
* | Argh, missing commit from yesterday to fix building of the tarball. | Ettore Perazzoli | 2001-11-02 | 1 | -1/+1 |
* | Added rules to generate `Evolution-Addressbook-SelectNames.h'. | Ettore Perazzoli | 2001-11-01 | 2 | -18/+40 |
* | #include <string.h> | Federico Mena Quintero | 2001-10-31 | 2 | -0/+5 |
* | If a query is not in progress, just retag the whole thing. An event may | Federico Mena Quintero | 2001-10-31 | 3 | -41/+67 |
* | Fix bug #13723. | Federico Mena Quintero | 2001-10-31 | 6 | -90/+495 |
* | Make the pre_changes and changes match here. | Christopher James Lahey | 2001-10-31 | 2 | -0/+7 |
* | send as mixed rather than alternative | JP Rosevear | 2001-10-31 | 2 | -1/+6 |
* | Removed. (KEY_NUM_CALENDARS_TO_LOAD): New key, containing the number of | Ettore Perazzoli | 2001-10-31 | 2 | -64/+42 |
* | disconnect signals added in append_page(). Fixes Gtk-Critical warning | Damon Chaplin | 2001-10-31 | 2 | -0/+11 |
* | set a body for the message | JP Rosevear | 2001-10-31 | 2 | -1/+11 |
* | call GNOME_Evolution_Composer_setMultipartType to get a | Dan Winship | 2001-10-31 | 2 | -0/+12 |
* | Revert. | JP Rosevear | 2001-10-31 | 1 | -12/+1 |
* | don't overwrite memory (e_meeting_time_selector_on_end_time_changed): | JP Rosevear | 2001-10-31 | 3 | -3/+27 |
* | return NULL if passed NULL. Should fix bug #14048. | Damon Chaplin | 2001-10-31 | 2 | -0/+8 |
* | Do not ignore the exceptions of the cases that do not have defaults. | Federico Mena Quintero | 2001-10-31 | 2 | -3/+29 |
* | if we are doing all day stuff, make the drag increment 1 day at a time | JP Rosevear | 2001-10-31 | 2 | -7/+21 |
* | Add _() to a string that was missing it. | Federico Mena Quintero | 2001-10-31 | 2 | -1/+6 |
* | Commit the ETable click-to-add for if the dialog is being destroyed. | Federico Mena Quintero | 2001-10-31 | 2 | -1/+29 |
* | Allocate enough space for the string! (was missing the null terminator) | Federico Mena Quintero | 2001-10-31 | 2 | -2/+8 |
* | move in whole day increments if we are in all day mode | JP Rosevear | 2001-10-31 | 5 | -43/+65 |
* | s/BONOBO_HTML_GNOME_LIBS/BONOBO_HTML_GNOME_CFLAGS/ | Dan Winship | 2001-10-31 | 2 | -2/+6 |
* | Oops. | JP Rosevear | 2001-10-31 | 1 | -1/+29 |
* | count the actual attendees (doesn't include people delegating | JP Rosevear | 2001-10-31 | 5 | -20/+108 |
* | set to the default timezone for DATE values, in case the user switches to | Damon Chaplin | 2001-10-30 | 2 | -10/+14 |
* | handle DATE values for Start and Due dates. | Damon Chaplin | 2001-10-30 | 2 | -30/+64 |
* | updated code to handle DATE values. | Damon Chaplin | 2001-10-30 | 11 | -58/+156 |
* | Fix bug #10016. | Federico Mena Quintero | 2001-10-30 | 4 | -151/+153 |
* | Use an EMessageBox instead of a gnome_dialog_question so that the label | Federico Mena Quintero | 2001-10-30 | 13 | -89/+433 |
* | process an individual section here (select_names_ok_cb): call above | JP Rosevear | 2001-10-30 | 3 | -84/+123 |
* | Require gal 0.15.99.8 | Joe Shaw | 2001-10-30 | 6 | -6/+6 |
* | use libical-evolution.la | Damon Chaplin | 2001-10-30 | 11 | -33/+96 |
* | Launch the alarm daemon as soon as the calendar component is started. | Federico Mena Quintero | 2001-10-30 | 2 | -0/+37 |
* | Fix the verb names for the pixmaps in the Edit menu; they were out of | Federico Mena Quintero | 2001-10-30 | 2 | -4/+10 |
* | new function. (dump_backend): new function. | Chris Toshok | 2001-10-30 | 3 | -0/+34 |
* | Fix bug #12163. | Federico Mena Quintero | 2001-10-30 | 4 | -55/+119 |
* | include the header as a source so it gets dist'ed. | JP Rosevear | 2001-10-30 | 2 | -0/+6 |
* | s/BONOBO_CFLAGS/BONOBO_GNOME_CFLAGS/. | Ettore Perazzoli | 2001-10-30 | 2 | -1/+6 |
* | fixed URI construction, which was preventing importing into the root | Rodrigo Moya | 2001-10-30 | 2 | -2/+11 |
* | handle date values | JP Rosevear | 2001-10-30 | 2 | -1/+9 |
* | Forgot this one | Rodrigo Moya | 2001-10-30 | 1 | -1/+1 |
* | added evolution-calendar-importer binary, starting with an iCalendar file | Rodrigo Moya | 2001-10-30 | 7 | -0/+430 |
* | get the management object by id | JP Rosevear | 2001-10-30 | 4 | -3/+10 |
* | new functions for setting and retrieving the default calendar URIs | Rodrigo Moya | 2001-10-30 | 4 | -9/+101 |
* | unref the comp when finished | JP Rosevear | 2001-10-29 | 5 | -21/+14 |
* | added break statements after each case, when setting the classification. | Damon Chaplin | 2001-10-29 | 2 | -0/+12 |
* | removed this function, as we don't need to unref at all the WombatClient | Rodrigo Moya | 2001-10-29 | 2 | -25/+15 |
* | get the tasks directly from the CalendarModel, so we get the filtering & | Damon Chaplin | 2001-10-29 | 8 | -84/+113 |
* | when the week start day is set to Sunday, we have to be careful to make | Damon Chaplin | 2001-10-28 | 7 | -51/+160 |
* | Cancel editing if the user presses Escape. | Federico Mena Quintero | 2001-10-28 | 3 | -0/+75 |
* | More fixing of the license texts. | Ettore Perazzoli | 2001-10-28 | 2 | -18/+18 |
* | Delete appointments with empty summaries. Fixes Ximian bug #780. | Federico Mena Quintero | 2001-10-28 | 12 | -14/+306 |
* | Fixing the license text. | Ettore Perazzoli | 2001-10-28 |