rickers@drexel.UUCP (Rick Wargo) (07/28/88)
The following is a terminfo generator for ansi/AT386 monitors under Microport Sys V/386 (Sys V/AT). It allows you to select fore/back ground colors, cursors, and standout mode. It also is a fairly complete ansi entry, circumventing the bugs in the ansi driver. It works fine with vi, emacs, uemacs, jove, wanderer, less, more, and the like. I have found that a lot of ansi entrie out there don't do too well with gnu emacs and wanderer. This one does. And beware, the entry posted a few days ago by keith@uport contains a few problems. Enjoy it! Rickers ..!drexel!rickers ---- Cut Here and unpack ---- #!/bin/sh # shar: Shell Archiver (v1.22) # Packed Wed Jul 27 15:21:21 EDT 1988 by rickers # from directory /usr/rickers/uport/terminfo # # Run the following text with /bin/sh to create: # README # catie # rt # if test -f README; then echo "File README exists"; else echo "x - extracting README (Text)" sed 's/^X//' << 'SHAR_EOF' > README && X X catie -- Configure Ansi TermInfo Entries X X Author: Rick Wargo X Date: july 27, 1988 X X Copyright 1988 P & T Consultants, Inc. X Permission has been granted to use this software, as long as X no profits are made from it. The copyright notice and X author identification must retain intact. X XOkay.... here it is, finally. A shell script capable of configuring Xa terminfo entry based on what *you* want. I have seen bunches of terminfo Xentries for the ansi monitor for Microport Unix SysV, but none of them Xheld up to all of the big tests (gnu emacs, month, wanderer, less, ...). XCatie generates a terminfo entry that stands up against all of these, and Xalso allows you to configure some modes to suit your own taste. X XTo run, just type `catie' and read the directions it gives you. Catie tells Xyou how to install the terminfo entry for the ansi monitor. X XI have written this on Microport V/386 and have not tested it under Sys V/AT, Xalthough it should work. X XI plan to keep making the entry that is generated better and better, so if Xthere are any comments or suggestions, let me know. If there are any Xproblems, please let me know about them. X XI have include a small script I use to reset the terminal when things Xdon't seem to be working just right. The script is called `rt' and should Xbe placed in your path. When something is wrong, try typing: ^Jrt^J X(^J is a control-J) and that should get things back to normal. X X Enjoy, X Rickers X ..!drexel!rickers X SHAR_EOF chmod 0664 README || echo "restore of README fails" fi if test -f catie; then echo "File catie exists"; else echo "x - extracting catie (Text)" sed 's/^X//' << 'SHAR_EOF' > catie && X: catie -- configure ansi terminfo entry for ansi monitor X# X# File: catie X# Author: Rick Wargo X# Date: July 27, 1988 X# X# Firm: P & T Consultants, Inc. X# 80. W. Georgianna Dr. X# Richboro, PA 18954 X# (215) 895-1913 X# X# Copyright 1988 P & T Consultants, Inc. X# Permission has been granted to use this software, as long as X# no profits are made from it. The copyright notice and author X# identification must retain intact. X# X# X# Set up some variables so that we can use them in extracting the entry. X# Xnormal=0 Xbold=1 Xunderline=4 Xblink=5 Xreverse=7 Xinvisible=8 Xlowerchars=10 Xgraphcontrol=11 Xupperchars=12 Xcursor_underline=23 Xcursor_blinking_block=24 Xcursor_invisible=25 Xcursor_steady_block=26 Xcursor_reset=27 Xblack=30 Xred=31 Xgreen=32 Xbrown=33 Xblue=34 Xmagenta=35 Xcyan=36 Xwhite=37 Xmagenta_RED=38 Xmagenta_blue=39 Xblack_background=40 Xred_background=41 Xgreen_background=42 Xbrown_background=43 Xblue_background=44 Xmagenta_background=45 Xcyan_background=46 Xwhite_background=47 Xred_backBlink=48 Xblue_background=49 X# X# Variables to direct which way to go X# Xcolor_mono=color Xfore_color=${bold}${brown} Xback_color=${black_background} Xgraphics=yes Xnormal_cursor=${cursor_underline} Xvery_visible_cursor=${cursor_steady_block} Xstandout=${blue_background} Xif [ i386 ]; then X ansi=AT386 X lines=25 Xelse X ansi=ansi X lines=24 Xfi X# X# escape sequences X# Xsmso=`tput smso` Xif [ -z "$smso" ]; then X smso="\033[1;7;33;44m" Xfi Xrmso=`tput rmso` Xif [ -z "$rmso" ]; then X rmso="\033[0;40m" Xfi Xcuu1=`tput cuu1` Xif [ -z "$cuu1" ]; then X cuu1="\033[A" Xfi Xel=`tput el` Xif [ -z "$el" ]; then X el="\033[K" Xfi Xed=`tput ed` Xif [ -z "$ed" ]; then X ed="\033[J" Xfi Xclear=`tput clear` Xif [ -z "$clear" ]; then X clear="\033[H\033[J" Xfi X# X# Some utility routines X# XContinue(){ X echo "$smso[Press <RETURN> to continue]$rmso\c" X read line X echo "$cuu1$ed\c" X} X# X# Let's do it. X# X# setcolor -f white -b black Xecho "$clear\c" Xcat <<!Funky!Stuff! X X Welcome to the Configure Ansi TermInfo program. This is a utility X program designed to set up a really nice terminfo entry for the X ansi monitor. It will extract a terminfo entry for a color or X monochrome monitor, depending on what you want. It has the capability X to set some different cursors, as well as having colored foreground and X background. X X Catie was written by Rick Wargo of P & T Consultants, Inc. Permission X is granted to use this program in any way you like as long as you do not X profit from it. By-products of the product, that is the the generated X terminfo files, are in the public domain. X X Enjoy! X Rickers X ..!drexel!rickers X X ------------------------------------------------------------------------ X X!Funky!Stuff! XContinue Xecho "$clear\c" Xecho "Would you like to use the ${smso}color${rmso} or ${smso}mono${rmso} entry [color] \c" Xread line Xif [ -z "$line" -o \( `expr "$line" : 'c.*'` -gt 0 \) ]; then X color_mono=color Xelse X color_mono=mono Xfi Xif [ $color_mono = "mono" ]; then X echo "" X echo Select the type of standout mode you would like: X echo " 1) \033[${reverse}mstandout mode type 1 -- reverse\033[m" X echo " 2) \033[${bold};${reverse}mstandout mode type 2 -- bold/reverse\033[m" X echo " 3) \033[${blink};${reverse}mstandout mode type 3 -- blink/reverse\033[m" X echo "" X echo " Select type of standout [1] \c" X read line X case "$line" in X 1) standout=${reverse} ;; X 2) standout="${bold};${reverse}" ;; X 3) standout="${blink};${reverse}" ;; X *) standout=${reverse} ; line=1 ;; X esac X echo "" X echo "You have selected \033[${standout}mmode type ${line}\033[0m." X sleep 2 Xelse X echo "" X echo "Select the foreground color (of the text)." X echo "\033[0;37m" X echo " 1) \033[${white}mblack\033[0;37m 11) \033[1;${black}mbright black\033[0;37m" X echo " 2) \033[${red}mred\033[0;37m 12) \033[1;${red}mbright red\033[0;37m" X echo " 3) \033[${green}mgreen\033[0;37m 13) \033[1;${green}mbright green\033[0;37m" X echo " 4) \033[${brown}mbrown\033[0;37m 14) \033[1;${brown}mbright brown\033[0;37m" X echo " 5) \033[${blue}mblue\033[0;37m 15) \033[1;${blue}mbright blue\033[0;37m" X echo " 6) \033[${magenta}mmagenta\033[0;37m 16) \033[1;${magenta}mbright magenta\033[0;37m" X echo " 7) \033[${cyan}mcyan\033[0;37m 17) \033[1;${cyan}mbright cyan\033[0;37m" X echo " 8) \033[${white}mwhite\033[0;37m 18) \033[1;${white}mbright white\033[0;37m" X X echo "" X echo " Select color of foreground text [14] \c" X read line X case "$line" in X 1) fore_color=${black} ;; X 2) fore_color=${red} ;; X 3) fore_color=${green} ;; X 4) fore_color=${brown} ;; X 5) fore_color=${blue} ;; X 6) fore_color=${magenta} ;; X 7) fore_color=${cyan} ;; X 8) fore_color=${white} ;; X 11) fore_color="${bold};${black}" ;; X 12) fore_color="${bold};${red}" ;; X 13) fore_color="${bold};${green}" ;; X 14) fore_color="${bold};${brown}" ;; X 15) fore_color="${bold};${blue}" ;; X 16) fore_color="${bold};${magenta}" ;; X 17) fore_color="${bold};${cyan}" ;; X 18) fore_color="${bold};${white}" ;; X *) fore_color="${bold};${brown}" ; line=14 ;; X esac X echo "" X echo "\033[${fore_color}mYou have selected this color for the foreground text." X sleep 2 X setcolor -b black X echo "$clear\c" X echo "Select the background color." X echo "" X echo " 1) \033[${black_background}m black \033[0;40m" X echo " 2) \033[${red_background}m red \033[0;40m" X echo " 3) \033[${green_background}m green \033[0;40m" X echo " 4) \033[${brown_background}m brown \033[0;40m" X echo " 5) \033[${blue_background}m blue \033[0;40m" X echo " 6) \033[${magenta_background}m magenta \033[0;40m" X echo " 7) \033[${cyan_background}m cyan \033[0;40m" X echo " 8) \033[${white_background}m white \033[0;40m" X echo "" X echo " Select color of the background [1] \c" X read line X case "$line" in X 1) back_color=${black_background} ;; X 2) back_color=${red_background} ;; X 3) back_color=${green_background} ;; X 4) back_color=${brown_background} ;; X 5) back_color=${blue_background} ;; X 6) back_color=${magenta_background} ;; X 7) back_color=${cyan_background} ;; X 8) back_color=${white_background} ;; X *) back_color=${black_background} ; line=1 ;; X esac X echo "" X echo "\033[${back_color}mYou have selected this color for the background." X sleep 2 X echo "${clear}" X echo Select the type of standout mode you would like: X echo "" X echo " 1) \033[${black_background}mstandout mode type 1 -- black background\033[0;${back_color}m" X echo " 2) \033[${red_background}mstandout mode type 2 -- red background\033[0;${back_color}m" X echo " 3) \033[${green_background}mstandout mode type 3 -- green background\033[0;${back_color}m" X echo " 4) \033[${brown_background}mstandout mode type 4 -- brown background\033[0;${back_color}m" X echo " 5) \033[${blue_background}mstandout mode type 5 -- blue background\033[0;${back_color}m" X echo " 6) \033[${magenta_background}mstandout mode type 6 -- magenta background\033[0;${back_color}m" X echo " 7) \033[${cyan_background}mstandout mode type 7 -- cyan background\033[0;${back_color}m" X echo " 8) \033[${white_background}mstandout mode type 8 -- white background\033[0;${back_color}m" X echo " 9) \033[${reverse}mstandout mode type 9 -- reverse\033[0;${back_color}m" X echo " 10) \033[${bold};${reverse}mstandout mode type 10 -- bold/reverse\033[0;${back_color}m" X echo "" X echo " Select type of standout [5] \c" X read line X case "$line" in X 1) standout=${black_background} ;; X 2) standout=${red_background} ;; X 3) standout=${green_background} ;; X 4) standout=${brown_background} ;; X 5) standout=${blue_background} ;; X 6) standout=${magenta_background} ;; X 7) standout=${cyan_background} ;; X 8) standout=${white_background} ;; X 9) standout=${reverse} ;; X 10) standout="${bold};${reverse}" ;; X *) standout=${blue_background} ; line=5 ;; X esac X echo "" X echo "You have selected \033[${standout}mmode type ${line}\033[0;${back_color}m." X sleep 2 Xfi X# X# Now handle the normal cursor X# Xecho "$clear\c" Xecho "" Xecho "Select the type of normal cursor you would like:" Xecho " 1) blinking underline" Xecho " 2) blinking block" Xecho " 3) steady block" Xecho " 4) invisible" Xecho "" Xecho " Select type of normal cursor [1] \c" Xread line Xcase "$line" in X 1) normal_cursor=${cursor_underline} ;; X 2) normal_cursor=${cursor_blinking_block} ;; X 3) normal_cursor=${cursor_steady_block} ;; X 4) normal_cursor=${cursor_invisible} ;; X *) normal_cursor=${cursor_underline} ; line=1 ;; Xesac Xecho "" Xecho "You have selected cursor ${line}.\033[${cursor_reset};${normal_cursor}m" X# X# Now handle the editting cursor (cursor_very_visible) X# Xecho "" Xecho Select the type of very visible cursor you would like: Xecho " 1) blinking underline" Xecho " 2) blinking block" Xecho " 3) steady block" Xecho "" Xecho " Select type of very visible cursor [3] \c" Xread line Xcase "$line" in X 1) very_visible_cursor=${cursor_underline} ;; X 2) very_visible_cursor=${cursor_blinking_block} ;; X 3) very_visible_cursor=${cursor_steady_block} ;; X *) very_visible_cursor=${cursor_steady_block} ; line=3 ;; Xesac Xecho "" Xecho "You have selected cursor ${line}. This is it -->\c" Xecho "\033[${cursor_reset};${very_visible_cursor}m\c" Xsleep 2 Xecho "\033[${cursor_reset};${normal_cursor}m" X# X# Okay, now extract the terminfo entry. X# Xecho "${clear}\c" Xcat<<!Funky!Stuff! X XNow you must decide the name of this terminfo entry. You may select one or Xmore names. The standard name is ${ansi}. You may wish to extract different Xentries for color and mono. I would call these ${ansi}-color and ${ansi}-mono Xrespectively. You will be prompted for the major name of this entry. You Xwill also be given a chance to make synonyms for this entry. Synonyms are Xof the form: name1|name2|name3... X X!Funky!Stuff! Xecho "Enter the major name of this terminfo entry [${ansi}] \c" Xread line Xmajor=${line:=${ansi}} Xecho "Enter synonyms for ${major} (hit return for none)" Xecho "> \c" Xread line Xsynonyms=${line} X Xfilename=${major}.ti Xecho "Extracting terminfo entry into ${filename}..." Xif [ -f "${filename}" ]; then X echo "catie: will not overwrite ${filename}, using ${major}.$$ instead." X filename=${major}.$$ X rm -f ${filename} Xfi X Xif [ -s "$synonyms" ]; then X header="${major}|${synonyms}" Xelse X header=${major} Xfi Xheader="${header}|catie generated terminfo entry (${color_mono})," X Xecho ${header} > ${filename} X Xif [ "$color_mono" = "color" ]; then X cat <<!Color! >> ${filename} X am, X mir, X xon, X cols#80, X it#8, X lines#${lines}, X vt#3, X acsc=0[a~fxgqh~jYk?lZm@nEqDtCu4vAwBx3~y, X bel=^G, X blink=\E[$blink}m, X bold=\E[${bold}m, X cbt=\E[Z, X civis=\E[${cursor_invisible};${cursor_reset}m, X clear=\E[H\E[J, X cnorm=\E[${normal_cursor};${cursor_reset}m, X cr=\r, X csr=\E[%i%p1%d;%p2%dr, X cub=\E[%p1%dD, X cub1=\b, X cud=\E[%p1%dB, X cud1=\n, X cuf=\E[%p1%dC, X cuf1=\E[C, X cup=\E[%i%p1%d;%p2%dH, X cuu=\E[%p1%dA, X cuu1=\E[A, X cvvis=\E[${very_visible_cursor}m, X dch=\E[%p1%dP, X dch1=\E[P, X dl=\E[%p1%dM, X dl1=\E[M, X ech=\E[%p1%dX, X ed=\E[J, X el=\E[K, X el1=\E[1K, X home=\E[H, X hpa=\E[%i%p1%dG, X ht=\t, X hts=\EH, X il=\E[%p1%dL, X il1=\E[L, X ind=\E[S, X indn=\E[%p1%dS, X invis=\E[${invisible}m, X is1=\E[=h, X is2=\E7\E[1;25r\E8\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8l\E[0;10;${normal_cursor};${cursor_reset};${fore_color};${back_color}m, X kbs=\b, X kcub1=\E[D, X kcud1=\E[B, X kcuf1=\E[C, X kcuu1=\E[A, X kdch1=\E[P, X kdl1=\E[M, X kend=\E[Y, X kf1=\EOP, X kf2=\EOQ, X kf3=\EOR, X kf4=\EOS, X kf5=\EOT, X kf6=\EOU, X kf7=\EOV, X kf8=\EOW, X kf9=\EOX, X kf10=\EOY, X kf11=\EOp, X kf12=\EOq, X kf13=\EOr, X kf14=\EOs, X kf15=\EOt, X kf16=\EOu, X kf17=\EOv, X kf18=\EOw, X kf19=\EOx, X kf20=\EOy, X khome=\E[H, X kich1=\E[@, X kil1=\E[L, X knp=\E[V, X kpp=\E[U, X rc=\E8, X rev=\E[${reverse}m, X ri=\E[T, X rin=\E[%p1%dT, X rmacs=\E[${lowerchars}m, X rmam=\E[?7h, X rmir=\E[4l, X rmso=\E[${back_color}m, X rmul=\E[m, X sc=\E7, X sgr=\E[%?%p1%t${standout};%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t8;%;%?%p6%t1;%;%?%p7%t8;%;m, X sgr0=\E[0;${fore_color};${back_color}m, X smacs=\E[${upperchars}m, X smam=\E[?7l, X smir=\E[4h, X smso=\E[${standout}m, X smul=\E[${underline}m, X tbc=\E[2g, X vpa=\E[%p1%dd, X .ich=\E[%p1@ (*** if not using enter/exit insert mode), X .ich1=\E[@ (*** if not using enter/exit insert mode), X .rep=%p1%c\E[%p2%{1}%-%db (*** buggy), X!Color! Xelse X cat <<!Mono! >> ${filename} X am, X mir, X xon, X cols#80, X it#8, X lines#${lines}, X vt#3, X acsc=0[a~fxgqh~jYk?lZm@nEqDtCu4vAwBx3~y, X bel=^G, X blink=\E[${blink}m, X bold=\E[${bold}m, X cbt=\E[Z, X civis=\E[${cursor_invisible};${cursor_reset}m, X clear=\E[H\E[J, X cnorm=\E[${normal_cursor};${cursor_reset}m, X cr=\r, X csr=\E[%i%p1%d;%p2%dr, X cub1=\b, X cub=\E[%p1%dD, X cud1=\n, X cud=\E[%p1%dB, X cuf1=\E[C, X cuf=\E[%p1%dC, X cup=\E[%i%p1%d;%p2%dH, X cuu1=\E[A, X cuu=\E[%p1%dA, X cvvis=\E[${very_visible_cursor}m, X dch1=\E[P, X dch=\E[%p1%dP, X dl1=\E[M, X dl=\E[%p1%dM, X ech=\E[%p1%dX, X ed=\E[J, X el1=\E[1K, X el=\E[K, X home=\E[H, X hpa=\E[%i%p1%dG, X ht=\t, X hts=\EH, X il1=\E[L, X il=\E[%p1%dL, X ind=\E[S, X indn=\E[%p1%dS, X invis=\E[${invisible}m, X is1=\E[=h, X is2=\E7\E[1;25r\E8\E>\E[?3l\E[?4l\E[?5l\E[?7l\E[?8l\E[0;10;${normal_cursor};${cursor_reset}m, X kbs=\b, X kcub1=\E[D, X kcud1=\E[B, X kcuf1=\E[C, X kcuu1=\E[A, X kdch1=\E[P, X kdl1=\E[M, X kend=\E[Y, X kf1=\EOP, X kf2=\EOQ, X kf3=\EOR, X kf4=\EOS, X kf5=\EOT, X kf6=\EOU, X kf7=\EOV, X kf8=\EOW, X kf9=\EOX, X kf10=\EOY, X kf11=\EOp, X kf12=\EOq, X kf13=\EOr, X kf14=\EOs, X kf15=\EOt, X kf16=\EOu, X kf17=\EOv, X kf18=\EOw, X kf19=\EOx, X kf20=\EOy, X khome=\E[H, X kich1=\E[@, X kil1=\E[L, X knp=\E[V, X kpp=\E[U, X rc=\E8, X rev=\E[${reverse}m, X ri=\E[T, X rin=\E[%p1%dT, X rmacs=\E[${lowerchars}m, X rmam=\E[?7h, X rmir=\E[4l, X rmso=\E[m, X rmul=\E[m, X sc=\E7, X sgr0=\E[0m, X sgr=\E[%?%p1%t${standout};%;%?%p2%t4;%;%?%p3%t7;%;%?%p4%t5;%;%?%p5%t8;%;%?%p6%t1;%;%?%p7%t8;%;m, X smacs=\E[${upperchars}m, X smam=\E[?7l, X smir=\E[4h, X smso=\E[${standout}m, X smul=\E[${underline}m, X tbc=\E[2g, X vpa=\E[%p1%dd, X .ich=\E[%p1@ (*** if not using enter/exit insert mode), X .ich1=\E[@ (*** if not using enter/exit insert mode), X .rep=%p1%c\E[%p2%{1}%-%db (*** buggy), X!Mono! Xfi X Xcat <<!Funky!Stuff! X XYou are now ready to install the terminfo entry. First, you must su to root Xand then type: tic ${filename}. This will compile the terminfo entry and Xplace it in the /usr/lib/terminfo directory structure. After tic-cing the Xfile, you should type: tput init. This will initialize the screen and colors Xfor you. Have fun!! X X!Funky!Stuff! SHAR_EOF chmod 0775 catie || echo "restore of catie fails" fi if test -f rt; then echo "File rt exists"; else echo "x - extracting rt (Text)" sed 's/^X//' << 'SHAR_EOF' > rt && X: Xstty sane Xcase $TERM in X ansi*|at386*|AT386*) X stty echoe erase intr kill X ;; X tek*|4105*) X stty echoe erase intr kill X ;; X vt100*) X stty echoe erase intr kill X ;; X *) X stty echoe erase intr kill X ;; Xesac Xtput is2 Xtput rs2 SHAR_EOF chmod 0755 rt || echo "restore of rt fails" fi exit 0
rickers@drexel.UUCP (Rick Wargo) (07/28/88)
Whoops! I am sorry that I forgot to mention this, but for all of those of you who do not know how, or did not think to do this, make a copy of the current entry, if you are going to overwrite an existing terminfo entry. Example: you want to generate and use a new AT386 terminfo entry. Before you start, type: on Sys V/386: infocmp -T AT386 > AT386.ti on Sys V/AT: untic -T AT386 > AT386.ti (??? I am not sure of this). If you make a mistake and you want to get back to the original, all you need to do is type: tic AT386.ti And this will restore the previous settings. Good luck! Rickers ..!drexel!rickers
karl@sugar.uu.net (Karl Lehenbauer) (07/29/88)
In article <649@drexel.UUCP>, rickers@drexel.UUCP (Rick Wargo) writes: > It works fine with vi, emacs, uemacs, jove, wanderer, less, more, and the > like. ... It's better, probably the best yet, but it still doesn't work quite right with vnews. Someone else suggested vnews is broken? -- -- -- Karl Lehenbauer, karl@sugar.uu.net aka uunet!sugar!karl, +1 713 274 5184
james@bigtex.uucp (James Van Artsdalen) (07/30/88)
IN article <2362@sugar.uu.net>, karl@sugar.uu.net (Karl Lehenbauer) wrote: > It's better, probably the best yet, but it still doesn't work quite right > with vnews. Someone else suggested vnews is broken? I don't think vnews is broken. I know of no evidence to suggest that it is: quite likely it's a combination of SysVr3 curses, uPort's terminfo data, and the uPort console driver. This is the terminfo entry I've used with good success. There is still a glitch in GNU emacs 18.51, but I haven't tracked it down yet. vnews appears to work fine. Don't try to use as is: I've remapped my keyboard to better support emacs, and the key definitions work won't for you. Let me know if you spot errors. at386|AT386|Microport Unix 2.4 ANSI 25-line at/386 console, am, eslok, mir, msgr, xon, cols#80, it#8, lines#25, bel=^G, blink=\E[5m, bold=\E[1m, cbt=\E[Z, civis=\E[27;25m, clear=\E[H\E[J, cnorm=\E[27;26m, cr=\r, csr=\E[%i%p1%d;%p2%dr, cub=\E[%p1%dD, cub1=\b, cud=\E[%p1%dB, cud1=\n, cuf=\E[%p1%dC, cuf1=\E[C, cup=\E[%i%p1%d;%p2%dH, cuu=\E[%p1%dA, cuu1=\E[A, cvvis=\E[27;24m, dch=\E[%p1%dP, dch1=\E[P, dim=\E[2m, dl=\E[%p1%dM, dl1=\E[M, ech=\E[%p1%dX, ed=\E[0m\E[J, el=\E[K, el1=\E[1K, home=\E[H, hpa=\E[%i%p1%dG, ht=\t, ich=\E[%p1%d@, il=\E[%p1%dL, il1=\E[L, ind=\E[S, indn=\E[%p1%dS, invis=\E[8m, is1=\E[=h, is2=\E7\E[r\E8\E[?6l\E[?7l, is3=\E[27;26m, # kLFT=\E[4, kbs=\177, kcbt=\EOZ, kcub1=^b, kcud1=^n, kcuf1=^f, kcuu1=^p, kdch1=\EON, # kdl1=\EO^N, kend=\EOI, # kent=\r, kf1=\EOP, kf10=\EOY, # kf11=\EOZ, kf12=\EO[, kf2=\EOQ, kf3=\EOR, kf4=\EOS, kf5=\EOT, kf6=\EOU, kf7=\EOV, kf8=\EOW, kf9=\EOX, khome=\EOA, kich1=\EOM, # kil1=\EO0, kll=\EOY, knp=\EOK, kpp=\EOC, kprt=\EOD, # ll=\E[Y, nel=\EE, pfkey=\E[%p1%d;%p2%l%dq%p2%s, pfx=\E[%p1%d;%p2%l%dq%p2%s, rc=\E8, # rep=%p1%c\E[%p2%{1}%-%db, rev=\E[7m, ri=\E[T, # rin=\E[%p1%dT, rmacs=\E[10m, rmir=\E[4l, rmso=\E[22;7m, rin=\E[%p1%dT, rmacs=\E[10m, rmam=\E[?7l rmir=\E[4l, rmso=\E[0m, rmul=\E[m, # rs1=\E[3;%p1%dm, # rs2=\E[22;%p2%{16}%*%p1%+%dm, rs2=\E[22;7m, rs3=\E[55m, sc=\E7, # sgr0=\E[0m, smacs=\E[12m, smir=\E[4h, smso=\E[22;112m, sgr0=\E[0m, smacs=\E[12m, smam=\E[?7h smir=\E[4h, smso=\E[7m, smul=\E[4m, uc=_\b%p1%c, # vpa=\E[%i%p1%dd, vpa=\E[%p1%dd, xoffc=^S, xonc=^Q, -- James R. Van Artsdalen ...!ut-sally!utastro!bigtex!james "Live Free or Die" Home: 512-346-2444 Work: 328-0282; 110 Wild Basin Rd. Ste #230, Austin TX 78746