On Wed, Nov 17, 2021 at 01:11:52AM +0100, Josh Triplett wrote:
> On Tue, 16 Nov 2021 23:00:08 +0100 Sven Joachim <svenj...@gmx.de> wrote:
> > On 2021-11-16 21:53 +0100, Josh Triplett wrote:
> > 
> > > On Tue, Nov 16, 2021 at 08:02:53PM +0100, Sven Joachim wrote:
> > >> On 2021-11-16 16:30 +0100, Josh Triplett wrote:
> > >>
> > >> > Package: libncursesw6
> > >> > Version: 6.3-1
> > >> > Severity: important
> > >> > X-Debbugs-Cc: j...@joshtriplett.org
> > >> >
> > >> > "important" because this makes neovim nearly unusable; not RC because
> > >> > I've only observed it with one combination of terminal and program. I
> > >> > personally think that might still be enough to make it RC until
> > >> > root-caused to determine if it's breaking anything else.
> > >> >
> > >> > Steps to reproduce:
> > >> >
> > >> > - `nvim -u NONE` (to ignore any .vimrc)
> > >> > - :%!seq 1000
> > >> > - :vert new
> > >> > - :%!seq 1000
> > >> > - Hit page-down
> > >> > - Observe the other side of the split (as well as the vertical bar
> > >> >   between the split windows) scrolling off the screen.
> > >> >
> > >> > Downgrading the ncurses packages to 6.2+20210905-1 makes the problem
> > >> > disappear; re-upgrading to 6.3-1 makes it come back.
> > >>
> > >> This is rather surprising, because neovim does not depend on
> > >> libncursesw6, not even on libtinfo6.  Did you up-/downgrade
> > >> ncurses-{base,term} as well, and what is your $TERM?
> > >
> > > I downgraded by installing all seven of:
> > >
> > > libncurses6_6.2%2B20210905-1_amd64.deb
> > > libncursesw6_6.2%2B20210905-1_amd64.deb
> > > libncurses-dev_6.2%2B20210905-1_amd64.deb
> > > libtinfo6_6.2%2B20210905-1_amd64.deb
> > > ncurses-base_6.2%2B20210905-1_all.deb
> > > ncurses-bin_6.2%2B20210905-1_amd64.deb
> > > ncurses-term_6.2%2B20210905-1_all.deb
> > >
> > > That made the issue disappear. Re-upgrading made the issue re-appear.
> > 
> > Did you also restart gnome-terminal?  I don't really see how that could 
> > affect
> > the issue since nothing in its stack depends on ncurses, but I am
> > completely at a loss here.
> 
> I just confirmed that upgrading *only* ncurses-base causes the issue to
> appear, and downgrading *only* ncurses-base causes the issue to
> disappear.

well... ncurses-base includes a (less-than-minimal) subset of the terminal
database.

You might try installing ncurses-term and setting TERM=vte-256color
to check that neovim doesn't for instance use left/right margins in
this scenario - if so, the bug's actually in gnome-terminal.

Like most of the "VT525" features, it's not implemented:

https://github.com/GNOME/vte/blob/ebecf6ac04488d0d697c255d582ea891c3bf1577/src/vteseq.cc#L4621

Hostettler got that right (though I pointed out some other cases where he'd
credited gnome-terminal with features which were an empty shell):

https://terminalguide.namepad.de/mode/

> I did not restart gnome-terminal.
> 
> strace of `nvim -u NONE` confirms that it opens and reads
> /lib/terminfo/x/xterm-256color . neovim depends on both libunibilium4
> and libtermkey1, which use terminfo.

it also uses libvterm :-)

-- 
Thomas E. Dickey <dic...@invisible-island.net>
https://invisible-island.net
ftp://ftp.invisible-island.net

Attachment: signature.asc
Description: PGP signature

Reply via email to