Mercurial > vim
comparison src/libvterm/include/vterm.h @ 32728:b13f723a7ec6 v9.0.1684
patch 9.0.1684: Update libvterm to rev 839
Commit: https://github.com/vim/vim/commit/b00df7aa388994119346a21d77b0d0db2a0a5e9f
Author: zeertzjq <zeertzjq@outlook.com>
Date: Tue Aug 8 11:03:00 2023 +0800
patch 9.0.1684: Update libvterm to rev 839
Problem: libvterm slightly outdated
Solution: Update libvterm from rev 818 to rev 839
Notable fix: libvterm now handles DECSM/DECRM with multiple arguents,
so several ncurses programs (e.g. nnn) can enable mouse properly when
run in Vim's terminal in XTerm.
closes: #12746
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: zeertzjq <zeertzjq@outlook.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 11 Aug 2023 21:30:03 +0200 |
parents | dcde141f2d1e |
children | 288bbf09d372 |
comparison
equal
deleted
inserted
replaced
32727:6beeb2e0105d | 32728:b13f723a7ec6 |
---|---|
21 typedef unsigned short uint16_t; | 21 typedef unsigned short uint16_t; |
22 typedef unsigned int uint32_t; | 22 typedef unsigned int uint32_t; |
23 | 23 |
24 #define VTERM_VERSION_MAJOR 0 | 24 #define VTERM_VERSION_MAJOR 0 |
25 #define VTERM_VERSION_MINOR 3 | 25 #define VTERM_VERSION_MINOR 3 |
26 #define VTERM_VERSION_PATCH 3 | |
26 | 27 |
27 #define VTERM_CHECK_VERSION \ | 28 #define VTERM_CHECK_VERSION \ |
28 vterm_check_version(VTERM_VERSION_MAJOR, VTERM_VERSION_MINOR) | 29 vterm_check_version(VTERM_VERSION_MAJOR, VTERM_VERSION_MINOR) |
29 | 30 |
30 /* Any cell can contain at most one basic printing character and 5 combining | 31 /* Any cell can contain at most one basic printing character and 5 combining |
253 VTERM_PROP_TITLE, // string | 254 VTERM_PROP_TITLE, // string |
254 VTERM_PROP_ICONNAME, // string | 255 VTERM_PROP_ICONNAME, // string |
255 VTERM_PROP_REVERSE, // bool | 256 VTERM_PROP_REVERSE, // bool |
256 VTERM_PROP_CURSORSHAPE, // number | 257 VTERM_PROP_CURSORSHAPE, // number |
257 VTERM_PROP_MOUSE, // number | 258 VTERM_PROP_MOUSE, // number |
259 VTERM_PROP_FOCUSREPORT, // bool | |
258 VTERM_PROP_CURSORCOLOR, // VIM - string | 260 VTERM_PROP_CURSORCOLOR, // VIM - string |
259 | 261 |
260 VTERM_N_PROPS | 262 VTERM_N_PROPS |
261 } VTermProp; | 263 } VTermProp; |
262 | 264 |
419 int (*resize)(int rows, int cols, void *user); | 421 int (*resize)(int rows, int cols, void *user); |
420 } VTermParserCallbacks; | 422 } VTermParserCallbacks; |
421 | 423 |
422 void vterm_parser_set_callbacks(VTerm *vt, const VTermParserCallbacks *callbacks, void *user); | 424 void vterm_parser_set_callbacks(VTerm *vt, const VTermParserCallbacks *callbacks, void *user); |
423 void *vterm_parser_get_cbdata(VTerm *vt); | 425 void *vterm_parser_get_cbdata(VTerm *vt); |
426 | |
427 /* Normally NUL, CAN, SUB and DEL are ignored. Setting this true causes them | |
428 * to be emitted by the 'control' callback | |
429 */ | |
430 void vterm_parser_set_emit_nul(VTerm *vt, int emit); | |
424 | 431 |
425 // ----------- | 432 // ----------- |
426 // State layer | 433 // State layer |
427 // ----------- | 434 // ----------- |
428 | 435 |
643 * Same as vterm_state_convert_color_to_rgb(), but takes a `screen` instead of a `state` | 650 * Same as vterm_state_convert_color_to_rgb(), but takes a `screen` instead of a `state` |
644 * instance. | 651 * instance. |
645 */ | 652 */ |
646 void vterm_screen_convert_color_to_rgb(const VTermScreen *screen, VTermColor *col); | 653 void vterm_screen_convert_color_to_rgb(const VTermScreen *screen, VTermColor *col); |
647 | 654 |
655 /** | |
656 * Similar to vterm_state_set_default_colors(), but also resets colours in the | |
657 * screen buffer(s) | |
658 */ | |
659 void vterm_screen_set_default_colors(VTermScreen *screen, const VTermColor *default_fg, const VTermColor *default_bg); | |
660 | |
648 // --------- | 661 // --------- |
649 // Utilities | 662 // Utilities |
650 // --------- | 663 // --------- |
651 | 664 |
652 VTermValueType vterm_get_attr_type(VTermAttr attr); | 665 VTermValueType vterm_get_attr_type(VTermAttr attr); |