Accented letters (dead keys) do not work (i.e. stop being 'dead') if you install a complex writing language

Bug #335732 reported by Calabacin
106
This bug affects 21 people
Affects Status Importance Assigned to Milestone
ibus
Unknown
Unknown
ibus (Debian)
Fix Released
Unknown
ibus (Ubuntu)
Confirmed
Undecided
Unassigned

Bug Description

Accented letters (dead keys) do not work if you install a complex writing language

Spanish layout uses a two-key press in order to write an accented letter (i.e. you click ´ and then a in order to write á). Now I know these are called dead keys.

Steps to follow:
-Install Ubuntu in a language with dead keys, such as spanish or french
-Add a complex writing language, such as japanese or chinese (this will install ibus)
-Now in some applications (like skype), you will not be able to write á; you will write ´a instead. It's like dead keys stop being dead

Previously, if you installed complex writing (scim) and added spanish to it, you were able to write accented letters, as long as you use the scim "Spanish/European" layout, and not the linux default. Now even that doesn't work

This seems to be the same bug as http://code.google.com/p/ibus/issues/detail?id=526

As a workaround, you can create a script that disables ibus for a problematic application.

Example for skype: Create a file in the path, for example /usr/bin/skype-ibus with the following commands:

#!/bin/bash
unset XMODIFIERS # unsets the environment variable telling apps which XIM module to use
/usr/bin/skype-wrapper & # starts Skype in a child process

Revision history for this message
Calabacin (raulgarciag) wrote :

After seeing the packages, I thought I'd give it a try and install scim-bridge-client-qt 0.4.14-1ubuntu2 to see if Konkeror now behaved correctly, but it didn't work, even after rebooting.

I also installed scim-qtimm 0.9.4-2ubuntu3, but that didn't fix it either, even after rebooting.

Finally, I tried installing skim 1.4.5-4ubuntu3. Still nothing.

Revision history for this message
Calabacin (raulgarciag) wrote :

At some point during my installations I must have done something right. I still cannot write accented letters in non-gnome apps, such as Konkeror or Opera, but if I click on the small keyboard icon near the clock, I can now see two spanish icons:

Spanish/Keyboard
Other - Spanish/European

The first one is the standard spanish keyboard, and it's the one that is failing. I cannot write á with it
The second one seems to be the scim one, and it DOES allow me to write á with it!

So my guess is it's not a scim problem, but a problem with whatever the standard keyboard application is.

Calabacin (raulgarciag)
description: updated
Revision history for this message
Rolf Leggewie (r0lf) wrote : Re: Accented letters cannot be written on non-gnome apps

Thank you for reporting. I think this dead-key issue may be fixed in 1.4.9 which is about to be released in Karmic. Please verify.

https://launchpad.net/~r0lf/+archive/hardy/+sourcepub/678492/+listing-archive-extra

Changed in scim (Ubuntu):
assignee: nobody → Rolf Leggewie (r0lf)
status: New → Incomplete
Revision history for this message
Rolf Leggewie (r0lf) wrote :

Calabacin, do you still see this in Karmic?

Revision history for this message
Calabacin (raulgarciag) wrote :

I'll install it in a VM an I'll tell you the results.

Thank you Rolf.

Revision history for this message
Calabacin (raulgarciag) wrote :

Hi Rolf.

IT WORKED. Thanks a lot! This was a really annoying issue, you can't imagine.

I cannot find a way to see what language I am typing in, but I guess that it'll be somewhere to be found.

