Universal Language Selector/mni

The Universal Language Selector extension (ULS) provides a flexible way to configure and deliver language settings like interface language, fonts, and input methods (keyboard mappings). This will allow users to type text in different languages not directly supported by their keyboard, read content in a script for which fonts are not available locally, or customize the language in which menus are displayed.

This functionality was partially provided by Narayam and WebFonts Extensions on some wikis. The ULS replaces those extensions and will be available in all Wikimedia projects for all users (logged-in and anonymous). More project specific details later.

The functionality provided is listed below:


 * Language settings panel. Main entry point to configure language tools. It can be accessed from the inter-language list on the sidebar, or at the personal toolbar for wikis lacking inter-language links.
 * User interface language adjustments. User can change the language in which the UI is provided regardless of the content language. At the moment, UI customization is only provided for logged-in users.
 * Font selection. Web fonts are provided for non-latin scripts so that users can display content in those languages without installing local fonts. Users can select alternative fonts or decide to use their local fonts if they are available.
 * Input method configuration. Users lacking a keyboard for a particular script can still write in that script by using input mappings. Hindi users with a QWERTY keyboard can write “प” by typing “pa” when Hindi input method is enabled.
 * Input method contextual menu. Options for switching between languages and keyboard mappings are provided next to each active input element. Users can easily combine English, International Phonetic Alphabet and Russian when writing about Moscow on English Wikipedia: “Moscow (/ˈmɒskaʊ/ or /ˈmɒskoʊ/; Russian: Москва, tr. Moskva; IPA: [mɐˈskva]) is the capital city and the most populous federal subject of Russia.”







How to access ULS

 * Wiki projects with multiple language versions will integrate language settings in the existing language related area used for interlanguage links. This includes all language versions of:
 * Wikipedia
 * Wikibooks
 * Wikiversity
 * Wiktionary
 * Wikiquote
 * Wikivoyage
 * Wikinews
 * Wikisource


 * Wiki projects without interlanguage links will integrate language settings in the personal toolbar next to their user name. This includes the following wikis:
 * Wikidata
 * Wikimedia Commons
 * Wikispecies
 * MediaWiki.org
 * Meta-Wiki
 * Wikimedia Incubator



Limitations in functionality
The selection of user interface language will be only available for logged-in users (why?). For English Wikipedia, the input method contextual menu will be disabled by default. Regardless of the initial state of input methods, users can always enable or disable them for any wiki.

Webfonts
You can enable webfonts by opening the ULS interface (by clicking on the gear icon) and then Fonts -> Download fonts when needed. See Universal Language Selector/WebFonts for more information.

More information


Answers to some common queries about the Universal Language Selector can be found in the FAQ page. You can leave feedback at the talk page.

You can also see Interaction Design and Technical Design of this project.

Most development is part of the general libraries for the Milkshake project (see for GitHub repository information and so on).

See also Upcoming development plan.