From owner-dev-commits-src-all@freebsd.org Fri Feb 26 14:20:25 2021 Return-Path: Delivered-To: dev-commits-src-all@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9E7905626E1; Fri, 26 Feb 2021 14:20:25 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-so.shaw.ca (smtp-out-so.shaw.ca [64.59.136.139]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "Client", Issuer "CA" (not verified)) by mx1.freebsd.org (Postfix) with ESMTPS id 4DnBdN2B7Pz3rV2; Fri, 26 Feb 2021 14:20:24 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.229.168]) by shaw.ca with ESMTPA id Fdyel6RVqnRGtFdyflZHzs; Fri, 26 Feb 2021 07:20:22 -0700 X-Authority-Analysis: v=2.4 cv=cagXElPM c=1 sm=1 tr=0 ts=603903a6 a=7AlCcx2GqMg+lh9P3BclKA==:117 a=7AlCcx2GqMg+lh9P3BclKA==:17 a=xqWC_Br6kY4A:10 a=kj9zAlcOel0A:10 a=qa6Q16uM49sA:10 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=zGi-gAaqaAkRpWm3KXMA:9 a=CjuIK1q_8ugA:10 a=IjZwj45LgO3ly-622nXo:22 a=Ia-lj3WSrqcvXOmTRaiG:22 a=LK5xJRSDVpKd5WXXoEvA:22 Received: from slippy.cwsent.com (slippy [IPv6:fc00:1:1:1::5b]) by spqr.komquats.com (Postfix) with ESMTPS id 37E9181B; Fri, 26 Feb 2021 06:20:19 -0800 (PST) Received: from slippy (localhost [127.0.0.1]) by slippy.cwsent.com (8.16.1/8.16.1) with ESMTP id 11QEKJoX006569; Fri, 26 Feb 2021 06:20:19 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <202102261420.11QEKJoX006569@slippy.cwsent.com> X-Mailer: exmh version 2.9.0 11/07/2018 with nmh-1.7.1 Reply-to: Cy Schubert From: Cy Schubert X-os: FreeBSD X-Sender: cy@cwsent.com X-URL: http://www.cschubert.com/ To: Baptiste Daroussin , 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 In-reply-to: <202102251327.11PDR4eC083842@gitrepo.freebsd.org> References: <202102251327.11PDR4eC083842@gitrepo.freebsd.org> Comments: In-reply-to Baptiste Daroussin message dated "Thu, 25 Feb 2021 13:27:04 +0000." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 26 Feb 2021 06:20:19 -0800 X-CMAE-Envelope: MS4xfFXHLCGTlJFjTrXCEAnOuJ4490RrxWA0qD6d19vgjah0DKtY9SwPx4MeOLoUMMgXabZX/rX07kdc81ozzfFyUX3jQ0BUDU9XF8CsGTmIM5/CJ76UE+Kr VVEeRG+DweJ5Qux/PJIw3Xy05Ef3lqbKRlTem3t/AhQGnWn3NejqhQZEnqwfLN46afOmbkje71Ayf0QoHt8v2EnMbWzcjTqgcvk0xPzjFAc3aWQ1lginDkh2 k/tdzmRZ9dgue7ZoibGSwnfDGIYJbteyy91xXNP+uNH7kn9wq9UuKdC8xELF4xUq/rf4FMwo6TSjYPvVyhdIs7rLk/P51xtNEa8dU8VC7i4= X-Rspamd-Queue-Id: 4DnBdN2B7Pz3rV2 X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of cy.schubert@cschubert.com has no SPF policy when checking 64.59.136.139) smtp.mailfrom=cy.schubert@cschubert.com X-Spamd-Result: default: False [-1.70 / 15.00]; HAS_REPLYTO(0.00)[Cy.Schubert@cschubert.com]; RCVD_VIA_SMTP_AUTH(0.00)[]; TO_DN_SOME(0.00)[]; MV_CASE(0.50)[]; RCVD_COUNT_THREE(0.00)[4]; NEURAL_HAM_SHORT(-1.00)[-1.000]; RECEIVED_SPAMHAUS_PBL(0.00)[70.67.229.168:received]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; ASN(0.00)[asn:6327, ipnet:64.59.128.0/20, country:CA]; MIME_TRACE(0.00)[0:+]; RCVD_IN_DNSWL_LOW(-0.10)[64.59.136.139:from]; ARC_NA(0.00)[]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; REPLYTO_EQ_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; RCPT_COUNT_THREE(0.00)[4]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.10)[text/plain]; DMARC_NA(0.00)[cschubert.com: no valid DMARC record]; AUTH_NA(1.00)[]; RCVD_TLS_LAST(0.00)[]; R_SPF_NA(0.00)[no SPF record]; RWL_MAILSPIKE_VERYGOOD(0.00)[64.59.136.139:from]; MAILMAN_DEST(0.00)[dev-commits-src-all,dev-commits-src-main] X-BeenThere: dev-commits-src-all@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for all branches of the src repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Feb 2021 14:20:25 -0000 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 > AuthorDate: 2021-02-23 16:17:32 +0000 > Commit: Baptiste Daroussin > 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 > + > +.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 > + > 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. The alternate screen buffer was added to xterm an ice age ago. Most modern terminal emulators support it. As much as I feel the need to yank out rmcup an smcup from our terminfo database, we are using a feature, as distasteful as it may feel. This change probably needs a relnotes=yes and an UPDATING entry advising users that they can either change $TERM to xterm1, vt100, or some other terminal definition that doesn't support rmcup and smcup, or learn to like it. OTOH, maybe this is something we as a community don't really want and we remove the rmcup and smcup definitions from our terminfo database. Personally, I believe this is progress -- progress I'm not particularly enamoured with but progress nonetheless. But I think we need to discuss, come to some sort of decision and document it. Thoughts? -- Cheers, Cy Schubert FreeBSD UNIX: Web: https://FreeBSD.org NTP: Web: https://nwtime.org The need of the many outweighs the greed of the few.