From dfbc69abeb811cf0a0a65a2514cea2868c159880 Mon Sep 17 00:00:00 2001 From: NunzioCicone Date: Sat, 11 Jan 2020 06:40:21 -0500 Subject: [PATCH 2/2] Allow empty elements in jsx --- rc/filetype/javascript.kak | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/rc/filetype/javascript.kak b/rc/filetype/javascript.kak index 4e39fc69..191ae95d 100644 --- a/rc/filetype/javascript.kak +++ b/rc/filetype/javascript.kak @@ -80,7 +80,7 @@ define-command -hidden init-javascript-filetype -params 1 %~ add-highlighter "shared/%arg{1}/comment" region /\* \*/ fill comment add-highlighter "shared/%arg{1}/shebang" region ^#! $ fill meta add-highlighter "shared/%arg{1}/regex" region / (?])(?!>\()) (|/>) regions + add-highlighter "shared/%arg{1}/jsx" region -recurse (?][\w:.-]* (?][\w:.-]*(?!\hextends)(?=[\s/>])(?!>\()) (|/>) regions add-highlighter "shared/%arg{1}/division" region '[\w\)\]]\K(/|(\h+/\h+))' '(?=\w)' group # Help Kakoune to better detect /…/ literals # Regular expression flags are: g → global match, i → ignore case, m → multi-lines, u → unicode, y → sticky @@ -98,7 +98,7 @@ define-command -hidden init-javascript-filetype -params 1 %~ # We inline a small XML highlighter here since it anyway need to recurse back up to the starting highlighter. # To make things simple we assume that jsx is always enabled. - add-highlighter "shared/%arg{1}/jsx/tag" region -recurse < <(?=[/a-zA-Z]) (? regions + add-highlighter "shared/%arg{1}/jsx/tag" region -recurse < <(?=[/a-zA-Z>]) (? regions add-highlighter "shared/%arg{1}/jsx/expr" region -recurse \{ \{ \} ref %arg{1} add-highlighter "shared/%arg{1}/jsx/tag/base" default-region group