Fedora 33 Gnome: I cannot type letter 'ç' a with English (US, alt. Intl.)

Hi everyone,
I cannot type letter ‘ç’ (’+c sequence) a with English (US, alt. Intl.) keyboard, the letter ‘ć’ coming out instead.

The problem exists under Linux only, under Windows, macOS, with the same keyboard layout the letter ‘ç’ comes out normally.

3 Likes

Can you use some control sequence, such as ç ?

I typed Ctrl-Shift-U-00e7 to get that.

1 Like

That’s fine if you need to type a character infrequently, but painful if it’s common in the language you’re writing in…

2 Likes

Normal key sequence (macOS, Windows) is “single-quote+c-character”.

It’s very painful for French (I live in France), but I prefer to use the US keyboard (I’m a dev). Solution:

GTK_IM_MODULE=cedilla
QT_IM_MODULE=cedilla

to put in the /etc/environment file, works on Ubuntu, but does not work on Fedora 33.

Is it an option for you to use “English (US, intl., with dead keys)” or “English (intl., with AltGr dead keys)”?

There you have ‘ç’ as alternative character on ‘,’ key (AltGr+,)

It appears that “US, intl.” as you know if from Windows or Mac are simply not the same layouts as “US, alt. Intl.” in Linux. Wikipedia article also states: “ + c → ç (Windows) or ć (X11)”

4 Likes

Thank you. No way to get the Ubuntu solution to work (“GTK_IM_MODULE = cedilla” to put somewhere)?

I don’t know if this will work, but you might try creating /etc/systemd/system/gdm.service.d/override.conf with the following lines:

[Service]
Environment="GTK_IM_MODULE=cedilla"
PassEnvironment=GTK_IM_MODULE
2 Likes

This might be the missing part to configure it:

I’m the lucky one with the pt-BR keyboard who has a ç key. But as I also use other keyboards this could be very usefully for me to. Thx to bring it up @vvot :+1:

Personally I do not see any reason that the behavior of the English (US, alt. Intl.) keyboard should be different compared to other platforms.

By the way, the directory “/us /lib/x86_64-linux-gnu” does not exist on Fedora 33 :thinking:

Strictly speaking you are comparing apples and pears. The layout you are referencing from other platforms is ‘US international’. The layout you set in your Fedora is ‘US alternative international’. So they are not supposed to be equal.
The layout you want simply doesn’t exist on Fedora.

I think the underlaying problem is that there are two (or even more) characters with diacritics derived from the letter ‘c’. So Win and Mac decided to print ‘ç’ and in Linux the output is ‘ć’. Looks like a dilema - either way someone will be unhappy. Best would be to have two separate layouts…“international cedilla” and “international cacute”

Inconvenient to get used to that one?

That’s because the blog post is slightly older. Instead try Fedora 33 Gnome: I cannot type letter 'ç' a with English (US, alt. Intl.) - #7 by glb

I thank everyone :smiley:

@augenauf I work with several languages and on several platforms and it is very convenient to have the same thing everywhere.

1 Like

Just a quick follow-up about my earlier post – it looks like I mis-read the systemd.exec man page and “PassEnvironment” is not necessary for system services.

Also, since PassEnvironment is not necessary, you could probably use EnvironmentFile=-/etc/environment to make all the variables listed in /etc/environment available to all GNOME processes (it might be cool to get that added to /usr/lib/systemd/system/gdm.service on Fedora Linux so it works by default).

Lastly, it probably isn’t useful to you since you want the same behavior as macOS and Windows, but for those who use only Linux, the package ibus-typing-booster provides an optional input source/method that can be added under SettingsRegion & Language. If you add Other (Typing Booster), then click the gear icon and add the t-latn-pre input method above your native keyboard and save your settings, then you can toggle between this auxiliary input method and your normal one with Super+Space (configurable under keyboard shortcuts). When the Typing Booster input method is enabled, a rocket icon will appear in your system tray and accented characters like ç and ê can be entered by prefixing the letters with ~ and ^ respectively. Here is the full list of modifiers that the t-latn-pre input method provides:

t-latn-pre

(I had to do a screenshot because discourse couldn’t handle all the characters)

If you don’t like the auto-completion popup dialog that Typing Booster displays by default as you type, you can disable that by checking Enable suggestions by key under the options tab. Here are some more screenshots showing my preferred configuration:

P.S. I just noticed while writing this that there is also a t-latn1-pre input method that appears to provide the '+c modifier that you are interested in, so maybe it would work for you afterall?:

Hope that helps. :slightly_smiling_face:

3 Likes

Very interesting, thank you very much. :+1:

Can you add a second layout? I do that to have easy access to certain symbols.

I haven’t seen anyone mention the “compose” key here. I’ve been using that one for some time now, and it works like a charm:

https://help.gnome.org/users/gnome-help/stable/tips-specialchars.html.en

Open “Tweaks”:

image

This allows me to hit my right Alt key, then , and c, and presto: ç (Alt+c+, does the same).

Works for pretty much anything, ć€£éèẽ, you name it!

4 Likes

And another tip: you can override these by making a file named .XCompose (note the leading ., so it’s a hidden file in Linux) in your home directory, with contents like this:

<Multi_key> <minus> <minus> : "—" U2014 
<Multi_key> <less> <3>      : "❤️"   U2764  # red emoji heart
<Multi_key> <m> <m>         : "𝔪"   U1D4C2 # mathematical script small m

This even lets you override existing Compose key sequences. I was tired of em dash taking three presses of the - key, so I made it just two. Find examples in /usr/share/X11/locale/en_US.UTF-8/Compose (or replace en_US.UTF-8 with another locale to see others).

3 Likes

Oh, and personally, I use Caps Lock, because it’s really convenient on the home row and I don’t actually need to shout all that often (and can just hold shift in the rare cases where I do want a bunch of all caps).

Another good candidate on ThinkPad keyboards is Print Screen (PrtScn in the menu above, PrtSc on the keyboard itself), because that’s got a pretty handy lower row position and this will serve the dual purpose of not accidentally filling ~/Pictures with screenshots you didn’t mean to take.

3 Likes

On Mate, I use fedora menu → system → preferences → keyboard → layouts tab → [Options…]
to set the Compose key to be the Menu key (the key at the lower right between Alt and Ctrl).
Then tapping the Menu key, tapping the comma key (,) and tapping the c key (c) gives ç

Good one. I personally hesitate on assigning that, probably because I learned to type on a mechanical typewriter, and things like Caps Lock, Tab, etc. are “essential” keys in my mind.

The name .Xcompose makes me suspect it only works under X11… Is that correct?