diff options
Diffstat (limited to 'runtime/syntax/web.vim')
-rw-r--r-- | runtime/syntax/web.vim | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/runtime/syntax/web.vim b/runtime/syntax/web.vim new file mode 100644 index 000000000..f7a7fdfdc --- /dev/null +++ b/runtime/syntax/web.vim @@ -0,0 +1,39 @@ +" Vim syntax file +" Language: WEB +" Maintainer: Andreas Scherer <andreas.scherer@pobox.com> +" Last Change: April 30, 2001 + +" Details of the WEB language can be found in the article by Donald E. Knuth, +" "The WEB System of Structured Documentation", included as "webman.tex" in +" the standard WEB distribution, available for anonymous ftp at +" ftp://labrea.stanford.edu/pub/tex/web/. + +" For version 5.x: Clear all syntax items +" For version 6.x: Quit when a syntax file was already loaded +if version < 600 + syntax clear +elseif exists("b:current_syntax") + finish +endif + +" Although WEB is the ur-language for the "Literate Programming" paradigm, +" we base this syntax file on the modern superset, CWEB. Note: This shortcut +" may introduce some illegal constructs, e.g., CWEB's "@c" does _not_ start a +" code section in WEB. Anyway, I'm not a WEB programmer. +if version < 600 + source <sfile>:p:h/cweb.vim +else + runtime! syntax/cweb.vim + unlet b:current_syntax +endif + +" Replace C/C++ syntax by Pascal syntax. +syntax include @webIncludedC <sfile>:p:h/pascal.vim + +" Double-@ means single-@, anywhere in the WEB source (as in CWEB). +" Don't misinterpret "@'" as the start of a Pascal string. +syntax match webIgnoredStuff "@[@']" + +let b:current_syntax = "web" + +" vim: ts=8 |