~petersanchez/st

ref: 4c6145f6c37e4ab4ba4fdefb20d41e4fcc65a97b st/st.info -rw-r--r-- 4.0 KiB
94b8ec00 — Hiltjo Posthuma 2 years ago
Partially add back in "support REP (repeat) escape sequence"

Add the functionality back in for xterm compatibility, but do not expose the
capability in st.info (yet).

Some notes:

It was reverted because it caused some issues with ncurses in some
configurations, namely when using BSD padding (--enable-bsdpad, BSD_TPUTS) in
ncurses it caused issues with repeating digits.

A fix has been upstreamed in ncurses since snapshot 20200523. The fix is also
backported to OpenBSD -current.
475a0a36 — Hiltjo Posthuma 2 years ago
Revert "support REP (repeat) escape sequence"

This reverts commit e8392b282c2eaa28725241a9612804fb55113da4.

There is currently a bug in older ncurses versions (like on OpenBSD) where a
fix for a bug with REP is not backported yet. Most likely in tty/tty_update.c:

Noticed while using lynx (which uses ncurses/curses).
To reproduce using lynx: echo "Z0000000" | lynx -stdin

or using the program:

int
main(void)
{
	WINDOW *win;
	win = initscr();

	printw("Z0000000");

	refresh();

	sleep(5);

	return 0;
}

This prints "ZZZZZZZ" (incorrectly).
e8392b28 — Avi Halachmi (:avih) 2 years ago
support REP (repeat) escape sequence

The sequence \e[Nb prints the last printed char N (more) times if it's
printable, and it's ignored after newline or other control chars.

This is Ecma-048/ANSI-X3.6 sequence and not DEC VT. It's supported by
xterm, and ncurses uses it when possible, e.g. when TERM is xterm* (and
with this commit also st*).

xterm supports only codepoints<=255, possibly due to internal limits.
We support any value/codepoint which was placed in a cell.

To test:
- tput rep 65 4 -> prints 'AAAA'
- printf "\342\225\246\033[4b" -> prints U+2566 1+4 times.
f8afebdf — Roberto E. Vargas 2 years ago
Add rin terminfo capability

Tianlin Qu discovered that st is missing rin (scroll back #1 lines).
771bc401 — Roberto E. Vargas Caballero 2 years ago
Add st-mono terminfo entry

This entry is intended for monocolor display and it is very
helpful for color haters.
019449a7 — Roberto E. Vargas Caballero 2 years ago
Add terminfo entries for backspace mode

St used to use backspace as BS until the commit 230d0c8, but due
to general lack of knowledge of lusers, we moved to the most common
configuration in linux to avoid answering the same question 3 times
per month. With the most common configuration we have a backspace
that returns a DEL, and we have a Delete key that doesn't return a
DEL character neither a BS.

When dealing with devices connected using a serial line (or even
with Plan9) it is more common Backspace as BS and Delete as DEL. For
this reason, st is not always the best tool when you talk with a
serial device.

This patch adds new terminfo entries for Backspace as BS and Delete
as DEL. A patch for confg.h is also added, to make easier switch
between both configurations.
83866428 — Sebastian J. Bronner 2 years ago
Fix tmux terminfo extensions Se and Ss

The tmux terminfo extensions Ss and Se are currently specified as
booleans in `st.info`. They should be strings. See
https://github.com/tmux/tmux/blob/eeedb43ae847a0a692ceea965f7556e84bca4fd0/tty-term.c
lines 254 and 265.

I have used the values from
https://invisible-island.net/ncurses/terminfo.src.html#toc-_S_I_M_P_L_E_T_E_R_M
for this patch.
c0882f2e — Quentin Rameau 5 years ago
Add dim/smxx/rmxx to terminfo, remove duplicate kich1
b331da55 — Marc André Tanner 5 years ago
Add color change terminfo capabilities
e7ed326d — osandov@osandov.com 5 years ago
Support xterm Ms feature to set clipboard

This is used by, e.g., tmux.
06f8cf8c — pl@ninthfloor.org 5 years ago
Add tmux capabilities to st.info
078337d7 — Roberto E. Vargas Caballero 5 years ago
Delete ncv capability from terminfo

We do not need to disable the previous ncv definition, because
there is not previous definition.
5ce853a1 — Quentin Rameau 5 years ago
st.info: do not prevent st from displaying attributes

With ncv set to 3, we prevent st from displaying A_STANDOUT and
A_UNDERLINE with colors while our virtual terminal is capable of it.
9984ad4b — Quentin Rameau 7 years ago
st.info: replace the acsc entry from xterm to urxvt

The current acsc entry, copied from xterm was not exposing capability to
display arrows.
230d0c84 — Christoph Lohmann 7 years ago
Finally resolving the backspace problem.

The majority now using the Linux behaviour. Minorities have to live in their
ghettos.
487bbb24 — Johannes Postma 7 years ago
Update kdch1 definition to three octal digits.

ncurses wasn't able to detect the delete-character key as KEY_DC.  This
patch fixes that.

kdch1 was defined as "\0177", but terminfo(5) states:
	... characters may be given as three octal digits after a \.

The delete-character key is correctly defined in config.def.h.
1b514048 — Ivan Delalande 7 years ago
Let curses do the dirty work for flash

Use the terminfo delay syntax ($<x>) in our flash capability to avoid
hardcoding a fixed delay in redraw() when called from tsetmode() with
DECSCNM.
We need to turn on the npc capability so that delays are made with
xon/xoff instead of padding characters.
cd159883 — Christoph Lohmann 7 years ago
Reverting smacs and rmacs to the xterm defaults.

These are needed by ncurses to correctly handle the switch between line
drawing. The changes to the alternative characterset code already fixed the
urwid hack.
dcfe505d — Roberto E. Vargas Caballero 7 years ago
Use G1 for alternate charset

St has enacs, which must be printed if a program requires to use
the alternate charset (graphic charset), that in st case was to
select charset graphic for G1, but it was not useful
at all because smacs and rmacs were always redefining the value
of G0.
9d9e049e — Roberto E. Vargas Caballero 8 years ago
Make useful DEL in application mode

DEL key has to generate the sequence ^[P in application mode,
because such sequence means delete current character. It implies
that the character sent in keypad mode must be ^? (DEL character).
Next