summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/context/third
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-10-21 22:37:11 +0000
committerKarl Berry <karl@freefriends.org>2011-10-21 22:37:11 +0000
commit3cb4263a8fea39da39d23b6e1a65d258913aa6d6 (patch)
tree3ac8b0eb2f9dc62b1573d4a57bf47525f2372165 /Master/texmf-dist/tex/context/third
parent6af85dc2b807a9e34d53d7c608a7829a47ea88ff (diff)
context-vim (21oct11)
git-svn-id: svn://tug.org/texlive/trunk@24356 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/context/third')
-rw-r--r--Master/texmf-dist/tex/context/third/vim/2context.vim20
-rw-r--r--Master/texmf-dist/tex/context/third/vim/t-syntax-groups.tex10
-rw-r--r--Master/texmf-dist/tex/context/third/vim/t-syntax-highlight.tex47
-rw-r--r--Master/texmf-dist/tex/context/third/vim/t-vim.tex129
4 files changed, 174 insertions, 32 deletions
diff --git a/Master/texmf-dist/tex/context/third/vim/2context.vim b/Master/texmf-dist/tex/context/third/vim/2context.vim
index 17a63b1fcfa..71c811520db 100644
--- a/Master/texmf-dist/tex/context/third/vim/2context.vim
+++ b/Master/texmf-dist/tex/context/third/vim/2context.vim
@@ -42,14 +42,20 @@ let s:strip = strlen( matchstr( getline(s:lstart), '^\s*' ) )
" Find the smallest leading white space
if exists("strip") && strip && (s:strip != 0)
- echo "In the loop"
+ echo "Calculating amount of leading whitespace"
for s:lnum in range(s:lstart, s:lstop)
let s:line = getline(s:lnum)
- let s:space = matchstr(s:line, '^\s*')
- let s:len = strlen(s:space)
- echo s:len
- let s:strip = min(s:strip, s:len)
+ if (match(s:line, '^\s*$')) == -1 " line is not empty
+ let s:space = matchstr(s:line, '^\s*')
+ let s:len = strlen(s:space)
+ " echo s:len
+ let s:strip = min([s:strip, s:len])
+ if s:strip == 0
+ break
+ end
+ end
endfor
+ " echo "Strip amount:" . s:strip
else
let s:strip = 0
endif
@@ -65,7 +71,7 @@ while s:lnum <= s:lstop
let s:new = ''
" Loop over each character in the line
- let s:col = 1
+ let s:col = s:strip + 1
while s:col <= s:len
let s:startcol = s:col " The start column for processing text
let s:id = synID (s:lnum, s:col, 1)
@@ -113,7 +119,7 @@ while s:lnum <= s:lstop
endwhile
" Remove leading whitespace
- let s:new = substitute(s:new, '^\s\{' . s:strip . '\}', "", "")
+" let s:new = substitute(s:new, '^\s\{' . s:strip . '\}', "", "")
" Highlight line, if needed.
if (index(highlight, s:lnum) != -1)
diff --git a/Master/texmf-dist/tex/context/third/vim/t-syntax-groups.tex b/Master/texmf-dist/tex/context/third/vim/t-syntax-groups.tex
index 3ecf5f319e1..e81698a15d2 100644
--- a/Master/texmf-dist/tex/context/third/vim/t-syntax-groups.tex
+++ b/Master/texmf-dist/tex/context/third/vim/t-syntax-groups.tex
@@ -1,6 +1,6 @@
%D \module
%D [ file=t-syntax-groups,
-%D version=2011.09.03,
+%D version=2011.10.20,
%D title=\CONTEXT\ User Module,
%D subtitle=Syntax highlighting support,
%D author=Aditya Mahajan,
@@ -9,9 +9,7 @@
%D email=adityam <at> ieee <dot> org,
%D license=Simplified BSD License]
-\writestatus{loading}{Syntax highlighting groups (ver: 2011.09.03)}
-
-\tracingmacros=1
+\writestatus{loading}{Syntax highlighting groups (ver: 2011.10.20)}
% Colors are specified in hex; in MkII the hex mode needs to be activated.
\doifmode\s!mkii
@@ -77,7 +75,7 @@
\starttexdefinition colorscheme::start [#1]
\pushmacro\colorscheme::name
\setcolorscheme{#1}
- \setupsyntaxgroup[\c!color=,\c!style=,\c!command=]
+ %\setupsyntaxgroup[\c!color=,\c!style=,\c!command=]
\stoptexdefinition
\def\stopcolorscheme
@@ -89,6 +87,7 @@
\starttexdefinition syntaxgroup [#1]#2
% #1 = style
% #2 = content
+ \syntaxgroupparameter\c!before
\begingroup
\edef\syntaxgroup::name{\colorscheme::name#1}%
\iftracesyntaxgroups
@@ -101,6 +100,7 @@
\externalfilter::attributes_stop
}
\endgroup
+ \syntaxgroupparameter\c!after
\stoptexdefinition
%D Tracing macros
diff --git a/Master/texmf-dist/tex/context/third/vim/t-syntax-highlight.tex b/Master/texmf-dist/tex/context/third/vim/t-syntax-highlight.tex
index dca073244e8..2cfa6ae6804 100644
--- a/Master/texmf-dist/tex/context/third/vim/t-syntax-highlight.tex
+++ b/Master/texmf-dist/tex/context/third/vim/t-syntax-highlight.tex
@@ -18,6 +18,19 @@
\unprotectmodulecatcodes
+%% Temporary bugfix
+
+\startmode[\s!mkii]
+\def\p!doifinsetelse#1#2#3#4%
+ {\donefalse
+ \edef\!!stringa{#3}%
+ \ifx\!!stringa\empty
+ \else
+ \processcommacommand[#4]\p!docheckiteminset
+ \fi
+ \ifdone\expandafter#1\else\expandafter#2\fi}
+\stopmode
+
\startinterface all
\setinterfaceconstant {syntax} {syntax}
\setinterfaceconstant {highlight} {highlight}
@@ -124,34 +137,34 @@
\linenumber=\syntaxhighlighting::linenumber}
\stopsetups
-\startmode [\s!mkiv]
\starttexdefinition syntaxhighlighting::read_command #1
- \doifinsetelse{\externalfilterparameter\c!numbering}\syntaxhighlighting::yes
+ \syntaxhighlighting::linenumbering_start
+ \ReadFile{#1}
+ \syntaxhighlighting::linenumbering_stop
+\stoptexdefinition
+
+\startmode [\s!mkiv]
+\starttexdefinition syntaxhighlighting::linenumbering_start
+ \doifinset{\externalfilterparameter\c!numbering}\syntaxhighlighting::yes
{\startlinenumbering
[\syntaxhighlighting::name]
- [\c!continue=\externalfilterparameter{\c!number\c!continue}]
- \ReadFile{#1}
- \stoplinenumbering}
- {\ReadFile{#1}}
+ [\c!continue=\externalfilterparameter{\c!number\c!continue}]}
\stoptexdefinition
\stopmode
\startmode [\s!mkii]
-\starttexdefinition syntaxhighlighting::read_command #1
- \doifinsetelse{\externalfilterparameter\c!numbering}\syntaxhighlighting::yes
- {\doifinsetelse{\externalfilterparameter{\c!number\c!continue}}\syntaxhighlighting::yes
+\starttexdefinition syntaxhighlighting::linenumbering_start
+ \doifinset{\externalfilterparameter\c!numbering}\syntaxhighlighting::yes
+ {\doifelse{\externalfilterparameter{\c!number\c!continue}}\syntaxhighlighting::yes
{\startlinenumbering[\v!continue]}
- {\startlinenumbering}
- \syntaxhighlighting::read_command_aux{#1}
- \stoplinenumbering}
- {\syntaxhighlighting::read_command_aux{#1}}
-\stoptexdefinition
-
-\starttexdefinition syntaxhighlighting::read_command_aux #1
- \ReadFile{#1}
+ {\startlinenumbering}}
\stoptexdefinition
\stopmode
+\starttexdefinition syntaxhighlighting::linenumbering_stop
+ \doifinset{\externalfilterparameter\c!numbering}\syntaxhighlighting::yes
+ {\stoplinenumbering}
+\stoptexdefinition
\setupsyntaxhighlighting
[\c!tab=4,
diff --git a/Master/texmf-dist/tex/context/third/vim/t-vim.tex b/Master/texmf-dist/tex/context/third/vim/t-vim.tex
index 76dfab6b88a..930d49b7e6e 100644
--- a/Master/texmf-dist/tex/context/third/vim/t-vim.tex
+++ b/Master/texmf-dist/tex/context/third/vim/t-vim.tex
@@ -41,8 +41,62 @@
\edef\vimtyping::name{#1}
\definesyntaxhighlighting[#1][\s!parent=\vimtyping::namespace#1]
+
+ \setvalue{\e!start raw#1}{\bgroup\obeylines\dodoubleargument\vimtyping::start_raw[#1]}
+ \setvalue{\e!stop raw#1}{\vimtyping::stop_raw}
+ \setvalue{inlineraw#1}{\dodoubleargument\vimtyping::inline_raw[#1]}
+\stoptexdefinition
+
+\starttexdefinition vimtyping::start_raw [#1][#2]
+ % #1 = filter
+ % #2 = options
+ \egroup %\bgroup in \start#1
+
+ \edef\vimtyping::name{#1}
+
+ \begingroup % to keep assignments local
+ \setupvimtyping[#1][\c!name=,#2]
+
+ \externalfilterparameter\c!before
+
+ \externalfilter::attributes_start \externalfilter::id \c!style \c!color
+ \syntaxhighlighting::linenumbering_start
+ \processcommacommand[\externalfilterparameter\c!setups]\directsetup
+ \gobbleoneargument % For some reason the next argument is ^M
+\stoptexdefinition
+
+\starttexdefinition vimtyping::stop_raw
+
+ \syntaxhighlighting::linenumbering_stop
+ \externalfilter::attributes_stop
+ \externalfilterparameter\c!after
+ \endgroup
+
\stoptexdefinition
+\starttexdefinition vimtyping::inline_raw [#1][#2]
+ % #1 = filter
+ % #2 = options
+
+ \edef\vimtyping::name{#1}
+
+ \begingroup % to keep assignments local
+ \setupvimtyping[#1][\c!name=,\c!before=,\c!after=,#2]
+
+ \externalfilter::attributes_start \externalfilter::id \c!style \c!color
+ % We assume that the setups set minimal_catcodes
+ \processcommacommand[\externalfilterparameter\c!setups]\directsetup
+
+ \vimtyping::inline_raw_aux
+\stoptexdefinition
+
+\starttexdefinition vimtyping::inline_raw_aux #1
+ #1
+ \externalfilter::attributes_stop
+ \endgroup
+\stoptexdefinition
+
+
% Mode to testing the dev version of 2context script.
\doifmodeelse{vim-dev}
{\def\vimtyping::script_name{2context.vim}}
@@ -139,6 +193,16 @@
}
\stopsetups
+\defineframed[vimtodoframed]
+ [
+ \c!location=\v!low,
+ \c!frame=\v!off,
+ \c!background=\v!color,
+ \c!backgroundcolor=vimtodoyellow,
+ ]
+
+\definecolor[vimtodoyellow]
+ [h={E0E090}]
\startsetups[vim-minor-groups]
\definesyntaxgroup
@@ -203,9 +267,11 @@
\definesyntaxgroup
[Ignore]
- \definesyntaxgroup
- [Todo]
- [\c!color={h=800000}]
+ \definesyntaxgroup
+ [Todo]
+ [\c!color={h=800000},
+ \c!command=\vimtodoframed]
+
\definesyntaxgroup
[Error]
@@ -216,6 +282,11 @@
[\c!color={h=6a5acd},
\c!command=\underbar]
+ \definesyntaxgroup
+ [Todo]
+ [\c!color={h=800000},
+ \c!command=\vimtodoframed]
+
\setups{vim-minor-groups}
\definesyntaxgroup
@@ -267,6 +338,58 @@
\setups{vim-minor-groups}
\stopcolorscheme
+
+\startcolorscheme[kate]
+ % Temporary definition... will change
+ % . kw dsKeyword
+ % . dt dsDataType
+ % . dv dsDecVal
+ % . bn dsBaseN
+ % . fl dsFloat
+ % . ch dsChar
+ % . st dsString
+ % . co dsComment
+ % . ot dsOthers
+ % . al dsAlert
+ % . fu dsFunction
+ % . re dsRegionMarker
+ % . er dsError
+ \definesyntaxgroup
+ [kw]
+ [\c!color={h=007020}, \c!style=bold]
+
+ \definesyntaxgroup
+ [dt]
+ [\c!color={h=902000}]
+
+ \definesyntaxgroup
+ [dv, bn, fl]
+ [\c!color={h=40a070}]
+
+ \definesyntaxgroup
+ [ch, st]
+ [\c!color={h=4070a0}]
+
+ \definesyntaxgroup
+ [co]
+ [\c!color={h=60a0b0}, \c!style=italic]
+
+ \definesyntaxgroup
+ [ot]
+ [\c!color={h=007020}]
+
+ \definesyntaxgroup
+ [al, er]
+ [\c!color=red, \c!style=bold]
+
+ \definesyntaxgroup
+ [fu]
+ [\c!color={h=06287e}]
+
+ \definesyntaxgroup
+ [re]
+
+\stopcolorscheme
\protectmodulecatcodes
\stopmodule