After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 150535 - gedit spell checker plugin should use language names and translations from iso 639
gedit spell checker plugin should use language names and translations from is...
Status: RESOLVED FIXED
Product: gedit-plugins
Classification: Other
Component: General
git master
Other All
: Normal normal
: ---
Assigned To: Gedit maintainers
Gedit maintainers
Depends on:
Blocks:
 
 
Reported: 2004-08-19 11:21 UTC by Christian Rose
Modified: 2019-03-23 20:40 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Use iso-639 for language translations (2.85 KB, patch)
2004-12-14 13:28 UTC, Danilo Segan
needs-work Details | Review

Description Christian Rose 2004-08-19 11:21:33 UTC
Currently, there are many language names being used and marked for translation
in the gedit spell checker (plugins/spell/gedit-spell-checker.c).

Marking these language names for translation makes redundant work for
translators -- the language names and their codes are defined in the ISO 639
standard, and there is a special module in the Translation Project that already
contains those language names and the translations of these:
http://www2.iro.umontreal.ca/translation/registry.cgi?domain=iso_639

It would be very helpful for translators if these existing translations from the
iso_639 module could be reused, perhaps by gedit depending on the iso_639 module
in some way, instead of these language names being marked for translation in gedit.
Comment 1 Christian Rose 2004-08-19 11:22:48 UTC
I think this package is called "iso-codes" in Debian, IIRC.
Comment 2 Paolo Maggi 2004-09-22 14:54:09 UTC
As far as you know, is this package already used by other GNOME applications?
i.e.  is it already a dependency for GNOME?
Comment 3 Christian Rose 2004-09-22 23:55:27 UTC
Not that I know of, but I'm not entirely sure.
Danilo, Kjartan, do you know?
Comment 4 Kjartan Maraas 2004-09-23 00:07:14 UTC
I don't think so. At least I don't have anything like it on my fedora system
that I can see...
Comment 5 Carlos Perelló Marín 2004-09-23 10:56:21 UTC
No, it's not (yet) a dependency, I'm planning to add it for GNOME 2.10, btw,
it's a dependency that could be removed (and you will get no translation) is a
set of .po files not a library.
Comment 6 Paolo Maggi 2004-12-13 15:11:09 UTC
Carlos: any news about this new dependency?
Comment 7 Carlos Perelló Marín 2004-12-14 08:40:06 UTC
Not ready yet, it's still a GNOME 2.10 goal in my TODO list.

But you don't need to wait for it, just look for that catalog, if the users have
it installed, they will get names translated if it's not there, they will get
english strings.
Comment 8 Danilo Segan 2004-12-14 13:28:01 UTC
Created attachment 34828 [details] [review]
Use iso-639 for language translations

2004-12-14  Danilo Šegan  <dsegan@gmx.net>

	* spell/gedit-spell-checker.c (gedit_language_to_string): Use
	dgettext to translate language name.
	(known_languages): Remove N_() around language names.
	(get_language_from_abrev): Move declaration before code.

There are several problems with this: iso-639 doesn't contain translations for
things such as "English (British)", "English (American)", "Portuguese (Brasil)"
and similar.

Another issue is that one should probably do 
  bindtextdomain("iso-639", ISOCODES_LOCALEDATA);
with ISOCODES_LOCALEDATA gotten through `pkg-config --variable=prefix
iso-codes` and "share/locale" appended to it.
Comment 9 Christian Persch 2005-02-04 16:46:43 UTC
> There are several problems with this: iso-639 doesn't contain translations for
> things such as "English (British)", "English (American)", "Portuguese (Brasil)"
> and similar.
In Epiphany we use iso-639 domain for the language and iso-3166 domain for the
country part, see src/prefs-dialog.c and lib/ephy-langs.[ch]. We have a list of
codes (like "de", "en-gb", "en-ca" etc.) and construct the display string from that.

+	return g_strdup (dgettext("iso-639", lang->name));
I think the correct domain name is "iso_639".
Comment 10 Paolo Maggi 2006-12-04 00:34:29 UTC
Fixed in the development version. The fix will be available in the next major release. Thank you for your bug report.