cedilla appears as accented c (ć instead of ç) when typing 'c

Bug #518056 reported by Leandro on 2010-02-06
270
This bug affects 55 people
Affects Status Importance Assigned to Milestone
xkeyboard-config
Won't Fix
Medium
xlibs
Fix Released
Medium
ibus (Ubuntu)
Medium
Gunnar Hjalmarsson
language-selector (Ubuntu)
Medium
Gunnar Hjalmarsson
libx11 (Ubuntu)
Medium
Gunnar Hjalmarsson

Bug Description

When typing in a US-international keyboard with dead-keys (or UK-international),
typing 'c results in an accented c instead of a cedilla.

There is a workaround, which is editing the

/usr/lib/gtk-2.0/2.10.0/immodule-files.d/libgtk2.0-0.immodules

file and 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"

(add the 'en' at the end).

However, every time some update on this file is applied, one looses the change,
and we get back to the accented c. That means having to modify the file again,
logout and login.

For me this is no problem. But for my brother, mom, dad, etc, it is always something
that at least makes me less proud of having convinced them to use Ubuntu, because
they don't know what to do each time this happens.

I think we really need a configurable keyboard layout, or at least (and that would
be very easy), the inclusion of alternate layouts on install that for the dead-key
options (as US-deadkey and UK-deakey), alternate layouts as US-deadkey-cedilla.

This change is relevant for at least Portuguese and French.

Related branches

affects: ubuntu → gtk+2.0 (Ubuntu)
Loïc Minier (lool) wrote :

Just use , + c rather than ' + c?

Leandro (leandromartinez98) wrote :

,+c produces ",c" , I don't know what you mean.

Anyway, there is no such thing as an accented "c" in portuguese or french.
So I don't see why some potential tenths of millions of users should simply
adapt themselves to a different keyboard layout for something that apparently
involves only adding to the already more than 40 options two new layouts with
a cedilla there.

As I said, this is necessary for two layouts:

UK-International with Dead Keys
and
USA-International with Dead-Keys

If we had alternatives to these with cedilla the problem would be solved.

There are many threads of desperate Brazilian users trying to fix their layouts
in the web.

I was willing to work on this myself, but I don't have the expertise to do so, and
I wasn't able to recognise in which package the layouts are defined.

Loïc Minier (lool) wrote :

Ah I thought you were using a compose-key sequence, but it's just a regular sequence.

I think changing the default input method for Gtk+ when using an en layout would be quite intrusive though. Perhaps we can fix the en default input method to be more useful to type French ç instead.

Loïc Minier (lool) wrote :

BTW I think you can override the immodules definition with /etc/gtk-2.0/gtk.immodules.

Leandro (leandromartinez98) wrote :

Yes, one can change that by changing the immodules definition (this was described in
the first post).

For us Brazilians it would be nice if the default 'c sequence resulted in a cedilla, for
french people certainly it would be nice as well.

Languages from the east europe, however, have accented "c"s. That is why I was
suggesting that a variant of these layouts should be included instead of changing
the current ones to a different default.

Alternatively, one could have a layout customization option for this, as one can,
for instance, define an eurosign for some keys. But I think this would be harder
to implement, isn't it?

Again, for us Brazilians and for French people, the change in the default output
character for 'c in the UK-Intl-with_dead_keys and US-Intl-with_dead_keys layouts
would be enough.

Is this feasible?

Thanks.

Leo (leorolla) on 2010-03-16
Changed in gtk+2.0 (Ubuntu):
status: New → Confirmed
Razer (razer-anthom) wrote :

I followed these instructions and Thunderbird still gives me ć when pressing ' + c.

Sebastien Bacher (seb128) wrote :

