blob: dee9e29a3f6efe92cde6a14df64a063ad81593fb [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 },
Akrond1741ae2017-11-29 09:58:53 +010041 activateJS => 'Für den vollen Funktionsumfang aktivieren Sie bitte JavaScript!',
Akroncddd1642015-06-10 21:31:53 +020042 faq => 'Häufige Fragen',
43 tutorial => 'Einführung',
44 pubOn => 'veröffentlicht am',
45 matchCount => 'Treffer',
Akron656c5d92015-11-13 21:17:03 +010046 noMatches => 'Es wurden keine Treffer für <%== loc("searchjob") %> gefunden.',
Akroncddd1642015-06-10 21:31:53 +020047 notFound => '404 - Seite nicht gefunden',
48 jsFile => 'kalamar-<%= $Kalamar::VERSION %>-de.js',
49 underConstruction => 'In Vorbereitung!',
Akron2670f5b2017-05-31 17:54:07 +020050 loginExplanation => 'Anmeldung mit einem registrierten Cosmas-II-Konto',
Akroncddd1642015-06-10 21:31:53 +020051 korap => {
52 -short => 'KorAP',
53 desc => 'KorAP - Korpusanalyseplattform der nächsten Generation',
54 overview => 'KorAP - Übersicht',
55 },
Akrone5ef4e02017-04-19 17:07:52 +020056 Auth => {
57 loginSuccess => 'Anmeldung erfolgreich',
58 loginFail => 'Anmeldung fehlgeschlagen',
Akronbc213c02017-04-20 16:45:55 +020059 logoutSuccess => 'Abmeldung erfolgreich',
60 logoutFail => 'Abmeldung fehlgeschlagen'
Akronccd71a42017-06-30 18:09:19 +020061 },
62 Template => {
Akronbd39a432017-09-20 13:57:13 +020063 intro => 'de/intro',
Akronccd71a42017-06-30 18:09:19 +020064 doc => {
65 ql => {
66 'poliqarp-plus' => 'de/doc/ql/poliqarp-plus'
Akron48567812017-09-01 16:49:04 +020067 },
68 api => {
69 'koralquery' => 'de/doc/api/koralquery'
70 },
71 data => {
72 'annotation' => 'de/doc/data/annotation'
73 },
74 korap => {
75 'kalamar' => 'de/doc/korap/kalamar',
76 'karang' => 'de/doc/korap/karang',
77 'koral' => 'de/doc/korap/koral',
78 'krill' => 'de/doc/korap/krill',
79 'kustvakt' => 'de/doc/korap/kustvakt'
Akronccd71a42017-06-30 18:09:19 +020080 }
81 }
Akron0dc10902017-09-01 18:00:16 +020082 },
83 Nav => {
84 'ql' => 'Anfragesprachen',
85 '#segments' => 'Einfache Segmente',
86 '#complex' => 'Komplexe Segmente',
87 '#spans' => 'Span Segmente',
88 '#paradigmatic-operators' => 'Paradigmatische Operatoren',
89 '#syntagmatic-operators' => 'Syntagmatische Operatoren',
90 '#class-operators' => 'Klassen Operatoren',
91 'regexp' => 'Reguläre Ausdrücke',
92 'data' => 'Daten',
93 'corpus' => 'Korpora',
94 'annotation' => 'Annotationen',
95 '#default-foundries' => 'Standard Foundries',
96 'faq' => 'Häufig gestellte Fragen'
Akroncddd1642015-06-10 21:31:53 +020097 }
98 },
99 -en => {
Akron43a73092016-02-11 21:52:27 +0100100 jsFile => 'kalamar-<%= $Kalamar::VERSION %>-en.js',
Akroncddd1642015-06-10 21:31:53 +0200101 numf => sub {
102 shift;
103 my %val = @_;
104 my $num = $val{number} or return 0;
105 $num =~ s/$THOUSAND_SEP_RE/$1\,/g;
106 return $num;
107 },
108 about => 'About KorAP',
109 login => 'Login',
Akrona8f56b22017-09-06 16:01:28 +0200110 logout => 'Logout',
Akrone8235be2016-06-27 11:02:18 +0200111 register => 'Register',
112 pwdforgotten => 'Password forgotten?',
Akroncddd1642015-06-10 21:31:53 +0200113 go => 'Go!',
Akron4823ab52017-04-27 17:10:12 +0200114 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 +0100115 searchtitle => 'KorAP: Find <%== loc("searchjob") %>',
Akroncddd1642015-06-10 21:31:53 +0200116 searchplaceholder => 'Find ...',
117 in => 'in',
118 by => 'by',
Akron189b3592016-01-04 20:56:46 +0100119 pwd => 'Password',
120 email => 'Email',
Akron2670f5b2017-05-31 17:54:07 +0200121 userormail => 'Username or Email',
Akroncddd1642015-06-10 21:31:53 +0200122 with => 'with',
123 pubOn => 'published on',
Akroncf29b222016-10-12 16:53:32 +0200124 matchCount => '<%= quant($found, "match", "matches") %>',
Akron656c5d92015-11-13 21:17:03 +0100125 noMatches => 'There were no matches found for <%== loc("searchjob") %>.',
Akroncddd1642015-06-10 21:31:53 +0200126 notFound => '404 - Page not found',
127 glimpse => {
Akrona18ee1a2017-07-06 16:40:26 +0200128 -short => 'Glimpse',
Akroncddd1642015-06-10 21:31:53 +0200129 desc => 'Just show the first matches in arbitrary order'
130 },
Akrond1741ae2017-11-29 09:58:53 +0100131 activateJS => 'To make use of all features, please activate JavaScript!',
Akroncddd1642015-06-10 21:31:53 +0200132 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',
Akronef351fa2017-11-22 19:44:50 +0100145 cql => 'CQL v1.2',
146 fcsql => 'FCSQL'
Akrone5ef4e02017-04-19 17:07:52 +0200147 },
148 Auth => {
149 loginSuccess => 'Login successful',
150 loginFail => 'Access denied',
Akronbc213c02017-04-20 16:45:55 +0200151 logoutSuccess => 'Logout successful',
152 logoutFail => 'Logout failed'
Akronccd71a42017-06-30 18:09:19 +0200153 },
154 Template => {
Akronbd39a432017-09-20 13:57:13 +0200155 intro => 'intro',
Akronccd71a42017-06-30 18:09:19 +0200156 doc => {
157 ql => {
Akron0dc10902017-09-01 18:00:16 +0200158 'poliqarp-plus' => 'doc/ql/poliqarp-plus'
159 },
160 api => {
161 'koralquery' => 'doc/api/koralquery'
162 },
163 data => {
164 'annotation' => 'doc/data/annotation'
165 },
166 korap => {
167 'kalamar' => 'doc/korap/kalamar',
168 'karang' => 'doc/korap/karang',
169 'koral' => 'doc/korap/koral',
170 'krill' => 'doc/korap/krill',
171 'kustvakt' => 'doc/korap/kustvakt'
Akronccd71a42017-06-30 18:09:19 +0200172 }
173 }
Akron0dc10902017-09-01 18:00:16 +0200174 },
175 Nav => {
176 'ql' => 'Query Languages',
177 '#segments' => 'Simple Segments',
178 '#complex' => 'Complex Segments',
179 '#spans' => 'Span Segments',
180 '#paradigmatic-operators' => 'Paradigmatic Operators',
181 '#syntagmatic-operators' => 'Syntagmatic Operators',
182 '#class-operators' => 'Class Operators',
183 'regexp' => 'Regular Expressions',
184 'data' => 'Data',
185 'corpus' => 'Corpora',
186 'annotation' => 'Annotations',
187 '#default-foundries' => 'Default Foundries',
188 'faq' => 'F.A.Q.'
Akroncddd1642015-06-10 21:31:53 +0200189 }
190 }
191};