Page MenuHomePhabricator

Armenian key mapping can be improved
Closed, ResolvedPublic

Description

Currently ULS uses following keyboard layout for Armenian
http://commons.wikimedia.org/wiki/File:Keyboard_Layout_Armenian.png

The problem with this layout is that it is very, very unpopular (smaller percent of Armenian speakers know it, then let's say English speaker know Dvorak layout).

It was introduced by Microsoft in 2000, never got popular, and in Windows 8, it was deprecated and marked as legacy one.

Most popular, and de-facto standard layout is Armenian phonetic layout, which is significantly different from what we have in ULS at the moment.

As USL is going to be released in 3 days, and this will cause inconvenience/frustration for all users using Armenian.
That's why I put severity as Critical, and if we look through Armenian language perspective only, it is a Blocker.

We need to add following layouts

  • Armenian Eastern Phonetic (should be default, de-facto standard, comes from DOS times, used by 95%)
  • Armenian Western Phonetic (I'm not Western Armenian speaker, but guess it is used by Western Armenian speakers, in Armenian diasporas around the world)
  • Armenian Typewriter (de-jure, official standard, but used by few percent only, as keyboard in Armenian don't have Armenian letters on them)

It would be nice to also include

  • Armenian Eastern Phonetic layout (few letters swap there, to have more frequent letters, in more convenient places)

This one can be kept, guess it doesn't take much resources.

Now question is, how can I provide you with those layout configurations?

You can use, one from Linux xkb, but they dropped "en dash", for Armenian hyphen, which I believe is against Unicode standard.

You can take first 3 mentioned layouts, from Windows 8. Typewriter there is correct and can be used.

Phonetic there has 2 issues: "<" should be changed with "«", and ">" with "»". Quotes are very frequent in Armenian (any special name, of company, ship, product, etc.. should be quoted).

I can't comment for Western Phonetic in Windows 8.

Please don't use layouts from other places, as they usually don't follow Unicode standard.

Another question is: Can ULS use modifier-key, e.g. combination of Alt+Key, to insert different chars?
If so it will be very useful, as without it Armenian layout, can't include digits (no space left), and latin punctuation which is important in WikiSyntax (e.g. there's no []{}:<>!, etc).

Unless this is solved, I suggest we disable Armenian input method, not to create a confusion, as I wrote on Siebrand page.
https://meta.wikimedia.org/wiki/User_talk:Siebrand#Can_we_postpone_ULS_release_on_Armenian_wikiprojects.3F


Version: unspecified
Severity: enhancement

Details

Reference
bz50849

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 22 2014, 1:51 AM
bzimport set Reference to bz50849.
bzimport added a subscriber: Unknown Object (MLST).

If you can code JavaScript, you can submit a patch to jquery.ime. See this link:
https://github.com/wikimedia/jquery.ime

There are instructions in the README about how to do it.

And yes, it's possible to use Alt as the modifier key. See the documentation about "extended" keyboards.

Thanks a lot for this info Amir, sounds like a good news :)

I'll submit a tested patch in 36 hours, guess will have time to fix it in prod.

What's the best way to submit a patch for USL? Should I fork it on GitHub, request write access to current project there, or submit files here?

Looks like, we're using GitHub here, so it's different from process described in
http://www.mediawiki.org/wiki/Gerrit/Tutorial

(In reply to comment #2)

Thanks a lot for this info Amir, sounds like a good news :)

I'll submit a tested patch in 36 hours, guess will have time to fix it in
prod.

What's the best way to submit a patch for USL? Should I fork it on GitHub,
request write access to current project there, or submit files here?

jQuery.IME indeed uses a GitHub workflow. Clone the project, and submit a pull request with your changes. Once merged in jQuery.IME, it will be updated in the MediaWiki extension UniversalLanguageSelector.

I've prepared pull request,

https://github.com/wikimedia/jquery.ime/pull/206

Performed lot of manual tests under Firefox, and some under Chromium (Chromium based Comodo Dragon), Opera and IE. Basic functionality works correctly under all of them.
Didn't have same luck with extended chars, they worked only under Firefox for me, with other browsers opening menu, when Alt was pressed. But so were results with other layouts, so I guess, this isn't issue of my changes.

It took longer then I expected, but I hope we'll be able to include this in global release for tomorrow.

Thanks!

(In reply to comment #4)

It took longer then I expected, but I hope we'll be able to include this in
global release for tomorrow.

This cannot go in anymore. Depending on code review, it may go into the next 1.22wmfX release, that's made on Thursday.

As previous pull request contained issues with line ending, and didn't contain tests, I closed it yesterday.

New pull request, with tests, and without new line issues is here:
https://github.com/wikimedia/jquery.ime/pull/210/