mirror of
https://github.com/neovim/neovim.git
synced 2025-10-01 23:48:32 +00:00
46 lines
1.7 KiB
C
46 lines
1.7 KiB
C
#ifndef NVIM_SYNTAX_H
|
|
#define NVIM_SYNTAX_H
|
|
|
|
#include <stdbool.h>
|
|
|
|
#include "nvim/buffer_defs.h"
|
|
#include "nvim/ex_cmds_defs.h"
|
|
#include "nvim/globals.h"
|
|
|
|
#define HL_CONTAINED 0x01 // not used on toplevel
|
|
#define HL_TRANSP 0x02 // has no highlighting
|
|
#define HL_ONELINE 0x04 // match within one line only
|
|
#define HL_HAS_EOL 0x08 // end pattern that matches with $
|
|
#define HL_SYNC_HERE 0x10 // sync point after this item (syncing only)
|
|
#define HL_SYNC_THERE 0x20 // sync point at current line (syncing only)
|
|
#define HL_MATCH 0x40 // use match ID instead of item ID
|
|
#define HL_SKIPNL 0x80 // nextgroup can skip newlines
|
|
#define HL_SKIPWHITE 0x100 // nextgroup can skip white space
|
|
#define HL_SKIPEMPTY 0x200 // nextgroup can skip empty lines
|
|
#define HL_KEEPEND 0x400 // end match always kept
|
|
#define HL_EXCLUDENL 0x800 // exclude NL from match
|
|
#define HL_DISPLAY 0x1000 // only used for displaying, not syncing
|
|
#define HL_FOLD 0x2000 // define fold
|
|
#define HL_EXTEND 0x4000 // ignore a keepend
|
|
#define HL_MATCHCONT 0x8000 // match continued from previous line
|
|
#define HL_TRANS_CONT 0x10000 // transparent item without contains arg
|
|
#define HL_CONCEAL 0x20000 // can be concealed
|
|
#define HL_CONCEALENDS 0x40000 // can be concealed
|
|
|
|
#define SYN_GROUP_STATIC(s) syn_check_group(S_LEN(s))
|
|
|
|
typedef struct {
|
|
char *name;
|
|
RgbValue color;
|
|
} color_name_table_T;
|
|
extern color_name_table_T color_name_table[];
|
|
|
|
/// Array of highlight definitions, used for unit testing
|
|
extern const char *const highlight_init_cmdline[];
|
|
|
|
#ifdef INCLUDE_GENERATED_DECLARATIONS
|
|
# include "syntax.h.generated.h"
|
|
#endif
|
|
|
|
#endif // NVIM_SYNTAX_H
|