From be04f31b6ecd17cc8220f1a609e45046c45a6c6a Mon Sep 17 00:00:00 2001 From: Gunnar Ritter Date: Sun, 20 Feb 2005 15:22:10 +0000 Subject: [PATCH] termcap description added --- Makefile | 7 ++++--- README | 29 ++++++++++++++++++++++++++++- 2 files changed, 32 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index b5988fd..b3e01ea 100644 --- a/Makefile +++ b/Makefile @@ -72,7 +72,7 @@ # # from Makefile 7.13.1.3 (2.11BSD GTE) 1996/10/23 # -# @(#)Makefile 1.49 (gritter) 2/19/05 +# @(#)Makefile 1.50 (gritter) 2/20/05 # # @@ -207,8 +207,9 @@ OSTYPE = -DVMUNIX # #TERMLIB = ncurses # -# The preferred choice for ex on Linux distributions and other systems that -# provide a good termcap file is the 2.11BSD termcap library included here. +# The preferred choice for ex on Linux distributions, other systems that +# provide a good termcap file, or when setting the TERMCAP environment +# variable is deemed sufficient, is the included 2.11BSD termcap library. # TERMLIB = termlib diff --git a/README b/README index cf786f7..e0793b3 100644 --- a/README +++ b/README @@ -78,6 +78,33 @@ it would not result in any real improvements for usual the Unix platforms vi is targeted at, so it has not be done yet. +Terminal capabilities +===================== + +vi normally uses the termcap library to gather information about the +capabilities of the terminal it is using. A BSD-derived termcap library +is included with the vi distribution, and is usually the preferred choice. +On some platforms, though, either no /etc/termcap file exists, or the file +lacks up-to-date entries. In these cases, two workarounds are possible. +First, vi can be linked against libcurses, libncurses, or libtermcap, if +these provide access to a proper terminal information database. Second, it +is possible to use the included termcap library with a TERMCAP environment +variable that contains a complete termcap entry. Most terminals in current +use provide a superset of DEC VT102 capabilities, so the following will +normally work: + +TERMCAP="vt102|$TERM|dec vt102:"\ +'do=^J:co#80:li#24:cl=50\E[;H\E[2J:'\ +'le=^H:bs:cm=5\E[%i%d;%dH:nd=2\E[C:up=2\E[A:'\ +'ce=3\E[K:cd=50\E[J:so=2\E[7m:se=2\E[m:us=2\E[4m:ue=2\E[m:'\ +'md=2\E[1m:mr=2\E[7m:mb=2\E[5m:me=2\E[m:is=\E[1;24r\E[24;1H:'\ +'rs=\E>\E[?3l\E[?4l\E[?5l\E[?7h\E[?8h:ks=\E[?1h\E=:ke=\E[?1l\E>:'\ +'ku=\EOA:kd=\EOB:kr=\EOC:kl=\EOD:kb=^H:'\ +'ho=\E[H:k1=\EOP:k2=\EOQ:k3=\EOR:k4=\EOS:pt:sr=5\EM:vt#3:'\ +'sc=\E7:rc=\E8:cs=\E[%i%d;%dr:vs=\E[?7l:ve=\E[?7h:' +export TERMCAP + + Multibyte locale support ======================== @@ -111,7 +138,7 @@ the erase key once after entering a multibyte character will result in an incomplete byte sequence. -Gunnar Ritter 2/19/05 +Gunnar Ritter 2/20/05 Freiburg i. Br. Germany