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.”
When and where will ULS be available
From June 11, 2013 on, ULS has been made available to all Wikimedia wikis:
- 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:
- Wiki projects without interlanguage links will integrate language settings in the personal toolbar next to their user name. This includes the following wikis:
- Wikimedia Commons
- 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.
ULS for editors
You can format fraktur text (script code
Latf), for example, just by specifying font-family in an inline style sheet:
* <span lang=de-Latf style="font-family:UnifrakturMaguntia, serif; ">Fraktur Schrift</span>
The font will automatically be used:
- Fraktur Schrift
NB: the required font name may be different from the font's file name. For example:
font-family: 'Taamey Frank CLM', serif; is required to use the font TaameyFrankCLM.
Q: does this work in MediaWiki style sheets?
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.