summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2015-09-02 20:20:38 -0700
committerKaz Kylheku <kaz@kylheku.com>2015-09-02 20:20:38 -0700
commit2565d714b4eaadb056c90b4641b8c1fa18e4d0f2 (patch)
tree2284cb8aaff634a908717a4700b78c9d11ef3e5c
parenteb5b89cc8a58c35eba829254af82d3aa78399649 (diff)
downloadtxr-2565d714b4eaadb056c90b4641b8c1fa18e4d0f2.tar.gz
txr-2565d714b4eaadb056c90b4641b8c1fa18e4d0f2.tar.bz2
txr-2565d714b4eaadb056c90b4641b8c1fa18e4d0f2.zip
One-liner to allow @{obj.slot} in quasiliterals.
* parser.l (grammar): Recognize '.' token in BRACED state also. * genvim.txr: @{obj.slot ...} syntax highlighting support. Include txr_dot and txr_dotdot in txr_bracevar region.
-rw-r--r--genvim.txr2
-rw-r--r--parser.l2
2 files changed, 2 insertions, 2 deletions
diff --git a/genvim.txr b/genvim.txr
index 28b30f78..e71827b6 100644
--- a/genvim.txr
+++ b/genvim.txr
@@ -134,7 +134,7 @@ syn match txr_quote "\^" contained
syn match txr_dotdot "\.\." contained
syn match txr_metaat "@@" contained
-syn region txr_bracevar matchgroup=Delimiter start="@@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txl_ident,txl_splice,txl_metanum,txr_metaat,txr_braced_ident,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_regex,txr_quasilit,txr_chr,txl_splice,txr_nested_error
+syn region txr_bracevar matchgroup=Delimiter start="@@[ \t]*[*]\?{" matchgroup=Delimiter end="}" contains=txr_num,txl_ident,txl_splice,txl_metanum,txr_metaat,txr_braced_ident,txr_dot,txr_dotdot,txr_string,txr_list,txr_bracket,txr_mlist,txr_mbracket,txr_regex,txr_quasilit,txr_chr,txl_splice,txr_nested_error
@ (end)
@ (if txr-p)
@ (output :continue out)
diff --git a/parser.l b/parser.l
index 744d8a68..6d6fca08 100644
--- a/parser.l
+++ b/parser.l
@@ -714,7 +714,7 @@ UONLY {U2}{U}|{U3}{U}{U}|{U4}{U}{U}{U}
return LAMBDOT;
}
-<SPECIAL,QSPECIAL,NESTED>\. {
+<SPECIAL,QSPECIAL,NESTED,BRACED>\. {
yylval->chr = '.';
return '.';
}