Thank you for your bug report. The issue is an upstream one and it would be nice if somebody having it could send the bug the to the people writting the software (https://wiki.ubuntu.com/Bugs/Upstream/GNOME)

Changed in gtk+2.0 (Ubuntu):
importance: Undecided → Low

I did a fresh install of Ubuntu 11.10 and I noticed that for GTK applications the combination ' + c now produces ç and not an accented c anymore. Does that happen only with me?

Non-GTK applications, however (e.g. Skype), still output the accented C. The solution is to edit the file /usr/share/X11/locale/en_US.UTF-8/Compose and replace the accented c/C characters with ç/Ç.

Leandro (leandromartinez98) wrote :

Thanks Vitor. I have a fresh instalation of Xubuntu 11.10 and it does not work that way. I've installed the system in english, with an USA-International (with dead keys) keyboard layout and get the accented c by default. Do you installed your system in Portuguese?

Your locale modification solves my problem with libreoffice. For all other applications I use I had it solved by modifying the

/usr/lib/gtk-3.0/3.0.0/immodules.cache

by adding "en" to the cedilla line.

Leandro (leandromartinez98) wrote :

I'm experimenting with Mint 12 and Ubuntu 12.04, and these workarounds do not seem to be working as they should, some applications still print the accented C instead of the cedilla.

This is very frustrating. As stupid as this may appear, not being able to touch type with a standard keyboard configuration because a keystroke combination does not provide the correct character is enough for many of my linux intalations for other people become useless.

I cand continue trying with workaround and spend some time trying to solve this on my machine. But asking non-techies to do the same is out of question.

theblackkat (theblackkat) wrote :

Leandro, I found (after loooong hours of fiddling) that installing all packages starting with "ibus" and rebooting solves the problem. Don't know why, it just does. I tested this on both Kubuntu and Lubuntu 12.04.

Leandro (leandromartinez98) wrote :

Thanks theblackjack. I'm not completely sure how is the current status of this issue. In new instalations of Xubuntu 12.04 is seems that the default behaviour is, finally, print ç for 'c for the US-international-with dead keys layout. I have the impresion however that the problem persists in some applications, as libreoffice. But I would need to test this on a clean instalation, and currently I cannot do so. Anyway, it seems that someone has heard our claims.

theblackkat (theblackkat) wrote :

Actually, I have some bad news... It seems that it worked for non-KDE applications only. On Lubuntu, however, it is working right, so I guess on standard Ubuntu or Xubuntu it should also work. Not sure what to do about Libreoffice, though...

Leandro (leandromartinez98) wrote :

Yes, that seems to be right. On Xubuntu, inside QtiPlot (which, of course, is based on Qt - I think KDE is based on Qt), the cedilla does NOT work either.

Leandro (leandromartinez98) wrote :

I've just installed a fresh Linux Mint 13 and nothing changed (still getting the accented c).
So, no luck there yet.

I confirm that installing the "ibus" package solves the problem for non-QT applications. For libreoffice
is seems to work. I didn't install all packages starting with "ibus", only the "ibus" package and its
dependencies - on Mint 13 Cinnamon.

I've installed ubuntu 13.04 and the problem persists on kile and texmaker. Pretty annoying!!

Ok, I spent quite long to figure out why cedilla was the new acute.

Since my keyboard already has a Ç key (which I use very rarely) I'm quite annoyed with the decision of making dead_acute + c become a c with cedilla instead of a c with acute (which doesn't have any other input method that doesn't involve writing Unicode codes). Wouldn't it be possible to use a different combination for ç, such as dead_grave + c (or the already existing AltGr-,)? Or use ~/.XCompose or instead of overriding it with a custom configuration. If none of those seem feasible, maybe giving cacute a different combination, such as dead_grave + c, could do (although in my opinion it makes far more sense that the dead ACUTE key, followed by the C key, prints a C with ACUTE rather than a C with CEDILLA).

Among all possible solutions, I think that the best one would be to just make the default input method use X11's Compose, which already solved this problem in a localized way by having a special key composition file for pt_BR locale which maps <dead_acute> <c> to ccedilla while keeping other locales with the default cacute setting, in addition to allowing the user to have a custom ~/.XCompose file.

Leandro (leandromartinez98) wrote :

Dear Cousteau,

The issue would be easily solved by the introduction of a keyboard layout with the 'c = ç option (which, at this point, seems to be default in some cases). I am far from understanding how are the technical issues behind this. The usability issue is, on the hand, greater than simply an apparent "ilogical" choice of using 'c as ç instead of the actual accented c. The thing is that Cs with accents are used by a small portion of the worlds population, which use also many other accentuations (as inverted grave ^ accents over some letters) and different alfabets, which require highly specific (and available!) keyboard layouts. On the other side, portuguese writers use rather frequently US-International keyboards, as the ONLY issue with dead keys is that of cedilla, and in portuguese accented Cs do not exist. French writers could also claim the same, but as they use in general a totally different keyboard (azerty), they have their own keyboard layout and are satisfied with its default options.

Therefore, this is, indeed, an specific issue affecting only portuguese writers (5% of the worlds population, I guess), and, if the default is changed, I cannot imagine that it will bother anyone, except, maybe, very few people which want to write an accented Cs for some specific reason in some very particular context using a US-International keyboard with dead-keys, and in those cases I think it is not a big deal to search for that character in the special character table.

Anyway, I am totally in favor of having more than one keyboard layout option with one and the other options, it is really an important issue for the popularization of Linux in Brazil. I don't know where to put my face whenever I install linux to someone and I cannot make them write a cedilla in an standard, easy and system-wide manner.

Leandro.

This solution worked for me, although it sounds like "hammering"...

https://bugs.launchpad.net/ubuntu/+source/gtk+2.0/+bug/518056/comments/8

Thanks anyway!

Mario Frasca (mfrasca) wrote :

I'm sorry, but what are we talking about? that <multi_key> <apostrophe> <c> used to produce the character ć (c with acute)?
to my understanding, this is how it should be, and if you need ç, you follow <multi_key> <comma> <c>, as correctly remarked in comment:1 (not so sure why it was ignored).

somehow the "solution" to the here reported "bug" seems to be the current situation, as <multi_key> <apostrophe> <c> appears associated with ç (c with cedilla), while ç can still also be produced with <multi_key> <comma> <c>.

bug #919899 describes the current problem, that is, we can't easily produce "c with acute" in any GTK program now.

currently there seems to be no other way to type ć than Ctrl-Shift-<u> <1> <0> <7> <space>.

Leandro (leandromartinez98) wrote :

No, the problem is NOT having a keyboard layout for US keyboards in which typing 'c gives ç.

Using multi-key for anything is not an option if you are a touch typist and the letter you want
to type appears very frequently in your language.

The multi-key options are irrelevant for this problem.

Of course there should some way to type c with acute, but that option should not be 'c for
US keyboards, as there are no accented Cs in any language that uses US keyboards. For those
languages, which also have many other different characters, the use of specific keyboard
layouts cannot be avoided.

For characters as the 'c with acute', which are so infrequently used in English as in Portuguese,
one could have an easily available character table. I don't think that any other language uses
US keyboards with dead keys except Portuguese and Spanish. In Spanish there is no problem,
because the only non-English character is the ñ, and there is no ambiguity there. For Portuguese,
the only non-English character is the ç, for which the good option is the 'c, as it is a two-strike
combination.

Mario Frasca (mfrasca) wrote :

hi Leandro,

you write
> as there are no accented Cs in any language that uses US keyboards...
and
> I don't think that any other language uses US keyboards with dead keys...

please don't forget that there are quite a few languages around here in Europe, some of them use ć, and when we write to someone from an other country we often want to write their names correctly! :)
I am not so sure, but I assume that e.g. Polish or Serbian programmers also use the US keyboard.
to most of them, ç is probably of little use while ć is a very common symbol.

let me understand why you want to alter the US layout when you need Portuguese?
using the Portuguese layout, isn't it an option for you?

bug #919899 is about the <compose> key, you are talking about dead keys. Is it possible that some patches aiming at satisfying #518056 broke things for #919899?

Leandro (leandromartinez98) wrote :

Hello Mario,

Serbian, for instance, has also the č, ć, ž, đ, š characters. None of them can be typed in a US keyboard.
That is because Serbians have their own keyboard layout (and that is available within the options
when one installs a linux distribution). It makes no sense to keep the accented c letter if its only use
will be typing the names of someone in a language that may have many other characters, so that
you would be able to type only a part of the name correctly :-).

