Introduction
Introduction Statistics Contact Development Disclaimer Help
tEnd a sequence only on CAN, SUB, \a and C1s. - st - [fork] customized build of…
git clone git://src.adamsgaard.dk/st
Log
Files
Refs
README
LICENSE
---
commit e31829f659a818e438bf2fe45708abb2983f8765
parent 5e917ab2874de556de12ce43e9a97300c9c722a2
Author: Colona <[email protected]>
Date: Fri, 9 May 2014 10:23:53 +0200
End a sequence only on CAN, SUB, \a and C1s.
Diffstat:
M st.c | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
---
diff --git a/st.c b/st.c
t@@ -2335,19 +2335,19 @@ tcontrolcode(uchar ascii) {
switch(ascii) {
case '\t': /* HT */
tputtab(1);
- break;
+ return;
case '\b': /* BS */
tmoveto(term.c.x-1, term.c.y);
- break;
+ return;
case '\r': /* CR */
tmoveto(0, term.c.y);
- break;
+ return;
case '\f': /* LF */
case '\v': /* VT */
case '\n': /* LF */
/* go to first col if the mode is set */
tnewline(IS_SET(MODE_CRLF));
- break;
+ return;
case '\a': /* BEL */
if(term.esc & ESC_STR_END) {
/* backwards compatibility to xterm */
t@@ -2366,10 +2366,10 @@ tcontrolcode(uchar ascii) {
return;
case '\016': /* SO */
term.charset = 0;
- break;
+ return;
case '\017': /* SI */
term.charset = 1;
- break;
+ return;
case '\032': /* SUB */
tsetchar(question, &term.c.attr, term.c.x, term.c.y);
case '\030': /* CAN */
t@@ -2380,6 +2380,7 @@ tcontrolcode(uchar ascii) {
case '\021': /* XON (IGNORED) */
case '\023': /* XOFF (IGNORED) */
case 0177: /* DEL (IGNORED) */
+ return;
case 0x84: /* TODO: IND */
case 0x85: /* TODO: NEL */
case 0x88: /* TODO: HTS */
t@@ -2396,6 +2397,7 @@ tcontrolcode(uchar ascii) {
case 0x9f: /* TODO: APC */
break;
}
+ /* only CAN, SUB, \a and C1 chars interrupt a sequence */
term.esc &= ~(ESC_STR_END|ESC_STR);
return;
}
You are viewing proxied material from mx1.adamsgaard.dk. 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.