Page MenuHomePhabricator

Create input methods for Sami languages
Open, Needs TriagePublic

Description

The normal keyboards used for Sami languages in Norway, Sweden and Finland should be created as input methods in jquery.ime.

Event Timeline

Restricted Application added subscribers: jeblad, Danmichaelo, jhsoby. · View Herald TranscriptAug 8 2018, 4:33 PM
jhsoby-WMNO updated the task description. (Show Details)Aug 8 2018, 4:33 PM
jhsoby-WMNO renamed this task from Create input methods for Northern Sami to Create input methods for Sami languages.Aug 8 2018, 6:37 PM
jhsoby-WMNO updated the task description. (Show Details)
jhsoby-WMNO moved this task from Incoming to Blocked on the WMNO-Sami board.Jan 14 2019, 1:36 PM
Yupik added a subscriber: Yupik.May 18 2019, 8:52 AM

@jhsoby-WMNO : is this issue (T214210) similar to what you're trying to do here?

@Yupik Yes! In fact, I had already uploaded a patch for this on GitHub (see here), but it is not working as intended. I was/am doing this in other "downtime", so I haven't been prioritizing it much.

The main problem for me is that it is not possible (as far as I know) to use the normal modifier keys, e.g. AltGr, to get the special characters. Since that is the method normally used on keyboards in these languages, I was not able to replicate those keyboards fully in jquery.ime, as I intended. Therefore we need some sort of workaround. Many languages use the character ~ as a modifier to tell jquery.ime that the following character should be "special" (e.g. ~NŊ), but since the ~ character is not often used and normally only available as a dead key in Nordic keyboards I would like to figure out a different solution. But I'm not sure what that should be yet. Any ideas?

@Yupik Yes! In fact, I had already uploaded a patch for this on GitHub (see here), but it is not working as intended. I was/am doing this in other "downtime", so I haven't been prioritizing it much.

The main problem for me is that it is not possible (as far as I know) to use the normal modifier keys, e.g. AltGr, to get the special characters.

It's totally possible using patterns_x. However, I cannot wholeheartedly recommended it. It probably works on Firefox on Windows, but I'm not sure about other browsers and operating systems.

Since that is the method normally used on keyboards in these languages, I was not able to replicate those keyboards fully in jquery.ime, as I intended. Therefore we need some sort of workaround. Many languages use the character ~ as a modifier to tell jquery.ime that the following character should be "special" (e.g. ~NŊ), but since the ~ character is not often used and normally only available as a dead key in Nordic keyboards I would like to figure out a different solution. But I'm not sure what that should be yet. Any ideas?

It can be any character. Find any character that conforms to the following conditions:

  • Present on the common keyboard layouts in all the relevant countries (Norway and Finland, right?). And it indeed shouldn't be a dead key.
  • To be on the safe side, it should be also present on the English U.S. keyboard, because it's available on all operating systems without exception.
  • Not used in Wikitext a lot. The tilde, for example, is used in ~~~~ signatures, but this is not a problem for ~NŊ. I wouldn't recommend [ or {, however!

If you can point me to the relevant alphabet lists, I'll be happy to give more advice.

jhsoby-WMNO added a comment.EditedMay 20 2019, 1:03 PM

@Yupik Yes! In fact, I had already uploaded a patch for this on GitHub (see here), but it is not working as intended. I was/am doing this in other "downtime", so I haven't been prioritizing it much.

The main problem for me is that it is not possible (as far as I know) to use the normal modifier keys, e.g. AltGr, to get the special characters.

It's totally possible using patterns_x. However, I cannot wholeheartedly recommended it. It probably works on Firefox on Windows, but I'm not sure about other browsers and operating systems.

Right, when you say it I remember reading something about that. I'll give it a try.

It can be any character. Find any character that conforms to the following conditions:

  • Present on the common keyboard layouts in all the relevant countries (Norway and Finland, right?). And it indeed shouldn't be a dead key.
  • To be on the safe side, it should be also present on the English U.S. keyboard, because it's available on all operating systems without exception.
  • Not used in Wikitext a lot. The tilde, for example, is used in ~~~~ signatures, but this is not a problem for ~NŊ. I wouldn't recommend [ or {, however!

    If you can point me to the relevant alphabet lists, I'll be happy to give more advice.

The special characters are:

  • Northern Sami: á, č, đ, ŋ, š, ŧ and ž (as well as ʒ, ǯ and ǥ for older orthographies)
  • Southern Sami: ï, æ, ö and å (all available natively or with deadkeys on Norwegian keyboards, æ not easily available on Swedish keyboards)
  • Lule Sami: á, ŋ, å and ä
  • Pite Sami: á, đ, ŋ, å and ä
  • Skolt Sami: â, č, ʒ, ǯ, đ, ǧ, ǥ, ǩ, ŋ, õ, š, ž, å and ä (this is the kicker 😜)
  • Inari Sami: â, č, đ, ŋ, š, ž, ä, á

As for character, perhaps \ could work? It would be a bit messy in the code with the need to escape itself, but it's hardly used for anything else in wikicode or in normal writing, and is readily available on both Norwegian, Swedish and Finnish keyboards.

  1. Thanks!
  2. These are richer in special characters than some languages of Africa! Cool as it is for typography geeks like me, I occasionally wonder what were the people who came with orthographies like these thinking to themselves: Were they sincerely trying to make them phonetically precise, or were they trying to make them damn hard to write so that people would just stick to the "bigger" language? ;)

In any case, I'll take a closer look and propose something.

Amire80 added a comment.EditedMay 20 2019, 1:18 PM

How about this system:

áa\/
åa\o
âa\^
äa\:
æa\e
čc\v
đ\d
ǥ\g
ǧg\v
ïi\:
ǩk\v
ŋ\n
öo\:
õo\~ or \o
šs\v
ŧ\t
žz\v
ʒ\z
ǯ\z\v

The idea is:

  • One layout covers all the languages.
  • Very special letters are written as \ and the basic letter: đ, ǥ, ŋ, ŧ, ʒ
  • æ is a\e, which should be straightforward.
  • More conventional diacritical marks are written as \ and a letter or a punctuation mark that is similar to them in shape.

Are /, ^, : easily available on keyboards?

If \~ for õ is problematic, then it can be \o. (Unless õ can come after a, and then it's a problem with å...)

In the Finnish/Swedish keyboard layout \ is produced with AltGr-?, / is produced with Shift-7 and ^ is a dead key on the same button as ¨ but requires shift. : is shift-. as usual, but that is very easy to type compared to the others. Also åäö are readily available as their own keys and øæ with AltGr already. So it really begs the question whether the input methods for US and nordic layouts (if it makes sense to lump them together) should be different.

  1. These are richer in special characters than some languages of Africa! Cool as it is for typography geeks like me, I occasionally wonder what were the people who came with orthographies like these thinking to themselves: Were they sincerely trying to make them phonetically precise, or were they trying to make them damn hard to write so that people would just stick to the "bigger" language? ;)

I can answer this question, because I've asked it of the people involved: they were trying to be consistent :D

Here are the keyboard layouts for five Saami languages showing also the differences between countries and OSs:

http://divvun.no/en/keyboards/desktopindex.html

Yupik moved this task from Incoming to In progress on the WMFI board.May 21 2019, 11:24 AM