[Bug 241783] New: can't type accented characters in certain apps
https://bugzilla.novell.com/show_bug.cgi?id=241783 Summary: can't type accented characters in certain apps Product: openSUSE 10.2 Version: Final Platform: Other OS/Version: Other Status: NEW Severity: Normal Priority: P5 - None Component: GNOME AssignedTo: bnc-team-gnome@forge.provo.novell.com ReportedBy: maw@novell.com QAContact: qa@suse.de Since upgrading to 10.2, I've been unable to type accents in gnome apps, or firefox. However, I can type them in xterm and emacs. I enabled them by going Computer -> Control Center -> Keyboard -> Layout Options. Expand Compose key position, set Right Alt is Compose. Then, to type a with an acute accent, hit Right Alt ' (that's an apostrophe / single-quote), then a. This is a pretty vanilla 10.2 installation, and it wasn't an upgrade, so there are no leftover weird X or GNOME settings from the past. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 danw@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO Info Provider| |maw@novell.com ------- Comment #1 from danw@novell.com 2007-02-05 09:01 MST ------- in a gtk app (not firefox), right click on a GtkEntry and see what's selected in the "Input Methods" submenu (it should be "X Input Method"), and then try switching to whichever of "X Input Method" and "Default" *isn't* selected and see if that helps. do you have any other options set in the Keyboard Layout Options? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 maw@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |ASSIGNED Info Provider|maw@novell.com | ------- Comment #2 from maw@novell.com 2007-02-06 07:58 MST ------- X Input Method was selected. When changed to default, accented characters are again possible. No other options are set in Layout Options. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 danw@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |NEEDINFO Info Provider| |mfabian@novell.com ------- Comment #3 from danw@novell.com 2007-02-06 08:19 MST ------- The easy fix for this would be to revert the default-gtk-input-method patch applied for bug 131498, which the comments there seem to suggest shouldn't be needed any more anyway now that the package selections have been fixed (Mike, is that correct?) (As a side effect, this would also fix bug 208679 in most locales.) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #4 from mfabian@novell.com 2007-02-06 08:54 MST ------- Why would it fix bug #208679? I can reproduce bug #208679 but it happens for me no matter what input method I select. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #5 from mfabian@novell.com 2007-02-06 10:06 MST ------- A workaround for bug #131498 is still needed because unfortunately scim-32bit is *again* missing in openSUSE 10.2! See bug #225749. It is too bad that old bugs appear again and again. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783
mfabian@novell.com changed:
What |Removed |Added
----------------------------------------------------------------------------
Info Provider|mfabian@novell.com |maw@novell.com
------- Comment #6 from mfabian@novell.com 2007-02-06 10:17 MST -------
Michael Wolf> [...] Compose [...]
Michael Wolf> X Input Method was selected. When changed to default,
Michael Wolf> accented characters are again possible.
This is surprising because Compose should work when X Input method is selected
as well.
And it does for me, I just tested this again.
No matter whether scim is installed, running, and used or not, Compose is
working
for me in gedit.
env XMODIFIERS=@im=local GTK_IM_MODULE=xim gedit
uses the Compose support from Xorg.
env XMODIFIERS=@im=SCIM GTK_IM_MODULE=xim gedit
uses the Compose support built into scim.
Both work. The first line should work as well when scim is not installed
and/or not running.
Do you have scim installed?
What is the value of XMODIFIERS and GTK_IM_MODULE in your environment?
→ NEEDINFO Michael Wolf
https://bugzilla.novell.com/show_bug.cgi?id=241783 maw@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |ASSIGNED Info Provider|maw@novell.com | ------- Comment #7 from maw@novell.com 2007-02-06 10:54 MST ------- scim isn't installed. mw@quill:~> echo $XMODIFIERS @im=local $GTK_IM_MODULE isn't set. When I run gedit as in your first example and try to type an accented character, it doesn't work, and the following is sent to stderr: ** (gedit:2441): WARNING **: Error converting text from IM to UTF-8: Invalid byte sequence in conversion input ** (gedit:2441): WARNING **: Error converting text from IM to UTF-8: Invalid byte sequence in conversion input (it is printed twice.) There were two additional changes that I had made and forgotten about; /etc/profile.local sets LANG and LC_COLLATE to C. My apologies for forgetting about this. When I run gedit like this: env XMODIFIERS=@im=local GTK_IM_MODULE=xim LANG=en_US gedit accented characters are possible. So this may all be my fault. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 mfabian@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |mh@novell.com ------- Comment #8 from mfabian@novell.com 2007-02-06 11:40 MST ------- Michael Wolf> /etc/profile.local sets LANG and LC_COLLATE to C I understand that you may want to set LC_COLLATE to C because without that the sort order may be *very* different to the sort oder one is used to from traditional Unix systems. But setting LANG to C is really not necessary anymore. I recommend to stay with the default LANG=en_US.UTF-8 and only set LC_COLLATE=C in addition to that if you want the traditional sort order. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #9 from mfabian@novell.com 2007-02-06 13:49 MST ------- Michael Wolf> So this may all be my fault. Not really. The iso8859-1 Compose file is loaded both by gedit and xterm when run in C locale: mfabian@magellan:/tmp$ env XMODIFIERS=@im=local GTK_IM_MODULE=xim LANG=C strace -eopen -f gedit 2>&1 | grep Compose open("/home/mfabian/.XCompose", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/X11/locale/iso8859-1/Compose", O_RDONLY) = 18 mfabian@magellan:/tmp$ env XMODIFIERS=@im=local GTK_IM_MODULE=xim LANG=C strace -eopen -f xterm 2>&1 | grep Compose open("/home/mfabian/.XCompose", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/X11/locale/iso8859-1/Compose", O_RDONLY) = 6 mfabian@magellan:/tmp$ And in xterm the Compose support works in this case although it doesn't work in gedit. If this can be made to work in xterm, it should be possible to make it work in GTK2 as well. I'm not sure whether it is worth investigating this though, one cannot really expect that non-ASCII stuff works in the C/POSIX locale. He who want's to use á should not expect that this works in C/POSIX. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #10 from mfabian@novell.com 2007-02-06 13:53 MST ------- Michael Wolf> X Input Method was selected. When changed to default, Michael Wolf> accented characters are again possible. That might be because the default input method of GTK2 in your case was "Cedilla" which is an input method similar to Compose but built into GTK2. You can select "Cedilla" as your default GTK2 input method by setting GTK_IM_MODULE="cedilla" in your environment (note that "cedilla" is all lowercase in the environment variable!) -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #11 from maw@novell.com 2007-02-06 14:23 MST ------- (In reply to comment #9)
Michael Wolf> So this may all be my fault.
Not really.
Well, that's good to hear. :) Setting LANG=en_US.UTF-8 and keeping LC_COLLATE=C is perfectly fine with me, so as far as I'm concerned, problem solved. (I often suspect that I am the _only person in the world_ who uses a US keyboard layout but writes sometimes in other languages.) I guess this should be documented on the opensuse wiki in a way that people who don't really understand i18n work. Sadly yet happily, I'm one of those people who don't understand i18n, and would be glad to look over such a document to see whether it's really understandable by i18n laypeople. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #12 from mfabian@novell.com 2007-02-06 14:39 MST ------- Michael Wolf> (I often suspect that I am the _only person in the Michael Wolf> world_ who uses a US keyboard layout but writes Michael Wolf> sometimes in other languages.) I'm using an US keyboard layout as well and I type a lot of German umlauts as well as Japanese. My favorite method for typing German umlauts with the US keyboard is the t-latn-pre input method which is available when scim, scim-m17n, and m17n-lib are installed. This is a bit faster for German than Compose. It works like this: ;;; Input method for Latin script with prefix modifiers. ;;; @image html latn-pre.png ;;; @image latex latn-pre.eps "Examples" width=\narrowwidth ;; | mark | prefix | examples ;; |------------+--------+---------- ;; | acute | ' | 'a -> á, '' -> ´ ;; | grave | ` | `a -> à `` -> ` ;; | circumflex | ^ | ^a -> â ^^ -> ^ ;; | diaeresis | " | "a -> ä "" -> ¨ ;; | tilde | ~ | ~a -> ã ;; | breve | ~ | ~g -> ğ ~` -> ˘ ;; | cedilla | ~ | ~c -> ç ~s -> ş ~~ -> ¸ ;; | caron | ~ | ~z -> ž ~ss -> š ;; | dot above | . / | .g -> ġ /g -> ġ ;; | misc | / | /a -> å /e -> æ /h -> ħ /o -> ø /oe -> œ ;; | misc | " ~ / | "s -> ß ~d -> ð ~t -> þ /a -> å /e -> æ /o -> ø ;; | symbol | ~ | ~> -> » ~< -> « ~! -> ¡ ~? -> ¿ ~~ -> ¸ ~$ -> £ ;; | symbol | ~ | ~- -> ~. -> · ~= -> ¯ ~| -> ¦ ~sss -> § ;; | symbol | _ | _+ -> ± _: -> ÷ _o -> º _a -> ª _y -> ¥ ;; | symbol | ^ | ^1 -> ¹ ^2 -> ² ^3 -> ³ ^r -> ® ^cc -> © ;; | symbol | / | /2 -> ½ /3 -> ¾ /4 -> ¼ /= -> ?¬ ;; | symbol | / | /# -> £ /$ -> ¤ /c -> ¢ /. -> ˙ // -> ° /\ -> × This is from the file /usr/share/m17n/latn-pre.mim, see that file for further translations. This input method is faster for German than Compose because you need only 2 keys to input an Umlaut (e.g. "u translates to ü) whereas you need 3 keys when using Compose. Of course the downside is that you have to type a space after " if you really want to input a ". Same with ~'`/^. That means you will want to turn that input method off when typing for example program code and turn it on only when typing German text. The input method can be easily toggled between on/off with Shift+Space (default keybinding, can be changed). Michael Wolf> I guess this should be documented on the opensuse wiki Michael Wolf> in a way that people who don't really understand i18n Michael Wolf> work. Sadly yet happily, I'm one of those people who Michael Wolf> don't understand i18n, and would be glad to look over Michael Wolf> such a document to see whether it's really Michael Wolf> understandable by i18n laypeople. Yes, documentation is a bit lacking. Nobody who knows this stuff seems to have time to improve the documentation. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #13 from mfabian@novell.com 2007-02-06 15:37 MST ------- Created an attachment (id=117724) --> (https://bugzilla.novell.com/attachment.cgi?id=117724&action=view) bugzilla-241783-use-latin1-for-xim-instead-of-ascii.patch Hackish patch which makes Compose work in C/POSIX locale for GTK2 applications. (limited to ISO-8859-1 characters only). -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #14 from mfabian@novell.com 2007-02-06 15:49 MST ------- When looking at the original code in gtkimcontextxim.c: GtkIMContext * gtk_im_context_xim_new (void) { GtkIMContextXIM *result; const gchar *charset; result = g_object_new (GTK_TYPE_IM_CONTEXT_XIM, NULL); result->locale = g_strdup (setlocale (LC_CTYPE, NULL)); g_get_charset (&charset); result->mb_charset = g_strdup (charset); return GTK_IM_CONTEXT (result); } static char * mb_to_utf8 (GtkIMContextXIM *context_xim, const char *str) { GError *error = NULL; gchar *result; if (strcmp (context_xim->mb_charset, "UTF-8") == 0) result = g_strdup (str); else { result = g_convert (str, -1, "UTF-8", context_xim->mb_charset, NULL, NULL, &error); if (!result) { g_warning ("Error converting text from IM to UTF-8: %s\n", error->message); g_error_free (error); } } return result; } one can see that the charset used to convert *from* into UTF-8 while doing XIM is the charset of the current locale. In case of the C/POSIX locale this is: mfabian@magellan:~$ LC_ALL=C locale charmap ANSI_X3.4-1968 mfabian@magellan:~$ which is another name for ASCII. Of course trying to convert non ASCII characters from ASCII to UTF-8 with the glibc conversion routines will report an error: mfabian@magellan:~$ echo -n á | iconv -f ASCII -t UTF-8 iconv: illegal input sequence at position 0 mfabian@magellan:~$ -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #15 from mfabian@novell.com 2007-02-06 15:52 MST ------- As you can see in comment #9, the Compose file used when running in C locale is the iso8859-1 Compose file. Therefore the patch from comment #13 makes it work for all characters which could possibly work when using Compose in the C locale. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #16 from mfabian@novell.com 2007-02-06 15:58 MST ------- It is probably OK to use such a hack as the patch in comment #13 because no other XIM input method besides Compose will work in C locale anyway and Compose uses a ISO-8859-1 encoded Compose table in that case. I.e. this patch makes this corner case work and most likely has no bad side effects. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 jpr@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |federico@novell.com, zsu@novell.com AssignedTo|bnc-team- |jhargadon@novell.com |gnome@forge.provo.novell.com| Status|ASSIGNED |NEW ------- Comment #17 from jpr@novell.com 2007-02-14 13:53 MST ------- Need a maintenance update for this. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 jpr@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |NEEDINFO Info Provider| |federico@novell.com ------- Comment #18 from jpr@novell.com 2007-02-14 13:53 MST ------- Federico, Zhe Su look ok to you? -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 federico@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEEDINFO |NEW Info Provider|federico@novell.com | ------- Comment #20 from federico@novell.com 2007-02-15 10:50 MST ------- I don't know enough about input methods to see if this is right, but it makes sense. I'd prefer to give it some good internal testing before releasing it to the world. [Running with LANG=C is just wrong, btw. I don't think we should even support it.] -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #21 from mfabian@novell.com 2007-02-16 03:27 MST ------- Federico> [Running with LANG=C is just wrong, btw. I don't think we Federico> should even support it.] Yes, I agree. One cannot really expect non-ASCII stuff to work in C-locale. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 ------- Comment #22 from mfabian@novell.com 2007-02-16 08:56 MST ------- If one wants to be very strict, one can even consider working support for non-ASCII characters in C-locale a bug. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783 maw@novell.com changed: What |Removed |Added ---------------------------------------------------------------------------- AssignedTo|jhargadon@novell.com |maw@novell.com ------- Comment #23 from maw@novell.com 2007-04-11 12:21 MST ------- Reassigning from Joe to me en masse. -- Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are on the CC list for the bug, or are watching someone who is.
https://bugzilla.novell.com/show_bug.cgi?id=241783
User captain.magnus@opensuse.org added comment
https://bugzilla.novell.com/show_bug.cgi?id=241783#c24
Magnus Boman
https://bugzilla.novell.com/show_bug.cgi?id=241783
User maw@novell.com added comment
https://bugzilla.novell.com/show_bug.cgi?id=241783#c25
Michael Wolf
participants (1)
-
bugzilla_noreply@novell.com