File: Reference.pod

package info (click to toggle)
libhtml-template-compiled-perl 1.003-3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 772 kB
  • sloc: perl: 4,759; makefile: 5
file content (181 lines) | stat: -rw-r--r-- 4,151 bytes parent folder | download | duplicates (3)
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
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
=pod

=head1 NAME

HTML::Template::Compiled::Reference - A quick reference for HTML::Template::Compiled syntax

=head1 TAGSTYLES

    <TMPL_IF var><TMPL_VAR foo></tmpl_if var>
    <!-- TMPL_IF var --><!-- TMPL_VAR foo --><!-- /tmpl_if var -->
    <%if var %><%= foo %><%/if var %>

Optional tagstyle 'tt':

    [%if var %][%= foo %][%/if var %]

=head1 ACCESSING VARIABLES

    <%= _.foo %>
    outputs foo in the cuurent position of the stash and is the same as
    <%= foo %>

    <%= .config.url %>
    goes to root of parameter stash; like $params->{config}->{url}

    <%= ..foo %>
    goes one level up in stash

    <%= list[3].keyname.method %>
    acts like: $stash->[3]->{keyname}->method

=head1 TAGS

=over 4

=item VAR

    <%var foo%> or <%= foo%>

=item IF, IF_DEFINED, UNLESS, ELSIF, ELSE

conditions like in Perl

=item LOOP, WHILE, EACH

for-loop and while-loop like in Perl.

    <%loop cds%><%= __counter__%>. Title: <%= _.title%><%/loop cds%>
    <%loop cds join=", " %><%= _.title%><%/loop cds%>
    <%while resultset.next%><%= __counter__%>. <%= _.foo %><%/while %>
    <%each hashref%><%= __key__ %>=<%= __value__ %><%/each %> (sorted alphanumeric)
    <%each hashref sort=alpha %><%= __key__ %>=<%= __value__ %><%/each %> (sorted alphanumeric)
    <%each hashref sort=num %><%= __key__ %>=<%= __value__ %><%/each %> (sorted numeric)
    <%each hashref sort=0 %><%= __key__ %>=<%= __value__ %><%/each %> (not sorted)


=item WITH

    <%with cds[0].artist.fanclub%><%= _.address%><%= _.homepage%><%/with %>

=item INCLUDE, INCLUDE_VAR

    <%include template.htc%>
    <%include_var param_with_template_name%>

=item COMMENT, VERBATIM, NOPARSE

    <%comment explanation %>
    This will not appear in the rendered template.
    blah blah...
    <%/comment explanation %>

=item SWITCH, CASE

    <%switch .config.language%>
    <%case de%>Hallo
    <%case es%>Hola
    <%case en,default%>Hello
    <%/switch .config.language%>

=item PERL

See section Perl in L<HTML::Template::Compiled>

=back

=head1 ATTRIBUTES

Each attribute can be written as

    attribute=foo
    attribute="some thing"
    attribute='some "thing"'

=over 4

=item NAME

You can omit the C<'name='> here.

    <%if var%>var<%elsif name=var2%>var4<%/if%>

Can be used in all tags.

=item ESCAPE

    <%= message escape=html %>
    <%= params escape=url %>
    <%= params escape=js %>
    <%= some_var escape=dump|html%>

Can be used in C<VAR>-tags.

=item DEFAULT

    <%= this.var.might_be_undef default="my fault" %>

Can be used in C<VAR>-tags.

=item ALIAS

    <%loop cds alias="cd" %><%= $cd.title %><%/loop cds %>

Can be used in C<LOOP> and C<WHILE>. Works like L<"SET_VAR"> and is short for

    <%loop cds %><%set_var cd value=_ %><%= cd.title %><%/loop cds %>

Useful for nested loops.

=item SET_VAR

    <%set_var myvar value=.another.var %>
    <%set_var myvar2 expr="60 * 60 * 24" %>

This creates a variable similar to a package var with local() in perl.

=item USE_VARS

    <!-- recognize myvar and myvar2 as variables not parameter stash -->
    <%use_vars myvar,myvar2 %>
    myvar: <%= myvar %>

=item JOIN

    <%loop cds join=", " %><%= _.title%><%/loop cds%>

can be used in C<LOOP>

=item BREAK

    <%loop cds break="3" %>
    <%= _.title%><%if __break__ %>\n</%if %>
    <%/loop cds%>

Sets C<__break__> to 1 every xth loop.
Can be used in C<LOOP>, C<WHILE> and C<EACH>

=back

=head1 OPTIONS

=over 4

=item (loop)_context_vars

    <%= __index__         %> the current loop index starting at 0
    <%= __counter__       %> the current loop index starting at 1
    <%= __first__         %> true if first iteration
    <%= __last__          %> true if last iteration
    <%= __odd__           %> true if __counter__ is odd
    <%= __inner__         %> true if not last or first iteration
    <%= __key__           %> the key of an EACH iteration
    <%= __value__         %> the value of an EACH iteration
    <%= __break__         %> see L<"BREAK"> above
    <%= __filename__      %> filename of current template (since 0.91_001)
    <%= __filenameshort__ %> short filename of current template (since 0.91_001)

=back

=cut