This module provides an interface for working with system locales.
A language object is a representation of a natural or constructed language. It can represent a primary language (e.g. English) or a language variation (e.g. Australian English).
Objects of this type are created using the language procedure,
which works as a helper constructor. See the LANGS constant for
instances of language records.
Record fields:
name (string): Full name of the language. For example:
"Español de Colombia".
tag (string): IETF language tag. For example: "ja",
"en", "es-CO", etc.
locale (string): Corresponding UTF-8 locale name for the
language. For example: "en_AU.utf8" (note that locale names vary
from system to system).
date-format (string): Optional format used in the language to
write dates. For example "~B ~d, ~Y", which would result in
dates such as "April 15, 2016" for English locales.
The format is expressed in the form described in Guile’s
date->string procedure documentation.
If no format is provided at construction time, "~B ~d, ~Y" is
assigned by default.
Undocumented macro.
Undocumented macro.
Undocumented macro.
Undocumented macro.
Undocumented macro.
Activate localization (l10n) for your program.
Calling this procedure will make your program use the locale specified
in the environment, and look for translations for the given
domain in the catalogs available in the given directory
(dir).
This procedure is equivalent to running the following code, which is the
standard way to initialize locale data for gettext operations:
(setlocale LC_ALL "") (textdomain DOMAIN) (bindtextdomain DOMAIN LOCALE_DIRECTORY)
See the gettext manual for more information about localization.
Specification:
domain (string): The name of the gettext translation domain for your program.
dir (string): Absolute path to the directory that contains the
translation catalogs for the given domain.
Example:
> (activate-l10n "myapp" "/home/jane/myapp/locale") "/home/jane/myapp/locale"
Set the environment locale to the indicated language.
When the locale is changed, internationalized code run after the change
will be localized to the language specified by lang-tag.
Specification:
lang-tag (string): IETF language tag. For example:
"ja", "es", "en-CA", etc.
Result: The environment variable LANGUAGE is set to a
UTF-8 locale. So, if lang-tag is "es-CO", the locale is
set to es_CO.utf8.
Return a date format string for the language with lang-tag in the
list.
Specification:
lang-tag (string): IETF language tag. For example:
"ja", "es", "en-CA", etc.
lol (list of language): List of <language> records. See
(aux locale) module for more information on language records, and
for a predefined list of languages (the LANGS variable).
Return value (string): A format string used in the language to
write dates nicely. For example, "~B ~d, ~Y", which would result
in dates such as "April 15, 2016". The format string is
expressed in the same format used by Guile’s date->string
procedure.
If the lang-tag is not found in the list of languages, "~B
~d, ~Y" is returned by default.
Return a <language> record with the given attributes.
Specification: See the definition of the record type <language>.
Example:
> (language #:name "Canadian English" #:tag "en-CA" #:locale "en_CA.utf8") #<<language> name: "Canadian English" tag: "en-CA" locale: "en_CA.utf8" date-format: "~B ~d, ~Y">
Return the name of the language with lang-tag in the list.
Specification:
lang-tag (string): IETF language tag. For example:
"ja", "es", "en-CA", etc.
lol (list of language): List of <language> records. See
(aux locale) module for more information on language records, and
for a predefined list of languages (the LANGS variable).
Return value (string): Human-readable name of the language. For example: Español, Australian English, 日本語, etc.
If the language tag is not found in the list of languages, an empty string is returned by default.
(#<<language> name: "Afrikaans" tag: "af" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "አማርኛ" tag: "am" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Аҧсшәа" tag: "ab" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "العربية" tag: "ar" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Aragonés" tag: "an" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "অসমীয়া" tag: "as" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Avañe'ẽ" tag: "gn" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Авар" tag: "av" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Aymar aru" tag: "ay" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Azərbaycanca" tag: "az" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "বাংলা" tag: "bn" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Башҡортса" tag: "ba" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Беларуская" tag: "be" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Български" tag: "bg" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Bosanski" tag: "bs" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Brezhoneg" tag: "br" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Català" tag: "ca" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Чӑвашла" tag: "cv" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Čeština" tag: "cs" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ChiShona" tag: "sn" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Cymraeg" tag: "cy" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Dansk" tag: "da" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Deutsch" tag: "de" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ދިވެހިބަސް" tag: "dv" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Diné bizaad" tag: "nv" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Eesti" tag: "et" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Ελληνικά" tag: "el" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "English" tag: "en" locale: "en_US.UTF-8" date-format: "~B ~d, ~Y"> #<<language> name: "Español" tag: "es" locale: "es_ES.UTF-8" date-format: "~B ~d, ~Y"> #<<language> name: "Εsperanto" tag: "eo" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Euskara" tag: "eu" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "فارسی" tag: "fa" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Føroyskt" tag: "fo" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Français" tag: "fr" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Frysk" tag: "fy" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Gaeilge" tag: "ga" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Gaelg" tag: "gv" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Gàidhlig" tag: "gd" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Galego" tag: "gl" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ગુજરાતી" tag: "gu" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "한국어" tag: "ko" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Hausa" tag: "ha" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Hawai`i" tag: "haw" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Հայերեն" tag: "hy" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "हिन्दी" tag: "hi" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Hrvatski" tag: "hr" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Ido" tag: "io" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Igbo" tag: "ig" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Bahasa Indonesia" tag: "id" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Interlingua" tag: "ia" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Interlingue" tag: "ie" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ᐃᓄᒃᑎᑐᑦ/inuktitut" tag: "iu" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Ирон" tag: "os" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Íslenska" tag: "is" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Italiano" tag: "it" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "עברית" tag: "he" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Basa Jawa" tag: "jv" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Kalaallisut" tag: "kl" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ქართული" tag: "ka" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Қазақша" tag: "kk" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Kernowek" tag: "kw" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Kinyarwanda" tag: "rw" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Kiswahili" tag: "sw" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Коми" tag: "kv" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Kongo" tag: "kg" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Kreyòl ayisyen" tag: "ht" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Kurdî" tag: "ku" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Кыргызча" tag: "ky" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ລາວ" tag: "lo" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Latina" tag: "la" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Latviešu" tag: "lv" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Lëtzebuergesch" tag: "lb" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Lietuvių" tag: "lt" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Limburgs" tag: "li" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Lingála" tag: "ln" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Magyar" tag: "hu" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Македонски" tag: "mk" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Malagasy" tag: "mg" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "മലയാളം" tag: "ml" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Malti" tag: "mt" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "मराठी" tag: "mr" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Bahasa Melayu" tag: "ms" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Монгол" tag: "mn" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Dorerin Naoero" tag: "na" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Nederlands" tag: "nl" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "नेपाली" tag: "ne" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "日本語" tag: "ja" locale: "ja_JP.UTF-8" date-format: "~Y年~B~e日"> #<<language> name: "Нохчийн" tag: "ce" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Norsk bokmål" tag: "no" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Norsk nynorsk" tag: "nn" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Occitan" tag: "oc" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ଓଡ଼ିଆ" tag: "or" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Oʻzbekcha/ўзбекча" tag: "uz" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ਪੰਜਾਬੀ" tag: "pa" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "پښتو" tag: "ps" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Polski" tag: "pl" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Português" tag: "pt" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Română" tag: "ro" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Rumantsch" tag: "rm" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Runa Simi" tag: "qu" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Русский" tag: "ru" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Sámegiella" tag: "se" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "संस्कृतम्" tag: "sa" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Sardu" tag: "sc" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Sesotho" tag: "st" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Shqip" tag: "sq" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "සිංහල" tag: "si" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Slovenčina" tag: "sk" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Slovenščina" tag: "sl" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Словѣньскъ / ⰔⰎⰑⰂⰡⰐⰠⰔⰍⰟ" tag: "cu" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Soomaaliga" tag: "so" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Српски / srpski" tag: "sr" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Srpskohrvatski / српскохрватски" tag: "sh" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Basa Sunda" tag: "su" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Suomi" tag: "fi" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Svenska" tag: "sv" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Tagalog" tag: "tl" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "தமிழ்" tag: "ta" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Татарча/tatarça" tag: "tt" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ไทย" tag: "th" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Тоҷикӣ" tag: "tg" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Türkçe" tag: "tr" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Türkmençe" tag: "tk" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Українська" tag: "uk" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "اردو" tag: "ur" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ئۇيغۇرچە / Uyghurche" tag: "ug" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Vahcuengh" tag: "za" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Tiếng Việt" tag: "vi" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Volapük" tag: "vo" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Walon" tag: "wa" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Wolof" tag: "wo" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "ייִדיש" tag: "yi" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "Yorùbá" tag: "yo" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "粵語" tag: "zh-yue" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "中文" tag: "zh" locale: "en_US.utf8" date-format: "~B ~d, ~Y"> #<<language> name: "中文" tag: "zh" locale: "en_US.utf8" date-format: "~B ~d, ~Y">)