From 16ccfabfae31a9aeafa00d3857b4b4f62f650946 Mon Sep 17 00:00:00 2001 From: Josh Goebel Date: Fri, 18 Dec 2020 14:10:21 -0500 Subject: [PATCH] wip maybe --- src/languages/tcl.js | 19 ++++++++++++------- 1 file changed, 12 insertions(+), 7 deletions(-) diff --git a/src/languages/tcl.js b/src/languages/tcl.js index 8002183080..25f1eb34c3 100644 --- a/src/languages/tcl.js +++ b/src/languages/tcl.js @@ -10,6 +10,11 @@ import * as regex from '../lib/regex.js'; export default function(hljs) { const ARRAY_ACCESS = '\\(([a-zA-Z0-9_]+)*\\)'; + const NUMBER = { + className: 'number', + variants: [hljs.BINARY_NUMBER_MODE, hljs.C_NUMBER_MODE] + }; + return { name: 'Tcl', aliases: ['tk'], @@ -43,14 +48,17 @@ export default function(hljs) { ] }, { - excludeEnd: true, className: "variable", variants: [ { - begin: '\\$(::)?[a-zA-Z_]+((::)?[a-zA-Z0-9_]+)*' + regex.optional(ARRAY_ACCESS), + begin: '\\$(::)?[a-zA-Z_]+((::)?[a-zA-Z0-9_]+)*', }, { - begin: '\\$\\{(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*' + regex.optional(ARRAY_ACCESS) + '\\}', + begin: '\\$\\{(::)?[a-zA-Z_]((::)?[a-zA-Z0-9_])*', + end: '\\}', + contains: [ + NUMBER + ] } ] }, @@ -61,10 +69,7 @@ export default function(hljs) { hljs.inherit(hljs.QUOTE_STRING_MODE, {illegal: null}) ] }, - { - className: 'number', - variants: [hljs.BINARY_NUMBER_MODE, hljs.C_NUMBER_MODE] - } + NUMBER ] } }