Modify keyboard: Unterschied zwischen den Versionen

Aus Wiki
Zur Navigation springen Zur Suche springen
Zeile 13: Zeile 13:
So far no root access is required.
So far no root access is required.


== For automatic loading at login? [NOT WORKING] ==
== For automatic loading at login? [NOT WORKING?] ==


  $ cp xkbmap $HOME/.Xkbmap
   $ cp /etc/X11/xinit/xinitrc .xinitrc
   $ cp /etc/X11/xinit/xinitrc .xinitrc
   $ chmod 755 .xinitrc
   $ chmod 755 .xinitrc
Add the following to .xinitrc
  # CB
  test -f ~/bin/xkbmap && xkbcomp -w 0 ~/bin/xkbmap $DISPLAY
  # Disable 'popup'-key
  xmodmap -e 'keycode 135='


== Save compiled keymap to file ==
== Save compiled keymap to file ==

Version vom 18. Juli 2023, 14:48 Uhr

Manual way, remains until reboot

First, export your keyboard configurations to a file:

 $ xkbcomp -xkb $DISPLAY xkbmap

Modify file xkbmap.

Save and reload keyboard configurations:

 $ xkbcomp -w 0 xkbmap $DISPLAY

So far no root access is required.

For automatic loading at login? [NOT WORKING?]

 $ cp /etc/X11/xinit/xinitrc .xinitrc
 $ chmod 755 .xinitrc

Add the following to .xinitrc

 # CB
 test -f ~/bin/xkbmap && xkbcomp -w 0 ~/bin/xkbmap $DISPLAY
 # Disable 'popup'-key
 xmodmap -e 'keycode 135='

Save compiled keymap to file

 $ xkbcomp -w 0 xkbmap -o xkbmap.xkm

Disable particular key

 $ xmodmap -e 'keycode 135='
 This example disables key with keycode 135. For determining keycode use `xev -event keyboard`.

Links

Example modification

   key <AD02> {
       type= "FOUR_LEVEL_ALPHABETIC",
       symbols[Group1]= [               w,               W,         asciitilde,         Lstroke ]
   };
   ...
   key <AC01> {
       type= "FOUR_LEVEL_ALPHABETIC",
       symbols[Group1]= [               a,               A,           braceleft,              AE ]
   };
   key <AC02> {
       type= "FOUR_LEVEL_SEMIALPHABETIC",
       symbols[Group1]= [               s,               S,           bracketleft,           U1E9E ]
   };
   key <AC03> {
       type= "FOUR_LEVEL_ALPHABETIC",
       symbols[Group1]= [               d,               D,           bracketright,             ETH ]
   };
   key <AC04> {
       type= "FOUR_LEVEL_SEMIALPHABETIC",
       symbols[Group1]= [               f,               F,           braceright,     ordfeminine ]
   };
   key <AC05> {
       type= "FOUR_LEVEL_ALPHABETIC",
       symbols[Group1]= [               g,               G,           backslash,             ENG ]
   };