iso-639-3 v3.0.1
iso-639-3
Info on ISO 639-3.
Contents
What is this?
This package contains info on ISO 639-3. ISO 639-3 is a set of codes that defines three letter identifiers for all known human languages, whether living, extinct, ancient, historic, or constructed.
When should I use this?
You can use this package any time you have to deal with languages or ISO 639-3 in particular.
Install
This package is ESM only. In Node.js (version 12.20+, 14.14+, or 16.0+), install with npm:
npm install iso-639-3In Deno with Skypack:
import {iso6393} from 'https://cdn.skypack.dev/iso-639-3@3?dts'In browsers with Skypack:
<script type="module">
import {iso6393} from 'https://cdn.skypack.dev/iso-639-3@3?min'
</script>Use
import {iso6393} from 'iso-639-3'
console.log(iso6393.slice(1820, 1830))Yields:
[
{name: 'En', type: 'living', scope: 'individual', iso6393: 'enc'},
{name: 'Ende', type: 'living', scope: 'individual', iso6393: 'end'},
{name: 'Forest Enets', type: 'living', scope: 'individual', iso6393: 'enf'},
{
name: 'English',
type: 'living',
scope: 'individual',
iso6393: 'eng',
iso6392B: 'eng',
iso6392T: 'eng',
iso6391: 'en'
},
{name: 'Tundra Enets', type: 'living', scope: 'individual', iso6393: 'enh'},
{name: 'Enlhet', type: 'living', scope: 'individual', iso6393: 'enl'},
{
name: 'Middle English (1100-1500)',
type: 'historical',
scope: 'individual',
iso6393: 'enm',
iso6392B: 'enm',
iso6392T: 'enm'
},
{name: 'Engenni', type: 'living', scope: 'individual', iso6393: 'enn'},
{name: 'Enggano', type: 'living', scope: 'individual', iso6393: 'eno'},
{name: 'Enga', type: 'living', scope: 'individual', iso6393: 'enq'}
]API
This package exports the following identifiers: iso6393, iso6393To1,
iso6393To2B, and iso6393To2T.
There is no default export.
iso6393
List of Languages (Array<Language>).
Language
Object representing a language:
name(string) — name (example:'English')type(string) —Type(example:'living')scope(string) —Scope(example:'individual')iso6393(string) — ISO 639-3 code (example:'eng')iso6392B(string?) — ISO 639-2 (bibliographic) code (example:'eng')iso6392T(string?) — ISO 639-2 (terminologic) code (example:'eng')iso6391(string?) — ISO 639-1 code — ISO 639-1 code (example:'en')
Type
Category of a language:
'living'— currently spoken language (example:nhiforZacatlán-Ahuacatlán-Tepetzintla Nahuatl)'historical'— extinct language distinct from modern languages that descended from it (example:ofsforOld Frisian)'extinct'— language that went extinct recently (example:rbpforBarababaraba)'ancient'— language that went extinct long ago (example:gotforGothic)'constructed'— artificial languages, excluding programming languages (example:epoforEsperanto)'special'— non-language codes (example:undforUndetermined)
Scope
Scope of a language:
'individual'— normal, single language (example:engforEnglish)'macrolanguage'— one-to-many grouping of languages, because older ISO 639s included them (example:araforArabic)'special'— non-language codes (example:undforUndetermined)
iso6393To1
Map of ISO 639-3 codes to ISO 639-1 codes (Record<string, string>).
iso6393To2B
Map of ISO 639-3 codes to bibliographic ISO 639-2 codes
(Record<string, string>).
iso6393To2T
Map of ISO 639-3 codes to terminologic ISO 639-2 codes
(Record<string, string>).
Types
This package is fully typed with TypeScript.
Compatibility
This package is at least compatible with all maintained versions of Node.js. As of now, that is Node.js 12.20+, 14.14+, and 16.0+. It also works in Deno and modern browsers.
Security
This package is safe.
Related
bcp-47— Parse and serialize BCP 47 language tagsbcp-47-match— Match BCP 47 language tags with language ranges per RFC 4647bcp-47-normalize— Normalize, canonicalize, and format BCP 47 tagsiso-3166— ISO 3166 codesiso-639-2— ISO 639-2 codesiso-15924— ISO 15924 codesun-m49— UN M49 codes
Contribute
Yes please! See How to Contribute to Open Source.