Date: Fri, 26 Feb 2021 19:16:38 +0100 From: Emmanuel Vadot <manu@bidouilliste.com> To: Baptiste Daroussin <bapt@FreeBSD.org> Cc: rgrimes@freebsd.org, Cy Schubert <Cy.Schubert@cschubert.com>, src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Subject: Re: git: 2a50a9de8340 - main - terminfo: add terminfo database Message-ID: <20210226191638.84c83ef81207217de2359a96@bidouilliste.com> In-Reply-To: <20210226173629.2sc6wlaasxjep3le@aniel.nours.eu> References: <202102261420.11QEKJoX006569@slippy.cwsent.com> <202102261730.11QHUh8n031156@gndrsh.dnsmgr.net> <20210226173629.2sc6wlaasxjep3le@aniel.nours.eu>
next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 26 Feb 2021 18:36:29 +0100 Baptiste Daroussin <bapt@FreeBSD.org> wrote: > On Fri, Feb 26, 2021 at 09:30:43AM -0800, Rodney W. Grimes wrote: > > > In message <202102251327.11PDR4eC083842@gitrepo.freebsd.org>, Baptiste > > > Daroussi > > > n writes: > > > > The branch main has been updated by bapt: > > > > > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=2a50a9de8340f08bd876e9e5993332ae > > > > 14376f80 > > > > > > > > commit 2a50a9de8340f08bd876e9e5993332ae14376f80 > > > > Author: Baptiste Daroussin <bapt@FreeBSD.org> > > > > AuthorDate: 2021-02-23 16:17:32 +0000 > > > > Commit: Baptiste Daroussin <bapt@FreeBSD.org> > > > > CommitDate: 2021-02-25 13:25:32 +0000 > > > > > > > > terminfo: add terminfo database > > > > > > > > Tested by: manu, jbeich > > > > --- > > > > share/Makefile | 1 + > > > > share/terminfo/Makefile | 34 ++++++++++++++++++++++++++++++++++ > > > > 2 files changed, 35 insertions(+) > > > > > > > > diff --git a/share/Makefile b/share/Makefile > > > > index c4e12b05f7db..d6854b230ae5 100644 > > > > --- a/share/Makefile > > > > +++ b/share/Makefile > > > > @@ -26,6 +26,7 @@ SUBDIR= ${_colldef} \ > > > > ${_syscons} \ > > > > tabset \ > > > > termcap \ > > > > + terminfo \ > > > > ${_timedef} \ > > > > ${_vt} \ > > > > ${_zoneinfo} > > > > diff --git a/share/terminfo/Makefile b/share/terminfo/Makefile > > > > new file mode 100644 > > > > index 000000000000..7bb11f3fdf24 > > > > --- /dev/null > > > > +++ b/share/terminfo/Makefile > > > > @@ -0,0 +1,34 @@ > > > > +PACKAGE= runtime > > > > + > > > > +.PATH: ${SRCTOP}/contrib/ncurses/misc > > > > +TINFOBUILDDIR= ${.OBJDIR}/builddir > > > > +CLEANDIRS+= builddir > > > > + > > > > +.include <src.tools.mk> > > > > + > > > > +.if !defined(_SKIP_BUILD) > > > > +all: terminfo > > > > +.endif > > > > +META_TARGETS+= terminfo install-terminfo > > > > + > > > > +terminfo: terminfo.src > > > > + mkdir -p ${TINFOBUILDDIR} > > > > + ${TIC_CMD} -x -o ${TINFOBUILDDIR} ${.ALLSRC} > > > > + > > > > +.if make(*install*) > > > > +TINFOS!= cd ${TINFOBUILDDIR} && find * -type f | LC_ALL=C sort > > > > +TINFOSDIRS= ${TINFOS:C/(.).*/\1/g:O:u} > > > > +.endif > > > > + > > > > +beforeinstall: install-terminfo > > > > +install-terminfo: > > > > + mkdir -p ${DESTDIR}/usr/share/terminfo > > > > + cd ${DESTDIR}/usr/share/terminfo; mkdir -p ${TINFOSDIRS} > > > > +.for f in ${TINFOS} > > > > + ${INSTALL} ${TAG_ARGS} \ > > > > + -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ > > > > + ${TINFOBUILDDIR}/${f} ${DESTDIR}/usr/share/terminfo/${f} > > > > +.endfor > > > > + > > > > +.include <bsd.prog.mk> > > > > + > > > > > > > > > > I think this had some unintended consequences, a POLA violation that should > > > be documented. Our termcap didn't support alternate screen buffers while > > > terminfo does. Termcap did through t_te and t_ti but we didn't use them. > > > Terminfo as delivered from the ncurses factory does supply rmcup and smcup; > > > our fullscreen apps such as nvi and top see them and use the alternate > > > screen buffer. > > > > > > The use of the alternate screen buffer is one of the things I hate about > > > Linux. After running vi or top I expect the output to remain on the screen > > > so I can use some bit of information in my next command. We now have this > > > behaviour too. > > > > Oh, I so hate that mis-feature of Linux, please please tell me there is > > a simple knob to turn this off? I believe LESS also does this kind > > of stuff, or atleast "man" on linux does, and that pees me off to no > > end when I quit the man page and what I wanted is no longer on the screen. > > > > > No this is not and I clear have 0 intention to have a complex patch on top of > the linux terminfo which would prefer easy sync in the futur. > > We can document how to use a definition which does not have the feature you do > not like. > > Best, > Bapt Tips from jbeich@ via irc/gitter : xterm: Set XTerm.VT100.titeInhibit: true screen: altscreen off tmux: et -g alternate-screen off generic ncurses: export TERMCAP="${TERM}:ti@:te@:tc=${TERM}" Feel free to add this to any documentation part you feel it belongs too (even if it is, I'm almost sure, documented in each programs man/help pages). -- Emmanuel Vadot <manu@bidouilliste.com> <manu@freebsd.org>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20210226191638.84c83ef81207217de2359a96>