This is the same for every other language in Europe having the accented c letter in its alfabet.

If someone in Serbia or Poland use the US keyboard layout, which they may use, they certainly have
to do a lot adaptations to be able to write in their languages. Probably if they use that keyboard
is for programming only.

The situation is different for Portuguese, in which the ONLY adaptation required is the 'c = ç, and
the keyboard can be used (and IS used) like that. There is a Brazilian Portuguese layout, and
the corresponding physical keyboard, and those work just fine. The issue is that in Brazil, at least,
many, many people buy they computers abroad or imported ones, which come with the
US-layout. The historical and practical adaptation is the 'c=ç, and that is what is used by default
for US-keyboards in portuguese in other operating systems.

Not having a keyboard layout to chose from in which the 'c corresponds to ç has been a great
headache for people trying to use linux and trying to convince other to use it, you may imagine
how frustrating is to present someone a alterantive OS in which they can't type a frequently
used character the practical and usual way.

I have no idea if those bugs are related. I know that in some recent instalations there are signs
(signs, because some people still report problems in some applications) that the 'c=ç option
is been adopted. I insisted in many blogs and here that the ideal solution is simply to include
yet another keyboard layout called "US-International with dead-keys (cedilla)", but of course
what I want is not traduced easily in other people implementing that, and sometimes I have
received feedbacks on more technically skilled people saying that any solution to this problems
involves complications far beyound my understanding.

Mario Frasca (mfrasca) wrote :

so you are pushing development towards <dead_apostrophe> + <c> producing <ç>.
I think it's wrong, inconsistent with the rest, but fine, we agree that we disagree on this.

problem is that <multi_key> <apostrophe> <c> now also produces <ç> and that there is no composition any more giving <ć>.

please note: <multi_key> is what one would use when one needs the most generic tool.

it would be nice if we knew what was changed in order to achieve the current behaviour, because some of us would like to roll it back.

Leandro (leandromartinez98) wrote :

Mario, I do agree that ",c" seems pretier to represent ç than 'c. However, ",c" cannot be typed
as a two stroke combination in a dead-key combination, obviously because the comma cannot
be a dead key.

