Edit: I realized that the "problem" was not only in Ubuntu but in Debian itself and Ubuntu just inherited it, so I had this migrated from Ask Ubuntu

I have been using Linux on and off for 10 years, and more recently I have spent more time with OSX.

But, I still remember that in the beginning I'd choose the US international keyboard layout and it would have exactly the same output as the Windows keyboard layout (and most recently, the OSX US international layout).

However, a few years ago when I installed Ubuntu, I noticed that the cedilla wasn't printed anymore (ç or Ç). This is a combination of the following keys: ' + c. Instead, what I get is the ć letter.

When did it start to happen, and why the difference to the behavior on the other OSes? What puzzles me even more is that there is even an "US International alternative" keyboard layout, which prints exactly the same keys! So, what's it alternative to?

This has been reported as a bug back to Canonical (can't find the link now), but the keyboard layout has never changed back to what I'd expect. I know the workarounds to fix it to what I need, but I just would like to know why/when it has become different.

You can enter c-cedilla using AltGr + ,. But when/whether/why it changed, I don't know.
–
MikelFeb 8 '11 at 21:20

Thanks for the comments. I've flagged the question so it can be moved/merged here. I still believe here is the right place as the behavior seems to have been inherited from Debian.
–
PabloFeb 16 '11 at 0:41

Some nice fellow decided that an accented c (“ć”) is more importante than the c with a cedilla (“ç”), so the default behavior for pressing ‘ + c in international keyboards with deadkeys is now “ć”. Since I’m Brazilian and not Romanian or something, that definetly bothers me. ‘ + c used to output “ç” once upon a time.

To fix it, edit as root the file /usr/lib/gtk-2.0/2.10.0/gtk.immodules, find this line:

To keep the package manager from stepping on your changes, you can run (as root) dpkg-divert /usr/lib/gtk-2.0/2.10.0/gtk.immodules. The package system will then write to gtk.immodules.distrib instead. To undo this, add the --remove flag to the same command and copy the .distrib file over the original. For more info, man dpkg-divert.
–
JanderFeb 16 '11 at 3:38

in ubuntu 12.10, the file has a different location: /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/gtk.immodules, or /usr/lib/i386-linux-gnu/gtk-2.0/2.10.0/gtk.immodules
–
cipricusApr 15 '13 at 14:47

Using an US international keyboard layout with OS Language in English and having a beautiful cedilla.

To have English Language with ç/Ç working beautifully ( 'c -> cedilla ) isn't necessary to change the compose files. What one have to do is to set the LC_CTYPE with a locale that contains this definition: