I am creating a chart of features a user may want for a (new) language in Wikimedia projects. I would like to invite you to fill in the underlying technologies and policies that enable them or prevent from using them.
There are also other features not listed, for example relating to missing or confusing language codes etc.
| **Feature** | ** Project ** | **Dependencies** |
| Switch UI language with the Universal Language Selector | Wikimedia projects / MediaWiki | [[ https://meta.wikimedia.org/wiki/Language_proposal_policy | Request for new language ]] + Translate interface in #Translatewiki.net + Translate [[ https://translatewiki.net/w/i.php?title=Special:Translate&group=core-0-mostused | MediaWiki (most important messages)(MUST BE 100% DONE) ]] + [[ https://translatewiki.net/w/i.php?title=Special:Translate&group=ext-wikibase-client | Wikibase - Client (at least one message) ]] + [[ https://translatewiki.net/w/i.php?title=Special:Translate&group=ext-wikibase-repo | Wikibase - Repo (at least one message) ]]. |
| Display user interface in the language | | |
| Write articles in the language in Wikipedia | Wikipedia | Own language Wikipedia > The language must ordinarily have a valid ISO 639 1–3 code + The language must be sufficiently unique + The language of the proposal has a sufficient number of fluent users to form a viable contributor community + Active test project in Incubator + Continuing effort to translate the MediaWiki interface. (Generally excluded are fictional languages, proto-language reconstructions, regional dialects, different written forms of the same language and languages having neither an ISO 639 code nor a BCP 47 tag.)|
| Write articles in the language without own Wikipedia | No Wikipedia | Incubator > Valid ISO 639 language code + Approval by the Language Committee. Alternatively join another related language Wikipedia. How is it done, what are the shortcomings?
| Use Content Translation to translate to/from language for the articles | Wikipedia | Requires language wiki, Incubator does not qualify. Also [[ http://translate.keeleleek.ee/wiki/Esileht | MinorityTranslate ]] works with existing Wikipedia projects. |
| Reference the articles in Wikidata | Wikidata | Language Wikipedia, Incubator does not qualify |
| Be able to add captions to Wikimedia Commons media | Wikimedia Commons / SDC | defined in language-data + (CLDR or mediawiki CLDR extension) + (names.php or wmgExtraLanguageNames) |
| Be able to display translations templates using i18n in Wikimedia Commons | Wikimedia Commons | |
|Wikimedia Commons category page language selectors | Wikimedia Commons | Gadget which uses wpAvailableLanguages variable defined in [[ https://commons.wikimedia.org/wiki/MediaWiki:Common.js | mediawiki:common.js ]]
| Add labels, descriptions and aliases (termbox) in the language in Wikidata | Wikidata | Request enabling the language for localisation on #Translatewiki.net > Language defined in language-data + (CLDR or mediawiki CLDR extension) + (names.php or wmgExtraLanguageNames) |
| Add statements with the “monolingual text” datatype in Wikidata | Wikidata | Information about the language: The language code (exactly which?), language name English or native, script used, context (time and place), Wikidata item. Requirements: Valid IETF language tag, required for an actual use-case on Wikidata, but it does not need an active community or amount of usage or denote a unique language (macrolanguages allowed). Data is stored in WikibaseContentLanguages.php whitelist for for just saving data without autocomplete|
| Autocomplete functionality in Wikidata | Wikidata | |
| Use third party tools such as TABernacle in the language | MediaWiki / Wikidata / Wikibase etc. (API, other?) | |
| Access language content via the API | API | defined in language-data + (CLDR or mediawiki CLDR extension) + (names.php or wmgExtraLanguageNames) |
| A language with no ISO 639 should be added | Wikidata | |
| A language with no orthography should be added | Wikidata | |
| Access language content from other wikis using Lua: mw.wikibase.getLabelByLang('Q581920', 'sms') | Wikidata / Wikibase | |
Definitions
- [[ https://github.com/wikimedia/language-data/blob/master/data/langdb.yaml | language-data ]] - required for [[ https://www.mediawiki.org/wiki/Universal_Language_Selector | Universal Language Selector ]]
- [[http://cldr.unicode.org/ | CLDR = cldr.unicode.org]] - Unicode Common Locale Data Repository
- [[ https://www.mediawiki.org/wiki/Extension:CLDR | mediawiki CLRD extension ]] - for languages which cannot be added to cldr.unicode.org
- [[https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/core/+/master/languages/data/Names.php | Names.php]] - core
- [[https://noc.wikimedia.org/conf/highlight.php?file=InitialiseSettings.php|wmgExtraLanguageNames]] - InitialiseSettings.php - for languages which cannot be added to Names.php
- [[https://gerrit.wikimedia.org/r/plugins/gitiles/mediawiki/extensions/Wikibase/+/master/lib/includes/WikibaseContentLanguages.php | WikibaseContentLanguages.php]] - Wikibase - monolingual whitelist for languages which cannot be added to Names.php or wmgExtraLanguageNames