#!/bin/sh # $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $ userresources=$HOME/.Xresources usermodmap=$HOME/.Xmodmap sysresources=/usr/X11R6/lib/X11/xinit/.Xresources sysmodmap=/usr/X11R6/lib/X11/xinit/.Xmodmap # merge in defaults and keymaps if [ -f $sysresources ]; then xrdb -merge $sysresources fi if [ -f $sysmodmap ]; then xmodmap $sysmodmap fi if [ -f $userresources ]; then xrdb -merge $userresources fi if [ -f $usermodmap ]; then xmodmap $usermodmap fi # start some nice programs if [ -f $HOME/.Xclients ]; then exec $HOME/.Xclients elif [ -f /etc/X11/xinit/Xclients ]; then exec /etc/X11/xinit/Xclients else xclock -geometry 50x50-1+1 & xterm -geometry 80x50+494+51 & xterm -geometry 80x20+494-0 & if [ -f /usr/X11R6/bin/arena -a -f /usr/doc/HTML/index.html ]; then arena /usr/doc/HTML/index.html & fi if [ -f /usr/X11R6/bin/fvwm ]; then exec fvwm else exec twm fi fi
/usr/X11R6/bin/xmodmap
Convention places xmodmap keymappings in ~/.xmodmaprc
/usr/X11R6/lib/X11/xinit/xinitrc looks for keymappings in ~/.Xmodmap
xmodmap -e "pointer = 3 2 1"
/home/matthew> xmodmap -e "keysym BackSpace = Delete" /home/matthew> echo "XTerm*ttyModes: erase ^?" | xrdb -merge
! ! Swap Caps_Lock and Control_L ! remove Lock = Caps_Lock remove Control = Control_L keysym Control_L = Caps_Lock keysym Caps_Lock = Control_L add Lock = Caps_Lock add Control = Control_L
/home/matthew> xmodmap -e "keycode 76 = Delete"
A complete list of keysym codes can be found in
/usr/X11R6/include/X11/keysymdef.h
(here is a portion of that file)
#define XK_BackSpace 0xFF08 /* back space, back char */ #define XK_Tab 0xFF09 #define XK_Linefeed 0xFF0A /* Linefeed, LF */ #define XK_Clear 0xFF0B #define XK_Return 0xFF0D /* Return, enter */ #define XK_Pause 0xFF13 /* Pause, hold */ #define XK_Scroll_Lock 0xFF14 #define XK_Sys_Req 0xFF15 #define XK_Escape 0xFF1B #define XK_Delete 0xFFFF /* Delete, rubout */
Use /usr/X11R6/bin/xev to determine keycodes (keycodes are nonportable)
Last Modified: 14 June 1997
St. Louis Unix Users Group - Linux SIG