annotate docs/xsls/changes.xsls @ 9215:e79c7521aaf4

Free nginx: support for sections in CHANGES.
author Maxim Dounin <mdounin@mdounin.ru>
date Mon, 19 Feb 2024 03:13:18 +0300
parents 529f10f7757c
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
1 X:stylesheet {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
2
4028
76bc29f06168 CHANGES conversion from KOI8-R to UTF-8.
Igor Sysoev <igor@sysoev.ru>
parents: 4025
diff changeset
3 X:output method="text";
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
4
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
5 X:param lang="'en'";
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
6 X:param configuration="'../xml/change_log_conf.xml'";
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
7
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
8 X:var conf = "document($configuration)/configuration";
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
9 X:var start = "$conf/start";
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
10 X:var indent = "$conf/indent";
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
11 X:var max = "$conf/length";
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
12 X:var br = {&lt;br&gt;}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
13
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
14
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
15 X:template = "/" { !! "change_log"; }
9215
e79c7521aaf4 Free nginx: support for sections in CHANGES.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6914
diff changeset
16 X:template = "change_log" { !! "section"; }
e79c7521aaf4 Free nginx: support for sections in CHANGES.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6914
diff changeset
17 X:template = "section" { !! "changes"; }
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
18
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
19
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
20 X:template = "changes" {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
21 X:text {&#10;}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
22
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
23 !{substring(concat($conf/changes[@lang=$lang]/title,
9215
e79c7521aaf4 Free nginx: support for sections in CHANGES.
Maxim Dounin <mdounin@mdounin.ru>
parents: 6914
diff changeset
24 ../@title,
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
25 ' ', @ver,
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
26 ' '),
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
27 1, $conf/changes[@lang=$lang]/length)}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
28
6914
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
29 X:if "$lang='ru'" {
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
30 !{substring(@date, 9, 2)}
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
31 X:text {.}
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
32 !{substring(@date, 6, 2)}
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
33 X:text {.}
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
34 !{substring(@date, 1, 4)}
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
35 }
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
36
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
37 X:if "$lang='en'" {
6914
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
38 !{substring(@date, 9, 2)}
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
39 !{$conf/changes[@lang=$lang]/month[number(substring(current()/@date,
6914
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
40 6, 2))]}
529f10f7757c Docs: changes.xml dates converted to ISO 8601 format.
Maxim Dounin <mdounin@mdounin.ru>
parents: 4028
diff changeset
41 !{substring(@date, 1, 4)}
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
42 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
43
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
44 X:text {&#10;}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
45
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
46 !! "change";
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
47
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
48 X:text {&#10;}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
49 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
50
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
51
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
52 X:template = "change" {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
53 X:var prefix = "$conf/changes[@lang=$lang]/*[local-name(.)=current()/@type]"
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
54
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
55 X:var postfix = { X:if "$prefix" { X:text {: } } }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
56
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
57 !! "para[@lang=$lang]" (prefix = "concat($start, $prefix, $postfix)");
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
58 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
59
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
60
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
61 X:template para(prefix) = "para" {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
62 X:var text = { !!; }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
63
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
64 X:text {&#10;}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
65
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
66 !wrap(text = "normalize-space($text)",
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
67 prefix = { X:if "position() = 1" { !{$prefix} } else { !{$indent} } })
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
68 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
69
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
70
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
71 X:template wrap(text, prefix) {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
72 X:if "$text" {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
73 X:var offset = {
4022
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
74 X:choose {
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
75 X:when "starts-with($text, concat($br, ' '))" {
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
76 !{string-length($br) + 2}
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
77 }
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
78 X:when "starts-with($text, $br)" {
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
79 !{string-length($br) + 1}
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
80 }
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
81 X:otherwise {
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
82 1
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
83 }
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
84 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
85 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
86
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
87 X:var length = {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
88 !length(text = "substring($text, $offset)",
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
89 prefix = "string-length($prefix)",
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
90 length = "$max")
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
91 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
92
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
93 !{$prefix}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
94
4025
7b85e695600a Traling spaces removal in text CHANGES files.
Igor Sysoev <igor@sysoev.ru>
parents: 4022
diff changeset
95 !{normalize-space(translate(substring($text, $offset, $length),
7b85e695600a Traling spaces removal in text CHANGES files.
Igor Sysoev <igor@sysoev.ru>
parents: 4022
diff changeset
96 '&#xA0;', ' '))}
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
97
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
98 X:text {&#10;}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
99
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
100 !wrap(text = "substring($text, $length + $offset)", prefix = "$indent")
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
101 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
102 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
103
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
104
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
105 X:template length(text, prefix, length) {
4022
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
106 X:var break = "substring-before(substring($text, 1,
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
107 $length - $prefix + string-length($br)),
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
108 $br)"
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
109
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
110 X:choose {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
111 X:when "$break" { !{string-length($break)} }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
112
4022
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
113 X:when "$length = 0" { !{$max - $prefix} }
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
114
4022
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
115 X:when "string-length($text) + $prefix &lt;= $length" {
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
116 !{$length - $prefix}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
117 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
118
4022
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
119 X:when "substring($text, $length - $prefix + 1, 1) = ' '" {
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
120 !{$length - $prefix + 1}
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
121 }
10b3b7908efb - support <br/> in the middle of input
Ruslan Ermilov <ru@nginx.com>
parents: 450
diff changeset
122
450
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
123 X:otherwise {
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
124 !length(text = "$text", prefix = "$prefix", length = "$length - 1")
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
125 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
126 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
127 }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
128
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
129
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
130 X:template = "at" {@}
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
131 X:template = "br" { !{$br} }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
132 X:template = "nobr" { !{translate(., ' ', '&#xA0;')} }
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
133
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
134
551102312e19 nginx-0.1.0-RELEASE import
Igor Sysoev <igor@sysoev.ru>
parents:
diff changeset
135 }