xtermjs/xterm.js

Support DECSLRM (SMGLR, SMGLP, SMGRP) - Set Left and Right Margins for better scrolling performance in multi-pane TUIs

Open

#4,285 opened on Dec 2, 2022

View on GitHub
 (3 comments) (0 reactions) (0 assignees)TypeScript (16,196 stars) (1,574 forks)batch import
area/parserhelp wantedtype/enhancement

Description

Ref. #2358

Also known as Set Left and Right Margins. This feature is used by terminal applications like tmux and (neo)vim to optimize pane scrolling. Real xterm supports it, many not-real-xterms don't, so Neovim patches out this functionality for xterm pretenders (which it tries to detect via the XTERM_VERSION environment variable).

Right now, forcing Neovim to use the smglr results in this: https://asciinema.org/a/Qcgm1znQy3nE8DnCc0jnrjXMi (versus not using them).

Contributor guide