Steps followed:
----------------------------------
- Installed Karmic in spanish (if you install in any other language, just add the spanish(Spain) layout.
- Upgraded all packages
- Installed Kate (any non-gnome app, such as Konkeror, will do)
- Started Kate (or the non-gnome app you installed)
- Tried to write an accented letter, such as á and it worked
----------------------------------

After installing japanese support and input method, I have been unable to setup my computer to also write in that language, even fiddling with the Ibus settings.

Revision history for this message
Calabacin (raulgarciag) wrote :

From my point of view this bug can be closed.

I'm so Glad I could help a bit by pointing it out.

Revision history for this message
Rolf Leggewie (r0lf) wrote :

Thank you for confirming. Closing as fix released.

Changed in scim (Ubuntu):
status: Incomplete → Fix Released
Revision history for this message
Calabacin (raulgarciag) wrote :

This bus has been reintroduced in Ubuntu Karmic. I can confirm it happens in any out-of-the-box installation, and I can also confirm that it's not scim related, since scim is not even installed!

The steps are the same as in the first post:
Install any non-gnome app (such as kate), and try to write an accented letter. It will write ´a instead of á.

You can check this with any keyboard, just make sure you have selected spanish layout.

As an additional information, I enable complex writing with Alt-º and if I try that combination inside kate it does work, but it writes a º as well. Also, I can write 日本語 (japanese) and ελλινικα (greek) within Kate without problems.

I haven't tried installing scim, since I fear it might spoil the ibus interface (this ibus thing is completely new to me).

Revision history for this message
Calabacin (raulgarciag) wrote :

After checking this on several new installations, I can confirm this bug still happens.

Changed in scim (Ubuntu):
status: Fix Released → Confirmed
Revision history for this message
Calabacin (raulgarciag) wrote :

I'm willing to make any tests you want.

So far I have found this (always using standard repositories, except for Skype):
- I install a new UBUNTU 9.10
- Gnome applications work fine (for example gedit)
- I install Kate, Kopete, or any other KDE application (just tried a few), and it will NOT let me write á , it will write ´a
- I install aMSN (TCL/TK) and it will simply write a instead of á , it won't even write the ´
- I install Skype (something not really standard), and it will NOT let me write á , it will write ´a

Also I have found this:
- I install a new KUBUNTU 9.10
- KDE applications work fine (for example kate)
- I install gedit, empathy, or any other Gnome application (just tried a few), and it WILL let me write á without problems.
- I install aMSN (TCL/TK) and it WILL let me write á without problems.
- I install Skype (something not really standard) and it WILL let me write á without problems.

So everything works fine with Kubuntu.

Is there any other solutions for Spanish-speaking users other than rerolling to Kubuntu?

Regards,

Revision history for this message
Rolf Leggewie (r0lf) wrote :

> This bus has been reintroduced in Ubuntu Karmic. I can confirm it happens in any out-of-the-box installation,
> and I can also confirm that it's not scim related, since scim is not even installed!

unassigning from scim, requesting help with general triage

affects: scim (Ubuntu) → ubuntu
Changed in ubuntu:
assignee: Rolf Leggewie (r0lf) → nobody
Revision history for this message
Román (roman-pena-perez) wrote :

Calabacín, could you run
   /usr/lib/ibus/ibus-x11 &
to see if it makes any difference?

(if you have tcl/tk installed, you could run a quick test with
   echo {text,pack,focus}$' .t\n' | wish
)

I think it's a problem with the way ibus-daemon is launched (without -x flag).

Anyway, you'll find yourself stalled at the next handicap:
   http://code.google.com/p/ibus/issues/detail?id=526

Regards

Revision history for this message
Calabacin (raulgarciag) wrote :

Hi Román

I didn't know those were called "dead keys". I've read about dead keys before, but never knew what exactly they were ;-)

I rerolled to kubuntu on my main computer, but since I have special interest in this issue, and I'm very happy with you trying to figure this out, I just installed a new Ubuntu64 VM from scratch. These were the steps taken and their results:

1) Clean installation in spanish
2) Updated everything and rebooted
3) Opened up a gnome app and tried to write Á or Â. It worked fine, as it always did (these things must be tested just in case)
4) Installed kate, a KDE application and tried to write Á or Â. It worked fine! It just didn't before, it would write ´A.
5) Installed amsn, a TCL application and tried to write Á or Â. It worked fine! It just didn't before, it would write A.
6) Downloaded skype from the web and installed it; I don't even know what it uses. It worked fine! It just didn't before, it would write ´A.
7) After reading your link, I decided I would open up openoffice writer. Tried to write Á or Â. It worked fine, as it always did (these things must be tested just in case)
8) Being completely amazed at this, I went to a workmate's pc that still uses Ubuntu64 and had this problem as well. Kate worked.

I guess it must have been fixed in some update since my last post. I'll use the oportunity to try KDE. So far I like it, even though it's so different that I have to relearn even the most basic things.

One last thing, I tried to do this:
# ps axu | grep -i ibus
And found no ibus process running. Is this normal?

Revision history for this message
Calabacin (raulgarciag) wrote :

By the way, I didn't try the ibus-x11 command since it all worked, but I did do the echo {text,pack,focus}$' .t\n' | wish and was able to write Á in that window with no problem.

Thank you for your time, and happy new year!

Revision history for this message
Calabacin (raulgarciag) wrote :

Sorry for the spam. I was so happy that I decided I could finally write in japanese and in spanish, so I added support for Japanese writing.

That accomplished two things:
-Now I have the Ibus icon near the clock
-Now I cannot use dead keys in non-gnome applications :-(

So these are the steps I took:
1) Run "/usr/lib/ibus/ibus-x11 &" without killing current ibus. Still cannot write Á, it writes ´A
2) Restart the computer and run "ps axu | grep -i ibus". Now I see several processes:
- /usr/bin/ibus-daemon --xim
- /usr/lib/ibus/ibus-gconf
- python /usr/share/ibus/ui/gtk/main.py
- /usr/lib/ibus/ibus-x11 --kill-daemon
- python /usr/share/ibus-anthy/engine/main.py --ibus

3) Try all previous apps (kate, tcl, xterm, etc...). They all fail to write Á

So yes, the problem comes when you have a dead-key language, such as spanish or french, and a complex writing language, such as japanese or chinese.

I used to be able to overcome this using scim, and selecting spanish inside of it. Now I'm not even able to do that.

My guess is that if I try to add japanese to my kubuntu something will break as well. I can try and install a clean kubuntu if you want.

