(In reply to comment #13)
> Created an attachment (id=21716) [details]
> screenshot showing normal X and GTK+2 applications
Thanks for the detailed reply.
It looks you are using a customised distribution.
If you notice above, I mistakenly assumed you refer to the default Brazilian layout, while you are referring to "us(intl)".
>
> I know screenshots don't "prove" what I am saying.
>
> But here you can see two X applications (rxvt and xterm)
> and the ç (result of '+c). The xfce's run window (GTK+2
> application) shows ć as result of the same key combination.
When you mention '+c, I assume you refer to the line
Thus, when you mention that you press '+c, the compose sequence is
<dead_acute> <c>
> I am using en_US as locale and '+c = ç is the expected behavior
> looking iso8859-1 Compose file:
>
> # Useful for portuguese language
> <dead_acute> <C> : "\307" Ccedilla
> <dead_acute> <c> : "\347" ccedilla
I would say that having 'dead_acute' + 'c' to match ccedilla is counterintuitive. Most probably, it was created due to the absence of dead_cedilla. I assume the legacy compose files (iso-8859-x) where created between 10-15 years ago.
> But, en_US.UTF-8 didn't have those in Compose file. There, <dead_acute> <c>
> is:
>
> <dead_acute> <C> : "Ć" U0106 # LATIN CAPITAL LETTER C
> WITH ACUTE
> <Multi_key> <acute> <C> : "Ć" U0106 # LATIN CAPITAL LETTER C
> WITH ACUTE
> <Multi_key> <apostrophe> <C> : "Ć" U0106 # LATIN CAPITAL LETTER C
> WITH ACUTE
> <combining_acute> <C> : "Ć" U0106 # LATIN CAPITAL LETTER C
> WITH ACUTE
> <dead_acute> <c> : "ć" U0107 # LATIN SMALL LETTER C
> WITH ACUTE
> <Multi_key> <acute> <c> : "ć" U0107 # LATIN SMALL LETTER C
> WITH ACUTE
> <Multi_key> <apostrophe> <c> : "ć" U0107 # LATIN SMALL LETTER C
> WITH ACUTE
> <combining_acute> <c> : "ć" U0107 # LATIN SMALL LETTER C
> WITH ACUTE
>
> The same to pt_BR.UTF-8.
Since we now have dead_cedilla, I do no think the solution would be to assign dead_acute to produce characters with cedilla.
Looking into the us file, you can get the proper dead_cedilla if you select the 'alt-intl' layout (the 'intl' layout does not have it).
(In reply to comment #13)
> Created an attachment (id=21716) [details]
> screenshot showing normal X and GTK+2 applications
Thanks for the detailed reply.
It looks you are using a customised distribution.
If you notice above, I mistakenly assumed you refer to the default Brazilian layout, while you are referring to "us(intl)".
>
> I know screenshots don't "prove" what I am saying.
>
> But here you can see two X applications (rxvt and xterm)
> and the ç (result of '+c). The xfce's run window (GTK+2
> application) shows ć as result of the same key combination.
When you mention '+c, I assume you refer to the line
key <AC11> { [dead_acute, dead_diaeresis, apostrophe, quotedbl ] };
(in /usr/share/ X11/xkb/ symbols/ us section: intl)
Thus, when you mention that you press '+c, the compose sequence is
<dead_acute> <c>
> I am using en_US as locale and '+c = ç is the expected behavior
> looking iso8859-1 Compose file:
>
> # Useful for portuguese language
> <dead_acute> <C> : "\307" Ccedilla
> <dead_acute> <c> : "\347" ccedilla
I would say that having 'dead_acute' + 'c' to match ccedilla is counterintuitive. Most probably, it was created due to the absence of dead_cedilla. I assume the legacy compose files (iso-8859-x) where created between 10-15 years ago.
> But, en_US.UTF-8 didn't have those in Compose file. There, <dead_acute> <c>
> is:
>
> <dead_acute> <C> : "Ć" U0106 # LATIN CAPITAL LETTER C
> WITH ACUTE
> <Multi_key> <acute> <C> : "Ć" U0106 # LATIN CAPITAL LETTER C
> WITH ACUTE
> <Multi_key> <apostrophe> <C> : "Ć" U0106 # LATIN CAPITAL LETTER C
> WITH ACUTE
> <combining_acute> <C> : "Ć" U0106 # LATIN CAPITAL LETTER C
> WITH ACUTE
> <dead_acute> <c> : "ć" U0107 # LATIN SMALL LETTER C
> WITH ACUTE
> <Multi_key> <acute> <c> : "ć" U0107 # LATIN SMALL LETTER C
> WITH ACUTE
> <Multi_key> <apostrophe> <c> : "ć" U0107 # LATIN SMALL LETTER C
> WITH ACUTE
> <combining_acute> <c> : "ć" U0107 # LATIN SMALL LETTER C
> WITH ACUTE
>
> The same to pt_BR.UTF-8.
Since we now have dead_cedilla, I do no think the solution would be to assign dead_acute to produce characters with cedilla.
Looking into the us file, you can get the proper dead_cedilla if you select the 'alt-intl' layout (the 'intl' layout does not have it).
The relevant line is
key <AB08> { [ comma, less, dead_cedilla, dead_caron ] };
so you press AltGr + ',', then c, and you get ç.
To answer your question about GTK+ 2.x, loosely speaking it is hard-coded to the /usr/share/ X11/locale/ en_US.UTF- 8/Compose compose file.