Universal Translator is an i18n Translator for Go/Golang using CLDR data + pluralization rules
Why another i18n library?Because none of the plural rules seem to be correct out there, including the previous implementation of this package, so I took it upon myself to create locales for everyone to use; this package is a thin wrapper around locales in order to store and translate text for use in your applications.
FeaturesUse go get
go get github.com/go-playground/universal-translator
Usage & Documentation
Please see https://godoc.org/github.com/go-playground/universal-translator for usage docs
Examples: File formattingAll types, Plain substitution, Cardinal, Ordinal and Range translations can all be contained within the same file(s); they are only separated for easy viewing.
Examples: Basic MakeupNOTE: not all fields are needed for all translation types, see examples
{
"locale": "en",
"key": "days-left",
"trans": "You have {0} day left.",
"type": "Cardinal",
"rule": "One",
"override": false
}
Field Description locale The locale for which the translation is for. key The translation key that will be used to store and lookup each translation; normally it is a string or integer. trans The actual translation text. type The type of translation Cardinal, Ordinal, Range or "" for a plain substitution(not required to be defined if plain used) rule The plural rule for which the translation is for eg. One, Two, Few, Many or Other.(not required to be defined if plain used) override If you wish to override an existing translation that has already been registered, set this to 'true'. 99% of the time there is no need to define it. Help With Tests
To anyone interesting in helping or contributing, I sure could use some help creating tests for each language. Please see issue here for details.
LicenseDistributed under MIT License, please see license file in code for more details.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4