Ctrl+. (Dot) makes "e" appear instead of showing suggestions in VSCode on Gnome

5.7k Views Asked by At

I'm using VSCode on Gnome (on XOrg on Arch). Since lately, the shortcut Ctrl+. stopped working, despite still being listed in the keyboard shortcuts and despite all extensions being disabled. Instead, an underlined e appears:

enter image description here

The character goes away when pressing enter twice or ESC once. When writing something and then pressing enter, the e goes away but the written text stays. When changing the window while the e is underlined, it becomes a regular e.

This seems to behave somewhat similarly to the compose key, which displays an underlined centered dot after being pressed.

I can't find any keyboard shortcuts for Ctrl+. in the Gnome settings.

What is this feature? What is it good for? And how can I restore the original behavior?

4

There are 4 best solutions below

2
On BEST ANSWER

This is not related to VSCode, as the same thing happens in any text input field across all apps (both on Wayland and Xorg, Fedora).

The issue appeared on my pc when I upgraded to Gnome 42, and I still can't find a way to fix it (keyboard shortcuts don't have any entry for Ctrl+.).

Edit: Found this post about this issue. Their fix is to run ibus-setup and to disable the ibus shortcut.

1
On

Restarting Gnome solved the issue. To restart gnome,

  1. Press Alt+F2
  2. Type r
  3. Press Enter
1
On

This issue is not related to VSCode. I've experienced it too on my Linux Ubuntu 22.

Try this to turn off Emoji annotation keyboard shortcut:

$ gsettings set org.freedesktop.ibus.panel.emoji hotkey "[]"

Or run

$ ibus-setup

Under emoji tab, clear 'Emoji annotation'

enter image description here

0
On

I want to add some details.

  1. Command ibus-setup opens a window.
  2. At the Emoji tab you will see <Control>period;<Control>semicolon
  3. Click three dots on the right-hand side ...
  4. Then select <Control>period and delete it. Or change it if you want.
  5. Now your ctrl + . must be working just fine.