Comment 29 for bug 531208

Revision history for this message
In , Jehan-7 (jehan-7) wrote :

Hello everyone,

If none steps in, I am willing to implement such a feature. But first I would need more information before diving into any code, because I want it to be in the right place for the feature to matter.
In particular that would mean that it would be usable in most (if not all) X environments.

Daniel Stone wrote above:
« any 'native x solution' would be in the standard xlib input method, which
both qt and gtk bypass completely ... »

Is it true? If that is true, probably X is not the right place, is it? Also aren't the Xlib Input Method and the X Input Method (XIM) the same thing? Because others claim that KDE uses XIM, so it seems contradictory to me.
Or is there something I missed?
I am not especially a KDE or Gnome user, but I do use them from time to time, depending on circumstances. And in any case, generic and standard is better.

Secondly there is also the set of features which needs to be discussed. Because the code point input method is probably necessary but really user-unfriendly.

Unicode Code Point
===================

ISO-14755 proposes to enter Unicode code point (Gnome supports with ctrl-shift-u, and vim with ctrl-v-u). That's the most extensive solution (whole Unicode supported), but also the more annoying in real life (how many code point do you actually know out of ASCII?).

Function Key Symbols
====================

ISO-14755 again proposes to associate symbols to usual "generic" keyboard keys, like tab, insert, pause, etc. The full list is in ISO-9995-7: http://www.msg.gouv.qc.ca/documents/standards/ISO_9995-7.pdf
That's nice to input easily stuff like arrows, because mnemonics are pretty good. But this is a very limited set of characters.
If we look Unicode charts, they also plan these association (written under a character when there is one, for instance ⇱ is the "home" key):
http://www.unicode.org/charts/PDF/U2190.pdf
I don't know of any system actually supporting this.

Defined Character Mnemonics
===========================

RFC-1345 (http://tools.ietf.org/html/rfc1345) defines a list of mnemonics for a whole bunch of characters. They are good mnemonics and the range of character is big but still I will never remember them all and will always end up checking up the internet list at some point for a character I don't use often.
vim supports these with ctrl-k.

Keywords Input?
================

A kind of input I would really like to see (or to develop) is a word base input. Let's say I want to write a quarter note. I obviously don't remember its code point (2669). I don't know either the mnemonics 'Md' if that's the first time I input it (or it has been a long time since). I'd like to be able to write 'note' and be proposed a significant list of Unicode characters related to notes.
Similar to what anthy (Japanese input method) does when it proposes you Kanjis after you enter a "sound description" in romanji (which then becomes hiragana, and from there kanjis). Except that here we could enter a keyword (searched from the name of the characters probably).

I don't know if there is any RFC/ISO about such a feature, but I could not find one. The closer is the "screen selection entry method" (section 5.3 in ISO-14755) but that's not very detailed.

This is the most user-friendly method. That's also the most bloated if we want to do it right, so I wonder if Xlib is the best place for it. For it to be perfect indeed, name and keywords would be better localized and it could also learn from previous inputs (which characters you use the most when you type "note" is the first proposed, etc.).

I hope this all makes sense.