]>
git.proxmox.com Git - ceph.git/blob - ceph/src/boost/tools/quickbook/extra/katepart/syntax/boost_hs_quickbook.xml
1 <?xml version=
"1.0" encoding=
"UTF-8" ?>
2 <!DOCTYPE language SYSTEM
"language.dtd">
11 author=
"Copyright 2006 -2007 Matias Capeletto, matias.capeletto@gmail.com"
12 license=
"Distributed under the Boost Software License, Version 1.0.
13 http://www.boost.org/LICENSE_1_0.txt"
25 This is bottom the context, every thing the user type will stack another
26 context. This context is special because some things can only be called
27 from here. (e.g. The quickbook description)
30 <context name=
"c_main" attribute=
"d_normal" lineEndContext=
"#stay">
32 <IncludeRules context=
"c_main_before_code" />
33 <IncludeRules context=
"c_cpp_code_block_finder" />
34 <IncludeRules context=
"c_main_after_code" />
35 <IncludeRules context=
"c_normal" />
39 <context name=
"c_main_before_code" attribute=
"d_normal" lineEndContext=
"#stay">
41 <IncludeRules context=
"c_sections_finder" />
42 <IncludeRules context=
"c_predefined_macros" />
43 <IncludeRules context=
"c_boost::hs call finder" />
44 <IncludeRules context=
"c_item_list_finder" />
48 <context name=
"c_main_after_code" attribute=
"d_normal" lineEndContext=
"#stay">
50 <IncludeRules context=
"c_scape_sequence_finder" />
51 <IncludeRules context=
"c_headings_finder" />
52 <IncludeRules context=
"c_includes_finder" />
53 <IncludeRules context=
"c_macro_definition_finder" />
54 <IncludeRules context=
"c_template_definition_finder" />
55 <IncludeRules context=
"c_quickbook_type_finder" />
56 <IncludeRules context=
"c_text_block_finder" />
57 <IncludeRules context=
"c_table_finder" />
58 <IncludeRules context=
"c_variable_list_finder" />
59 <IncludeRules context=
"c_import_finder" />
63 <!-- Common Structures, this constructions can be called in almost every context -->
65 <context name=
"c_common_structures" attribute=
"d_normal" lineEndContext=
"#stay">
68 <IncludeRules context=
"c_common_structures_before_code" />
69 <IncludeRules context=
"c_cpp_inline_code_block_finder" />
70 <IncludeRules context=
"c_common_structures_after_code" />
74 <context name=
"c_common_structures_before_code" attribute=
"d_normal" lineEndContext=
"#stay">
77 <IncludeRules context=
"c_scape_sequence_finder" />
78 <IncludeRules context=
"c_predefined_macros" />
79 <IncludeRules context=
"c_language_finder" />
80 <IncludeRules context=
"c_comment_finder" />
81 <IncludeRules context=
"c_boost::hs call finder" />
82 <IncludeRules context=
"c_no_processing_finder" />
86 <context name=
"c_common_structures_after_code" attribute=
"d_normal" lineEndContext=
"#stay">
88 <IncludeRules context=
"c_anchor_finder" />
89 <IncludeRules context=
"c_image_finder" />
90 <IncludeRules context=
"c_link_finder" />
91 <IncludeRules context=
"c_cpp_link_finder" />
92 <IncludeRules context=
"c_text_format_finder" />
96 <!-- Normal contex, defines plain text and look for a structure to appear -->
98 <context name=
"c_normal" attribute=
"d_normal" lineEndContext=
"#stay">
100 <!-- For performance the [endsect] resets the engine -->
101 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" endRegion=
"r_section"/>
103 <IncludeRules context=
"c_common_structures" />
104 <IncludeRules context=
"c_simple_text_block_finder" />
108 <!-- Inside tables and list, you can not use every construction -->
110 <context name=
"c_strict_normal" attribute=
"d_normal" lineEndContext=
"#stay">
112 <!-- For performance the [endsect] resets the engine -->
113 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" endRegion=
"r_section"/>
115 <IncludeRules context=
"c_common_structures" />
119 <!-- Normal block contexs, this contexts will be stacked so we can know the state -->
121 <context name=
"c_normal_block" attribute=
"d_normal" lineEndContext=
"#stay">
122 <IncludeRules context=
"c_normal" />
123 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
126 <context name=
"c_normal_bold_block" attribute=
"d_normal_bold" lineEndContext=
"#stay">
127 <IncludeRules context=
"c_normal" />
129 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
132 <context name=
"c_indirect_normal_block" attribute=
"d_normal" lineEndContext=
"#stay">
133 <IncludeRules context=
"c_normal" />
135 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop#pop" />
138 <context name=
"c_deep_normal_block" attribute=
"d_normal" lineEndContext=
"#stay">
139 <IncludeRules context=
"c_normal" />
140 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop#pop#pop" />
143 <context name=
"c_indirect_normal_bold_block" attribute=
"d_normal_bold" lineEndContext=
"#stay">
144 <IncludeRules context=
"c_normal" />
146 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop#pop" />
149 <!-- Blocks used in macros and templates bodies -->
151 <context name=
"c_indirect_main_block" attribute=
"d_normal" lineEndContext=
"#stay">
152 <IncludeRules context=
"c_main" />
154 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop#pop" />
157 <context name=
"c_deep_main_block" attribute=
"d_normal" lineEndContext=
"#stay">
158 <IncludeRules context=
"c_main" />
159 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop#pop#pop" />
162 <!-- No processing block -->
164 <context name=
"c_no_processing_block" attribute=
"d_normal" lineEndContext=
"#stay">
165 <IncludeRules context=
"c_predefined_macros" />
166 <StringDetect String=
"'''" attribute=
"d_structure" context=
"#pop" endRegion=
"r_no_processing"/>
169 <context name=
"c_no_processing_finder" attribute=
"d_normal" lineEndContext=
"#stay">
170 <StringDetect String=
"'''" attribute=
"d_structure" context=
"c_no_processing_block" beginRegion=
"r_no_processing"/>
173 <!-- Items list finder -->
175 <context name=
"c_item_list" attribute=
"d_normal" lineEndContext=
"#stay">
176 <RegExpr String=
"^\s*[\*\#]\s" minimal=
"true" attribute=
"d_structure" context=
"c_item_list"/>
177 <RegExpr String=
"^." minimal=
"true" attribute=
"d_structure" lookAhead=
"true" context=
"#pop"/>
178 <IncludeRules context=
"c_strict_normal" />
181 <context name=
"c_item_list_finder" attribute=
"d_normal" lineEndContext=
"#stay">
182 <RegExpr String=
"^\s*[\*\#]\s" minimal=
"true" attribute=
"d_structure" context=
"c_item_list"/>
187 <context name=
"c_back_to_quickbook_block" attribute=
"d_normal" lineEndContext=
"#stay">
188 <Detect2Chars char=
"`" char1=
"`" attribute=
"d_structure" context=
"#pop" />
189 <IncludeRules context=
"c_strict_normal" />
192 <context name=
"c_code_block" attribute=
"d_normal" lineEndContext=
"#stay">
193 <RegExpr String=
"^[\S]" minimal=
"true" attribute=
"d_structure" lookAhead=
"true" context=
"#pop" />
194 <Detect2Chars char=
"`" char1=
"`" attribute=
"d_structure" context=
"c_back_to_quickbook_block" />
195 <IncludeRules context=
"c_predefined_macros" />
196 <IncludeRules context=
"##C++" />
199 <context name=
"c_preformated_code_block" attribute=
"d_normal" lineEndContext=
"#stay">
200 <Detect2Chars char=
"`" char1=
"`" attribute=
"d_structure" context=
"#pop" endRegion=
"r_code_block" />
201 <IncludeRules context=
"c_predefined_macros" />
202 <IncludeRules context=
"##C++" />
205 <context name=
"c_inline_code_block" attribute=
"d_normal" lineEndContext=
"#stay">
206 <DetectChar char=
"`" attribute=
"d_structure" context=
"#pop" />
207 <IncludeRules context=
"c_predefined_macros" />
208 <IncludeRules context=
"##C++"/>
211 <context name=
"c_cpp_code_block_finder" attribute=
"d_normal" lineEndContext=
"#stay">
212 <RegExpr String=
"^[\s]" minimal=
"true" attribute=
"d_structure" context=
"c_code_block" />
215 <context name=
"c_cpp_inline_code_block_finder" attribute=
"d_normal" lineEndContext=
"#stay">
216 <Detect2Chars char=
"`" char1=
"`" attribute=
"d_structure" context=
"c_preformated_code_block" beginRegion=
"r_code_block" />
217 <DetectChar char=
"`" attribute=
"d_structure" context=
"c_inline_code_block" />
220 <context name=
"c_language_finder" attribute=
"d_normal" lineEndContext=
"#stay">
221 <StringDetect String=
"[c++]" attribute=
"d_structure" context=
"#stay" />
222 <StringDetect String=
"[python]" attribute=
"d_structure" context=
"#stay" />
225 <!-- Sections and Headings -->
227 <context name=
"c_section_definition" attribute=
"d_anchor" lineEndContext=
"#stay">
228 <DetectChar char=
" " attribute=
"d_structure" context=
"c_indirect_normal_bold_block" />
231 <context name=
"c_sections_finder" attribute=
"d_normal" lineEndContext=
"#stay">
232 <StringDetect String=
"[section" attribute=
"d_structure" context=
"c_section_definition" beginRegion=
"r_section" />
233 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop" endRegion=
"r_section"/>
236 <context name=
"c_headings_finder" attribute=
"d_normal" lineEndContext=
"#stay">
237 <StringDetect String=
"[heading" minimal=
"true" attribute=
"d_structure" context=
"c_normal_bold_block" />
238 <RegExpr String=
"\[h[1-6]\b" minimal=
"true" attribute=
"d_structure" context=
"c_normal_bold_block" />
244 <context name=
"c_macro_definition" attribute=
"d_macro" lineEndContext=
"c_indirect_main_block">
245 <RegExpr String=
"\s" minimal=
"true" attribute=
"d_structure" context=
"c_indirect_main_block" />
248 <context name=
"c_predefined_macros" attribute=
"d_macro">
249 <RegExpr String=
"[_]{2}[\w_]+[_]{2}" minimal=
"true" attribute=
"d_macro" context=
"#stay" />
252 <context name=
"c_macro_definition_finder" attribute=
"d_normal" lineEndContext=
"#stay">
253 <RegExpr String=
"\[def\b[\s]*" attribute=
"d_structure" context=
"c_macro_definition" />
259 <context name=
"c_template_parameters" attribute=
"d_path" lineEndContext=
"#stay">
260 <DetectChar char=
"]" attribute=
"d_structure" context=
"c_deep_main_block" />
263 <context name=
"c_template_definition" attribute=
"d_macro" lineEndContext=
"c_indirect_main_block">
264 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_template_parameters" />
265 <RegExpr String=
"\\\s" minimal=
"true" attribute=
"d_structure" context=
"c_indirect_main_block"/>
266 <RegExpr String=
"\s" minimal=
"true" attribute=
"d_structure" context=
"c_indirect_main_block" />
269 <context name=
"c_template_definition_finder" attribute=
"d_normal" lineEndContext=
"#stay">
270 <RegExpr String=
"\[template\b[\s]*" attribute=
"d_structure" context=
"c_template_definition" />
273 <!-- Text format logic -->
275 <context name=
"c_text_format_finder" attribute=
"d_normal">
276 <Detect2Chars char=
"[" char1=
"*" attribute=
"d_structure" context=
"c_normal_bold" />
277 <Detect2Chars char=
"[" char1=
"'" attribute=
"d_structure" context=
"c_normal_italic" />
278 <Detect2Chars char=
"[" char1=
"_" attribute=
"d_structure" context=
"c_normal_underline" />
279 <Detect2Chars char=
"[" char1=
"-" attribute=
"d_structure" context=
"c_normal_strikeout" />
280 <Detect2Chars char=
"[" char1=
"^" attribute=
"d_structure" context=
"c_normal_teletype" />
281 <Detect2Chars char=
"[" char1=
"~" attribute=
"d_structure" context=
"c_normal_replaceable" />
282 <RegExpr String=
"(?=(^|\W))[\*][\S][^\[\]]*[\S]?[\*](?=($|\W))" minimal=
"true" attribute=
"d_normal_bold" context=
"#stay" />
283 <RegExpr String=
"(?=(^|\W))[/][\S][^\[\]]*[\S]?[/](?=($|\W))" minimal=
"true" attribute=
"d_normal_italic" context=
"#stay" />
284 <RegExpr String=
"(?=(^|\W))[_][\S][^\[\]]*[\S]?[_](?=($|\W))" minimal=
"true" attribute=
"d_normal_underline" context=
"#stay" />
285 <RegExpr String=
"(?=(^|\W))[=][\S][^\[\]]*[\S]?[=](?=($|\W))" minimal=
"true" attribute=
"d_normal_teletype" context=
"#stay" />
288 <context name=
"c_normal_bold" attribute=
"d_normal_bold" lineEndContext=
"#stay">
289 <IncludeRules context=
"c_common_structures" />
290 <Detect2Chars char=
"[" char1=
"*" attribute=
"d_structure" context=
"c_normal_bold" />
291 <Detect2Chars char=
"[" char1=
"'" attribute=
"d_structure" context=
"c_normal_bold_italic" />
292 <Detect2Chars char=
"[" char1=
"_" attribute=
"d_structure" context=
"c_normal_bold_underline" />
293 <RegExpr String=
"(?=(^|\W))[/][\S][^\[\]]*[\S]?[/](?=($|\W))" minimal=
"true" attribute=
"d_normal_bold_italic" context=
"#stay" />
294 <RegExpr String=
"(?=(^|\W))[_][\S][^\[\]]*[\S]?[_](?=($|\W))" minimal=
"true" attribute=
"d_normal_bold_underline" context=
"#stay" />
295 <IncludeRules context=
"c_simple_text_block_finder" />
296 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
299 <context name=
"c_normal_italic" attribute=
"d_normal_italic" lineEndContext=
"#stay">
300 <IncludeRules context=
"c_common_structures" />
301 <Detect2Chars char=
"[" char1=
"*" attribute=
"d_structure" context=
"c_normal_bold_italic" />
302 <Detect2Chars char=
"[" char1=
"_" attribute=
"d_structure" context=
"c_normal_italic_underline" />
303 <RegExpr String=
"(?=(^|\W))[\*][\S][^\[\]]*[\S]?[\*](?=($|\W))" minimal=
"true" attribute=
"d_normal_bold_italic" context=
"#stay" />
304 <RegExpr String=
"(?=(^|\W))[_][\S][^\[\]]*[\S]?[_](?=($|\W))" minimal=
"true" attribute=
"d_normal_italic_underline" context=
"#stay" />
305 <IncludeRules context=
"c_simple_text_block_finder" />
306 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
309 <context name=
"c_normal_underline" attribute=
"d_normal_underline" lineEndContext=
"#stay">
310 <IncludeRules context=
"c_common_structures" />
311 <Detect2Chars char=
"[" char1=
"*" attribute=
"d_structure" context=
"c_normal_bold_underline" />
312 <Detect2Chars char=
"[" char1=
"'" attribute=
"d_structure" context=
"c_normal_italic_underline" />
313 <Detect2Chars char=
"[" char1=
"_" attribute=
"d_structure" context=
"c_normal_underline" />
314 <RegExpr String=
"(?=(^|\W))[\*][\S][^\[\]]*[\S]?[\*](?=($|\W))" minimal=
"true" attribute=
"d_normal_bold_underline" context=
"#stay" />
315 <RegExpr String=
"(?=(^|\W))[/][\S][^\[\]]*[\S]?[/](?=($|\W))" minimal=
"true" attribute=
"d_normal_italic_underline" context=
"#stay" />
316 <IncludeRules context=
"c_simple_text_block_finder" />
317 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
320 <context name=
"c_normal_bold_italic" attribute=
"d_normal_bold_italic" lineEndContext=
"#stay">
321 <IncludeRules context=
"c_common_structures" />
322 <Detect2Chars char=
"[" char1=
"*" attribute=
"d_structure" context=
"c_normal_bold_italic" />
323 <Detect2Chars char=
"[" char1=
"'" attribute=
"d_structure" context=
"c_normal_bold_italic" />
324 <Detect2Chars char=
"[" char1=
"_" attribute=
"d_structure" context=
"c_normal_bold_italic_underline" />
325 <IncludeRules context=
"c_simple_text_block_finder" />
326 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
329 <context name=
"c_normal_bold_underline" attribute=
"d_normal_bold_underline" lineEndContext=
"#stay">
330 <IncludeRules context=
"c_common_structures" />
331 <Detect2Chars char=
"[" char1=
"*" attribute=
"d_structure" context=
"c_normal_bold_underline" />
332 <Detect2Chars char=
"[" char1=
"'" attribute=
"d_structure" context=
"c_normal_bold_italic_underline" />
333 <Detect2Chars char=
"[" char1=
"_" attribute=
"d_structure" context=
"c_normal_bold_underline" />
334 <IncludeRules context=
"c_simple_text_block_finder" />
335 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
338 <context name=
"c_normal_italic_underline" attribute=
"d_normal_italic_underline" lineEndContext=
"#stay">
339 <IncludeRules context=
"c_common_structures" />
340 <Detect2Chars char=
"[" char1=
"*" attribute=
"d_structure" context=
"c_normal_bold_italic_underline" />
341 <Detect2Chars char=
"[" char1=
"'" attribute=
"d_structure" context=
"c_normal_italic_underline" />
342 <Detect2Chars char=
"[" char1=
"_" attribute=
"d_structure" context=
"c_normal_italic_underline" />
343 <IncludeRules context=
"c_simple_text_block_finder" />
344 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
347 <context name=
"c_normal_bold_italic_underline" attribute=
"d_normal_bold_italic_underline" lineEndContext=
"#stay">
348 <IncludeRules context=
"c_common_structures" />
349 <Detect2Chars char=
"[" char1=
"*" attribute=
"d_structure" context=
"c_normal_bold_italic_underline" />
350 <Detect2Chars char=
"[" char1=
"'" attribute=
"d_structure" context=
"c_normal_bold_italic_underline" />
351 <Detect2Chars char=
"[" char1=
"_" attribute=
"d_structure" context=
"c_normal_bold_italic_underline" />
352 <IncludeRules context=
"c_simple_text_block_finder" />
353 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
356 <context name=
"c_normal_strikeout" attribute=
"d_normal_strikeout" lineEndContext=
"#stay">
357 <IncludeRules context=
"c_common_structures" />
358 <IncludeRules context=
"c_simple_text_block_finder" />
359 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
362 <context name=
"c_normal_teletype" attribute=
"d_normal_teletype" lineEndContext=
"#stay">
363 <IncludeRules context=
"c_common_structures" />
364 <IncludeRules context=
"c_simple_text_block_finder" />
365 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
368 <context name=
"c_normal_replaceable" attribute=
"d_normal_ replaceable" lineEndContext=
"#stay">
369 <IncludeRules context=
"c_common_structures" />
370 <IncludeRules context=
"c_simple_text_block_finder" />
371 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
376 <context name=
"c_link" attribute=
"d_anchor" lineEndContext=
"c_indirect_normal_block">
377 <RegExpr String=
"\s" minimal=
"true" attribute=
"d_structure" context=
"c_indirect_normal_block" />
380 <context name=
"c_web_link" attribute=
"d_path" lineEndContext=
"c_indirect_normal_block">
381 <RegExpr String=
"\s" minimal=
"true" attribute=
"d_structure" context=
"c_indirect_normal_block" />
382 <IncludeRules context=
"c_simple_text_block_finder" />
383 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
386 <context name=
"c_link_finder" attribute=
"d_normal" lineEndContext=
"#stay">
387 <RegExpr String=
"\[link\b[\s]*" attribute=
"d_structure" context=
"c_link" />
388 <Detect2Chars char=
"[" char1=
"@" attribute=
"d_structure" context=
"c_web_link" />
391 <context name=
"c_cpp_link_finder" attribute=
"d_normal" lineEndContext=
"#stay">
392 <RegExpr String=
"\[(funcref|classref|memberref|enumref|headerref)\b[\s]*" attribute=
"d_structure" context=
"c_link" />
397 <context name=
"c_anchor" attribute=
"d_anchor" lineEndContext=
"#stay">
398 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
401 <context name=
"c_anchor_finder" attribute=
"d_normal" lineEndContext=
"#stay">
402 <Detect2Chars char=
"[" char1=
"#" attribute=
"d_structure" context=
"c_anchor" />
407 <context name=
"c_image" attribute=
"d_path" lineEndContext=
"#stay">
408 <IncludeRules context=
"c_simple_text_block_finder" />
409 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
412 <context name=
"c_image_finder" attribute=
"d_normal" lineEndContext=
"#stay">
413 <Detect2Chars char=
"[" char1=
"$" attribute=
"d_structure" context=
"c_image" />
418 <context name=
"c_comment" attribute=
"d_comment" lineEndContext=
"#stay">
420 <!-- For performance the [endsect] resets the engine -->
421 <!-- Is this the best approach here? -->
422 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" endRegion=
"r_section"/>
424 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_comment" />
425 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" endRegion=
"r_comment" />
428 <context name=
"c_comment_finder" >
429 <Detect2Chars char=
"[" char1=
"/" attribute=
"d_structure" context=
"c_comment" beginRegion=
"r_comment" />
432 <!-- Scape sequences -->
434 <context name=
"c_scape_sequence_finder" attribute=
"d_normal" lineEndContext=
"#stay">
435 <DetectChar char=
"\" attribute=
"d_structure" context=
"c_scape_character" />
438 <context name=
"c_scape_character" attribute=
"d_normal" lineEndContext=
"#stay">
439 <RegExpr String=
"." minimal=
"true" attribute=
"d_normal" context=
"#pop" />
444 <context name=
"c_normal_text_block" attribute=
"d_normal" lineEndContext=
"#stay">
445 <IncludeRules context=
"c_strict_normal" />
446 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" endRegion=
"r_text_block"/>
449 <context name=
"c_text_block_finder" attribute=
"d_normal" lineEndContext=
"#stay">
450 <Detect2Chars char=
"[" char1=
":" attribute=
"d_structure" context=
"c_normal_text_block" beginRegion=
"r_text_block" />
451 <RegExpr String=
"[\[][\x0022]" minimal=
"true" attribute=
"d_structure" context=
"c_normal_text_block" beginRegion=
"r_text_block"/>
452 <RegExpr String=
"\[(pre|footnote|blurb|warning|note|tip|important|pre|caution)(\b|\W|$)" minimal=
"true" attribute=
"d_structure" context=
"c_normal_text_block" beginRegion=
"r_text_block"/>
456 <context name=
"c_simple_text_block" attribute=
"d_anchor" lineEndContext=
"#stay">
457 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
458 <RegExpr String=
"\s" minimal=
"true" attribute=
"d_structure" context=
"c_indirect_normal_block" />
461 <context name=
"c_simple_text_block_finder" attribute=
"d_normal" lineEndContext=
"#stay">
462 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_simple_text_block" />
467 <context name=
"c_included_path" attribute=
"d_path" lineEndContext=
"#stay">
468 <IncludeRules context=
"c_simple_text_block_finder" />
469 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop#pop" />
472 <context name=
"c_include" attribute=
"d_anchor" lineEndContext=
"#stay">
473 <RegExpr String=
"\s" minimal=
"true" attribute=
"d_structure" context=
"c_included_path" />
476 <context name=
"c_includes_finder" attribute=
"d_normal" lineEndContext=
"#stay">
477 <StringDetect String=
"[include" attribute=
"d_structure" context=
"c_include" />
478 <StringDetect String=
"[xinclude" attribute=
"d_structure" context=
"c_include" />
483 <context name=
"c_import_path" attribute=
"d_path" lineEndContext=
"#stay">
484 <IncludeRules context=
"c_simple_text_block_finder" />
485 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
488 <context name=
"c_import_finder" attribute=
"d_normal" lineEndContext=
"#stay">
489 <StringDetect String=
"[import" attribute=
"d_structure" context=
"c_import_path" />
492 <!-- Document Type logic -->
494 <context name=
"c_quickbook_type_finder" attribute=
"d_normal" lineEndContext=
"#stay">
495 <RegExpr String=
"\[(book|article|library|chapter|part|appendix|preface|qandadiv|qandaset|reference|set)\b" minimal=
"true" attribute=
"d_structure" context=
"c_documment_definition" beginRegion=
"r_documment_definition" />
498 <context name=
"c_documment_definition" attribute=
"d_normal_bold" lineEndContext=
"#stay">
499 <IncludeRules context=
"c_quickbook_attribute_finder" />
500 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" endRegion=
"r_documment_definition"/>
503 <context name=
"c_quickbook_attribute_finder" attribute=
"d_normal" lineEndContext=
"#stay">
504 <RegExpr String=
"\[(quickbook|version|id|dirname|copyright|purpose|category|authors|license|source\-mode)\b" minimal=
"true" attribute=
"d_structure" context=
"c_normal_block" />
510 [table A Simple Table
511 [[Heading 1] [Heading 2] [Heading 3]]
512 [[R0-C0] [R0-C1] [R0-C2]]
513 [[R1-C0] [R1-C1] [R1-C2]]
514 [[R2-C0] [R2-C1] [R2-C2]]] -->
516 <context name=
"c_table" attribute=
"d_normal_bold" lineEndContext=
"#stay">
517 <IncludeRules context=
"c_strict_normal" />
518 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_table_title_row" />
521 <context name=
"c_table_title_row" attribute=
"d_nop" lineEndContext=
"#stay">
523 <!-- For performance the [endsect] resets the engine -->
524 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" endRegion=
"r_section"/>
526 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_table_title_cell" />
527 <DetectChar char=
"]" attribute=
"d_structure" context=
"c_table_body" />
530 <context name=
"c_table_title_cell" attribute=
"d_table_title_cell" lineEndContext=
"#stay">
531 <IncludeRules context=
"c_strict_normal" />
533 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_table_cell" />
534 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
537 <context name=
"c_table_body" attribute=
"d_nop" lineEndContext=
"#stay">
539 <!-- For performance the [endsect] resets the engine -->
540 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" endRegion=
"r_section"/>
542 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_table_row" />
543 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop#pop#pop" endRegion=
"r_table"/>
546 <context name=
"c_table_row" attribute=
"d_nop" lineEndContext=
"#stay">
548 <!-- For performance the [endsect] resets the engine -->
549 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" endRegion=
"r_section"/>
551 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_table_cell" />
553 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
556 <context name=
"c_table_cell" attribute=
"d_normal" lineEndContext=
"#stay">
557 <IncludeRules context=
"c_normal" />
558 <RegExpr String=
"Row[\s]+[\d]+[\s]*,[\s]*Col[\s]+[\d]+[\s]*:" minimal=
"true" attribute=
"d_structure" context=
"#stay" />
559 <!--DetectChar char="[" attribute="d_structure" context="c_table_cell" /-->
560 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" />
563 <context name=
"c_table_finder" attribute=
"d_normal" lineEndContext=
"#stay">
564 <RegExpr String=
"\[table\b" minimal=
"true" attribute=
"d_structure" context=
"c_table" beginRegion=
"r_table" />
569 [variablelist A Variable List
570 [[term 1] [The definition of term 1]]
571 [[term 2] [The definition of term 2]]
572 [[term 3] [The definition of term 3]]
576 <context name=
"c_variable_list" attribute=
"d_normal_bold" lineEndContext=
"#stay">
577 <IncludeRules context=
"c_strict_normal" />
578 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_var_list_body_1" />
579 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop" endRegion=
"r_variable_list"/>
582 <context name=
"c_var_list_body_1" attribute=
"d_nop" lineEndContext=
"#stay">
584 <!-- For performance the [endsect] resets the engine -->
585 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" endRegion=
"r_section"/>
587 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_var_list_element_name" />
590 <context name=
"c_var_list_body_2" attribute=
"d_nop" lineEndContext=
"#stay">
592 <!-- For performance the [endsect] resets the engine -->
593 <StringDetect String=
"[endsect]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" endRegion=
"r_section"/>
595 <DetectChar char=
"[" attribute=
"d_structure" context=
"c_var_list_element_info" />
598 <context name=
"c_var_list_body_3" attribute=
"d_nop" lineEndContext=
"#stay">
599 <DetectChar char=
"]" attribute=
"d_structure" context=
"#pop#pop#pop#pop#pop" />
602 <context name=
"c_var_list_element_name" attribute=
"d_list_element_name" lineEndContext=
"#stay">
603 <IncludeRules context=
"c_normal" />
604 <DetectChar char=
"]" attribute=
"d_structure" context=
"c_var_list_body_2" />
607 <context name=
"c_var_list_element_info" attribute=
"d_normal" lineEndContext=
"#stay">
608 <IncludeRules context=
"c_normal" />
609 <DetectChar char=
"]" attribute=
"d_structure" context=
"c_var_list_body_3" />
612 <context name=
"c_variable_list_finder" attribute=
"d_normal" lineEndContext=
"#stay">
613 <RegExpr String=
"\[variablelist\b" minimal=
"true" attribute=
"d_structure" context=
"c_variable_list" beginRegion=
"r_variable_list" />
621 <context name=
"c_boost::hs call finder" attribute=
"d_boost::hs">
622 <StringDetect String=
"[/boost::hs::turn_off()]" attribute=
"d_boost::hs" context=
"c_scape_highlighting" />
623 <StringDetect String=
"[/boost::hs::turn_on()]" attribute=
"d_boost::hs" context=
"#stay" />
624 <StringDetect String=
"[/boost::hs::begin_region()]" attribute=
"d_boost::hs" context=
"#stay" beginRegion=
"r_boost::hs::region" />
625 <StringDetect String=
"[/boost::hs::end_region()]" attribute=
"d_boost::hs" context=
"#stay" endRegion=
"r_boost::hs::region" />
628 <context name=
"c_scape_highlighting" attribute=
"d_normal" lineEndContext=
"#stay">
629 <StringDetect String=
"[/boost::hs::turn_on()]" attribute=
"d_boost::hs" context=
"#pop" />
630 <StringDetect String=
"[/boost::hs::turn_off()]" attribute=
"d_boost::hs" context=
"#stay" />
636 This section defines the colors and format of each type of string parsed
637 Try to use defaults so the user can change it as he wished
642 <itemData name=
"d_normal" defStyleNum=
"dsNormal" />
644 <itemData name=
"d_normal_bold" bold=
"true" defStyleNum=
"dsNormal" />
646 <itemData name=
"d_normal_italic" italic=
"true" defStyleNum=
"dsNormal" />
648 <itemData name=
"d_normal_underline" underline=
"true" defStyleNum=
"dsNormal" />
650 <itemData name=
"d_normal_bold_italic" bold=
"true" italic=
"true" defStyleNum=
"dsNormal" />
651 <itemData name=
"d_normal_bold_underline" bold=
"true" underline=
"true" defStyleNum=
"dsNormal" />
653 <itemData name=
"d_normal_italic_underline" italic=
"true" underline=
"true" defStyleNum=
"dsNormal" />
655 <itemData name=
"d_normal_bold_italic_underline" bold=
"true" italic=
"true" underline=
"true" defStyleNum=
"dsNormal" />
657 <itemData name=
"d_normal_strikeout" strikeout=
"true" defStyleNum=
"dsNormal" />
659 <itemData name=
"d_normal_teletype" italic=
"true" defStyleNum=
"dsNormal" />
661 <itemData name=
"d_normal_replaceable" italic=
"true" defStyleNum=
"dsNormal" />
663 <itemData name=
"d_anchor" defStyleNum=
"dsDataType" />
665 <itemData name=
"d_macro" defStyleNum=
"dsDataType" />
667 <itemData name=
"d_path" defStyleNum=
"dsOthers" />
669 <itemData name=
"d_structure" color=
"#5555FF" defStyleNum=
"dsNormal" />
671 <itemData name=
"d_comment" defStyleNum=
"dsComment" />
673 <itemData name=
"d_table_title_cell" color=
"#000000" bold=
"true" backgroundColor=
"#E6E6E6" defStyleNum=
"dsNormal" />
675 <itemData name=
"d_list_element_name" bold=
"true" defStyleNum=
"dsNormal" />
677 <itemData name=
"d_nop" defStyleNum=
"dsComment" />
679 <itemData name=
"d_boost::hs" defStyleNum=
"dsFunction" />
683 <!-- Last Part, Give acces to some tools, for example comment/uncomment in edit menu -->
691 <comment name=
"multiLine" start=
"[/" end=
"]" region=
"r_comment" />
702 =================================================
704 Boost.Quickbook is a poweful C++ documentation tool.
705 It is developped by Joel de Guzman and Eric Niebler, I am very thankful they give
706 this tool a Boost License and allowed C++ developpers to document their work
707 in a easy and fun way.
708 Check www.boost.org to get the tool and meet one of the most impressive c++
709 library communities in the world.
712 =================================================
714 [ 0.9.4 ] Add [heading ]
717 [ 0.9.3 ] "[endsect]" reset the engine to avoid lags in long files
718 [ 0.9.2 ] Change file name ( quickbook_sintaxis.xml -> boost::hs::quickbook.xml )
719 Change section ( Docs -> boost::hs ),
720 Change name ( Boost.Quickbook -> quickbook )
721 This changes aims to incorporate a boost kate sintaxis framework in KDE.
722 [ 0.9.1 ] Fixed simple formating ( for example: "*this] [that*" is not longer bolded ).
723 [ 0.9.0 ] Initial beta, sended to Joel de Guzman and Eric Niebler.
726 =================================================
728 Feedback will be appreciated.
729 They are very small and it is very unlikely to encounter one.
731 * List items * and # are not fully implemented.
732 * The line ` \\ C++ comment ` is not working because of Kate C++
733 highlight definitions.
734 * Python code is not yet supported.