View | Details | Raw Unified | Return to bug 24068
Collapse All | Expand All

(-)a/Koha/Template/Plugin/I18N.pm (-2 / +47 lines)
Lines 30-40 Koha::Template::Plugin::I18N - Translate strings in templates Link Here
30
30
31
=head1 SYNOPSIS
31
=head1 SYNOPSIS
32
32
33
    [% PROCESS 'i18n.inc' %]
34
35
    . . .
36
37
    [% I18N.t("Hello!") %]
38
    [% I18N.tx("Hello {name}", { name = name }) %]
39
    [% I18N.tn("Hello friend", "Hello friends", count) %]
40
    [% I18N.tnx("Hello my {count} friend", "Hello my {count} friends", count, { count = count }) %]
41
    [% I18N.tp('verb', 'Item') # to order %]
42
    [% I18N.tnp('bibliographic material', "item", "items", count) %]
43
    [% I18N.tnpx('bibliographic material', "{count} item", "{count} items", count, { count = count }) %]
44
33
Do not use this plugin directly. Add the following directive
45
Do not use this plugin directly. Add the following directive
34
46
35
    [% PROCESS 'i18n.inc' %]
47
    [% PROCESS 'i18n.inc' %]
36
48
37
and use the macros defined here
49
and use the macros defined.
50
51
See: https://wiki.koha-community.org/wiki/Internationalization,_plural_forms,_context,_and_more_(RFC) 
52
for further context.
38
53
39
=head1 METHODS
54
=head1 METHODS
40
55
Lines 42-47 and use the macros defined here Link Here
42
57
43
    [% I18N.t("hello") %]
58
    [% I18N.t("hello") %]
44
59
60
Translate - The simplest type of translatable string where 
61
there are no variables and not pluralisations to consider.
62
45
=cut
63
=cut
46
64
47
sub t {
65
sub t {
Lines 53-58 sub t { Link Here
53
71
54
    [% I18N.tx("hello {name}", { name = name }) %]
72
    [% I18N.tx("hello {name}", { name = name }) %]
55
73
74
Translate with variable - A translatable string that 
75
includes a variable
76
56
=cut
77
=cut
57
78
58
sub tx {
79
sub tx {
Lines 64-69 sub tx { Link Here
64
85
65
    [% I18N.tn("item", "items", count) %]
86
    [% I18N.tn("item", "items", count) %]
66
87
88
Translate with plural - A translatable string that needs 
89
singular and plural forms
90
67
=cut
91
=cut
68
92
69
sub tn {
93
sub tn {
Lines 75-80 sub tn { Link Here
75
99
76
    [% I18N.tnx("{count} item", "{count} items", count, { count = count }) %]
100
    [% I18N.tnx("{count} item", "{count} items", count, { count = count }) %]
77
101
102
Translate with plural and variable - A translatable string
103
that needs singular and plural forms and includes a variable
104
78
=cut
105
=cut
79
106
80
sub tnx {
107
sub tnx {
Lines 97-102 sub txn { Link Here
97
124
98
    [% I18N.tp("context", "hello") %]
125
    [% I18N.tp("context", "hello") %]
99
126
127
Translate with context - A translatable string where a 
128
context hint would be helpful to translators.
129
130
An example would be where in english a single word may be
131
be used as both a verb and a noun. You may want to add a
132
note to distinguish this particular use case so translators
133
can understand the context correctly.
134
100
=cut
135
=cut
101
136
102
sub tp {
137
sub tp {
Lines 108-113 sub tp { Link Here
108
143
109
    [% I18N.tpx("context", "hello {name}", { name = name }) %]
144
    [% I18N.tpx("context", "hello {name}", { name = name }) %]
110
145
146
Translate with context and variable - A translatable string
147
that needs both a contextual hint and includes a variable.
148
111
=cut
149
=cut
112
150
113
sub tpx {
151
sub tpx {
Lines 119-124 sub tpx { Link Here
119
157
120
    [% I18N.tnp("context", "item", "items", count) %]
158
    [% I18N.tnp("context", "item", "items", count) %]
121
159
160
Translate with context and plural - A translatable string
161
that needs both a contextual hints and singular and plural
162
forms.
163
122
=cut
164
=cut
123
165
124
sub tnp {
166
sub tnp {
Lines 130-135 sub tnp { Link Here
130
172
131
    [% I18N.tnpx("context", "{count} item", "{count} items", count, { count = count }) %]
173
    [% I18N.tnpx("context", "{count} item", "{count} items", count, { count = count }) %]
132
174
175
Translate with context, plural and variables - A translatable
176
string that needs contextual hints, singular and plural forms
177
and also includes variables.
178
133
=cut
179
=cut
134
180
135
sub tnpx {
181
sub tnpx {
136
- 

Return to bug 24068