diff options
Diffstat (limited to 'st.c')
| -rw-r--r-- | st.c | 7 |
1 files changed, 7 insertions, 0 deletions
| @@ -2067,6 +2067,13 @@ csihandle(void) { | |||
| 2067 | case 'm': /* SGR -- Terminal attribute (color) */ | 2067 | case 'm': /* SGR -- Terminal attribute (color) */ |
| 2068 | tsetattr(csiescseq.arg, csiescseq.narg); | 2068 | tsetattr(csiescseq.arg, csiescseq.narg); |
| 2069 | break; | 2069 | break; |
| 2070 | case 'n': /* DSR – Device Status Report (cursor position) */ | ||
| 2071 | if (csiescseq.arg[0] == 6) { | ||
| 2072 | char buf[40]; | ||
| 2073 | int len = snprintf(buf, sizeof(buf),"\033[%i;%iR", term.c.y+1, term.c.x+1); | ||
| 2074 | ttywrite(buf, len); | ||
| 2075 | break; | ||
| 2076 | } | ||
| 2070 | case 'r': /* DECSTBM -- Set Scrolling Region */ | 2077 | case 'r': /* DECSTBM -- Set Scrolling Region */ |
| 2071 | if(csiescseq.priv) { | 2078 | if(csiescseq.priv) { |
| 2072 | goto unknown; | 2079 | goto unknown; |
