m17n library (and db) 1.3 supports input method description and icons.
Since it improves usability with low support cost, we should do it on uim 1.1.0.
- short description for uim
minput_get_description() returns the full description of each *.mim files.
Their first line is a summary and seems to be used for short-desc of uim after
stripped optional period (and of course newline and the rest).
- input method icons
m17n-db 1.3 has the icons for each input method. Since the filename is
identical to corresponding input method ID, uim can use them as follows.
It should be symlinks to follow updates of original icons. Adding
install-time $(LN_S) handling with uim-sh and m17nlib.scm in
pixmaps/Makefile.am will help filename handlings.
I've modified m17n-lib related code on r3476.
Could you try if it works, YamaKen?
Oops, try r3478.
I've found one problem until now.
m17n-ko-han2 has the description with Korean character with UTF-8, and this
seems to break uim's helper message.
Hmm... dropping descriptions that contain non-ASCII char seems reasonable
workaround for now.
And another problem, my m17n-lib 1.3.0 causes SEGV on minput_get_description()
for latn-post IM. I'm going to inspect it.
From the ChaneLog of m17n-lib-1.3.3/src,
(minput_get_description) : If the input method has no description, be sure
to return NULL.
This has been changed after release of 1.3.0. So we should change the version
requirement to 1.3.1.
I'm not sure why m17n-lib treats latin-post as "no-description" IM.
m17n-lib 1.3.3 resolved the SEGV. So all we have to do in our code is dropping
the non-ASCII descriptions.
And we should report the message problem of ko-han2 and period-lacking summary
sentences of vi-vni and syrc-phonetic. And how to translate the summary
OK. I've just replaced non-ascii part with space. But ko-han2's short
description on loader.scm is just a ordinary UTF-8 string, why can't uim handle
them in the indication's leaf?
Anyway I'll report the lacking of period of some descriptions tomorrow.
For the translation, I have no idea about that.
Please substitute ENTIRE description with the message "An input method provided
by the m17n library" instead of erasing non-ASCII char fragments only.
The short-description string SHOULD NOT be a non-English (and thus non-ASCII)
string since the translation responsibility is delegated to its receivers.
Suppose the action-based IM switcher menu. It contains the short-descs of
various language. If message sender-side translation is allowed, the descs
cannot be translated to user-specified locale.
And a technical problem is also existing. Current libuim implementation treats
language and character encodings by per-context basis. On the per-context
interface, a helper-message suffers automatic encoding conversion based on the
encoding of its originator context. It means that a EUC-JP context such as
uim-anthy cannot be capable of an UTF-8 short-desc on ITS OWN action-based IM
Although the encoding treatment and automatic conversion of libuim obviously
have a design problem, now is not the time to restructure.
Now I understand your intention to avoid non English words on the short desc.
Thanks for the explanation. I've update the code in r3482.
Anyway, do you have any idea to translate m17n IM's description?
The lacking period problem and short-desc translation is going to be resolved by
m17n-lib. See the message thread of the URL.
And because m17n-lib support for 1.3.3 is done by r3483, this bug is closed
until the short-desc API has been supported by m17n-lib. Reopen once supported.