Mercurial > vim
annotate runtime/syntax/dtd.vim @ 33566:e1e3805fcd96 v9.0.2028
patch 9.0.2028: confusing build dependencies
Commit: https://github.com/vim/vim/commit/5d03525cdef5db1b1cedfa26c6f8a21aaa207ec0
Author: Yee Cheng Chin <ychin.git@gmail.com>
Date: Sun Oct 15 09:50:53 2023 +0200
patch 9.0.2028: confusing build dependencies
Problem: confusing build dependencies
Solution: clean them up, make them parallelizable
Separate vim binary and unittest dependencies, make them parallelizable
Clean up make dependencies so Vim and unit test binaries only depend on
the object files they need. This fixes an existing issue where after
running unit tests, the Vim binary would be invalidated, which results
in it having to be linked again when running script tests, even though
Vim was already previously built.
Make link.sh (script we use to link those binaries) generate namespaced
temporary files for each app to avoid them colliding with each other.
This allows `unittesttargets` to be built in parallel.
These fixes are useful when using link-time-optimization as the link
phase could now take minutes rather than a few seconds.
closes: #13344
Signed-off-by: Christian Brabandt <cb@256bit.org>
Co-authored-by: Yee Cheng Chin <ychin.git@gmail.com>
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 15 Oct 2023 10:00:03 +0200 |
parents | f0d7cb510ce3 |
children |
rev | line source |
---|---|
7 | 1 " Vim syntax file |
18456 | 2 " Language: DTD (Document Type Definition for XML) |
3 " Maintainer: Christian Brabandt <cb@256bit.org> | |
4 " Repository: https://github.com/chrisbra/vim-xml-ftplugin | |
5 " Previous Maintainer: Johannes Zellner <johannes@zellner.org> | |
6 " Author: Daniel Amyot <damyot@site.uottawa.ca> | |
7 " Last Changed: Sept 24, 2019 | |
8 " Filenames: *.dtd | |
7 | 9 " |
10 " REFERENCES: | |
11 " http://www.w3.org/TR/html40/ | |
12 " http://www.w3.org/TR/NOTE-html-970421 | |
13 " | |
14 " TODO: | |
15 " - improve synchronizing. | |
16 | |
3526
dd6c2497c997
Fix more 'cpo' issues in runtime files.
Bram Moolenaar <bram@vim.org>
parents:
826
diff
changeset
|
17 if exists("b:current_syntax") |
dd6c2497c997
Fix more 'cpo' issues in runtime files.
Bram Moolenaar <bram@vim.org>
parents:
826
diff
changeset
|
18 finish |
7 | 19 endif |
3526
dd6c2497c997
Fix more 'cpo' issues in runtime files.
Bram Moolenaar <bram@vim.org>
parents:
826
diff
changeset
|
20 let s:dtd_cpo_save = &cpo |
dd6c2497c997
Fix more 'cpo' issues in runtime files.
Bram Moolenaar <bram@vim.org>
parents:
826
diff
changeset
|
21 set cpo&vim |
7 | 22 |
23 if !exists("dtd_ignore_case") | |
24 " I prefer having the case takes into consideration. | |
25 syn case match | |
26 else | |
27 syn case ignore | |
28 endif | |
29 | |
30 | |
31 " the following line makes the opening <! and | |
32 " closing > highlighted using 'dtdFunction'. | |
33 " | |
34 " PROVIDES: @dtdTagHook | |
35 " | |
36 syn region dtdTag matchgroup=dtdFunction | |
37 \ start=+<!+ end=+>+ matchgroup=NONE | |
38 \ contains=dtdTag,dtdTagName,dtdError,dtdComment,dtdString,dtdAttrType,dtdAttrDef,dtdEnum,dtdParamEntityInst,dtdParamEntityDecl,dtdCard,@dtdTagHook | |
39 | |
40 if !exists("dtd_no_tag_errors") | |
41 " mark everything as an error which starts with a <! | |
42 " and is not overridden later. If this is annoying, | |
43 " it can be switched off by setting the variable | |
44 " dtd_no_tag_errors. | |
45 syn region dtdError contained start=+<!+lc=2 end=+>+ | |
46 endif | |
47 | |
26708 | 48 " if this is a html like comment highlight also |
7 | 49 " the opening <! and the closing > as Comment. |
826 | 50 syn region dtdComment start=+<![ \t]*--+ end=+-->+ contains=dtdTodo,@Spell |
7 | 51 |
52 | |
53 " proper DTD comment | |
826 | 54 syn region dtdComment contained start=+--+ end=+--+ contains=dtdTodo,@Spell |
7 | 55 |
56 | |
57 " Start tags (keywords). This is contained in dtdFunction. | |
58 " Note that everything not contained here will be marked | |
59 " as error. | |
60 syn match dtdTagName contained +<!\(ATTLIST\|DOCTYPE\|ELEMENT\|ENTITY\|NOTATION\|SHORTREF\|USEMAP\|\[\)+lc=2,hs=s+2 | |
61 | |
62 | |
63 " wildcards and operators | |
64 syn match dtdCard contained "|" | |
65 syn match dtdCard contained "," | |
66 " evenutally overridden by dtdEntity | |
67 syn match dtdCard contained "&" | |
68 syn match dtdCard contained "?" | |
69 syn match dtdCard contained "\*" | |
70 syn match dtdCard contained "+" | |
71 | |
72 " ...and finally, special cases. | |
73 syn match dtdCard "ANY" | |
74 syn match dtdCard "EMPTY" | |
75 | |
76 if !exists("dtd_no_param_entities") | |
77 | |
78 " highlight parameter entity declarations | |
79 " and instances. Note that the closing `;' | |
80 " is optional. | |
81 | |
82 " instances | |
83 syn region dtdParamEntityInst oneline matchgroup=dtdParamEntityPunct | |
84 \ start="%[-_a-zA-Z0-9.]\+"he=s+1,rs=s+1 | |
85 \ skip=+[-_a-zA-Z0-9.]+ | |
86 \ end=";\|\>" | |
87 \ matchgroup=NONE contains=dtdParamEntityPunct | |
88 syn match dtdParamEntityPunct contained "\." | |
89 | |
90 " declarations | |
91 " syn region dtdParamEntityDecl oneline matchgroup=dtdParamEntityDPunct start=+<!ENTITY % +lc=8 skip=+[-_a-zA-Z0-9.]+ matchgroup=NONE end="\>" contains=dtdParamEntityDPunct | |
92 syn match dtdParamEntityDecl +<!ENTITY % [-_a-zA-Z0-9.]*+lc=8 contains=dtdParamEntityDPunct | |
93 syn match dtdParamEntityDPunct contained "%\|\." | |
94 | |
95 endif | |
96 | |
97 " &entities; compare with xml | |
98 syn match dtdEntity "&[^; \t]*;" contains=dtdEntityPunct | |
99 syn match dtdEntityPunct contained "[&.;]" | |
100 | |
101 " Strings are between quotes | |
26708 | 102 syn region dtdString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=dtdAttrDef,dtdAttrType,dtdParamEntityInst,dtdEntity,dtdCard |
103 syn region dtdString start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=dtdAttrDef,dtdAttrType,dtdParamEntityInst,dtdEntity,dtdCard | |
7 | 104 |
105 " Enumeration of elements or data between parenthesis | |
106 " | |
107 " PROVIDES: @dtdEnumHook | |
108 " | |
109 syn region dtdEnum matchgroup=dtdType start="(" end=")" matchgroup=NONE contains=dtdEnum,dtdParamEntityInst,dtdCard,@dtdEnumHook | |
110 | |
111 "Attribute types | |
112 syn keyword dtdAttrType NMTOKEN ENTITIES NMTOKENS ID CDATA | |
113 syn keyword dtdAttrType IDREF IDREFS | |
114 " ENTITY has to treated special for not overriding <!ENTITY | |
115 syn match dtdAttrType +[^!]\<ENTITY+ | |
116 | |
117 "Attribute Definitions | |
118 syn match dtdAttrDef "#REQUIRED" | |
119 syn match dtdAttrDef "#IMPLIED" | |
120 syn match dtdAttrDef "#FIXED" | |
121 | |
122 syn case match | |
123 " define some common keywords to mark TODO | |
124 " and important sections inside comments. | |
125 syn keyword dtdTodo contained TODO FIXME XXX | |
126 | |
127 syn sync lines=250 | |
128 | |
129 " Define the default highlighting. | |
10048
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
3526
diff
changeset
|
130 " Only when an item doesn't have highlighting yet |
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
3526
diff
changeset
|
131 |
43efa4f5a8ea
commit https://github.com/vim/vim/commit/89bcfda6834aba724d12554a34b9ed49f5789fd5
Christian Brabandt <cb@256bit.org>
parents:
3526
diff
changeset
|
132 " The default highlighting. |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
133 hi def link dtdFunction Function |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
134 hi def link dtdTag Normal |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
135 hi def link dtdType Type |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
136 hi def link dtdAttrType dtdType |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
137 hi def link dtdAttrDef dtdType |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
138 hi def link dtdConstant Constant |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
139 hi def link dtdString dtdConstant |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
140 hi def link dtdEnum dtdConstant |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
141 hi def link dtdCard dtdFunction |
7 | 142 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
143 hi def link dtdEntity Statement |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
144 hi def link dtdEntityPunct dtdType |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
145 hi def link dtdParamEntityInst dtdConstant |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
146 hi def link dtdParamEntityPunct dtdType |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
147 hi def link dtdParamEntityDecl dtdType |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
148 hi def link dtdParamEntityDPunct dtdComment |
7 | 149 |
10051
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
150 hi def link dtdComment Comment |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
151 hi def link dtdTagName Statement |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
152 hi def link dtdError Error |
46763b01cd9a
commit https://github.com/vim/vim/commit/f37506f60f87d52a9e8850e30067645e2b13783c
Christian Brabandt <cb@256bit.org>
parents:
10048
diff
changeset
|
153 hi def link dtdTodo Todo |
7 | 154 |
155 | |
3526
dd6c2497c997
Fix more 'cpo' issues in runtime files.
Bram Moolenaar <bram@vim.org>
parents:
826
diff
changeset
|
156 let &cpo = s:dtd_cpo_save |
dd6c2497c997
Fix more 'cpo' issues in runtime files.
Bram Moolenaar <bram@vim.org>
parents:
826
diff
changeset
|
157 unlet s:dtd_cpo_save |
7 | 158 |
159 let b:current_syntax = "dtd" | |
160 | |
161 " vim: ts=8 |