Introduction
Introduction Statistics Contact Development Disclaimer Help
tAdd HTS sequence - st - [fork] customized build of st, the simple terminal
git clone git://src.adamsgaard.dk/st
Log
Files
Refs
README
LICENSE
---
commit 93901ca4fee8a1ab71cb8b918f3d65404460f9ce
parent ee7fd748ac7bfabda2ac37251d230b45adb3e138
Author: Roberto E. Vargas Caballero <[email protected]>
Date: Wed, 29 Aug 2012 19:59:43 +0200
Add HTS sequence
This sequence adds a new tab stop in the current horizontal position. This
means that tputtab must be look for the next tab stop in the tabs array
instead of using a hard coded value offset. Also, CHT sequence XXX message
is removed because it is not a vt10x sequence (as far as I know it is a
vt50x sequence), and it is not implemented by linux virtual terminal neither
by xterm.
Signed-off-by: Roberto E. Vargas Caballero <[email protected]>
---
st.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
Diffstat:
M st.c | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
---
diff --git a/st.c b/st.c
t@@ -1214,7 +1214,6 @@ csihandle(void) {
DEFAULT(escseq.arg[1], 1);
tmoveto(escseq.arg[1]-1, escseq.arg[0]-1);
break;
- /* XXX: (CSI n I) CHT -- Cursor Forward Tabulation <n> tab stops */
case 'J': /* ED -- Clear screen */
sel.bx = -1;
switch(escseq.arg[0]) {
t@@ -1429,8 +1428,11 @@ csireset(void) {
void
tputtab(void) {
- int space = TAB - term.c.x % TAB;
- tmoveto(term.c.x + space, term.c.y);
+ unsigned x;
+
+ for (x = term.c.x + 1; x < term.col && !term.tabs[x]; ++x)
+ /* nothing */ ;
+ tmoveto(x, term.c.y);
}
void
t@@ -1491,6 +1493,10 @@ tputc(char *c) {
tnewline(1); /* always go to first col */
term.esc = 0;
break;
+ case 'H': /* HTS -- Horizontal tab stop */
+ term.tabs[term.c.x] = 1;
+ term.esc = 0;
+ break;
case 'M': /* RI -- Reverse index */
if(term.c.y == term.top)
tscrolldown(term.top, 1);
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.