Ctrl + Alt + <key> doesn't work on non-US (f.x. German, Danish) keyboard layout

6,429

Solution 1

You can try xbindkeys

sudo apt-get install xbindkeys

Create the default config file for xbindkeys

xbindkeys --defaults > /home/your-user-name/.xbindkeysrc

Install xbindkeys-config, the GUI for xbindkeys

sudo apt-get install xbindkeys-config
sudo apt-get install xvkbd

Start xbindkeys with Ctrl+F2

xbindkeys

For GUI editor:

xbindkeys-config

Edit the file ~/.xbindkeysrc

Comment commands there that you don't want.

At the end of the file, put the mapping that you want:

Example: Launch Firefox with Ctrl+F

Firefox: Ctrl+F

The first line is the command line operation to send when your desired key combination occurs.

The second line is the keystroke to invoke the operation

To find the syntax for the AltGr key being pressed, you can run the xbindkeys-config utility and click the Get Key button.

Then

""xvkbd -xsendevent -text '[AltGr]'"" Ctrl+Alt

Final note: you can set xbindkeys to launch on startup — in Ubuntu, just go to System -> Preferences -> Startup Applications and add a new command xbindkeys.

Also check this article from our website

Source of article

Solution 2

Keyboard > Shortcuts > Typing > Alternative Character Keys:

Select f.x. Left Alt

The caveat is that this solution will disable a all OS and GUI shortcuts where Alt is involved ... not good.

But it seems to make perfect sense to use Caps Lock.

Only CHOLERICS need it and it is actually easier to type than Alt or Ctrl+Alt.


On Linux Mint 17.3 there is no option for mapping Caps Lock to AltGr. But I found this solution to work:

https://superuser.com/a/533073/163236

Solution 3

You could add global shortcuts to write special chars. I use this often for my German keyboard layout with Ubuntu (on Windows this work out of the box).

I added the following shortcuts:

Shift+Enter+7 to write the letter {

Shift+Enter+0 to write the letter }

Shift+Enter+8 to write the letter [

Shift+Enter+9 to write the letter ]

To add these shortcuts you will need xbindkeys and xvkbd:

sudo apt-get install xbindkeys xvkbd

Then edit the configuration file:

vim ~/.xbindkeysrc

And add the following lines (edit them as you prefer):

"xvkbd -xsendevent -text '{'"
    m:0xc + c:16
    Control+Alt + 7

"xvkbd -xsendevent -text '['"
    m:0xc + c:17
    Control+Alt + 8

"xvkbd -xsendevent -text ']'"
    m:0xc + c:18
    Control+Alt + 9

"xvkbd -xsendevent -text '}'"
    m:0xc + c:19
    Control+Alt + 0

"xvkbd -xsendevent -text '\[backslash]'"
    m:0xc + c:20
    Control+Alt + ssharp

"xvkbd -xsendevent -text '\[asciitilde]'"
    m:0xc + c:35
    Control+Alt + plus

Then reload xbindkeys:

xbindkeys -f ~/.xbindkeysrc

Thanks to whizz for sharing this (http://forum.ubuntuusers.de/topic/strg-%2B-alt-alt-gr-wie-in-windows/).

This is a copy of my answer on unix.stackexchange.com: https://unix.stackexchange.com/a/184886/103140

Share:
6,429

Related videos on Youtube

Andreas Drivsholm
Author by

Andreas Drivsholm

Updated on September 18, 2022

Comments

  • Andreas Drivsholm
    Andreas Drivsholm over 1 year

    I have just recently moved from MS windows to Linux, and it is great; but there is one thing that really bugs me, and that is the use of Ctrl+Alt+key instead of using Alt Gr+key.

    When I program, it irritates me that often used buttons like curly-braces and square-brackets are not easily accessed through Ctrl+Alt+key. How do I change the behavior of Ctrl+Alt+key to do the same as Alt Gr+key?

    As mentioned earlier, my keyboard has a Danish layout.

    • Raffael
      Raffael about 10 years
      I am also used to type "{" via Ctrl + Alt + Key with Key being on my keyboard layout the "7" (offering "/" and "{"). For AltGr + Key I would have to lift my left hand which is way too much effort to right bracket-prone code in R f.x. It seems this question is specific to non-US-layouts.
  • Raffael
    Raffael about 10 years
    cannot make it work using the xbindkeys-config GUI editor for Ctrl-F to open Firefox. xbindkeys -s shows the new command but XTerminal keeps on opening.
  • LnxSlck
    LnxSlck about 10 years
    See the file ~/.xbindkeysrc comment out everything that you don't want. Firefox was just an example
  • Andreas Drivsholm
    Andreas Drivsholm about 10 years
    I did what you said, though with some minor moderations - I made it like this: "xvkbd -xsendevent -text '\{'" Ctrl + Alt + 7 It works fine in Mozilla firefox, Libre Writer, Dash Home, etc. But in some programs, including software center and especially the terminal it does not work. I use the terminal a lot, so is irritating me a lot. Any suggestions on why it is acting like this?
  • LnxSlck
    LnxSlck about 10 years
    Maybe the terminal already has shortcut keys assigned ?
  • Andreas Drivsholm
    Andreas Drivsholm about 10 years
    @LnxSlck If that is the case, how do I change them? Do you know if there is a better binding than Ctrl + Alt? Perhaps Shift + Alt?
  • LnxSlck
    LnxSlck about 10 years
    @AndreasDrivsholm The Ctrl+Alt was just an example, you can use whatever keybindings you want.