Introduction
Introduction Statistics Contact Development Disclaimer Help
Revert "support REP (repeat) escape sequence" - st - simple terminal
git clone git://git.suckless.org/st
Log
Files
Refs
README
LICENSE
---
commit 475a0a36cb4fda1da30f014da65988e99b222876
parent e8392b282c2eaa28725241a9612804fb55113da4
Author: Hiltjo Posthuma <[email protected]>
Date: Sat, 16 May 2020 18:06:42 +0200
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).
Diffstat:
M st.c | 10 ----------
M st.info | 1 -
2 files changed, 0 insertions(+), 11 deletions(-)
---
diff --git a/st.c b/st.c
@@ -129,7 +129,6 @@ typedef struct {
int charset; /* current charset */
int icharset; /* selected charset for sequence */
int *tabs;
- Rune lastc; /* last printed char outside of sequence, 0 if control */
} Term;
/* CSI Escape sequence structs */
@@ -1649,12 +1648,6 @@ csihandle(void)
if (csiescseq.arg[0] == 0)
ttywrite(vtiden, strlen(vtiden), 0);
break;
- case 'b': /* REP -- if last char is printable print it <n> more times …
- DEFAULT(csiescseq.arg[0], 1);
- if (term.lastc)
- while (csiescseq.arg[0]-- > 0)
- tputc(term.lastc);
- break;
case 'C': /* CUF -- Cursor <n> Forward */
case 'a': /* HPR -- Cursor <n> Forward */
DEFAULT(csiescseq.arg[0], 1);
@@ -2380,8 +2373,6 @@ check_control_code:
/*
* control codes are not shown ever
*/
- if (!term.esc)
- term.lastc = 0;
return;
} else if (term.esc & ESC_START) {
if (term.esc & ESC_CSI) {
@@ -2431,7 +2422,6 @@ check_control_code:
}
tsetchar(u, &term.c.attr, term.c.x, term.c.y);
- term.lastc = u;
if (width == 2) {
gp->mode |= ATTR_WIDE;
diff --git a/st.info b/st.info
@@ -184,7 +184,6 @@ st-mono| simpleterm monocolor,
# XTerm extensions
rmxx=\E[29m,
smxx=\E[9m,
- rep=%p1%c\E[%p2%{1}%-%db,
# tmux extensions, see TERMINFO EXTENSIONS in tmux(1)
Tc,
Ms=\E]52;%p1%s;%p2%s\007,
You are viewing proxied material from suckless.org. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.