The only thing I would like to be pushing (I don't think my pushings are having any effect, as this
problem persists since I went on into linux for the first time) is to have the OPTION to chose
a keyboard layout in which 'c=ç, and what I am indeed argumenting is that for the absolute mayority
of people who would bother to use a US keyboard with dead keys, this is the option that is
useful.

It is very, very, frustating to hear arguments oposing to the fixing of this "bug", because its "fixing" does
not require breaking anything else if a new keyboard layout becomes available with this option,
within the set of tenths of layouts from which one already can chose when installing a linux box.

I don't think, as you, that any other option is "wrong", as I think people should use their computer
as they find confortable. In windows (which I do not use) I once could create a new keyboard
layout with a very easy to use application, and even distributed it. I needed that to create the
adequate behavior for portuguese in a UK keyboard. I think that is the way to go, and not to disminish
the needs of other users for, I don't know, ahestetical reasons. This ç problem is not my problem
only, type "cedilha no ubuntu", you will find more than 7 thousand posts of people asking how
to solve this or giving partial solutions for every new ubuntu version. (cedilha linux gives
you almost 20 thousand posts - yes, I think all from Brazil).

The problem with multi-keys I am not aware about, and if that is a problem should be reported
as a different problem, anyway. And I don't agree that the multi-key solution is optimal, because
nobody remembers the combination of strokes of characters that are not used frequently. I'm
not against the multikeys, but I think there should be a character table accessible from anywhere
in the system from which one could copy and paste any character to any application.

Joakim Ekberg (j-a-o) wrote :

I certainly see the point of having dead_acute + c making a ç, even though it's totally unintuitive, if for some odd reason it should prove impossible to assign dead_grave + c or AltGr-, to it (none of which would interfere with any existing characters).

But, as pointed out in #919899, then compose + apostrophe + c really must output a c with an acute accent. The one who wants to type a ç using ComposeKey already has compose + comma + c. (By the way, even though your mileage varies, I find the ComposeKey sequences quite intuitive and easy to remember.)

Additionally, if the problem is only with US International, it might be possible to have dead_acute + c creating a ç only on US International, but a c with an acute accent on other (European) layouts.

strangedata (rcteigao) wrote :

So... is there anyone looking into solving this issue? The workaround is no longer giving results on Qt applications (at least not in TeXmaker).

Leandro (leandromartinez98) wrote :

For QT applications you need to edit this file:

/usr/share/X11/locale/en_US.UTF-8/Compose

and change every accented Cs by their corresponding Ç and ç (two times), in these lines:

<dead_acute> <C> : "Ç" U0106 # LATIN CAPITAL LETTER C WITH ACUTE
<dead_acute> <c> : "ç" U0107 # LATIN SMALL LETTER C WITH ACUTE

I fixed with
sudo apt-get remove ibus-qt4

cipricus (cipricus) wrote :

in Xfce Quantal (Linux Mint 14) installing `ibus` and its dependencies solved the problem.

winnyec (narfff) wrote :

@Leandro:
You can't be possibly serious about this. I write in many languages, and need to be able to enter <accented c> (don't know currently how to do this, other than copy-pasting it from another text), and I need to write it often. And there are millions who do need <accented c>. I don't care whatsoever if there is an additional tweaked version of UK/US keyboard layout (which can be even the default) where you have a generic_dead_character at the place of dead_accute, which together with C produces ç (I can't believe I have just typed <accent> and <c>), but overriding <accent>+<c> = cedillad c for all possible input layouts is simply unacceptable. Accent+C -- as it says -- is accented C. How can this be even argued?! This is ridiculous and very frustrating.

Or if it is not done this way, how come on compose-type accents (obviously I am using compose-type dead accents, since I need many accents), where there is seperate dead cedilla, accuted C still comes out as ç??

Leandro (leandromartinez98) wrote :

Dear Winnyec, have even read the bug report? It is ridiculous and frustrating to have to answer to someone that apparently didn´t read what is posted.

Josip Krapac (josip-krapac) wrote :

Hi guys!

I'm Croatian and I've used '+c to produce letter ć, used in Croatian. It's used also in Bosnian and Serbian. Serbs also have that letter when they are using Latin letters. Although we do have Croatian and Serb keyboard layouts, for programming I prefer to use US international keyboard with dead keys.

Leandro, this is not true: "If someone in Serbia or Poland use the US keyboard layout, which they may use, they certainly have to do a lot adaptations to be able to write in their languages. Probably if they use that keyboard is for programming only". I've been using international keyboard in previous versions of Ubuntu just fine, without any adaptations. Also, that was convenient when I wrote in French and Croatian, since I didn't have to switch keyboards.

The new arrangement doesn't make logical sense since:
a) it would make more sense to have [AltGr ,]+c to produce ç, since the cedille is below letter, not above
b) there are two ways to get ç (1: AltGr + , 2: ´ + c), while, as far as I can see, there is no way to get ć.

