Ctrl + Alt + <key> doesn't work on non-US (f.x. German, Danish) keyboard layout
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
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
Related videos on Youtube
Andreas Drivsholm
Updated on September 18, 2022Comments
-
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 about 10 yearsI 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 about 10 yearscannot 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 about 10 yearsSee the file
~/.xbindkeysrc
comment out everything that you don't want. Firefox was just an example -
Andreas Drivsholm about 10 yearsI 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 about 10 yearsMaybe the terminal already has shortcut keys assigned ?
-
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 about 10 years@AndreasDrivsholm The Ctrl+Alt was just an example, you can use whatever keybindings you want.