summaryrefslogtreecommitdiffstats
path: root/source-builder/sb/asciidoc/filters/source/source-highlight-filter.conf
blob: efe4dbe35f684bf0c76a220b0127681625b53158 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
#
# AsciiDoc source code highlight filter configuration file.
#
# Documented in source-hightlight-filter.txt in AsciiDoc distribution
# ./examples/website/ directory.
#
# HTML outputs require GNU source-highlight (xhtml11, html4 outputs)
# http://www.gnu.org/software/src-highlite/source-highlight.html
#
# or Pygments (xhtml11 outputs):
# http://pygments.org/
#
# GNU source-hightlight is default, define the 'pygments' attribute to  use
# Pygments.
#

########################
# Source block templates
########################
[source-highlight-block]
template::[listingblock]

ifdef::basebackend-html[]
[source-highlight-block]
<a name="{id}"></a>
<p><b>{title}</b></p>
<table{role? class="{role}"} border="0" bgcolor="#e8e8e8" width="100%" cellpadding="10"><tr><td>
{source-highlighter$highlight:}<pre><code>
|
{source-highlighter$highlight:}</code></pre>
</td></tr></table>
endif::basebackend-html[]

ifdef::basebackend-xhtml11,basebackend-html5[]
[source-highlight-block]
<div class="listingblock{role? {role}}">
<a id="{id}"></a>
<div class="title">{caption=}{title}</div>
<div class="content">
{source-highlighter$highlight:}<pre><code>
|
{source-highlighter$highlight:}</code></pre>
</div></div>
endif::basebackend-xhtml11,basebackend-html5[]

# Use DocBook programlisting element.
ifdef::basebackend-docbook[]
[source-highlight-block]
<formalpara{id? id="{id}"}{role? role="{role}"}{reftext? xreflabel="{reftext}"}><title>{title}</title><para>
{title#}<programlisting language="{language}" linenumbering="{src_numbered=unnumbered}"{args? {args}}>
{title%}<programlisting language="{language}"{role? role="{role}"} linenumbering="{src_numbered=unnumbered}"{args? {args}}>
|
</programlisting>
{title#}</para></formalpara>
endif::basebackend-docbook[]

# Source styles template.
ifdef::basebackend-html[]
[source-filter-style]
ifeval::["{source-highlighter}"=="source-highlight"]
source-style=template="source-highlight-block",presubs=(),postsubs=("callouts",),posattrs=("style","language","src_numbered","src_tab"),filter="source-highlight -f xhtml -s {language} {src_numbered?--line-number=' '} {src_tab?--tab={src_tab}} {args=}"
endif::[]
ifeval::["{source-highlighter}"=="highlight"]
source-style=template="source-highlight-block",presubs=(),postsubs=("callouts",),posattrs=("style","language","src_numbered","src_tab"),filter="highlight --no-doc --inline-css --out-format=xhtml --syntax={language@python:py:{language}} {src_numbered?--line-number} {src_tab?--tab={src_tab}} --encoding={encoding} {args=}"
endif::[]
ifeval::["{source-highlighter}"=="pygments"]
source-style=template="source-highlight-block",presubs=(),postsubs=("callouts",),posattrs=("style","language","src_numbered"),filter="pygmentize -f html -l {language} {src_numbered?-O linenos=table} {encoding?-O encoding={encoding}} {args=}"
endif::[]
# DEPRECATED: 'pygments' attribute.
ifdef::pygments[]
source-style=template="source-highlight-block",presubs=(),postsubs=("callouts",),posattrs=("style","language","src_numbered"),filter="pygmentize -f html -l {language} {src_numbered?-O linenos=table} {encoding?-O encoding={encoding}} {args=}"
endif::[]
endif::basebackend-html[]

ifdef::basebackend-html4[]
[source-filter-style]
# html4 does not use pygments.
ifeval::["{source-highlighter}"=="source-highlight"]
source-style=template="source-highlight-block",presubs=(),postsubs=("callouts",),posattrs=("style","language","src_numbered","src_tab"),filter="source-highlight -f html -s {language} {src_numbered?--line-number=' '} {src_tab?--tab={src_tab}} {args=}"
endif::[]
ifeval::["{source-highlighter}"=="highlight"]
source-style=template="source-highlight-block",presubs=(),postsubs=("callouts",),posattrs=("style","language","src_numbered","src_tab"),filter="highlight --no-doc --inline-css --out-format=html --syntax={language@python:py:{language}} {src_numbered?--line-number} {src_tab?--tab={src_tab}} {args=}"
endif::[]
endif::basebackend-html4[]

ifdef::basebackend-docbook[]
[source-filter-style]
source-style=template="source-highlight-block",presubs=(),postsubs=("specialcharacters","callouts"),posattrs=("style","language","src_numbered","src_tab")
endif::basebackend-docbook[]

#########################
# Source paragraph styles
#########################
[paradef-default]
template::[source-filter-style]

[paradef-literal]
template::[source-filter-style]

#########################
# Source block styles
#########################
[blockdef-open]
template::[source-filter-style]

[blockdef-listing]
template::[source-filter-style]


#
# DEPRECATED: Pre 8.2.7 filter definition.
#

#########################
# Source block definition
#########################
[blockdef-source-highlight]
# The old ^ delimiter is for backward compatibility, may be removed from
# in future versions.
delimiter=(^source~{4,}$)|(^\^{4,}$)
template=source-highlight-block
presubs=none
posattrs=language,src_numbered,src_tab

ifndef::basebackend-docbook[]
postsubs=callouts
# GNU Source Highlight filter.
filter=source-highlight -f {basebackend-xhtml11?xhtml}{basebackend-html4?html} -s {language} {src_numbered?--line-number} {src_tab?--tab={src_tab}}
endif::basebackend-docbook[]

ifdef::basebackend-docbook[]
postsubs=specialcharacters,callouts
# In the case of DocBook just pass the listing through and let the DocBook
# toolchain handle it.
filter=
endif::basebackend-docbook[]

#
# DEPRECATED: End
#