On Fri, 26 Feb 2021 18:36:29 +0100
Baptiste Daroussin <b...@freebsd.org> wrote:

> On Fri, Feb 26, 2021 at 09:30:43AM -0800, Rodney W. Grimes wrote:
> > > In message <202102251327.11pdr4ec083...@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 <b...@freebsd.org>
> > > > AuthorDate: 2021-02-23 16:17:32 +0000
> > > > Commit:     Baptiste Daroussin <b...@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 <m...@bidouilliste.com> <m...@freebsd.org>
_______________________________________________
dev-commits-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/dev-commits-src-all
To unsubscribe, send any mail to "dev-commits-src-all-unsubscr...@freebsd.org"

Reply via email to