mirror of
https://github.com/neovim/neovim.git
synced 2025-10-04 17:06:30 +00:00
ui: use line-based rather than char-based updates in screen.c
Add ext_newgrid and ext_hlstate extensions. These use predefined highlights and line-segment based updates, for efficiency and simplicity.. The ext_hlstate extension in addition allows semantic identification of builtin and syntax highlights. Reimplement the old char-based updates in the remote UI layer, for compatibility. For the moment, this is still the default. The bulitin TUI uses the new line-based protocol. cmdline uses curwin cursor position when ext_cmdline is active.
This commit is contained in:
@@ -7,7 +7,7 @@
|
||||
typedef struct ucell UCell;
|
||||
typedef struct ugrid UGrid;
|
||||
|
||||
#define CELLBYTES (4 * (MAX_MCO+1))
|
||||
#define CELLBYTES (sizeof(schar_T))
|
||||
|
||||
struct ucell {
|
||||
char data[CELLBYTES + 1];
|
||||
@@ -17,7 +17,6 @@ struct ucell {
|
||||
struct ugrid {
|
||||
int top, bot, left, right;
|
||||
int row, col;
|
||||
HlAttrs clear_attrs;
|
||||
int width, height;
|
||||
HlAttrs attrs;
|
||||
UCell **cells;
|
||||
|
Reference in New Issue
Block a user