mirror of
https://github.com/searxng/searxng
synced 2024-01-01 19:24:07 +01:00
![]() Many WEB-search engines (e.g. startpage) response best results if a **region** is selected, most often a language filter is also in the properties of the WEB-search engine. hint:: The **search language** should not be mixed: sometimes the language argument is just the language of the UI with none effect on the result list. To summarize: Some WEB-search engines have language codes (e.g. `ca`) in their properties, other have a region codes (e.g. `ca-ES`), some have regions and languages in their properties (e.g. startpage) and other engine do not have any language or region support. In the past we generalized *language* over all kind of engines without taking into mind that several WEB-search engines have best results when there is a region selected. This *language-centric* view in SearXNG is misleading when we need region-codes to parameterize a engine request! This patch replaces the *language-centric* view by a "language / region" view. Conclusions: With regions we can't say any longer that a engine supports *this or that* language. By example: when the user selects 'zh' and a engine supports only region codes like 'zh-TW' or 'zh-CN' we do not what results the user expects / similar with 'en' or 'fr when the engine needs a region tag. - Since it is unclear what the user expects by his language selection, we can't assert a property that says: "supports_selected_language" The feature is replaced in the UI by the wider sense of "language_support", what stands for: The engine has some kind of language support, either by a region tag or by a language tag. - A list of "supported_languages" does not make sense when there are regions responsible for the result of an engine. The "supported_languages" has been removed from the /config URL. - The `has_language` test in the `searx/search/checker/impl.py` has been removed since it does not cover engines with region support. If there is a need for such a test we can implement new tests after all engines with language (region) support has been moved to the *supported properites* scheme (`'type': 'engine_properties'`) / see commit previous commit: [mod] engines_languages.json: add new type EngineProperties Signed-off-by: Markus Heiser <markus.heiser@darmarit.de> |
||
---|---|---|
.. | ||
answerers | ||
data | ||
engines | ||
infopage | ||
metrics | ||
network | ||
plugins | ||
search | ||
shared | ||
static | ||
templates/simple | ||
translations | ||
__init__.py | ||
autocomplete.py | ||
babel_extract.py | ||
compat.py | ||
exceptions.py | ||
external_bang.py | ||
external_urls.py | ||
flaskfix.py | ||
languages.py | ||
locales.py | ||
preferences.py | ||
query.py | ||
redislib.py | ||
results.py | ||
searxng.msg | ||
settings.yml | ||
settings_defaults.py | ||
settings_loader.py | ||
unixthreadname.py | ||
utils.py | ||
version.py | ||
webadapter.py | ||
webapp.py | ||
webutils.py |