Skip to main content
Topic: Remap Alt_r to Super_R for Cyrillic layout - keycode 108 (keysym 0x0 nosymbol) (Read 417 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Remap Alt_r to Super_R for Cyrillic layout - keycode 108 (keysym 0x0 nosymbol)

I remapped Alt_R to Super_R.

.Xmodmap
Quote
remove mod1 = Alt_R
2 keycode 108 = Super_R
3 add mod1 = Alt_R

But when I change layout to Cyrillic, xev shows keycode 108 (keysym 0x0 nosymbol) for Alt_R.

This breaks switching window groups with tiling window managers.

I don't feel ready to dive into remapping topic, as it seems solutions are not always straight.
On tackexchange people give up to use xmodmap for CapsLock <-> Escape switch, and instead just use
setxkbmap caps:escape.
So ready solution appreceated.  ???

Re: Remap Alt_r to Super_R for Cyrillic layout - keycode 108 (keysym 0x0 nosymbol)

Reply #1
I know you can run things like this as a desktop startup application command, this would put a Euro sign € on shift + left-super (windows key) for example:
Code: [Select]
xmodmap -e 'keycode 133 = Super_L EuroSign Super_L'
At one time I had some problems getting that particular command to work in a browser of some sort incidentally although I can't remember the exact details, but some apps have their own keymappings that might interfere with your changes.
Anyway, when I installed fcitx I had to run xmodmap again manually after the desktop had started, perhaps the keymap was getting reloaded? So I put a delay of 5 seconds (a random selection, didn't try others) on the startup command, and then it worked again.

Re: Remap Alt_r to Super_R for Cyrillic layout - keycode 108 (keysym 0x0 nosymbol)

Reply #2
I remapped ...
But when I change layout to Cyrillic, ...
It is extremely simple and easy.

.Xmodmap
Code: [Select]
clear lock
keycode 66 = Mode_switch NoSymbol Mode_switch
add lock = Mode_switch
keycode 10 = 1 2 3 4 5 6

How to use:

Code: [Select]
1=1
Shift+1=2
AltGr+1=5
AltGr+Shift+1=6
CapsLock+1=3
CapsLock+Shift+1=4
Your task is to replace position 3 and 4 in the Xmodmap file with characters of your choice on the corresponding keys.
When you are done, you have your own keyboard layout with layout switch (CapsLock).
"Wer alles kann, macht nichts richtig"

Artix USE="runit openrc slim openbox lxde gtk2 qt4 qt5 qt6 conky
-gtk3 -gtk4 -adwaita{cursors,themes,icons} -gnome3 -kde -plasma -wayland "

Re: Remap Alt_r to Super_R for Cyrillic layout - keycode 108 (keysym 0x0 nosymbol)

Reply #3
Problem is not with 1 2 3 4 5  keys but with Alt_R.
As I mentioned when I swithch to Cyrillic, Alt_R becomes empty

xev prints
Quote
keycode 108 (keysym 0x0 nosymbol)
Instead of
Quote
keycode 108 (keysym 0xffec, Super_R)


Re: Remap Alt_r to Super_R for Cyrillic layout - keycode 108 (keysym 0x0 nosymbol)

Reply #4
This breaks switching window groups with tiling window managers.
I don't feel ready to dive into remapping topic, as it seems solutions are not always straight.
So ready solution appreceated.  ???
My solution is exactly what you are looking for, but you have to implement it yourself.

https://en.wikipedia.org/wiki/Cyrillic_(Unicode_block)
https://www.utf8-chartable.de/unicode-utf8-table.pl
/usr/share/X11/xkb/symbols/ru
"Wer alles kann, macht nichts richtig"

Artix USE="runit openrc slim openbox lxde gtk2 qt4 qt5 qt6 conky
-gtk3 -gtk4 -adwaita{cursors,themes,icons} -gnome3 -kde -plasma -wayland "

 

Re: Remap Alt_r to Super_R for Cyrillic layout - keycode 108 (keysym 0x0 nosymbol)

Reply #5
For problems like this I have used my ./.bashrc file  with setxkbmap

such as this to kill the cap locl key that makes me crazy

setxkbmap -option ctrl:nocaps

Code: [Select]
SETXKBMAP(1)                        General Commands Manual                        SETXKBMAP(1)



NAME
       setxkbmap - set the keyboard using the X Keyboard Extension

SYNOPSIS
       setxkbmap [ args ] [ layout [ variant [ option ...  ] ] ]

DESCRIPTION
       The  setxkbmap  command  maps  the  keyboard to use the layout determined by the options
       specified on the command line.

       An XKB keymap is constructed from a number of components  which  are  compiled  only  as
       needed.  The source for all of the components can be found in /usr/share/X11/xkb.

That is with X11 though.