summaryrefslogtreecommitdiff
path: root/macros/context/contrib/context-vim/tex/context
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2021-05-26 03:05:34 +0000
committerNorbert Preining <norbert@preining.info>2021-05-26 03:05:34 +0000
commit8982c52e00ffb3fb5a913fc60913ebd9070f091a (patch)
tree6a395986e3502fefcf42364f8dd87519b45a2441 /macros/context/contrib/context-vim/tex/context
parent07dc96bc3bbd691fc52aca15a172eaf41a89d873 (diff)
CTAN sync 202105260305
Diffstat (limited to 'macros/context/contrib/context-vim/tex/context')
-rw-r--r--macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-groups.mkiv4
-rw-r--r--macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkiv7
-rw-r--r--macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkxl263
-rw-r--r--macros/context/contrib/context-vim/tex/context/third/vim/t-vim.tex5
4 files changed, 271 insertions, 8 deletions
diff --git a/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-groups.mkiv b/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-groups.mkiv
index c566e4509b..c0327f9a27 100644
--- a/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-groups.mkiv
+++ b/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-groups.mkiv
@@ -1,6 +1,6 @@
%D \module
%D [ file=t-syntax-groups,
-%D version=2021.03.01,
+%D version=2021.05.23,
%D title=\CONTEXT\ User Module,
%D subtitle=Syntax highlighting support,
%D author=Aditya Mahajan,
@@ -9,7 +9,7 @@
%D email=adityam <at> ieee <dot> org,
%D license=Simplified BSD License]
-\writestatus{loading}{Syntax highlighting groups (ver: 2021.03.01)}
+\writestatus{loading}{Syntax highlighting groups (ver: 2021.05.23)}
\startmodule [syntax-group]
\usemodule [module-catcodes]
diff --git a/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkiv b/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkiv
index 0e40050c32..23466fb17d 100644
--- a/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkiv
+++ b/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkiv
@@ -91,18 +91,19 @@
{\dorecurse{##1}{\obeyedspace}}%
\forgetall
+ \the\everyinitializeverbatim
\usealignparameter\externalfilterparameter
\doifinset{\v!packed}{\externalfilterparameter\c!option}
{\setupwhitespace[\v!none,\v!flexible]}%
\doadaptleftskip{\externalfilterparameter\c!margin}%
- \setbreakpoints[compound]% Only works is `option=hyphenated` is set.
- \doifnotinset{\v!hyphenated}{\externalfilterparameter\c!option}
+ \doifinsetelse{\v!hyphenated}{\externalfilterparameter\c!option}
+ {\setbreakpoints[compound]}
{\language\minusone
\resetbreakpoints}%
- \def\obeyedline{\strut\par}
+ \def\obeyedline{\strut\par}%
\activatespacehandler{\????syntaxhighlighting\externalfilterparameter\c!space:\externalfilterparameter\c!lines}
\setcatcodetable\externalfilter@minimal_catcodes%
\letcharcode\endoflineasciicode\obeyedline
diff --git a/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkxl b/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkxl
new file mode 100644
index 0000000000..05c89893d6
--- /dev/null
+++ b/macros/context/contrib/context-vim/tex/context/third/vim/t-syntax-highlight.mkxl
@@ -0,0 +1,263 @@
+%D \module
+%D [ file=t-syntax-highlight,
+%D version=2021.05.24,
+%D title=\CONTEXT\ User Module,
+%D subtitle=Code syntax highlighting,
+%D author=Aditya Mahajan,
+%D date=\currentdate,
+%D copyright=Aditya Mahajan,
+%D email=adityam <at> ieee <dot> org,
+%D license=Simplified BSD License]
+
+\writestatus{loading}{Code syntax highlighting (ver: 2021.05.24)}
+
+\startmodule [syntax-highlight]
+\usemodule [syntax-groups]
+\usemodule [filter] % loads module-catcodes
+
+\unprotect
+
+\startinterface all
+ \setinterfaceconstant {syntax} {syntax}
+ \setinterfaceconstant {highlight} {highlight}
+ \setinterfaceconstant {highlightcolor} {highlightcolor}
+\stopinterface
+
+%D Name space
+
+\definenamespace
+ [syntaxhighlighting]
+ [\c!type=module,
+ \c!name=syntaxhighlighting,
+ \c!command=\v!yes,
+ setup=\v!list,
+ \c!style=\v!no,
+ \s!parent=syntaxhighlighting]
+
+\appendtoks
+ \defineexternalfilter[\currentsyntaxhighlighting]
+ [\s!parent=\????syntaxhighlighting\currentexternalfilter,
+ \c!taglabel=\vimtyping@id,
+ \c!tagdetail={\externalfilterparameter\c!alternative},
+ ]%
+ \normalexpanded{\definelinenumbering [\currentsyntaxhighlighting]}%
+ \setevalue{type\currentsyntaxhighlighting file}{\getvalue{process\currentsyntaxhighlighting file}}%
+\to\everydefinesyntaxhighlighting
+
+\define[1]\syntaxhighlighting@set_linenumbers
+ {\def\syntaxhighlighting@linenumbering{\getvalue{current#1}}%
+ \def\syntaxhighlighting@parameter{\getvalue{#1parameter}}%
+ \normalexpanded{\setuplinenumbering[\syntaxhighlighting@linenumbering]
+ [
+ \c!method=\syntaxhighlighting@parameter{\c!number\c!method},
+ \c!conversion=\syntaxhighlighting@parameter\c!numberconversion,
+ \c!location=\syntaxhighlighting@parameter{\c!number\c!location},
+ \c!style=\syntaxhighlighting@parameter\c!numberstyle,
+ \c!color=\syntaxhighlighting@parameter\c!numbercolor,
+ \c!width=\syntaxhighlighting@parameter{\c!number\c!width},
+ \c!left=\syntaxhighlighting@parameter{\c!number\c!left},
+ \c!right=\syntaxhighlighting@parameter{\c!number\c!right},
+ \c!command=\syntaxhighlighting@parameter\c!numbercommand,
+ \c!distance=\syntaxhighlighting@parameter{\c!number\c!distance},
+ \c!align=\syntaxhighlighting@parameter{\c!number\c!align},
+ ]}}
+
+\appendtoks
+ \syntaxhighlighting@set_linenumbers\syntaxhighlighting@id
+\to\everysetupsyntaxhighlighting
+
+\def\syntaxhighlighting@id {syntaxhighlighting}
+
+%D Helper macro
+
+\def\syntaxhighlighting@yes{\v!yes,\v!on}
+
+\startsetups syntaxhighlighting@setup
+
+ \edef\currentsyntaxhighlighting{\currentexternalfilter}
+ \edef\colorscheme@name{\externalfilterparameter\c!alternative}
+
+ \let\SYN\syntaxgroup
+ \edef\HGL{\externalfilterparameter{\c!highlight\c!command}}
+ \let\\\textbackslash
+ \let\{\textbraceleft
+ \let\}\textbraceright
+ \let\SYNBOL\donothing
+ \let\SYNEOL\donothing
+
+ \setupbar[syntaxhighlightline][color=\externalfilterparameter\c!highlightcolor]
+
+ \def\tab##1%
+ {\dorecurse{##1}{\obeyedspace}}%
+
+ \forgetall
+ \the\everyinitializeverbatim
+ \usealignparameter\externalfilterparameter
+ \doifinset{\v!packed}{\externalfilterparameter\c!option}
+ {\setupwhitespace[\v!none,\v!flexible]}%
+
+ \doadaptleftskip{\externalfilterparameter\c!margin}%
+
+ % FIXME: after looking at hyphenation settings
+ %\doifinsetelse{\v!hyphenated}{\externalfilterparameter\c!option}
+ % {\setbreakpoints[compound]}
+ % {\language\minusone
+ % \resetbreakpoints}%
+
+ \def\obeyedline{\strut\par}%
+ \activatespacehandler{\????syntaxhighlighting\externalfilterparameter\c!space:\externalfilterparameter\c!lines}
+ \setcatcodetable\externalfilter@minimal_catcodes%
+ \letcharcode\endoflineasciicode\obeyedline
+ \letcharcode\spaceasciicode\obeyedspace
+ \raggedright
+\stopsetups
+
+\starttexdefinition syntaxhighlighting@read_command #1
+ \syntaxhighlighting@linenumbering_start
+ \ReadFile{#1}
+ \syntaxhighlighting@linenumbering_stop
+\stoptexdefinition
+
+\starttexdefinition syntaxhighlighting@linenumbering_start
+ \doifinsetelse{\externalfilterparameter\c!numbering}\syntaxhighlighting@yes
+ {\let\SYNBOL=\syntaxhighlighting_begin_number_lines
+ \let\SYNEOL=\syntaxhighlighting_end_number_lines
+ \startlinenumbering
+ [\currentsyntaxhighlighting]
+ [
+ \c!method=\v!type,
+ \c!start=\externalfilterparameter{\c!number\c!start},
+ \c!step=\externalfilterparameter{\c!number\c!step},
+ \c!continue=\externalfilterparameter{\c!number\c!continue},
+ ]}
+ {\let\SYNBOL=\syntaxhighlighting_begin_lines
+ \let\SYNEOL=\syntaxhighlighting_end_lines}
+\stoptexdefinition
+
+\starttexdefinition syntaxhighlighting@linenumbering_stop
+ \doifinset{\externalfilterparameter\c!numbering}\syntaxhighlighting@yes
+ {\stoplinenumbering}
+\stoptexdefinition
+
+\newcount\nofsyntaxhighlightinglines
+
+\starttexdefinition syntaxhighlighting_begin_lines
+ \dostarttaggednodetail\t!verbatimline
+\stoptexdefinition
+
+\starttexdefinition syntaxhighlighting_end_lines
+ \dostoptagged
+\stoptexdefinition
+
+\starttexdefinition syntaxhighlighting_begin_number_lines
+ \global\advance\nofsyntaxhighlightinglines\plusone
+ \dostarttaggednodetail\t!verbatimline
+ \attribute\verbatimlineattribute\nofsyntaxhighlightinglines
+\stoptexdefinition
+
+\starttexdefinition syntaxhighlighting_end_number_lines
+ \attribute\verbatimlineattribute\attributeunsetvalue
+ \dostoptagged
+\stoptexdefinition
+
+
+\setupsyntaxhighlighting
+ [\c!tab=4,
+ \c!space=\v!off,
+ \c!lines=\v!fixed,
+ \c!margin=\zeropoint,
+ \c!start=1,
+ \c!stop=0,
+ % \c!syntax=context,
+ \c!alternative=pscolor,
+ \c!before=,
+ \c!after=,
+ \c!spacebefore=\v!none,
+ \c!spaceafter=\v!none,
+ \c!location=\v!paragraph,
+ \c!style=\tttf,
+ \c!color=,
+ \c!align={\v!flushleft,\v!nothyphenated},
+ \c!filtercommand=echo, % placeholder
+ \c!continue=yes,
+ \c!read=\v!yes,
+ \c!readcommand=\syntaxhighlighting@read_command,
+ \c!output=\externalfilterinputfile, % placeholder
+ \c!setups=syntaxhighlighting@setup,
+ \c!option=\v!packed, % \v!hyphenated
+ \s!parent=\????externalfilter,
+ % Numbering options
+ \c!numbering=\v!no,
+ \c!number\c!start=1,
+ \c!number\c!step=1,
+ \c!number\c!continue=\v!no,
+ \c!numberconversion=\v!numbers,
+ \c!number\c!method=\v!type,
+ \c!number\c!location=\v!left,
+ \c!numberstyle=\ttx,
+ \c!numbercolor=,
+ \c!number\c!width=2em,
+ \c!number\c!left=,
+ \c!number\c!right=,
+ \c!numbercommand=,
+ \c!number\c!distance=0.5em,
+ \c!number\c!align=\v!flushright,
+ %Highlight options
+ \c!highlight=,
+ \c!highlightcolor=lightgray,
+ \c!highlight\c!command=\syntaxhighlightline,
+ ]
+
+% Space handler
+
+% Invisible space, don't split
+\installspacemethod {\????syntaxhighlighting\v!off:\v!fixed}
+ {\def\obeyedspace{\mathortext\normalspace\explicitfixedspace}}
+
+% Invisible space, allow split
+\installspacemethod {\????syntaxhighlighting\v!off:\v!split}
+ {\def\obeyedspace{\mathortext\normalspace\explicitobeyedspace}}
+
+% Visible space, don't split
+\installspacemethod {\????syntaxhighlighting\v!on:\v!fixed}
+ {\def\obeyedspace{\mathortext\normalspace\optionalcontrolspace}}
+
+% Visible space, allow split
+\installspacemethod {\????syntaxhighlighting\v!on:\v!split}
+ {\def\obeyedspace{\mathortext\normalspace\explicitcontrolspace}}
+
+% Default: line=empty
+\installspacemethod {\????syntaxhighlighting\v!off:}
+ {\activatespacehandler {\????syntaxhighlighting\v!off:\v!fixed}}
+
+\installspacemethod {\????syntaxhighlighting\v!on}
+ {\activatespacehandler {\????syntaxhighlighting\v!on:\v!fixed}}
+
+% space=empty, line=something
+\installspacemethod {\????syntaxhighlighting:\v!fixed}
+ {\activatespacehandler {\????syntaxhighlighting\v!off:\v!fixed}}
+
+\installspacemethod {\????syntaxhighlighting:\v!split}
+ {\activatespacehandler {\????syntaxhighlighting\v!off:\v!split}}
+
+% Both empty
+\installspacemethod {\????syntaxhighlighting:}
+ {\activatespacehandler {\????syntaxhighlighting\v!off:\v!fixed}}
+
+\definebar[syntaxhighlightline]
+ [\c!order=\v!background,
+ \c!rulethickness=2.5,
+ \c!method=0,
+ \c!offset=1.375,
+ \c!continue=\v!yes,
+ \c!color=\externalfilterparameter\c!highlightcolor,
+ ]
+
+% For backward compatibility
+\def\syntaxhighlighting@namespace {\????syntaxhighlighting}
+\def\syntaxhighlighting@name {\currentsyntaxhighlighting}
+
+\protect
+
+\stopmodule
+
diff --git a/macros/context/contrib/context-vim/tex/context/third/vim/t-vim.tex b/macros/context/contrib/context-vim/tex/context/third/vim/t-vim.tex
index 3cb8e31089..21383e2405 100644
--- a/macros/context/contrib/context-vim/tex/context/third/vim/t-vim.tex
+++ b/macros/context/contrib/context-vim/tex/context/third/vim/t-vim.tex
@@ -1,6 +1,6 @@
%D \module
%D [ file=t-vim,
-%D version=2020.06.29,
+%D version=2021.05.23,
%D title=\CONTEXT\ User Module,
%D subtitle=Vim syntax highlighting,
%D author=Aditya Mahajan,
@@ -9,7 +9,7 @@
%D email=adityam <at> ieee <dot> org,
%D license=Simplified BSD License]
-\writestatus{loading}{Vim syntax highlighting (ver: 2020.06.29)}
+\writestatus{loading}{Vim syntax highlighting (ver: 2021.05.23)}
\startmodule [vim]
\usemodule [filter] % loads module catcodes
@@ -68,7 +68,6 @@
-X % dont connect to X server
-i NONE % dont use viminfo file
--noplugin % dont load plugins
- --clean % dont load scada file (nvim)
-es % run in ex mode in silent
% -C % set compatible
-n % no swap file