README 5.76 KB
Newer Older
Tobias Quathamer's avatar
Tobias Quathamer committed
1 2 3 4
iso-codes
=========
<http://pkg-isocodes.alioth.debian.org/>

5 6 7
This package provides lists of various ISO standards (e.g. country,
language, language scripts, and currency names) in one place, rather
than repeated in many programs throughout the system.
Tobias Quathamer's avatar
Tobias Quathamer committed
8

9 10 11 12
Currently there are lists of languages and countries embedded in
several different programs, which leads to dozens of lists of
200 languages, translated into more than 30 languages ... not
very efficient.
Alastair McKinstry's avatar
Alastair McKinstry committed
13

14 15 16 17 18 19 20
With this package, we create a single "gettext domain" for every
supported ISO standard which contains the translations of
that domain. It is easy for a programmer to re-use those
translations instead of maintaining their own translation
infrastructure. Moreover, the programmer does not need to follow
changes in the ISO standard and will not work with outdated
information.
Alastair McKinstry's avatar
Alastair McKinstry committed
21

22 23
To use this translation infrastructure, the programmer just needs
to call dgettext() in their program.
Alastair McKinstry's avatar
Alastair McKinstry committed
24

25 26 27 28
Example:
    dgettext("iso_639", "French")
will return the translation for "French", depending on the
current locale.
Alastair McKinstry's avatar
Alastair McKinstry committed
29

30 31 32
Furthermore, this package provides the ISO standards as XML files
to be used by other applications as well. All those XML files
are stored in the directory "/usr/share/xml/iso-codes".
Alastair McKinstry's avatar
Alastair McKinstry committed
33 34


35 36
NEWS: iso_3166.tab and iso_639.tab removed
==========================================
37

38 39 40 41
Please note that the plain text tabular files "iso_3166.tab" and
"iso_639.tab" have been removed from the directory /usr/share/iso-codes.
If you need that specific format, you can easily regenerate those
files. Install the package isoquery and run the following commands:
42 43 44

$ isoquery | cut -f 1,4 | sort > iso_3166.tab

45 46 47 48 49
$ isoquery --iso=639 | \
  sed -e "s/\t\t/\tXX\t/" | \
  awk -F"\t" '{print $2"\t"$1"\t"$3"\t"$4}' | \
  sort > iso_639.tab

50 51 52 53
See the output of "isoquery --help" or "man isoquery" for more
information and usage examples.


54 55
ISO 3166
========
Alastair McKinstry's avatar
Alastair McKinstry committed
56

57 58 59 60
This lists the 2-letter country code and "short" country name. The
official ISO 3166 maintenance agency is ISO. The gettext domain is
"iso_3166".
<http://www.iso.org/iso/country_codes>
Alastair McKinstry's avatar
Alastair McKinstry committed
61 62


63 64
ISO 639
=======
Alastair McKinstry's avatar
Alastair McKinstry committed
65

66
This lists the 2-letter and 3-letter language codes and language
67 68 69 70 71 72 73 74 75 76 77 78
names. The official ISO 639 maintenance agency is the Library of
Congress. The gettext domain is "iso_639".
<http://www.loc.gov/standards/iso639-2/>


ISO 639-3
=========

This is a further development of ISO 639-2, see above. All codes
of ISO 639-2 are included in ISO 639-3. ISO 639-3 attempts to
provide as complete an enumeration of languages as possible,
including living, extinct, ancient, and constructed languages,
79
whether major or minor, written or unwritten. The gettext
80 81 82 83 84 85 86
domain is "iso_639_3". The official ISO 639-3 maintenance agency
is SIL International.
<http://www.sil.org/iso639-3/>


ISO 4217
========
87

88 89 90 91
This lists the currency codes and names. The official ISO 4217
maintenance agency is the British Standards Institution. The
gettext domain is "iso_4217".
<http://www.bsi-global.com/en/Standards-and-Publications/Industry-Sectors/Services/BSI-Currency-Code-Service/>
92

