tImport the patch of Eckehard Berns to add insert mode. Thanks! - st - [fork] c… | |
git clone git://src.adamsgaard.dk/st | |
Log | |
Files | |
Refs | |
README | |
LICENSE | |
--- | |
commit 801ea034b652025dc22d26f6e1b802de932346da | |
parent e87d21bb3d6b48f68340c193dff8b6021f00be10 | |
Author: Christoph Lohmann <[email protected]> | |
Date: Thu, 15 Nov 2012 16:21:23 +0100 | |
Import the patch of Eckehard Berns to add insert mode. Thanks! | |
Diffstat: | |
M st.c | 4 ++++ | |
M st.info | 2 ++ | |
2 files changed, 6 insertions(+), 0 deletions(-) | |
--- | |
diff --git a/st.c b/st.c | |
t@@ -2100,6 +2100,10 @@ tputc(char *c, int len) { | |
sel.bx = -1; | |
if(IS_SET(MODE_WRAP) && term.c.state & CURSOR_WRAPNEXT) | |
tnewline(1); /* always go to first col */ | |
+ if(IS_SET(MODE_INSERT) && term.c.x+1 < term.col) | |
+ memmove(&term.line[term.c.y][term.c.x+1], | |
+ &term.line[term.c.y][term.c.x], | |
+ (term.col - term.c.x - 1) * sizeof(Glyph)); | |
tsetchar(c, &term.c.attr, term.c.x, term.c.y); | |
if(term.c.x+1 < term.col) | |
tmoveto(term.c.x+1, term.c.y); | |
diff --git a/st.info b/st.info | |
t@@ -153,6 +153,7 @@ st| simpleterm, | |
ritm=\E[23m, | |
rmacs=\E(B, | |
rmcup=\E[?1049l, | |
+ rmir=\E[4l, | |
rmkx=\E[?1l\E>, | |
rmso=\E[23m, | |
rmul=\E[m, | |
t@@ -168,6 +169,7 @@ st| simpleterm, | |
sitm=\E[3m, | |
smacs=\E(0, | |
smcup=\E[?1049h, | |
+ smir=\E[4h, | |
smkx=\E[?1h\E=, | |
smso=\E[3m, | |
smul=\E[4m, |