aboutsummaryrefslogtreecommitdiff
path: root/syntax.h
diff options
context:
space:
mode:
Diffstat (limited to 'syntax.h')
-rw-r--r--syntax.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/syntax.h b/syntax.h
index 13fcb8c..c28a7ea 100644
--- a/syntax.h
+++ b/syntax.h
@@ -15,12 +15,27 @@ typedef struct {
regex_t regex; /* compiled form of the above rule */
} SyntaxRule;
+typedef struct {
+ char *symbol;
+ Color *color;
+} SyntaxSymbol;
+
+enum {
+ SYNTAX_SYMBOL_SPACE,
+ SYNTAX_SYMBOL_TAB,
+ SYNTAX_SYMBOL_TAB_FILL,
+ SYNTAX_SYMBOL_EOL,
+ SYNTAX_SYMBOL_EOF,
+ SYNTAX_SYMBOL_LAST,
+};
+
typedef struct Syntax Syntax;
struct Syntax { /* a syntax definition */
char *name; /* syntax name */
char *file; /* apply to files matching this regex */
regex_t file_regex; /* compiled file name regex */
const char **settings;/* settings associated with this file type */
+ SyntaxSymbol symbols[SYNTAX_SYMBOL_LAST]; /* symbols for white space handling */
SyntaxRule rules[24]; /* all rules for this file type */
};