93

94 95 96 97 98 99 100
ISO 15924
=========

This lists the language scripts names. The official ISO 15924
maintenance agency is the Unicode Consortium. The gettext
domain is "iso_15924".
<http://unicode.org/iso15924/>
101

Alastair McKinstry's avatar
Alastair McKinstry committed
102

103 104
ISO 3166-2
==========
Alastair McKinstry's avatar
Alastair McKinstry committed
105 106 107

The ISO 3166 standard includes a "Country Subdivision Code",
giving a code for the names of the principal administrative
108 109 110 111
subdivisions of the countries coded in ISO 3166. The official
ISO 3166-2 maintenance agency is ISO. The gettext domain is
"iso_3166_2".
<http://www.iso.org/iso/country_codes/background_on_iso_3166/iso_3166-2.htm>
Alastair McKinstry's avatar
Alastair McKinstry committed
112 113


114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135
Tracking updates to the various ISO standards
=============================================

Below is a list of websites we use to check for updates to the
standards. Please note that ISO 4217 is missing, because the BSI
does not provide a list of changes.

ISO 3166 and ISO 3166-2:
http://www.iso.org/iso/country_codes/check_what_s_new.htm
http://www.iso.org/iso/country_codes/updates_on_iso_3166.htm
http://www.iso.org/iso/en/prods-services/iso3166ma/02iso-3166-code-lists/list-en1-semic.txt

ISO-639:
http://www.loc.gov/standards/iso639-2/php/code_changes.php

ISO 639-3:
http://www.sil.org/iso639-3/codes.asp?order=639_3&letter=%25

ISO-15924:
http://unicode.org/iso15924/codechanges.html


136 137
Adding or updating translations
===============================
138

139 140 141 142 143 144 145
You can send your translation as a bug report against the package
iso-codes to the Debian Bug Tracking System. You can either send an email
or use the tool reportbug. More details are on this website:

  <http://bugs.debian.org/>

Another way to send in a translation is using the Translation
146 147 148 149 150 151 152 153 154 155
Project (TP). You can find more information about it on their
website:

  <http://www.translationproject.org/>


Reporting a bug
===============

If you find a bug in iso-codes, there are several ways to contact us.
156 157 158 159 160 161 162 163 164 165 166 167 168 169

* Alioth Bug Tracking System
  <https://alioth.debian.org/tracker/?atid=413077&group_id=30316>
  This system can be accessed via webbrowser.

* Debian Bug Tracking System
  <http://bugs.debian.org/>
  This system can be accessed via e-mail.

* Development mailing list
  <mailto:pkg-isocodes-devel@lists.alioth.debian.org>
  You can subscribe or unsubscribe at this webpage:
  <http://lists.alioth.debian.org/mailman/listinfo/pkg-isocodes-devel>

Alastair McKinstry's avatar
Alastair McKinstry committed
170

171 172 173 174 175 176
Developing using pkgconfig
==========================

A pkgconfig file has been included to aid developing with this
package. You can detect the prefix where the translations have
been placed using
Alastair McKinstry's avatar
Alastair McKinstry committed
177 178 179 180

$ pkg-config --variable=prefix iso-codes
/usr

181
You can detect which gettext domains have been installed using
Alastair McKinstry's avatar
Alastair McKinstry committed
182
$ pkg-config --variable=domains iso-codes
183
iso_15924 iso_3166 iso_4217 iso_639 iso_3166_2 iso_639_3
Alastair McKinstry's avatar
Alastair McKinstry committed
184 185


186
-- 
Alastair McKinstry's avatar
Alastair McKinstry committed
187
Alastair McKinstry, <mckinstry@debian.org>, 2003-12-24
188
Christian Perrier, <bubulle@debian.org>, 2007-09-09
189
Tobias Quathamer, <toddy@debian.org>, 2008-01-22