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> |
||
---|---|---|
.. | ||
checker | ||
processors | ||
__init__.py | ||
models.py |