Babel user information
wa-N Cist uzeu est on cåzant natif do walon.
es-N Esta persona tiene una comprensión nativa del español.
fr-N Cet utilisateur a pour langue maternelle le français.
ca-2 Aquest usuari té un coneixement mitjà de català.
en-2 This user has intermediate knowledge of English.
This user helps translating MediaWiki.
This user has made at least
2 500 contributions.
Users by language

Thoughts on BiDi

Imho one of the biggest problems is when browsing a LTR (or RTL) wiki while using a RTL (or LTR) language for the interface (eg: uselang=xx).

IMHO, there should be a distinction between:

  1. the interface: everything here should follow the directionality of the user requested interface language (eg: uselang=xx)
  2. the content: that depends on the wiki language.

The content is:

  1. what is created with the wiki text you edit
  2. the page title
  3. the TOC (but not the word "index" or similar)

CSS data dealing with directionality (eg: text-align) is currently split in two CSS files, one for ltr, one for rtl. It has to be split in 4:

  • rtl
    1. data
    2. layout
  • ltr
    1. data
    2. layout

my patch

I add a new id=realContent and put a "div" with it and dir= and lang= according to wiki language around real content; all the rest inherits the default dir= and lang= as specified by the user interface.

The TOC title ("Index", Mediawiki:toc) and the "hide", "show", "edit" strings from the TOC and section headers should ideally be in user lnaguage. However, due to caching, that doesn't work very well, eg:

  • if a user A with uselang=de goes to page XXXXX, those will be in German
  • then a user B with uselang=fr goes to same page XXXXX, the interface will be in French, but the toc title, "hide", "show", "edit" will be... in German, cause the previously cached page.

for that reason, it is still not done in the patch

There is also another thing outside "realContent" that must follow wiki content, the main title (firstHeading), when it is page title. For that, in the patch I use local wiki language for namespaces other than "Special" and only for actions "view" and "history" (as for other actions there is translated text appearing, eg for "edit" it is "Editing $1" (with the real page title in "$1")

I did also a lot of wfMsgForContent -> wfMsg, wgContLang -> wgLang changes; still to do: find all the places where such changes made sense.

The rtl CSS of monobook is split in two separate files, one for user language rtl, the other for wiki content in rtl; maybe other skins should have similar splitting (or maybe is it possible to put into *.css files conditions? eg define different things in the same *.css file, say for "li", if it appears in RTL or LTR context.

To test

(put some intersting links here)

To do/bugs

  • lists made from QueryPage.php (eg: Orphaned articles, Articles without wiki links, etc) need to have article names wrapped around span like others (eg: Category lists, etc)
  • Special:Userlogin uses a template that doesn't seem to be able tu use data from SkinTemplate.php?
  • Special:Preferences nested fieldset display wrongly in RTL mode under Gecko (firefox, galeon).
    • suggestion: make them non-nested when user lang is RTL?