summaryrefslogtreecommitdiffstats
path: root/lexer/theme-lexer.l
diff options
context:
space:
mode:
authorDave Davenport <qball@gmpclient.org>2017-05-15 15:05:40 +0200
committerDave Davenport <qball@gmpclient.org>2017-05-15 15:05:40 +0200
commite397c346da38f71c8b8f6e5e4cf57f7ee01b2404 (patch)
treedc9826da709910dd40b8dcf92ce4c2692894cf8b /lexer/theme-lexer.l
parentf0ceeb86d8f11526fc2fd52c3ef8e3c9e340a20f (diff)
[ThemeParser] Extend color formats.
- Support whitespace format. - Support deg,rad, grad, turn angle. - Add alpha channel support to hwb
Diffstat (limited to 'lexer/theme-lexer.l')
-rw-r--r--lexer/theme-lexer.l15
1 files changed, 14 insertions, 1 deletions
diff --git a/lexer/theme-lexer.l b/lexer/theme-lexer.l
index a43323f5..a35a5044 100644
--- a/lexer/theme-lexer.l
+++ b/lexer/theme-lexer.l
@@ -171,6 +171,13 @@ BOLD "bold"
UNDERLINE "underline"
ITALIC "italic"
+/* ANGLES */
+
+ANGLE_DEG "deg"
+ANGLE_GRAD "grad"
+ANGLE_RAD "rad"
+ANGLE_TURN "turn"
+
/* Color schema */
RGBA "rgba"
RGB "rgb"
@@ -180,7 +187,8 @@ HSL hsl[a]?
S_T_PARENT_LEFT \(
S_T_PARENT_RIGHT \)
-COMMA ,
+COMMA ,
+FORWARD_SLASH \/
LS_DASH "dash"
LS_SOLID "solid"
@@ -422,6 +430,7 @@ if ( queue == NULL ){
<PROPERTIES>{S_T_PARENT_LEFT} { return T_PARENT_LEFT; }
<PROPERTIES>{S_T_PARENT_RIGHT} { return T_PARENT_RIGHT;}
<PROPERTIES>{COMMA} { return T_COMMA; }
+<PROPERTIES>{FORWARD_SLASH} { return T_FORWARD_SLASH; }
/* Position */
<PROPERTIES>{CENTER} { return T_POS_CENTER; }
<PROPERTIES>{EAST} { return T_POS_EAST; }
@@ -434,6 +443,10 @@ if ( queue == NULL ){
<PROPERTIES>{ITALIC} { return T_ITALIC; }
<PROPERTIES>{UNDERLINE} { return T_UNDERLINE; }
+<PROPERTIES>{ANGLE_DEG} { return T_ANGLE_DEG; }
+<PROPERTIES>{ANGLE_RAD} { return T_ANGLE_RAD; }
+<PROPERTIES>{ANGLE_GRAD} { return T_ANGLE_GRAD; }
+<PROPERTIES>{ANGLE_TURN} { return T_ANGLE_TURN; }
<INITIAL><<EOF>> {
ParseObject *po = g_queue_pop_head ( file_queue );