40

I run Ubuntu on a DELL XPS 13 notebook that has an US keyboard configured as US international. After upgrading to version 13.10 I can no loger get a cedilla by typing '+C. Instead, I get a "ć".

What should I do to get a "ç"?

I am using Ubuntu Gnome 13.10 64 bit.

11 Answers 11

19

In 13.10 and above you can use right Alt+ , (i.e. right Alt + comma) in English (US International with dead keys) to get ç. Shift + Right Alt + comma = Ç

Right Alt + is useful for ¡¿áéúóí also.

2
  • 1
    This works great! Braiam's answer has the full list ;) – Ciro Santilli新疆棉花TRUMP BAN BAD Nov 18 '14 at 7:51
  • The one that worked for me is RightAlt and then , + c SIMULTANEOUSLY. A very hard way to write a ç, not practical. – Luis A. Florit Aug 1 '20 at 13:16
16

It seems that just the step 3, proposed by Alexandre Schmidt (another answer to this same question), is enough to make the cedilla work, although the meaning of steps 1 and 2 is unknown for me at this time. I tested just this third step with success, as proposed by Jose Vitor Lopes at Comment 42 for bug 518056. For more details about this issue, check the entire log at Launchpad (https://bugs.launchpad.net/ubuntu/+bug/518056).

add one line in /etc/environment

GTK_IM_MODULE=cedilla QT_IM_MODULE=cedilla

Restart your computer

Source

The limitation of this change is that other consonants such as "S" are still being accentuated as "Ś", instead of having an apostrophe before the letter, as on "'S", used to express contractions.

16.04 LTS (Unity) update: config file changes are not needed anymore. Just choose one of the following input sources for text entry: (1) English (US, international with dead keys); (2) English (US, alternative international). Cedilla (C + ' = Ç) works fine with them.

4
  • Ça marche bien! – Fuhrmanator Sep 22 '14 at 20:30
  • 14.04: It works in all software ran from Unity. But it doesn't work in Unity's search menu, and it won't work for standalone consoles (CTRL-ALT-F1...). – Joe Jan 11 '15 at 15:05
  • 2
    Tested on Ubuntu 18.04 configured for English (Canada) language and unfortunately it didn't work for me. Still looking for a solution to type ç as '+c. – Bani Apr 28 '18 at 15:03
  • @Bani, see ubuntuforum-pt.org/index.php?topic=123209.0 for a solution on 18.04. It's in Portuguese but hopefully you'll understand if you google translate it – max May 21 '19 at 11:53
11

I was having the same issue and the following instructions solved my problem:

1) Editing the files:

for 64 bits:

sudo gedit /usr/lib/x86_64-linux-gnu/gtk-3.0/3.0.0/immodules.cache
sudo gedit /usr/lib/x86_64-linux-gnu/gtk-2.0/2.10.0/immodules.cache

for 32 bits:

sudo gedit /usr/lib/i386-linux-gnu/gtk-2.0/2.10.0/immodules.cache

changing the line

"cedilla" "Cedilla" "gtk20" "/usr/share/locale" "az:ca:co:fr:gv:oc:pt:sq:tr:wa"

to

"cedilla" "Cedilla" "gtk20" "/usr/share/locale" "az:ca:co:fr:gv:oc:pt:sq:tr:wa:en"

(note the "en" at the very end)

2) replacing "ć" to "ç" and "Ć" to "Ç" on /usr/share/X11/locale/en_US.UTF-8/Compose (if you use more locales, you may need to this replacement for all of them)

sudo cp /usr/share/X11/locale/en_US.UTF-8/Compose /usr/share/X11/locale/en_US.UTF-8/Compose.bak
sed 's/ć/ç/g' < /usr/share/X11/locale/en_US.UTF-8/Compose | sed 's/Ć/Ç/g' > Compose
sudo mv Compose /usr/share/X11/locale/en_US.UTF-8/Compose

3) add two lines on /etc/environment

GTK_IM_MODULE=cedilla
QT_IM_MODULE=cedilla

4)restart your computer

Source: https://bugs.launchpad.net/ubuntu/+bug/518056/comments/39

2
  • I get error warning from GTK3 because of your change in (1): Gtk-WARNING **: 10:36:44.682: Error parsing context info in '/usr/lib64/gtk-3.0/3.0.0/immodules.cache' "cedilla" "Cedilla" "gtk20" "/usr/share/locale" "az:ca:co:fr:gv:oc:pt:sq:tr:wa:en" Tried with gtk30 instead of gtk20, still with the same issue. – Luis A. Florit Aug 1 '20 at 13:40
  • ...and it didn't work for me. – Luis A. Florit Aug 1 '20 at 14:02
8

The layout you need is the "English (International with AltGr dead keys)"

enter image description here

pressing AltGr + , brings the ç. AltGr + Shift + , brings Ç

4
  • 6
    AltGr+, is painfull for someone used to acute+c keys. – Italo Borssatto Oct 22 '13 at 19:17
  • @italo but is a real solution using the same keyboard layout until some bugs in the keyboard options gets fixed. – Braiam Oct 23 '13 at 13:04
  • Where did you get this keyboard layout image? – Gabriel Staples Sep 16 '16 at 1:35
  • @GabrielStaples Open the Text entry preferences from the system settings. Click the input source you'd like to see the keymap of, and hit the small keyboard icon in the right bottom of the list. It will show you the keymap. – webmaster777 Sep 16 '16 at 7:09
7

