blob: 004d7baa823f4555cc9207f4f80d3957a66a03fd [file] [log] [blame]
Akroncddd1642015-06-10 21:31:53 +02001# Based on Mojolicious::Plugin::Number::Commify
2my $THOUSAND_SEP_RE = qr/(
3 ^[-+]? # beginning of number.
4 \d+? # first digits before first comma
5 (?= # followed by, (but not included in the match) :
6 (?>(?:\d{3})+) # some positive multiple of three digits.
7 (?!\d) # an *exact* multiple, not x * 3 + 1 or whatever.
8 )| # or:
9 \G\d{3} # after the last group, get three digits
10 (?=\d) # but they have to have more digits after them.
11)/x;
12
13{
14 _ => sub { $_->locale },
15 de => {
16 numf => sub {
17 shift;
18 my %val = @_;
19 my $num = $val{number} or return 0;
20 $num =~ s/$THOUSAND_SEP_RE/$1\./g;
21 return $num;
22 },
23 about => 'Über KorAP',
24 login => 'Anmelden',
Akrone5ef4e02017-04-19 17:07:52 +020025 logout => 'Abmelden',
Akrone8235be2016-06-27 11:02:18 +020026 register => 'Registrieren',
27 pwdforgotten => 'Password vergessen?',
Akron4823ab52017-04-27 17:10:12 +020028 searchjob => '»<%== $q %>« <% if (param("collection-name")) { %>in »<%== param("collection-name") %>« <% } elsif (param("collection")) { %>im definierten Korpus <% } %>mit <%== loc("QL_" . $ql, "unbekannter Anfragesprache") %>',
Akron656c5d92015-11-13 21:17:03 +010029 searchtitle => 'KorAP: Finde <%== loc("searchjob") %>',
Akroncddd1642015-06-10 21:31:53 +020030 searchplaceholder => 'Finde ...',
31 go => 'Los!',
32 in => 'in',
33 by => 'von',
Akron189b3592016-01-04 20:56:46 +010034 pwd => 'Passwort',
35 email => 'Email',
Akron2670f5b2017-05-31 17:54:07 +020036 userormail => 'Benutzername oder Email',
Akroncddd1642015-06-10 21:31:53 +020037 with => 'mit',
38 glimpse => {
Akroncddd1642015-06-10 21:31:53 +020039 desc => 'Zeige nur die ersten Treffer in beliebiger Reihenfolge'
40 },
41 faq => 'Häufige Fragen',
42 tutorial => 'Einführung',
43 pubOn => 'veröffentlicht am',
44 matchCount => 'Treffer',
Akron656c5d92015-11-13 21:17:03 +010045 noMatches => 'Es wurden keine Treffer für <%== loc("searchjob") %> gefunden.',
Akroncddd1642015-06-10 21:31:53 +020046 notFound => '404 - Seite nicht gefunden',
47 jsFile => 'kalamar-<%= $Kalamar::VERSION %>-de.js',
48 underConstruction => 'In Vorbereitung!',
Akron2670f5b2017-05-31 17:54:07 +020049 loginExplanation => 'Anmeldung mit einem registrierten Cosmas-II-Konto',
Akroncddd1642015-06-10 21:31:53 +020050 korap => {
51 -short => 'KorAP',
52 desc => 'KorAP - Korpusanalyseplattform der nächsten Generation',
53 overview => 'KorAP - Übersicht',
54 },
55 template => {
56 intro => 'de/intro'
Akrone5ef4e02017-04-19 17:07:52 +020057 },
58 Auth => {
59 loginSuccess => 'Anmeldung erfolgreich',
60 loginFail => 'Anmeldung fehlgeschlagen',
Akronbc213c02017-04-20 16:45:55 +020061 logoutSuccess => 'Abmeldung erfolgreich',
62 logoutFail => 'Abmeldung fehlgeschlagen'
Akronccd71a42017-06-30 18:09:19 +020063 },
64 Template => {
65 doc => {
66 ql => {
67 'poliqarp-plus' => 'de/doc/ql/poliqarp-plus'
Akron48567812017-09-01 16:49:04 +020068 },
69 api => {
70 'koralquery' => 'de/doc/api/koralquery'
71 },
72 data => {
73 'annotation' => 'de/doc/data/annotation'
74 },
75 korap => {
76 'kalamar' => 'de/doc/korap/kalamar',
77 'karang' => 'de/doc/korap/karang',
78 'koral' => 'de/doc/korap/koral',
79 'krill' => 'de/doc/korap/krill',
80 'kustvakt' => 'de/doc/korap/kustvakt'
Akronccd71a42017-06-30 18:09:19 +020081 }
82 }
Akron0dc10902017-09-01 18:00:16 +020083 },
84 Nav => {
85 'ql' => 'Anfragesprachen',
86 '#segments' => 'Einfache Segmente',
87 '#complex' => 'Komplexe Segmente',
88 '#spans' => 'Span Segmente',
89 '#paradigmatic-operators' => 'Paradigmatische Operatoren',
90 '#syntagmatic-operators' => 'Syntagmatische Operatoren',
91 '#class-operators' => 'Klassen Operatoren',
92 'regexp' => 'Reguläre Ausdrücke',
93 'data' => 'Daten',
94 'corpus' => 'Korpora',
95 'annotation' => 'Annotationen',
96 '#default-foundries' => 'Standard Foundries',
97 'faq' => 'Häufig gestellte Fragen'
Akroncddd1642015-06-10 21:31:53 +020098 }
99 },
100 -en => {
Akron43a73092016-02-11 21:52:27 +0100101 jsFile => 'kalamar-<%= $Kalamar::VERSION %>-en.js',
Akroncddd1642015-06-10 21:31:53 +0200102 numf => sub {
103 shift;
104 my %val = @_;
105 my $num = $val{number} or return 0;
106 $num =~ s/$THOUSAND_SEP_RE/$1\,/g;
107 return $num;
108 },
109 about => 'About KorAP',
110 login => 'Login',
Akrona8f56b22017-09-06 16:01:28 +0200111 logout => 'Logout',
Akrone8235be2016-06-27 11:02:18 +0200112 register => 'Register',
113 pwdforgotten => 'Password forgotten?',
Akroncddd1642015-06-10 21:31:53 +0200114 go => 'Go!',
Akron4823ab52017-04-27 17:10:12 +0200115 searchjob => '»<%== $q %>« <% if (param("collection-name")) { %>in »<%== param("collection-name") %>« <% } elsif (param("collection")) { %>in the defined corpus <% } %>with <%== loc("QL_". $ql, "unknown query language") %>',
Akron656c5d92015-11-13 21:17:03 +0100116 searchtitle => 'KorAP: Find <%== loc("searchjob") %>',
Akroncddd1642015-06-10 21:31:53 +0200117 searchplaceholder => 'Find ...',
118 in => 'in',
119 by => 'by',
Akron189b3592016-01-04 20:56:46 +0100120 pwd => 'Password',
121 email => 'Email',
Akron2670f5b2017-05-31 17:54:07 +0200122 userormail => 'Username or Email',
Akroncddd1642015-06-10 21:31:53 +0200123 with => 'with',
124 pubOn => 'published on',
Akroncf29b222016-10-12 16:53:32 +0200125 matchCount => '<%= quant($found, "match", "matches") %>',
Akron656c5d92015-11-13 21:17:03 +0100126 noMatches => 'There were no matches found for <%== loc("searchjob") %>.',
Akroncddd1642015-06-10 21:31:53 +0200127 notFound => '404 - Page not found',
128 glimpse => {
Akrona18ee1a2017-07-06 16:40:26 +0200129 -short => 'Glimpse',
Akroncddd1642015-06-10 21:31:53 +0200130 desc => 'Just show the first matches in arbitrary order'
131 },
132 faq => 'F.A.Q.',
133 underConstruction => 'Under Construction!',
Akron2670f5b2017-05-31 17:54:07 +0200134 loginExplanation => 'Login with a registered Cosmas-II account',
Akroncddd1642015-06-10 21:31:53 +0200135 tutorial => 'Tutorial',
136 korap => {
137 -short => 'KorAP',
138 desc => 'KorAP - Corpus Analysis Platform',
139 overview => 'KorAP - Overview'
Akron7716f012015-07-01 20:38:32 +0200140 },
141 QL => {
142 poliqarp => 'Poliqarp',
143 cosmas2 => 'Cosmas II',
144 annis => 'Annis QL',
145 cql => 'CQL v1.2'
Akrone5ef4e02017-04-19 17:07:52 +0200146 },
147 Auth => {
148 loginSuccess => 'Login successful',
149 loginFail => 'Access denied',
Akronbc213c02017-04-20 16:45:55 +0200150 logoutSuccess => 'Logout successful',
151 logoutFail => 'Logout failed'
Akronccd71a42017-06-30 18:09:19 +0200152 },
153 Template => {
154 doc => {
155 ql => {
Akron0dc10902017-09-01 18:00:16 +0200156 'poliqarp-plus' => 'doc/ql/poliqarp-plus'
157 },
158 api => {
159 'koralquery' => 'doc/api/koralquery'
160 },
161 data => {
162 'annotation' => 'doc/data/annotation'
163 },
164 korap => {
165 'kalamar' => 'doc/korap/kalamar',
166 'karang' => 'doc/korap/karang',
167 'koral' => 'doc/korap/koral',
168 'krill' => 'doc/korap/krill',
169 'kustvakt' => 'doc/korap/kustvakt'
Akronccd71a42017-06-30 18:09:19 +0200170 }
171 }
Akron0dc10902017-09-01 18:00:16 +0200172 },
173 Nav => {
174 'ql' => 'Query Languages',
175 '#segments' => 'Simple Segments',
176 '#complex' => 'Complex Segments',
177 '#spans' => 'Span Segments',
178 '#paradigmatic-operators' => 'Paradigmatic Operators',
179 '#syntagmatic-operators' => 'Syntagmatic Operators',
180 '#class-operators' => 'Class Operators',
181 'regexp' => 'Regular Expressions',
182 'data' => 'Data',
183 'corpus' => 'Corpora',
184 'annotation' => 'Annotations',
185 '#default-foundries' => 'Default Foundries',
186 'faq' => 'F.A.Q.'
Akroncddd1642015-06-10 21:31:53 +0200187 }
188 }
189};