summaryrefslogtreecommitdiffstats
path: root/genvim.txr
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2014-03-03 01:44:37 -0800
committerKaz Kylheku <kaz@kylheku.com>2014-03-03 01:44:37 -0800
commit039e2ebdfa5670de7a35084fd480fe204afbdc8b (patch)
treeb9726ccd8d6b0d29bba921c8b96e433a4a4ed38e /genvim.txr
parent6cbd5aa63b23044c12817e0d442fe7678f6a0754 (diff)
downloadtxr-039e2ebdfa5670de7a35084fd480fe204afbdc8b.tar.gz
txr-039e2ebdfa5670de7a35084fd480fe204afbdc8b.tar.bz2
txr-039e2ebdfa5670de7a35084fd480fe204afbdc8b.zip
* parser.l: Allowing ^ to be a quote character, and adjusting definition
of identifiers to rule this out from being the first character of a symbol which has no prefix. Recognize the ^ character as a token in the NESTED state. * lib.c (obj_print, obj_pprint): Render sys:qquote as ^. * parser.y (choose_quote): Function removed. (n_expr): Recognize '^' as quasiquote. Removed all the "smart quote" hacks that try to make quote behave as quote or quasiquote, or try to cancel out unquotes and quotes. * tests/009/json.txr: Fixed to ^ quasiquote. * tests/010/reghash.txr: Likewise. * tests/011/macros-2.txr: Likewise. * tests/011/mandel.txr: Likewise. * tests/011/special-1.txr: Likewise. * txr.1: Updated docs. * genvim.txr: Revamped definitions for txr_ident and txl_ident so that unqualified identifiers cannot start with # or ^, but ones with @ or : in front can start with these characters. * txr.vim: Regenerated.
Diffstat (limited to 'genvim.txr')
-rw-r--r--genvim.txr7
1 files changed, 5 insertions, 2 deletions
diff --git a/genvim.txr b/genvim.txr
index bbd9bcc0..00d3506e 100644
--- a/genvim.txr
+++ b/genvim.txr
@@ -92,8 +92,10 @@ syn match txr_num "#x[+\-]\?[0-9A-Fa-f]\+" contained
syn match txr_num "#o[+\-]\?[0-7]\+" contained
syn match txr_num "#b[+\-]\?[0-1]\+" contained
syn match txr_num "[+\-]\?[0-9]\+" contained
-syn match txr_ident "[:@@]\?[A-Za-z0-9!$%&*+\-<=>?\\^_~]*[A-Za-z!$%&*+\-<=>?\\^_~][A-Za-z0-9!$%&*+\-<=>?\\^_~]*" contained
-syn match txl_ident "[:@@]\?[A-Za-z0-9!$%&*+\-<=>?\\^_~/]*[A-Za-z!$%&*+\-<=>?\\^_~/][A-Za-z0-9!$%&*+\-<=>?\\^_~/]*" contained
+syn match txr_ident "[:@@][A-Za-z0-9!#$%&*+\-<=>?\\^_~]\+" contained
+syn match txr_ident "[A-Za-z0-9!$%&*+\-<=>?\\_~]*[A-Za-z!$#%&*+\-<=>?\\^_~][A-Za-z0-9!$#%&*+\-<=>?\\^_~]*" contained
+syn match txl_ident "[:@@][A-Za-z0-9!$%&*+\-<=>?\\\^_~/]\+" contained
+syn match txl_ident "[A-Za-z0-9!$%&*+\-<=>?\\_~/]*[A-Za-z!$#%&*+\-<=>?\\^_~/][A-Za-z0-9!$#%&*+\-<=>?\\^_~/]*" contained
syn match txr_num "[+\-]\?[0-9]*[.][0-9]\+\([eE][+\-]\?[0-9]\+\)\?" contained
syn match txr_num "[+\-]\?[0-9]\+\([eE][+\-]\?[0-9]\+\)" contained
syn match txl_ident ":" contained
@@ -101,6 +103,7 @@ syn match txl_ident ":" contained
syn match txr_unquote "," contained
syn match txr_splice ",\*" contained
syn match txr_quote "'" contained
+syn match txr_quote "\^" contained
syn match txr_dotdot "\.\." contained
syn match txr_metaat "@@" contained