From owner-dev-commits-src-main@freebsd.org Fri Feb 26 14:48:22 2021 Return-Path: Delivered-To: dev-commits-src-main@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 673545631A3; Fri, 26 Feb 2021 14:48:22 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from smtp-out-no.shaw.ca (smtp-out-no.shaw.ca [64.59.134.12]) (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 4DnCFd73W4z3t3k; Fri, 26 Feb 2021 14:48:21 +0000 (UTC) (envelope-from cy.schubert@cschubert.com) Received: from spqr.komquats.com ([70.67.229.168]) by shaw.ca with ESMTPA id FePilTleYeHr9FePjlULfU; Fri, 26 Feb 2021 07:48:20 -0700 X-Authority-Analysis: v=2.4 cv=Yq/K+6UX c=1 sm=1 tr=0 ts=60390a34 a=7AlCcx2GqMg+lh9P3BclKA==:117 a=7AlCcx2GqMg+lh9P3BclKA==:17 a=xqWC_Br6kY4A:10 a=kj9zAlcOel0A:10 a=qa6Q16uM49sA:10 a=w16vAm4-AAAA:8 a=6I5d2MoRAAAA:8 a=YxBL1-UpAAAA:8 a=EkcXrb_YAAAA:8 a=OsFhiFZIi2wW-GAr0TcA:9 a=CjuIK1q_8ugA:10 a=eWus_ag6ds_90y4h1ov8:22 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 E0E32865; Fri, 26 Feb 2021 06:48:17 -0800 (PST) Received: from slippy (localhost [127.0.0.1]) by slippy.cwsent.com (8.16.1/8.16.1) with ESMTP id 11QEmHlA006761; Fri, 26 Feb 2021 06:48:17 -0800 (PST) (envelope-from Cy.Schubert@cschubert.com) Message-Id: <202102261448.11QEmHlA006761@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 cc: Cy Schubert , 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: <20210226143714.k24aacsrjnnhkktc@aniel.nours.eu> References: <202102251327.11PDR4eC083842@gitrepo.freebsd.org> <202102261420.11QEKJoX006569@slippy.cwsent.com> <20210226143714.k24aacsrjnnhkktc@aniel.nours.eu> Comments: In-reply-to Baptiste Daroussin message dated "Fri, 26 Feb 2021 15:37:14 +0100." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Fri, 26 Feb 2021 06:48:17 -0800 X-CMAE-Envelope: MS4xfPPHhN0YLQ9Ta3tcsQl2puuxDrG7WsHgE4AX3oUDosIqteOHdUmLLyhZblhENWEUlZqySPdYl4dBwKDaTwsVBVkmsdXshmcSiQ2au2D8iyiFD0r8B+OG pp8Ph+cGKR822lROMyd7hZjPN3o4AJKGsiszu3QSPlzPyHNtfUfjYA1/jl0UQcBzJ6ErX40Hqtdmy+/qHY48DhzlQSnYlbvBT3Jms4Ksugg4TVVKyeAAs+lH gv86I40HSMUEQWzIsfPLMfR/yiLfuiKZ8tWU5hVHwJLaa5RCVvzZhh+7uOUMhY+xQABXnX8ice9/wr0Y6+dpuMoAT8hMyNSnG/P6x6UvLYQ= X-Rspamd-Queue-Id: 4DnCFd73W4z3t3k X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-BeenThere: dev-commits-src-main@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Commit messages for the main branch of the src repository List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 26 Feb 2021 14:48:22 -0000 In message <20210226143714.k24aacsrjnnhkktc@aniel.nours.eu>, Baptiste Daroussin writes: > > --dqdw63fwvislrgvy > Content-Type: text/plain; charset=us-ascii > Content-Disposition: inline > Content-Transfer-Encoding: quoted-printable > > On Fri, Feb 26, 2021 at 06:20:19AM -0800, Cy Schubert wrote: > > In message <202102251327.11PDR4eC083842@gitrepo.freebsd.org>, Baptiste=20 > > Daroussi > > n writes: > > > The branch main has been updated by bapt: > > > > > > URL: https://cgit.FreeBSD.org/src/commit/?id=3D2a50a9de8340f08bd876e9e5= > 993332ae > > > 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 > > > =20 > > > 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=3D ${_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=3D runtime > > > + > > > +.PATH: ${SRCTOP}/contrib/ncurses/misc > > > +TINFOBUILDDIR=3D ${.OBJDIR}/builddir > > > +CLEANDIRS+=3D builddir > > > + > > > +.include > > > + > > > +.if !defined(_SKIP_BUILD) > > > +all: terminfo > > > +.endif > > > +META_TARGETS+=3D terminfo install-terminfo > > > + > > > +terminfo: terminfo.src > > > + mkdir -p ${TINFOBUILDDIR} > > > + ${TIC_CMD} -x -o ${TINFOBUILDDIR} ${.ALLSRC} > > > + > > > +.if make(*install*) > > > +TINFOS!=3D cd ${TINFOBUILDDIR} && find * -type f | LC_ALL=3DC sor > t > > > +TINFOSDIRS=3D ${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 > > > + > > > > >=20 > > I think this had some unintended consequences, a POLA violation that shou= > ld=20 > > be documented. Our termcap didn't support alternate screen buffers while= > =20 > > terminfo does. Termcap did through t_te and t_ti but we didn't use them.= > =20 > > Terminfo as delivered from the ncurses factory does supply rmcup and smcu= > p;=20 > > our fullscreen apps such as nvi and top see them and use the alternate=20 > > screen buffer. > >=20 > > The use of the alternate screen buffer is one of the things I hate about= > =20 > > Linux. After running vi or top I expect the output to remain on the scree= > n=20 > > so I can use some bit of information in my next command. We now have this= > =20 > > behaviour too. > >=20 > > The alternate screen buffer was added to xterm an ice age ago. Most moder= > n=20 > > terminal emulators support it. As much as I feel the need to yank out rmc= > up=20 > > an smcup from our terminfo database, we are using a feature, as distastef= > ul=20 > > as it may feel. This change probably needs a relnotes=3Dyes and an UPDATI= > NG=20 > > entry advising users that they can either change $TERM to xterm1, vt100, = > or=20 > > some other terminal definition that doesn't support rmcup and smcup, or= > =20 > > learn to like it. > >=20 > > OTOH, maybe this is something we as a community don't really want and we= > =20 > > remove the rmcup and smcup definitions from our terminfo database.=20 > > Personally, I believe this is progress -- progress I'm not particularly= > =20 > > enamoured with but progress nonetheless. But I think we need to discuss,= > =20 > > come to some sort of decision and document it. > >=20 > > Thoughts? > > I agree about UPDATING and RELNOTES. I planned to do it in a couple of days= > for > UPDATING, as for rmcup/smcup there have been so many people asking for it, = > that > I didn't think people will hate it, so yes we could/should add en entry in > UPDATING. UPDATING, yes, but also handbook documentation. Setting $TERM to xterm1 or vt100 reverts to the old behaviour but at the cost of any new functionality the current xterm or xterm-256color provides. I do think this needs a handbook page that discusses the old behaviour and how to get it back. Maybe how to set up one's own terminfo using $TERMINFO or one of the other environment variables. I say maybe because people setting up their own will screw themselves resulting in more PRs. I view this as an exercise of reducing PRs and tickets. Useless tickets waste everyone's time. > > I was planning to MFC it to 13.1, I don't know how much this change is a PO= > LA > violation or not, imho all the other benefice of terminfo over termcap for = > end > users are worth the MFC, but if most people vote against, I won't MFC it. I think this is big enough not to MFC to 13.1. -- 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.