diff options
| -rw-r--r-- | st.c | 9 |
1 files changed, 9 insertions, 0 deletions
| @@ -860,6 +860,13 @@ tputc(char c) { | |||
| 860 | tmoveto(term.c.x-1, term.c.y); | 860 | tmoveto(term.c.x-1, term.c.y); |
| 861 | term.esc = 0; | 861 | term.esc = 0; |
| 862 | break; | 862 | break; |
| 863 | case 'M': /* RI -- Reverse index */ | ||
| 864 | if(term.c.y == term.top) | ||
| 865 | tinsertblankline(1); | ||
| 866 | else | ||
| 867 | tmoveto(term.c.x, term.c.y-1); | ||
| 868 | term.esc = 0; | ||
| 869 | break; | ||
| 863 | case '=': /* DECPAM */ | 870 | case '=': /* DECPAM */ |
| 864 | term.mode |= MODE_APPKEYPAD; | 871 | term.mode |= MODE_APPKEYPAD; |
| 865 | term.esc = 0; | 872 | term.esc = 0; |
| @@ -870,9 +877,11 @@ tputc(char c) { | |||
| 870 | break; | 877 | break; |
| 871 | case '7': | 878 | case '7': |
| 872 | tcursor(CURSOR_SAVE); | 879 | tcursor(CURSOR_SAVE); |
| 880 | term.esc = 0; | ||
| 873 | break; | 881 | break; |
| 874 | case '8': | 882 | case '8': |
| 875 | tcursor(CURSOR_LOAD); | 883 | tcursor(CURSOR_LOAD); |
| 884 | term.esc = 0; | ||
| 876 | break; | 885 | break; |
| 877 | default: | 886 | default: |
| 878 | fprintf(stderr, "erresc: unknown sequence ESC %02X '%c'\n", c, isprint(c)?c:'.'); | 887 | fprintf(stderr, "erresc: unknown sequence ESC %02X '%c'\n", c, isprint(c)?c:'.'); |
