aboutsummaryrefslogtreecommitdiff
path: root/app/i18n/en/sub.php
blob: 0d930534b04cc33fd33c88af789b87b4411b3750 (plain)
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
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
<?php

/******************************************************************************
 * Each entry of that file can be associated with a comment to indicate its   *
 * state. When there is no comment, it means the entry is fully translated.   *
 * The recognized comments are (comment matching is case-insensitive):        *
 *   + TODO: the entry has never been translated.                             *
 *   + DIRTY: the entry has been translated but needs to be updated.          *
 *   + IGNORE: the entry does not need to be translated.                      *
 * When a comment is not recognized, it is discarded.                         *
 ******************************************************************************/

return array(
	'api' => array(
		'documentation' => 'Copy the following URL to use it within an external tool.',
		'title' => 'API',
	),
	'bookmarklet' => array(
		'documentation' => 'Drag this button to your bookmarks toolbar or right-click it and choose “Bookmark This Link”. Then click the “Subscribe” button in any page you want to subscribe to.',
		'label' => 'Subscribe',
		'title' => 'Bookmarklet',
	),
	'category' => array(
		'_' => 'Category',
		'add' => 'Add a category',
		'archiving' => 'Archiving',
		'dynamic_opml' => array(
			'_' => 'Dynamic OPML',
			'help' => 'Provide the URL to an <a href="http://opml.org/" target="_blank">OPML file</a> to dynamically populate this category with feeds',
		),
		'empty' => 'Empty category',
		'expand' => 'Expand category',
		'information' => 'Information',
		'open' => 'Open category',
		'opml_url' => 'OPML URL',
		'position' => 'Display position',
		'position_help' => 'To control category sort order',
		'title' => 'Title',
	),
	'feed' => array(
		'accept_cookies' => 'Accept cookies',
		'accept_cookies_help' => 'Allow the feed server to set cookies (stored in memory for the duration of the request only)',
		'add' => 'Add a feed',
		'advanced' => 'Advanced',
		'archiving' => 'Archiving',
		'auth' => array(
			'configuration' => 'Login',
			'help' => 'Allows access to HTTP protected RSS feeds',
			'http' => 'HTTP Authentication',
			'password' => 'HTTP password',
			'username' => 'HTTP username',
		),
		'change_favicon' => 'Change…',
		'clear_cache' => 'Always clear cache',
		'content_action' => array(
			'_' => 'Content action when fetching the article content',
			'append' => 'Add after existing content',
			'prepend' => 'Add before existing content',
			'replace' => 'Replace existing content',
		),
		'content_retrieval' => 'Content retrieval',
		'css_cookie' => 'Use Cookies when fetching the article content',
		'css_cookie_help' => 'Example: <kbd>foo=bar; gdpr_consent=true; cookie=value</kbd>',
		'css_help' => 'Retrieves truncated RSS feeds (caution, requires more time!)',
		'css_path' => 'Article CSS selector on original website',
		'css_path_filter' => array(
			'_' => 'CSS selector of the elements to remove',
			'help' => 'A CSS selector may be a list such as: <kbd>footer, aside, p[data-sanitized-class~="menu"]</kbd>',
		),
		'description' => 'Description',
		'empty' => 'This feed is empty. Please verify that it is still maintained.',
		'error' => 'This feed has encountered a problem. If this situation persists, please verify that it is still reachable.',
		'export-as-opml' => array(
			'download' => 'Download',
			'help' => 'XML file (data subset. <a href="https://freshrss.github.io/FreshRSS/en/developers/OPML.html" target="_blank">See documentation</a>)',
			'label' => 'Export as OPML',
		),
		'ext_favicon' => 'Set automatically',
		'favicon_changed_by_ext' => 'The icon has been set by the <b>%s</b> extension.',
		'filteractions' => array(
			'_' => 'Filter actions',
			'help' => 'Write one search filter per line. Operators <a href="https://freshrss.github.io/FreshRSS/en/users/10_filter.html#with-the-search-field" target="_blank">see documentation</a>.',
			'view_filter' => 'Preview filters on existing articles (new window)',
		),
		'http_headers' => 'HTTP Headers',
		'http_headers_help' => 'Headers are separated by a newline, and the name and value of a header are separated by a colon (e.g: <kbd><code>Accept: application/atom+xml<br />Authorization: Bearer some-token</code></kbd>).',
		'icon' => 'Icon',
		'information' => 'Information',
		'keep_min' => 'Minimum number of articles to keep',
		'kind' => array(
			'_' => 'Type of feed source',
			'html_json' => array(
				'_' => 'HTML + XPath + JSON dot notation (JSON in HTML)',
				'xpath' => array(
					'_' => 'XPath for JSON in HTML',
					'help' => 'Example: <code>normalize-space(//script[@type="application/json"])</code> (single JSON)<br />or: <code>//script[@type="application/ld+json"]</code> (one JSON object per article)',
				),
			),
			'html_xpath' => array(
				'_' => 'HTML + XPath (Web scraping)',
				'feed_title' => array(
					'_' => 'feed title',
					'help' => 'Example: <code>//title</code> or a static string: <code>"My custom feed"</code>',
				),
				'help' => '<dfn><a href="https://www.w3.org/TR/xpath-10/" target="_blank">XPath 1.0</a></dfn> is a standard query language for advanced users, and which FreshRSS supports to enable Web scraping.',
				'item' => array(
					'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>',
					'help' => 'Example: <code>//div[@class="news-item"]</code>',
				),
				'item_author' => array(
					'_' => 'item author',
					'help' => 'Can also be a static string. Example: <code>"Anonymous"</code>',
				),
				'item_categories' => 'item tags',
				'item_content' => array(
					'_' => 'item content',
					'help' => 'Example to take the full item: <code>.</code>',
				),
				'item_thumbnail' => array(
					'_' => 'item thumbnail',
					'help' => 'Example: <code>descendant::img/@src</code>',
				),
				'item_timeFormat' => array(
					'_' => 'Custom date/time format',
					'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>',
				),
				'item_timestamp' => array(
					'_' => 'item date',
					'help' => 'The result will be parsed by <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>',
				),
				'item_title' => array(
					'_' => 'item title',
					'help' => 'Use in particular the <a href="https://developer.mozilla.org/docs/Web/XPath/Axes" target="_blank">XPath axis</a> <code>descendant::</code> like <code>descendant::h2</code>',
				),
				'item_uid' => array(
					'_' => 'item unique ID',
					'help' => 'Optional. Example: <code>descendant::div/@data-uri</code>',
				),
				'item_uri' => array(
					'_' => 'item link (URL)',
					'help' => 'Example: <code>descendant::a/@href</code>',
				),
				'relative' => 'XPath (relative to item) for:',
				'xpath' => 'XPath for:',
			),
			'json_dotnotation' => array(
				'_' => 'JSON (dot notation)',
				'feed_title' => array(
					'_' => 'feed title',
					'help' => 'Example: <code>meta.title</code> or a static string: <code>"My custom feed"</code>',
				),
				'help' => 'A JSON dot notated uses dots between objects and brackets for arrays (e.g. <code>data.items[0].title</code>)',
				'item' => array(
					'_' => 'finding news <strong>items</strong><br /><small>(most important)</small>',
					'help' => 'JSON path to the array containing the items, e.g. <code>$</code> or <code>newsItems</code>',
				),
				'item_author' => 'item author',
				'item_categories' => 'item tags',
				'item_content' => array(
					'_' => 'item content',
					'help' => 'Key under which the content is found, e.g. <code>content</code>',
				),
				'item_thumbnail' => array(
					'_' => 'item thumbnail',
					'help' => 'Example: <code>image</code>',
				),
				'item_timeFormat' => array(
					'_' => 'Custom date/time format',
					'help' => 'Optional. A format supported by <a href="https://php.net/datetime.createfromformat" target="_blank"><code>DateTime::createFromFormat()</code></a> such as <code>d-m-Y H:i:s</code>',
				),
				'item_timestamp' => array(
					'_' => 'item date',
					'help' => 'The result will be parsed by <a href="https://php.net/strtotime" target="_blank"><code>strtotime()</code></a>',
				),
				'item_title' => 'item title',
				'item_uid' => 'item unique ID',
				'item_uri' => array(
					'_' => 'item link (URL)',
					'help' => 'Example: <code>permalink</code>',
				),
				'json' => 'dot notation for:',
				'relative' => 'dot notated path (relative to item) for:',
			),
			'jsonfeed' => 'JSON Feed',
			'rss' => 'RSS / Atom (default)',
			'xml_xpath' => 'XML + XPath',
		),
		'maintenance' => array(
			'clear_cache' => 'Clear cache',
			'clear_cache_help' => 'Clear the cache for this feed.',
			'reload_articles' => 'Reload articles',
			'reload_articles_help' => 'Reload that many articles and fetch complete content if a selector is defined.',
			'title' => 'Maintenance',
		),
		'max_http_redir' => 'Max HTTP redirects',
		'max_http_redir_help' => 'Set to 0 or leave blank to disable, -1 for unlimited redirects',
		'method' => array(
			'_' => 'HTTP Method',
		),
		'method_help' => 'The POST payload has automatic support for <code>application/x-www-form-urlencoded</code> and <code>application/json</code>',
		'method_postparams' => 'Payload for POST',
		'moved_category_deleted' => 'When you remove a category, its feeds are automatically classified under <em>%s</em>.',
		'mute' => array(
			'_' => 'mute',
			'state_is_muted' => 'This feed is muted',
		),
		'no_selected' => 'No feed selected.',
		'number_entries' => '%d articles',
		'open_feed' => 'Open feed %s',
		'path_entries_conditions' => 'Conditions for content retrieval',
		'priority' => array(
			'_' => 'Visibility',
			'category' => 'Show in its category',
			'feed' => 'Show in its feed',
			'hidden' => 'Do not show',
			'important' => 'Show in important feeds',
			'main_stream' => 'Show in main stream',
		),
		'proxy' => 'Set a proxy for fetching this feed',
		'proxy_help' => 'Select a protocol (e.g: SOCKS5) and enter the proxy address (e.g: <kbd>127.0.0.1:1080</kbd> or <kbd>username:password@127.0.0.1:1080</kbd>)',
		'reset_favicon' => 'Reset to default',
		'selector_preview' => array(
			'show_raw' => 'Show source code',
			'show_rendered' => 'Show content',
		),
		'show' => array(
			'all' => 'All feeds',
			'error' => 'Show only feeds with errors',
		),
		'showing' => array(
			'error' => 'Showing only feeds with errors',
		),
		'ssl_verify' => 'Verify SSL security',
		'stats' => 'Statistics',
		'think_to_add' => 'You may add some feeds.',
		'timeout' => 'Timeout in seconds',
		'title' => 'Title',
		'title_add' => 'Add an RSS feed',
		'ttl' => 'Do not automatically refresh more often than',
		'unicityCriteria' => array(
			'_' => 'Article unicity criteria',
			'forced' => '<span title="Block the unicity criteria, even when the feed has duplicate articles">forced</span>',
			'help' => 'Relevant for invalid feeds.<br />⚠️ Changing the policy will create duplicates.',
			'id' => 'Standard ID (default)',
			'link' => 'Link',
			'sha1:content' => 'Content',
			'sha1:content_published' => 'Content + Date',
			'sha1:link_published' => 'Link + Date',
			'sha1:link_published_title' => 'Link + Date + Title',
			'sha1:link_published_title_content' => 'Link + Date + Title + Content',
			'sha1:published' => 'Date',
			'sha1:title' => 'Title',
			'sha1:title_published' => 'Title + Date',
			'sha1:title_published_content' => 'Title + Date + Content',
		),
		'url' => 'Feed URL',
		'useragent' => 'Set the user agent for fetching this feed',
		'useragent_help' => 'Example: <kbd>Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:86.0)</kbd>',
		'validator' => 'Check the validity of the feed',
		'website' => 'Website URL',
		'websub' => 'Instant notifications with WebSub',
	),
	'import_export' => array(
		'export' => array(
			'_' => 'Export',
			'sqlite' => 'Download user database as SQLite',
		),
		'export_labelled' => 'Export your labelled articles',
		'export_opml' => 'Export list of feeds (OPML)',
		'export_starred' => 'Export your favourites',
		'feed_list' => 'List of %s articles',
		'file_to_import' => 'File to import<br />(OPML, JSON or ZIP)',
		'file_to_import_no_zip' => 'File to import<br />(OPML or JSON)',
		'import' => 'Import',
		'starred_list' => 'List of favourite articles',
		'title' => 'Import / export',
	),
	'menu' => array(
		'add' => 'Add a feed or category',
		'import_export' => 'Import / export',
		'label_management' => 'Label management',
		'stats' => array(
			'idle' => 'Idle feeds',
			'main' => 'Main statistics',
			'repartition' => 'Articles repartition',
			'unread_dates' => 'Unread dates',
		),
		'subscription_management' => 'Subscription management',
		'subscription_tools' => 'Subscription tools',
	),
	'tag' => array(
		'auto_label' => 'Add this label to new articles',
		'name' => 'Name',
		'new_name' => 'New name',
		'old_name' => 'Old name',
	),
	'title' => array(
		'_' => 'Subscription management',
		'add' => 'Add a feed or category',
		'add_category' => 'Add a category',
		'add_dynamic_opml' => 'Add dynamic OPML',
		'add_feed' => 'Add a feed',
		'add_label' => 'Add a label',
		'add_opml_category' => 'OPML category name',
		'delete_label' => 'Delete this label',
		'feed_management' => 'RSS feeds management',
		'subscription_tools' => 'Subscription tools',
	),
);