aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/extmark_defs.h
blob: c5a86845455b8c316f928028d7a1c545f9a3daad (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#pragma once

#include "klib/kvec.h"
#include "nvim/types_defs.h"

// TODO(bfredl): good enough name for now.
typedef ptrdiff_t bcount_t;

typedef struct undo_object ExtmarkUndoObject;
typedef kvec_t(ExtmarkUndoObject) extmark_undo_vec_t;

// Undo/redo extmarks

typedef enum {
  kExtmarkNOOP,        // Extmarks shouldn't be moved
  kExtmarkUndo,        // Operation should be reversible/undoable
  kExtmarkNoUndo,      // Operation should not be reversible
  kExtmarkUndoNoRedo,  // Operation should be undoable, but not redoable
} ExtmarkOp;