added F1-12 key, fixed DCH and ICH.
Aurélien Aptel aurelien.aptel@gmail.com
M
config.h
→
config.h
@@ -39,6 +39,18 @@ { XK_Home, "\033[1~" },
{ XK_End, "\033[4~" }, { XK_Prior, "\033[5~" }, { XK_Next, "\033[6~" }, + { XK_F1, "\033OP" }, + { XK_F2, "\033OQ" }, + { XK_F3, "\033OR" }, + { XK_F4, "\033OS" }, + { XK_F5, "\033[15~" }, + { XK_F6, "\033[17~" }, + { XK_F7, "\033[18~" }, + { XK_F8, "\033[19~" }, + { XK_F9, "\033[20~" }, + { XK_F10, "\033[21~" }, + { XK_F11, "\033[23~" }, + { XK_F12, "\033[24~" }, }; static char gfx[] = {
M
st.c
→
st.c
@@ -497,21 +497,21 @@ tclearregion(term.c.x, term.c.y, term.col-1, term.c.y);
return; } memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph)); - tclearregion(term.col-size, term.c.y, term.col-1, term.c.y); + tclearregion(term.col-n, term.c.y, term.col-1, term.c.y); } void tinsertblank(int n) { int src = term.c.x; int dst = src + n; - int size = term.col - n - src; + int size = term.col - dst; if(dst >= term.col) { tclearregion(term.c.x, term.c.y, term.col-1, term.c.y); return; } memmove(&term.line[term.c.y][dst], &term.line[term.c.y][src], size * sizeof(Glyph)); - tclearregion(src, term.c.y, dst, term.c.y); + tclearregion(src, term.c.y, dst - 1, term.c.y); } void@@ -1173,7 +1173,7 @@ LIMIT(oldy, 0, term.row-1);
if(term.line[term.c.y][term.c.x].state & GLYPH_SET) g.c = term.line[term.c.y][term.c.x].c; - + /* remove the old cursor */ if(term.line[oldy][oldx].state & GLYPH_SET) xdraws(&term.line[oldy][oldx].c, term.line[oldy][oldx], oldx, oldy, 1);