Linux Tips

Robert A. Dalrymple

Issue #17, September 1995

Familiar tools, such as textedit and commandtool, provide some comfort to those who are used to a Sun system.

The OpenLook window manager (olwm or olvwm) makes your Linux box look like a Sun workstation. Familiar tools, such as textedit and commandtool, provide some comfort to those who are used to a Sun system. A couple of tips can raise this comfort level even higher.

For example, the Slackware distribution redefines some of the keys across the top of your PC keyboard so that you have the cut, copy, and paste functions that are part of textedit. To see this, examine the .Xmodmap file in your root directory, which is run when olwm starts:

! F1=Help (move pointer on panel, press F1 to show
! help on the item)
! F2=Find (after having selected some text, press F2
! to do a search)
! F3=Cut  (select text, press F3 to move text into
! clipboard)
! F4=Copy (select text, press F4 to copy text into
! clipboard)
! F5=Paste (insert text from clipboard at caret
! position)
keysym F1 = Help
keysym F2 = F19
keysym F3 = F20
keysym F4 = F16
keysym F5 = F18

So, some of the same functions are available, but with different keys than on the Sun keyboard. But what about that critically necessary key for undo? To get it, add the following to your .Xmodmap file:

! F6=Undo
keysym F6 = F14

This change will be implemented the next time you fire up Open Look.

To provide a key (f8 say) to pop up a buried window, add the following to your .Xdefaults file:

OpenWindows.KeyboardCommand.RaiseLower:   F8

This is especially important if you have AutoRaise active, which immediately brings forward the window your cursor is in (In .Xdefaults this is OpenWindows.AutoRaise: True). Now type xrdb .Xdefaults to make the changes immediately.

Does your keyboard have the caps lock key where your Sun has the control key? Do you keep hitting the wrong one? No problem to interchange them–insert the following lines in your xmodmap file (taken from the man page for xmodmap):

! 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

Do you want to define a meta key? keysym F9=Meta_L placed in the .Xmodmap file will do it. This gives you some flexibility with textedit commands, which are defined also for a meta key combination—meta-x for cut, meta-v for paste, etc. See the man page for textedit for more. This meta key would also be available for emacs. Another option for the meta key is to define it in the Keyboard section of /usr/X11R6/lib/X11/XF86Config (as root, of course):

LeftAlt   Meta

The XFree86kbd man page describes other keys that can be defined there.

Finally, if you use a Sun machine at work, change the .Xmodmap files on it, so that the function keys at the top of the keyboard are defined the same way on both machines, just in case you get too used to the Linux keyboard layout! This may entail using keycodes rather than keysyms:

keycode 13 = F19
keycode 15 = F20
keycode 17 = F16
keycode 19 = F18
keycode 21 = F14

Robert A. Dalrymple teaches coastal engineering at the University of Delaware. His address is rad@coastal.udel.edu; also http://coastal.udel.edu.