diff options
author | delphij <delphij@FreeBSD.org> | 2014-03-02 08:58:21 +0000 |
---|---|---|
committer | delphij <delphij@FreeBSD.org> | 2014-03-02 08:58:21 +0000 |
commit | 814c70500ada44e6fcd1d7bb0fb34b288ec5a85d (patch) | |
tree | a2372d7ccc967890376ec8bcddc202aba009ba79 /contrib/ncurses/misc/gen_edit.sh | |
parent | e27a461d5d783b02dfeef266e5c61eb7234ff691 (diff) | |
parent | 7dbeede8ea0ed51949a0b6098fa7c110cfbfae42 (diff) | |
download | FreeBSD-src-814c70500ada44e6fcd1d7bb0fb34b288ec5a85d.zip FreeBSD-src-814c70500ada44e6fcd1d7bb0fb34b288ec5a85d.tar.gz |
MFV r262639: ncurses 5.9 20140222 snapshot.
Requested by: bapt
Diffstat (limited to 'contrib/ncurses/misc/gen_edit.sh')
-rwxr-xr-x | contrib/ncurses/misc/gen_edit.sh | 72 |
1 files changed, 66 insertions, 6 deletions
diff --git a/contrib/ncurses/misc/gen_edit.sh b/contrib/ncurses/misc/gen_edit.sh index f0aa72a..3460afc 100755 --- a/contrib/ncurses/misc/gen_edit.sh +++ b/contrib/ncurses/misc/gen_edit.sh @@ -1,6 +1,6 @@ #!/bin/sh ############################################################################## -# Copyright (c) 2004 Free Software Foundation, Inc. # +# Copyright (c) 2004-2011,2012 Free Software Foundation, Inc. # # # # Permission is hereby granted, free of charge, to any person obtaining a # # copy of this software and associated documentation files (the "Software"), # @@ -29,7 +29,7 @@ # # Author: Thomas E. Dickey # -# $Id: gen_edit.sh,v 1.1 2004/07/11 15:01:29 tom Exp $ +# $Id: gen_edit.sh,v 1.5 2012/04/01 15:04:37 tom Exp $ # Generate a sed-script for converting the terminfo.src to the form which will # be installed. # @@ -37,22 +37,82 @@ # The leaf directory names (lib, tabset, terminfo) # -: ${ticdir=@TERMINFO@} -: ${xterm_new=@WHICH_XTERM@} +linux_dft=linux2.2 + +: ${datadir=/usr/share} +: ${WHICH_LINUX=$linux_dft} +: ${WHICH_XTERM=xterm-new} +: ${XTERM_KBS=BS} # If we're not installing into /usr/share/, we'll have to adjust the location # of the tabset files in terminfo.src (which are in a parallel directory). -TABSET=`echo $ticdir | sed -e 's%/terminfo$%/tabset%'` +TABSET=${datadir}/tabset if test "x$TABSET" != "x/usr/share/tabset" ; then cat <<EOF s%/usr/share/tabset%$TABSET%g EOF fi -if test "$xterm_new" != "xterm-new" ; then +if test "$WHICH_XTERM" != "xterm-new" ; then +echo "** using $WHICH_XTERM terminal description for XTerm entry" >&2 cat <<EOF /^# This is xterm for ncurses/,/^$/{ s/use=xterm-new,/use=$WHICH_XTERM,/ } EOF fi + +if test "$XTERM_KBS" != "BS" ; then +echo "** using DEL for XTerm backspace-key" >&2 +cat <<EOF +/^xterm+kbs|fragment for backspace key/,/^#/{ + s/kbs=^H,/kbs=^?,/ +} +EOF +fi + +# Work around incompatibities built into Linux console. The 2.6 series added +# a patch to fixup the SI/SO behavior, which is closer to vt100, but the older +# kernels do not recognize those controls. All of the kernels recognize the +# older flavor of rmacs/smacs, but beginning in the late 1990s, changes made +# as part of implementing UTF-8 prevent using those for line-drawing when the +# console is in UTF-8 mode. Taking into account the fact that it took about +# ten years to provide (and distribute) the 2.6 series' change for SI/SO, the +# default remains "linux2.2". +case x$WHICH_LINUX in #(vi +xauto) + system=`uname -s 2>/dev/null` + if test "x$system" = xLinux + then + case x`uname -r` in + x1.*) + WHICH_LINUX=linux-c + ;; + x2.[0-4]*) + WHICH_LINUX=linux2.2 + ;; + *) + WHICH_LINUX=linux3.0 + ;; + esac + else + WHICH_LINUX=$linux_dft + fi + ;; +xlinux*) + # allow specific setting + ;; +*) + WHICH_LINUX=$linux_dft + ;; +esac + +if test $WHICH_LINUX != $linux_dft +then +echo "** using $WHICH_LINUX terminal description for Linux console" >&2 +cat <<EOF +/^# This is Linux console for ncurses/,/^$/{ + s/use=$linux_dft,/use=$WHICH_LINUX,/ +} +EOF +fi |