sync patch: add DECRQM 80 and 8452 for sixel patch ref. #179

This commit is contained in:
Bakkeby 2025-10-26 00:22:53 +02:00
parent d12d2ad1c2
commit e77d5e1b3b

18
st.c
View file

@ -2451,21 +2451,35 @@ csihandle(void)
goto unknown; goto unknown;
} }
break; break;
#if SYNC_PATCH #if SYNC_PATCH || SIXEL_PATCH
case '$': /* DECRQM -- DEC Request Mode (private) */ case '$': /* DECRQM -- DEC Request Mode (private) */
if (csiescseq.mode[1] == 'p' && csiescseq.priv) { if (csiescseq.mode[1] == 'p' && csiescseq.priv) {
switch (csiescseq.arg[0]) { switch (csiescseq.arg[0]) {
#if SIXEL_PATCH
case 80:
/* Sixel Display Mode */
ttywrite(IS_SET(MODE_SIXEL_SDM) ? "\033[?80;1$y"
: "\033[?80;2$y", 9, 0);
break;
case 8452:
/* Sixel scrolling leaves cursor to right of graphic */
ttywrite(IS_SET(MODE_SIXEL_CUR_RT) ? "\033[?8452;1$y"
: "\033[?8452;2$y", 11, 0);
break;
#endif // SIXEL_PATCH
#if SYNC_PATCH
case 2026: case 2026:
/* https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036 */ /* https://gist.github.com/christianparpart/d8a62cc1ab659194337d73e399004036 */
ttywrite(su ? "\033[?2026;1$y" : "\033[?2026;2$y", 11, 0); ttywrite(su ? "\033[?2026;1$y" : "\033[?2026;2$y", 11, 0);
break; break;
#endif // SYNC_PATCH
default: default:
goto unknown; goto unknown;
} }
break; break;
} }
goto unknown; goto unknown;
#endif // SYNC_PATCH #endif // SYNC_PATCH | SIXEL_PATCH
case 'r': /* DECSTBM -- Set Scrolling Region */ case 'r': /* DECSTBM -- Set Scrolling Region */
if (csiescseq.priv) { if (csiescseq.priv) {
goto unknown; goto unknown;