summaryrefslogtreecommitdiffstats
path: root/lexer
diff options
context:
space:
mode:
authorDave Davenport <qball@gmpclient.org>2017-03-26 22:54:53 +0200
committerDave Davenport <qball@gmpclient.org>2017-03-26 22:54:53 +0200
commit581447872337243fc86fa29bb2cfde06d85defc0 (patch)
tree43459c88e951aac4fd2391011d41ec400c696d16 /lexer
parent0b03fc98fff53a200c0ad68d99f49e7df3017c79 (diff)
Add UTF8 string support to lex (I hope)
Diffstat (limited to 'lexer')
-rw-r--r--lexer/theme-lexer.l14
1 files changed, 13 insertions, 1 deletions
diff --git a/lexer/theme-lexer.l b/lexer/theme-lexer.l
index b2c2914a..78b1c26f 100644
--- a/lexer/theme-lexer.l
+++ b/lexer/theme-lexer.l
@@ -100,9 +100,21 @@ static char * rofi_theme_parse_prepare_file ( const char *file, const char *pare
yylloc->first_column = yylloc->last_column;\
}
%}
+
+ASC [\x00-\x7f]
+ASCN [\x00-\t\v-\x7f]
+U [\x80-\xbf]
+U2 [\xc2-\xdf]
+U3 [\xe0-\xef]
+U4 [\xf0-\xf4]
+
+ // UANY {ASC}|{U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U}
+UANYN {ASCN}|{U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U}
+ // UONLY {U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U}
+
WHITESPACE [[:blank:]]
WORD [[:alnum:]-]+
-STRING [[:print:]]+
+STRING {UANYN}+
HEX [[:xdigit:]]
NUMBER [[:digit:]]
PNNUMBER [-+]?[[:digit:]]+