annotate runtime/syntax/web.vim @ 0:76efa0be13f1

Initial revision
author atsuki
date Sat, 10 Nov 2007 15:07:22 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
1 " Vim syntax file
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
2 " Language: WEB
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
3 " Maintainer: Andreas Scherer <andreas.scherer@pobox.com>
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
4 " Last Change: April 30, 2001
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
5
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
6 " Details of the WEB language can be found in the article by Donald E. Knuth,
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
7 " "The WEB System of Structured Documentation", included as "webman.tex" in
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
8 " the standard WEB distribution, available for anonymous ftp at
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
9 " ftp://labrea.stanford.edu/pub/tex/web/.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
10
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
11 " For version 5.x: Clear all syntax items
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
12 " For version 6.x: Quit when a syntax file was already loaded
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
13 if version < 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
14 syntax clear
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
15 elseif exists("b:current_syntax")
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
16 finish
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
17 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
18
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
19 " Although WEB is the ur-language for the "Literate Programming" paradigm,
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
20 " we base this syntax file on the modern superset, CWEB. Note: This shortcut
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
21 " may introduce some illegal constructs, e.g., CWEB's "@c" does _not_ start a
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
22 " code section in WEB. Anyway, I'm not a WEB programmer.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
23 if version < 600
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
24 source <sfile>:p:h/cweb.vim
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
25 else
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
26 runtime! syntax/cweb.vim
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
27 unlet b:current_syntax
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
28 endif
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
29
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
30 " Replace C/C++ syntax by Pascal syntax.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
31 syntax include @webIncludedC <sfile>:p:h/pascal.vim
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
32
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
33 " Double-@ means single-@, anywhere in the WEB source (as in CWEB).
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
34 " Don't misinterpret "@'" as the start of a Pascal string.
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
35 syntax match webIgnoredStuff "@[@']"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
36
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
37 let b:current_syntax = "web"
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
38
76efa0be13f1 Initial revision
atsuki
parents:
diff changeset
39 " vim: ts=8