There is the x11 Compose file /usr/share/X11/locale/pt_BR.UTF-8/Compose for Brazilian Portuguese with this contents:

include "/usr/share/X11/locale/en_US.UTF-8/Compose"
<dead_acute> <C>    : "Ç" Ccedilla # LATIN CAPITAL LETTER C WITH CEDILLA
<dead_acute> <c>    : "ç" ccedilla # LATIN SMALL LETTER C WITH CEDILLA

So, whichever language you are using, all you need to do, to make '+c result in ç, is:

  • Generate the pt_BR.UTF-8 locale, if it's not already available:

    sudo locale-gen pt_BR.UTF-8

  • Add this line to your ~/.profile file:

    export LC_CTYPE=pt_BR.UTF-8

If you are a Brazilian user, and install the Portuguese language - either when installing or later from Language Support - you can skip the just mentioned steps. Instead you can just open Language Support and select Brazilian Portuguese as the display language. As from Ubuntu 15.04 it's sufficient to select Brazilian Portuguese as the Regional Formats setting.

Edit:

And a third way, if you don't want to change the LC_CTYPE variable, is to create an ~/.XCompose file and give it this contents:

<dead_acute> <C> : "Ç" Ccedilla # LATIN CAPITAL LETTER C WITH CEDILLA
<dead_acute> <c> : "ç" ccedilla # LATIN SMALL LETTER C WITH CEDILLA
10
  • Just wanted you to know, this was the real answer for this cedilla issue. Generating the locale and changing the .profile. I wish I found this answer of yours before. I was almost losing my mind here, I swear! Thank you! – Renato Oliveira May 11 '18 at 12:37
  • This is the only thing that worked for me... partially. The global export made my Latin1 consoles go crazy. But adding the export only when launching GTK applications solved the thing. Thanks!! – Luis A. Florit Aug 1 '20 at 14:25
  • @LuisA.Florit: Please see my edited answer. – Gunnar Hjalmarsson Aug 1 '20 at 14:42
  • @GunnarHjalmarsson I get GTK errors with your new solution, probably because of the ISO file: Gtk-WARNING **: 11:48:32.650: GTK+ supports to output one char only: "\xc7" Ccedilla # LATIN CAPITAL LETTER C WITH CEDILLA: <dead_acute> <C> : "\xc7" Ccedilla # LATIN CAPITAL LETTER C WITH CEDILLA – Luis A. Florit Aug 1 '20 at 14:53
  • @LuisA.Florit: I would rather guess that there is an issue with your locale. What does the locale command output? – Gunnar Hjalmarsson Aug 1 '20 at 15:02
4

A per user configuration for the combination ' + c = ç can be achieved by adding:

export GTK_IM_MODULE=cedilla

to the user's .profile file.

2
  • sorry for this dumb question, how do you export to user's .profile? TIA – Michael Aug 31 '18 at 14:29
  • 1
    Do "gedit ~/.profile" in the Terminal (Alt+T) and add a new line at the end of the file writing "export ...". Then save the file and reboot. – Eugene Kartoyev Feb 25 '19 at 0:43
3

Append the line below to the file /etc/environment and do the login again.

export GTK_IM_MODULE=cedilla

2

In case a future visitor with a German keyboard layout winds up here, like me – even though it is outside the scope of the original question:

  • ç is entered Alt Gr+´, c
  • Ç is entered Alt Gr+´, C
1
  • Thanks a lot. That pushed me to try, and on my Swedish keyboard, same principle but with 'Alt Gr' + ','. I can get both "ç" and "Ç". I've been using workarounds for years! – nilo Jul 15 '20 at 21:28
1

With Xubuntu 16.04 and generic international 105-key layout (UK English variant), I can get a cedilla on many characters by hitting AltGr+=, followed by the character I want to "decorate", i.e. c or Shift+c.

A similar sort of "decoration prefix" can be done with AltGr+X where X is ;, ', or # for acute, circumflex, and grave respectively. And there are more, e.g. the [ and ] keys. These are the default characters on these keys in the UK layout -- other layouts might differ but I suspect all the relevant decorator keys are on the right-hand side of the keyboard near the Enter key.

1

For latin american keyboard distribution: AltGr + ¿ , c = ç

-1

One way is to use Ctrl+Shift+U combination and then type 00e7 followed by Space which will turn into ç (latin small letter c with cedilla).

Another way is to use Character Map:

Open Character Map

Character Map

And another way and probably the best is to use a keyboard layout like Portuguese:

Portuguese keyboard layout

15
  • The Turkish layout did not work for me. I did not have this problem prior to upgrading to version 13.10, so something was changed from 13.04 to 13.10. – jsbach Oct 21 '13 at 16:32
  • @user205661 How did not work for you? That's not possible. Anyway you have two more options. Did you try them? – Radu Rădeanu Oct 21 '13 at 16:58
  • 2
    I am looking for a strategy in which I can get a cedilla by typing two keys, as I have always done (apostrophe + c). This worked just fine in version 13.04. – jsbach Oct 21 '13 at 17:02
  • I tried the Turkish layout (international, dead keys) but some of the keys are not mapped corrected. For instance, I type * and I get ). – jsbach Oct 21 '13 at 17:05
  • 2
    A useful workaround is to add xmodmap -e "keycode 54 = c C c C ccedilla Ccedilla", then you'll have the ç with right_alt+c. I don't know how to change the dead keys pairs with the New Keyboard Scheme... – Rmano Oct 21 '13 at 20:48

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.