Browse Source

Merge branch 'master' into switch-md-parser

Alexandre Flament 3 years ago
parent
commit
e764427153

+ 1 - 1
requirements-dev.txt

@@ -3,7 +3,7 @@ nose2[coverage_plugin]==0.11.0
 cov-core==1.15.0
 black==22.3.0
 pycodestyle==2.8.0
-pylint==2.13.4
+pylint==2.13.5
 splinter==0.17.0
 selenium==4.1.3
 twine==4.0.0

+ 1 - 1
requirements.txt

@@ -13,6 +13,6 @@ uvloop==0.16.0
 httpx-socks[asyncio]==0.7.2
 langdetect==1.0.9
 setproctitle==1.2.2
-redis==4.2.0
+redis==4.2.2
 markdown-it-py==2.0.1
 typing_extensions==4.1.1

+ 29 - 25
searx/languages.py

@@ -2,11 +2,11 @@
 # list of language codes
 # this file is generated automatically by utils/fetch_languages.py
 language_codes = (
-    ('af-ZA', 'Afrikaans', '', 'Afrikaans', '\U0001f1ff\U0001f1e6'),
-    ('ar-EG', 'العربية', '', 'Arabic', '\U0001f1ea\U0001f1ec'),
-    ('be-BY', 'Беларуская', '', 'Belarusian', '\U0001f1e7\U0001f1fe'),
+    ('af-ZA', 'Afrikaans', 'Suid-Afrika', 'Afrikaans', '\U0001f1ff\U0001f1e6'),
+    ('ar-EG', 'العربية', 'مصر', 'Arabic', '\U0001f1ea\U0001f1ec'),
+    ('be-BY', 'Беларуская', 'Беларусь', 'Belarusian', '\U0001f1e7\U0001f1fe'),
     ('bg-BG', 'Български', 'България', 'Bulgarian', '\U0001f1e7\U0001f1ec'),
-    ('ca-ES', 'Català', '', 'Catalan', '\U0001f1ea\U0001f1f8'),
+    ('ca-ES', 'Català', 'Espanya', 'Catalan', '\U0001f1ea\U0001f1f8'),
     ('cs-CZ', 'Čeština', 'Česko', 'Czech', '\U0001f1e8\U0001f1ff'),
     ('da-DK', 'Dansk', 'Danmark', 'Danish', '\U0001f1e9\U0001f1f0'),
     ('de', 'Deutsch', '', 'German', '\U0001f310'),
@@ -28,26 +28,30 @@ language_codes = (
     ('es-ES', 'Español', 'España', 'Spanish', '\U0001f1ea\U0001f1f8'),
     ('es-MX', 'Español', 'México', 'Spanish', '\U0001f1f2\U0001f1fd'),
     ('et-EE', 'Eesti', 'Eesti', 'Estonian', '\U0001f1ea\U0001f1ea'),
-    ('fa-IR', 'فارسی', '', 'Persian', '\U0001f1ee\U0001f1f7'),
+    ('fa-IR', 'فارسی', 'ایران', 'Persian', '\U0001f1ee\U0001f1f7'),
     ('fi-FI', 'Suomi', 'Suomi', 'Finnish', '\U0001f1eb\U0001f1ee'),
-    ('fil-PH', 'Filipino', '', 'Filipino', '\U0001f1f5\U0001f1ed'),
+    ('fil-PH', 'Filipino', 'Pilipinas', 'Filipino', '\U0001f1f5\U0001f1ed'),
     ('fr', 'Français', '', 'French', '\U0001f310'),
     ('fr-BE', 'Français', 'Belgique', 'French', '\U0001f1e7\U0001f1ea'),
     ('fr-CA', 'Français', 'Canada', 'French', '\U0001f1e8\U0001f1e6'),
     ('fr-CH', 'Français', 'Suisse', 'French', '\U0001f1e8\U0001f1ed'),
     ('fr-FR', 'Français', 'France', 'French', '\U0001f1eb\U0001f1f7'),
-    ('he-IL', 'עברית', '', 'Hebrew', '\U0001f1ee\U0001f1f1'),
-    ('hi-IN', 'हिन्दी', '', 'Hindi', '\U0001f1ee\U0001f1f3'),
-    ('hr-HR', 'Hrvatski', '', 'Croatian', '\U0001f1ed\U0001f1f7'),
+    ('he-IL', 'עברית', 'ישראל', 'Hebrew', '\U0001f1ee\U0001f1f1'),
+    ('hi-IN', 'हिन्दी', 'भारत', 'Hindi', '\U0001f1ee\U0001f1f3'),
+    ('hr-HR', 'Hrvatski', 'Hrvatska', 'Croatian', '\U0001f1ed\U0001f1f7'),
     ('hu-HU', 'Magyar', 'Magyarország', 'Hungarian', '\U0001f1ed\U0001f1fa'),
-    ('id-ID', 'Indonesia', '', 'Indonesian', '\U0001f1ee\U0001f1e9'),
-    ('is-IS', 'Íslenska', '', 'Icelandic', '\U0001f1ee\U0001f1f8'),
+    ('id-ID', 'Indonesia', 'Indonesia', 'Indonesian', '\U0001f1ee\U0001f1e9'),
+    ('is-IS', 'Íslenska', 'Ísland', 'Icelandic', '\U0001f1ee\U0001f1f8'),
     ('it-IT', 'Italiano', 'Italia', 'Italian', '\U0001f1ee\U0001f1f9'),
-    ('ja-JP', '日本語', '', 'Japanese', '\U0001f1ef\U0001f1f5'),
-    ('ko-KR', '한국어', '', 'Korean', '\U0001f1f0\U0001f1f7'),
-    ('lt-LT', 'Lietuvių', '', 'Lithuanian', '\U0001f1f1\U0001f1f9'),
-    ('lv-LV', 'Latviešu', '', 'Latvian', '\U0001f1f1\U0001f1fb'),
-    ('nb-NO', 'Norsk Bokmål', '', 'Norwegian Bokmål', '\U0001f1f3\U0001f1f4'),
+    ('ja-JP', '日本語', '日本', 'Japanese', '\U0001f1ef\U0001f1f5'),
+    ('ko-KR', '한국어', '대한민국', 'Korean', '\U0001f1f0\U0001f1f7'),
+    ('lt-LT', 'Lietuvių', 'Lietuva', 'Lithuanian', '\U0001f1f1\U0001f1f9'),
+    ('lv-LV', 'Latviešu', 'Latvija', 'Latvian', '\U0001f1f1\U0001f1fb'),
+    (   'nb-NO',
+        'Norsk Bokmål',
+        'Norge',
+        'Norwegian Bokmål',
+        '\U0001f1f3\U0001f1f4'),
     ('nl', 'Nederlands', '', 'Dutch', '\U0001f310'),
     ('nl-BE', 'Nederlands', 'België', 'Dutch', '\U0001f1e7\U0001f1ea'),
     ('nl-NL', 'Nederlands', 'Nederland', 'Dutch', '\U0001f1f3\U0001f1f1'),
@@ -56,16 +60,16 @@ language_codes = (
     ('pt-BR', 'Português', 'Brasil', 'Portuguese', '\U0001f1e7\U0001f1f7'),
     ('pt-PT', 'Português', 'Portugal', 'Portuguese', '\U0001f1f5\U0001f1f9'),
     ('ro-RO', 'Română', 'România', 'Romanian', '\U0001f1f7\U0001f1f4'),
-    ('ru-RU', 'Русский', '', 'Russian', '\U0001f1f7\U0001f1fa'),
-    ('sk-SK', 'Slovenčina', '', 'Slovak', '\U0001f1f8\U0001f1f0'),
-    ('sl-SI', 'Slovenščina', '', 'Slovenian', '\U0001f1f8\U0001f1ee'),
-    ('sr-RS', 'Српски', '', 'Serbian', '\U0001f1f7\U0001f1f8'),
+    ('ru-RU', 'Русский', 'Россия', 'Russian', '\U0001f1f7\U0001f1fa'),
+    ('sk-SK', 'Slovenčina', 'Slovensko', 'Slovak', '\U0001f1f8\U0001f1f0'),
+    ('sl-SI', 'Slovenščina', 'Slovenija', 'Slovenian', '\U0001f1f8\U0001f1ee'),
+    ('sr-RS', 'Српски', 'Србија', 'Serbian', '\U0001f1f7\U0001f1f8'),
     ('sv-SE', 'Svenska', 'Sverige', 'Swedish', '\U0001f1f8\U0001f1ea'),
-    ('sw-TZ', 'Kiswahili', '', 'Swahili', '\U0001f1f9\U0001f1ff'),
-    ('th-TH', 'ไทย', '', 'Thai', '\U0001f1f9\U0001f1ed'),
-    ('tr-TR', 'Türkçe', '', 'Turkish', '\U0001f1f9\U0001f1f7'),
-    ('uk-UA', 'Українська', '', 'Ukrainian', '\U0001f1fa\U0001f1e6'),
-    ('vi-VN', 'Tiếng Việt', '', 'Vietnamese', '\U0001f1fb\U0001f1f3'),
+    ('sw-TZ', 'Kiswahili', 'Tanzania', 'Swahili', '\U0001f1f9\U0001f1ff'),
+    ('th-TH', 'ไทย', 'ไทย', 'Thai', '\U0001f1f9\U0001f1ed'),
+    ('tr-TR', 'Türkçe', 'Türkiye', 'Turkish', '\U0001f1f9\U0001f1f7'),
+    ('uk-UA', 'Українська', 'Україна', 'Ukrainian', '\U0001f1fa\U0001f1e6'),
+    ('vi-VN', 'Tiếng Việt', 'Việt Nam', 'Vietnamese', '\U0001f1fb\U0001f1f3'),
     ('zh', '中文', '', 'Chinese', '\U0001f310'),
     ('zh-CN', '中文', '中国', 'Chinese', '\U0001f1e8\U0001f1f3'),
     ('zh-HK', '中文', '中國香港特別行政區', 'Chinese', '\U0001f1ed\U0001f1f0'),

File diff suppressed because it is too large
+ 0 - 0
searx/static/themes/simple/css/searxng-rtl.min.css


File diff suppressed because it is too large
+ 0 - 0
searx/static/themes/simple/css/searxng-rtl.min.css.map


File diff suppressed because it is too large
+ 0 - 0
searx/static/themes/simple/css/searxng.min.css


File diff suppressed because it is too large
+ 0 - 0
searx/static/themes/simple/css/searxng.min.css.map


+ 10 - 3
searx/static/themes/simple/src/less/style.less

@@ -145,7 +145,8 @@ article.result-images[data-vim-selected] {
     filter: opacity(60%);
   }
 
-  span.title {
+  span.title,
+  span.source {
     color: var(--color-result-image-span-font-selected);
   }
 }
@@ -373,7 +374,7 @@ article[data-vim-selected].category-social {
 
 .result-images {
   flex-grow: 1;
-  padding: 0.5rem 0.5rem 2rem 0.5rem;
+  padding: 0.5rem 0.5rem 3rem 0.5rem;
   margin: 0.25rem;
   border: none !important;
   height: @results-image-row-height;
@@ -393,7 +394,8 @@ article[data-vim-selected].category-social {
     background: var(--color-result-image-background);
   }
 
-  span.title {
+  span.title,
+  span.source {
     display: block;
     position: absolute;
 
@@ -405,6 +407,11 @@ article[data-vim-selected].category-social {
     text-overflow: ellipsis;
     white-space: nowrap;
   }
+
+  span.source {
+    padding: 1.8rem 0 0 0;
+    font-size: 0.7rem;
+  }
 }
 
 .result-map {

+ 1 - 1
searx/templates/oscar/macros.html

@@ -5,7 +5,7 @@
 
 <!-- Draw favicon -->
 {% macro draw_favicon(favicon) -%}
-    <img width="32" height="32" class="favicon" src="{{ url_for('static', filename='img/icons/' + favicon + '.png') }}" alt="{{ favicon }}" />
+    <img width="32" height="32" class="favicon" src="{{ url_for('static', filename='themes/oscar/img/icons/' + favicon + '.png') }}" alt="{{ favicon }}" />
 {%- endmacro %}
 
 {%- macro result_link(url, title, classes='', id='') -%}

+ 1 - 0
searx/templates/simple/result_templates/images.html

@@ -2,6 +2,7 @@
         <a {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %} href="{{ result.img_src }}">{{- "" -}}
                 <img class="image_thumbnail" {% if results_on_new_tab %}target="_blank" rel="noopener noreferrer"{% else %}rel="noreferrer"{% endif %} src="{% if result.thumbnail_src %}{{ image_proxify(result.thumbnail_src) }}{% else %}{{ image_proxify(result.img_src) }}{% endif %}" alt="{{ result.title|striptags }}" loading="lazy" width="200" height="200">{{- "" -}}
                 <span class="title">{{ result.title|striptags }}</span>{{- "" -}}
+                <span class="source">{{ result.parsed_url.netloc }}</span>{{- "" -}}
         </a>{{- "" -}}
         <div class="detail">{{- "" -}}
                 <a class="result-detail-close" href="#">{{ icon('close') }}</a>{{- "" -}}

BIN
searx/translations/id/LC_MESSAGES/messages.mo


+ 14 - 14
searx/translations/id/LC_MESSAGES/messages.po

@@ -8,7 +8,7 @@ msgstr ""
 "Project-Id-Version: PROJECT VERSION\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
 "POT-Creation-Date: 2022-03-20 07:34+0000\n"
-"PO-Revision-Date: 2022-03-27 13:40+0000\n"
+"PO-Revision-Date: 2022-04-07 09:24+0000\n"
 "Last-Translator: Linerly <linerly@protonmail.com>\n"
 "Language-Team: Indonesian <https://weblate.bubu1.eu/projects/searxng/searxng/"
 "id/>\n"
@@ -365,7 +365,7 @@ msgstr "Tutup"
 #: searx/templates/simple/messages/no_results.html:6
 #: searx/templates/simple/results.html:46
 msgid "Error!"
-msgstr "Kesalahan!"
+msgstr "Terjadi kesalahan!"
 
 #: searx/templates/oscar/base.html:85 searx/templates/simple/base.html:61
 msgid "Powered by"
@@ -429,7 +429,7 @@ msgstr "di-cache"
 #: searx/templates/oscar/macros.html:79 searx/templates/oscar/macros.html:93
 #: searx/templates/simple/macros.html:43
 msgid "proxied"
-msgstr "di-proksi"
+msgstr "diproksi"
 
 #: searx/templates/oscar/macros.html:133
 #: searx/templates/oscar/preferences.html:344
@@ -550,7 +550,7 @@ msgstr "Pencarian Khusus"
 #: searx/templates/oscar/preferences.html:465
 #: searx/templates/simple/preferences.html:383
 msgid "Cookies"
-msgstr "Cookie"
+msgstr "Kuki"
 
 #: searx/templates/oscar/preferences.html:123
 #: searx/templates/oscar/preferences.html:125
@@ -726,9 +726,9 @@ msgid ""
 "href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
 " rel=\"external\">learn more about request methods</a>"
 msgstr ""
-"Ubah bagaimana formulir dikirimkan, <a "
-"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
-" rel=\"external\">pelajari lebih lanjut tentang metode permintaan</a>"
+"Ubah bagaimana formulir dikirimkan, <a href=\"https://id.wikipedia.org/wiki/"
+"Hypertext_Transfer_Protocol#Metode_permintaan\" rel=\"external\">pelajari "
+"lebih lanjut tentang metode permintaan</a>"
 
 #: searx/templates/oscar/preferences.html:284
 #: searx/templates/simple/preferences.html:259
@@ -874,7 +874,7 @@ msgid ""
 "This is the list of cookies and their values SearXNG is storing on your "
 "computer."
 msgstr ""
-"Ini adalah daftar cookie dan nilai-nilai mereka yang SearXNG simpan di "
+"Ini adalah daftar kuki dan nilai-nilai mereka yang SearXNG simpan di "
 "komputer Anda."
 
 #: searx/templates/oscar/preferences.html:469
@@ -885,7 +885,7 @@ msgstr "Dengan daftar itu, Anda dapat menilai transparansi SearXNG."
 #: searx/templates/oscar/preferences.html:474
 #: searx/templates/simple/preferences.html:391
 msgid "Cookie name"
-msgstr "Nama cookie"
+msgstr "Nama kuki"
 
 #: searx/templates/oscar/preferences.html:475
 #: searx/templates/simple/preferences.html:392
@@ -898,8 +898,8 @@ msgid ""
 "These settings are stored in your cookies, this allows us not to store "
 "this data about you."
 msgstr ""
-"Pengaturan ini disimpan di cookie Anda, ini memungkinkan kami untuk tidak"
-" menyimpan data ini tentang Anda."
+"Pengaturan ini disimpan di kuki Anda, ini memungkinkan kami untuk tidak "
+"menyimpan data ini tentang Anda."
 
 #: searx/templates/oscar/preferences.html:493
 #: searx/templates/simple/preferences.html:415
@@ -907,8 +907,8 @@ msgid ""
 "These cookies serve your sole convenience, we don't use these cookies to "
 "track you."
 msgstr ""
-"Cookie ini hanya untuk kenyamanan Anda, kami tidak menggunakan cookie ini"
-" untuk melacak Anda."
+"Kuki ini hanya untuk kenyamanan Anda, kami tidak menggunakan kuki ini untuk "
+"melacak Anda."
 
 #: searx/templates/oscar/preferences.html:497
 #: searx/templates/simple/preferences.html:404
@@ -1118,7 +1118,7 @@ msgstr "Informasi!"
 
 #: searx/templates/oscar/messages/no_cookies.html:4
 msgid "currently, there are no cookies defined."
-msgstr "saat ini, tidak ada cookie yang didefinisikan"
+msgstr "saat ini, tidak ada kuki yang didefinisikan"
 
 #: searx/templates/oscar/messages/no_data_available.html:4
 #: searx/templates/simple/stats.html:21

BIN
searx/translations/lt/LC_MESSAGES/messages.mo


+ 51 - 51
searx/translations/lt/LC_MESSAGES/messages.po

@@ -6,31 +6,32 @@
 # Moo, 2019-2020
 msgid ""
 msgstr ""
-"Project-Id-Version:  searx\n"
+"Project-Id-Version: searx\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
 "POT-Creation-Date: 2022-03-20 07:34+0000\n"
-"PO-Revision-Date: 2021-12-10 07:17+0000\n"
+"PO-Revision-Date: 2022-04-07 09:24+0000\n"
 "Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"Language-Team: Lithuanian <https://weblate.bubu1.eu/projects/searxng/searxng/"
+"lt/>\n"
 "Language: lt\n"
-"Language-Team: Lithuanian "
-"<https://weblate.bubu1.eu/projects/searxng/searxng/lt/>\n"
-"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100"
-" < 11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < "
-"11) ? 1 : n % 1 != 0 ? 2: 3)\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=4; plural=(n % 10 == 1 && (n % 100 > 19 || n % 100 < "
+"11) ? 0 : (n % 10 >= 2 && n % 10 <=9) && (n % 100 > 19 || n % 100 < 11) ? 1 :"
+" n % 1 != 0 ? 2: 3);\n"
+"X-Generator: Weblate 4.11\n"
 "Generated-By: Babel 2.9.1\n"
 
 #. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
 #: searx/searxng.msg
 msgid "others"
-msgstr ""
+msgstr "kiti"
 
 #. CONSTANT_NAMES['OTHER_CATEGORY']
 #: searx/searxng.msg
 msgid "other"
-msgstr ""
+msgstr "kitas"
 
 #. CATEGORY_NAMES['FILES']
 #: searx/searxng.msg
@@ -80,7 +81,7 @@ msgstr "žemėlapis"
 #. CATEGORY_NAMES['ONIONS']
 #: searx/searxng.msg
 msgid "onions"
-msgstr ""
+msgstr "svogūnai"
 
 #. CATEGORY_NAMES['SCIENCE']
 #: searx/searxng.msg
@@ -90,105 +91,105 @@ msgstr "mokslas"
 #. CATEGORY_GROUPS['APPS']
 #: searx/searxng.msg
 msgid "apps"
-msgstr ""
+msgstr "programėlėles"
 
 #. CATEGORY_GROUPS['DICTIONARIES']
 #: searx/searxng.msg
 msgid "dictionaries"
-msgstr ""
+msgstr "žodynai"
 
 #. CATEGORY_GROUPS['LYRICS']
 #: searx/searxng.msg
 msgid "lyrics"
-msgstr ""
+msgstr "dainų žodžiai"
 
 #. CATEGORY_GROUPS['PACKAGES']
 #: searx/searxng.msg
 msgid "packages"
-msgstr ""
+msgstr "paketai"
 
 #. CATEGORY_GROUPS['Q_A']
 #: searx/searxng.msg
 msgid "q&a"
-msgstr ""
+msgstr "klausimai ir atsakymai"
 
 #. CATEGORY_GROUPS['REPOS']
 #: searx/searxng.msg
 msgid "repos"
-msgstr ""
+msgstr "saugyklos"
 
 #. CATEGORY_GROUPS['SOFTWARE_WIKIS']
 #: searx/searxng.msg
 msgid "software wikis"
-msgstr ""
+msgstr "programų žinynas"
 
 #. CATEGORY_GROUPS['WEB']
 #: searx/searxng.msg
 msgid "web"
-msgstr ""
+msgstr "internetas"
 
 #. STYLE_NAMES['AUTO']
 #: searx/searxng.msg
 msgid "auto"
-msgstr ""
+msgstr "automatinis"
 
 #. STYLE_NAMES['LIGHT']
 #: searx/searxng.msg
 msgid "light"
-msgstr ""
+msgstr "lengvas"
 
 #. STYLE_NAMES['DARK']
 #: searx/searxng.msg
 msgid "dark"
-msgstr ""
+msgstr "tamsus"
 
 #: searx/webapp.py:169
 msgid "timeout"
-msgstr ""
+msgstr "laikas baigėsi"
 
 #: searx/webapp.py:170
 msgid "parsing error"
-msgstr ""
+msgstr "parsavymo klaida"
 
 #: searx/webapp.py:171
 msgid "HTTP protocol error"
-msgstr ""
+msgstr "HTTP protokolo klaida"
 
 #: searx/webapp.py:172
 msgid "network error"
-msgstr ""
+msgstr "tinklo klaida"
 
 #: searx/webapp.py:174
 msgid "unexpected crash"
-msgstr ""
+msgstr "netikėta klaida"
 
 #: searx/webapp.py:181
 msgid "HTTP error"
-msgstr ""
+msgstr "HTTP klaida"
 
 #: searx/webapp.py:182
 msgid "HTTP connection error"
-msgstr ""
+msgstr "HTTP prisijungimo klaida"
 
 #: searx/webapp.py:188
 msgid "proxy error"
-msgstr ""
+msgstr "tarpinio serverio klaida"
 
 #: searx/webapp.py:189
 msgid "CAPTCHA"
-msgstr ""
+msgstr "CAPTCHA"
 
 #: searx/webapp.py:190
 msgid "too many requests"
-msgstr ""
+msgstr "Per daug užklausų"
 
 #: searx/webapp.py:191
 msgid "access denied"
-msgstr ""
+msgstr "prieiga uždrausta"
 
 #: searx/webapp.py:192
 msgid "server API error"
-msgstr ""
+msgstr "serverio API klaida"
 
 #: searx/webapp.py:410
 msgid "No item found"
@@ -197,11 +198,11 @@ msgstr "Elementų nerasta"
 #: searx/engines/qwant.py:212
 #: searx/templates/simple/result_templates/images.html:23 searx/webapp.py:412
 msgid "Source"
-msgstr ""
+msgstr "Šaltinis"
 
 #: searx/webapp.py:414
 msgid "Error loading the next page"
-msgstr ""
+msgstr "Klaida keliant ateinantį puslapį"
 
 #: searx/webapp.py:526 searx/webapp.py:967
 msgid "Invalid settings, please edit your preferences"
@@ -225,7 +226,7 @@ msgstr "prieš {hours} val., {minutes} min"
 
 #: searx/webapp.py:871
 msgid "Suspended"
-msgstr ""
+msgstr "Sustabdytas"
 
 #: searx/answerers/random/answerer.py:67
 msgid "Random value generator"
@@ -261,15 +262,15 @@ msgstr "Šiai publikacijai nėra prieinama jokia santrauka."
 
 #: searx/engines/qwant.py:214
 msgid "Channel"
-msgstr ""
+msgstr "Kanalas"
 
 #: searx/plugins/hash_plugin.py:24
 msgid "Converts strings to different hash digests."
-msgstr ""
+msgstr "Konvertuoja eilutes į skirtingas maišos santraukas."
 
 #: searx/plugins/hash_plugin.py:52
 msgid "hash digest"
-msgstr ""
+msgstr "maišos santrauka"
 
 #: searx/plugins/hostname_replace.py:9
 msgid "Hostname replace"
@@ -305,7 +306,7 @@ msgstr ""
 
 #: searx/plugins/self_info.py:20
 msgid "Self Informations"
-msgstr ""
+msgstr "Informacija apie save"
 
 #: searx/plugins/self_info.py:21
 msgid ""
@@ -397,7 +398,7 @@ msgstr "Viešieji egzemplioriai"
 
 #: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:66
 msgid "Contact instance maintainer"
-msgstr ""
+msgstr "Susisiekite su instancijos prižiūrėtoju"
 
 #: searx/templates/oscar/languages.html:2
 msgid "Language"
@@ -442,7 +443,7 @@ msgstr "Leisti"
 
 #: searx/templates/oscar/macros.html:139
 msgid "broken"
-msgstr ""
+msgstr "nutrūkęs"
 
 #: searx/templates/oscar/macros.html:141
 msgid "supported"
@@ -465,7 +466,7 @@ msgstr "nuostatos"
 #: searx/templates/oscar/preferences.html:12
 #: searx/templates/simple/preferences.html:29
 msgid "No HTTPS"
-msgstr ""
+msgstr "Nėra HTTPS"
 
 #: searx/templates/oscar/preferences.html:14
 #: searx/templates/oscar/results.html:27 searx/templates/simple/results.html:39
@@ -474,7 +475,7 @@ msgstr "Rezultatų skaičius"
 
 #: searx/templates/oscar/preferences.html:14
 msgid "Avg."
-msgstr ""
+msgstr "Vid."
 
 #: searx/templates/oscar/messages/no_results.html:8
 #: searx/templates/oscar/preferences.html:17
@@ -485,33 +486,33 @@ msgstr ""
 #: searx/templates/simple/preferences.html:32
 #: searx/templates/simple/results.html:49
 msgid "View error logs and submit a bug report"
-msgstr ""
+msgstr "Peržiūrėkite klaidų žurnalus ir pateikite klaidų ataskaitą"
 
 #: searx/templates/oscar/preferences.html:38
 #: searx/templates/oscar/stats.html:70
 #: searx/templates/simple/preferences.html:53
 #: searx/templates/simple/stats.html:67
 msgid "Median"
-msgstr ""
+msgstr "Mediana"
 
 #: searx/templates/oscar/preferences.html:39
 #: searx/templates/oscar/stats.html:76
 #: searx/templates/simple/preferences.html:54
 #: searx/templates/simple/stats.html:73
 msgid "P80"
-msgstr ""
+msgstr "P80"
 
 #: searx/templates/oscar/preferences.html:40
 #: searx/templates/oscar/stats.html:82
 #: searx/templates/simple/preferences.html:55
 #: searx/templates/simple/stats.html:79
 msgid "P95"
-msgstr ""
+msgstr "P95"
 
 #: searx/templates/oscar/preferences.html:68
 #: searx/templates/simple/preferences.html:83
 msgid "Failed checker test(s): "
-msgstr ""
+msgstr "Nepavykęs tikrintojo testas (-ai): "
 
 #: searx/templates/oscar/preferences.html:96
 #: searx/templates/simple/preferences.html:99
@@ -527,7 +528,7 @@ msgstr "Bendra"
 #: searx/templates/oscar/preferences.html:102
 #: searx/templates/oscar/preferences.html:193
 msgid "User Interface"
-msgstr ""
+msgstr "Vartotojo sąsaja"
 
 #: searx/templates/oscar/preferences.html:103
 #: searx/templates/oscar/preferences.html:268
@@ -1478,4 +1479,3 @@ msgstr ""
 #~ "search results but you can search "
 #~ "the engines listed here via bangs."
 #~ msgstr ""
-

BIN
searx/translations/ro/LC_MESSAGES/messages.mo


+ 36 - 36
searx/translations/ro/LC_MESSAGES/messages.po

@@ -8,19 +8,20 @@
 # Mihai Pora <mihai.pora@gmail.com>, 2019
 msgid ""
 msgstr ""
-"Project-Id-Version:  searx\n"
+"Project-Id-Version: searx\n"
 "Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
 "POT-Creation-Date: 2022-03-20 07:34+0000\n"
-"PO-Revision-Date: 2020-07-09 13:10+0000\n"
-"Last-Translator: Daniel Șerbănescu <daniel@serbanescu.dk>\n"
+"PO-Revision-Date: 2022-04-08 07:18+0000\n"
+"Last-Translator: Markus Heiser <markus.heiser@darmarit.de>\n"
+"Language-Team: Romanian <https://weblate.bubu1.eu/projects/searxng/searxng/"
+"ro/>\n"
 "Language: ro\n"
-"Language-Team: Romanian "
-"(http://www.transifex.com/asciimoo/searx/language/ro/)\n"
-"Plural-Forms: nplurals=3; "
-"plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1))\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=utf-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
+"20)) ? 1 : 2;\n"
+"X-Generator: Weblate 4.11\n"
 "Generated-By: Babel 2.9.1\n"
 
 #. CONSTANT_NAMES['DEFAULT_GROUP_NAME']
@@ -91,57 +92,57 @@ msgstr "știință"
 #. CATEGORY_GROUPS['APPS']
 #: searx/searxng.msg
 msgid "apps"
-msgstr ""
+msgstr "aplicații"
 
 #. CATEGORY_GROUPS['DICTIONARIES']
 #: searx/searxng.msg
 msgid "dictionaries"
-msgstr ""
+msgstr "dicționare"
 
 #. CATEGORY_GROUPS['LYRICS']
 #: searx/searxng.msg
 msgid "lyrics"
-msgstr ""
+msgstr "versuri"
 
 #. CATEGORY_GROUPS['PACKAGES']
 #: searx/searxng.msg
 msgid "packages"
-msgstr ""
+msgstr "pachete"
 
 #. CATEGORY_GROUPS['Q_A']
 #: searx/searxng.msg
 msgid "q&a"
-msgstr ""
+msgstr "î&r"
 
 #. CATEGORY_GROUPS['REPOS']
 #: searx/searxng.msg
 msgid "repos"
-msgstr ""
+msgstr "arhive digitale"
 
 #. CATEGORY_GROUPS['SOFTWARE_WIKIS']
 #: searx/searxng.msg
 msgid "software wikis"
-msgstr ""
+msgstr "enciclopedii de programe"
 
 #. CATEGORY_GROUPS['WEB']
 #: searx/searxng.msg
 msgid "web"
-msgstr ""
+msgstr "rețea"
 
 #. STYLE_NAMES['AUTO']
 #: searx/searxng.msg
 msgid "auto"
-msgstr ""
+msgstr "automat"
 
 #. STYLE_NAMES['LIGHT']
 #: searx/searxng.msg
 msgid "light"
-msgstr ""
+msgstr "luminos"
 
 #. STYLE_NAMES['DARK']
 #: searx/searxng.msg
 msgid "dark"
-msgstr ""
+msgstr "întunecat"
 
 #: searx/webapp.py:169
 msgid "timeout"
@@ -149,27 +150,27 @@ msgstr ""
 
 #: searx/webapp.py:170
 msgid "parsing error"
-msgstr ""
+msgstr "examinare eșuată"
 
 #: searx/webapp.py:171
 msgid "HTTP protocol error"
-msgstr ""
+msgstr "eroare protocol HTTP"
 
 #: searx/webapp.py:172
 msgid "network error"
-msgstr ""
+msgstr "eraore rețea"
 
 #: searx/webapp.py:174
 msgid "unexpected crash"
-msgstr ""
+msgstr "defecțiune neașteptată"
 
 #: searx/webapp.py:181
 msgid "HTTP error"
-msgstr ""
+msgstr "eroare HTTP"
 
 #: searx/webapp.py:182
 msgid "HTTP connection error"
-msgstr ""
+msgstr "eroare conexiune HTTP"
 
 #: searx/webapp.py:188
 msgid "proxy error"
@@ -181,11 +182,11 @@ msgstr ""
 
 #: searx/webapp.py:190
 msgid "too many requests"
-msgstr ""
+msgstr "Prea multe solicitări"
 
 #: searx/webapp.py:191
 msgid "access denied"
-msgstr ""
+msgstr "Acces interzis"
 
 #: searx/webapp.py:192
 msgid "server API error"
@@ -198,15 +199,15 @@ msgstr "Niciun element găsit"
 #: searx/engines/qwant.py:212
 #: searx/templates/simple/result_templates/images.html:23 searx/webapp.py:412
 msgid "Source"
-msgstr ""
+msgstr "Sursă"
 
 #: searx/webapp.py:414
 msgid "Error loading the next page"
-msgstr ""
+msgstr "Eroare la încărcarea paginii următoare"
 
 #: searx/webapp.py:526 searx/webapp.py:967
 msgid "Invalid settings, please edit your preferences"
-msgstr "Configurări nevalide, editați preferințele"
+msgstr "Configurări nevalide, modificați preferințele"
 
 #: searx/webapp.py:542
 msgid "Invalid settings"
@@ -226,7 +227,7 @@ msgstr "{hours} oră(e), {minutes} minut(e) în urmă"
 
 #: searx/webapp.py:871
 msgid "Suspended"
-msgstr ""
+msgstr "Întrerupt"
 
 #: searx/answerers/random/answerer.py:67
 msgid "Random value generator"
@@ -344,7 +345,7 @@ msgstr "Pagină negăsită"
 #: searx/templates/oscar/404.html:6 searx/templates/simple/404.html:6
 #, python-format
 msgid "Go to %(search_page)s."
-msgstr "Navighează la %(search_page)s"
+msgstr "Navighează la %(search_page)s."
 
 #: searx/templates/oscar/404.html:6 searx/templates/simple/404.html:6
 msgid "search page"
@@ -652,7 +653,7 @@ msgstr "Schimbă limba aspectului"
 #: searx/templates/oscar/preferences.html:210
 #: searx/templates/simple/preferences.html:195
 msgid "Theme"
-msgstr ""
+msgstr "Temă"
 
 #: searx/templates/oscar/preferences.html:211
 #: searx/templates/simple/preferences.html:203
@@ -716,7 +717,7 @@ msgstr "Încarcă automat pagina următoare când se derulează la baza paginii
 #: searx/templates/oscar/preferences.html:273
 #: searx/templates/simple/preferences.html:247
 msgid "HTTP Method"
-msgstr ""
+msgstr "Metodă HTTP"
 
 #: searx/templates/oscar/preferences.html:274
 #: searx/templates/simple/preferences.html:254
@@ -767,7 +768,7 @@ msgstr ""
 
 #: searx/templates/oscar/preferences.html:326
 msgid "Allow all"
-msgstr ""
+msgstr "Permite toate"
 
 #: searx/templates/oscar/preferences.html:327
 msgid "Disable all"
@@ -1121,7 +1122,7 @@ msgstr "Deocamdată nu există date disponibile."
 #: searx/templates/oscar/messages/no_results.html:4
 #: searx/templates/simple/messages/no_results.html:6
 msgid "Engines cannot retrieve results."
-msgstr "Motoarele nu pot obține rezultate"
+msgstr "Motoarele nu pot obține rezultate."
 
 #: searx/templates/oscar/messages/no_results.html:13
 #: searx/templates/simple/messages/no_results.html:15
@@ -1479,4 +1480,3 @@ msgstr ""
 #~ "search results but you can search "
 #~ "the engines listed here via bangs."
 #~ msgstr ""
-

+ 1 - 1
searx/webapp.py

@@ -434,7 +434,7 @@ def _get_enable_categories(all_categories: Iterable[str]):
 def get_pretty_url(parsed_url: urllib.parse.ParseResult):
     path = parsed_url.path
     path = path[:-1] if len(path) > 0 and path[-1] == '/' else path
-    path = unquote(path).replace("/", " › ")
+    path = unquote(path.replace("/", " › "))
     return [parsed_url.scheme + "://" + parsed_url.netloc, path]
 
 

+ 11 - 1
searxng_extra/update/update_languages.py

@@ -113,6 +113,16 @@ def get_unicode_flag(lang_code):
     return c1 + c2
 
 
+def get_territory_name(lang_code):
+    country_name = None
+    locale = get_locale(lang_code)
+    try:
+        country_name = locale.get_territory_name()
+    except FileNotFoundError as exc:
+        print("ERROR: %s --> %s" % (locale, exc))
+    return country_name
+
+
 # Join all language lists.
 def join_language_lists(engines_languages):
     language_list = {}
@@ -274,7 +284,7 @@ def write_languages_file(languages):
         item = (
             code,
             languages[code]['name'].split(' (')[0],
-            languages[code].get('country_name') or '',
+            get_territory_name(code) or '',
             languages[code].get('english_name') or '',
             UnicodeEscape(flag),
         )

+ 1 - 1
tests/unit/test_query.py

@@ -130,7 +130,7 @@ class TestLanguageParser(SearxTestCase):
         self.assertEqual(query.autocomplete_list, [":hu-hu"])
 
         query = RawTextQuery(':v', [])
-        self.assertEqual(query.autocomplete_list, [":vi", ":tiếng việt"])
+        self.assertEqual(query.autocomplete_list, [':vi', ':tiếng việt', ':việt_nam'])
 
 
 class TestTimeoutParser(SearxTestCase):

Some files were not shown because too many files changed in this diff