A few weeks ago, I asked if the function keys could be mapped to
provide functions in TextEdit such as load, save, empty etc.
I was not aware of the difference between "Key bindings" and "Filters,"
which was pointed out to me by David Frenkiel II (firstname.lastname@example.org).
"First, there is a difference between filters (which r calls to
external programs) and internal textedit functions (supplied by the
textsw object). For the latter, you need to load X resources called
OpenWindow.KeyboardCommand.*, where * may be Store, includeFile,
Translate and dozens of other commands. check out the xview reference
So here's what I came up with:
I looked up the XView Reference Manual, and found a whole
bunch of valuable key bindings that can be activated with the
addition of one line in your .Xdefaults file:
That will allow you to use all the keyboard commands as listed
in Chapter 6, pages 216-234. For those who don't have access
to the book, I'll list a few here:
Meta-s Store (this maps to "Store as new file" - anyone know
how to map it to "Save current file" ?)
Meta-i Include file (This works like the SunView version - you
have to type the filename, select it, and then press
Meta-e Empty file
There are many more, but these are the one most useful to me.
These are external functions, which can be activated by pressing chosen
keys. You can store these in $HOME/.textswrc. Here are some examples
that were in the Florida Sunflash sometime earlier this year (or was it
Note that this is used by not only the text editor, but all text
windows, such as the cmdtool - thus the filters F7-F9!
# Add today's date
echo -n `date '+%a, %h %d 19%y'`
# Shift Selected lines left.
# Shift selected lines right.
shift_lines -t 1
# Spell Check Text And Display Misspelled Words In The Console.
cat|tee $HOME/.extraz;echo ' '>>$HOME/.extraz;\
echo '*** START SPELL-CHECK ***'>/dev/console;\
spell $HOME/.extraz|fmt -46 > /dev/console;\
echo '**** END SPELL-CHECK ****'>/dev/console
# Send Highlighted Text To The Printer.
echo '' >> $HOME/.extraz;\
sed 's//(+L=)/g' $HOME/.extraz|fmt -81 -s|sed 's/(+L=)//g'|lpr;\
echo '' > /dev/console;\
echo '**** SELECTED TEXT ****'>/dev/console;\
echo '**** SENT TO PRINTER ****'>/dev/console
# ls -F
echo "ls -F"
# ls -Fa
echo "ls -Fa"
Hope this summary helps you.
--- Himanshu Gohel, Gohel@csee.usf.edu U of South Florida, Tampa, FL 33620-3140
This archive was generated by hypermail 2.1.2 : Fri Sep 28 2001 - 23:08:00 CDT