ISOQUERY(1)

NAME
isoquery - search and display various ISO codes (country, language, …)

SYNOPSIS

isoquery [OPTION …] [ISO codes]

DESCRIPTION

This manual page documents briefly the isoquery command. It can be used to generate a tabular output of the ISO standard codes provided by the package iso-codes. It parses the JSON files and shows all included ISO codes or just matching entries, if specified on the command line. Moreover, it’s possible to get all available translations for the ISO standard.

OPTIONS

This program follows the usual GNU command line syntax, with long options starting with two dashes ('-'). isoquery supports the following options:

-i, --iso=STANDARD
    The ISO standard to use. Possible values: 639-2, 639-3, 639-5, 3166-1, 3166-2, 3166-3, 4217, 15924 (default: 3166-1)

-p, --pathname=PATHNAME
    Use PATHNAME as prefix for the data files (default: /usr/share/iso-codes/json)

-l, --locale=LOCALE
    Use this LOCALE for output

-n, --name
    Name for the supplied codes (default)

-o, --official_name
    Official name for the supplied codes. This may be the same as --name (only applies to ISO 3166-1)

-c, --common_name
    Common name for the supplied codes. This may be the same as --name (only applies to ISO 639-2, 639-3, and 3166-1)

-0, --null
    Separate entries with a NULL character instead of newline

-f, --flag
    Show country flags with regional indicator symbol letters (only applies to ISO 3166-1)

-h, --help
    Show summary of options

-v, --version
    Show program version and copyright

EXAMPLES

If called without any command line options, isoquery will print a table of all ISO 3166-1 codes. The first three columns contain the alpha-2 code, the alpha-3 code, and the numerical code assigned to the country listed in the fourth column.

    $ isoquery
    AW      ABW     533     Aruba
    […]
    ZW      ZWE     716     Zimbabwe

If you need only some countries, you can specify any of the codes in the first three columns to cut down the output.

    $ isoquery so nor 484
    SO      SOM     706     Somalia
    NO      NOR     578     Norway
    MX      MEX     484     Mexico

Should you need the translations of the countries' names, just specify in which LOCALE you’d like to see the output. Please note that the original English name will be shown if there is no translation available for the specified LOCALE.

    $ isoquery --locale=nl fr de es
    FR      FRA     250     Frankrijk
    DE      DEU     276     Duitsland
    ES      ESP     724     Spanje

If your terminal supports the unicode regional indicator symbol letters, you can use the --flag command line option. Those letters can be displayed as a country flag.

    $ isoquery --flag --locale=nl fr de es
    FR      FRA     250     🇫🇷      Frankrijk
    DE      DEU     276     🇩🇪      Duitsland
    ES      ESP     724     🇪🇸      Spanje

All of the above works for different ISO standards as well, so you can switch to the more extensive standard ISO 3166-2 by using the --iso command line option. The columns are ISO 3166-2 code, subset type (e.g. State, Province, etc.), parent, and name. The third column (parent) may be empty.

    $ isoquery --iso=3166-2
    AD-02   Parish          Canillo
    […]
    ZW-MW   Province        Mashonaland West

Codes which have been deleted from ISO 3166-1 are available in ISO 3166-3. The columns are alpha-3 code, alpha-4 code, numeric code, comment, withdrawal date, and name. The columns for numeric code, comment, and withdrawal date may be empty.

    $ isoquery --iso=3166-3
    AFI     AIDJ    262             1977    French Afars and Issas
    ANT     ANHH    532             1993-07-12      Netherlands Antilles
    […]
    YUG     YUCS    891             1993-07-28      Yugoslavia, Socialist Federal Republic of
    ZAR     ZRCD    180             1997-07-14      Zaire, Republic of

For ISO 639-2, the first three columns are the alpha-3 code, the bibliographic code, and the alpha-2 code. The second and third columns may be empty.

    $ isoquery --iso=639-2
    aar             aa      Afar
    abk             ab      Abkhazian
    ace                     Achinese
    […]
    zun                     Zuni
    zxx                     No linguistic content; Not applicable
    zza                     Zaza; Dimili; Dimli; Kirdki; Kirmanjki; Zazaki

You can trim down the results by specifying only some codes. Moreover, the option to get translated names is also available.

    $ isoquery --iso=639-2 --locale=pt vi bo kl
    vie             vi      Vietnamita
    bod     tib     bo      tibetano
    kal             kl      Kalaallisut; Greenlandic

If you want to use ISO 639-3, the displayed columns are alpha-3, scope, type, alpha-2, bibliographic, and the language name. Both alpha-2 and bibliographic may be empty.

    $ isoquery -i 639-3 aal new spa guc
    aal     I       L                       Afade
    new     I       L                       Newari
    spa     I       L       es              Spanish
    guc     I       L                       Wayuu

ISO 639-5 is also available. The displayed columns are alpha-3 and name.

    $ isoquery -i 639-5 aus tut
    aus     Australian languages
    tut     Altaic languages

You can get selected translations of currency names from the ISO 4217 standard by using the following command. The first of the columns is the alpha-3 code, and the second one is the numerical code assigned to the currency. The name of the currency is shown in the third column.

    $ isoquery --iso=4217 --locale=da cad 392
    CAD     124     Canadisk dollar
    JPY     392     Yen

If you need to get script names, you can use the ISO 15924 table. The first of the columns is the alpha-4 code, and the second one is the numerical code assigned to the script. The name of the script is shown in the third column.

    $ isoquery --iso=15924 jpan latn 280
    Jpan    413     Japanese (alias for Han + Hiragana + Katakana)
    Latn    215     Latin
    Visp    280     Visible Speech

FILES

By default, the JSON files provided by the iso-codes package will be used.

    • /usr/share/iso-codes/json/iso_639-2.json

    • /usr/share/iso-codes/json/iso_639-3.json

    • /usr/share/iso-codes/json/iso_639-5.json

    • /usr/share/iso-codes/json/iso_3166-1.json

    • /usr/share/iso-codes/json/iso_3166-2.json

    • /usr/share/iso-codes/json/iso_3166-3.json

    • /usr/share/iso-codes/json/iso_4217.json

    • /usr/share/iso-codes/json/iso_15924.json

AUTHOR

Dr. Tobias Quathamer