From 68e0bbfcfce586f692b0c4671c31119152c68996 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Mon, 19 May 2025 11:11:31 -0700 Subject: vim: syntax highlighting for format strings in quasiliteral. * genvim.txr (fmt): New variable. (txr_quat): Match optional fmt after at. --- genvim.txr | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/genvim.txr b/genvim.txr index a2d0f013..22cdbbc5 100644 --- a/genvim.txr +++ b/genvim.txr @@ -40,6 +40,7 @@ static void dir_tables_init(void) @(bind ws "[\\t\\n ]") @(bind hex "0-9A-Fa-f") @(bind at "\\(@[ \\t]*\\)") +@(bind fmt "\\~\\([\\^<>]\\?[0-9]*\\(,[+\\-0 ]*[0-9]*\\)\\?\\)\\?[asdxXobfepi]:") @(bind alpha "A-Za-z_") @(bind alpha-noe "A-DF-Za-dfz_") @(bind alnum "A-Za-z_0-9") @@ -155,7 +156,7 @@ syn match txr_ncomment ";.*"@(if txr-p " contained") syn match txr_hashbang "\%^#!.*" -syn match txr_qat "@at" nextgroup=@{txr-qelem} contained +syn match txr_qat "@at\(@fmt\)\?" nextgroup=@{txr-qelem} contained syn match txr_dot "\." contained syn match txr_ident "[@alnum@glyph]*[@alpha@glyph^][@alnum@glyph^]*" contained syn match txr_braced_ident "\(#\?:\)\?[[@alnum@glyph^/]\+" contained -- cgit v1.2.3