Be aware that ć is different from ċ and ƈ, both of which can be obtained. I know that there's also letter with similar accent is Polish, over letter s (ś), and that is also impossible to get now with the new layout, as far as I see.

LKRaider (paul-eipper) wrote :

The comments on this bug are so ridiculous - it would be funny if it wasn't sad.

1. The request is for a new layout.
2. It does not affect any existing layout.
3. It is to help Portuguese-Brazilian users.
4. It does not affect anyone else.
5. Opinions on whether ' + c should or should not produce ç are irrelevant.

What is needed is someone with the knowledge and/or the will to create a new layout.

If you cannot help with this, please don't get in the way.

Leandro (leandromartinez98) wrote :

How do you used to write Nataša, for example, with the US-keyboard that types the accented-c key? Or the "Đ" letter?

Not that this discussion is of any relevance anymore, since all kinds of suggestions don't seem to reach anyone, but what I suggested at first was to have a keyboard layout in which 'c = ç, as is useful for about 300 million people in the world (Portuguese+French). If that is the default or the default is the accented "c", which is used as a partial incomplete layout by a much smaller fraction of the world's population, is a secondary problem. But I insist we, brazilians, should have the choice of typing 'c for ç, as that is the good choice for touch typists (Alg-Gr combinations are a horrible options, and Mac keyboards don't even have that Alg-Gr key).

Anyway, it is pretty impressive how the suggestion of having an additional keyboard layout that fulfills the needs of so many people (just check on google how many people have posted this problem) can result in so enormous negative feedback.

Ps. In Windows there is a program called "keyboard layout creator", or something like that, with which one can create any keyboard layout one wants. Linux is years light behind on that.

Josip Krapac (josip-krapac) wrote :

Just to answer your question and then I'm out of here: I used to write š with [AltGr+Shift+.]+s and Ð with AltGr+Shift+D.

I agree that having Linux version of user-friendly editor of keyboard layout would solve a lot of problems.

Rael (rael-gc) wrote :

My problem is: while using the US layout, the behavior is the same on Windows.
To me, ok, but when, as you guys, I put other non-tech people using Ubuntu, it's a problem.

On Windows, when I use US international, and I type '+c, I get ç. When I type '+I, I get "I'". So, I can type portuguese and US stuff (for programming) with no problem.

But, as we're discussing here, the behavior is different on Ubuntu. Not sure if it's a bug, appears to be the Ubuntu way.

Anyway, I changed this (I'm using 12.04 LTS).

I did a bunch of stuff, not sure if all this is really required. Please, correct me I'm wrong or doing unnecessary steps.

I used this .XCompose file in my home folder: http://www.raelcunha.com/.XCompose
Then I included in my .bash_profile and .profile:

export GTK_IM_MODULE=xim
export QT_IM_MODULE=xim

Then I asked to Ubuntu use xim:

im-switch -s default-xim

Then I installed ibus-table-compose:

sudo apt-get install ibus-table-compose

Then logout and login.

Can someone from Ubuntu team tell me if all this is required?

Leonardo Lazarte (llazarte) wrote :

The standard for obtaining c-cedilla was working ok on my installation until updating to 13.10. Unfortunately, it is now broken and I could not find a way to write this letter, although I tried all the suggestions in this thread.

affects: gtk+2.0 (Ubuntu) → ubuntu

Hi Leonardo,

This solution worked for me:

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"

2) replacing "ć" to "ç" and "Ć" to "Ç" on /usr/share/X11/locale/en_US.UTF-8/Compose

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

Raphael Menezes (raphaelrms) wrote :

Guys, I'm sorry, but I think this discussion has taken too much time and has been giving a lot of troubles to spanish, french, brazilians and people from other countries that need this letter.
To type the cedilla on Linux and Windows with the US-International keyboard layout has been the combination ", + c" since forever (just check it). But now, after an update, we are making people to do tricky things in order to get the letter that they need. It's frustrating to hear from regular desktop users that the cedilla has gone and are afraid to type those commands to fix it.

What are we waiting for to create a new keyboard layout (like US International with cedilla) or go back to the layout that we had before?

Colin Watson (cjwatson) on 2015-01-24
affects: ubuntu → gtk+2.0 (Ubuntu)
Changed in xkeyboard-config (Ubuntu):
importance: Undecided → Wishlist
status: New → Confirmed
Changed in xkeyboard-config:
importance: Unknown → Medium
status: Unknown → Confirmed
Changed in language-selector (Ubuntu):
assignee: nobody → Gunnar Hjalmarsson (gunnarhj)
importance: Undecided → Medium
status: New → Fix Committed
Changed in gtk+2.0 (Ubuntu):
importance: Low → Medium
Changed in xkeyboard-config (Ubuntu):
importance: Wishlist → Medium
Changed in language-selector (Ubuntu):
status: Fix Committed → Fix Released
84 comments hidden view all 164 comments

Hi Sergey,

(In reply to Sergey V. Udaltsov from comment #2)
> Is there a patch for xkeyboard-config?

Well, there is, sort of, in my PPA.
https://launchpad.net/~gunnarhj/+archive/ubuntu/cedilla-test/+packages

But that patch simply turns the <dead_acute> key into a <dead_cedilla> key, and it turned out that that's not what the Brazilian users would like to see. The desired behavior is that the <dead_acute> key followed by the c key results in ccedilla, while keeping the original behavior for other letters.

Preliminary we have abandoned the idea to fix this in xkeyboard-config, and are now trying to make use of x11 compose instead.

Nevertheless, if it is at all possible to achieve the desired behavior with xkeyboard-config only, it would probably be the most robust solution, and also most convenient for the users. Do you possibly have an idea whether it can be done?

Thanks!

> Preliminary we have abandoned the idea to fix this in xkeyboard-config, and
> are now trying to make use of x11 compose instead.
>
> Nevertheless, if it is at all possible to achieve the desired behavior with
> xkeyboard-config only, it would probably be the most robust solution, and
> also most convenient for the users. Do you possibly have an idea whether it
> can be done?
The way you describe it, it is really for compose. So I am marking this bag as NOTOURBUG.

> The desired behavior is that the <dead_acute> key followed by the c key
> results in ccedilla, while keeping the original behavior for other letters.

It already does in the pt_BR.UTF-8 locale.

The compose file for pt_BR.UTF-8 includes the en_US.UTF-8 file and then overrides some of the sequences, including:

  XCOMM Overriding C with acute:
  <dead_acute> <C> : "Ç" Ccedilla # LATIN CAPITAL LETTER C WITH CEDILLA
  <dead_acute> <c> : "ç" ccedilla # LATIN SMALL LETTER C WITH CEDILLA

Thanks for pointing it out, James. Yes, we are already about to make use of x11 compose instead, and your and Sergey's comments confirm that we probably are on the right track by doing so.

no longer affects: xkeyboard-config (Ubuntu)
affects: gtk+2.0 (Ubuntu) → ubuntu
Changed in ubuntu:
assignee: nobody → Gunnar Hjalmarsson (gunnarhj)
status: Confirmed → In Progress
affects: ubuntu → ibus (Ubuntu)
Changed in libx11 (Ubuntu):
assignee: nobody → Gunnar Hjalmarsson (gunnarhj)
importance: Undecided → Medium
status: New → In Progress
Changed in xkeyboard-config:
status: Confirmed → Won't Fix

@gunnarhj the same solution should be applied to pt_PT, you are right.

@leandromartinez98 your solution works also to IntelliJ, Webstorm and Emacs after the restart, thank you. Will this bug be fixed natively to next versions of Ubuntu?

Leandro (leandromartinez98) wrote :

Thank you Felipe for your feedback. Actually it is Gunnar's solution :-). Anyway, the idea at this point is that
in the next releases that will be the behavior if the user sets the interface language or the language settings
to Portuguese (with the US-International - dead keys keyboard).

Gunnar Hjalmarsson (gunnarhj) wrote :

On 2015-04-23 19:13, Felipe Micaroni Lalli wrote:
> Will this bug be fixed natively to next versions of Ubuntu?

It's not clear to me what you mean.

As regards Brazilian Portuguese, there is nothing left to do, as far as I can tell. There are three ways to enable the '+c = ç behavior in Ubuntu 15.04, assuming that you keep IBus (default) as the IM framework:

1. Select Brazilian Portuguese as the display language (via Language
   Support).

2. Select Brazilian Portuguese as the regional formats setting (via
   Language Support).

3. Set the LC_CTYPE variable manually, as explained in comment #115.

I will probably propose that the same is set up for Portuguese (Portugal) when the development of 15.10 opens.

Created attachment 115532
Add pt_PT.UTF-8 compose file

This is a forward of the Ubuntu bug https://launchpad.net/bugs/518056

One of the conclusions from the discussion on that bug report, which basically is about typing the ccedilla character easily on a non-Portuguese keyboard, is that X11 should include a compose file for pt_PT.UTF-8 similar to the file for pt_BR.UTF-8.

Changed in xlibs:
importance: Unknown → Medium
status: Unknown → Confirmed
1 comments hidden view all 164 comments

Please note that this bug needs to be resolved before this ibus issue:
https://code.google.com/p/ibus/issues/detail?id=1777

Gunnar Hjalmarsson (gunnarhj) wrote :

Comment #124 above was a request for comments at the mailing list for the Ubuntu Portugal team:

https://lists.ubuntu.com/archives/ubuntu-pt/2015-April/thread.html#10723

The replies I got there, together with the comments on this bug report, are sufficient as a base for making it work the same way for pt_PT as it currently does for pt_BR. Accordingly I have seeked sponsorship for uploading those changes in Wily.

Changed in language-selector (Ubuntu):
status: Fix Released → In Progress
1 comments hidden view all 164 comments

It's difficult for brazilians to get used to Ubuntu since such a simple thing as typing is compromised. Never heard about ' + c resulting in ć. This is not observed in other Linux distros, OSX and Windows.

This strange behaviour is intentional, but there is also bug which makes harder for us to type properly. We really should use "Portuguese (Brazil, nativo for USA keyboards)" for typing in portuguese with an american keyboard, but such layout is totally messed up.

Smonff (smonff) wrote :

For Emacs on a qwerty keyboard, it is possible to type the "ç" by typing right compose + ,

Felipe Lauksas (lauksas) wrote :

This also affect me as Brazilian.
Looking forward to have this old odd behavior gone.
I would fork if I had any experience in this kind of development.

Gunnar Hjalmarsson (gunnarhj) wrote :

On 2015-09-08 16:20, Felipe Lauksas wrote:
> This also affect me as Brazilian.
> Looking forward to have this old odd behavior gone.

It's not clear to me what you are waiting for, Felipe. As regards Brazilian Portuguese, the current behaviour is described in e.g. comment #132 of this bug report.

Martin Pitt (pitti) on 2015-09-18
Changed in libx11 (Ubuntu):
status: In Progress → Fix Committed
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package libx11 - 2:1.6.3-1ubuntu2

---------------
libx11 (2:1.6.3-1ubuntu2) wily; urgency=medium

  * debian/patches/016_add_pt_PT.UTF-8_Compose.diff:
    - Add compose file for pt_PT.UTF-8 equivalent to pt_BR.UTF-8
      (LP: #518056).

 -- Gunnar Hjalmarsson <email address hidden> Fri, 18 Sep 2015 13:45:21 +0200

Changed in libx11 (Ubuntu):
status: Fix Committed → Fix Released

you probably should send the patch to the list, it only gets lost here:

http://www.x.org/wiki/Development/Documentation/SubmittingPatches/

A git patch would be welcome, but we at least need a signoff line for the patch.

I sent the patch to the list:

http://lists.x.org/archives/xorg-devel/2015-September/047462.html

I added a sign off line, unlike the patch attached here, in the hope that someone will convert it to proper git format.

Pushed as commit 121a1bad334459f66f78bfca6df53dc841cf97f8.

Changed in xlibs:
status: Confirmed → Fix Released
Walter Ribeiro (wribeirojr) wrote :

Is this a kind of regression?
This bug was reported 5 years ago and apparently had been corrected. But it suddenly returned in 15.10.

Gunnar Hjalmarsson (gunnarhj) wrote :

On 2015-10-13 13:25, Walter Ribeiro wrote:
> This bug ... suddenly returned in 15.10.

Can you please elaborate.

Do you possibly have im-config 0.29-1ubuntu5 installed? In that case you should update your system.

Walter Ribeiro (wribeirojr) wrote :

I have im-config 0.29-1ubuntu6 installed.

And accented c (ć) still appears instead of ç when typing 'c

Gunnar Hjalmarsson (gunnarhj) wrote :

@Walter: I don't have that problem. Are you on Unity or one of the flavours? Can you please run the locale command in a terminal window and post the output here?

Walter Ribeiro (wribeirojr) wrote :

Here it is:

locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=pt_BR:pt:en
LANGUAGE=pt_BR
LC_CTYPE=pt_BR.UTF-8
LC_NUMERIC=pt_BR.UTF-8
LC_TIME=pt_BR.UTF-8
LC_COLLATE="pt_BR:pt:en"
LC_MONETARY=pt_BR.UTF-8
LC_MESSAGES="pt_BR:pt:en"
LC_PAPER=pt_BR.UTF-8
LC_NAME=pt_BR.UTF-8
LC_ADDRESS=pt_BR.UTF-8
LC_TELEPHONE=pt_BR.UTF-8
LC_MEASUREMENT=pt_BR.UTF-8
LC_IDENTIFICATION=pt_BR.UTF-8
LC_ALL=

Walter Ribeiro (wribeirojr) wrote :

And yes, I'm using Unity installed on a second partition from Wily Beta setup installer.
Unity 7.3.2+15.10.20151002.20ubuntu1
Ubuntu 15.10 amd64

Gunnar Hjalmarsson (gunnarhj) wrote :

Your locale is broken, which explains it. You need to change the LANG value to pt_BR.UTF-8.

Walter Ribeiro (wribeirojr) wrote :

Ok, Gunnar. Thank you!

But I didn't change the value of LANG manually.
It was set automaticly by the installation, using setup interface, which continues to be a problem.

Do you agree?

Gunnar Hjalmarsson (gunnarhj) wrote :

If that is the case, it's indeed a serious bug, which you should report separately against the ubiquity package.

Walter Ribeiro (wribeirojr) wrote :

I will try a new installation, using a newer ISO . I'll do what you suggest if the problem persists .
Thanks for your support .

What a fun discussion.

Just a reminder... '+c has always been ç since MS-DOS, in US International Keyboard... MS-DOS, PC-DOS, Basic, Apple, old computers, Wordstar, Lotus123, Windows, OS/2, Unix in general... somewhere around Ubuntu 7, or Fedora 5 it started coming as an accented ć, was fixed in Ubuntu 8.04, and accented again after that.

Very frustrating. Gotta learn a new "patch" every new version of Ubuntu.

Gunnar Hjalmarsson (gunnarhj) wrote :

As from ibus 1.5.11-1ubuntu1, ibus honors X11 compose files. With this change, together with the pending language-selector commit, all Portuguese users can type ccedilla easily in xenial.

If either the display language or the regional formats setting is a Portuguese option, '+c will automatically result in ccedilla (ç).

* It works in the same way for Brazilian Portuguese and Portuguese
  as spoken in Portugal.

* It works whether the input method framework in use is ibus,
  fcitx, uim, or none.

If neither the display language nor the regional formats setting is a Portuguese option, you can enable this feature manually by opening your ~/.profile file for editing and adding this line:

export XCOMPOSEFILE=/usr/share/X11/locale/pt_BR.UTF-8/Compose

See also:
http://www.x.org/archive/X11R7.5/doc/man/man5/Compose.5.html

Changed in ibus (Ubuntu):
status: In Progress → Fix Released
Changed in language-selector (Ubuntu):
status: In Progress → Fix Committed
no longer affects: ibus

Thanks to everyone and a special thanks to Gunnar who helped to put some order in our despair for this fix which seemed small but, as we all can see, was spreaded through several packages.

P.S.: the duplicated bugs could be closed as well.

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package language-selector - 0.153

---------------
language-selector (0.153) xenial; urgency=medium

  * data/cedilla-portuguese.sh, setup.py:
    Make it easier for pt_PT users to type ccedilla (ç) in the same
    manner as it works for pt_BR users since version 0.142
    (LP: #518056).
  * debian/language-selector-common.maintscript:
    Renaming from cedilla-brazil.sh to cedilla-portuguese.sh.

 -- Gunnar Hjalmarsson <email address hidden> Tue, 29 Dec 2015 12:59:00 +0100

Changed in language-selector (Ubuntu):
status: Fix Committed → Fix Released
Gunnar Hjalmarsson (gunnarhj) wrote :

Thanks, Raphael.

On 2015-12-29 14:35, Raphael das Neves Calvo wrote:
> P.S.: the duplicated bugs could be closed as well.

For just the reason those bugs are marked as duplicates, there is no need to update their statuses. So I think we are done now. :)

anacaona (anacaona) wrote :

Hello, I am using US International with dead keys on Ubuntu 15.10, and I am using it to write in French (but I prefer my OS is English) This issue is still open for me. I would very much appreciate any suggestions toward a resolution.

Many thanks in advance,
Nadine

Gunnar Hjalmarsson (gunnarhj) wrote :

@anacaona: Even if this issue has been handled with Portugese users in mind at first hand, the description in comment #157 is applicable to any language. In your case I suppose that editing the ~/.profile file is the way to go.

However, comment #157 refers to how it will work in Ubuntu 16.04. In 15.10, in addition to the proposed line in ~/.profile, you'll need to also open Language Support and change the input method system to "none".

TC (smalltimer) wrote :

Hi, the answer is simple. This layout treats the cedilla as an accent, and it is available with AltGr+= :D

Using this you can use the cedilla wherever you want - Ç ç ş Ş ţ Ţ and so forth.

Wow, thanks. Got my ç back after what feels like a decade! Though AltGr
doesn't combine - it directly prints a ç. I personally don't need the other
characters with cedillas but am still curious as to what the quirk is.

Thank you again,
Nadine
On Feb 1, 2016 7:56 PM, "TC" <email address hidden> wrote:

> Hi, the answer is simple. This layout treats the cedilla as an accent,
> and it is available with AltGr+= :D
>
> Using this you can use the cedilla wherever you want - Ç ç ş Ş ţ Ţ and
> so forth.
>
> --
> You received this bug notification because you are subscribed to the bug
> report.
> https://bugs.launchpad.net/bugs/518056
>
> Title:
> cedilla appears as accented c (ć instead of ç) when typing 'c
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/xkeyboard-config/+bug/518056/+subscriptions
>

Displaying first 40 and last 40 comments. View all 164 comments or add a comment.
This report contains Public information  Edit
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.