diff options
| author | Mihail Zenkov <mihail.zenkov@gmail.com> | 2013-10-01 20:01:15 +0200 |
|---|---|---|
| committer | Roberto E. Vargas Caballero <k0ga@shike2.com> | 2013-10-02 20:45:19 +0200 |
| commit | 2b1bc8087f232a7b0ba4c7233e76be7abae25a88 (patch) | |
| tree | ffda8ac070d5b938707866ffc30bbee821c0f696 | |
| parent | eeae9b0ceef9e2fec4cb4f1132748c302e5ac702 (diff) | |
| download | st-2b1bc8087f232a7b0ba4c7233e76be7abae25a88.tar.gz st-2b1bc8087f232a7b0ba4c7233e76be7abae25a88.zip | |
Add DSR cursor position sequence
| -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; |
