blob: 54eebda3997d3e27e45a801e1c039e01966a36e4 [file] [log] [blame]
Bram Moolenaar071d4272004-06-13 20:20:40 +00001" Vim syntax file
2" Language: WEB
3" Maintainer: Andreas Scherer <andreas.scherer@pobox.com>
4" Last Change: April 30, 2001
5
6" Details of the WEB language can be found in the article by Donald E. Knuth,
7" "The WEB System of Structured Documentation", included as "webman.tex" in
8" the standard WEB distribution, available for anonymous ftp at
9" ftp://labrea.stanford.edu/pub/tex/web/.
10
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020011" quit when a syntax file was already loaded
12if exists("b:current_syntax")
Bram Moolenaar071d4272004-06-13 20:20:40 +000013 finish
14endif
15
16" Although WEB is the ur-language for the "Literate Programming" paradigm,
17" we base this syntax file on the modern superset, CWEB. Note: This shortcut
18" may introduce some illegal constructs, e.g., CWEB's "@c" does _not_ start a
19" code section in WEB. Anyway, I'm not a WEB programmer.
Bram Moolenaar89bcfda2016-08-30 23:26:57 +020020runtime! syntax/cweb.vim
21unlet b:current_syntax
Bram Moolenaar071d4272004-06-13 20:20:40 +000022
23" Replace C/C++ syntax by Pascal syntax.
24syntax include @webIncludedC <sfile>:p:h/pascal.vim
25
26" Double-@ means single-@, anywhere in the WEB source (as in CWEB).
27" Don't misinterpret "@'" as the start of a Pascal string.
28syntax match webIgnoredStuff "@[@']"
29
30let b:current_syntax = "web"
31
32" vim: ts=8