Calabacin (raulgarciag)
description: updated
summary: - Accented letters cannot be written on non-gnome apps
+ Accented letters (dead keys) do not work (i.e. stop being 'dead') if you
+ install a complex writing language
Revision history for this message
Alberto González Palomo (matmota) wrote :

I'm seeing this too.
It happens when I activate iBus in the language preferences.

I've read that it has something to do with iBus not supporting dead keys:
http://ubuntuforums.org/archive/index.php/t-1404209.html

I've tried the workaround described there, to do "unset XMODIFIERS" before launching the application where I have problems, specifically the infamous Skype. Doing that allows me to write accented letters using the dead keys as before, but I can't use iBus any more in that application.

The problem also happens with Emacs which is a more serious issue for me, although Emacs has its own input methods which I used before installing iBus, so I'll unset the XMODIFIERS also for it. At least everything works fine in Firefox.

LI Daobing (lidaobing)
affects: ubuntu → ibus (Ubuntu)
Changed in ibus (Debian):
status: Unknown → Confirmed
Revision history for this message
Calabacin (raulgarciag) wrote :

While this bug is fixed, I've found a workaround for non-working apps, such as Skype.

I just created a file in the path, for example /usr/bin/skype-ibus with the following commands:

------------------
#!/bin/bash
unset XMODIFIERS # unsets the environment variable telling apps which XIM module to use
/usr/bin/skype-wrapper & # starts Skype in a child process
------------------

That way I prevent the app from using ibus, since my standard config is:
XMODIFIERS=@im=ibus

This "re-confirms" this to be an ibus issue, in my opinion, probably with some module since most apps work fine.

At least, most apps do not suffer this problem now.

Thank you for your good work. Let me know if I can help solving this.

Calabacin (raulgarciag)
description: updated
description: updated
description: updated
Revision history for this message
Sikian (sikian) wrote :

I could solve the problem taking this into account:
http://code.google.com/p/ibus/issues/detail?id=388#c15

Hope it helps!

Revision history for this message
Jean-Christophe Baptiste (jc-baptiste) wrote :

The problem is still here (10.10) and I don't see any solution that would allow me to type Japanese AND French in Opera.

Revision history for this message
Michal Suchanek (hramrach) wrote :

Use uim ;-)

Changed in ibus (Debian):
status: Confirmed → Fix Released
Revision history for this message
P4W3R (jsalavert) wrote :

Installed today ibus on ubuntu 11.10 and had this problem.
Dead keys where not working. I had to do the following workaround to the problem:

apt-get install ibus-xkbc

sudo emacs /usr/lib/ibus-xkbc/ibus-setup-xkbc

Changed "python2.6" to "python2.7".

sudo emacs /usr/lib/ibus-xkbc/ibus-setup-xkbc

Select my layout where possible.

Add ibus-xkbc input method and select it.

Revision history for this message
P4W3R (jsalavert) wrote :

Installed today ibus on ubuntu 11.10 and had this problem.
Dead keys where not working. I had to do the following workaround to the problem:

apt-get install ibus-xkbc

sudo emacs /usr/lib/ibus-xkbc/ibus-setup-xkbc

Changed "python2.6" to "python2.7".

sudo /usr/lib/ibus-xkbc/ibus-setup-xkbc -> Sorry was wrnong

Select my layout where possible.

Add ibus-xkbc input method and select it.

Changed in ibus (Debian):
status: Fix Released → Confirmed
Revision history for this message
Heimen Stoffels (vistaus) wrote :

Bug is still there in 12.04 :(

Revision history for this message
Pedro Nariyoshi (pedro-nariyoshi) wrote :

P4W3R workaround works, but it is not ideal. Perhaps we should warn ibus-xkbc packagers.

Revision history for this message
Pedro Nariyoshi (pedro-nariyoshi) wrote :

Bug is fixed on latest Ibus package 1.4.99. It is not a stable version yet, but seems promising, would it be possible for it to be included in Quantal?

Revision history for this message
Santiago Gala (sgala) wrote :

I'm seeing this exact problem, Ubuntu 12.04.1 amd64, skype, and the TCL/TK test up in the comments work with accents if called with

unset XMODIFIERS; skype

but not in its standard setup.

Changed in ibus (Debian):
status: Confirmed → Fix Committed
Changed in ibus (Debian):
status: Fix Committed → Fix Released
Revision history for this message
Bráulio (brauliobo) wrote :

confirmed here on vivid 64bits

Revision history for this message
Valentin Lab (vaab) wrote :

Confirmed on vivid...

Here's the lazy man's fix. It'll replace the dash Skype icon launching command to unset XMODIFIERS before launching skype.

You just have to copy paste in a shell:

DESKTOPFILE=/usr/share/applications/skype.desktop
if [ -e "$DESKTOPFILE" ]; then
    sudo sed -ri 's/^Exec=skype %U$/Exec=env -u XMODIFIERS skype %U/g' "$DESKTOPFILE"
    echo "Found and updated $DESKTOPFILE."
else
    echo "Not Found, NO correction applied."
fi

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.