diff options
Diffstat (limited to 'src/nvim/extmark_defs.h')
-rw-r--r-- | src/nvim/extmark_defs.h | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/nvim/extmark_defs.h b/src/nvim/extmark_defs.h index c927048981..899fbdf38a 100644 --- a/src/nvim/extmark_defs.h +++ b/src/nvim/extmark_defs.h @@ -14,12 +14,19 @@ typedef kvec_t(VirtTextChunk) VirtText; typedef struct { - uint64_t ns_id; - uint64_t mark_id; int hl_id; // highlight group - // TODO(bfredl): virt_text is pretty larger than the rest, - // pointer indirection? VirtText virt_text; + // TODO(bfredl): style, signs, etc +} Decoration; + +typedef struct +{ + uint64_t ns_id; + uint64_t mark_id; + // TODO(bfredl): a lot of small allocations. Should probably use + // kvec_t(Decoration) as an arena. Alternatively, store ns_id/mark_id + // _inline_ in MarkTree and use the map only for decorations. + Decoration *decor; } ExtmarkItem; typedef struct undo_object ExtmarkUndoObject; |