From owner-dev-commits-src-main@freebsd.org Fri Feb 26 19:23:57 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 0128954C141; Fri, 26 Feb 2021 19:23:56 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from smtp.freebsd.org (smtp.freebsd.org [IPv6:2610:1c1:1:606c::24b:4]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "smtp.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4DnKMc50Lxz4lpp; Fri, 26 Feb 2021 19:23:56 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from aniel.nours.eu (ns393929.ip-176-31-115.eu [176.31.115.77]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) (Authenticated sender: bapt) by smtp.freebsd.org (Postfix) with ESMTPSA id 7FF2A3E94; Fri, 26 Feb 2021 19:23:56 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from [127.0.0.1] (156.106.204.77.rev.sfr.net [77.204.106.156]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by aniel.nours.eu (Postfix) with ESMTPSA id 040223605C; Fri, 26 Feb 2021 20:23:53 +0100 (CET) Date: Fri, 26 Feb 2021 19:23:48 +0000 (UTC) From: Baptiste Daroussin To: rgrimes@freebsd.org Cc: Cy Schubert , src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org Message-ID: In-Reply-To: <20210226173629.2sc6wlaasxjep3le@aniel.nours.eu> References: <202102261420.11QEKJoX006569@slippy.cwsent.com> <202102261730.11QHUh8n031156@gndrsh.dnsmgr.net> <20210226173629.2sc6wlaasxjep3le@aniel.nours.eu> Subject: Re: git: 2a50a9de8340 - main - terminfo: add terminfo database MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-Correlation-ID: 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 19:23:57 -0000 26 f=C3=A9vr. 2021 18:36:40 Baptiste Daroussin : > 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=3D2a50a9de8340f08bd876e9e= 5993332ae >>>> 14376f80 >>>> >>>> commit 2a50a9de8340f08bd876e9e5993332ae14376f80 >>>> Author:=C2=A0=C2=A0=C2=A0=C2=A0 Baptiste Daroussin >>>> AuthorDate: 2021-02-23 16:17:32 +0000 >>>> Commit:=C2=A0=C2=A0=C2=A0=C2=A0 Baptiste Daroussin >>>> CommitDate: 2021-02-25 13:25:32 +0000 >>>> >>>> =C2=A0=C2=A0=C2=A0 terminfo: add terminfo database >>>> =C2=A0=C2=A0=C2=A0 >>>> =C2=A0=C2=A0=C2=A0 Tested by:=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 manu, jbei= ch >>>> --- >>>> share/Makefile=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 |= =C2=A0 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} \ >>>> =C2=A0 ${_syscons} \ >>>> =C2=A0 tabset \ >>>> =C2=A0 termcap \ >>>> + terminfo \ >>>> =C2=A0 ${_timedef} \ >>>> =C2=A0 ${_vt} \ >>>> =C2=A0 ${_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=C2=A0 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=C2=A0 cd ${TINFOBUILDDIR} && find * -type f | LC_ALL=3DC s= ort >>>> +TINFOSDIRS=3D=C2=A0 ${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} \ >>>> +=C2=A0=C2=A0=C2=A0=C2=A0 -o ${BINOWN} -g ${BINGRP} -m ${NOBINMODE} \ >>>> +=C2=A0=C2=A0=C2=A0=C2=A0 ${TINFOBUILDDIR}/${f} ${DESTDIR}/usr/share/t= erminfo/${f} >>>> +.endfor >>>> + >>>> +.include >>>> + >>>> >>> >>> I think this had some unintended consequences, a POLA violation that sh= ould >>> be documented. Our termcap didn't support alternate screen buffers whil= e >>> 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 sm= cup; >>> 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 abou= t >>> Linux. After running vi or top I expect the output to remain on the scr= een >>> so I can use some bit of information in my next command. We now have th= is >>> behaviour too. >> >> Oh, I so hate that mis-feature of Linux, please please tell me there is >> a simple knob to turn this off?=C2=A0 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 scree= n. >> >> > No this is not and I clear have 0 intention to have a complex patch on to= p 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 y= ou do > not like. > > Best, > Bapt Wow I think that is one of the most terrible mail I have ever written! Let me rephrase it. I won t patch ncurses terminfo as that would make the m= aintenance a huge pain. Ncurses is already not an easy beast to maintain ( = should be a bit easier now). The solution is to document how to workaround for the people who dislike th= e new behaviour Bapt