1.2.15 • Published 1 year ago

@kollorg/laudantium-fuga v1.2.15

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Build Status npm version Maintainability Test Coverage

i18n-iso-languages

i18n for ISO 639 language codes. We support Alpha-2, Alpha-3 B and T codes from https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes

This packages is heavily based on i18n-iso-countries.

We intent to keep the interface of i18n-iso-languages as close as possible to i18n-iso-countries.

Installing

Install it using npm: npm install @kollorg/laudantium-fuga

If used in a browser environment, you will need to manually install the local you wish to support.

var languages = require("@kollorg/laudantium-fuga");

// Support german & english languages.
languages.registerLocale(require("@kollorg/laudantium-fuga/langs/en.json"));
languages.registerLocale(require("@kollorg/laudantium-fuga/langs/de.json"));

Code to Language

Get the name of a language by it's ISO 639-1 (Alpha-2), ISO 639-2/T or B (Alpha-3) code

var languages = require("@kollorg/laudantium-fuga");
console.log("de (639-1/Alpha-2) => " + languages.getName("de", "en")); // German
console.log("en (639-1/Alpha-2) => " + languages.getName("de", "de")); // Deutsch
console.log("de (639-2T/Alpha-3) => " + languages.getName("deu", "en")); // German
console.log("de (639-2B/Alpha-3) => " + languages.getName("ger", "en")); // German

Get all names by their ISO 639-1 code

var languages = require("@kollorg/laudantium-fuga");
console.log(languages.getNames("en")); // { 'ab': 'Abkhazian', 'aa': 'Afar', [...], 'za': 'Zhuang', 'zu': 'Zulu' }

Supported languages (ISO 639-1)

List of ISO 639-1 codes

Language to Code

var languages = require("@kollorg/laudantium-fuga");
console.log("German => " + languages.getAlpha2Code('German', 'en'));
// German => de

console.log("German => " + languages.getAlpha3TCode('German', 'en'));
// German => deu

console.log("German => " + languages.getAlpha3BCode('German', 'en'));
// German => ger

Codes

Convert ISO 639-2 (Alpha-3) to ISO 639-1 (Alpha-2) code

var languages = require("@kollorg/laudantium-fuga");
console.log("deu (Alpha-3) => " + languages.alpha3ToAlpha2("deu") + " (Alpha-2)");
// deu (Alpha-3 T) => de (Alpha-2)

var languages = require("@kollorg/laudantium-fuga");
console.log("ger (Alpha-3 B) => " + languages.alpha3ToAlpha2("ger") + " (Alpha-2)");
// ger (Alpha-3 B) => de (Alpha-2)

Convert ISO 639-1 (Alpha-2) to ISO 639-2 (Alpha-3) code

var languages = require("@kollorg/laudantium-fuga");
console.log("de (Alpha-2) => " + languages.alpha2ToAlpha3T("de") + " (Alpha-3 T)");
// de (Alpha-2) => deu (Alpha-3 T)

var languages = require("@kollorg/laudantium-fuga");
console.log("de (Alpha-2) => " + languages.alpha2ToAlpha3B("de") + " (Alpha-3 B)");
// de (Alpha-2) => ger (Alpha-3 B)

Get all ISO 639-1 (Alpha-2) codes

var languages = require("@kollorg/laudantium-fuga");
console.log(languages.getAlpha2Codes());
// { 'aa': 'aar', 'ab': 'abk', [...], 'za': 'zha', 'zu': 'zul' }

Get all ISO 639-2 (Alpha-3) codes

var languages = require("@kollorg/laudantium-fuga");
console.log(languages.getAlpha3TCodes());
// { 'aar': 'aa', 'abk': 'ab', [...], 'zha': 'za', 'zul': 'zu' }

var languages = require("@kollorg/laudantium-fuga");
console.log(languages.getAlpha3BCodes());
// { 'aar': 'aa', 'abk': 'ab', [...], 'zha': 'za', 'zul': 'zu' }

Validate language code

var languages = require("@kollorg/laudantium-fuga");
console.log(languages.isValid("de"), languages.isValid("ger"), languages.isValid("xx")));
// true, true, false

Contribution

To add a language:

  • add a json file under langs/ (in alphabetical order)
  • add the language to the data object in enty-node.js at the top (in alphabetical order)
  • add language to section Supported languages in README.md (in alphabetical order)
  • add language to keywords in package.json (in alphabetical order)
  • add language to the "unreleased" section of the changelog
  • run npm install && make test to make sure that tests are passing
  • open a PR on GitHub

Please do not change the version in package.json, package-lock.json or changelog.md.

touchsidelruECMAScript 2017Observablees5sliceslothigher-ordervalueregexcolumnnamescurriedECMAScript 2021optimistqueuedirectorygroupBysource mapspinnereslintcolourgetintrinsiccore-jskeyselbjsonschemarmtypesposemergeidcircularfastifyeventDispatchertakefprestloggerfunctionsforkconsolefullwidthStreamatomshrinkwrapmatchescss-in-jscall-boundAsyncIteratorawesomesauceUnderscorestringifierimportendpointtacitES2020SymbolpicomatchoptiontraversechineseUint32Arraysafebrowserlistconfigurablereact-hooksfile systemsortpostcssspinnersdatejsxECMAScript 5ignoreworkflowcloudfrontsyntaxerrortextbyteLengthtypescriptstarterECMAScript 2018mapplugines2015typesafespectypefindLastutilsextratransformfunctionaljson-schemafolderdeepclonefast-deep-cloneRFC-6455autoscalingcurlidleES2023tapsymbolsserializecharactersreal-timedynamodbinstallerreversecallboundruleseslintconfigstringhookformeslint-pluginArray.prototype.containscssECMAScript 2019regular expressionsfast-copyArrayBuffer#sliceforEach[[Prototype]]toolkitnegativerssfnmatchfigletprefixArray.prototype.findLastIndexwalkingmulti-packagerequestinvariantlibphonenumbernpmwidthpurepipeyupprivatesymlinkssymbolObject.definePropertyreactflattenoffsetglobal this valuegetPushcoerciblerecursiveString.prototype.matchAlldataviewbounddescriptorsbindparseimportexportlogapolloexecuterapidframer_.extendpropertyfind-upbuffersprunerangeerrorfunction.lengtheventsinternal slotMicrosoftloadbalancingpath3dYAMLObject.isclassnamenodewhatwgeventEmitterutil.inspectcloneclassesObject.entriesrdsserializationmkdirpschemaa11ycode pointsES2017monorepoasyncfantasy-landacornconfigtransportRegExp#flagslockfileURLwaapiBigUint64Arrayrm -frstyled-componentspackage managersameValueZerosnsmanagerenvES5urlfast-clonebinfromsetPrototypeOfjoiviewexpressenvironmentcreatejsonmruinferenceObservablesES3channelreuserouting6to5RegExp.prototype.flagsargumenterroruser-streamsprettyflags3cachepinoramdaURLSearchParamshttpsserializerdropupassertsstringifytyped arraymoduleslookmochatoArrayFloat32Arrayreduxinscheme-validationRxstreamsfunction
1.2.15

1 year ago

1.2.14

1 year ago

1.2.13

1 year ago

1.2.12

1 year ago

1.2.11

1 year ago

1.2.10

1 year ago

1.2.9

1 year ago

1.2.8

1 year ago

1.2.7

1 year ago

1.1.7

1 year ago

1.1.6

1 year ago

1.1.5

1 year ago

1.1.4

1 year ago

1.1.3

1 year ago

1.1.2

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago