summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AUTHORS.rst15
-rw-r--r--CHANGELOG.rst38
-rw-r--r--Dockerfile7
-rw-r--r--README.rst2
-rw-r--r--debian/patches/debian-changes210
-rw-r--r--debian/patches/series1
-rwxr-xr-xmanage.sh42
-rw-r--r--requirements.txt14
-rw-r--r--searx/answerers/random/answerer.py24
-rw-r--r--searx/data/currencies.json16
-rw-r--r--searx/data/engines_languages.json27226
-rw-r--r--searx/data/useragents.json14
-rw-r--r--searx/engines/__init__.py21
-rw-r--r--searx/engines/acgsou.py75
-rw-r--r--searx/engines/archlinux.py4
-rwxr-xr-xsearx/engines/base.py2
-rw-r--r--searx/engines/bing.py9
-rw-r--r--searx/engines/bing_images.py27
-rw-r--r--searx/engines/bing_news.py6
-rw-r--r--searx/engines/bing_videos.py7
-rw-r--r--searx/engines/currency_convert.py14
-rw-r--r--searx/engines/dailymotion.py3
-rw-r--r--searx/engines/duckduckgo.py51
-rw-r--r--searx/engines/duckduckgo_definitions.py7
-rw-r--r--searx/engines/duckduckgo_images.py5
-rw-r--r--searx/engines/duden.py76
-rw-r--r--searx/engines/gentoo.py128
-rw-r--r--searx/engines/gigablast.py2
-rw-r--r--searx/engines/google.py34
-rw-r--r--searx/engines/google_images.py41
-rw-r--r--searx/engines/google_news.py10
-rw-r--r--searx/engines/google_videos.py24
-rw-r--r--searx/engines/nyaa.py4
-rw-r--r--searx/engines/piratebay.py2
-rw-r--r--searx/engines/qwant.py15
-rw-r--r--searx/engines/startpage.py11
-rw-r--r--searx/engines/swisscows.py8
-rw-r--r--searx/engines/wikidata.py19
-rw-r--r--searx/engines/wikipedia.py9
-rw-r--r--searx/engines/www500px.py73
-rw-r--r--searx/engines/xpath.py2
-rw-r--r--searx/engines/yahoo.py24
-rw-r--r--searx/engines/yahoo_news.py7
-rw-r--r--searx/languages.py40
-rw-r--r--searx/plugins/oa_doi_rewrite.py5
-rw-r--r--searx/preferences.py7
-rw-r--r--searx/query.py25
-rw-r--r--searx/search.py12
-rw-r--r--searx/settings.yml82
-rw-r--r--searx/static/plugins/css/infinite_scroll.css3
-rw-r--r--searx/static/plugins/js/vim_hotkeys.js3
-rw-r--r--searx/static/themes/oscar/gruntfile.js13
-rw-r--r--searx/static/themes/oscar/img/icons/README.md2
-rw-r--r--searx/static/themes/oscar/less/logicodev/search.less1
-rw-r--r--searx/static/themes/oscar/less/pointhi/search.less1
-rw-r--r--searx/static/themes/simple/gruntfile.js26
-rw-r--r--searx/static/themes/simple/img/loader.gifbin8314 -> 0 bytes
-rw-r--r--searx/static/themes/simple/js/searx_src/00_searx_toolkit.js11
-rw-r--r--searx/static/themes/simple/js/searx_src/autocomplete.js49
-rw-r--r--searx/static/themes/simple/js/searx_src/searx_keyboard.js62
-rw-r--r--searx/static/themes/simple/js/searx_src/searx_mapresult.js5
-rw-r--r--searx/static/themes/simple/js/searx_src/searx_search.js23
-rw-r--r--searx/static/themes/simple/less/mixins.less2
-rw-r--r--searx/static/themes/simple/less/normalize.less152
-rw-r--r--searx/static/themes/simple/less/preferences.less25
-rw-r--r--searx/static/themes/simple/less/search.less34
-rw-r--r--searx/static/themes/simple/less/style.less46
-rw-r--r--searx/static/themes/simple/less/toolkit.less134
-rw-r--r--searx/static/themes/simple/less/toolkit_loader.less41
-rw-r--r--searx/static/themes/simple/package.json10
-rw-r--r--searx/templates/__common__/about.html1
-rw-r--r--searx/templates/oscar/languages.html2
-rw-r--r--searx/templates/oscar/preferences.html4
-rw-r--r--searx/templates/simple/preferences.html52
-rw-r--r--searx/templates/simple/result_templates/map.html15
-rw-r--r--searx/templates/simple/results.html31
-rw-r--r--searx/templates/simple/search.html1
-rw-r--r--searx/translations/ar/LC_MESSAGES/messages.po29
-rw-r--r--searx/translations/ca/LC_MESSAGES/messages.po1014
-rw-r--r--searx/translations/cs/LC_MESSAGES/messages.po37
-rw-r--r--searx/translations/cy/LC_MESSAGES/messages.po1013
-rw-r--r--searx/translations/da/LC_MESSAGES/messages.po45
-rw-r--r--searx/translations/de/LC_MESSAGES/messages.po17
-rw-r--r--searx/translations/eo/LC_MESSAGES/messages.po135
-rw-r--r--searx/translations/eu/LC_MESSAGES/messages.po1015
-rw-r--r--searx/translations/fa_IR/LC_MESSAGES/messages.po1015
-rw-r--r--searx/translations/fil/LC_MESSAGES/messages.po6
-rw-r--r--searx/translations/fr/LC_MESSAGES/messages.po14
-rw-r--r--searx/translations/gl/LC_MESSAGES/messages.po1013
-rw-r--r--searx/translations/it/LC_MESSAGES/messages.po28
-rw-r--r--searx/translations/ja/LC_MESSAGES/messages.po99
-rw-r--r--searx/translations/nl/LC_MESSAGES/messages.po10
-rw-r--r--searx/translations/nl_BE/LC_MESSAGES/messages.po1013
-rw-r--r--searx/translations/pl/LC_MESSAGES/messages.po1014
-rw-r--r--searx/translations/pt/LC_MESSAGES/messages.po49
-rw-r--r--searx/translations/pt_BR/LC_MESSAGES/messages.po15
-rw-r--r--searx/translations/ro/LC_MESSAGES/messages.po185
-rw-r--r--searx/translations/ru/LC_MESSAGES/messages.po35
-rw-r--r--searx/translations/sl/LC_MESSAGES/messages.po40
-rw-r--r--searx/translations/sv/LC_MESSAGES/messages.po13
-rw-r--r--searx/translations/te/LC_MESSAGES/messages.po1013
-rw-r--r--searx/translations/tr/LC_MESSAGES/messages.po35
-rw-r--r--searx/translations/uk/LC_MESSAGES/messages.po1015
-rw-r--r--searx/translations/vi/LC_MESSAGES/messages.po1013
-rw-r--r--searx/translations/zh_CN/LC_MESSAGES/messages.po119
-rw-r--r--searx/translations/zh_TW/LC_MESSAGES/messages.po1015
-rw-r--r--searx/utils.py89
-rw-r--r--searx/version.py2
-rw-r--r--searx/webapp.py24
-rw-r--r--setup.py16
-rw-r--r--tests/unit/engines/test_acgsou.py78
-rw-r--r--tests/unit/engines/test_archlinux.py7
-rw-r--r--tests/unit/engines/test_bing.py1
-rw-r--r--tests/unit/engines/test_bing_images.py7
-rw-r--r--tests/unit/engines/test_bing_news.py3
-rw-r--r--tests/unit/engines/test_bing_videos.py1
-rw-r--r--tests/unit/engines/test_currency_convert.py20
-rw-r--r--tests/unit/engines/test_dailymotion.py3
-rw-r--r--tests/unit/engines/test_duckduckgo.py18
-rw-r--r--tests/unit/engines/test_duckduckgo_definitions.py1
-rw-r--r--tests/unit/engines/test_duckduckgo_images.py1
-rw-r--r--tests/unit/engines/test_duden.py41
-rw-r--r--tests/unit/engines/test_google.py12
-rw-r--r--tests/unit/engines/test_google_images.py15
-rw-r--r--tests/unit/engines/test_google_news.py5
-rw-r--r--tests/unit/engines/test_google_videos.py27
-rw-r--r--tests/unit/engines/test_piratebay.py6
-rw-r--r--tests/unit/engines/test_qwant.py2
-rw-r--r--tests/unit/engines/test_startpage.py22
-rw-r--r--tests/unit/engines/test_swisscows.py1
-rw-r--r--tests/unit/engines/test_wikidata.py26
-rw-r--r--tests/unit/engines/test_www500px.py34
-rw-r--r--tests/unit/engines/test_yahoo.py17
-rw-r--r--tests/unit/engines/test_yahoo_news.py3
-rw-r--r--tests/unit/test_utils.py25
-rwxr-xr-xutils/fetch_firefox_version.py73
-rw-r--r--utils/fetch_languages.py266
137 files changed, 40595 insertions, 1564 deletions
diff --git a/AUTHORS.rst b/AUTHORS.rst
index 346f324..674bfd7 100644
--- a/AUTHORS.rst
+++ b/AUTHORS.rst
@@ -83,3 +83,18 @@ generally made searx better:
- Joseph Nuthalapati @josephkiranbabu
- @maiki
- Richard Didier @zeph33
+- Michael Vieria @Themimitoof
+- Richard Nespithal @rndevfx
+- Stanislas @angristan
+- @rinpatch
+- g. s. @usernameisntallowed
+- Léo Bourrel @bourrel
+- @cy8aer
+- @Popolon
+- Alice Ferrazzi @aliceinwire
+- @LiquidLemon
+- @dadosch
+- @Venca24
+- @ZEROF
+- Ivan Skytte Jørgensen @isj-privacore
+- @miicha
diff --git a/CHANGELOG.rst b/CHANGELOG.rst
index 55bd33e..70e9e41 100644
--- a/CHANGELOG.rst
+++ b/CHANGELOG.rst
@@ -1,3 +1,41 @@
+0.15.0 2019.01.06
+=================
+
+- New engines
+
+ - Acgsou (files, images, videos, music)
+ - Duden.de (general)
+ - Seznam (general)
+ - Mojeek (general)
+- New languages
+
+ - Catalan
+ - Welsh
+ - Basque
+ - Persian (Iran)
+ - Galician
+ - Dutch (Belgium)
+ - Telugu
+ - Vietnamese
+- New random answerers
+
+ - sha256
+ - uuidv4
+- New DOI resolsvers
+
+ - sci-hub.tw
+- Fix Vim mode on Firefox
+- Fix custom select in Oscar theme
+- Engine fixes (duckduckgo, google news, currency convert, gigablast, google scholar, wikidata image, etymonline, google videos, startpage, bing image)
+- Minor simple theme fixes
+
+- New Youtube icon in Oscar theme
+- Get DOI rewriters from settings.yml
+- Hide page buttons when infinite scrolling is enabled
+- Update user agent versions
+- Make Oscar style configurable
+- Make suspend times of errored engines configurable
+
0.14.0 2018.02.19
=================
diff --git a/Dockerfile b/Dockerfile
index fc2767a..1680c7b 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,6 +1,6 @@
-FROM alpine:3.5
-MAINTAINER searx <https://github.com/asciimoo/searx>
-LABEL description "A privacy-respecting, hackable metasearch engine."
+FROM alpine:3.8
+LABEL maintainer="searx <https://github.com/asciimoo/searx>"
+LABEL description="A privacy-respecting, hackable metasearch engine."
ENV BASE_URL=False IMAGE_PROXY=False
EXPOSE 8888
@@ -32,6 +32,7 @@ RUN echo "@commuedge http://nl.alpinelinux.org/alpine/edge/community" >> /etc/ap
openssl-dev \
ca-certificates \
tini@commuedge \
+ && pip install --upgrade pip \
&& pip install --no-cache -r requirements.txt \
&& apk del \
build-base \
diff --git a/README.rst b/README.rst
index b6ebe3f..35d14d1 100644
--- a/README.rst
+++ b/README.rst
@@ -4,6 +4,8 @@ searx
A privacy-respecting, hackable `metasearch
engine <https://en.wikipedia.org/wiki/Metasearch_engine>`__.
+Pronunciation: səːks
+
List of `running
instances <https://github.com/asciimoo/searx/wiki/Searx-instances>`__.
diff --git a/debian/patches/debian-changes b/debian/patches/debian-changes
deleted file mode 100644
index a2051d9..0000000
--- a/debian/patches/debian-changes
+++ /dev/null
@@ -1,210 +0,0 @@
-The Debian packaging of searx is maintained in git, using the merging workflow
-described in dgit-maint-merge(7). There isn't a patch queue that can be
-represented as a quilt series.
-
-A detailed breakdown of the changes is available from their canonical
-representation - git commits in the packaging repository. For example, to see
-the changes made by the Debian maintainer in the first upload of upstream
-version 1.2.3, you could use:
-
- % git clone https://git.dgit.debian.org/searx
- % cd searx
- % git log --oneline 1.2.3..debian/1.2.3-1 -- . ':!debian'
-
-(If you have dgit, use `dgit clone searx`, rather than plain `git clone`.)
-
-A single combined diff, containing all the changes, follows.
---- searx-0.14.0+dfsg1.orig/manage.sh
-+++ searx-0.14.0+dfsg1/manage.sh
-@@ -1,11 +1,11 @@
--#!/bin/sh
-+#!/bin/bash
-
- BASE_DIR="$(dirname -- "`readlink -f -- "$0"`")"
- export PATH="$BASE_DIR/node_modules/.bin":$PATH
-
- # the script can be sourced to update the PATH
- # see https://stackoverflow.com/questions/2683279/how-to-detect-if-a-script-is-being-sourced
--if [ $_ != $0 ]; then
-+if [[ $0 != "$BASH_SOURCE" ]]; then
- unset BASE_DIR
- # sourced : exit now
- return
-@@ -132,7 +132,7 @@ npm_packages() {
- }
-
- build_style() {
-- lessc --clean-css="--s1 --advanced --compatibility=ie9" "$BASE_DIR/searx/static/$1" "$BASE_DIR/searx/static/$2"
-+ lessc -x "$BASE_DIR/searx/static/$1" "$BASE_DIR/searx/static/$2"
- }
-
- styles() {
-@@ -144,8 +144,15 @@ styles() {
- build_style themes/courgette/less/style-rtl.less themes/courgette/css/style-rtl.css
- echo '[!] Building pix-art style'
- build_style themes/pix-art/less/style.less themes/pix-art/css/style.css
-- echo '[!] Building bootstrap style'
-- build_style less/bootstrap/bootstrap.less css/bootstrap.min.css
-+ echo '[!] Building simple style'
-+ build_style themes/simple/less/style.less themes/simple/css/searx.min.css
-+ build_style themes/simple/less/style-rtl.less themes/simple/css/searx-rtl.min.css
-+ echo '[!] Building logicodev'
-+ build_style themes/oscar/less/logicodev/oscar.less themes/oscar/css/logicodev.min.css
-+ echo '[!] Building logicodev-dark'
-+ build_style themes/oscar/less/logicodev-dark/oscar.less themes/oscar/css/logicodev-dark.min.css
-+ echo '[!] Building pointhi'
-+ build_style themes/oscar/less/pointhi/oscar.less themes/oscar/css/pointhi.min.css
- }
-
- grunt_build() {
---- searx-0.14.0+dfsg1.orig/searx/settings.yml
-+++ searx-0.14.0+dfsg1/searx/settings.yml
-@@ -16,8 +16,8 @@ server:
- http_protocol_version : "1.0" # 1.0 and 1.1 are supported
-
- ui:
-- static_path : "" # Custom static path - leave it blank if you didn't change
-- templates_path : "" # Custom templates path - leave it blank if you didn't change
-+ static_path : "/usr/share/python3-searx/static" # Custom static path - leave it blank if you didn't change
-+ templates_path : "/usr/share/python3-searx/templates" # Custom templates path - leave it blank if you didn't change
- default_theme : oscar # ui theme
- default_locale : "" # Default interface locale - leave blank to detect from browser information or use codes from the 'locales' config section
-
---- searx-0.14.0+dfsg1.orig/searx/static/themes/oscar/gruntfile.js
-+++ searx-0.14.0+dfsg1/searx/static/themes/oscar/gruntfile.js
-@@ -81,16 +81,9 @@ module.exports = function(grunt) {
- }
- });
-
-- grunt.loadNpmTasks('grunt-contrib-uglify');
-- grunt.loadNpmTasks('grunt-contrib-jshint');
-- grunt.loadNpmTasks('grunt-contrib-watch');
-- grunt.loadNpmTasks('grunt-contrib-concat');
-- grunt.loadNpmTasks('grunt-contrib-less');
-+ grunt.loadNpmTasks('grunt-contrib-uglify', '/usr/lib/nodejs');
-+ grunt.loadNpmTasks('grunt-contrib-concat', '/usr/lib/nodejs');
-
-- grunt.registerTask('test', ['jshint']);
--
-- grunt.registerTask('default', ['jshint', 'concat', 'uglify', 'less']);
--
-- grunt.registerTask('styles', ['less']);
-+ grunt.registerTask('default', ['concat', 'uglify']);
-
- };
---- searx-0.14.0+dfsg1.orig/searx/static/themes/simple/gruntfile.js
-+++ searx-0.14.0+dfsg1/searx/static/themes/simple/gruntfile.js
-@@ -60,12 +60,6 @@ module.exports = function(grunt) {
- production: {
- options: {
- paths: ["less"],
-- plugins: [
-- new (require('less-plugin-clean-css'))({
-- advanced: true,
-- compatibility: 'ie8'
-- })
-- ],
- banner: '/*! searx | <%= grunt.template.today("dd-mm-yyyy") %> | https://github.com/asciimoo/searx */\n'
- },
- files: {
-@@ -139,15 +133,8 @@ module.exports = function(grunt) {
- }
- });
-
-- grunt.loadNpmTasks('grunt-contrib-watch');
-- grunt.loadNpmTasks('grunt-contrib-uglify');
-- grunt.loadNpmTasks('grunt-contrib-jshint');
-- grunt.loadNpmTasks('grunt-contrib-concat');
-- grunt.loadNpmTasks('grunt-contrib-less');
-- grunt.loadNpmTasks('grunt-contrib-cssmin');
-- grunt.loadNpmTasks('grunt-webfont');
-+ grunt.loadNpmTasks('grunt-contrib-uglify', '/usr/lib/nodejs');
-+ grunt.loadNpmTasks('grunt-contrib-concat', '/usr/lib/nodejs');
-
-- grunt.registerTask('test', ['jshint']);
--
-- grunt.registerTask('default', ['jshint', 'concat', 'uglify', 'less:development', 'less:production']);
-+ grunt.registerTask('default', ['concat', 'uglify']);
- };
---- searx-0.14.0+dfsg1.orig/searx/static/themes/simple/js/searx_src/autocomplete.js
-+++ searx-0.14.0+dfsg1/searx/static/themes/simple/js/searx_src/autocomplete.js
-@@ -1,4 +1,51 @@
--(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.AutoComplete = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
-+(function(f){
-+ if(typeof exports=== "object" && typeof module !== "undefined") {
-+ module.exports = f()
-+ } else if(typeof define === "function" && define.amd) {
-+ define([], f)
-+ }else{
-+ var g;
-+ if(typeof window !== "undefined") {
-+ g = window
-+ } else if(typeof global !== "undefined") {
-+ g = global
-+ } else if(typeof self !== "undefined") {
-+ g = self
-+ } else {
-+ g = this
-+ }
-+ g.AutoComplete = f()
-+ }
-+})(function(){
-+ var define, module, exports;
-+ return (function e(t, n, r){
-+ function s(o, u){
-+ if(!n[o]){
-+ if(!t[o]){
-+ var a = typeof require == "function" && require;
-+ if(!u && a)
-+ return a(o, !0);
-+ if(i)
-+ return i(o, !0);
-+ var f = new Error("Cannot find module '" + o + "'");
-+ throw f.code = "MODULE_NOT_FOUND", f
-+ }
-+ var l = n[o] = {
-+ exports:{}
-+ };
-+ t[o][0].call(l.exports,function(e) {
-+ var n = t[o][1][e];
-+ return s(n?n:e)
-+ }, l, l.exports, e, t, n, r)
-+ }
-+ return n[o].exports
-+ }
-+ var i = typeof require == "function" && require;
-+ for(var o = 0; o < r.length; o++)
-+ s(r[o]);
-+ return s
-+ })({
-+ 1:[function(require, module, exports){
- /*
- * @license MIT
- *
---- searx-0.14.0+dfsg1.orig/setup.py
-+++ searx-0.14.0+dfsg1/setup.py
-@@ -51,23 +51,9 @@ setup(
- },
- package_data={
- 'searx': [
-- 'settings.yml',
-- '../README.rst',
-- '../requirements.txt',
-- '../requirements-dev.txt',
- 'data/*',
- 'plugins/*/*',
-- 'static/*.*',
-- 'static/*/*.*',
-- 'static/*/*/*.*',
-- 'static/*/*/*/*.*',
-- 'static/*/*/*/*/*.*',
-- 'templates/*/*.*',
-- 'templates/*/*/*.*',
-- 'tests/*',
-- 'tests/*/*',
-- 'tests/*/*/*',
-- 'translations/*/*/*'
-+ 'translations/*/*/*.mo'
- ],
- },
-
diff --git a/debian/patches/series b/debian/patches/series
deleted file mode 100644
index 7bb8252..0000000
--- a/debian/patches/series
+++ /dev/null
@@ -1 +0,0 @@
-debian-changes
diff --git a/manage.sh b/manage.sh
index 03bb94b..a352ccc 100755
--- a/manage.sh
+++ b/manage.sh
@@ -1,23 +1,15 @@
-#!/bin/bash
+#!/bin/sh
BASE_DIR="$(dirname -- "`readlink -f -- "$0"`")"
-export PATH="$BASE_DIR/node_modules/.bin":$PATH
-# the script can be sourced to update the PATH
-# see https://stackoverflow.com/questions/2683279/how-to-detect-if-a-script-is-being-sourced
-if [[ $0 != "$BASH_SOURCE" ]]; then
- unset BASE_DIR
- # sourced : exit now
- return
-fi
+cd -- "$BASE_DIR"
+set -e
# subshell
PYTHONPATH="$BASE_DIR"
SEARX_DIR="$BASE_DIR/searx"
ACTION="$1"
-cd -- "$BASE_DIR"
-set -e
#
# Python
@@ -56,7 +48,7 @@ install_geckodriver() {
if [ -z "$1" ]; then
if [ -z "$VIRTUAL_ENV" ]; then
- echo "geckodriver can't be installed because VIRTUAL_ENV is not set, you should download it from\n $GECKODRIVER_URL"
+ printf "geckodriver can't be installed because VIRTUAL_ENV is not set, you should download it from\n %s" "$GECKODRIVER_URL"
exit
else
GECKODRIVER_DIR="$VIRTUAL_ENV/bin"
@@ -66,7 +58,7 @@ install_geckodriver() {
mkdir -p -- "$GECKODRIVER_DIR"
fi
- echo "Installing $GECKODRIVER_DIR/geckodriver from\n $GECKODRIVER_URL"
+ printf "Installing %s/geckodriver from\n %s" "$GECKODRIVER_DIR" "$GECKODRIVER_URL"
FILE="`mktemp`"
wget -qO "$FILE" -- "$GECKODRIVER_URL" && tar xz -C "$GECKODRIVER_DIR" -f "$FILE" geckodriver
@@ -117,7 +109,14 @@ tests() {
# Web
#
+npm_path_setup() {
+ which npm || (printf 'Error: npm is not found\n'; exit 1)
+ export PATH="$(npm bin)":$PATH
+}
+
npm_packages() {
+ npm_path_setup
+
echo '[!] install NPM packages'
cd -- "$BASE_DIR"
npm install less@2.7 less-plugin-clean-css grunt-cli
@@ -132,10 +131,14 @@ npm_packages() {
}
build_style() {
- lessc -x "$BASE_DIR/searx/static/$1" "$BASE_DIR/searx/static/$2"
+ npm_path_setup
+
+ lessc --clean-css="--s1 --advanced --compatibility=ie9" "$BASE_DIR/searx/static/$1" "$BASE_DIR/searx/static/$2"
}
styles() {
+ npm_path_setup
+
echo '[!] Building legacy style'
build_style themes/legacy/less/style.less themes/legacy/css/style.css
build_style themes/legacy/less/style-rtl.less themes/legacy/css/style-rtl.css
@@ -144,15 +147,8 @@ styles() {
build_style themes/courgette/less/style-rtl.less themes/courgette/css/style-rtl.css
echo '[!] Building pix-art style'
build_style themes/pix-art/less/style.less themes/pix-art/css/style.css
- echo '[!] Building simple style'
- build_style themes/simple/less/style.less themes/simple/css/searx.min.css
- build_style themes/simple/less/style-rtl.less themes/simple/css/searx-rtl.min.css
- echo '[!] Building logicodev'
- build_style themes/oscar/less/logicodev/oscar.less themes/oscar/css/logicodev.min.css
- echo '[!] Building logicodev-dark'
- build_style themes/oscar/less/logicodev-dark/oscar.less themes/oscar/css/logicodev-dark.min.css
- echo '[!] Building pointhi'
- build_style themes/oscar/less/pointhi/oscar.less themes/oscar/css/pointhi.min.css
+ echo '[!] Building bootstrap style'
+ build_style less/bootstrap/bootstrap.less css/bootstrap.min.css
}
grunt_build() {
diff --git a/requirements.txt b/requirements.txt
index b9f4ec0..fd61b81 100644
--- a/requirements.txt
+++ b/requirements.txt
@@ -1,10 +1,10 @@
certifi==2017.11.5
-flask==0.12.2
+flask==1.0.2
flask-babel==0.11.2
-lxml==4.1.1
-idna==2.5
+lxml==4.2.3
+idna==2.7
pygments==2.1.3
-pyopenssl==17.4.0
-python-dateutil==2.6.1
-pyyaml==3.12
-requests[socks]==2.18.4
+pyopenssl==18.0.0
+python-dateutil==2.7.3
+pyyaml==3.13
+requests[socks]==2.19.1
diff --git a/searx/answerers/random/answerer.py b/searx/answerers/random/answerer.py
index f2b8bf3..b6e8422 100644
--- a/searx/answerers/random/answerer.py
+++ b/searx/answerers/random/answerer.py
@@ -1,6 +1,8 @@
+import hashlib
import random
import string
import sys
+import uuid
from flask_babel import gettext
# required answerer attribute
@@ -16,9 +18,13 @@ else:
random_string_letters = string.ascii_lowercase + string.digits + string.ascii_uppercase
+def random_characters():
+ return [random.choice(random_string_letters)
+ for _ in range(random.randint(8, 32))]
+
+
def random_string():
- return u''.join(random.choice(random_string_letters)
- for _ in range(random.randint(8, 32)))
+ return u''.join(random_characters())
def random_float():
@@ -29,9 +35,21 @@ def random_int():
return unicode(random.randint(-random_int_max, random_int_max))
+def random_sha256():
+ m = hashlib.sha256()
+ m.update(b''.join(random_characters()))
+ return unicode(m.hexdigest())
+
+
+def random_uuid():
+ return unicode(uuid.uuid4())
+
+
random_types = {b'string': random_string,
b'int': random_int,
- b'float': random_float}
+ b'float': random_float,
+ b'sha256': random_sha256,
+ b'uuid': random_uuid}
# required answerer function
diff --git a/searx/data/currencies.json b/searx/data/currencies.json
index bfde5a7..ad4e08f 100644
--- a/searx/data/currencies.json
+++ b/searx/data/currencies.json
@@ -6163,9 +6163,21 @@
],
"scellino keniota": [
"KES"
- ]
+ ],
+ "bitcoin": [
+ "XBT"
+ ]
},
"iso4217": {
+ "XBT":{
+ "fr": "Bitcoin",
+ "en": "Bitcoin",
+ "nl": "Bitcoin",
+ "de": "Bitcoin",
+ "it": "Bitcoin",
+ "hu": "Bitcoin",
+ "es": "Bitcoin"
+ },
"DZD": {
"fr": "Dinar alg\u00e9rien",
"en": "Algerian dinar",
@@ -7652,4 +7664,4 @@
"es": "Libra sudanesa"
}
}
-} \ No newline at end of file
+}
diff --git a/searx/data/engines_languages.json b/searx/data/engines_languages.json
index 8b34c46..2a5eb4e 100644
--- a/searx/data/engines_languages.json
+++ b/searx/data/engines_languages.json
@@ -1 +1,27225 @@
-{"qwant news": ["bg-BG", "sv-SE", "ro-RO", "ms-MY", "pt-PT", "pt-AD", "pt-BR", "fr-FR", "fr-BE", "fr-CH", "fr-AD", "fr-CA", "gd-GB", "ko-KR", "he-IL", "br-FR", "ja-JP", "fi-FI", "eu-FR", "eu-ES", "el-GR", "es-ES", "es-AD", "es-AR", "es-CL", "es-MX", "en-GB", "en-IE", "en-SG", "en-IN", "en-MY", "en-AU", "en-US", "en-CA", "en-PH", "en-NZ", "th-TH", "et-EE", "ca-FR", "ca-ES", "ca-AD", "da-DK", "co-FR", "it-IT", "it-CH", "tr-TR", "cs-CZ", "nl-BE", "nl-NL", "no-NO", "hu-HU", "cy-GB", "pl-PL", "ru-RU", "de-DE", "de-AT", "de-CH"], "bing videos": ["de-DE", "ar-SA", "es-AR", "en-AU", "de-AT", "fr-BE", "nl-BE", "pt-BR", "fr-CA", "en-CA", "ko-KR", "es-ES", "es-US", "en-US", "fr-FR", "zh-HK", "en-IN", "en-ID", "it-IT", "ja-JP", "en-MY", "es-MX", "no-NO", "nl-NL", "pl-PL", "en-GB", "zh-CN", "ru-RU", "en-ZA", "sv-SE", "de-CH", "fr-CH", "zh-TW", "tr-TR"], "bing": ["sq", "de", "ar", "bg", "ca", "cs", "zh-CHS", "zh-CHT", "ko", "hr", "da", "sk", "sl", "es", "et", "fi", "fr", "el", "he", "nl", "hu", "id", "en", "is", "it", "ja", "lv", "lt", "ms", "no", "fa", "pl", "pt-BR", "pt-PT", "ro", "ru", "sr", "sv", "th", "tr", "uk", "vi"], "wikidata": {"io": {"english_name": "Ido", "articles": 27273, "name": "Ido"}, "xh": {"english_name": "Xhosa", "articles": 714, "name": "isiXhosa"}, "ksh": {"english_name": "Ripuarian", "articles": 2836, "name": "Ripoarisch"}, "ha": {"english_name": "Hausa", "articles": 1530, "name": "هَوُسَ"}, "as": {"english_name": "Assamese", "articles": 4808, "name": "অসমীয়া"}, "fy": {"english_name": "West Frisian", "articles": 39195, "name": "Frysk"}, "arc": {"english_name": "Aramaic", "articles": 1622, "name": "ܐܪܡܝܐ"}, "ast": {"english_name": "Asturian", "articles": 51716, "name": "Asturianu"}, "pap": {"english_name": "Papiamentu", "articles": 1888, "name": "Papiamentu"}, "vls": {"english_name": "West Flemish", "articles": 6243, "name": "West-Vlams"}, "zh-classical": {"english_name": "Classical Chinese", "articles": 7007, "name": "古文 / 文言文"}, "yi": {"english_name": "Yiddish", "articles": 14126, "name": "ייִדיש"}, "pl": {"english_name": "Polish", "articles": 1244203, "name": "Polski"}, "ks": {"english_name": "Kashmiri", "articles": 315, "name": "कश्मीरी / كشميري"}, "no": {"english_name": "Norwegian (Bokmål)", "articles": 476388, "name": "Norsk (Bokmål)"}, "wa": {"english_name": "Walloon", "articles": 14611, "name": "Walon"}, "pnt": {"english_name": "Pontic", "articles": 454, "name": "Ποντιακά"}, "ilo": {"english_name": "Ilokano", "articles": 10848, "name": "Ilokano"}, "iu": {"english_name": "Inuktitut", "articles": 399, "name": "ᐃᓄᒃᑎᑐᑦ"}, "se": {"english_name": "Northern Sami", "articles": 7327, "name": "Sámegiella"}, "tn": {"english_name": "Tswana", "articles": 639, "name": "Setswana"}, "ny": {"english_name": "Chichewa", "articles": 381, "name": "Chichewa"}, "da": {"english_name": "Danish", "articles": 232125, "name": "Dansk"}, "gv": {"english_name": "Manx", "articles": 4961, "name": "Gaelg"}, "cbk-zam": {"english_name": "Zamboanga Chavacano", "articles": 3019, "name": "Chavacano de Zamboanga"}, "zh": {"english_name": "Chinese", "articles": 967529, "name": "中文"}, "qu": {"english_name": "Quechua", "articles": 20284, "name": "Runa Simi"}, "cs": {"english_name": "Czech", "articles": 391061, "name": "Čeština"}, "my": {"english_name": "Burmese", "articles": 37500, "name": "မြန်မာဘာသာ"}, "nl": {"english_name": "Dutch", "articles": 1912963, "name": "Nederlands"}, "glk": {"english_name": "Gilaki", "articles": 5680, "name": "گیلکی"}, "be": {"english_name": "Belarusian", "articles": 146603, "name": "Беларуская"}, "dsb": {"english_name": "Lower Sorbian", "articles": 3092, "name": "Dolnoserbski"}, "ml": {"english_name": "Malayalam", "articles": 52442, "name": "മലയാളം"}, "simple": {"english_name": "Simple English", "articles": 128493, "name": "Simple English"}, "bcl": {"english_name": "Central Bicolano", "articles": 7223, "name": "Bikol"}, "oc": {"english_name": "Occitan", "articles": 83602, "name": "Occitan"}, "bar": {"english_name": "Bavarian", "articles": 23153, "name": "Boarisch"}, "bm": {"english_name": "Bambara", "articles": 429, "name": "Bamanankan"}, "de": {"english_name": "German", "articles": 2109224, "name": "Deutsch"}, "gl": {"english_name": "Galician", "articles": 141613, "name": "Galego"}, "fo": {"english_name": "Faroese", "articles": 12610, "name": "Føroyskt"}, "gu": {"english_name": "Gujarati", "articles": 27423, "name": "ગુજરાતી"}, "pag": {"english_name": "Pangasinan", "articles": 2545, "name": "Pangasinan"}, "fur": {"english_name": "Friulian", "articles": 3195, "name": "Furlan"}, "an": {"english_name": "Aragonese", "articles": 32408, "name": "Aragonés"}, "lij": {"english_name": "Ligurian", "articles": 3281, "name": "Líguru"}, "ab": {"english_name": "Abkhazian", "articles": 3336, "name": "Аҧсуа"}, "ig": {"english_name": "Igbo", "articles": 1387, "name": "Igbo"}, "os": {"english_name": "Ossetian", "articles": 10528, "name": "Иронау"}, "mo": {"english_name": "Moldovan", "articles": 394, "name": "Молдовеняскэ"}, "mg": {"english_name": "Malagasy", "articles": 84696, "name": "Malagasy"}, "fiu-vro": {"english_name": "Võro", "articles": 5483, "name": "Võro"}, "sl": {"english_name": "Slovenian", "articles": 158478, "name": "Slovenščina"}, "nov": {"english_name": "Novial", "articles": 1660, "name": "Novial"}, "az": {"english_name": "Azerbaijani", "articles": 126053, "name": "Azərbaycanca"}, "ay": {"english_name": "Aymara", "articles": 4256, "name": "Aymar"}, "za": {"english_name": "Zhuang", "articles": 1167, "name": "Cuengh"}, "es": {"english_name": "Spanish", "articles": 1358005, "name": "Español"}, "ve": {"english_name": "Venda", "articles": 256, "name": "Tshivenda"}, "gan": {"english_name": "Gan", "articles": 6395, "name": "贛語"}, "zh-min-nan": {"english_name": "Min Nan", "articles": 224681, "name": "Bân-lâm-gú"}, "diq": {"english_name": "Zazaki", "articles": 8688, "name": "Zazaki"}, "av": {"english_name": "Avar", "articles": 2312, "name": "Авар"}, "got": {"english_name": "Gothic", "articles": 507, "name": "𐌲𐌿𐍄𐌹𐍃𐌺"}, "sh": {"english_name": "Serbo-Croatian", "articles": 440192, "name": "Srpskohrvatski / Српскохрватски"}, "ps": {"english_name": "Pashto", "articles": 8391, "name": "پښتو"}, "yo": {"english_name": "Yoruba", "articles": 31588, "name": "Yorùbá"}, "sco": {"english_name": "Scots", "articles": 46796, "name": "Scots"}, "bug": {"english_name": "Buginese", "articles": 14131, "name": "Basa Ugi"}, "tum": {"english_name": "Tumbuka", "articles": 567, "name": "chiTumbuka"}, "tg": {"english_name": "Tajik", "articles": 73631, "name": "Тоҷикӣ"}, "kg": {"english_name": "Kongo", "articles": 1176, "name": "KiKongo"}, "gag": {"english_name": "Gagauz", "articles": 2757, "name": "Gagauz"}, "lv": {"english_name": "Latvian", "articles": 79265, "name": "Latviešu"}, "mai": {"english_name": "Maithili", "articles": 11838, "name": "मैथिली"}, "kbd": {"english_name": "Kabardian Circassian", "articles": 1573, "name": "Адыгэбзэ (Adighabze)"}, "ak": {"english_name": "Akan", "articles": 306, "name": "Akana"}, "ckb": {"english_name": "Sorani", "articles": 19805, "name": "Soranî / کوردی"}, "eo": {"english_name": "Esperanto", "articles": 242064, "name": "Esperanto"}, "wo": {"english_name": "Wolof", "articles": 1157, "name": "Wolof"}, "li": {"english_name": "Limburgish", "articles": 12048, "name": "Limburgs"}, "roa-rup": {"english_name": "Aromanian", "articles": 1210, "name": "Armãneashce"}, "is": {"english_name": "Icelandic", "articles": 43613, "name": "Íslenska"}, "nrm": {"english_name": "Norman", "articles": 3627, "name": "Nouormand/Normaund"}, "so": {"english_name": "Somali", "articles": 4981, "name": "Soomaali"}, "bat-smg": {"english_name": "Samogitian", "articles": 16143, "name": "Žemaitėška"}, "eml": {"english_name": "Emilian-Romagnol", "articles": 9083, "name": "Emiliàn e rumagnòl"}, "nv": {"english_name": "Navajo", "articles": 3604, "name": "Diné bizaad"}, "nso": {"english_name": "Northern Sotho", "articles": 7824, "name": "Sepedi"}, "olo": {"english_name": "Livvi-Karelian", "articles": 2358, "name": "Karjalan"}, "cr": {"english_name": "Cree", "articles": 128, "name": "Nehiyaw"}, "mwl": {"english_name": "Mirandese", "articles": 3469, "name": "Mirandés"}, "krc": {"english_name": "Karachay-Balkar", "articles": 2018, "name": "Къарачай-Малкъар (Qarachay-Malqar)"}, "el": {"english_name": "Greek", "articles": 137467, "name": "Ελληνικά"}, "kn": {"english_name": "Kannada", "articles": 22233, "name": "ಕನ್ನಡ"}, "tt": {"english_name": "Tatar", "articles": 72927, "name": "Tatarça / Татарча"}, "haw": {"english_name": "Hawaiian", "articles": 2017, "name": "Hawai`i"}, "ext": {"english_name": "Extremaduran", "articles": 2911, "name": "Estremeñu"}, "xal": {"english_name": "Kalmyk", "articles": 2074, "name": "Хальмг"}, "fa": {"english_name": "Persian", "articles": 576947, "name": "فارسی"}, "la": {"english_name": "Latin", "articles": 127329, "name": "Latina"}, "lmo": {"english_name": "Lombard", "articles": 36249, "name": "Lumbaart"}, "ltg": {"english_name": "Latgalian", "articles": 801, "name": "Latgaļu"}, "war": {"english_name": "Waray-Waray", "articles": 1262905, "name": "Winaray"}, "zea": {"english_name": "Zeelandic", "articles": 4381, "name": "Zeêuws"}, "ia": {"english_name": "Interlingua", "articles": 20561, "name": "Interlingua"}, "kbp": {"english_name": "Kabɩyɛ", "articles": 573, "name": "Kabiye"}, "cy": {"english_name": "Welsh", "articles": 92570, "name": "Cymraeg"}, "na": {"english_name": "Nauruan", "articles": 1283, "name": "dorerin Naoero"}, "gn": {"english_name": "Guarani", "articles": 3217, "name": "Avañe'ẽ"}, "mn": {"english_name": "Mongolian", "articles": 17575, "name": "Монгол"}, "bs": {"english_name": "Bosnian", "articles": 75821, "name": "Bosanski"}, "sah": {"english_name": "Sakha", "articles": 11415, "name": "Саха тыла (Saxa Tyla)"}, "csb": {"english_name": "Kashubian", "articles": 5213, "name": "Kaszëbsczi"}, "rmy": {"english_name": "Romani", "articles": 601, "name": "romani - रोमानी"}, "pih": {"english_name": "Norfolk", "articles": 620, "name": "Norfuk"}, "tl": {"english_name": "Tagalog", "articles": 83924, "name": "Tagalog"}, "mhr": {"english_name": "Meadow Mari", "articles": 9689, "name": "Олык Марий (Olyk Marij)"}, "bpy": {"english_name": "Bishnupriya Manipuri", "articles": 25079, "name": "ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী"}, "stq": {"english_name": "Saterland Frisian", "articles": 3794, "name": "Seeltersk"}, "lrc": {"english_name": "Northern Luri", "articles": 5326, "name": "لۊری شومالی"}, "koi": {"english_name": "Komi-Permyak", "articles": 3453, "name": "Перем Коми (Perem Komi)"}, "hif": {"english_name": "Fiji Hindi", "articles": 9707, "name": "Fiji Hindi"}, "br": {"english_name": "Breton", "articles": 63123, "name": "Brezhoneg"}, "jam": {"english_name": "Jamaican Patois", "articles": 1615, "name": "Jumiekan Kryuol"}, "ja": {"english_name": "Japanese", "articles": 1079370, "name": "日本語"}, "tcy": {"english_name": "Tulu", "articles": 849, "name": "ತುಳು"}, "sq": {"english_name": "Albanian", "articles": 69317, "name": "Shqip"}, "eu": {"english_name": "Basque", "articles": 284158, "name": "Euskara"}, "vo": {"english_name": "Volapük", "articles": 120622, "name": "Volapük"}, "ceb": {"english_name": "Cebuano", "articles": 5382720, "name": "Sinugboanong Binisaya"}, "bh": {"english_name": "Bihari", "articles": 9277, "name": "भोजपुरी"}, "ie": {"english_name": "Interlingue", "articles": 3700, "name": "Interlingue"}, "ang": {"english_name": "Anglo-Saxon", "articles": 2945, "name": "Englisc"}, "pdc": {"english_name": "Pennsylvania German", "articles": 1799, "name": "Deitsch"}, "mdf": {"english_name": "Moksha", "articles": 1179, "name": "Мокшень (Mokshanj Kälj)"}, "si": {"english_name": "Sinhalese", "articles": 13820, "name": "සිංහල"}, "he": {"english_name": "Hebrew", "articles": 213812, "name": "עברית"}, "frr": {"english_name": "North Frisian", "articles": 5475, "name": "Nordfriisk"}, "lbe": {"english_name": "Lak", "articles": 1213, "name": "Лакку"}, "kaa": {"english_name": "Karakalpak", "articles": 1892, "name": "Qaraqalpaqsha"}, "kw": {"english_name": "Cornish", "articles": 3792, "name": "Kernewek/Karnuack"}, "pcd": {"english_name": "Picard", "articles": 3535, "name": "Picard"}, "lo": {"english_name": "Lao", "articles": 2758, "name": "ລາວ"}, "pfl": {"english_name": "Palatinate German", "articles": 2070, "name": "Pälzisch"}, "vi": {"english_name": "Vietnamese", "articles": 1162191, "name": "Tiếng Việt"}, "be-tarask": {"english_name": "Belarusian (Taraškievica)", "articles": 61480, "name": "Беларуская (тарашкевіца)"}, "pms": {"english_name": "Piedmontese", "articles": 64198, "name": "Piemontèis"}, "rn": {"english_name": "Kirundi", "articles": 500, "name": "Kirundi"}, "su": {"english_name": "Sundanese", "articles": 38784, "name": "Basa Sunda"}, "ms": {"english_name": "Malay", "articles": 304280, "name": "Bahasa Melayu"}, "nah": {"english_name": "Nahuatl", "articles": 7119, "name": "Nāhuatl"}, "fr": {"english_name": "French", "articles": 1917429, "name": "Français"}, "ba": {"english_name": "Bashkir", "articles": 40027, "name": "Башҡорт"}, "tpi": {"english_name": "Tok Pisin", "articles": 1425, "name": "Tok Pisin"}, "ff": {"english_name": "Fula", "articles": 224, "name": "Fulfulde"}, "sm": {"english_name": "Samoan", "articles": 786, "name": "Gagana Samoa"}, "bxr": {"english_name": "Buryat", "articles": 2018, "name": "Буряад"}, "tet": {"english_name": "Tetum", "articles": 1418, "name": "Tetun"}, "dv": {"english_name": "Divehi", "articles": 3008, "name": "ދިވެހިބަސް"}, "fj": {"english_name": "Fijian", "articles": 430, "name": "Na Vosa Vakaviti"}, "szl": {"english_name": "Silesian", "articles": 6409, "name": "Ślůnski"}, "en": {"english_name": "English", "articles": 5490540, "name": "English"}, "uz": {"english_name": "Uzbek", "articles": 129075, "name": "O‘zbek"}, "dty": {"english_name": "डोटेली", "articles": 2128, "name": "Doteli"}, "ln": {"english_name": "Lingala", "articles": 2916, "name": "Lingala"}, "vep": {"english_name": "Vepsian", "articles": 5645, "name": "Vepsän"}, "vec": {"english_name": "Venetian", "articles": 10982, "name": "Vèneto"}, "new": {"english_name": "Newar", "articles": 72139, "name": "नेपाल भाषा"}, "ur": {"english_name": "Urdu", "articles": 124450, "name": "اردو"}, "mrj": {"english_name": "Hill Mari", "articles": 10265, "name": "Кырык Мары (Kyryk Mary)"}, "ts": {"english_name": "Tsonga", "articles": 540, "name": "Xitsonga"}, "hu": {"english_name": "Hungarian", "articles": 418142, "name": "Magyar"}, "sk": {"english_name": "Slovak", "articles": 223150, "name": "Slovenčina"}, "id": {"english_name": "Indonesian", "articles": 411506, "name": "Bahasa Indonesia"}, "ga": {"english_name": "Irish", "articles": 44243, "name": "Gaeilge"}, "ru": {"english_name": "Russian", "articles": 1425925, "name": "Русский"}, "to": {"english_name": "Tongan", "articles": 1689, "name": "faka Tonga"}, "chr": {"english_name": "Cherokee", "articles": 883, "name": "ᏣᎳᎩ"}, "hak": {"english_name": "Hakka", "articles": 8009, "name": "Hak-kâ-fa / 客家話"}, "map-bms": {"english_name": "Banyumasan", "articles": 13294, "name": "Basa Banyumasan"}, "gom": {"english_name": "Goan Konkani", "articles": 3380, "name": "गोंयची कोंकणी / Gõychi Konknni"}, "kv": {"english_name": "Komi", "articles": 5254, "name": "Коми"}, "tw": {"english_name": "Twi", "articles": 595, "name": "Twi"}, "bi": {"english_name": "Bislama", "articles": 1140, "name": "Bislama"}, "srn": {"english_name": "Sranan", "articles": 1059, "name": "Sranantongo"}, "lg": {"english_name": "Luganda", "articles": 1154, "name": "Luganda"}, "ady": {"english_name": "Adyghe", "articles": 403, "name": "Адыгэбзэ"}, "udm": {"english_name": "Udmurt", "articles": 4125, "name": "Удмурт кыл"}, "rw": {"english_name": "Kinyarwanda", "articles": 1812, "name": "Ikinyarwanda"}, "ss": {"english_name": "Swati", "articles": 432, "name": "SiSwati"}, "nds-nl": {"english_name": "Dutch Low Saxon", "articles": 6743, "name": "Nedersaksisch"}, "fi": {"english_name": "Finnish", "articles": 423220, "name": "Suomi"}, "ki": {"english_name": "Kikuyu", "articles": 1349, "name": "Gĩkũyũ"}, "tyv": {"english_name": "Tuvan", "articles": 1419, "name": "Тыва"}, "rue": {"english_name": "Rusyn", "articles": 6194, "name": "Русиньскый"}, "th": {"english_name": "Thai", "articles": 119427, "name": "ไทย"}, "bn": {"english_name": "Bengali", "articles": 52765, "name": "বাংলা"}, "ku": {"english_name": "Kurdish", "articles": 23052, "name": "Kurdî / كوردی"}, "ca": {"english_name": "Catalan", "articles": 557833, "name": "Català"}, "sa": {"english_name": "Sanskrit", "articles": 11182, "name": "संस्कृतम्"}, "or": {"english_name": "Oriya", "articles": 13175, "name": "ଓଡ଼ିଆ"}, "st": {"english_name": "Sesotho", "articles": 526, "name": "Sesotho"}, "af": {"english_name": "Afrikaans", "articles": 47107, "name": "Afrikaans"}, "sg": {"english_name": "Sango", "articles": 253, "name": "Sängö"}, "kk": {"english_name": "Kazakh", "articles": 219662, "name": "Қазақша"}, "ik": {"english_name": "Inupiak", "articles": 256, "name": "Iñupiak"}, "kab": {"english_name": "Kabyle", "articles": 2894, "name": "Taqbaylit"}, "hi": {"english_name": "Hindi", "articles": 121543, "name": "हिन्दी"}, "scn": {"english_name": "Sicilian", "articles": 25670, "name": "Sicilianu"}, "mk": {"english_name": "Macedonian", "articles": 90814, "name": "Македонски"}, "wuu": {"english_name": "Wu", "articles": 6073, "name": "吴语"}, "azb": {"english_name": "South Azerbaijani", "articles": 47457, "name": "تۆرکجه"}, "kl": {"english_name": "Greenlandic", "articles": 1638, "name": "Kalaallisut"}, "cu": {"english_name": "Old Church Slavonic", "articles": 591, "name": "Словѣньскъ"}, "crh": {"english_name": "Crimean Tatar", "articles": 5414, "name": "Qırımtatarca"}, "hr": {"english_name": "Croatian", "articles": 178083, "name": "Hrvatski"}, "lez": {"english_name": "Lezgian", "articles": 3852, "name": "Лезги чІал (Lezgi č’al)"}, "ti": {"english_name": "Tigrinya", "articles": 163, "name": "ትግርኛ"}, "jv": {"english_name": "Javanese", "articles": 50293, "name": "Basa Jawa"}, "hy": {"english_name": "Armenian", "articles": 232758, "name": "Հայերեն"}, "ro": {"english_name": "Romanian", "articles": 379516, "name": "Română"}, "mi": {"english_name": "Maori", "articles": 7133, "name": "Māori"}, "sc": {"english_name": "Sardinian", "articles": 5528, "name": "Sardu"}, "myv": {"english_name": "Erzya", "articles": 3939, "name": "Эрзянь (Erzjanj Kelj)"}, "pi": {"english_name": "Pali", "articles": 2525, "name": "पाऴि"}, "bjn": {"english_name": "Banjar", "articles": 1761, "name": "Bahasa Banjar"}, "cv": {"english_name": "Chuvash", "articles": 40690, "name": "Чăваш"}, "zu": {"english_name": "Zulu", "articles": 957, "name": "isiZulu"}, "tk": {"english_name": "Turkmen", "articles": 5267, "name": "تركمن / Туркмен"}, "sv": {"english_name": "Swedish", "articles": 3789235, "name": "Svenska"}, "am": {"english_name": "Amharic", "articles": 13861, "name": "አማርኛ"}, "arz": {"english_name": "Egyptian Arabic", "articles": 17363, "name": "مصرى (Maṣri)"}, "sn": {"english_name": "Shona", "articles": 2868, "name": "chiShona"}, "ee": {"english_name": "Ewe", "articles": 338, "name": "Eʋegbe"}, "xmf": {"english_name": "Mingrelian", "articles": 12279, "name": "მარგალური (Margaluri)"}, "nn": {"english_name": "Norwegian (Nynorsk)", "articles": 135175, "name": "Nynorsk"}, "ch": {"english_name": "Chamorro", "articles": 423, "name": "Chamoru"}, "als": {"english_name": "Alemannic", "articles": 23406, "name": "Alemannisch"}, "nds": {"english_name": "Low Saxon", "articles": 26780, "name": "Plattdüütsch"}, "it": {"english_name": "Italian", "articles": 1388262, "name": "Italiano"}, "dz": {"english_name": "Dzongkha", "articles": 228, "name": "ཇོང་ཁ"}, "tr": {"english_name": "Turkish", "articles": 299690, "name": "Türkçe"}, "ty": {"english_name": "Tahitian", "articles": 1191, "name": "Reo Mā`ohi"}, "pnb": {"english_name": "Western Punjabi", "articles": 45249, "name": "شاہ مکھی پنجابی (Shāhmukhī Pañjābī)"}, "sd": {"english_name": "Sindhi", "articles": 8251, "name": "سنڌي، سندھی ، सिन्ध"}, "rm": {"english_name": "Romansh", "articles": 3455, "name": "Rumantsch"}, "ko": {"english_name": "Korean", "articles": 399300, "name": "한국어"}, "lt": {"english_name": "Lithuanian", "articles": 183261, "name": "Lietuvių"}, "et": {"english_name": "Estonian", "articles": 162182, "name": "Eesti"}, "ky": {"english_name": "Kirghiz", "articles": 80579, "name": "Кыргызча"}, "ht": {"english_name": "Haitian", "articles": 51554, "name": "Krèyol ayisyen"}, "ce": {"english_name": "Chechen", "articles": 164438, "name": "Нохчийн"}, "bg": {"english_name": "Bulgarian", "articles": 235084, "name": "Български"}, "ka": {"english_name": "Georgian", "articles": 117872, "name": "ქართული"}, "frp": {"english_name": "Franco-Provençal", "articles": 2633, "name": "Arpitan"}, "nap": {"english_name": "Neapolitan", "articles": 14470, "name": "Nnapulitano"}, "pa": {"english_name": "Punjabi", "articles": 26967, "name": "ਪੰਜਾਬੀ"}, "pam": {"english_name": "Kapampangan", "articles": 8553, "name": "Kapampangan"}, "lb": {"english_name": "Luxembourgish", "articles": 50445, "name": "Lëtzebuergesch"}, "mr": {"english_name": "Marathi", "articles": 48748, "name": "मराठी"}, "gd": {"english_name": "Scottish Gaelic", "articles": 14594, "name": "Gàidhlig"}, "sw": {"english_name": "Swahili", "articles": 37911, "name": "Kiswahili"}, "ug": {"english_name": "Uyghur", "articles": 3367, "name": "ئۇيغۇر تىلى"}, "sr": {"english_name": "Serbian", "articles": 357090, "name": "Српски / Srpski"}, "km": {"english_name": "Khmer", "articles": 5385, "name": "ភាសាខ្មែរ"}, "pt": {"english_name": "Portuguese", "articles": 979830, "name": "Português"}, "te": {"english_name": "Telugu", "articles": 67631, "name": "తెలుగు"}, "ne": {"english_name": "Nepali", "articles": 30112, "name": "नेपाली"}, "chy": {"english_name": "Cheyenne", "articles": 610, "name": "Tsetsêhestâhese"}, "om": {"english_name": "Oromo", "articles": 728, "name": "Oromoo"}, "jbo": {"english_name": "Lojban", "articles": 1201, "name": "Lojban"}, "bo": {"english_name": "Tibetan", "articles": 5726, "name": "བོད་སྐད"}, "uk": {"english_name": "Ukrainian", "articles": 740713, "name": "Українська"}, "hsb": {"english_name": "Upper Sorbian", "articles": 12354, "name": "Hornjoserbsce"}, "co": {"english_name": "Corsican", "articles": 5460, "name": "Corsu"}, "min": {"english_name": "Minangkabau", "articles": 222028, "name": "Minangkabau"}, "lad": {"english_name": "Ladino", "articles": 4512, "name": "Dzhudezmo"}, "roa-tara": {"english_name": "Tarantino", "articles": 9234, "name": "Tarandíne"}, "ace": {"english_name": "Acehnese", "articles": 7231, "name": "Bahsa Acèh"}, "zh-yue": {"english_name": "Cantonese", "articles": 61128, "name": "粵語"}, "mzn": {"english_name": "Mazandarani", "articles": 12564, "name": "مَزِروني"}, "ar": {"english_name": "Arabic", "articles": 542561, "name": "العربية"}, "ta": {"english_name": "Tamil", "articles": 113411, "name": "தமிழ்"}, "cdo": {"english_name": "Min Dong", "articles": 13442, "name": "Mìng-dĕ̤ng-ngṳ̄"}, "mt": {"english_name": "Maltese", "articles": 3213, "name": "Malti"}}, "duckduckgo": ["ru-RU", "pt-PT", "es-PE", "fr-BE", "tzh-HK", "pt-BR", "tzh-TW", "en-ZA", "ro-RO", "bg-BG", "es-XL", "en-XA", "en-CA", "en-NZ", "pl-PL", "es-MX", "hr-HR", "es-ES", "en-PH", "ms-MY", "vi-VN", "en-IN", "jp-JP", "es-CL", "en-IE", "wt-WT", "nl-NL", "fr-FR", "en-ID", "ca-ES", "en-SG", "hu-HU", "tl-PH", "lv-LV", "de-CH", "nl-BE", "sk-SK", "el-GR", "zh-CN", "es-CO", "kr-KR", "sv-SE", "id-ID", "ca-CT", "fr-CH", "cs-CZ", "he-IL", "da-DK", "de-DE", "en-MY", "es-US", "lt-LT", "uk-UA", "tr-TR", "th-TH", "en-US", "en-UK", "it-IT", "et-EE", "fi-FI", "ar-XA", "fr-CA", "en-AU", "it-CH", "sl-SL", "de-AT", "no-NO", "es-AR"], "ddg definitions": ["ru-RU", "pt-PT", "es-PE", "fr-BE", "tzh-HK", "pt-BR", "tzh-TW", "en-ZA", "ro-RO", "bg-BG", "es-XL", "en-XA", "en-CA", "en-NZ", "pl-PL", "es-MX", "hr-HR", "es-ES", "en-PH", "ms-MY", "vi-VN", "en-IN", "jp-JP", "es-CL", "en-IE", "wt-WT", "nl-NL", "fr-FR", "en-ID", "ca-ES", "en-SG", "hu-HU", "tl-PH", "lv-LV", "de-CH", "nl-BE", "sk-SK", "el-GR", "zh-CN", "es-CO", "kr-KR", "sv-SE", "id-ID", "ca-CT", "fr-CH", "cs-CZ", "he-IL", "da-DK", "de-DE", "en-MY", "es-US", "lt-LT", "uk-UA", "tr-TR", "th-TH", "en-US", "en-UK", "it-IT", "et-EE", "fi-FI", "ar-XA", "fr-CA", "en-AU", "it-CH", "sl-SL", "de-AT", "no-NO", "es-AR"], "yahoo news": ["ar", "bg", "zh-chs", "zh-cht", "hr", "cs", "da", "nl", "en", "et", "fi", "fr", "de", "el", "he", "hu", "it", "ja", "ko", "lv", "lt", "no", "pl", "pt", "ro", "ru", "sk", "sl", "es", "sv", "th", "tr"], "duckduckgo images": ["ru-RU", "pt-PT", "es-PE", "fr-BE", "tzh-HK", "pt-BR", "tzh-TW", "en-ZA", "ro-RO", "bg-BG", "es-XL", "en-XA", "en-CA", "en-NZ", "pl-PL", "es-MX", "hr-HR", "es-ES", "en-PH", "ms-MY", "vi-VN", "en-IN", "jp-JP", "es-CL", "en-IE", "wt-WT", "nl-NL", "fr-FR", "en-ID", "ca-ES", "en-SG", "hu-HU", "tl-PH", "lv-LV", "de-CH", "nl-BE", "sk-SK", "el-GR", "zh-CN", "es-CO", "kr-KR", "sv-SE", "id-ID", "ca-CT", "fr-CH", "cs-CZ", "he-IL", "da-DK", "de-DE", "en-MY", "es-US", "lt-LT", "uk-UA", "tr-TR", "th-TH", "en-US", "en-UK", "it-IT", "et-EE", "fi-FI", "ar-XA", "fr-CA", "en-AU", "it-CH", "sl-SL", "de-AT", "no-NO", "es-AR"], "bing images": ["de-DE", "ar-SA", "es-AR", "en-AU", "de-AT", "fr-BE", "nl-BE", "pt-BR", "fr-CA", "en-CA", "ko-KR", "es-ES", "es-US", "en-US", "fr-FR", "zh-HK", "en-IN", "en-ID", "it-IT", "ja-JP", "en-MY", "es-MX", "no-NO", "nl-NL", "pl-PL", "en-GB", "zh-CN", "ru-RU", "en-ZA", "sv-SE", "de-CH", "fr-CH", "zh-TW", "tr-TR"], "qwant social": ["bg-BG", "sv-SE", "ro-RO", "ms-MY", "pt-PT", "pt-AD", "pt-BR", "fr-FR", "fr-BE", "fr-CH", "fr-AD", "fr-CA", "gd-GB", "ko-KR", "he-IL", "br-FR", "ja-JP", "fi-FI", "eu-FR", "eu-ES", "el-GR", "es-ES", "es-AD", "es-AR", "es-CL", "es-MX", "en-GB", "en-IE", "en-SG", "en-IN", "en-MY", "en-AU", "en-US", "en-CA", "en-PH", "en-NZ", "th-TH", "et-EE", "ca-FR", "ca-ES", "ca-AD", "da-DK", "co-FR", "it-IT", "it-CH", "tr-TR", "cs-CZ", "nl-BE", "nl-NL", "no-NO", "hu-HU", "cy-GB", "pl-PL", "ru-RU", "de-DE", "de-AT", "de-CH"], "swisscows": ["browser", "ar-SA", "es-AR", "en-AU", "de-AT", "fr-BE", "nl-BE", "pt-BR", "en-CA", "fr-CA", "es-CL", "zh-CN", "da-DK", "fi-FI", "fr-FR", "de-DE", "zh-HK", "en-IN", "en-IE", "it-IT", "ja-JP", "ko-KR", "en-MY", "es-MX", "nl-NL", "en-NZ", "no-NO", "en-PH", "pl-PL", "pt-PT", "ru-RU", "en-ZA", "es-ES", "sv-SE", "de-CH", "fr-CH", "zh-TW", "tr-TR", "uk-UA", "en-GB", "en-US", "es-US"], "qwant": ["bg-BG", "sv-SE", "ro-RO", "ms-MY", "pt-PT", "pt-AD", "pt-BR", "fr-FR", "fr-BE", "fr-CH", "fr-AD", "fr-CA", "gd-GB", "ko-KR", "he-IL", "br-FR", "ja-JP", "fi-FI", "eu-FR", "eu-ES", "el-GR", "es-ES", "es-AD", "es-AR", "es-CL", "es-MX", "en-GB", "en-IE", "en-SG", "en-IN", "en-MY", "en-AU", "en-US", "en-CA", "en-PH", "en-NZ", "th-TH", "et-EE", "ca-FR", "ca-ES", "ca-AD", "da-DK", "co-FR", "it-IT", "it-CH", "tr-TR", "cs-CZ", "nl-BE", "nl-NL", "no-NO", "hu-HU", "cy-GB", "pl-PL", "ru-RU", "de-DE", "de-AT", "de-CH"], "google news": {"hy": {"name": "Հայերեն"}, "ro": {"name": "Română"}, "eo": {"name": "Esperanto"}, "is": {"name": "Íslenska"}, "ja": {"name": "日本語"}, "fr": {"name": "Français"}, "zh-CN": {"name": "中文 (简体)"}, "pl": {"name": "Polski"}, "sv": {"name": "Svenska"}, "no": {"name": "Norsk"}, "el": {"name": "Ελληνικά"}, "en": {"name": "English"}, "fa": {"name": "فارسی"}, "da": {"name": "Dansk"}, "it": {"name": "Italiano"}, "tr": {"name": "Türkçe"}, "cs": {"name": "Čeština"}, "nl": {"name": "Nederlands"}, "zh-TW": {"name": "中文 (繁體)"}, "be": {"name": "Беларуская"}, "hu": {"name": "Magyar"}, "sk": {"name": "Slovenčina"}, "uk": {"name": "Українська"}, "ko": {"name": "한국어"}, "lt": {"name": "Lietuvių"}, "ru": {"name": "Русский"}, "af": {"name": "Afrikaans"}, "bg": {"name": "Български"}, "tl": {"name": "Filipino"}, "sw": {"name": "Kiswahili"}, "id": {"name": "Indonesia"}, "sl": {"name": "Slovenščina"}, "pt": {"name": "Português"}, "fi": {"name": "Suomi"}, "es": {"name": "Español"}, "th": {"name": "ไทย"}, "et": {"name": "Eesti"}, "ca": {"name": "Català"}, "de": {"name": "Deutsch"}, "sr": {"name": "Српски"}, "hi": {"name": "हिन्दी"}, "ar": {"name": "العربية"}, "lv": {"name": "Latviešu"}, "iw": {"name": "עברית"}, "hr": {"name": "Hrvatski"}, "vi": {"name": "Tiếng Việt"}}, "google": {"hy": {"name": "Հայերեն"}, "ro": {"name": "Română"}, "eo": {"name": "Esperanto"}, "is": {"name": "Íslenska"}, "ja": {"name": "日本語"}, "fr": {"name": "Français"}, "zh-CN": {"name": "中文 (简体)"}, "pl": {"name": "Polski"}, "sv": {"name": "Svenska"}, "no": {"name": "Norsk"}, "el": {"name": "Ελληνικά"}, "en": {"name": "English"}, "fa": {"name": "فارسی"}, "da": {"name": "Dansk"}, "it": {"name": "Italiano"}, "tr": {"name": "Türkçe"}, "cs": {"name": "Čeština"}, "nl": {"name": "Nederlands"}, "zh-TW": {"name": "中文 (繁體)"}, "be": {"name": "Беларуская"}, "hu": {"name": "Magyar"}, "sk": {"name": "Slovenčina"}, "uk": {"name": "Українська"}, "ko": {"name": "한국어"}, "lt": {"name": "Lietuvių"}, "ru": {"name": "Русский"}, "af": {"name": "Afrikaans"}, "bg": {"name": "Български"}, "tl": {"name": "Filipino"}, "sw": {"name": "Kiswahili"}, "id": {"name": "Indonesia"}, "sl": {"name": "Slovenščina"}, "pt": {"name": "Português"}, "fi": {"name": "Suomi"}, "es": {"name": "Español"}, "th": {"name": "ไทย"}, "et": {"name": "Eesti"}, "ca": {"name": "Català"}, "de": {"name": "Deutsch"}, "sr": {"name": "Српски"}, "hi": {"name": "हिन्दी"}, "ar": {"name": "العربية"}, "lv": {"name": "Latviešu"}, "iw": {"name": "עברית"}, "hr": {"name": "Hrvatski"}, "vi": {"name": "Tiếng Việt"}}, "bing news": ["sq", "de", "ar", "bg", "ca", "cs", "zh-CHS", "zh-CHT", "ko", "hr", "da", "sk", "sl", "es", "et", "fi", "fr", "el", "he", "nl", "hu", "id", "en", "is", "it", "ja", "lv", "lt", "ms", "no", "fa", "pl", "pt-BR", "pt-PT", "ro", "ru", "sr", "sv", "th", "tr", "uk", "vi"], "dailymotion": {"io": {"english_name": "Ido"}, "xh": {"english_name": "Xhosa", "name": "Xhosa"}, "as": {"english_name": "Assamese"}, "fy": {"english_name": "Frisian, Western"}, "ff": {"english_name": "Fulah"}, "pl": {"english_name": "Polish", "name": "polski"}, "ks": {"english_name": "Kashmiri"}, "no": {"english_name": "Norwegian"}, "wa": {"english_name": "Walloon", "name": "Walon"}, "iu": {"english_name": "Inuktitut"}, "se": {"english_name": "Sami, Northern"}, "tn": {"english_name": "Tswana"}, "ny": {"english_name": "Nyanja"}, "da": {"english_name": "Danish", "name": "Dansk"}, "gv": {"english_name": "Manx"}, "zh": {"english_name": "Chinese", "name": "中文"}, "qu": {"english_name": "Quechua"}, "cs": {"english_name": "Czech", "name": "čeština"}, "my": {"english_name": "Burmese"}, "nl": {"english_name": "Dutch", "name": "Nederlands"}, "lu": {"english_name": "Luba-Katanga"}, "be": {"english_name": "Belarusian"}, "ml": {"english_name": "Malayalam"}, "oc": {"english_name": "Occitan", "name": "Occitan"}, "de": {"english_name": "German", "name": "Deutsch"}, "gl": {"english_name": "Galician", "name": "Galego"}, "fo": {"english_name": "Faroese"}, "gu": {"english_name": "Gujarati", "name": "ગુજરાતી"}, "st": {"english_name": "Sotho, Southern"}, "ig": {"english_name": "Igbo"}, "os": {"english_name": "Ossetian"}, "mg": {"english_name": "Malagasy"}, "ki": {"english_name": "Kikuyu"}, "sl": {"english_name": "Slovenian", "name": "slovenščina"}, "az": {"english_name": "Azerbaijani", "name": "Azerbaijani"}, "mn": {"english_name": "Mongolian", "name": "Монгол"}, "za": {"english_name": "Zhuang"}, "es": {"english_name": "Spanish", "name": "Español"}, "an": {"english_name": "Aragonese"}, "av": {"english_name": "Avaric"}, "ay": {"english_name": "Aymara"}, "sh": {"english_name": "Serbo-Croatian", "name": "Serbo-Croatian"}, "ps": {"english_name": "Pushto", "name": "Pushto"}, "yo": {"english_name": "Yoruba"}, "tg": {"english_name": "Tajik"}, "kg": {"english_name": "Kongo"}, "lv": {"english_name": "Latvian", "name": "Latviešu"}, "ak": {"english_name": "Akan"}, "it": {"english_name": "Italian", "name": "Italiano"}, "eo": {"english_name": "Esperanto", "name": "Esperanto"}, "wo": {"english_name": "Wolof"}, "is": {"english_name": "Icelandic", "name": "Íslenska"}, "nv": {"english_name": "Navajo"}, "el": {"english_name": "Greek, Modern (1453-)", "name": "Ελληνικά"}, "kn": {"english_name": "Kannada", "name": "ಕನ್ನಡ"}, "tt": {"english_name": "Tatar", "name": "Татарча"}, "nb": {"english_name": "Norwegian Bokmål", "name": "Norwegian Bokmål"}, "fa": {"english_name": "Persian", "name": "فارسی"}, "la": {"english_name": "Latin"}, "ha": {"english_name": "Hausa"}, "ia": {"english_name": "Interlingua"}, "cy": {"english_name": "Welsh", "name": "Cymraeg"}, "na": {"english_name": "Nauru"}, "gn": {"english_name": "Guarani"}, "uk": {"english_name": "Ukrainian", "name": "українська"}, "kl": {"english_name": "Kalaallisut"}, "bs": {"english_name": "Bosnian", "name": "Bosnian"}, "tk": {"english_name": "Turkmen"}, "tl": {"english_name": "Tagalog"}, "so": {"english_name": "Somali"}, "br": {"english_name": "Breton", "name": "Brezhoneg"}, "ko": {"english_name": "Korean", "name": "한국어"}, "nr": {"english_name": "Ndebele, South"}, "sq": {"english_name": "Albanian"}, "eu": {"english_name": "Basque", "name": "Euskara"}, "vo": {"english_name": "Volapük"}, "ee": {"english_name": "Ewe"}, "ve": {"english_name": "Venda", "name": "Venda"}, "ie": {"english_name": "Interlingue"}, "ng": {"english_name": "Ndonga"}, "si": {"english_name": "Sinhala"}, "sr": {"english_name": "Serbian", "name": "српски"}, "lg": {"english_name": "Ganda"}, "ty": {"english_name": "Tahitian"}, "kw": {"english_name": "Cornish"}, "lo": {"english_name": "Lao"}, "ur": {"english_name": "Urdu"}, "ae": {"english_name": "Avestan"}, "yi": {"english_name": "Yiddish"}, "su": {"english_name": "Sundanese"}, "ms": {"english_name": "Malay", "name": "Malay"}, "ja": {"english_name": "Japanese", "name": "日本語"}, "fr": {"english_name": "French", "name": "français"}, "ba": {"english_name": "Bashkir"}, "dv": {"english_name": "Dhivehi"}, "fj": {"english_name": "Fijian"}, "en": {"english_name": "English"}, "uz": {"english_name": "Uzbek"}, "ln": {"english_name": "Lingala"}, "hu": {"english_name": "Hungarian", "name": "magyar"}, "sm": {"english_name": "Samoan"}, "ts": {"english_name": "Tsonga"}, "bm": {"english_name": "Bambara"}, "sk": {"english_name": "Slovak", "name": "Slovenský"}, "id": {"english_name": "Indonesian", "name": "Indonesian"}, "ga": {"english_name": "Irish", "name": "Gaeilge"}, "ku": {"english_name": "Kurdish"}, "to": {"english_name": "Tonga (Tonga Islands)"}, "cr": {"english_name": "Cree"}, "cu": {"english_name": "Slavic, Church"}, "kv": {"english_name": "Komi"}, "tw": {"english_name": "Twi"}, "sc": {"english_name": "Sardinian"}, "ss": {"english_name": "Swati"}, "fi": {"english_name": "Finnish", "name": "suomi"}, "ne": {"english_name": "Nepali (macrolanguage)"}, "vi": {"english_name": "Vietnamese", "name": "Tiếng Việt"}, "kr": {"english_name": "Kanuri"}, "th": {"english_name": "Thai", "name": "ไทย"}, "ru": {"english_name": "Russian", "name": "русский"}, "ca": {"english_name": "Catalan", "name": "Català"}, "sa": {"english_name": "Sanskrit"}, "or": {"english_name": "Oriya", "name": "Oriya"}, "af": {"english_name": "Afrikaans", "name": "Afrikaans"}, "co": {"english_name": "Corsican"}, "kk": {"english_name": "Kazakh"}, "ik": {"english_name": "Inupiaq"}, "hi": {"english_name": "Hindi", "name": "हिंदी"}, "mk": {"english_name": "Macedonian", "name": "Македонски"}, "ho": {"english_name": "Hiri Motu"}, "hr": {"english_name": "Croatian", "name": "hrvatski"}, "jv": {"english_name": "Javanese"}, "hy": {"english_name": "Armenian"}, "ro": {"english_name": "Romanian", "name": "Română"}, "mi": {"english_name": "Maori", "name": "Reo Māori"}, "rn": {"english_name": "Rundi"}, "pi": {"english_name": "Pali"}, "cv": {"english_name": "Chuvash"}, "zu": {"english_name": "Zulu", "name": "Isi-Zulu"}, "mh": {"english_name": "Marshallese"}, "sv": {"english_name": "Swedish", "name": "Svenska"}, "am": {"english_name": "Amharic", "name": "አማርኛ"}, "sn": {"english_name": "Shona"}, "nn": {"english_name": "Norwegian Nynorsk", "name": "Norwegian Nynorsk"}, "ch": {"english_name": "Chamorro"}, "nd": {"english_name": "Ndebele, North"}, "bi": {"english_name": "Bislama"}, "kj": {"english_name": "Kuanyama"}, "dz": {"english_name": "Dzongkha"}, "tr": {"english_name": "Turkish", "name": "Türkçe"}, "sd": {"english_name": "Sindhi"}, "rm": {"english_name": "Romansh"}, "ii": {"english_name": "Yi, Sichuan"}, "ti": {"english_name": "Tigrinya", "name": "ትግርኛ"}, "lt": {"english_name": "Lithuanian", "name": "Lietuvių"}, "et": {"english_name": "Estonian", "name": "Eesti"}, "ky": {"english_name": "Kirghiz"}, "ht": {"english_name": "Haitian"}, "ce": {"english_name": "Chechen"}, "bg": {"english_name": "Bulgarian", "name": "Български"}, "ka": {"english_name": "Georgian"}, "pa": {"english_name": "Panjabi", "name": "ਪੰਜਾਬੀ"}, "lb": {"english_name": "Luxembourgish"}, "mr": {"english_name": "Marathi", "name": "मराठी"}, "gd": {"english_name": "Gaelic, Scottish"}, "sw": {"english_name": "Swahili (macrolanguage)"}, "ug": {"english_name": "Uighur"}, "he": {"english_name": "Hebrew", "name": "עברית"}, "km": {"english_name": "Khmer, Central"}, "pt": {"english_name": "Portuguese", "name": "Português"}, "te": {"english_name": "Telugu"}, "om": {"english_name": "Oromo"}, "bo": {"english_name": "Tibetan"}, "li": {"english_name": "Limburgan"}, "rw": {"english_name": "Kinyarwanda", "name": "Ikinyarwanda"}, "sg": {"english_name": "Sango"}, "bn": {"english_name": "Bengali", "name": "বাংলা"}, "hz": {"english_name": "Herero"}, "ar": {"english_name": "Arabic", "name": "العربية"}, "oj": {"english_name": "Ojibwa"}, "ta": {"english_name": "Tamil", "name": "தமிழ்"}, "mt": {"english_name": "Maltese", "name": "Malti"}}, "gigablast": [], "wikipedia": {"io": {"english_name": "Ido", "articles": 27273, "name": "Ido"}, "xh": {"english_name": "Xhosa", "articles": 714, "name": "isiXhosa"}, "ksh": {"english_name": "Ripuarian", "articles": 2836, "name": "Ripoarisch"}, "ha": {"english_name": "Hausa", "articles": 1530, "name": "هَوُسَ"}, "as": {"english_name": "Assamese", "articles": 4808, "name": "অসমীয়া"}, "fy": {"english_name": "West Frisian", "articles": 39195, "name": "Frysk"}, "arc": {"english_name": "Aramaic", "articles": 1622, "name": "ܐܪܡܝܐ"}, "ast": {"english_name": "Asturian", "articles": 51716, "name": "Asturianu"}, "pap": {"english_name": "Papiamentu", "articles": 1888, "name": "Papiamentu"}, "vls": {"english_name": "West Flemish", "articles": 6243, "name": "West-Vlams"}, "zh-classical": {"english_name": "Classical Chinese", "articles": 7007, "name": "古文 / 文言文"}, "yi": {"english_name": "Yiddish", "articles": 14126, "name": "ייִדיש"}, "pl": {"english_name": "Polish", "articles": 1244203, "name": "Polski"}, "ks": {"english_name": "Kashmiri", "articles": 315, "name": "कश्मीरी / كشميري"}, "no": {"english_name": "Norwegian (Bokmål)", "articles": 476388, "name": "Norsk (Bokmål)"}, "wa": {"english_name": "Walloon", "articles": 14611, "name": "Walon"}, "pnt": {"english_name": "Pontic", "articles": 454, "name": "Ποντιακά"}, "ilo": {"english_name": "Ilokano", "articles": 10848, "name": "Ilokano"}, "iu": {"english_name": "Inuktitut", "articles": 399, "name": "ᐃᓄᒃᑎᑐᑦ"}, "se": {"english_name": "Northern Sami", "articles": 7327, "name": "Sámegiella"}, "tn": {"english_name": "Tswana", "articles": 639, "name": "Setswana"}, "ny": {"english_name": "Chichewa", "articles": 381, "name": "Chichewa"}, "da": {"english_name": "Danish", "articles": 232125, "name": "Dansk"}, "gv": {"english_name": "Manx", "articles": 4961, "name": "Gaelg"}, "cbk-zam": {"english_name": "Zamboanga Chavacano", "articles": 3019, "name": "Chavacano de Zamboanga"}, "zh": {"english_name": "Chinese", "articles": 967529, "name": "中文"}, "qu": {"english_name": "Quechua", "articles": 20284, "name": "Runa Simi"}, "cs": {"english_name": "Czech", "articles": 391061, "name": "Čeština"}, "my": {"english_name": "Burmese", "articles": 37500, "name": "မြန်မာဘာသာ"}, "nl": {"english_name": "Dutch", "articles": 1912963, "name": "Nederlands"}, "glk": {"english_name": "Gilaki", "articles": 5680, "name": "گیلکی"}, "be": {"english_name": "Belarusian", "articles": 146603, "name": "Беларуская"}, "dsb": {"english_name": "Lower Sorbian", "articles": 3092, "name": "Dolnoserbski"}, "ml": {"english_name": "Malayalam", "articles": 52442, "name": "മലയാളം"}, "simple": {"english_name": "Simple English", "articles": 128493, "name": "Simple English"}, "bcl": {"english_name": "Central Bicolano", "articles": 7223, "name": "Bikol"}, "oc": {"english_name": "Occitan", "articles": 83602, "name": "Occitan"}, "bar": {"english_name": "Bavarian", "articles": 23153, "name": "Boarisch"}, "bm": {"english_name": "Bambara", "articles": 429, "name": "Bamanankan"}, "de": {"english_name": "German", "articles": 2109224, "name": "Deutsch"}, "gl": {"english_name": "Galician", "articles": 141613, "name": "Galego"}, "fo": {"english_name": "Faroese", "articles": 12610, "name": "Føroyskt"}, "gu": {"english_name": "Gujarati", "articles": 27423, "name": "ગુજરાતી"}, "pag": {"english_name": "Pangasinan", "articles": 2545, "name": "Pangasinan"}, "fur": {"english_name": "Friulian", "articles": 3195, "name": "Furlan"}, "an": {"english_name": "Aragonese", "articles": 32408, "name": "Aragonés"}, "lij": {"english_name": "Ligurian", "articles": 3281, "name": "Líguru"}, "ab": {"english_name": "Abkhazian", "articles": 3336, "name": "Аҧсуа"}, "ig": {"english_name": "Igbo", "articles": 1387, "name": "Igbo"}, "os": {"english_name": "Ossetian", "articles": 10528, "name": "Иронау"}, "mo": {"english_name": "Moldovan", "articles": 394, "name": "Молдовеняскэ"}, "mg": {"english_name": "Malagasy", "articles": 84696, "name": "Malagasy"}, "fiu-vro": {"english_name": "Võro", "articles": 5483, "name": "Võro"}, "sl": {"english_name": "Slovenian", "articles": 158478, "name": "Slovenščina"}, "nov": {"english_name": "Novial", "articles": 1660, "name": "Novial"}, "az": {"english_name": "Azerbaijani", "articles": 126053, "name": "Azərbaycanca"}, "ay": {"english_name": "Aymara", "articles": 4256, "name": "Aymar"}, "za": {"english_name": "Zhuang", "articles": 1167, "name": "Cuengh"}, "es": {"english_name": "Spanish", "articles": 1358005, "name": "Español"}, "ve": {"english_name": "Venda", "articles": 256, "name": "Tshivenda"}, "gan": {"english_name": "Gan", "articles": 6395, "name": "贛語"}, "zh-min-nan": {"english_name": "Min Nan", "articles": 224681, "name": "Bân-lâm-gú"}, "diq": {"english_name": "Zazaki", "articles": 8688, "name": "Zazaki"}, "av": {"english_name": "Avar", "articles": 2312, "name": "Авар"}, "got": {"english_name": "Gothic", "articles": 507, "name": "𐌲𐌿𐍄𐌹𐍃𐌺"}, "sh": {"english_name": "Serbo-Croatian", "articles": 440192, "name": "Srpskohrvatski / Српскохрватски"}, "ps": {"english_name": "Pashto", "articles": 8391, "name": "پښتو"}, "yo": {"english_name": "Yoruba", "articles": 31588, "name": "Yorùbá"}, "sco": {"english_name": "Scots", "articles": 46796, "name": "Scots"}, "bug": {"english_name": "Buginese", "articles": 14131, "name": "Basa Ugi"}, "tum": {"english_name": "Tumbuka", "articles": 567, "name": "chiTumbuka"}, "tg": {"english_name": "Tajik", "articles": 73631, "name": "Тоҷикӣ"}, "kg": {"english_name": "Kongo", "articles": 1176, "name": "KiKongo"}, "gag": {"english_name": "Gagauz", "articles": 2757, "name": "Gagauz"}, "lv": {"english_name": "Latvian", "articles": 79265, "name": "Latviešu"}, "mai": {"english_name": "Maithili", "articles": 11838, "name": "मैथिली"}, "kbd": {"english_name": "Kabardian Circassian", "articles": 1573, "name": "Адыгэбзэ (Adighabze)"}, "ak": {"english_name": "Akan", "articles": 306, "name": "Akana"}, "ckb": {"english_name": "Sorani", "articles": 19805, "name": "Soranî / کوردی"}, "eo": {"english_name": "Esperanto", "articles": 242064, "name": "Esperanto"}, "wo": {"english_name": "Wolof", "articles": 1157, "name": "Wolof"}, "li": {"english_name": "Limburgish", "articles": 12048, "name": "Limburgs"}, "roa-rup": {"english_name": "Aromanian", "articles": 1210, "name": "Armãneashce"}, "is": {"english_name": "Icelandic", "articles": 43613, "name": "Íslenska"}, "nrm": {"english_name": "Norman", "articles": 3627, "name": "Nouormand/Normaund"}, "so": {"english_name": "Somali", "articles": 4981, "name": "Soomaali"}, "bat-smg": {"english_name": "Samogitian", "articles": 16143, "name": "Žemaitėška"}, "eml": {"english_name": "Emilian-Romagnol", "articles": 9083, "name": "Emiliàn e rumagnòl"}, "nv": {"english_name": "Navajo", "articles": 3604, "name": "Diné bizaad"}, "nso": {"english_name": "Northern Sotho", "articles": 7824, "name": "Sepedi"}, "olo": {"english_name": "Livvi-Karelian", "articles": 2358, "name": "Karjalan"}, "cr": {"english_name": "Cree", "articles": 128, "name": "Nehiyaw"}, "mwl": {"english_name": "Mirandese", "articles": 3469, "name": "Mirandés"}, "krc": {"english_name": "Karachay-Balkar", "articles": 2018, "name": "Къарачай-Малкъар (Qarachay-Malqar)"}, "el": {"english_name": "Greek", "articles": 137467, "name": "Ελληνικά"}, "kn": {"english_name": "Kannada", "articles": 22233, "name": "ಕನ್ನಡ"}, "tt": {"english_name": "Tatar", "articles": 72927, "name": "Tatarça / Татарча"}, "haw": {"english_name": "Hawaiian", "articles": 2017, "name": "Hawai`i"}, "ext": {"english_name": "Extremaduran", "articles": 2911, "name": "Estremeñu"}, "xal": {"english_name": "Kalmyk", "articles": 2074, "name": "Хальмг"}, "fa": {"english_name": "Persian", "articles": 576947, "name": "فارسی"}, "la": {"english_name": "Latin", "articles": 127329, "name": "Latina"}, "lmo": {"english_name": "Lombard", "articles": 36249, "name": "Lumbaart"}, "ltg": {"english_name": "Latgalian", "articles": 801, "name": "Latgaļu"}, "war": {"english_name": "Waray-Waray", "articles": 1262905, "name": "Winaray"}, "zea": {"english_name": "Zeelandic", "articles": 4381, "name": "Zeêuws"}, "ia": {"english_name": "Interlingua", "articles": 20561, "name": "Interlingua"}, "kbp": {"english_name": "Kabɩyɛ", "articles": 573, "name": "Kabiye"}, "cy": {"english_name": "Welsh", "articles": 92570, "name": "Cymraeg"}, "na": {"english_name": "Nauruan", "articles": 1283, "name": "dorerin Naoero"}, "gn": {"english_name": "Guarani", "articles": 3217, "name": "Avañe'ẽ"}, "mn": {"english_name": "Mongolian", "articles": 17575, "name": "Монгол"}, "bs": {"english_name": "Bosnian", "articles": 75821, "name": "Bosanski"}, "sah": {"english_name": "Sakha", "articles": 11415, "name": "Саха тыла (Saxa Tyla)"}, "csb": {"english_name": "Kashubian", "articles": 5213, "name": "Kaszëbsczi"}, "rmy": {"english_name": "Romani", "articles": 601, "name": "romani - रोमानी"}, "pih": {"english_name": "Norfolk", "articles": 620, "name": "Norfuk"}, "tl": {"english_name": "Tagalog", "articles": 83924, "name": "Tagalog"}, "mhr": {"english_name": "Meadow Mari", "articles": 9689, "name": "Олык Марий (Olyk Marij)"}, "bpy": {"english_name": "Bishnupriya Manipuri", "articles": 25079, "name": "ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী"}, "stq": {"english_name": "Saterland Frisian", "articles": 3794, "name": "Seeltersk"}, "lrc": {"english_name": "Northern Luri", "articles": 5326, "name": "لۊری شومالی"}, "koi": {"english_name": "Komi-Permyak", "articles": 3453, "name": "Перем Коми (Perem Komi)"}, "hif": {"english_name": "Fiji Hindi", "articles": 9707, "name": "Fiji Hindi"}, "br": {"english_name": "Breton", "articles": 63123, "name": "Brezhoneg"}, "jam": {"english_name": "Jamaican Patois", "articles": 1615, "name": "Jumiekan Kryuol"}, "ja": {"english_name": "Japanese", "articles": 1079370, "name": "日本語"}, "tcy": {"english_name": "Tulu", "articles": 849, "name": "ತುಳು"}, "sq": {"english_name": "Albanian", "articles": 69317, "name": "Shqip"}, "eu": {"english_name": "Basque", "articles": 284158, "name": "Euskara"}, "vo": {"english_name": "Volapük", "articles": 120622, "name": "Volapük"}, "ceb": {"english_name": "Cebuano", "articles": 5382720, "name": "Sinugboanong Binisaya"}, "bh": {"english_name": "Bihari", "articles": 9277, "name": "भोजपुरी"}, "ie": {"english_name": "Interlingue", "articles": 3700, "name": "Interlingue"}, "ang": {"english_name": "Anglo-Saxon", "articles": 2945, "name": "Englisc"}, "pdc": {"english_name": "Pennsylvania German", "articles": 1799, "name": "Deitsch"}, "mdf": {"english_name": "Moksha", "articles": 1179, "name": "Мокшень (Mokshanj Kälj)"}, "si": {"english_name": "Sinhalese", "articles": 13820, "name": "සිංහල"}, "he": {"english_name": "Hebrew", "articles": 213812, "name": "עברית"}, "frr": {"english_name": "North Frisian", "articles": 5475, "name": "Nordfriisk"}, "lbe": {"english_name": "Lak", "articles": 1213, "name": "Лакку"}, "kaa": {"english_name": "Karakalpak", "articles": 1892, "name": "Qaraqalpaqsha"}, "kw": {"english_name": "Cornish", "articles": 3792, "name": "Kernewek/Karnuack"}, "pcd": {"english_name": "Picard", "articles": 3535, "name": "Picard"}, "lo": {"english_name": "Lao", "articles": 2758, "name": "ລາວ"}, "pfl": {"english_name": "Palatinate German", "articles": 2070, "name": "Pälzisch"}, "vi": {"english_name": "Vietnamese", "articles": 1162191, "name": "Tiếng Việt"}, "be-tarask": {"english_name": "Belarusian (Taraškievica)", "articles": 61480, "name": "Беларуская (тарашкевіца)"}, "pms": {"english_name": "Piedmontese", "articles": 64198, "name": "Piemontèis"}, "rn": {"english_name": "Kirundi", "articles": 500, "name": "Kirundi"}, "su": {"english_name": "Sundanese", "articles": 38784, "name": "Basa Sunda"}, "ms": {"english_name": "Malay", "articles": 304280, "name": "Bahasa Melayu"}, "nah": {"english_name": "Nahuatl", "articles": 7119, "name": "Nāhuatl"}, "fr": {"english_name": "French", "articles": 1917429, "name": "Français"}, "ba": {"english_name": "Bashkir", "articles": 40027, "name": "Башҡорт"}, "tpi": {"english_name": "Tok Pisin", "articles": 1425, "name": "Tok Pisin"}, "ff": {"english_name": "Fula", "articles": 224, "name": "Fulfulde"}, "sm": {"english_name": "Samoan", "articles": 786, "name": "Gagana Samoa"}, "bxr": {"english_name": "Buryat", "articles": 2018, "name": "Буряад"}, "tet": {"english_name": "Tetum", "articles": 1418, "name": "Tetun"}, "dv": {"english_name": "Divehi", "articles": 3008, "name": "ދިވެހިބަސް"}, "fj": {"english_name": "Fijian", "articles": 430, "name": "Na Vosa Vakaviti"}, "szl": {"english_name": "Silesian", "articles": 6409, "name": "Ślůnski"}, "en": {"english_name": "English", "articles": 5490540, "name": "English"}, "uz": {"english_name": "Uzbek", "articles": 129075, "name": "O‘zbek"}, "dty": {"english_name": "डोटेली", "articles": 2128, "name": "Doteli"}, "ln": {"english_name": "Lingala", "articles": 2916, "name": "Lingala"}, "vep": {"english_name": "Vepsian", "articles": 5645, "name": "Vepsän"}, "vec": {"english_name": "Venetian", "articles": 10982, "name": "Vèneto"}, "new": {"english_name": "Newar", "articles": 72139, "name": "नेपाल भाषा"}, "ur": {"english_name": "Urdu", "articles": 124450, "name": "اردو"}, "mrj": {"english_name": "Hill Mari", "articles": 10265, "name": "Кырык Мары (Kyryk Mary)"}, "ts": {"english_name": "Tsonga", "articles": 540, "name": "Xitsonga"}, "hu": {"english_name": "Hungarian", "articles": 418142, "name": "Magyar"}, "sk": {"english_name": "Slovak", "articles": 223150, "name": "Slovenčina"}, "id": {"english_name": "Indonesian", "articles": 411506, "name": "Bahasa Indonesia"}, "ga": {"english_name": "Irish", "articles": 44243, "name": "Gaeilge"}, "ru": {"english_name": "Russian", "articles": 1425925, "name": "Русский"}, "to": {"english_name": "Tongan", "articles": 1689, "name": "faka Tonga"}, "chr": {"english_name": "Cherokee", "articles": 883, "name": "ᏣᎳᎩ"}, "hak": {"english_name": "Hakka", "articles": 8009, "name": "Hak-kâ-fa / 客家話"}, "map-bms": {"english_name": "Banyumasan", "articles": 13294, "name": "Basa Banyumasan"}, "gom": {"english_name": "Goan Konkani", "articles": 3380, "name": "गोंयची कोंकणी / Gõychi Konknni"}, "kv": {"english_name": "Komi", "articles": 5254, "name": "Коми"}, "tw": {"english_name": "Twi", "articles": 595, "name": "Twi"}, "bi": {"english_name": "Bislama", "articles": 1140, "name": "Bislama"}, "srn": {"english_name": "Sranan", "articles": 1059, "name": "Sranantongo"}, "lg": {"english_name": "Luganda", "articles": 1154, "name": "Luganda"}, "ady": {"english_name": "Adyghe", "articles": 403, "name": "Адыгэбзэ"}, "udm": {"english_name": "Udmurt", "articles": 4125, "name": "Удмурт кыл"}, "rw": {"english_name": "Kinyarwanda", "articles": 1812, "name": "Ikinyarwanda"}, "ss": {"english_name": "Swati", "articles": 432, "name": "SiSwati"}, "nds-nl": {"english_name": "Dutch Low Saxon", "articles": 6743, "name": "Nedersaksisch"}, "fi": {"english_name": "Finnish", "articles": 423220, "name": "Suomi"}, "ki": {"english_name": "Kikuyu", "articles": 1349, "name": "Gĩkũyũ"}, "tyv": {"english_name": "Tuvan", "articles": 1419, "name": "Тыва"}, "rue": {"english_name": "Rusyn", "articles": 6194, "name": "Русиньскый"}, "th": {"english_name": "Thai", "articles": 119427, "name": "ไทย"}, "bn": {"english_name": "Bengali", "articles": 52765, "name": "বাংলা"}, "ku": {"english_name": "Kurdish", "articles": 23052, "name": "Kurdî / كوردی"}, "ca": {"english_name": "Catalan", "articles": 557833, "name": "Català"}, "sa": {"english_name": "Sanskrit", "articles": 11182, "name": "संस्कृतम्"}, "or": {"english_name": "Oriya", "articles": 13175, "name": "ଓଡ଼ିଆ"}, "st": {"english_name": "Sesotho", "articles": 526, "name": "Sesotho"}, "af": {"english_name": "Afrikaans", "articles": 47107, "name": "Afrikaans"}, "sg": {"english_name": "Sango", "articles": 253, "name": "Sängö"}, "kk": {"english_name": "Kazakh", "articles": 219662, "name": "Қазақша"}, "ik": {"english_name": "Inupiak", "articles": 256, "name": "Iñupiak"}, "kab": {"english_name": "Kabyle", "articles": 2894, "name": "Taqbaylit"}, "hi": {"english_name": "Hindi", "articles": 121543, "name": "हिन्दी"}, "scn": {"english_name": "Sicilian", "articles": 25670, "name": "Sicilianu"}, "mk": {"english_name": "Macedonian", "articles": 90814, "name": "Македонски"}, "wuu": {"english_name": "Wu", "articles": 6073, "name": "吴语"}, "azb": {"english_name": "South Azerbaijani", "articles": 47457, "name": "تۆرکجه"}, "kl": {"english_name": "Greenlandic", "articles": 1638, "name": "Kalaallisut"}, "cu": {"english_name": "Old Church Slavonic", "articles": 591, "name": "Словѣньскъ"}, "crh": {"english_name": "Crimean Tatar", "articles": 5414, "name": "Qırımtatarca"}, "hr": {"english_name": "Croatian", "articles": 178083, "name": "Hrvatski"}, "lez": {"english_name": "Lezgian", "articles": 3852, "name": "Лезги чІал (Lezgi č’al)"}, "ti": {"english_name": "Tigrinya", "articles": 163, "name": "ትግርኛ"}, "jv": {"english_name": "Javanese", "articles": 50293, "name": "Basa Jawa"}, "hy": {"english_name": "Armenian", "articles": 232758, "name": "Հայերեն"}, "ro": {"english_name": "Romanian", "articles": 379516, "name": "Română"}, "mi": {"english_name": "Maori", "articles": 7133, "name": "Māori"}, "sc": {"english_name": "Sardinian", "articles": 5528, "name": "Sardu"}, "myv": {"english_name": "Erzya", "articles": 3939, "name": "Эрзянь (Erzjanj Kelj)"}, "pi": {"english_name": "Pali", "articles": 2525, "name": "पाऴि"}, "bjn": {"english_name": "Banjar", "articles": 1761, "name": "Bahasa Banjar"}, "cv": {"english_name": "Chuvash", "articles": 40690, "name": "Чăваш"}, "zu": {"english_name": "Zulu", "articles": 957, "name": "isiZulu"}, "tk": {"english_name": "Turkmen", "articles": 5267, "name": "تركمن / Туркмен"}, "sv": {"english_name": "Swedish", "articles": 3789235, "name": "Svenska"}, "am": {"english_name": "Amharic", "articles": 13861, "name": "አማርኛ"}, "arz": {"english_name": "Egyptian Arabic", "articles": 17363, "name": "مصرى (Maṣri)"}, "sn": {"english_name": "Shona", "articles": 2868, "name": "chiShona"}, "ee": {"english_name": "Ewe", "articles": 338, "name": "Eʋegbe"}, "xmf": {"english_name": "Mingrelian", "articles": 12279, "name": "მარგალური (Margaluri)"}, "nn": {"english_name": "Norwegian (Nynorsk)", "articles": 135175, "name": "Nynorsk"}, "ch": {"english_name": "Chamorro", "articles": 423, "name": "Chamoru"}, "als": {"english_name": "Alemannic", "articles": 23406, "name": "Alemannisch"}, "nds": {"english_name": "Low Saxon", "articles": 26780, "name": "Plattdüütsch"}, "it": {"english_name": "Italian", "articles": 1388262, "name": "Italiano"}, "dz": {"english_name": "Dzongkha", "articles": 228, "name": "ཇོང་ཁ"}, "tr": {"english_name": "Turkish", "articles": 299690, "name": "Türkçe"}, "ty": {"english_name": "Tahitian", "articles": 1191, "name": "Reo Mā`ohi"}, "pnb": {"english_name": "Western Punjabi", "articles": 45249, "name": "شاہ مکھی پنجابی (Shāhmukhī Pañjābī)"}, "sd": {"english_name": "Sindhi", "articles": 8251, "name": "سنڌي، سندھی ، सिन्ध"}, "rm": {"english_name": "Romansh", "articles": 3455, "name": "Rumantsch"}, "ko": {"english_name": "Korean", "articles": 399300, "name": "한국어"}, "lt": {"english_name": "Lithuanian", "articles": 183261, "name": "Lietuvių"}, "et": {"english_name": "Estonian", "articles": 162182, "name": "Eesti"}, "ky": {"english_name": "Kirghiz", "articles": 80579, "name": "Кыргызча"}, "ht": {"english_name": "Haitian", "articles": 51554, "name": "Krèyol ayisyen"}, "ce": {"english_name": "Chechen", "articles": 164438, "name": "Нохчийн"}, "bg": {"english_name": "Bulgarian", "articles": 235084, "name": "Български"}, "ka": {"english_name": "Georgian", "articles": 117872, "name": "ქართული"}, "frp": {"english_name": "Franco-Provençal", "articles": 2633, "name": "Arpitan"}, "nap": {"english_name": "Neapolitan", "articles": 14470, "name": "Nnapulitano"}, "pa": {"english_name": "Punjabi", "articles": 26967, "name": "ਪੰਜਾਬੀ"}, "pam": {"english_name": "Kapampangan", "articles": 8553, "name": "Kapampangan"}, "lb": {"english_name": "Luxembourgish", "articles": 50445, "name": "Lëtzebuergesch"}, "mr": {"english_name": "Marathi", "articles": 48748, "name": "मराठी"}, "gd": {"english_name": "Scottish Gaelic", "articles": 14594, "name": "Gàidhlig"}, "sw": {"english_name": "Swahili", "articles": 37911, "name": "Kiswahili"}, "ug": {"english_name": "Uyghur", "articles": 3367, "name": "ئۇيغۇر تىلى"}, "sr": {"english_name": "Serbian", "articles": 357090, "name": "Српски / Srpski"}, "km": {"english_name": "Khmer", "articles": 5385, "name": "ភាសាខ្មែរ"}, "pt": {"english_name": "Portuguese", "articles": 979830, "name": "Português"}, "te": {"english_name": "Telugu", "articles": 67631, "name": "తెలుగు"}, "ne": {"english_name": "Nepali", "articles": 30112, "name": "नेपाली"}, "chy": {"english_name": "Cheyenne", "articles": 610, "name": "Tsetsêhestâhese"}, "om": {"english_name": "Oromo", "articles": 728, "name": "Oromoo"}, "jbo": {"english_name": "Lojban", "articles": 1201, "name": "Lojban"}, "bo": {"english_name": "Tibetan", "articles": 5726, "name": "བོད་སྐད"}, "uk": {"english_name": "Ukrainian", "articles": 740713, "name": "Українська"}, "hsb": {"english_name": "Upper Sorbian", "articles": 12354, "name": "Hornjoserbsce"}, "co": {"english_name": "Corsican", "articles": 5460, "name": "Corsu"}, "min": {"english_name": "Minangkabau", "articles": 222028, "name": "Minangkabau"}, "lad": {"english_name": "Ladino", "articles": 4512, "name": "Dzhudezmo"}, "roa-tara": {"english_name": "Tarantino", "articles": 9234, "name": "Tarandíne"}, "ace": {"english_name": "Acehnese", "articles": 7231, "name": "Bahsa Acèh"}, "zh-yue": {"english_name": "Cantonese", "articles": 61128, "name": "粵語"}, "mzn": {"english_name": "Mazandarani", "articles": 12564, "name": "مَزِروني"}, "ar": {"english_name": "Arabic", "articles": 542561, "name": "العربية"}, "ta": {"english_name": "Tamil", "articles": 113411, "name": "தமிழ்"}, "cdo": {"english_name": "Min Dong", "articles": 13442, "name": "Mìng-dĕ̤ng-ngṳ̄"}, "mt": {"english_name": "Maltese", "articles": 3213, "name": "Malti"}}, "qwant images": ["bg-BG", "sv-SE", "ro-RO", "ms-MY", "pt-PT", "pt-AD", "pt-BR", "fr-FR", "fr-BE", "fr-CH", "fr-AD", "fr-CA", "gd-GB", "ko-KR", "he-IL", "br-FR", "ja-JP", "fi-FI", "eu-FR", "eu-ES", "el-GR", "es-ES", "es-AD", "es-AR", "es-CL", "es-MX", "en-GB", "en-IE", "en-SG", "en-IN", "en-MY", "en-AU", "en-US", "en-CA", "en-PH", "en-NZ", "th-TH", "et-EE", "ca-FR", "ca-ES", "ca-AD", "da-DK", "co-FR", "it-IT", "it-CH", "tr-TR", "cs-CZ", "nl-BE", "nl-NL", "no-NO", "hu-HU", "cy-GB", "pl-PL", "ru-RU", "de-DE", "de-AT", "de-CH"], "yahoo": ["ar", "bg", "zh-chs", "zh-cht", "hr", "cs", "da", "nl", "en", "et", "fi", "fr", "de", "el", "he", "hu", "it", "ja", "ko", "lv", "lt", "no", "pl", "pt", "ro", "ru", "sk", "sl", "es", "sv", "th", "tr"]} \ No newline at end of file
+{
+ "duckduckgo images": [
+ "ar-XA",
+ "bg-BG",
+ "ca-CT",
+ "ca-ES",
+ "cs-CZ",
+ "da-DK",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "el-GR",
+ "en-AU",
+ "en-CA",
+ "en-ID",
+ "en-IE",
+ "en-IN",
+ "en-MY",
+ "en-NZ",
+ "en-PH",
+ "en-SG",
+ "en-UK",
+ "en-US",
+ "en-ZA",
+ "es-AR",
+ "es-CL",
+ "es-CO",
+ "es-ES",
+ "es-MX",
+ "es-PE",
+ "es-US",
+ "et-EE",
+ "fi-FI",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "he-IL",
+ "hr-HR",
+ "hu-HU",
+ "id-ID",
+ "it-CH",
+ "it-IT",
+ "jp-JP",
+ "kr-KR",
+ "lt-LT",
+ "lv-LV",
+ "ms-MY",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-BR",
+ "pt-PT",
+ "ro-RO",
+ "ru-RU",
+ "sk-SK",
+ "sl-SL",
+ "sv-SE",
+ "th-TH",
+ "tl-PH",
+ "tr-TR",
+ "tzh-HK",
+ "tzh-TW",
+ "vi-VN",
+ "wt-WT",
+ "zh-CN"
+ ],
+ "dailymotion": {
+ "xtw": {
+ "english_name": "Tawandê"
+ },
+ "xtv": {
+ "english_name": "Thawa"
+ },
+ "xtu": {
+ "english_name": "Mixtec, Cuyamecalco"
+ },
+ "xtt": {
+ "english_name": "Mixtec, Tacahua"
+ },
+ "xts": {
+ "english_name": "Mixtec, Sindihui"
+ },
+ "xtr": {
+ "english_name": "Tripuri, Early"
+ },
+ "xtq": {
+ "english_name": "Tumshuqese"
+ },
+ "xtp": {
+ "english_name": "Mixtec, San Miguel Piedras"
+ },
+ "xtz": {
+ "english_name": "Tasmanian"
+ },
+ "xty": {
+ "english_name": "Mixtec, Yoloxochitl"
+ },
+ "xtg": {
+ "english_name": "Gaulish, Transalpine"
+ },
+ "xte": {
+ "english_name": "Ketengban"
+ },
+ "xtd": {
+ "english_name": "Mixtec, Diuxi-Tilantongo"
+ },
+ "xtc": {
+ "english_name": "Katcha-Kadugli-Miri"
+ },
+ "xtb": {
+ "english_name": "Mixtec, Chazumba"
+ },
+ "xta": {
+ "english_name": "Mixtec, Alcozauca"
+ },
+ "xto": {
+ "english_name": "Tokharian A"
+ },
+ "xtn": {
+ "english_name": "Mixtec, Northern Tlaxiaco"
+ },
+ "xtm": {
+ "english_name": "Mixtec, Magdalena Peñasco"
+ },
+ "xtl": {
+ "english_name": "Mixtec, Tijaltepec"
+ },
+ "xtj": {
+ "english_name": "Mixtec, San Juan Teita"
+ },
+ "xti": {
+ "english_name": "Mixtec, Sinicahua"
+ },
+ "xth": {
+ "english_name": "Yitha Yitha"
+ },
+ "wji": {
+ "english_name": "Warji"
+ },
+ "wja": {
+ "english_name": "Waja"
+ },
+ "tmv": {
+ "english_name": "Tembo (Motembo)"
+ },
+ "txo": {
+ "english_name": "Toto"
+ },
+ "txn": {
+ "english_name": "Tarangan, West"
+ },
+ "txm": {
+ "english_name": "Tomini"
+ },
+ "txi": {
+ "english_name": "Ikpeng"
+ },
+ "txh": {
+ "english_name": "Thracian"
+ },
+ "txg": {
+ "english_name": "Tangut"
+ },
+ "txe": {
+ "english_name": "Totoli"
+ },
+ "txc": {
+ "english_name": "Tsetsaut"
+ },
+ "txb": {
+ "english_name": "Tokharian B"
+ },
+ "txa": {
+ "english_name": "Tombonuo"
+ },
+ "txy": {
+ "english_name": "Malagasy, Tanosy"
+ },
+ "txx": {
+ "english_name": "Tatana"
+ },
+ "txu": {
+ "english_name": "Kayapó"
+ },
+ "txt": {
+ "english_name": "Citak"
+ },
+ "txs": {
+ "english_name": "Tonsea"
+ },
+ "txr": {
+ "english_name": "Tartessian"
+ },
+ "txq": {
+ "english_name": "Tii"
+ },
+ "dne": {
+ "english_name": "Ndendeule"
+ },
+ "dnd": {
+ "english_name": "Daonda"
+ },
+ "dng": {
+ "english_name": "Dungan"
+ },
+ "dna": {
+ "english_name": "Dani, Upper Grand Valley"
+ },
+ "dnn": {
+ "english_name": "Dzùùngoo"
+ },
+ "dni": {
+ "english_name": "Dani, Lower Grand Valley"
+ },
+ "dnk": {
+ "english_name": "Dengka"
+ },
+ "dnj": {
+ "english_name": "Dan"
+ },
+ "dnu": {
+ "english_name": "Danau"
+ },
+ "dnt": {
+ "english_name": "Dani, Mid Grand Valley"
+ },
+ "dnw": {
+ "english_name": "Dani, Western"
+ },
+ "dnv": {
+ "english_name": "Danu"
+ },
+ "dnr": {
+ "english_name": "Danaru"
+ },
+ "dny": {
+ "english_name": "Dení"
+ },
+ "jmx": {
+ "english_name": "Mixtec, Western Juxtlahuaca"
+ },
+ "jmr": {
+ "english_name": "Kamara"
+ },
+ "jms": {
+ "english_name": "Mashi (Nigeria)"
+ },
+ "jmw": {
+ "english_name": "Mouwase"
+ },
+ "jmi": {
+ "english_name": "Jimi (Nigeria)"
+ },
+ "jmn": {
+ "english_name": "Naga, Makuri"
+ },
+ "jml": {
+ "english_name": "Jumli"
+ },
+ "jmb": {
+ "english_name": "Zumbun"
+ },
+ "jmc": {
+ "english_name": "Machame"
+ },
+ "jma": {
+ "english_name": "Dima"
+ },
+ "jmd": {
+ "english_name": "Yamdena"
+ },
+ "czt": {
+ "english_name": "Chin, Zotung"
+ },
+ "czk": {
+ "english_name": "Knaanic"
+ },
+ "czh": {
+ "english_name": "Chinese, Huizhou"
+ },
+ "czn": {
+ "english_name": "Chatino, Zenzontepec"
+ },
+ "czo": {
+ "english_name": "Chinese, Min Zhong"
+ },
+ "hod": {
+ "english_name": "Holma"
+ },
+ "hoe": {
+ "english_name": "Horom"
+ },
+ "hob": {
+ "english_name": "Mari (Madang Province)"
+ },
+ "hoc": {
+ "english_name": "Ho"
+ },
+ "hoa": {
+ "english_name": "Hoava"
+ },
+ "hoo": {
+ "english_name": "Holoholo"
+ },
+ "hol": {
+ "english_name": "Holu"
+ },
+ "hom": {
+ "english_name": "Homa"
+ },
+ "hoj": {
+ "english_name": "Hadothi"
+ },
+ "hoh": {
+ "english_name": "Hobyót"
+ },
+ "hoi": {
+ "english_name": "Holikachuk"
+ },
+ "hov": {
+ "english_name": "Hovongan"
+ },
+ "how": {
+ "english_name": "Honi"
+ },
+ "hot": {
+ "english_name": "Hote"
+ },
+ "hor": {
+ "english_name": "Horo"
+ },
+ "hos": {
+ "english_name": "Ho Chi Minh City Sign Language"
+ },
+ "hop": {
+ "english_name": "Hopi"
+ },
+ "hoz": {
+ "english_name": "Hozo"
+ },
+ "hoy": {
+ "english_name": "Holiya"
+ },
+ "tqm": {
+ "english_name": "Turumsa"
+ },
+ "zal": {
+ "english_name": "Zauzou"
+ },
+ "fir": {
+ "english_name": "Firan"
+ },
+ "fip": {
+ "english_name": "Fipa"
+ },
+ "fiw": {
+ "english_name": "Fiwaga"
+ },
+ "fit": {
+ "english_name": "Finnish, Tornedalen"
+ },
+ "fia": {
+ "english_name": "Nobiin"
+ },
+ "fie": {
+ "english_name": "Fyer"
+ },
+ "fil": {
+ "english_name": "Filipino"
+ },
+ "tqq": {
+ "english_name": "Tunni"
+ },
+ "tch": {
+ "english_name": "Creole English, Turks And Caicos"
+ },
+ "mdj": {
+ "english_name": "Mangbetu"
+ },
+ "mdk": {
+ "english_name": "Mangbutu"
+ },
+ "mdh": {
+ "english_name": "Maguindanaon"
+ },
+ "mdi": {
+ "english_name": "Mamvu"
+ },
+ "mdn": {
+ "english_name": "Mbati"
+ },
+ "mdl": {
+ "english_name": "Maltese Sign Language"
+ },
+ "mdm": {
+ "english_name": "Mayogo"
+ },
+ "mdb": {
+ "english_name": "Morigi"
+ },
+ "mdc": {
+ "english_name": "Male (Papua New Guinea)"
+ },
+ "mda": {
+ "english_name": "Mada (Nigeria)"
+ },
+ "mdf": {
+ "english_name": "Moksha"
+ },
+ "mdg": {
+ "english_name": "Massalat"
+ },
+ "mdd": {
+ "english_name": "Mbum"
+ },
+ "mde": {
+ "english_name": "Maba (Chad)"
+ },
+ "mdz": {
+ "english_name": "Suruí Do Pará"
+ },
+ "mdx": {
+ "english_name": "Dizin"
+ },
+ "mdy": {
+ "english_name": "Male (Ethiopia)"
+ },
+ "mdr": {
+ "english_name": "Mandar"
+ },
+ "mds": {
+ "english_name": "Maria (Papua New Guinea)"
+ },
+ "mdp": {
+ "english_name": "Mbala"
+ },
+ "mdq": {
+ "english_name": "Mbole"
+ },
+ "mdv": {
+ "english_name": "Mixtec, Santa Lucía Monteverde"
+ },
+ "mdw": {
+ "english_name": "Mbosi"
+ },
+ "mdt": {
+ "english_name": "Mbere"
+ },
+ "mdu": {
+ "english_name": "Mboko"
+ },
+ "ru": {
+ "name": "русский",
+ "english_name": "Russian"
+ },
+ "rw": {
+ "name": "Ikinyarwanda",
+ "english_name": "Kinyarwanda"
+ },
+ "smz": {
+ "english_name": "Simeku"
+ },
+ "smy": {
+ "english_name": "Semnani"
+ },
+ "smx": {
+ "english_name": "Samba"
+ },
+ "smw": {
+ "english_name": "Sumbawa"
+ },
+ "smv": {
+ "english_name": "Samvedi"
+ },
+ "smu": {
+ "english_name": "Somray"
+ },
+ "smt": {
+ "english_name": "Simte"
+ },
+ "sms": {
+ "english_name": "Sami, Skolt"
+ },
+ "smr": {
+ "english_name": "Simeulue"
+ },
+ "smq": {
+ "english_name": "Samo"
+ },
+ "dsq": {
+ "english_name": "Tadaksahak"
+ },
+ "dsn": {
+ "english_name": "Dusner"
+ },
+ "dso": {
+ "english_name": "Desiya"
+ },
+ "dsl": {
+ "english_name": "Danish Sign Language"
+ },
+ "sml": {
+ "english_name": "Sama, Central"
+ },
+ "smk": {
+ "english_name": "Bolinao"
+ },
+ "smj": {
+ "english_name": "Lule Sami"
+ },
+ "dsh": {
+ "english_name": "Daasanach"
+ },
+ "dsi": {
+ "english_name": "Disa"
+ },
+ "smg": {
+ "english_name": "Simbali"
+ },
+ "rm": {
+ "english_name": "Romansh"
+ },
+ "rn": {
+ "english_name": "Rundi"
+ },
+ "ro": {
+ "name": "Română",
+ "english_name": "Romanian"
+ },
+ "dsb": {
+ "english_name": "Sorbian, Lower"
+ },
+ "smb": {
+ "english_name": "Simbari"
+ },
+ "sma": {
+ "english_name": "Sami, Southern"
+ },
+ "syo": {
+ "english_name": "Suoy"
+ },
+ "syn": {
+ "english_name": "Senaya"
+ },
+ "sym": {
+ "english_name": "Samo, Maya"
+ },
+ "atg": {
+ "english_name": "Ivbie North-Okpela-Arhe"
+ },
+ "atd": {
+ "english_name": "Manobo, Ata"
+ },
+ "ate": {
+ "english_name": "Atemble"
+ },
+ "atb": {
+ "english_name": "Zaiwa"
+ },
+ "atc": {
+ "english_name": "Atsahuaca"
+ },
+ "ata": {
+ "english_name": "Pele-Ata"
+ },
+ "atn": {
+ "english_name": "Ashtiani"
+ },
+ "ato": {
+ "english_name": "Atong"
+ },
+ "atl": {
+ "english_name": "Agta, Mt. Iraya"
+ },
+ "atm": {
+ "english_name": "Ata"
+ },
+ "atj": {
+ "english_name": "Atikamekw"
+ },
+ "atk": {
+ "english_name": "Ati"
+ },
+ "ati": {
+ "english_name": "Attié"
+ },
+ "atv": {
+ "english_name": "Altai, Northern"
+ },
+ "atw": {
+ "english_name": "Atsugewi"
+ },
+ "att": {
+ "english_name": "Atta, Pamplona"
+ },
+ "atu": {
+ "english_name": "Reel"
+ },
+ "atr": {
+ "english_name": "Waimiri-Atroari"
+ },
+ "ats": {
+ "english_name": "Gros Ventre"
+ },
+ "atp": {
+ "english_name": "Atta, Pudtol"
+ },
+ "atq": {
+ "english_name": "Aralle-Tabulahan"
+ },
+ "atz": {
+ "english_name": "Arta"
+ },
+ "atx": {
+ "english_name": "Arutani"
+ },
+ "aty": {
+ "english_name": "Aneityum"
+ },
+ "kfv": {
+ "english_name": "Kurmukar"
+ },
+ "kfw": {
+ "english_name": "Naga, Kharam"
+ },
+ "kft": {
+ "english_name": "Kanjari"
+ },
+ "kfu": {
+ "english_name": "Katkari"
+ },
+ "kfr": {
+ "english_name": "Kachchi"
+ },
+ "kfs": {
+ "english_name": "Bilaspuri"
+ },
+ "kfp": {
+ "english_name": "Korwa"
+ },
+ "kfq": {
+ "english_name": "Korku"
+ },
+ "kfz": {
+ "english_name": "Koromfé"
+ },
+ "kfx": {
+ "english_name": "Pahari, Kullu"
+ },
+ "kfy": {
+ "english_name": "Kumaoni"
+ },
+ "kff": {
+ "english_name": "Koya"
+ },
+ "kfg": {
+ "english_name": "Kudiya"
+ },
+ "kfd": {
+ "english_name": "Koraga, Korra"
+ },
+ "kfe": {
+ "english_name": "Kota (India)"
+ },
+ "kfb": {
+ "english_name": "Kolami, Northwestern"
+ },
+ "kfc": {
+ "english_name": "Konda-Dora"
+ },
+ "kfa": {
+ "english_name": "Kodava"
+ },
+ "kfn": {
+ "english_name": "Kuk"
+ },
+ "kfo": {
+ "english_name": "Koro (Côte d'Ivoire)"
+ },
+ "kfl": {
+ "english_name": "Kung"
+ },
+ "kfm": {
+ "english_name": "Khunsari"
+ },
+ "kfj": {
+ "english_name": "Kemiehua"
+ },
+ "kfk": {
+ "english_name": "Kinnauri"
+ },
+ "kfh": {
+ "english_name": "Kurichiya"
+ },
+ "kfi": {
+ "english_name": "Kurumba, Kannada"
+ },
+ "xib": {
+ "english_name": "Iberian"
+ },
+ "xii": {
+ "english_name": "Xiri"
+ },
+ "xil": {
+ "english_name": "Illyrian"
+ },
+ "xin": {
+ "english_name": "Xinca"
+ },
+ "xip": {
+ "english_name": "Xipináwa"
+ },
+ "xir": {
+ "english_name": "Xiriâna"
+ },
+ "xiv": {
+ "english_name": "Indus Valley Language"
+ },
+ "xiy": {
+ "english_name": "Xipaya"
+ },
+ "nzs": {
+ "english_name": "New Zealand Sign Language"
+ },
+ "nzu": {
+ "english_name": "Teke-Nzikou"
+ },
+ "nzz": {
+ "english_name": "Dogon, Nanga Dama"
+ },
+ "nzy": {
+ "english_name": "Nzakambay"
+ },
+ "nzb": {
+ "english_name": "Njebi"
+ },
+ "nza": {
+ "english_name": "Mbembe, Tigon"
+ },
+ "nzk": {
+ "english_name": "Nzakara"
+ },
+ "nzi": {
+ "english_name": "Nzima"
+ },
+ "nzm": {
+ "english_name": "Naga, Zeme"
+ },
+ "tnr": {
+ "english_name": "Ménik"
+ },
+ "vgr": {
+ "english_name": "Vaghri"
+ },
+ "lpx": {
+ "english_name": "Lopit"
+ },
+ "lpo": {
+ "english_name": "Lipo"
+ },
+ "lpn": {
+ "english_name": "Naga, Long Phuri"
+ },
+ "lpe": {
+ "english_name": "Lepki"
+ },
+ "lpa": {
+ "english_name": "Lelepa"
+ },
+ "ztm": {
+ "english_name": "Zapotec, San Agustín Mixtepec"
+ },
+ "ztl": {
+ "english_name": "Zapotec, Lapaguía-Guivini"
+ },
+ "ztn": {
+ "english_name": "Zapotec, Santa Catarina Albarradas"
+ },
+ "zte": {
+ "english_name": "Zapotec, Elotepec"
+ },
+ "ztg": {
+ "english_name": "Zapotec, Xanaguía"
+ },
+ "zty": {
+ "english_name": "Zapotec, Yatee"
+ },
+ "ztx": {
+ "english_name": "Zapotec, Zaachila"
+ },
+ "ztu": {
+ "english_name": "Zapotec, Güilá"
+ },
+ "ztt": {
+ "english_name": "Zapotec, Tejalapan"
+ },
+ "ztq": {
+ "english_name": "Zapotec, Quioquitani-Quierí"
+ },
+ "ztp": {
+ "english_name": "Zapotec, Loxicha"
+ },
+ "zts": {
+ "english_name": "Zapotec, Tilquiapan"
+ },
+ "smp": {
+ "english_name": "Samaritan"
+ },
+ "irx": {
+ "english_name": "Kamberau"
+ },
+ "iry": {
+ "english_name": "Iraya"
+ },
+ "irr": {
+ "english_name": "Ir"
+ },
+ "iru": {
+ "english_name": "Irula"
+ },
+ "irh": {
+ "english_name": "Irarutu"
+ },
+ "iri": {
+ "english_name": "Irigwe"
+ },
+ "irk": {
+ "english_name": "Iraqw"
+ },
+ "irn": {
+ "english_name": "Irántxe"
+ },
+ "xvn": {
+ "english_name": "Vandalic"
+ },
+ "xve": {
+ "english_name": "Venetic"
+ },
+ "ire": {
+ "english_name": "Iresim"
+ },
+ "wtw": {
+ "english_name": "Wotu"
+ },
+ "rgr": {
+ "english_name": "Resígaro"
+ },
+ "rgs": {
+ "english_name": "Roglai, Southern"
+ },
+ "wtf": {
+ "english_name": "Watiwa"
+ },
+ "wth": {
+ "english_name": "Wathawurrung"
+ },
+ "smn": {
+ "english_name": "Sami, Inari"
+ },
+ "wtk": {
+ "english_name": "Watakataui"
+ },
+ "wtm": {
+ "english_name": "Mewati"
+ },
+ "rgu": {
+ "english_name": "Ringgou"
+ },
+ "smm": {
+ "english_name": "Musasa"
+ },
+ "and": {
+ "english_name": "Ansus"
+ },
+ "prd": {
+ "english_name": "Parsi-Dari"
+ },
+ "anf": {
+ "english_name": "Animere"
+ },
+ "prf": {
+ "english_name": "Paranan"
+ },
+ "gxx": {
+ "english_name": "Wè Southern"
+ },
+ "frc": {
+ "english_name": "French, Cajun"
+ },
+ "anb": {
+ "english_name": "Andoa"
+ },
+ "frd": {
+ "english_name": "Fordata"
+ },
+ "frk": {
+ "english_name": "Frankish"
+ },
+ "anc": {
+ "english_name": "Ngas"
+ },
+ "fro": {
+ "english_name": "French, Old (842-ca. 1400)"
+ },
+ "frm": {
+ "english_name": "French, Middle (ca. 1400-1600)"
+ },
+ "frs": {
+ "english_name": "Frisian, Eastern"
+ },
+ "frr": {
+ "english_name": "Frisian, Northern"
+ },
+ "frq": {
+ "english_name": "Forak"
+ },
+ "frp": {
+ "english_name": "Arpitan"
+ },
+ "frt": {
+ "english_name": "Fortsenal"
+ },
+ "pro": {
+ "english_name": "Provençal, Old (to 1500)"
+ },
+ "rge": {
+ "english_name": "Romano-Greek"
+ },
+ "prn": {
+ "english_name": "Prasuni"
+ },
+ "pri": {
+ "english_name": "Paicî"
+ },
+ "ani": {
+ "english_name": "Andi"
+ },
+ "prk": {
+ "english_name": "Parauk"
+ },
+ "ant": {
+ "english_name": "Antakarinya"
+ },
+ "rgk": {
+ "english_name": "Rangkas"
+ },
+ "prt": {
+ "english_name": "Phai"
+ },
+ "prw": {
+ "english_name": "Parawen"
+ },
+ "sjr": {
+ "english_name": "Siar-Lak"
+ },
+ "rgn": {
+ "english_name": "Romagnol"
+ },
+ "anp": {
+ "english_name": "Angika"
+ },
+ "sjp": {
+ "english_name": "Surjapuri"
+ },
+ "prp": {
+ "english_name": "Parsi"
+ },
+ "anr": {
+ "english_name": "Andh"
+ },
+ "tzx": {
+ "english_name": "Tabriak"
+ },
+ "ans": {
+ "english_name": "Anserma"
+ },
+ "qwm": {
+ "english_name": "Kuman (Russia)"
+ },
+ "sjw": {
+ "english_name": "Shawnee"
+ },
+ "tza": {
+ "english_name": "Tanzanian Sign Language"
+ },
+ "tzh": {
+ "english_name": "Tzeltal"
+ },
+ "tzj": {
+ "english_name": "Tz'utujil"
+ },
+ "tzm": {
+ "english_name": "Tamazight, Central Atlas"
+ },
+ "tzl": {
+ "english_name": "Talossan"
+ },
+ "tzo": {
+ "english_name": "Tzotzil"
+ },
+ "tzn": {
+ "english_name": "Tugun"
+ },
+ "dho": {
+ "english_name": "Dhodia"
+ },
+ "dhn": {
+ "english_name": "Dhanki"
+ },
+ "dhm": {
+ "english_name": "Zemba"
+ },
+ "dhl": {
+ "english_name": "Dhalandji"
+ },
+ "dhi": {
+ "english_name": "Dhimal"
+ },
+ "dhg": {
+ "english_name": "Djangu"
+ },
+ "anx": {
+ "english_name": "Andra-Hus"
+ },
+ "dhd": {
+ "english_name": "Dhundari"
+ },
+ "any": {
+ "english_name": "Anyin"
+ },
+ "dhx": {
+ "english_name": "Dhungaloo"
+ },
+ "dhw": {
+ "english_name": "Dhanwar (Nepal)"
+ },
+ "dhv": {
+ "english_name": "Dehu"
+ },
+ "dhu": {
+ "english_name": "Dhurga"
+ },
+ "dhs": {
+ "english_name": "Dhaiso"
+ },
+ "dhr": {
+ "english_name": "Dhargari"
+ },
+ "sjo": {
+ "english_name": "Xibe"
+ },
+ "sjl": {
+ "english_name": "Sajalong"
+ },
+ "jku": {
+ "english_name": "Labir"
+ },
+ "sjm": {
+ "english_name": "Mapun"
+ },
+ "jkp": {
+ "english_name": "Karen, Paku"
+ },
+ "jkr": {
+ "english_name": "Koro (India)"
+ },
+ "jkm": {
+ "english_name": "Karen, Mobwa"
+ },
+ "jko": {
+ "english_name": "Kubo"
+ },
+ "sja": {
+ "english_name": "Epena"
+ },
+ "sjg": {
+ "english_name": "Assangori"
+ },
+ "sjd": {
+ "english_name": "Sami, Kildin"
+ },
+ "smd": {
+ "english_name": "Sama"
+ },
+ "hah": {
+ "english_name": "Hahon"
+ },
+ "bnz": {
+ "english_name": "Beezen"
+ },
+ "bny": {
+ "english_name": "Bintulu"
+ },
+ "bnx": {
+ "english_name": "Bangubangu"
+ },
+ "hal": {
+ "english_name": "Halang"
+ },
+ "ham": {
+ "english_name": "Hewa"
+ },
+ "han": {
+ "english_name": "Hangaza"
+ },
+ "hao": {
+ "english_name": "Hakö"
+ },
+ "bns": {
+ "english_name": "Bundeli"
+ },
+ "bnr": {
+ "english_name": "Butmas-Tur"
+ },
+ "bnq": {
+ "english_name": "Bantik"
+ },
+ "hac": {
+ "english_name": "Gurani"
+ },
+ "had": {
+ "english_name": "Hatam"
+ },
+ "hae": {
+ "english_name": "Oromo, Eastern"
+ },
+ "haf": {
+ "english_name": "Haiphong Sign Language"
+ },
+ "hag": {
+ "english_name": "Hanga"
+ },
+ "hax": {
+ "english_name": "Haida, Southern"
+ },
+ "bnj": {
+ "english_name": "Tawbuid, Eastern"
+ },
+ "bni": {
+ "english_name": "Bangi"
+ },
+ "bno": {
+ "english_name": "Bantoanon"
+ },
+ "bnn": {
+ "english_name": "Bunun"
+ },
+ "bnm": {
+ "english_name": "Batanga"
+ },
+ "bnl": {
+ "english_name": "Boon"
+ },
+ "hap": {
+ "english_name": "Hupla"
+ },
+ "haq": {
+ "english_name": "Ha"
+ },
+ "har": {
+ "english_name": "Harari"
+ },
+ "has": {
+ "english_name": "Haisla"
+ },
+ "bng": {
+ "english_name": "Benga"
+ },
+ "bnf": {
+ "english_name": "Masiwang"
+ },
+ "bne": {
+ "english_name": "Bintauna"
+ },
+ "bnd": {
+ "english_name": "Banda (Indonesia)"
+ },
+ "ola": {
+ "english_name": "Walungge"
+ },
+ "old": {
+ "english_name": "Mochi"
+ },
+ "ole": {
+ "english_name": "Olekha"
+ },
+ "olk": {
+ "english_name": "Olkol"
+ },
+ "olm": {
+ "english_name": "Oloma"
+ },
+ "olo": {
+ "english_name": "Livvi"
+ },
+ "olr": {
+ "english_name": "Olrat"
+ },
+ "umu": {
+ "english_name": "Munsee"
+ },
+ "ump": {
+ "english_name": "Umpila"
+ },
+ "for": {
+ "english_name": "Fore"
+ },
+ "fos": {
+ "english_name": "Siraya"
+ },
+ "fod": {
+ "english_name": "Foodo"
+ },
+ "umd": {
+ "english_name": "Umbindhamu"
+ },
+ "umg": {
+ "english_name": "Umbuygamu"
+ },
+ "uma": {
+ "english_name": "Umatilla"
+ },
+ "umc": {
+ "english_name": "Marrucinian"
+ },
+ "umb": {
+ "english_name": "Umbundu"
+ },
+ "umm": {
+ "english_name": "Umon"
+ },
+ "fom": {
+ "english_name": "Foma"
+ },
+ "fon": {
+ "english_name": "Fon"
+ },
+ "umn": {
+ "english_name": "Naga, Makyan"
+ },
+ "umi": {
+ "english_name": "Ukit"
+ },
+ "foi": {
+ "english_name": "Foi"
+ },
+ "mbl": {
+ "english_name": "Maxakalí"
+ },
+ "mbm": {
+ "english_name": "Ombamba"
+ },
+ "mbn": {
+ "english_name": "Macaguán"
+ },
+ "mbo": {
+ "english_name": "Mbo (Cameroon)"
+ },
+ "mbh": {
+ "english_name": "Mangseng"
+ },
+ "mbi": {
+ "english_name": "Manobo, Ilianen"
+ },
+ "mbj": {
+ "english_name": "Nadëb"
+ },
+ "mbk": {
+ "english_name": "Malol"
+ },
+ "mbd": {
+ "english_name": "Manobo, Dibabawon"
+ },
+ "mbe": {
+ "english_name": "Molale"
+ },
+ "mbf": {
+ "english_name": "Malay, Baba"
+ },
+ "soj": {
+ "english_name": "Soi"
+ },
+ "mba": {
+ "english_name": "Higaonon"
+ },
+ "mbb": {
+ "english_name": "Manobo, Western Bukidnon"
+ },
+ "mbc": {
+ "english_name": "Macushi"
+ },
+ "soq": {
+ "english_name": "Kanasi"
+ },
+ "sop": {
+ "english_name": "Songe"
+ },
+ "sos": {
+ "english_name": "Seeku"
+ },
+ "sor": {
+ "english_name": "Somrai"
+ },
+ "mbx": {
+ "english_name": "Mari (East Sepik Province)"
+ },
+ "mby": {
+ "english_name": "Memoni"
+ },
+ "mbz": {
+ "english_name": "Mixtec, Amoltepec"
+ },
+ "sov": {
+ "english_name": "Sonsorol"
+ },
+ "mbt": {
+ "english_name": "Manobo, Matigsalug"
+ },
+ "mbu": {
+ "english_name": "Mbula-Bwazza"
+ },
+ "mbv": {
+ "english_name": "Mbulungish"
+ },
+ "mbw": {
+ "english_name": "Maring"
+ },
+ "mbp": {
+ "english_name": "Malayo"
+ },
+ "mbq": {
+ "english_name": "Maisin"
+ },
+ "mbr": {
+ "english_name": "Nukak Makú"
+ },
+ "mbs": {
+ "english_name": "Manobo, Sarangani"
+ },
+ "azj": {
+ "english_name": "Azerbaijani, North"
+ },
+ "azm": {
+ "english_name": "Amuzgo, Ipalapa"
+ },
+ "azn": {
+ "english_name": "Nahuatl, Western Durango"
+ },
+ "azo": {
+ "english_name": "Awing"
+ },
+ "aza": {
+ "english_name": "Azha"
+ },
+ "azb": {
+ "english_name": "Azerbaijani, South"
+ },
+ "azd": {
+ "english_name": "Nahuatl, Eastern Durango"
+ },
+ "azg": {
+ "english_name": "Amuzgo, San Pedro Amuzgos"
+ },
+ "azz": {
+ "english_name": "Nahuatl, Highland Puebla"
+ },
+ "azt": {
+ "english_name": "Atta, Faire"
+ },
+ "khx": {
+ "english_name": "Kanu"
+ },
+ "khy": {
+ "english_name": "Kele (Democratic Republic of Congo)"
+ },
+ "khz": {
+ "english_name": "Keapara"
+ },
+ "khp": {
+ "english_name": "Kapori"
+ },
+ "khq": {
+ "english_name": "Songhay, Koyra Chiini"
+ },
+ "khr": {
+ "english_name": "Kharia"
+ },
+ "khs": {
+ "english_name": "Kasua"
+ },
+ "kht": {
+ "english_name": "Khamti"
+ },
+ "khu": {
+ "english_name": "Nkhumbi"
+ },
+ "khv": {
+ "english_name": "Khvarshi"
+ },
+ "khw": {
+ "english_name": "Khowar"
+ },
+ "khh": {
+ "english_name": "Kehu"
+ },
+ "khj": {
+ "english_name": "Kuturmi"
+ },
+ "khk": {
+ "english_name": "Mongolian, Halh"
+ },
+ "khl": {
+ "english_name": "Lusi"
+ },
+ "khn": {
+ "english_name": "Khandesi"
+ },
+ "kho": {
+ "english_name": "Khotanese"
+ },
+ "kha": {
+ "english_name": "Khasi"
+ },
+ "khb": {
+ "english_name": "Lü"
+ },
+ "khc": {
+ "english_name": "Tukang Besi North"
+ },
+ "khd": {
+ "english_name": "Kanum, Bädi"
+ },
+ "khe": {
+ "english_name": "Korowai"
+ },
+ "khf": {
+ "english_name": "Khuen"
+ },
+ "khg": {
+ "english_name": "Tibetan, Khams"
+ },
+ "xkj": {
+ "english_name": "Kajali"
+ },
+ "xkk": {
+ "english_name": "Kaco'"
+ },
+ "xkh": {
+ "english_name": "Karahawyana"
+ },
+ "xki": {
+ "english_name": "Kenyan Sign Language"
+ },
+ "xkn": {
+ "english_name": "Kayan, Kayan River"
+ },
+ "xko": {
+ "english_name": "Kiorr"
+ },
+ "xkl": {
+ "english_name": "Mainstream Kenyah"
+ },
+ "xkb": {
+ "english_name": "Nago, Northern"
+ },
+ "xkc": {
+ "english_name": "Kho'ini"
+ },
+ "xka": {
+ "english_name": "Kalkoti"
+ },
+ "xkf": {
+ "english_name": "Khengkha"
+ },
+ "xkg": {
+ "english_name": "Kagoro"
+ },
+ "xkd": {
+ "english_name": "Kayan, Mendalam"
+ },
+ "xke": {
+ "english_name": "Kereho"
+ },
+ "xkz": {
+ "english_name": "Kurtokha"
+ },
+ "xkx": {
+ "english_name": "Karore"
+ },
+ "xky": {
+ "english_name": "Uma' Lasan"
+ },
+ "xkr": {
+ "english_name": "Xakriabá"
+ },
+ "xks": {
+ "english_name": "Kumbewaha"
+ },
+ "xkp": {
+ "english_name": "Kabatei"
+ },
+ "xkq": {
+ "english_name": "Koroni"
+ },
+ "xkv": {
+ "english_name": "Kgalagadi"
+ },
+ "xkw": {
+ "english_name": "Kembra"
+ },
+ "xkt": {
+ "english_name": "Kantosi"
+ },
+ "xku": {
+ "english_name": "Kaamba"
+ },
+ "nxu": {
+ "english_name": "Narau"
+ },
+ "nxq": {
+ "english_name": "Naxi"
+ },
+ "nxr": {
+ "english_name": "Ninggerum"
+ },
+ "nxx": {
+ "english_name": "Nafri"
+ },
+ "nxe": {
+ "english_name": "Nage"
+ },
+ "nxd": {
+ "english_name": "Ngando (Democratic Republic of Congo)"
+ },
+ "nxg": {
+ "english_name": "Ngad'a"
+ },
+ "nxa": {
+ "english_name": "Nauete"
+ },
+ "nxm": {
+ "english_name": "Numidian"
+ },
+ "nxl": {
+ "english_name": "Nuaulu, South"
+ },
+ "nxn": {
+ "english_name": "Ngawun"
+ },
+ "nxi": {
+ "english_name": "Nindi"
+ },
+ "nxk": {
+ "english_name": "Naga, Koki"
+ },
+ "osx": {
+ "english_name": "Saxon, Old"
+ },
+ "osp": {
+ "english_name": "Spanish, Old"
+ },
+ "osu": {
+ "english_name": "One, Southern"
+ },
+ "ost": {
+ "english_name": "Osatu"
+ },
+ "osi": {
+ "english_name": "Osing"
+ },
+ "oso": {
+ "english_name": "Ososo"
+ },
+ "osa": {
+ "english_name": "Osage"
+ },
+ "tkb": {
+ "english_name": "Buksa"
+ },
+ "osc": {
+ "english_name": "Oscan"
+ },
+ "ver": {
+ "english_name": "Mom Jango"
+ },
+ "vep": {
+ "english_name": "Veps"
+ },
+ "tka": {
+ "english_name": "Truká"
+ },
+ "tkn": {
+ "english_name": "Toku-No-Shima"
+ },
+ "ved": {
+ "english_name": "Veddah"
+ },
+ "vec": {
+ "english_name": "Venetian"
+ },
+ "veo": {
+ "english_name": "Ventureño"
+ },
+ "vel": {
+ "english_name": "Veluws"
+ },
+ "vem": {
+ "english_name": "Vemgo-Mabas"
+ },
+ "lra": {
+ "english_name": "Rara Bakati'"
+ },
+ "lrc": {
+ "english_name": "Luri, Northern"
+ },
+ "tkm": {
+ "english_name": "Takelma"
+ },
+ "lre": {
+ "english_name": "Laurentian"
+ },
+ "lrg": {
+ "english_name": "Laragia"
+ },
+ "lri": {
+ "english_name": "Marachi"
+ },
+ "lrk": {
+ "english_name": "Loarki"
+ },
+ "lrm": {
+ "english_name": "Marama"
+ },
+ "lrl": {
+ "english_name": "Lari"
+ },
+ "lro": {
+ "english_name": "Laro"
+ },
+ "lrn": {
+ "english_name": "Lorang"
+ },
+ "lrr": {
+ "english_name": "Yamphu, Southern"
+ },
+ "lrt": {
+ "english_name": "Malay, Larantuka"
+ },
+ "lrv": {
+ "english_name": "Larevat"
+ },
+ "lrz": {
+ "english_name": "Lemerig"
+ },
+ "tkt": {
+ "english_name": "Tharu, Kathoriya"
+ },
+ "tkr": {
+ "english_name": "Tsakhur"
+ },
+ "tkp": {
+ "english_name": "Tikopia"
+ },
+ "zrs": {
+ "english_name": "Mairasi"
+ },
+ "zrp": {
+ "english_name": "Zarphatic"
+ },
+ "zrg": {
+ "english_name": "Mirgan"
+ },
+ "tkx": {
+ "english_name": "Tangko"
+ },
+ "zra": {
+ "english_name": "Kara (Korea)"
+ },
+ "zro": {
+ "english_name": "Záparo"
+ },
+ "zrn": {
+ "english_name": "Zerenkel"
+ },
+ "rea": {
+ "english_name": "Rerau"
+ },
+ "ydg": {
+ "english_name": "Yidgha"
+ },
+ "ydd": {
+ "english_name": "Yiddish, Eastern"
+ },
+ "yde": {
+ "english_name": "Yangum Dey"
+ },
+ "yda": {
+ "english_name": "Yanda"
+ },
+ "ipi": {
+ "english_name": "Ipili"
+ },
+ "ipo": {
+ "english_name": "Ipiko"
+ },
+ "gzn": {
+ "english_name": "Gane"
+ },
+ "gzi": {
+ "english_name": "Gazi"
+ },
+ "gza": {
+ "english_name": "Ganza"
+ },
+ "ssx": {
+ "english_name": "Samberigi"
+ },
+ "fpe": {
+ "english_name": "Creole English, Fernando Po"
+ },
+ "sst": {
+ "english_name": "Sinasina"
+ },
+ "ssl": {
+ "english_name": "Sisaala, Western"
+ },
+ "ss": {
+ "english_name": "Swati"
+ },
+ "sr": {
+ "name": "српски",
+ "english_name": "Serbian"
+ },
+ "sq": {
+ "english_name": "Albanian"
+ },
+ "sw": {
+ "english_name": "Swahili (macrolanguage)"
+ },
+ "sv": {
+ "name": "Svenska",
+ "english_name": "Swedish"
+ },
+ "su": {
+ "english_name": "Sundanese"
+ },
+ "st": {
+ "english_name": "Sotho, Southern"
+ },
+ "sk": {
+ "name": "Slovenský",
+ "english_name": "Slovak"
+ },
+ "si": {
+ "english_name": "Sinhala"
+ },
+ "ssn": {
+ "english_name": "Waata"
+ },
+ "so": {
+ "english_name": "Somali"
+ },
+ "sn": {
+ "english_name": "Shona"
+ },
+ "sm": {
+ "english_name": "Samoan"
+ },
+ "sl": {
+ "name": "slovenščina",
+ "english_name": "Slovenian"
+ },
+ "sc": {
+ "english_name": "Sardinian"
+ },
+ "sa": {
+ "english_name": "Sanskrit"
+ },
+ "sg": {
+ "english_name": "Sango"
+ },
+ "se": {
+ "english_name": "Sami, Northern"
+ },
+ "sd": {
+ "english_name": "Sindhi"
+ },
+ "ttz": {
+ "english_name": "Tsum"
+ },
+ "tty": {
+ "english_name": "Sikaritai"
+ },
+ "tts": {
+ "english_name": "Thai, Northeastern"
+ },
+ "ttr": {
+ "english_name": "Tera"
+ },
+ "ttq": {
+ "english_name": "Tamajaq, Tawallammat"
+ },
+ "ttp": {
+ "english_name": "Tombelala"
+ },
+ "ttw": {
+ "english_name": "Long Wat"
+ },
+ "ttv": {
+ "english_name": "Titan"
+ },
+ "ttu": {
+ "english_name": "Torau"
+ },
+ "ttt": {
+ "english_name": "Tat, Muslim"
+ },
+ "ttk": {
+ "english_name": "Totoro"
+ },
+ "sse": {
+ "english_name": "Balangingi"
+ },
+ "tti": {
+ "english_name": "Tobati"
+ },
+ "tth": {
+ "english_name": "Ta'oih, Upper"
+ },
+ "tto": {
+ "english_name": "Ta'oih, Lower"
+ },
+ "ttn": {
+ "english_name": "Towei"
+ },
+ "ttm": {
+ "english_name": "Tutchone, Northern"
+ },
+ "ttl": {
+ "english_name": "Totela"
+ },
+ "ttc": {
+ "english_name": "Tektiteko"
+ },
+ "ttb": {
+ "english_name": "Gaa"
+ },
+ "tta": {
+ "english_name": "Tutelo"
+ },
+ "ttg": {
+ "english_name": "Tutong"
+ },
+ "ttf": {
+ "english_name": "Tuotomb"
+ },
+ "tte": {
+ "english_name": "Bwanabwana"
+ },
+ "ttd": {
+ "english_name": "Tauade"
+ },
+ "jig": {
+ "english_name": "Djingili"
+ },
+ "jid": {
+ "english_name": "Bu"
+ },
+ "djr": {
+ "english_name": "Djambarrpuyngu"
+ },
+ "dju": {
+ "english_name": "Kapriman"
+ },
+ "jic": {
+ "english_name": "Tol"
+ },
+ "djw": {
+ "english_name": "Djawi"
+ },
+ "jia": {
+ "english_name": "Jina"
+ },
+ "jio": {
+ "english_name": "Jiamao"
+ },
+ "jil": {
+ "english_name": "Jilim"
+ },
+ "jim": {
+ "english_name": "Jimi (Cameroon)"
+ },
+ "jih": {
+ "english_name": "sTodsde"
+ },
+ "jii": {
+ "english_name": "Jiiddu"
+ },
+ "dja": {
+ "english_name": "Djadjawurrung"
+ },
+ "djc": {
+ "english_name": "Daju, Dar Daju"
+ },
+ "djb": {
+ "english_name": "Djinba"
+ },
+ "dje": {
+ "english_name": "Zarma"
+ },
+ "djd": {
+ "english_name": "Djamindjung"
+ },
+ "djf": {
+ "english_name": "Djangun"
+ },
+ "dji": {
+ "english_name": "Djinang"
+ },
+ "djk": {
+ "english_name": "Eastern Maroon Creole"
+ },
+ "djj": {
+ "english_name": "Djeebbana"
+ },
+ "djm": {
+ "english_name": "Dogon, Jamsay"
+ },
+ "djo": {
+ "english_name": "Jangkang"
+ },
+ "djn": {
+ "english_name": "Djauan"
+ },
+ "bly": {
+ "english_name": "Notre"
+ },
+ "blx": {
+ "english_name": "Ayta, Mag-Indi"
+ },
+ "blz": {
+ "english_name": "Balantak"
+ },
+ "blt": {
+ "english_name": "Tai Dam"
+ },
+ "blw": {
+ "english_name": "Balangao"
+ },
+ "blv": {
+ "english_name": "Bolo"
+ },
+ "blq": {
+ "english_name": "Baluan-Pam"
+ },
+ "blp": {
+ "english_name": "Blablanga"
+ },
+ "bls": {
+ "english_name": "Balaesang"
+ },
+ "blr": {
+ "english_name": "Blang"
+ },
+ "blm": {
+ "english_name": "Beli (Sudan)"
+ },
+ "bll": {
+ "english_name": "Biloxi"
+ },
+ "blo": {
+ "english_name": "Anii"
+ },
+ "hca": {
+ "english_name": "Creole Hindi, Andaman"
+ },
+ "bli": {
+ "english_name": "Bolia"
+ },
+ "blh": {
+ "english_name": "Kuwaa"
+ },
+ "blk": {
+ "english_name": "Karen, Pa'o"
+ },
+ "blj": {
+ "english_name": "Bolongan"
+ },
+ "ble": {
+ "english_name": "Balanta-Kentohe"
+ },
+ "bld": {
+ "english_name": "Bolango"
+ },
+ "hch": {
+ "english_name": "Huichol"
+ },
+ "blf": {
+ "english_name": "Buol"
+ },
+ "bla": {
+ "english_name": "Siksika"
+ },
+ "blc": {
+ "english_name": "Bella Coola"
+ },
+ "blb": {
+ "english_name": "Bilua"
+ },
+ "onj": {
+ "english_name": "Onjob"
+ },
+ "onk": {
+ "english_name": "One, Kabore"
+ },
+ "oni": {
+ "english_name": "Onin"
+ },
+ "onn": {
+ "english_name": "Onobasulu"
+ },
+ "ono": {
+ "english_name": "Onondaga"
+ },
+ "onb": {
+ "english_name": "Lingao"
+ },
+ "ona": {
+ "english_name": "Ona"
+ },
+ "ong": {
+ "english_name": "Olo"
+ },
+ "one": {
+ "english_name": "Oneida"
+ },
+ "onx": {
+ "english_name": "Onin Based Pidgin"
+ },
+ "onr": {
+ "english_name": "One, Northern"
+ },
+ "ons": {
+ "english_name": "Ono"
+ },
+ "onp": {
+ "english_name": "Sartang"
+ },
+ "onw": {
+ "english_name": "Nubian, Old"
+ },
+ "ont": {
+ "english_name": "Ontenu"
+ },
+ "onu": {
+ "english_name": "Unua"
+ },
+ "uky": {
+ "english_name": "Kuuk-Yak"
+ },
+ "ukw": {
+ "english_name": "Ukwuani-Aboh-Ndoni"
+ },
+ "uku": {
+ "english_name": "Ukue"
+ },
+ "fmu": {
+ "english_name": "Muria, Far Western"
+ },
+ "uks": {
+ "english_name": "Urubú-Kaapor Sign Language"
+ },
+ "fmp": {
+ "english_name": "Fe'fe'"
+ },
+ "ukp": {
+ "english_name": "Ukpe-Bayobiri"
+ },
+ "rmz": {
+ "english_name": "Marma"
+ },
+ "ukl": {
+ "english_name": "Ukrainian Sign Language"
+ },
+ "ukh": {
+ "english_name": "Ukhwejo"
+ },
+ "ukg": {
+ "english_name": "Ukuriguma"
+ },
+ "rmx": {
+ "english_name": "Romam"
+ },
+ "uka": {
+ "english_name": "Kaburi"
+ },
+ "rmb": {
+ "english_name": "Rembarunga"
+ },
+ "tkf": {
+ "english_name": "Tukumanféd"
+ },
+ "rmc": {
+ "english_name": "Romani, Carpathian"
+ },
+ "rma": {
+ "english_name": "Rama"
+ },
+ "rmf": {
+ "english_name": "Romani, Kalo Finnish"
+ },
+ "rmg": {
+ "english_name": "Norwegian, Traveller"
+ },
+ "sak": {
+ "english_name": "Sake"
+ },
+ "saj": {
+ "english_name": "Sahu"
+ },
+ "sah": {
+ "english_name": "Yakut"
+ },
+ "sao": {
+ "english_name": "Sause"
+ },
+ "sam": {
+ "english_name": "Aramaic, Samaritan"
+ },
+ "sac": {
+ "english_name": "Meskwaki"
+ },
+ "sab": {
+ "english_name": "Buglere"
+ },
+ "saa": {
+ "english_name": "Saba"
+ },
+ "rme": {
+ "english_name": "Angloromani"
+ },
+ "saf": {
+ "english_name": "Safaliba"
+ },
+ "sae": {
+ "english_name": "Sabanê"
+ },
+ "sad": {
+ "english_name": "Sandawe"
+ },
+ "saz": {
+ "english_name": "Saurashtra"
+ },
+ "say": {
+ "english_name": "Saya"
+ },
+ "sax": {
+ "english_name": "Sa"
+ },
+ "rmk": {
+ "english_name": "Romkun"
+ },
+ "sas": {
+ "english_name": "Sasak"
+ },
+ "sar": {
+ "english_name": "Saraveca"
+ },
+ "saq": {
+ "english_name": "Samburu"
+ },
+ "saw": {
+ "english_name": "Sawi"
+ },
+ "rmh": {
+ "english_name": "Murkim"
+ },
+ "sau": {
+ "english_name": "Saleman"
+ },
+ "sat": {
+ "english_name": "Santali"
+ },
+ "zoc": {
+ "english_name": "Zoque, Copainalá"
+ },
+ "zoh": {
+ "english_name": "Zoque, Chimalapa"
+ },
+ "rmn": {
+ "english_name": "Romani, Balkan"
+ },
+ "zom": {
+ "english_name": "Zou"
+ },
+ "zoo": {
+ "english_name": "Zapotec, Asunción Mixtepec"
+ },
+ "zoq": {
+ "english_name": "Zoque, Tabasco"
+ },
+ "zor": {
+ "english_name": "Zoque, Rayón"
+ },
+ "zos": {
+ "english_name": "Zoque, Francisco León"
+ },
+ "rmm": {
+ "english_name": "Roma"
+ },
+ "axx": {
+ "english_name": "Xârâgurè"
+ },
+ "axb": {
+ "english_name": "Abipon"
+ },
+ "axg": {
+ "english_name": "Arára, Mato Grosso"
+ },
+ "axe": {
+ "english_name": "Ayerrerenge"
+ },
+ "axk": {
+ "english_name": "Yaka (Central African Republic)"
+ },
+ "axl": {
+ "english_name": "Aranda, Lower Southern"
+ },
+ "axm": {
+ "english_name": "Armenian, Middle"
+ },
+ "xml": {
+ "english_name": "Malaysian Sign Language"
+ },
+ "xmm": {
+ "english_name": "Malay, Manado"
+ },
+ "xmn": {
+ "english_name": "Persian, Manichaean Middle"
+ },
+ "xmo": {
+ "english_name": "Morerebi"
+ },
+ "xmh": {
+ "english_name": "Kuku-Muminh"
+ },
+ "xmj": {
+ "english_name": "Majera"
+ },
+ "xmk": {
+ "english_name": "Macedonian, Ancient"
+ },
+ "xmd": {
+ "english_name": "Mbudum"
+ },
+ "xme": {
+ "english_name": "Median"
+ },
+ "xmf": {
+ "english_name": "Mingrelian"
+ },
+ "xmg": {
+ "english_name": "Mengaka"
+ },
+ "xma": {
+ "english_name": "Mushungulu"
+ },
+ "xmb": {
+ "english_name": "Mbonga"
+ },
+ "xmc": {
+ "english_name": "Makhuwa-Marrevone"
+ },
+ "xmx": {
+ "english_name": "Maden"
+ },
+ "xmy": {
+ "english_name": "Mayaguduna"
+ },
+ "xmz": {
+ "english_name": "Mori Bawah"
+ },
+ "xmt": {
+ "english_name": "Matbat"
+ },
+ "xmu": {
+ "english_name": "Kamu"
+ },
+ "xmv": {
+ "english_name": "Malagasy, Antankarana"
+ },
+ "xmw": {
+ "english_name": "Malagasy, Tsimihety"
+ },
+ "xmp": {
+ "english_name": "Kuku-Mu'inh"
+ },
+ "xmq": {
+ "english_name": "Kuku-Mangk"
+ },
+ "xmr": {
+ "english_name": "Meroitic"
+ },
+ "xms": {
+ "english_name": "Moroccan Sign Language"
+ },
+ "uz": {
+ "english_name": "Uzbek"
+ },
+ "vkp": {
+ "english_name": "Creole Portuguese, Korlai"
+ },
+ "vkt": {
+ "english_name": "Malay, Tenggarong Kutai"
+ },
+ "vku": {
+ "english_name": "Kurrama"
+ },
+ "vki": {
+ "english_name": "Ija-Zuba"
+ },
+ "vkj": {
+ "english_name": "Kujarge"
+ },
+ "vkk": {
+ "english_name": "Kaur"
+ },
+ "vkl": {
+ "english_name": "Kulisusu"
+ },
+ "vkm": {
+ "english_name": "Kamakan"
+ },
+ "vko": {
+ "english_name": "Kodeoha"
+ },
+ "vka": {
+ "english_name": "Kariyarra"
+ },
+ "ug": {
+ "english_name": "Uighur"
+ },
+ "kjb": {
+ "english_name": "Q'anjob'al"
+ },
+ "kjc": {
+ "english_name": "Konjo, Coastal"
+ },
+ "kja": {
+ "english_name": "Mlap"
+ },
+ "kjf": {
+ "english_name": "Khalaj"
+ },
+ "kjg": {
+ "english_name": "Khmu"
+ },
+ "kjd": {
+ "english_name": "Kiwai, Southern"
+ },
+ "kje": {
+ "english_name": "Kisar"
+ },
+ "kjj": {
+ "english_name": "Khinalugh"
+ },
+ "kjk": {
+ "english_name": "Konjo, Highland"
+ },
+ "kjh": {
+ "english_name": "Khakas"
+ },
+ "kji": {
+ "english_name": "Zabana"
+ },
+ "kjn": {
+ "english_name": "Kunjen"
+ },
+ "kjo": {
+ "english_name": "Kinnauri, Harijan"
+ },
+ "kjl": {
+ "english_name": "Kham, Western Parbate"
+ },
+ "kjm": {
+ "english_name": "Kháng"
+ },
+ "kjr": {
+ "english_name": "Kurudu"
+ },
+ "kjs": {
+ "english_name": "Kewa, East"
+ },
+ "kjp": {
+ "english_name": "Karen, Pwo Eastern"
+ },
+ "kjq": {
+ "english_name": "Keres, Western"
+ },
+ "kjt": {
+ "english_name": "Karen, Phrae Pwo"
+ },
+ "kju": {
+ "english_name": "Kashaya"
+ },
+ "kjz": {
+ "english_name": "Bumthangkha"
+ },
+ "kjx": {
+ "english_name": "Ramopa"
+ },
+ "kjy": {
+ "english_name": "Erave"
+ },
+ "zpy": {
+ "english_name": "Zapotec, Mazaltepec"
+ },
+ "zpx": {
+ "english_name": "Zapotec, San Baltazar Loxicha"
+ },
+ "zpz": {
+ "english_name": "Zapotec, Texmelucan"
+ },
+ "zpq": {
+ "english_name": "Zapotec, Zoogocho"
+ },
+ "zpp": {
+ "english_name": "Zapotec, El Alto"
+ },
+ "zps": {
+ "english_name": "Zapotec, Coatlán"
+ },
+ "zpr": {
+ "english_name": "Zapotec, Santiago Xanica"
+ },
+ "zpu": {
+ "english_name": "Zapotec, Yalálag"
+ },
+ "zpt": {
+ "english_name": "Zapotec, San Vicente Coatlán"
+ },
+ "zpw": {
+ "english_name": "Zapotec, Zaniza"
+ },
+ "zpv": {
+ "english_name": "Zapotec, Chichicapan"
+ },
+ "zpi": {
+ "english_name": "Zapotec, Santa María Quiegolani"
+ },
+ "zph": {
+ "english_name": "Zapotec, Totomachapan"
+ },
+ "zpk": {
+ "english_name": "Zapotec, Tlacolulita"
+ },
+ "zpj": {
+ "english_name": "Zapotec, Quiavicuzas"
+ },
+ "zpm": {
+ "english_name": "Zapotec, Mixtepec"
+ },
+ "zpl": {
+ "english_name": "Zapotec, Lachixío"
+ },
+ "zpo": {
+ "english_name": "Zapotec, Amatlán"
+ },
+ "zpn": {
+ "english_name": "Zapotec, Santa Inés Yatzechi"
+ },
+ "zpa": {
+ "english_name": "Zapotec, Lachiguiri"
+ },
+ "zpc": {
+ "english_name": "Zapotec, Choapan"
+ },
+ "zpb": {
+ "english_name": "Zapotec, Yautepec"
+ },
+ "zpe": {
+ "english_name": "Zapotec, Petapa"
+ },
+ "zpd": {
+ "english_name": "Zapotec, Southeastern Ixtlán"
+ },
+ "zpg": {
+ "english_name": "Zapotec, Guevea De Humboldt"
+ },
+ "zpf": {
+ "english_name": "Zapotec, San Pedro Quiatoni"
+ },
+ "yzg": {
+ "english_name": "Buyang, E'ma"
+ },
+ "yzk": {
+ "english_name": "Zokhuo"
+ },
+ "vun": {
+ "english_name": "Vunjo"
+ },
+ "vum": {
+ "english_name": "Vumbu"
+ },
+ "ivb": {
+ "english_name": "Ibatan"
+ },
+ "ivv": {
+ "english_name": "Ivatan"
+ },
+ "vut": {
+ "english_name": "Vute"
+ },
+ "wpc": {
+ "english_name": "Maco"
+ },
+ "gdq": {
+ "english_name": "Mehri"
+ },
+ "gdr": {
+ "english_name": "Wipi"
+ },
+ "gds": {
+ "english_name": "Ghandruk Sign Language"
+ },
+ "gdt": {
+ "english_name": "Kungardutyi"
+ },
+ "gdu": {
+ "english_name": "Gudu"
+ },
+ "gdx": {
+ "english_name": "Godwari"
+ },
+ "gda": {
+ "english_name": "Lohar, Gade"
+ },
+ "gdb": {
+ "english_name": "Gadaba, Pottangi Ollar"
+ },
+ "gdc": {
+ "english_name": "Gugu Badhun"
+ },
+ "gdd": {
+ "english_name": "Gedaged"
+ },
+ "gde": {
+ "english_name": "Gude"
+ },
+ "gdf": {
+ "english_name": "Guduf-Gava"
+ },
+ "gdg": {
+ "english_name": "Ga'dang"
+ },
+ "gdh": {
+ "english_name": "Gadjerawang"
+ },
+ "gdi": {
+ "english_name": "Gundi"
+ },
+ "gdj": {
+ "english_name": "Gurdjar"
+ },
+ "gdk": {
+ "english_name": "Gadang"
+ },
+ "gdl": {
+ "english_name": "Dirasha"
+ },
+ "gdm": {
+ "english_name": "Laal"
+ },
+ "gdn": {
+ "english_name": "Umanakaina"
+ },
+ "gdo": {
+ "english_name": "Ghodoberi"
+ },
+ "fvr": {
+ "english_name": "Fur"
+ },
+ "tvy": {
+ "english_name": "Pidgin, Timor"
+ },
+ "tvu": {
+ "english_name": "Tunen"
+ },
+ "tvt": {
+ "english_name": "Naga, Tutsa"
+ },
+ "tvw": {
+ "english_name": "Sedoa"
+ },
+ "tvs": {
+ "english_name": "Taveta"
+ },
+ "tvm": {
+ "english_name": "Tela-Masbuar"
+ },
+ "tvl": {
+ "english_name": "Tuvalu"
+ },
+ "tvo": {
+ "english_name": "Tidore"
+ },
+ "tvn": {
+ "english_name": "Tavoyan"
+ },
+ "tvk": {
+ "english_name": "Ambrym, Southeast"
+ },
+ "tve": {
+ "english_name": "Te'un"
+ },
+ "eze": {
+ "english_name": "Uzekwe"
+ },
+ "tva": {
+ "english_name": "Vaghua"
+ },
+ "eza": {
+ "english_name": "Ezaa"
+ },
+ "jgk": {
+ "english_name": "Gwak"
+ },
+ "jgo": {
+ "english_name": "Ngomba"
+ },
+ "dds": {
+ "english_name": "Dogon, Donno So"
+ },
+ "ddr": {
+ "english_name": "Dhudhuroa"
+ },
+ "jgb": {
+ "english_name": "Ngbee"
+ },
+ "ddw": {
+ "english_name": "Dawera-Daweloor"
+ },
+ "jge": {
+ "english_name": "Judeo-Georgian"
+ },
+ "ddj": {
+ "english_name": "Jaru"
+ },
+ "ddi": {
+ "english_name": "Goodenough, West"
+ },
+ "ddo": {
+ "english_name": "Dido"
+ },
+ "ddn": {
+ "english_name": "Dendi (Benin)"
+ },
+ "dda": {
+ "english_name": "Dadi Dadi"
+ },
+ "ddg": {
+ "english_name": "Fataluku"
+ },
+ "dde": {
+ "english_name": "Doondo"
+ },
+ "ddd": {
+ "english_name": "Dongotono"
+ },
+ "acb": {
+ "english_name": "Áncá"
+ },
+ "aca": {
+ "english_name": "Achagua"
+ },
+ "acf": {
+ "english_name": "Creole French, Saint Lucian"
+ },
+ "ace": {
+ "english_name": "Achinese"
+ },
+ "acd": {
+ "english_name": "Gikyode"
+ },
+ "ack": {
+ "english_name": "Aka-Kora"
+ },
+ "aci": {
+ "english_name": "Aka-Cari"
+ },
+ "ach": {
+ "english_name": "Acoli"
+ },
+ "acn": {
+ "english_name": "Achang"
+ },
+ "acm": {
+ "english_name": "Arabic, Mesopotamian"
+ },
+ "acl": {
+ "english_name": "Akar-Bale"
+ },
+ "acs": {
+ "english_name": "Acroá"
+ },
+ "acr": {
+ "english_name": "Achi"
+ },
+ "acq": {
+ "english_name": "Arabic, Ta'izzi-Adeni"
+ },
+ "acp": {
+ "english_name": "Acipa, Eastern"
+ },
+ "acw": {
+ "english_name": "Arabic, Hijazi"
+ },
+ "acv": {
+ "english_name": "Achumawi"
+ },
+ "acu": {
+ "english_name": "Achuar-Shiwiar"
+ },
+ "act": {
+ "english_name": "Achterhoeks"
+ },
+ "acz": {
+ "english_name": "Acheron"
+ },
+ "acy": {
+ "english_name": "Arabic, Cypriot"
+ },
+ "acx": {
+ "english_name": "Arabic, Omani"
+ },
+ "bjg": {
+ "english_name": "Bidyogo"
+ },
+ "bjf": {
+ "english_name": "Neo-Aramaic, Barzani Jewish"
+ },
+ "bje": {
+ "english_name": "Mien, Biao-Jiao"
+ },
+ "bjc": {
+ "english_name": "Bariji"
+ },
+ "bjb": {
+ "english_name": "Banggarla"
+ },
+ "bja": {
+ "english_name": "Budza"
+ },
+ "bjo": {
+ "english_name": "Banda, Mid-Southern"
+ },
+ "bjn": {
+ "english_name": "Banjar"
+ },
+ "bjm": {
+ "english_name": "Bajelani"
+ },
+ "bjl": {
+ "english_name": "Bulu (Papua New Guinea)"
+ },
+ "bjk": {
+ "english_name": "Barok"
+ },
+ "bjj": {
+ "english_name": "Kanauji"
+ },
+ "bji": {
+ "english_name": "Burji"
+ },
+ "bjh": {
+ "english_name": "Bahinemo"
+ },
+ "bjw": {
+ "english_name": "Bakwé"
+ },
+ "bjv": {
+ "english_name": "Bedjond"
+ },
+ "bju": {
+ "english_name": "Busuu"
+ },
+ "bjt": {
+ "english_name": "Balanta-Ganja"
+ },
+ "bjs": {
+ "english_name": "Bajan"
+ },
+ "bjr": {
+ "english_name": "Binumarien"
+ },
+ "bjp": {
+ "english_name": "Fanamaket"
+ },
+ "bjz": {
+ "english_name": "Baruga"
+ },
+ "bjy": {
+ "english_name": "Bayali"
+ },
+ "bjx": {
+ "english_name": "Itneg, Banao"
+ },
+ "hed": {
+ "english_name": "Herdé"
+ },
+ "heg": {
+ "english_name": "Helong"
+ },
+ "hea": {
+ "english_name": "Miao, Northern Qiandong"
+ },
+ "hem": {
+ "english_name": "Hemba"
+ },
+ "heh": {
+ "english_name": "Hehe"
+ },
+ "hei": {
+ "english_name": "Heiltsuk"
+ },
+ "aa": {
+ "english_name": "Afar"
+ },
+ "ab": {
+ "english_name": "Abkhazian"
+ },
+ "ae": {
+ "english_name": "Avestan"
+ },
+ "af": {
+ "name": "Afrikaans",
+ "english_name": "Afrikaans"
+ },
+ "ak": {
+ "english_name": "Akan"
+ },
+ "am": {
+ "name": "አማርኛ",
+ "english_name": "Amharic"
+ },
+ "an": {
+ "english_name": "Aragonese"
+ },
+ "as": {
+ "english_name": "Assamese"
+ },
+ "ar": {
+ "name": "العربية",
+ "english_name": "Arabic"
+ },
+ "av": {
+ "english_name": "Avaric"
+ },
+ "oht": {
+ "english_name": "Hittite, Old"
+ },
+ "ohu": {
+ "english_name": "Hungarian, Old"
+ },
+ "az": {
+ "name": "Azerbaijani",
+ "english_name": "Azerbaijani"
+ },
+ "cpi": {
+ "english_name": "Pidgin English, Chinese"
+ },
+ "cpn": {
+ "english_name": "Cherepon"
+ },
+ "cpo": {
+ "english_name": "Kpeego"
+ },
+ "cpa": {
+ "english_name": "Chinantec, Palantla"
+ },
+ "cpb": {
+ "english_name": "Ashéninka, Ucayali-Yurúa"
+ },
+ "cpc": {
+ "english_name": "Ajyíninka Apurucayali"
+ },
+ "rxd": {
+ "english_name": "Ngardi"
+ },
+ "cpg": {
+ "english_name": "Greek, Cappadocian"
+ },
+ "cpx": {
+ "english_name": "Chinese, Pu-Xian"
+ },
+ "cpy": {
+ "english_name": "Ashéninka, South Ucayali"
+ },
+ "cps": {
+ "english_name": "Capiznon"
+ },
+ "cpu": {
+ "english_name": "Ashéninka, Pichis"
+ },
+ "rxw": {
+ "english_name": "Karuwali"
+ },
+ "mnx": {
+ "english_name": "Manikion"
+ },
+ "mny": {
+ "english_name": "Manyawa"
+ },
+ "mnz": {
+ "english_name": "Moni"
+ },
+ "scn": {
+ "english_name": "Sicilian"
+ },
+ "sci": {
+ "english_name": "Creole Malay, Sri Lankan"
+ },
+ "sch": {
+ "english_name": "Sakachep"
+ },
+ "sck": {
+ "english_name": "Sadri"
+ },
+ "qvm": {
+ "english_name": "Quechua, Margos-Yarowilca-Lauricocha"
+ },
+ "mnp": {
+ "english_name": "Chinese, Min Bei"
+ },
+ "mnq": {
+ "english_name": "Minriq"
+ },
+ "mnr": {
+ "english_name": "Mono (USA)"
+ },
+ "mns": {
+ "english_name": "Mansi"
+ },
+ "mnu": {
+ "english_name": "Mer"
+ },
+ "mnv": {
+ "english_name": "Rennell-Bellona"
+ },
+ "mnw": {
+ "english_name": "Mon"
+ },
+ "mnh": {
+ "english_name": "Mono (Democratic Republic of Congo)"
+ },
+ "mni": {
+ "english_name": "Manipuri"
+ },
+ "mnj": {
+ "english_name": "Munji"
+ },
+ "mnk": {
+ "english_name": "Mandinka"
+ },
+ "mnl": {
+ "english_name": "Tiale"
+ },
+ "mnm": {
+ "english_name": "Mapena"
+ },
+ "mnn": {
+ "english_name": "Mnong, Southern"
+ },
+ "scu": {
+ "english_name": "Shumcho"
+ },
+ "mna": {
+ "english_name": "Mbula"
+ },
+ "mnb": {
+ "english_name": "Muna"
+ },
+ "mnc": {
+ "english_name": "Manchu"
+ },
+ "mnd": {
+ "english_name": "Mondé"
+ },
+ "mne": {
+ "english_name": "Naba"
+ },
+ "mnf": {
+ "english_name": "Mundani"
+ },
+ "mng": {
+ "english_name": "Mnong, Eastern"
+ },
+ "zmj": {
+ "english_name": "Maridjabin"
+ },
+ "zmk": {
+ "english_name": "Mandandanyi"
+ },
+ "zmh": {
+ "english_name": "Makolkol"
+ },
+ "zmi": {
+ "english_name": "Negeri Sembilan Malay"
+ },
+ "zmn": {
+ "english_name": "Mbangwe"
+ },
+ "qvj": {
+ "english_name": "Quichua, Loja Highland"
+ },
+ "zml": {
+ "english_name": "Madngele"
+ },
+ "ty": {
+ "english_name": "Tahitian"
+ },
+ "zmb": {
+ "english_name": "Zimba"
+ },
+ "tw": {
+ "english_name": "Twi"
+ },
+ "tt": {
+ "name": "Татарча",
+ "english_name": "Tatar"
+ },
+ "zma": {
+ "english_name": "Manda (Australia)"
+ },
+ "tr": {
+ "name": "Türkçe",
+ "english_name": "Turkish"
+ },
+ "ts": {
+ "english_name": "Tsonga"
+ },
+ "zmd": {
+ "english_name": "Maridan"
+ },
+ "zme": {
+ "english_name": "Mangerr"
+ },
+ "tn": {
+ "english_name": "Tswana"
+ },
+ "to": {
+ "english_name": "Tonga (Tonga Islands)"
+ },
+ "tl": {
+ "english_name": "Tagalog"
+ },
+ "zmy": {
+ "english_name": "Mariyedi"
+ },
+ "tk": {
+ "english_name": "Turkmen"
+ },
+ "th": {
+ "name": "ไทย",
+ "english_name": "Thai"
+ },
+ "ti": {
+ "name": "ትግርኛ",
+ "english_name": "Tigrinya"
+ },
+ "zmr": {
+ "english_name": "Maranunggu"
+ },
+ "tg": {
+ "english_name": "Tajik"
+ },
+ "zmp": {
+ "english_name": "Mpuono"
+ },
+ "te": {
+ "english_name": "Telugu"
+ },
+ "zmv": {
+ "english_name": "Mbariman-Gudhinma"
+ },
+ "zmw": {
+ "english_name": "Mbo (Democratic Republic of Congo)"
+ },
+ "zmt": {
+ "english_name": "Maringarr"
+ },
+ "ta": {
+ "name": "தமிழ்",
+ "english_name": "Tamil"
+ },
+ "smh": {
+ "english_name": "Samei"
+ },
+ "smf": {
+ "english_name": "Auwe"
+ },
+ "pbu": {
+ "english_name": "Pashto, Northern"
+ },
+ "pbt": {
+ "english_name": "Pashto, Southern"
+ },
+ "pbv": {
+ "english_name": "Pnar"
+ },
+ "pbp": {
+ "english_name": "Badyara"
+ },
+ "pbs": {
+ "english_name": "Pame, Central"
+ },
+ "pbr": {
+ "english_name": "Pangwa"
+ },
+ "smc": {
+ "english_name": "Som"
+ },
+ "pby": {
+ "english_name": "Pyu"
+ },
+ "pbe": {
+ "english_name": "Popoloca, Mezontla"
+ },
+ "pbg": {
+ "english_name": "Paraujano"
+ },
+ "pbf": {
+ "english_name": "Popoloca, Coyotepec"
+ },
+ "pbc": {
+ "english_name": "Patamona"
+ },
+ "pbb": {
+ "english_name": "Páez"
+ },
+ "pbl": {
+ "english_name": "Mak (Nigeria)"
+ },
+ "pbo": {
+ "english_name": "Papel"
+ },
+ "pbn": {
+ "english_name": "Kpasam"
+ },
+ "pbi": {
+ "english_name": "Parkwa"
+ },
+ "pbh": {
+ "english_name": "E'ñapa Woromaipu"
+ },
+ "qvy": {
+ "english_name": "Queyu"
+ },
+ "qvz": {
+ "english_name": "Quichua, Northern Pastaza"
+ },
+ "xow": {
+ "english_name": "Kowaki"
+ },
+ "qvw": {
+ "english_name": "Quechua, Huaylla Wanca"
+ },
+ "haw": {
+ "english_name": "Hawaiian"
+ },
+ "xop": {
+ "english_name": "Kopar"
+ },
+ "qvp": {
+ "english_name": "Quechua, Pacaraos"
+ },
+ "xog": {
+ "english_name": "Soga"
+ },
+ "xod": {
+ "english_name": "Kokoda"
+ },
+ "xoc": {
+ "english_name": "O'chi'chi'"
+ },
+ "xon": {
+ "english_name": "Konkomba"
+ },
+ "xoo": {
+ "english_name": "Xukurú"
+ },
+ "qvs": {
+ "english_name": "Quechua, San Martín"
+ },
+ "xok": {
+ "english_name": "Xokleng"
+ },
+ "xoi": {
+ "english_name": "Kominimung"
+ },
+ "pyn": {
+ "english_name": "Poyanáwa"
+ },
+ "vic": {
+ "english_name": "Creole English, Virgin Islands"
+ },
+ "vif": {
+ "english_name": "Vili"
+ },
+ "vig": {
+ "english_name": "Viemo"
+ },
+ "vid": {
+ "english_name": "Vidunda"
+ },
+ "vin": {
+ "english_name": "Vinza"
+ },
+ "vil": {
+ "english_name": "Vilela"
+ },
+ "vis": {
+ "english_name": "Vishavan"
+ },
+ "viv": {
+ "english_name": "Iduna"
+ },
+ "vit": {
+ "english_name": "Viti"
+ },
+ "kld": {
+ "english_name": "Gamilaraay"
+ },
+ "kle": {
+ "english_name": "Kulung (Nepal)"
+ },
+ "klf": {
+ "english_name": "Kendeje"
+ },
+ "klg": {
+ "english_name": "Tagakaulo"
+ },
+ "kla": {
+ "english_name": "Klamath-Modoc"
+ },
+ "klb": {
+ "english_name": "Kiliwa"
+ },
+ "klc": {
+ "english_name": "Kolbila"
+ },
+ "kll": {
+ "english_name": "Kalagan, Kagan"
+ },
+ "klm": {
+ "english_name": "Migum"
+ },
+ "kln": {
+ "english_name": "Kalenjin"
+ },
+ "klo": {
+ "english_name": "Kapya"
+ },
+ "klh": {
+ "english_name": "Weliki"
+ },
+ "kli": {
+ "english_name": "Kalumpang"
+ },
+ "klj": {
+ "english_name": "Khalaj, Turkic"
+ },
+ "klk": {
+ "english_name": "Kono (Nigeria)"
+ },
+ "klt": {
+ "english_name": "Nukna"
+ },
+ "klu": {
+ "english_name": "Klao"
+ },
+ "klv": {
+ "english_name": "Maskelynes"
+ },
+ "klw": {
+ "english_name": "Lindu"
+ },
+ "klp": {
+ "english_name": "Kamasa"
+ },
+ "klq": {
+ "english_name": "Rumu"
+ },
+ "klr": {
+ "english_name": "Khaling"
+ },
+ "kls": {
+ "english_name": "Kalasha"
+ },
+ "klx": {
+ "english_name": "Koluwawa"
+ },
+ "kly": {
+ "english_name": "Kalao"
+ },
+ "klz": {
+ "english_name": "Kabola"
+ },
+ "swh": {
+ "english_name": "Swahili (individual language)"
+ },
+ "xud": {
+ "english_name": "Umiida"
+ },
+ "tsi": {
+ "english_name": "Tsimshian"
+ },
+ "xug": {
+ "english_name": "Kunigami"
+ },
+ "xua": {
+ "english_name": "Kurumba, Alu"
+ },
+ "yxy": {
+ "english_name": "Yabula Yabula"
+ },
+ "xub": {
+ "english_name": "Kurumba, Betta"
+ },
+ "pye": {
+ "english_name": "Krumen, Pye"
+ },
+ "yxu": {
+ "english_name": "Yuyu"
+ },
+ "xul": {
+ "english_name": "Ngunawal"
+ },
+ "yxl": {
+ "english_name": "Yardliyawarra"
+ },
+ "yxm": {
+ "english_name": "Yinwum"
+ },
+ "yxa": {
+ "english_name": "Mayawali"
+ },
+ "xun": {
+ "english_name": "Unggaranggu"
+ },
+ "xuj": {
+ "english_name": "Kurumba, Jennu"
+ },
+ "ito": {
+ "english_name": "Itonama"
+ },
+ "itl": {
+ "english_name": "Itelmen"
+ },
+ "itm": {
+ "english_name": "Itu Mbon Uzo"
+ },
+ "itk": {
+ "english_name": "Judeo-Italian"
+ },
+ "iti": {
+ "english_name": "Itneg, Inlaod"
+ },
+ "ite": {
+ "english_name": "Itene"
+ },
+ "itb": {
+ "english_name": "Itneg, Binongan"
+ },
+ "itz": {
+ "english_name": "Itzá"
+ },
+ "itx": {
+ "english_name": "Itik"
+ },
+ "ity": {
+ "english_name": "Itneg, Moyadan"
+ },
+ "itv": {
+ "english_name": "Itawit"
+ },
+ "itw": {
+ "english_name": "Ito"
+ },
+ "itt": {
+ "english_name": "Itneg, Maeng"
+ },
+ "itr": {
+ "english_name": "Iteri"
+ },
+ "its": {
+ "english_name": "Isekiri"
+ },
+ "wrg": {
+ "english_name": "Warungu"
+ },
+ "wrd": {
+ "english_name": "Warduji"
+ },
+ "swo": {
+ "english_name": "Shanenawa"
+ },
+ "wrb": {
+ "english_name": "Warluwara"
+ },
+ "wra": {
+ "english_name": "Warapu"
+ },
+ "wrn": {
+ "english_name": "Warnang"
+ },
+ "wro": {
+ "english_name": "Worrorra"
+ },
+ "wrl": {
+ "english_name": "Warlmanpa"
+ },
+ "wrm": {
+ "english_name": "Warumungu"
+ },
+ "wrk": {
+ "english_name": "Garrwa"
+ },
+ "wrh": {
+ "english_name": "Wiradhuri"
+ },
+ "wri": {
+ "english_name": "Wariyangga"
+ },
+ "wrv": {
+ "english_name": "Waruna"
+ },
+ "wrw": {
+ "english_name": "Gugu Warra"
+ },
+ "wru": {
+ "english_name": "Waru"
+ },
+ "wrr": {
+ "english_name": "Wardaman"
+ },
+ "wrs": {
+ "english_name": "Waris"
+ },
+ "wrp": {
+ "english_name": "Waropen"
+ },
+ "wrz": {
+ "english_name": "Waray (Australia)"
+ },
+ "wrx": {
+ "english_name": "Wae Rana"
+ },
+ "wry": {
+ "english_name": "Merwari"
+ },
+ "tri": {
+ "english_name": "Trió"
+ },
+ "tro": {
+ "english_name": "Naga, Tarao"
+ },
+ "tra": {
+ "english_name": "Tirahi"
+ },
+ "gft": {
+ "english_name": "Gafat"
+ },
+ "trd": {
+ "english_name": "Turi"
+ },
+ "gfk": {
+ "english_name": "Patpatar"
+ },
+ "jer": {
+ "english_name": "Jere"
+ },
+ "jet": {
+ "english_name": "Manem"
+ },
+ "jeu": {
+ "english_name": "Jonkor Bourmataguil"
+ },
+ "jeb": {
+ "english_name": "Jebero"
+ },
+ "jeg": {
+ "english_name": "Jeng"
+ },
+ "jee": {
+ "english_name": "Jerung"
+ },
+ "jek": {
+ "english_name": "Jeri Kuo"
+ },
+ "jeh": {
+ "english_name": "Jeh"
+ },
+ "jei": {
+ "english_name": "Yei"
+ },
+ "jen": {
+ "english_name": "Dza"
+ },
+ "jel": {
+ "english_name": "Yelmek"
+ },
+ "aae": {
+ "english_name": "Albanian, Arbëreshë"
+ },
+ "aad": {
+ "english_name": "Amal"
+ },
+ "aag": {
+ "english_name": "Ambrak"
+ },
+ "aaf": {
+ "english_name": "Aranadan"
+ },
+ "aaa": {
+ "english_name": "Ghotuo"
+ },
+ "aac": {
+ "english_name": "Ari"
+ },
+ "aab": {
+ "english_name": "Alumu-Tesu"
+ },
+ "aal": {
+ "english_name": "Afade"
+ },
+ "aao": {
+ "english_name": "Arabic, Algerian Saharan"
+ },
+ "aan": {
+ "english_name": "Anambé"
+ },
+ "aai": {
+ "english_name": "Arifama-Miniafia"
+ },
+ "aah": {
+ "english_name": "Arapesh, Abu'"
+ },
+ "aak": {
+ "english_name": "Ankave"
+ },
+ "aau": {
+ "english_name": "Abau"
+ },
+ "aat": {
+ "english_name": "Albanian, Arvanitika"
+ },
+ "aaw": {
+ "english_name": "Solong"
+ },
+ "aaq": {
+ "english_name": "Abnaki, Eastern"
+ },
+ "aap": {
+ "english_name": "Arára, Pará"
+ },
+ "aas": {
+ "english_name": "Aasáx"
+ },
+ "aax": {
+ "english_name": "Mandobo Atas"
+ },
+ "aaz": {
+ "english_name": "Amarasi"
+ },
+ "bhi": {
+ "english_name": "Bhilali"
+ },
+ "bhh": {
+ "english_name": "Bukharic"
+ },
+ "bhj": {
+ "english_name": "Bahing"
+ },
+ "bhm": {
+ "english_name": "Bathari"
+ },
+ "bhl": {
+ "english_name": "Bimin"
+ },
+ "bho": {
+ "english_name": "Bhojpuri"
+ },
+ "bhn": {
+ "english_name": "Neo-Aramaic, Bohtan"
+ },
+ "bha": {
+ "english_name": "Bharia"
+ },
+ "bhc": {
+ "english_name": "Biga"
+ },
+ "bhb": {
+ "english_name": "Bhili"
+ },
+ "bhe": {
+ "english_name": "Bhaya"
+ },
+ "bhd": {
+ "english_name": "Bhadrawahi"
+ },
+ "bhg": {
+ "english_name": "Binandere"
+ },
+ "bhf": {
+ "english_name": "Odiai"
+ },
+ "bhy": {
+ "english_name": "Bhele"
+ },
+ "bhx": {
+ "english_name": "Bhalay"
+ },
+ "bhz": {
+ "english_name": "Bada (Indonesia)"
+ },
+ "bhq": {
+ "english_name": "Tukang Besi South"
+ },
+ "bhp": {
+ "english_name": "Bima"
+ },
+ "bhs": {
+ "english_name": "Buwal"
+ },
+ "bhr": {
+ "english_name": "Malagasy, Bara"
+ },
+ "bhu": {
+ "english_name": "Bhunjia"
+ },
+ "bht": {
+ "english_name": "Bhattiyali"
+ },
+ "bhw": {
+ "english_name": "Biak"
+ },
+ "bhv": {
+ "english_name": "Bahau"
+ },
+ "hgw": {
+ "english_name": "Haigwai"
+ },
+ "hgm": {
+ "english_name": "Hai//om"
+ },
+ "tpg": {
+ "english_name": "Kula"
+ },
+ "tpf": {
+ "english_name": "Tarpia"
+ },
+ "tpe": {
+ "english_name": "Tippera"
+ },
+ "tpc": {
+ "english_name": "Me'phaa, Azoyú"
+ },
+ "tpa": {
+ "english_name": "Taupota"
+ },
+ "tpo": {
+ "english_name": "Tai Pao"
+ },
+ "tpn": {
+ "english_name": "Tupinambá"
+ },
+ "tpm": {
+ "english_name": "Tampulma"
+ },
+ "tpl": {
+ "english_name": "Me'phaa, Tlacoapa"
+ },
+ "tpk": {
+ "english_name": "Tupinikin"
+ },
+ "tpj": {
+ "english_name": "Tapieté"
+ },
+ "tpi": {
+ "english_name": "Tok Pisin"
+ },
+ "tpw": {
+ "english_name": "Tupí"
+ },
+ "tpv": {
+ "english_name": "Tanapag"
+ },
+ "ext": {
+ "english_name": "Extremaduran"
+ },
+ "tpt": {
+ "english_name": "Tepehua, Tlachichilco"
+ },
+ "tpr": {
+ "english_name": "Tuparí"
+ },
+ "tpq": {
+ "english_name": "Tukpa"
+ },
+ "tpp": {
+ "english_name": "Tepehua, Pisaflores"
+ },
+ "tpz": {
+ "english_name": "Tinputz"
+ },
+ "tpy": {
+ "english_name": "Trumai"
+ },
+ "tpx": {
+ "english_name": "Me'phaa, Acatepec"
+ },
+ "ojv": {
+ "english_name": "Ontong Java"
+ },
+ "ojw": {
+ "english_name": "Ojibwa, Western"
+ },
+ "ugo": {
+ "english_name": "Ugong"
+ },
+ "ojs": {
+ "english_name": "Ojibwa, Severn"
+ },
+ "ojp": {
+ "english_name": "Japanese, Old"
+ },
+ "ugb": {
+ "english_name": "Kuku-Ugbanh"
+ },
+ "uga": {
+ "english_name": "Ugaritic"
+ },
+ "uge": {
+ "english_name": "Ughele"
+ },
+ "ojg": {
+ "english_name": "Ojibwa, Eastern"
+ },
+ "ugy": {
+ "english_name": "Uruguayan Sign Language"
+ },
+ "ojb": {
+ "english_name": "Ojibwa, Northwestern"
+ },
+ "ojc": {
+ "english_name": "Ojibwa, Central"
+ },
+ "crr": {
+ "english_name": "Algonquian, Carolina"
+ },
+ "crs": {
+ "english_name": "Creole French, Seselwa"
+ },
+ "crq": {
+ "english_name": "Chorote, Iyo'wujwa"
+ },
+ "crv": {
+ "english_name": "Chaura"
+ },
+ "crw": {
+ "english_name": "Chrau"
+ },
+ "crt": {
+ "english_name": "Chorote, Iyojwa'ja"
+ },
+ "crz": {
+ "english_name": "Cruzeño"
+ },
+ "crx": {
+ "english_name": "Carrier"
+ },
+ "cry": {
+ "english_name": "Cori"
+ },
+ "crb": {
+ "english_name": "Carib, Island"
+ },
+ "crc": {
+ "english_name": "Lonwolwol"
+ },
+ "cra": {
+ "english_name": "Chara"
+ },
+ "crf": {
+ "english_name": "Caramanta"
+ },
+ "crg": {
+ "english_name": "Michif"
+ },
+ "crd": {
+ "english_name": "Coeur d'Alene"
+ },
+ "crj": {
+ "english_name": "Cree, Southern East"
+ },
+ "crk": {
+ "english_name": "Cree, Plains"
+ },
+ "crh": {
+ "name": "Tatar, Crimean",
+ "english_name": "Tatar, Crimean"
+ },
+ "cri": {
+ "english_name": "Sãotomense"
+ },
+ "crn": {
+ "english_name": "Cora, El Nayar"
+ },
+ "cro": {
+ "english_name": "Crow"
+ },
+ "crl": {
+ "english_name": "Cree, Northern East"
+ },
+ "crm": {
+ "english_name": "Cree, Moose"
+ },
+ "sew": {
+ "english_name": "Sewa Bay"
+ },
+ "sev": {
+ "english_name": "Senoufo, Nyarafolo"
+ },
+ "seu": {
+ "english_name": "Serui-Laut"
+ },
+ "set": {
+ "english_name": "Sentani"
+ },
+ "ses": {
+ "english_name": "Songhai, Koyraboro Senni"
+ },
+ "ser": {
+ "english_name": "Serrano"
+ },
+ "seq": {
+ "english_name": "Sénoufo, Senara"
+ },
+ "sep": {
+ "english_name": "Sénoufo, Sìcìté"
+ },
+ "sez": {
+ "english_name": "Chin, Senthang"
+ },
+ "sey": {
+ "english_name": "Secoya"
+ },
+ "seg": {
+ "english_name": "Segeju"
+ },
+ "sef": {
+ "english_name": "Senoufo, Cebaara"
+ },
+ "see": {
+ "english_name": "Seneca"
+ },
+ "sed": {
+ "english_name": "Sedang"
+ },
+ "sec": {
+ "english_name": "Sechelt"
+ },
+ "seb": {
+ "english_name": "Senoufo, Shempire"
+ },
+ "sea": {
+ "english_name": "Semai"
+ },
+ "seo": {
+ "english_name": "Suarmin"
+ },
+ "sen": {
+ "english_name": "Sénoufo, Nanerigé"
+ },
+ "sel": {
+ "english_name": "Selkup"
+ },
+ "sek": {
+ "english_name": "Sekani"
+ },
+ "sej": {
+ "english_name": "Sene"
+ },
+ "sei": {
+ "english_name": "Seri"
+ },
+ "seh": {
+ "english_name": "Sena"
+ },
+ "zkn": {
+ "english_name": "Kanan"
+ },
+ "zko": {
+ "english_name": "Kott"
+ },
+ "zkh": {
+ "english_name": "Khorezmian"
+ },
+ "zkk": {
+ "english_name": "Karankawa"
+ },
+ "zkd": {
+ "english_name": "Kadu"
+ },
+ "zkg": {
+ "english_name": "Koguryo"
+ },
+ "zka": {
+ "english_name": "Kaimbulawa"
+ },
+ "zkb": {
+ "english_name": "Koibal"
+ },
+ "zkz": {
+ "english_name": "Khazar"
+ },
+ "zkt": {
+ "english_name": "Kitan"
+ },
+ "zku": {
+ "english_name": "Kaurna"
+ },
+ "zkv": {
+ "english_name": "Krevinian"
+ },
+ "zkp": {
+ "english_name": "Kaingáng, São Paulo"
+ },
+ "zkr": {
+ "english_name": "Zakhring"
+ },
+ "swt": {
+ "english_name": "Sawila"
+ },
+ "pdu": {
+ "english_name": "Kayan"
+ },
+ "pdt": {
+ "english_name": "Plautdietsch"
+ },
+ "pdo": {
+ "english_name": "Padoe"
+ },
+ "pdn": {
+ "english_name": "Podena"
+ },
+ "sww": {
+ "english_name": "Sowa"
+ },
+ "pdi": {
+ "english_name": "Pa Di"
+ },
+ "pdc": {
+ "english_name": "German, Pennsylvania"
+ },
+ "pda": {
+ "english_name": "Anam"
+ },
+ "xay": {
+ "english_name": "Kayan Mahakam"
+ },
+ "xap": {
+ "english_name": "Apalachee"
+ },
+ "xaq": {
+ "english_name": "Aquitanian"
+ },
+ "xar": {
+ "english_name": "Karami"
+ },
+ "xas": {
+ "english_name": "Kamas"
+ },
+ "xat": {
+ "english_name": "Katawixi"
+ },
+ "xau": {
+ "english_name": "Kauwera"
+ },
+ "xav": {
+ "english_name": "Xavánte"
+ },
+ "xaw": {
+ "english_name": "Kawaiisu"
+ },
+ "xai": {
+ "english_name": "Kaimbé"
+ },
+ "xal": {
+ "english_name": "Kalmyk"
+ },
+ "xam": {
+ "english_name": "/Xam"
+ },
+ "xan": {
+ "english_name": "Xamtanga"
+ },
+ "xao": {
+ "english_name": "Khao"
+ },
+ "xaa": {
+ "english_name": "Arabic, Andalusian"
+ },
+ "xab": {
+ "english_name": "Sambe"
+ },
+ "xac": {
+ "english_name": "Kachari"
+ },
+ "xad": {
+ "english_name": "Adai"
+ },
+ "xae": {
+ "english_name": "Aequian"
+ },
+ "xag": {
+ "english_name": "Aghwan"
+ },
+ "nrk": {
+ "english_name": "Ngarla"
+ },
+ "nri": {
+ "english_name": "Naga, Chokri"
+ },
+ "nrn": {
+ "english_name": "Norn"
+ },
+ "nrm": {
+ "english_name": "Narom"
+ },
+ "nrl": {
+ "english_name": "Ngarluma"
+ },
+ "nrc": {
+ "english_name": "Noric"
+ },
+ "nrb": {
+ "english_name": "Nara"
+ },
+ "nra": {
+ "english_name": "Ngom"
+ },
+ "nrg": {
+ "english_name": "Narango"
+ },
+ "nre": {
+ "english_name": "Naga, Southern Rengma"
+ },
+ "nrz": {
+ "english_name": "Lala"
+ },
+ "nrx": {
+ "english_name": "Ngurmbur"
+ },
+ "nrr": {
+ "english_name": "Norra"
+ },
+ "nrp": {
+ "english_name": "Picene, North"
+ },
+ "nru": {
+ "english_name": "Narua"
+ },
+ "nrt": {
+ "english_name": "Kalapuya, Northern"
+ },
+ "mlb": {
+ "english_name": "Mbule"
+ },
+ "mlc": {
+ "english_name": "Cao Lan"
+ },
+ "mla": {
+ "english_name": "Malo"
+ },
+ "mlf": {
+ "english_name": "Mal"
+ },
+ "mle": {
+ "english_name": "Manambu"
+ },
+ "mlj": {
+ "english_name": "Miltu"
+ },
+ "mlk": {
+ "english_name": "Ilwana"
+ },
+ "mlh": {
+ "english_name": "Mape"
+ },
+ "mli": {
+ "english_name": "Malimpung"
+ },
+ "mln": {
+ "english_name": "Malango"
+ },
+ "mlo": {
+ "english_name": "Mlomp"
+ },
+ "mll": {
+ "english_name": "Malua Bay"
+ },
+ "mlm": {
+ "english_name": "Mulam"
+ },
+ "mlr": {
+ "english_name": "Vame"
+ },
+ "mls": {
+ "english_name": "Masalit"
+ },
+ "mlp": {
+ "english_name": "Bargam"
+ },
+ "mlq": {
+ "english_name": "Maninkakan, Western"
+ },
+ "mlv": {
+ "english_name": "Motlav"
+ },
+ "mlw": {
+ "english_name": "Moloko"
+ },
+ "mlu": {
+ "english_name": "To'abaita"
+ },
+ "mlz": {
+ "english_name": "Malaynon"
+ },
+ "mlx": {
+ "english_name": "Malfaxal"
+ },
+ "psh": {
+ "english_name": "Pashayi, Southwest"
+ },
+ "vot": {
+ "english_name": "Votic"
+ },
+ "amj": {
+ "english_name": "Amdang"
+ },
+ "vor": {
+ "english_name": "Voro"
+ },
+ "amm": {
+ "english_name": "Ama (Papua New Guinea)"
+ },
+ "pso": {
+ "english_name": "Polish Sign Language"
+ },
+ "psl": {
+ "english_name": "Puerto Rican Sign Language"
+ },
+ "psm": {
+ "english_name": "Pauserna"
+ },
+ "psa": {
+ "english_name": "Awyu, Asue"
+ },
+ "rdb": {
+ "english_name": "Rudbari"
+ },
+ "psd": {
+ "english_name": "Plains Indian Sign Language"
+ },
+ "amf": {
+ "english_name": "Hamer-Banna"
+ },
+ "knn": {
+ "english_name": "Konkani (individual language)"
+ },
+ "kno": {
+ "english_name": "Kono (Sierra Leone)"
+ },
+ "knl": {
+ "english_name": "Keninjal"
+ },
+ "knm": {
+ "english_name": "Kanamarí"
+ },
+ "knj": {
+ "english_name": "Kanjobal, Western"
+ },
+ "knk": {
+ "english_name": "Kuranko"
+ },
+ "kni": {
+ "english_name": "Kanufi"
+ },
+ "knf": {
+ "english_name": "Mankanya"
+ },
+ "kng": {
+ "english_name": "Koongo"
+ },
+ "knd": {
+ "english_name": "Konda"
+ },
+ "kne": {
+ "english_name": "Kankanaey"
+ },
+ "knb": {
+ "english_name": "Kalinga, Lubuagan"
+ },
+ "knc": {
+ "english_name": "Kanuri, Central"
+ },
+ "kna": {
+ "english_name": "Dera (Nigeria)"
+ },
+ "psy": {
+ "english_name": "Piscataway"
+ },
+ "knz": {
+ "english_name": "Kalamsé"
+ },
+ "knx": {
+ "english_name": "Kendayan"
+ },
+ "kny": {
+ "english_name": "Kanyok"
+ },
+ "knv": {
+ "english_name": "Tabo"
+ },
+ "knw": {
+ "english_name": "Kung-Ekoka"
+ },
+ "knt": {
+ "english_name": "Katukína, Panoan"
+ },
+ "knu": {
+ "english_name": "Kono (Guinea)"
+ },
+ "knr": {
+ "english_name": "Kaningra"
+ },
+ "kns": {
+ "english_name": "Kensiu"
+ },
+ "knp": {
+ "english_name": "Kwanja"
+ },
+ "knq": {
+ "english_name": "Kintaq"
+ },
+ "psr": {
+ "english_name": "Portuguese Sign Language"
+ },
+ "pss": {
+ "english_name": "Kaulong"
+ },
+ "ams": {
+ "english_name": "Amami-Oshima, Southern"
+ },
+ "amr": {
+ "english_name": "Amarakaeri"
+ },
+ "amt": {
+ "english_name": "Amto"
+ },
+ "pst": {
+ "english_name": "Pashto, Central"
+ },
+ "amv": {
+ "english_name": "Ambelau"
+ },
+ "vgt": {
+ "english_name": "Vlaamse Gebarentaal"
+ },
+ "ijs": {
+ "english_name": "Ijo, Southeast"
+ },
+ "ijc": {
+ "english_name": "Izon"
+ },
+ "ije": {
+ "english_name": "Biseni"
+ },
+ "ijj": {
+ "english_name": "Ede Ije"
+ },
+ "ijn": {
+ "english_name": "Kalabari"
+ },
+ "be": {
+ "english_name": "Belarusian"
+ },
+ "bg": {
+ "name": "Български",
+ "english_name": "Bulgarian"
+ },
+ "ba": {
+ "english_name": "Bashkir"
+ },
+ "bm": {
+ "english_name": "Bambara"
+ },
+ "bn": {
+ "name": "বাংলা",
+ "english_name": "Bengali"
+ },
+ "bo": {
+ "english_name": "Tibetan"
+ },
+ "bi": {
+ "english_name": "Bislama"
+ },
+ "chc": {
+ "english_name": "Catawba"
+ },
+ "br": {
+ "name": "Brezhoneg",
+ "english_name": "Breton"
+ },
+ "bs": {
+ "name": "Bosnian",
+ "english_name": "Bosnian"
+ },
+ "cic": {
+ "english_name": "Chickasaw"
+ },
+ "cib": {
+ "english_name": "Gbe, Ci"
+ },
+ "cia": {
+ "english_name": "Cia-Cia"
+ },
+ "zim": {
+ "english_name": "Mesme"
+ },
+ "cie": {
+ "english_name": "Cineni"
+ },
+ "cid": {
+ "english_name": "Chimariko"
+ },
+ "cik": {
+ "english_name": "Kinnauri, Chitkuli"
+ },
+ "cih": {
+ "english_name": "Chinali"
+ },
+ "cin": {
+ "english_name": "Cinta Larga"
+ },
+ "cim": {
+ "english_name": "Cimbrian"
+ },
+ "ur": {
+ "english_name": "Urdu"
+ },
+ "cir": {
+ "english_name": "Tiri"
+ },
+ "cip": {
+ "english_name": "Chiapanec"
+ },
+ "ciw": {
+ "english_name": "Chippewa"
+ },
+ "uk": {
+ "name": "українська",
+ "english_name": "Ukrainian"
+ },
+ "quc": {
+ "english_name": "K'iche'"
+ },
+ "ciy": {
+ "english_name": "Chaima"
+ },
+ "sxb": {
+ "english_name": "Suba"
+ },
+ "sxc": {
+ "english_name": "Sicanian"
+ },
+ "sxe": {
+ "english_name": "Sighu"
+ },
+ "sxg": {
+ "english_name": "Shixing"
+ },
+ "sxk": {
+ "english_name": "Kalapuya, Southern"
+ },
+ "sxl": {
+ "english_name": "Selian"
+ },
+ "sxm": {
+ "english_name": "Samre"
+ },
+ "sxn": {
+ "english_name": "Sangir"
+ },
+ "sxo": {
+ "english_name": "Sorothaptic"
+ },
+ "sxr": {
+ "english_name": "Saaroa"
+ },
+ "sxs": {
+ "english_name": "Sasaru"
+ },
+ "sxu": {
+ "english_name": "Saxon, Upper"
+ },
+ "qub": {
+ "english_name": "Quechua, Huallaga Huánuco"
+ },
+ "sxw": {
+ "english_name": "Gbe, Saxwe"
+ },
+ "jct": {
+ "english_name": "Krymchak"
+ },
+ "jcs": {
+ "english_name": "Jamaican Country Sign Language"
+ },
+ "qud": {
+ "english_name": "Quichua, Calderón Highland"
+ },
+ "ago": {
+ "english_name": "Tainae"
+ },
+ "agn": {
+ "english_name": "Agutaynen"
+ },
+ "agm": {
+ "english_name": "Angaataha"
+ },
+ "agl": {
+ "english_name": "Fembe"
+ },
+ "agk": {
+ "english_name": "Agta, Isarog"
+ },
+ "agj": {
+ "english_name": "Argobba"
+ },
+ "agi": {
+ "english_name": "Agariya"
+ },
+ "agh": {
+ "english_name": "Ngelima"
+ },
+ "agg": {
+ "english_name": "Angor"
+ },
+ "agf": {
+ "english_name": "Arguni"
+ },
+ "age": {
+ "english_name": "Angal"
+ },
+ "agd": {
+ "english_name": "Agarabi"
+ },
+ "agc": {
+ "english_name": "Agatu"
+ },
+ "agb": {
+ "english_name": "Legbo"
+ },
+ "aga": {
+ "english_name": "Aguano"
+ },
+ "qug": {
+ "english_name": "Quichua, Chimborazo Highland"
+ },
+ "agz": {
+ "english_name": "Agta, Mt. Iriga"
+ },
+ "agy": {
+ "english_name": "Alta, Southern"
+ },
+ "agx": {
+ "english_name": "Aghul"
+ },
+ "agw": {
+ "english_name": "Kahua"
+ },
+ "agv": {
+ "english_name": "Dumagat, Remontado"
+ },
+ "agu": {
+ "english_name": "Aguacateco"
+ },
+ "agt": {
+ "english_name": "Agta, Central Cagayan"
+ },
+ "ags": {
+ "english_name": "Esimbi"
+ },
+ "agr": {
+ "english_name": "Aguaruna"
+ },
+ "agq": {
+ "english_name": "Aghem"
+ },
+ "qvl": {
+ "english_name": "Quechua, Cajatambo North Lima"
+ },
+ "bvr": {
+ "english_name": "Burarra"
+ },
+ "bvq": {
+ "english_name": "Birri"
+ },
+ "bvp": {
+ "english_name": "Bumang"
+ },
+ "bvw": {
+ "english_name": "Boga"
+ },
+ "bvv": {
+ "english_name": "Baniva"
+ },
+ "bvu": {
+ "english_name": "Malay, Bukit"
+ },
+ "bvt": {
+ "english_name": "Bati (Indonesia)"
+ },
+ "bvz": {
+ "english_name": "Bauzi"
+ },
+ "bvy": {
+ "english_name": "Baybayanon"
+ },
+ "bvx": {
+ "english_name": "Dibole"
+ },
+ "qva": {
+ "english_name": "Quechua, Ambo-Pasco"
+ },
+ "quf": {
+ "english_name": "Quechua, Lambayeque"
+ },
+ "qvc": {
+ "english_name": "Quechua, Cajamarca"
+ },
+ "bvc": {
+ "english_name": "Baelelea"
+ },
+ "bvb": {
+ "english_name": "Bube"
+ },
+ "bva": {
+ "english_name": "Barein"
+ },
+ "bvg": {
+ "english_name": "Bonkeng"
+ },
+ "bvf": {
+ "english_name": "Boor"
+ },
+ "bve": {
+ "english_name": "Malay, Berau"
+ },
+ "bvd": {
+ "english_name": "Baeggu"
+ },
+ "bvk": {
+ "english_name": "Bukat"
+ },
+ "bvj": {
+ "english_name": "Baan"
+ },
+ "bvi": {
+ "english_name": "Belanda Viri"
+ },
+ "bvh": {
+ "english_name": "Bure"
+ },
+ "bvo": {
+ "english_name": "Bolgo"
+ },
+ "bvn": {
+ "english_name": "Buna"
+ },
+ "bvm": {
+ "english_name": "Bamunka"
+ },
+ "bvl": {
+ "english_name": "Bolivian Sign Language"
+ },
+ "qui": {
+ "english_name": "Quileute"
+ },
+ "suv": {
+ "english_name": "Puroik"
+ },
+ "quh": {
+ "english_name": "Quechua, South Bolivian"
+ },
+ "evh": {
+ "english_name": "Uvbie"
+ },
+ "trh": {
+ "english_name": "Turaka"
+ },
+ "trj": {
+ "english_name": "Toram"
+ },
+ "trm": {
+ "english_name": "Tregami"
+ },
+ "trl": {
+ "english_name": "Scottish, Traveller"
+ },
+ "evn": {
+ "english_name": "Evenki"
+ },
+ "trn": {
+ "english_name": "Trinitario"
+ },
+ "quk": {
+ "english_name": "Quechua, Chachapoyas"
+ },
+ "trc": {
+ "english_name": "Triqui, Copala"
+ },
+ "trb": {
+ "english_name": "Terebu"
+ },
+ "tre": {
+ "english_name": "Tarangan, East"
+ },
+ "eve": {
+ "english_name": "Even"
+ },
+ "trg": {
+ "english_name": "Lishán Didán"
+ },
+ "trf": {
+ "english_name": "Creole English, Trinidadian"
+ },
+ "try": {
+ "english_name": "Turung"
+ },
+ "trx": {
+ "english_name": "Bidayuh, Tringgus-Sembaan"
+ },
+ "trz": {
+ "english_name": "Torá"
+ },
+ "trq": {
+ "english_name": "Triqui, San Martín Itunyoso"
+ },
+ "trp": {
+ "english_name": "Kok Borok"
+ },
+ "trs": {
+ "english_name": "Triqui, Chicahuaxtla"
+ },
+ "trr": {
+ "english_name": "Taushiro"
+ },
+ "tru": {
+ "english_name": "Turoyo"
+ },
+ "trt": {
+ "english_name": "Tunggare"
+ },
+ "trw": {
+ "english_name": "Torwali"
+ },
+ "trv": {
+ "english_name": "Taroko"
+ },
+ "tdk": {
+ "english_name": "Tambas"
+ },
+ "tdj": {
+ "english_name": "Tajio"
+ },
+ "odt": {
+ "english_name": "Dutch, Old"
+ },
+ "odu": {
+ "english_name": "Odual"
+ },
+ "odk": {
+ "english_name": "Od"
+ },
+ "oda": {
+ "english_name": "Odut"
+ },
+ "ues": {
+ "english_name": "Kioko"
+ },
+ "tdn": {
+ "english_name": "Tondano"
+ },
+ "tdl": {
+ "english_name": "Sur"
+ },
+ "lea": {
+ "english_name": "Lega-Shabunda"
+ },
+ "leb": {
+ "english_name": "Lala-Bisa"
+ },
+ "lec": {
+ "english_name": "Leco"
+ },
+ "led": {
+ "english_name": "Lendu"
+ },
+ "lee": {
+ "english_name": "Lyélé"
+ },
+ "lef": {
+ "english_name": "Lelemi"
+ },
+ "leh": {
+ "english_name": "Lenje"
+ },
+ "lei": {
+ "english_name": "Lemio"
+ },
+ "lej": {
+ "english_name": "Lengola"
+ },
+ "lek": {
+ "english_name": "Leipon"
+ },
+ "lel": {
+ "english_name": "Lele (Democratic Republic of Congo)"
+ },
+ "lem": {
+ "english_name": "Nomaande"
+ },
+ "len": {
+ "english_name": "Lenca"
+ },
+ "leo": {
+ "english_name": "Leti (Cameroon)"
+ },
+ "lep": {
+ "english_name": "Lepcha"
+ },
+ "leq": {
+ "english_name": "Lembena"
+ },
+ "ler": {
+ "english_name": "Lenkau"
+ },
+ "les": {
+ "english_name": "Lese"
+ },
+ "let": {
+ "english_name": "Lesing-Gelimi"
+ },
+ "leu": {
+ "english_name": "Kara (Papua New Guinea)"
+ },
+ "lev": {
+ "english_name": "Lamma"
+ },
+ "lew": {
+ "english_name": "Kaili, Ledo"
+ },
+ "lex": {
+ "english_name": "Luang"
+ },
+ "ley": {
+ "english_name": "Lemolang"
+ },
+ "lez": {
+ "english_name": "Lezghian"
+ },
+ "tdd": {
+ "english_name": "Tai Nüa"
+ },
+ "ctt": {
+ "english_name": "Chetti, Wayanad"
+ },
+ "ctu": {
+ "english_name": "Chol"
+ },
+ "ctp": {
+ "english_name": "Chatino, Western Highland"
+ },
+ "cts": {
+ "english_name": "Bikol, Northern Catanduanes"
+ },
+ "tdy": {
+ "english_name": "Tadyawan"
+ },
+ "ctz": {
+ "english_name": "Chatino, Zacatepec"
+ },
+ "ctd": {
+ "english_name": "Chin, Tedim"
+ },
+ "cte": {
+ "english_name": "Chinantec, Tepinapa"
+ },
+ "ctg": {
+ "english_name": "Chittagonian"
+ },
+ "cta": {
+ "english_name": "Chatino, Tataltepec"
+ },
+ "ctc": {
+ "english_name": "Chetco"
+ },
+ "ctl": {
+ "english_name": "Chinantec, Tlacoatzintepec"
+ },
+ "ctm": {
+ "english_name": "Chitimacha"
+ },
+ "ctn": {
+ "english_name": "Chhintange"
+ },
+ "cto": {
+ "english_name": "Emberá-Catío"
+ },
+ "cth": {
+ "english_name": "Chin, Thaiphum"
+ },
+ "sgy": {
+ "english_name": "Sanglechi"
+ },
+ "sgx": {
+ "english_name": "Sierra Leone Sign Language"
+ },
+ "sgz": {
+ "english_name": "Sursurunga"
+ },
+ "sgp": {
+ "english_name": "Singpho"
+ },
+ "sgs": {
+ "english_name": "Samogitian"
+ },
+ "sgr": {
+ "english_name": "Sangisari"
+ },
+ "sgu": {
+ "english_name": "Salas"
+ },
+ "sgt": {
+ "english_name": "Brokpake"
+ },
+ "sgw": {
+ "english_name": "Sebat Bet Gurage"
+ },
+ "sgi": {
+ "english_name": "Suga"
+ },
+ "sgh": {
+ "english_name": "Shughni"
+ },
+ "sgk": {
+ "english_name": "Sangkong"
+ },
+ "sgj": {
+ "english_name": "Surgujia"
+ },
+ "sgm": {
+ "english_name": "Singa"
+ },
+ "tdr": {
+ "english_name": "Todrah"
+ },
+ "sga": {
+ "english_name": "Irish, Old (to 900)"
+ },
+ "sgc": {
+ "english_name": "Kipsigis"
+ },
+ "sgb": {
+ "english_name": "Ayta, Mag-antsi"
+ },
+ "sge": {
+ "english_name": "Segai"
+ },
+ "sgd": {
+ "english_name": "Surigaonon"
+ },
+ "sgg": {
+ "english_name": "Swiss-German Sign Language"
+ },
+ "ziw": {
+ "english_name": "Zigula"
+ },
+ "zir": {
+ "english_name": "Ziriya"
+ },
+ "ziz": {
+ "english_name": "Zizilivakan"
+ },
+ "tdv": {
+ "english_name": "Toro"
+ },
+ "zib": {
+ "english_name": "Zimbabwe Sign Language"
+ },
+ "tdu": {
+ "english_name": "Dusun, Tempasuk"
+ },
+ "zia": {
+ "english_name": "Zia"
+ },
+ "zin": {
+ "english_name": "Zinza"
+ },
+ "zil": {
+ "english_name": "Zialo"
+ },
+ "tdt": {
+ "english_name": "Tetun Dili"
+ },
+ "zik": {
+ "english_name": "Zimakani"
+ },
+ "pfa": {
+ "english_name": "Pááfang"
+ },
+ "srb": {
+ "english_name": "Sora"
+ },
+ "pfe": {
+ "english_name": "Peere"
+ },
+ "pfl": {
+ "english_name": "Pfaelzisch"
+ },
+ "srf": {
+ "english_name": "Nafi"
+ },
+ "xcm": {
+ "english_name": "Comecrudo"
+ },
+ "pug": {
+ "english_name": "Phuie"
+ },
+ "xcb": {
+ "english_name": "Cumbric"
+ },
+ "xcc": {
+ "english_name": "Camunic"
+ },
+ "xcg": {
+ "english_name": "Gaulish, Cisalpine"
+ },
+ "xce": {
+ "english_name": "Celtiberian"
+ },
+ "xch": {
+ "english_name": "Chemakum"
+ },
+ "xcn": {
+ "english_name": "Cotoname"
+ },
+ "xco": {
+ "english_name": "Chorasmian"
+ },
+ "xcl": {
+ "english_name": "Armenian, Classical"
+ },
+ "sro": {
+ "english_name": "Sardinian, Campidanese"
+ },
+ "xcr": {
+ "english_name": "Carian"
+ },
+ "xcv": {
+ "english_name": "Chuvantsy"
+ },
+ "xcw": {
+ "english_name": "Coahuilteco"
+ },
+ "xct": {
+ "english_name": "Tibetan, Classical"
+ },
+ "xcu": {
+ "english_name": "Curonian"
+ },
+ "srm": {
+ "english_name": "Saramaccan"
+ },
+ "xcy": {
+ "english_name": "Cayuse"
+ },
+ "npl": {
+ "english_name": "Nahuatl, Southeastern Puebla"
+ },
+ "npo": {
+ "english_name": "Naga, Pochuri"
+ },
+ "npn": {
+ "english_name": "Mondropolon"
+ },
+ "npi": {
+ "english_name": "Nepali (individual language)"
+ },
+ "nph": {
+ "english_name": "Naga, Phom"
+ },
+ "npg": {
+ "english_name": "Naga, Ponyo-Gongwang"
+ },
+ "npa": {
+ "english_name": "Nar Phu"
+ },
+ "gcc": {
+ "english_name": "Mali"
+ },
+ "npb": {
+ "english_name": "Nupbikha"
+ },
+ "npy": {
+ "english_name": "Napu"
+ },
+ "npu": {
+ "english_name": "Naga, Puimei"
+ },
+ "gce": {
+ "english_name": "Galice"
+ },
+ "nps": {
+ "english_name": "Nipsan"
+ },
+ "gcd": {
+ "english_name": "Ganggalida"
+ },
+ "mjd": {
+ "english_name": "Maidu, Northwest"
+ },
+ "mje": {
+ "english_name": "Muskum"
+ },
+ "mjg": {
+ "english_name": "Tu"
+ },
+ "mjc": {
+ "english_name": "Mixtec, San Juan Colorado"
+ },
+ "mjl": {
+ "english_name": "Mandeali"
+ },
+ "mjm": {
+ "english_name": "Medebur"
+ },
+ "mjn": {
+ "english_name": "Ma (Papua New Guinea)"
+ },
+ "gcf": {
+ "english_name": "Creole French, Guadeloupean"
+ },
+ "mjh": {
+ "english_name": "Mwera (Nyasa)"
+ },
+ "mji": {
+ "english_name": "Kim Mun"
+ },
+ "mjj": {
+ "english_name": "Mawak"
+ },
+ "mjk": {
+ "english_name": "Matukar"
+ },
+ "mjt": {
+ "english_name": "Sauria Paharia"
+ },
+ "mju": {
+ "english_name": "Manna-Dora"
+ },
+ "mjv": {
+ "english_name": "Mannan"
+ },
+ "mjw": {
+ "english_name": "Karbi"
+ },
+ "mjp": {
+ "english_name": "Malapandaram"
+ },
+ "mjq": {
+ "english_name": "Malaryan"
+ },
+ "mjr": {
+ "english_name": "Malavedan"
+ },
+ "mjs": {
+ "english_name": "Miship"
+ },
+ "mjx": {
+ "english_name": "Mahali"
+ },
+ "mjy": {
+ "english_name": "Mahican"
+ },
+ "mjz": {
+ "english_name": "Majhi"
+ },
+ "vml": {
+ "english_name": "Malgana"
+ },
+ "vmm": {
+ "english_name": "Mixtec, Mitlatongo"
+ },
+ "vmj": {
+ "english_name": "Mixtec, Ixtayutla"
+ },
+ "vmk": {
+ "english_name": "Makhuwa-Shirima"
+ },
+ "vmh": {
+ "english_name": "Maraghei"
+ },
+ "vmi": {
+ "english_name": "Miwa"
+ },
+ "vmf": {
+ "english_name": "Mainfränkisch"
+ },
+ "vmg": {
+ "english_name": "Lungalunga"
+ },
+ "vmd": {
+ "english_name": "Koraga, Mudu"
+ },
+ "vme": {
+ "english_name": "Masela, East"
+ },
+ "vmb": {
+ "english_name": "Barbaram"
+ },
+ "vmc": {
+ "english_name": "Mixtec, Juxtlahuaca"
+ },
+ "vma": {
+ "english_name": "Martuyhunira"
+ },
+ "vmz": {
+ "english_name": "Mazatec, Mazatlán"
+ },
+ "vmx": {
+ "english_name": "Mixtec, Tamazola"
+ },
+ "vmy": {
+ "english_name": "Mazatec, Ayautla"
+ },
+ "vmv": {
+ "english_name": "Maidu, Valley"
+ },
+ "vmw": {
+ "english_name": "Makhuwa"
+ },
+ "vmu": {
+ "english_name": "Muluridyi"
+ },
+ "vmr": {
+ "english_name": "Marenje"
+ },
+ "vms": {
+ "english_name": "Moksela"
+ },
+ "vmp": {
+ "english_name": "Mazatec, Soyaltepec"
+ },
+ "vmq": {
+ "english_name": "Mixtec, Soyaltepec"
+ },
+ "lzz": {
+ "english_name": "Laz"
+ },
+ "lzh": {
+ "english_name": "Chinese, Literary"
+ },
+ "lzl": {
+ "english_name": "Litzlitz"
+ },
+ "lzn": {
+ "english_name": "Naga, Leinong"
+ },
+ "kpq": {
+ "english_name": "Korupun-Sela"
+ },
+ "kpr": {
+ "english_name": "Korafe-Yegha"
+ },
+ "kps": {
+ "english_name": "Tehit"
+ },
+ "kpt": {
+ "english_name": "Karata"
+ },
+ "kpu": {
+ "english_name": "Kafoa"
+ },
+ "kpv": {
+ "english_name": "Komi-Zyrian"
+ },
+ "kpw": {
+ "english_name": "Kobon"
+ },
+ "kpx": {
+ "english_name": "Koiali, Mountain"
+ },
+ "kpy": {
+ "english_name": "Koryak"
+ },
+ "kpz": {
+ "english_name": "Kupsabiny"
+ },
+ "kpa": {
+ "english_name": "Kutto"
+ },
+ "kpb": {
+ "english_name": "Kurumba, Mullu"
+ },
+ "kpc": {
+ "english_name": "Curripaco"
+ },
+ "kpd": {
+ "english_name": "Koba"
+ },
+ "kpe": {
+ "english_name": "Kpelle"
+ },
+ "kpf": {
+ "english_name": "Komba"
+ },
+ "kpg": {
+ "english_name": "Kapingamarangi"
+ },
+ "kph": {
+ "english_name": "Kplang"
+ },
+ "kpi": {
+ "english_name": "Kofei"
+ },
+ "kpj": {
+ "english_name": "Karajá"
+ },
+ "kpk": {
+ "english_name": "Kpan"
+ },
+ "kpl": {
+ "english_name": "Kpala"
+ },
+ "kpm": {
+ "english_name": "Koho"
+ },
+ "kpn": {
+ "english_name": "Kepkiriwát"
+ },
+ "kpo": {
+ "english_name": "Ikposo"
+ },
+ "ihp": {
+ "english_name": "Iha"
+ },
+ "ihw": {
+ "english_name": "Bidhawal"
+ },
+ "ihi": {
+ "english_name": "Ihievbe"
+ },
+ "ihb": {
+ "english_name": "Iha Based Pidgin"
+ },
+ "mjo": {
+ "english_name": "Malankuravan"
+ },
+ "qwc": {
+ "english_name": "Quechua, Classical"
+ },
+ "xor": {
+ "english_name": "Korubo"
+ },
+ "ckb": {
+ "english_name": "Kurdish, Central"
+ },
+ "ckl": {
+ "english_name": "Cibak"
+ },
+ "cko": {
+ "english_name": "Anufo"
+ },
+ "ckn": {
+ "english_name": "Chin, Kaang"
+ },
+ "ckh": {
+ "english_name": "Chak"
+ },
+ "cku": {
+ "english_name": "Koasati"
+ },
+ "ckt": {
+ "english_name": "Chukot"
+ },
+ "ckv": {
+ "english_name": "Kavalan"
+ },
+ "ckq": {
+ "english_name": "Kajakse"
+ },
+ "cks": {
+ "english_name": "Tayo"
+ },
+ "ckr": {
+ "english_name": "Kairak"
+ },
+ "cky": {
+ "english_name": "Cakfem-Mushere"
+ },
+ "ckx": {
+ "english_name": "Caka"
+ },
+ "ckz": {
+ "english_name": "Cakchiquel-Quiché Mixed Language"
+ },
+ "dbi": {
+ "english_name": "Doka"
+ },
+ "dbj": {
+ "english_name": "Ida'an"
+ },
+ "dbm": {
+ "english_name": "Duguri"
+ },
+ "dbl": {
+ "english_name": "Dyirbal"
+ },
+ "dbo": {
+ "english_name": "Dulbu"
+ },
+ "dbn": {
+ "english_name": "Duriankere"
+ },
+ "dba": {
+ "english_name": "Bangime"
+ },
+ "szc": {
+ "english_name": "Semaq Beri"
+ },
+ "dbb": {
+ "english_name": "Deno"
+ },
+ "dbe": {
+ "english_name": "Dabe"
+ },
+ "dbd": {
+ "english_name": "Dadiya"
+ },
+ "dbg": {
+ "english_name": "Dogon, Dogul Dom"
+ },
+ "dbf": {
+ "english_name": "Edopi"
+ },
+ "dby": {
+ "english_name": "Dibiyaso"
+ },
+ "dbq": {
+ "english_name": "Daba"
+ },
+ "dbp": {
+ "english_name": "Duwai"
+ },
+ "szp": {
+ "english_name": "Suabo"
+ },
+ "dbr": {
+ "english_name": "Dabarre"
+ },
+ "dbu": {
+ "english_name": "Dogon, Bondum Dom"
+ },
+ "dbt": {
+ "english_name": "Dogon, Ben Tey"
+ },
+ "dbw": {
+ "english_name": "Dogon, Bankan Tey"
+ },
+ "dbv": {
+ "english_name": "Dungu"
+ },
+ "xvi": {
+ "english_name": "Kamviri"
+ },
+ "jaz": {
+ "english_name": "Jawe"
+ },
+ "jax": {
+ "english_name": "Malay, Jambi"
+ },
+ "jay": {
+ "english_name": "Yan-nhangu"
+ },
+ "jat": {
+ "english_name": "Jakati"
+ },
+ "jau": {
+ "english_name": "Yaur"
+ },
+ "jas": {
+ "english_name": "Javanese, New Caledonian"
+ },
+ "jaq": {
+ "english_name": "Yaqay"
+ },
+ "jan": {
+ "english_name": "Jandai"
+ },
+ "jao": {
+ "english_name": "Yanyuwa"
+ },
+ "jal": {
+ "english_name": "Yalahatan"
+ },
+ "jam": {
+ "english_name": "Creole English, Jamaican"
+ },
+ "jaj": {
+ "english_name": "Zazao"
+ },
+ "jak": {
+ "english_name": "Jakun"
+ },
+ "jah": {
+ "english_name": "Jah Hut"
+ },
+ "jaf": {
+ "english_name": "Jara"
+ },
+ "jad": {
+ "english_name": "Jahanka"
+ },
+ "jae": {
+ "english_name": "Yabem"
+ },
+ "jab": {
+ "english_name": "Hyam"
+ },
+ "jac": {
+ "english_name": "Popti'"
+ },
+ "jaa": {
+ "english_name": "Jamamadí"
+ },
+ "xvo": {
+ "english_name": "Volscian"
+ },
+ "gbf": {
+ "english_name": "Gaikundi"
+ },
+ "gbg": {
+ "english_name": "Gbanziri"
+ },
+ "gbd": {
+ "english_name": "Karadjeri"
+ },
+ "gbe": {
+ "english_name": "Niksek"
+ },
+ "aeu": {
+ "english_name": "Akeu"
+ },
+ "aew": {
+ "english_name": "Ambakich"
+ },
+ "gba": {
+ "english_name": "Gbaya (Central African Republic)"
+ },
+ "gbn": {
+ "english_name": "Mo'da"
+ },
+ "gbo": {
+ "english_name": "Grebo, Northern"
+ },
+ "gbl": {
+ "english_name": "Gamit"
+ },
+ "gbm": {
+ "english_name": "Garhwali"
+ },
+ "gbj": {
+ "english_name": "Gadaba, Bodo"
+ },
+ "gbk": {
+ "english_name": "Gaddi"
+ },
+ "gbh": {
+ "english_name": "Gbe, Defi"
+ },
+ "gbi": {
+ "english_name": "Galela"
+ },
+ "gbv": {
+ "english_name": "Gbanu"
+ },
+ "gbw": {
+ "english_name": "Gabi-Gabi"
+ },
+ "aec": {
+ "english_name": "Arabic, Saidi"
+ },
+ "gbu": {
+ "english_name": "Gagadu"
+ },
+ "gbr": {
+ "english_name": "Gbagyi"
+ },
+ "gbs": {
+ "english_name": "Gbe, Gbesi"
+ },
+ "gbp": {
+ "english_name": "Gbaya-Bossangoa"
+ },
+ "gbq": {
+ "english_name": "Gbaya-Bozoum"
+ },
+ "aek": {
+ "english_name": "Haeke"
+ },
+ "gbz": {
+ "english_name": "Dari, Zoroastrian"
+ },
+ "ael": {
+ "english_name": "Ambele"
+ },
+ "gbx": {
+ "english_name": "Gbe, Eastern Xwla"
+ },
+ "gby": {
+ "english_name": "Gbari"
+ },
+ "btu": {
+ "english_name": "Batu"
+ },
+ "btt": {
+ "english_name": "Bete-Bendi"
+ },
+ "btw": {
+ "english_name": "Butuanon"
+ },
+ "btv": {
+ "english_name": "Bateri"
+ },
+ "btq": {
+ "english_name": "Batek"
+ },
+ "btp": {
+ "english_name": "Budibud"
+ },
+ "bts": {
+ "english_name": "Batak Simalungun"
+ },
+ "btr": {
+ "english_name": "Baetora"
+ },
+ "bty": {
+ "english_name": "Bobot"
+ },
+ "btx": {
+ "english_name": "Batak Karo"
+ },
+ "btz": {
+ "english_name": "Batak Alas-Kluet"
+ },
+ "bte": {
+ "english_name": "Gamo-Ningi"
+ },
+ "btd": {
+ "english_name": "Batak Dairi"
+ },
+ "btg": {
+ "english_name": "Bété, Gagnoa"
+ },
+ "btf": {
+ "english_name": "Birgit"
+ },
+ "bta": {
+ "english_name": "Bata"
+ },
+ "btc": {
+ "english_name": "Bati (Cameroon)"
+ },
+ "btm": {
+ "english_name": "Batak Mandailing"
+ },
+ "btl": {
+ "english_name": "Bhatola"
+ },
+ "bto": {
+ "english_name": "Bikol, Rinconada"
+ },
+ "btn": {
+ "english_name": "Ratagnon"
+ },
+ "bti": {
+ "english_name": "Burate"
+ },
+ "bth": {
+ "english_name": "Bidayuh, Biatah"
+ },
+ "btj": {
+ "english_name": "Malay, Bacanese"
+ },
+ "tsj": {
+ "english_name": "Tshangla"
+ },
+ "etr": {
+ "english_name": "Edolo"
+ },
+ "ets": {
+ "english_name": "Yekhee"
+ },
+ "tlq": {
+ "english_name": "Tai Loi"
+ },
+ "tlp": {
+ "english_name": "Totonac, Filomena Mata-Coahuitlán"
+ },
+ "tlv": {
+ "english_name": "Taliabu"
+ },
+ "ett": {
+ "english_name": "Etruscan"
+ },
+ "etu": {
+ "english_name": "Ejagham"
+ },
+ "etz": {
+ "english_name": "Semimi"
+ },
+ "etx": {
+ "english_name": "Eten"
+ },
+ "tlx": {
+ "english_name": "Khehek"
+ },
+ "etb": {
+ "english_name": "Etebi"
+ },
+ "etc": {
+ "english_name": "Etchemin"
+ },
+ "tla": {
+ "english_name": "Tepehuan, Southwestern"
+ },
+ "tlg": {
+ "english_name": "Tofanma"
+ },
+ "tlf": {
+ "english_name": "Telefol"
+ },
+ "tld": {
+ "english_name": "Talaud"
+ },
+ "tlk": {
+ "english_name": "Taloki"
+ },
+ "tlj": {
+ "english_name": "Talinga-Bwisi"
+ },
+ "eth": {
+ "english_name": "Ethiopian Sign Language"
+ },
+ "tlh": {
+ "english_name": "Klingon"
+ },
+ "etn": {
+ "english_name": "Eton (Vanuatu)"
+ },
+ "eto": {
+ "english_name": "Eton (Cameroon)"
+ },
+ "tlm": {
+ "english_name": "Tolomako"
+ },
+ "tll": {
+ "english_name": "Tetela"
+ },
+ "ch": {
+ "english_name": "Chamorro"
+ },
+ "co": {
+ "english_name": "Corsican"
+ },
+ "ca": {
+ "name": "Català",
+ "english_name": "Catalan"
+ },
+ "ce": {
+ "english_name": "Chechen"
+ },
+ "cy": {
+ "name": "Cymraeg",
+ "english_name": "Welsh"
+ },
+ "wti": {
+ "english_name": "Berta"
+ },
+ "cs": {
+ "name": "čeština",
+ "english_name": "Czech"
+ },
+ "cr": {
+ "english_name": "Cree"
+ },
+ "tsa": {
+ "english_name": "Tsaangi"
+ },
+ "cv": {
+ "english_name": "Chuvash"
+ },
+ "cu": {
+ "english_name": "Slavic, Church"
+ },
+ "lgk": {
+ "english_name": "Lingarak"
+ },
+ "lgh": {
+ "english_name": "Laghuu"
+ },
+ "lgi": {
+ "english_name": "Lengilu"
+ },
+ "lgn": {
+ "english_name": "Opuuo"
+ },
+ "tsx": {
+ "english_name": "Mubami"
+ },
+ "lgl": {
+ "english_name": "Wala"
+ },
+ "lgm": {
+ "english_name": "Lega-Mwenga"
+ },
+ "lgb": {
+ "english_name": "Laghu"
+ },
+ "lga": {
+ "english_name": "Lungga"
+ },
+ "lgg": {
+ "english_name": "Lugbara"
+ },
+ "lgz": {
+ "english_name": "Ligenza"
+ },
+ "lgr": {
+ "english_name": "Lengo"
+ },
+ "lgq": {
+ "english_name": "Logba"
+ },
+ "lgt": {
+ "english_name": "Pahi"
+ },
+ "lgu": {
+ "english_name": "Longgu"
+ },
+ "qwt": {
+ "english_name": "Kwalhioqua-Tlatskanai"
+ },
+ "rbp": {
+ "english_name": "Barababaraba"
+ },
+ "cvn": {
+ "english_name": "Chinantec, Valle Nacional"
+ },
+ "rbl": {
+ "english_name": "Bikol, Miraya"
+ },
+ "rbk": {
+ "english_name": "Bontok, Northern"
+ },
+ "cvg": {
+ "english_name": "Chug"
+ },
+ "rbb": {
+ "english_name": "Palaung, Rumai"
+ },
+ "qws": {
+ "english_name": "Quechua, Sihuas Ancash"
+ },
+ "ve": {
+ "name": "Venda",
+ "english_name": "Venda"
+ },
+ "vi": {
+ "name": "Tiếng Việt",
+ "english_name": "Vietnamese"
+ },
+ "vo": {
+ "english_name": "Volapük"
+ },
+ "zgr": {
+ "english_name": "Magori"
+ },
+ "zgh": {
+ "english_name": "Tamazight, Standard Moroccan"
+ },
+ "zgm": {
+ "english_name": "Zhuang, Minz"
+ },
+ "zgn": {
+ "english_name": "Zhuang, Guibian"
+ },
+ "zga": {
+ "english_name": "Kinga"
+ },
+ "zgb": {
+ "english_name": "Zhuang, Guibei"
+ },
+ "phk": {
+ "english_name": "Phake"
+ },
+ "phh": {
+ "english_name": "Phukha"
+ },
+ "pho": {
+ "english_name": "Phunoi"
+ },
+ "phn": {
+ "english_name": "Phoenician"
+ },
+ "phm": {
+ "english_name": "Phimbi"
+ },
+ "phl": {
+ "english_name": "Phalura"
+ },
+ "pha": {
+ "english_name": "Pa-Hng"
+ },
+ "phg": {
+ "english_name": "Phuong"
+ },
+ "phd": {
+ "english_name": "Phudagi"
+ },
+ "phr": {
+ "english_name": "Pahari-Potwari"
+ },
+ "phq": {
+ "english_name": "Phana'"
+ },
+ "phw": {
+ "english_name": "Phangduwali"
+ },
+ "phv": {
+ "english_name": "Pahlavani"
+ },
+ "phu": {
+ "english_name": "Phuan"
+ },
+ "pht": {
+ "english_name": "Phu Thai"
+ },
+ "ofo": {
+ "english_name": "Ofo"
+ },
+ "ofs": {
+ "english_name": "Frisian, Old"
+ },
+ "unn": {
+ "english_name": "Kurnai"
+ },
+ "ofu": {
+ "english_name": "Efutop"
+ },
+ "xed": {
+ "english_name": "Hdi"
+ },
+ "xeg": {
+ "english_name": "//Xegwi"
+ },
+ "xeb": {
+ "english_name": "Eblan"
+ },
+ "xel": {
+ "english_name": "Kelo"
+ },
+ "xem": {
+ "english_name": "Kembayan"
+ },
+ "xet": {
+ "english_name": "Xetá"
+ },
+ "xeu": {
+ "english_name": "Keoru-Ahia"
+ },
+ "xep": {
+ "english_name": "Epi-Olmec"
+ },
+ "xer": {
+ "english_name": "Xerénte"
+ },
+ "xes": {
+ "english_name": "Kesawai"
+ },
+ "wec": {
+ "english_name": "Wè Western"
+ },
+ "wea": {
+ "english_name": "Wewaw"
+ },
+ "weg": {
+ "english_name": "Wergaia"
+ },
+ "wed": {
+ "english_name": "Wedau"
+ },
+ "wei": {
+ "english_name": "Kiunum"
+ },
+ "weh": {
+ "english_name": "Weh"
+ },
+ "weo": {
+ "english_name": "Wemale"
+ },
+ "wem": {
+ "english_name": "Gbe, Weme"
+ },
+ "wes": {
+ "english_name": "Pidgin, Cameroon"
+ },
+ "wer": {
+ "english_name": "Weri"
+ },
+ "wep": {
+ "english_name": "Westphalien"
+ },
+ "wew": {
+ "english_name": "Wejewa"
+ },
+ "weu": {
+ "english_name": "Chin, Rawngtu"
+ },
+ "wet": {
+ "english_name": "Perai"
+ },
+ "nvo": {
+ "english_name": "Nyokon"
+ },
+ "nvm": {
+ "english_name": "Namiae"
+ },
+ "nvh": {
+ "english_name": "Nasarian"
+ },
+ "mhn": {
+ "english_name": "Mócheno"
+ },
+ "mho": {
+ "english_name": "Mashi (Zambia)"
+ },
+ "mhl": {
+ "english_name": "Mauwake"
+ },
+ "mhm": {
+ "english_name": "Makhuwa-Moniga"
+ },
+ "mhj": {
+ "english_name": "Mogholi"
+ },
+ "mhk": {
+ "english_name": "Mungaka"
+ },
+ "mhi": {
+ "english_name": "Ma'di"
+ },
+ "mhf": {
+ "english_name": "Mamaa"
+ },
+ "mhg": {
+ "english_name": "Margu"
+ },
+ "mhd": {
+ "english_name": "Mbugu"
+ },
+ "mhe": {
+ "english_name": "Besisi"
+ },
+ "mhb": {
+ "english_name": "Mahongwe"
+ },
+ "mhc": {
+ "english_name": "Mocho"
+ },
+ "mha": {
+ "english_name": "Manda (India)"
+ },
+ "mhz": {
+ "english_name": "Mor (Mor Islands)"
+ },
+ "mhx": {
+ "english_name": "Maru"
+ },
+ "mhy": {
+ "english_name": "Ma'anyan"
+ },
+ "mhw": {
+ "english_name": "Mbukushu"
+ },
+ "mht": {
+ "english_name": "Mandahuaca"
+ },
+ "mhu": {
+ "english_name": "Digaro-Mishmi"
+ },
+ "mhr": {
+ "english_name": "Mari, Eastern"
+ },
+ "mhs": {
+ "english_name": "Buru (Indonesia)"
+ },
+ "mhp": {
+ "english_name": "Malay, Balinese"
+ },
+ "mhq": {
+ "english_name": "Mandan"
+ },
+ "vsv": {
+ "english_name": "Valencian Sign Language"
+ },
+ "vsi": {
+ "english_name": "Moldova Sign Language"
+ },
+ "vsl": {
+ "english_name": "Venezuelan Sign Language"
+ },
+ "krz": {
+ "english_name": "Kanum, Sota"
+ },
+ "krx": {
+ "english_name": "Karon"
+ },
+ "kry": {
+ "english_name": "Kryts"
+ },
+ "krr": {
+ "english_name": "Kru'ng 2"
+ },
+ "krs": {
+ "english_name": "Gbaya (Sudan)"
+ },
+ "krp": {
+ "english_name": "Korop"
+ },
+ "krv": {
+ "english_name": "Kavet"
+ },
+ "krw": {
+ "english_name": "Krahn, Western"
+ },
+ "krt": {
+ "english_name": "Kanuri, Tumari"
+ },
+ "kru": {
+ "english_name": "Kurukh"
+ },
+ "krj": {
+ "english_name": "Kinaray-A"
+ },
+ "krk": {
+ "english_name": "Kerek"
+ },
+ "krh": {
+ "english_name": "Kurama"
+ },
+ "kri": {
+ "english_name": "Krio"
+ },
+ "krn": {
+ "english_name": "Sapo"
+ },
+ "krl": {
+ "english_name": "Karelian"
+ },
+ "krm": {
+ "english_name": "Krim"
+ },
+ "krb": {
+ "english_name": "Karkin"
+ },
+ "krc": {
+ "english_name": "Karachay-Balkar"
+ },
+ "kra": {
+ "english_name": "Kumhali"
+ },
+ "krf": {
+ "english_name": "Koro (Vanuatu)"
+ },
+ "krd": {
+ "english_name": "Kairui-Midiki"
+ },
+ "kre": {
+ "english_name": "Panará"
+ },
+ "yri": {
+ "english_name": "Yarí"
+ },
+ "yrk": {
+ "english_name": "Nenets"
+ },
+ "yrl": {
+ "english_name": "Nhengatu"
+ },
+ "yrm": {
+ "english_name": "Yirrk-Mel"
+ },
+ "yrn": {
+ "english_name": "Yerong"
+ },
+ "yra": {
+ "english_name": "Yerakai"
+ },
+ "yrb": {
+ "english_name": "Yareba"
+ },
+ "yre": {
+ "english_name": "Yaouré"
+ },
+ "yry": {
+ "english_name": "Yarluyandi"
+ },
+ "yrs": {
+ "english_name": "Yarsun"
+ },
+ "yrw": {
+ "english_name": "Yarawata"
+ },
+ "inz": {
+ "english_name": "Ineseño"
+ },
+ "int": {
+ "english_name": "Intha"
+ },
+ "inp": {
+ "english_name": "Iñapari"
+ },
+ "ins": {
+ "english_name": "Indian Sign Language"
+ },
+ "inl": {
+ "english_name": "Indonesian Sign Language"
+ },
+ "inm": {
+ "english_name": "Minaean"
+ },
+ "inn": {
+ "english_name": "Isinai"
+ },
+ "ino": {
+ "english_name": "Inoke-Yate"
+ },
+ "inh": {
+ "english_name": "Ingush"
+ },
+ "inj": {
+ "english_name": "Inga, Jungle"
+ },
+ "ing": {
+ "english_name": "Degexit'an"
+ },
+ "inb": {
+ "english_name": "Inga"
+ },
+ "wxw": {
+ "english_name": "Wardandi"
+ },
+ "hps": {
+ "english_name": "Hawai'i Pidgin Sign Language"
+ },
+ "mch": {
+ "english_name": "Maquiritari"
+ },
+ "hpo": {
+ "english_name": "Hpon"
+ },
+ "wxa": {
+ "english_name": "Waxianghua"
+ },
+ "mcb": {
+ "english_name": "Machiguenga"
+ },
+ "tmb": {
+ "english_name": "Katbol"
+ },
+ "eot": {
+ "english_name": "Beti (Côte d'Ivoire)"
+ },
+ "aln": {
+ "english_name": "Albanian, Gheg"
+ },
+ "tcq": {
+ "english_name": "Kaiy"
+ },
+ "alo": {
+ "english_name": "Larike-Wakasihu"
+ },
+ "alh": {
+ "english_name": "Alawa"
+ },
+ "pth": {
+ "english_name": "Pataxó Hã-Ha-Hãe"
+ },
+ "reb": {
+ "english_name": "Rembong"
+ },
+ "cmo": {
+ "english_name": "Mnong, Central"
+ },
+ "cmn": {
+ "english_name": "Chinese, Mandarin"
+ },
+ "cmm": {
+ "english_name": "Michigamea"
+ },
+ "cml": {
+ "english_name": "Campalagian"
+ },
+ "cmi": {
+ "english_name": "Emberá-Chamí"
+ },
+ "cmg": {
+ "english_name": "Mongolian, Classical"
+ },
+ "cme": {
+ "english_name": "Cerma"
+ },
+ "cma": {
+ "english_name": "Maa"
+ },
+ "reg": {
+ "english_name": "Kara (Tanzania)"
+ },
+ "cmt": {
+ "english_name": "Camtho"
+ },
+ "cms": {
+ "english_name": "Messapic"
+ },
+ "cmr": {
+ "english_name": "Chin, Mro-Khimi"
+ },
+ "quq": {
+ "english_name": "Quinqui"
+ },
+ "alx": {
+ "english_name": "Amol"
+ },
+ "qup": {
+ "english_name": "Quechua, Southern Pastaza"
+ },
+ "tmh": {
+ "english_name": "Tamashek"
+ },
+ "qus": {
+ "english_name": "Quichua, Santiago del Estero"
+ },
+ "qur": {
+ "english_name": "Quechua, Yanahuanca Pasco"
+ },
+ "alw": {
+ "english_name": "Alaba-K’abeena"
+ },
+ "alt": {
+ "english_name": "Altai, Southern"
+ },
+ "ptt": {
+ "english_name": "Enrekang"
+ },
+ "tmi": {
+ "english_name": "Tutuba"
+ },
+ "quv": {
+ "english_name": "Sacapulteco"
+ },
+ "als": {
+ "english_name": "Albanian, Tosk"
+ },
+ "quy": {
+ "english_name": "Quechua, Ayacucho"
+ },
+ "qux": {
+ "english_name": "Quechua, Yauyos"
+ },
+ "ptp": {
+ "english_name": "Patep"
+ },
+ "tmj": {
+ "english_name": "Samarokena"
+ },
+ "glh": {
+ "english_name": "Pashayi, Northwest"
+ },
+ "akz": {
+ "english_name": "Alabama"
+ },
+ "aky": {
+ "english_name": "Aka-Kol"
+ },
+ "akx": {
+ "english_name": "Aka-Kede"
+ },
+ "gll": {
+ "english_name": "Garlali"
+ },
+ "tmk": {
+ "english_name": "Tamang, Northwestern"
+ },
+ "glo": {
+ "english_name": "Galambu"
+ },
+ "aks": {
+ "english_name": "Akaselem"
+ },
+ "akr": {
+ "english_name": "Araki"
+ },
+ "akq": {
+ "english_name": "Ak"
+ },
+ "akp": {
+ "english_name": "Siwu"
+ },
+ "akw": {
+ "english_name": "Akwa"
+ },
+ "akv": {
+ "english_name": "Akhvakh"
+ },
+ "aku": {
+ "english_name": "Akum"
+ },
+ "akt": {
+ "english_name": "Akolet"
+ },
+ "akk": {
+ "english_name": "Akkadian"
+ },
+ "akj": {
+ "english_name": "Aka-Jeru"
+ },
+ "aki": {
+ "english_name": "Aiome"
+ },
+ "akh": {
+ "english_name": "Angal Heneng"
+ },
+ "ako": {
+ "english_name": "Akurio"
+ },
+ "akm": {
+ "english_name": "Aka-Bo"
+ },
+ "akl": {
+ "english_name": "Aklanon"
+ },
+ "akc": {
+ "english_name": "Mpur"
+ },
+ "akb": {
+ "english_name": "Batak Angkola"
+ },
+ "glr": {
+ "english_name": "Glaro-Twabo"
+ },
+ "akg": {
+ "english_name": "Anakalangu"
+ },
+ "akf": {
+ "english_name": "Akpa"
+ },
+ "ake": {
+ "english_name": "Akawaio"
+ },
+ "akd": {
+ "english_name": "Ukpet-Ehom"
+ },
+ "tml": {
+ "english_name": "Citak, Tamnim"
+ },
+ "sso": {
+ "english_name": "Sissano"
+ },
+ "brz": {
+ "english_name": "Bilbil"
+ },
+ "bry": {
+ "english_name": "Burui"
+ },
+ "brx": {
+ "english_name": "Bodo (India)"
+ },
+ "brw": {
+ "english_name": "Bellari"
+ },
+ "brv": {
+ "english_name": "Bru, Western"
+ },
+ "bru": {
+ "english_name": "Bru, Eastern"
+ },
+ "brt": {
+ "english_name": "Bitare"
+ },
+ "brs": {
+ "english_name": "Baras"
+ },
+ "brr": {
+ "english_name": "Birao"
+ },
+ "brq": {
+ "english_name": "Breri"
+ },
+ "brp": {
+ "english_name": "Barapasi"
+ },
+ "bro": {
+ "english_name": "Brokkat"
+ },
+ "brn": {
+ "english_name": "Boruca"
+ },
+ "brm": {
+ "english_name": "Barambu"
+ },
+ "brl": {
+ "english_name": "Birwa"
+ },
+ "brk": {
+ "english_name": "Birked"
+ },
+ "brj": {
+ "english_name": "Bieria"
+ },
+ "bri": {
+ "english_name": "Mokpwe"
+ },
+ "brh": {
+ "english_name": "Brahui"
+ },
+ "brg": {
+ "english_name": "Baure"
+ },
+ "brf": {
+ "english_name": "Bera"
+ },
+ "brd": {
+ "english_name": "Baraamu"
+ },
+ "brc": {
+ "english_name": "Creole Dutch, Berbice"
+ },
+ "brb": {
+ "english_name": "Lave"
+ },
+ "bra": {
+ "english_name": "Braj"
+ },
+ "qum": {
+ "english_name": "Sipacapense"
+ },
+ "qul": {
+ "english_name": "Quechua, North Bolivian"
+ },
+ "qun": {
+ "english_name": "Quinault"
+ },
+ "tmn": {
+ "english_name": "Taman (Indonesia)"
+ },
+ "nka": {
+ "english_name": "Nkoya"
+ },
+ "nkb": {
+ "english_name": "Naga, Khoibu"
+ },
+ "nkc": {
+ "english_name": "Nkongho"
+ },
+ "nkd": {
+ "english_name": "Koireng"
+ },
+ "nke": {
+ "english_name": "Duke"
+ },
+ "nkf": {
+ "english_name": "Naga, Inpui"
+ },
+ "nkg": {
+ "english_name": "Nekgini"
+ },
+ "nkh": {
+ "english_name": "Naga, Khezha"
+ },
+ "nki": {
+ "english_name": "Naga, Thangal"
+ },
+ "nkj": {
+ "english_name": "Nakai"
+ },
+ "nkk": {
+ "english_name": "Nokuku"
+ },
+ "nkm": {
+ "english_name": "Namat"
+ },
+ "nkn": {
+ "english_name": "Nkangala"
+ },
+ "nko": {
+ "english_name": "Nkonya"
+ },
+ "nkp": {
+ "english_name": "Niuatoputapu"
+ },
+ "nkq": {
+ "english_name": "Nkami"
+ },
+ "nkr": {
+ "english_name": "Nukuoro"
+ },
+ "nks": {
+ "english_name": "Asmat, North"
+ },
+ "nkt": {
+ "english_name": "Nyika (Tanzania)"
+ },
+ "nku": {
+ "english_name": "Kulango, Bouna"
+ },
+ "nkv": {
+ "english_name": "Nyika (Malawi and Zambia)"
+ },
+ "nkw": {
+ "english_name": "Nkutu"
+ },
+ "nkx": {
+ "english_name": "Nkoroo"
+ },
+ "nkz": {
+ "english_name": "Nkari"
+ },
+ "tmo": {
+ "english_name": "Temoq"
+ },
+ "ssh": {
+ "english_name": "Arabic, Shihhi"
+ },
+ "ert": {
+ "english_name": "Eritai"
+ },
+ "tnt": {
+ "english_name": "Tontemboan"
+ },
+ "tnw": {
+ "english_name": "Tonsawang"
+ },
+ "erw": {
+ "english_name": "Erokwanas"
+ },
+ "tnq": {
+ "english_name": "Taino"
+ },
+ "tnp": {
+ "english_name": "Whitesands"
+ },
+ "err": {
+ "english_name": "Erre"
+ },
+ "ers": {
+ "english_name": "Ersu"
+ },
+ "tny": {
+ "english_name": "Tongwe"
+ },
+ "tnx": {
+ "english_name": "Tanema"
+ },
+ "tnz": {
+ "english_name": "Tonga (Thailand)"
+ },
+ "tne": {
+ "english_name": "Kallahan, Tinoc"
+ },
+ "tnd": {
+ "english_name": "Tunebo, Angosturas"
+ },
+ "tng": {
+ "english_name": "Tobanga"
+ },
+ "erg": {
+ "english_name": "Sie"
+ },
+ "tna": {
+ "english_name": "Tacana"
+ },
+ "era": {
+ "english_name": "Eravallan"
+ },
+ "tnc": {
+ "english_name": "Tanimuca-Retuarã"
+ },
+ "tnb": {
+ "english_name": "Tunebo, Western"
+ },
+ "tnm": {
+ "english_name": "Tabla"
+ },
+ "tnl": {
+ "english_name": "Lenakel"
+ },
+ "tno": {
+ "english_name": "Toromono"
+ },
+ "ero": {
+ "english_name": "Horpa"
+ },
+ "erh": {
+ "english_name": "Eruwa"
+ },
+ "eri": {
+ "english_name": "Ogea"
+ },
+ "tnk": {
+ "english_name": "Kwamera"
+ },
+ "erk": {
+ "english_name": "Efate, South"
+ },
+ "uar": {
+ "english_name": "Tairuma"
+ },
+ "uam": {
+ "english_name": "Uamué"
+ },
+ "uan": {
+ "english_name": "Kuan"
+ },
+ "lal": {
+ "english_name": "Lalia"
+ },
+ "lam": {
+ "english_name": "Lamba"
+ },
+ "lan": {
+ "english_name": "Laru"
+ },
+ "lah": {
+ "english_name": "Lahnda"
+ },
+ "lai": {
+ "english_name": "Lambya"
+ },
+ "laj": {
+ "english_name": "Lango (Uganda)"
+ },
+ "lak": {
+ "english_name": "Laka (Nigeria)"
+ },
+ "lad": {
+ "english_name": "Ladino"
+ },
+ "lae": {
+ "english_name": "Pattani"
+ },
+ "laf": {
+ "english_name": "Lafofa"
+ },
+ "lag": {
+ "english_name": "Langi"
+ },
+ "laa": {
+ "english_name": "Subanen, Southern"
+ },
+ "lab": {
+ "english_name": "Linear A"
+ },
+ "lac": {
+ "english_name": "Lacandon"
+ },
+ "lax": {
+ "english_name": "Tiwa"
+ },
+ "lay": {
+ "english_name": "Lama (Myanmar)"
+ },
+ "laz": {
+ "english_name": "Aribwatsa"
+ },
+ "lau": {
+ "english_name": "Laba"
+ },
+ "law": {
+ "english_name": "Lauje"
+ },
+ "lap": {
+ "english_name": "Laka (Chad)"
+ },
+ "laq": {
+ "english_name": "Qabiao"
+ },
+ "lar": {
+ "english_name": "Larteh"
+ },
+ "las": {
+ "english_name": "Lama (Togo)"
+ },
+ "zea": {
+ "english_name": "Zeeuws"
+ },
+ "zeg": {
+ "english_name": "Zenag"
+ },
+ "zeh": {
+ "english_name": "Zhuang, Eastern Hongshuihe"
+ },
+ "zen": {
+ "english_name": "Zenaga"
+ },
+ "ssf": {
+ "english_name": "Thao"
+ },
+ "pjt": {
+ "english_name": "Pitjantjatjara"
+ },
+ "ssc": {
+ "english_name": "Suba-Simbiti"
+ },
+ "xgl": {
+ "english_name": "Galindan"
+ },
+ "xgm": {
+ "english_name": "Guwinmal"
+ },
+ "xgi": {
+ "english_name": "Garingbal"
+ },
+ "xgf": {
+ "english_name": "Gabrielino-Fernandeño"
+ },
+ "xgg": {
+ "english_name": "Goreng"
+ },
+ "xgd": {
+ "english_name": "Gudang"
+ },
+ "xgb": {
+ "english_name": "Gbin"
+ },
+ "xga": {
+ "english_name": "Galatian"
+ },
+ "xgw": {
+ "english_name": "Guwa"
+ },
+ "xgu": {
+ "english_name": "Unggumi"
+ },
+ "xgr": {
+ "english_name": "Garza"
+ },
+ "wgg": {
+ "english_name": "Wangganguru"
+ },
+ "wga": {
+ "english_name": "Wagaya"
+ },
+ "wgb": {
+ "english_name": "Wagawaga"
+ },
+ "wgo": {
+ "english_name": "Waigeo"
+ },
+ "wgi": {
+ "english_name": "Wahgi"
+ },
+ "wgu": {
+ "english_name": "Wirangu"
+ },
+ "wgy": {
+ "english_name": "Warrgamay"
+ },
+ "nty": {
+ "english_name": "Mantsi"
+ },
+ "ntx": {
+ "english_name": "Naga, Tangkhul (Myanmar)"
+ },
+ "ntz": {
+ "english_name": "Natanzi"
+ },
+ "ntp": {
+ "english_name": "Tepehuan, Northern"
+ },
+ "nts": {
+ "english_name": "Natagaimas"
+ },
+ "ntr": {
+ "english_name": "Delo"
+ },
+ "ntu": {
+ "english_name": "Natügu"
+ },
+ "ntw": {
+ "english_name": "Nottoway"
+ },
+ "nti": {
+ "english_name": "Natioro"
+ },
+ "ntk": {
+ "english_name": "Ikoma-Nata-Isenye"
+ },
+ "ntj": {
+ "english_name": "Ngaanyatjarra"
+ },
+ "ntm": {
+ "english_name": "Nateni"
+ },
+ "nto": {
+ "english_name": "Ntomba"
+ },
+ "nte": {
+ "english_name": "Nathembo"
+ },
+ "ntg": {
+ "english_name": "Ngantangarra"
+ },
+ "mvp": {
+ "english_name": "Duri"
+ },
+ "mvq": {
+ "english_name": "Moere"
+ },
+ "mvr": {
+ "english_name": "Marau"
+ },
+ "mvs": {
+ "english_name": "Massep"
+ },
+ "mvt": {
+ "english_name": "Mpotovoro"
+ },
+ "mvu": {
+ "english_name": "Marfa"
+ },
+ "mvv": {
+ "english_name": "Murut, Tagal"
+ },
+ "mvw": {
+ "english_name": "Machinga"
+ },
+ "mvx": {
+ "english_name": "Meoswar"
+ },
+ "mvy": {
+ "english_name": "Kohistani, Indus"
+ },
+ "mvz": {
+ "english_name": "Mesqan"
+ },
+ "mva": {
+ "english_name": "Manam"
+ },
+ "mvb": {
+ "english_name": "Mattole"
+ },
+ "mvd": {
+ "english_name": "Mamboru"
+ },
+ "mve": {
+ "english_name": "Marwari (Pakistan)"
+ },
+ "mvf": {
+ "english_name": "Mongolian, Peripheral"
+ },
+ "mvg": {
+ "english_name": "Mixtec, Yucuañe"
+ },
+ "mvh": {
+ "english_name": "Mulgi"
+ },
+ "mvi": {
+ "english_name": "Miyako"
+ },
+ "mvk": {
+ "english_name": "Mekmek"
+ },
+ "mvl": {
+ "english_name": "Mbara (Australia)"
+ },
+ "mvm": {
+ "english_name": "Muya"
+ },
+ "mvn": {
+ "english_name": "Minaveha"
+ },
+ "mvo": {
+ "english_name": "Marovo"
+ },
+ "tea": {
+ "english_name": "Temiar"
+ },
+ "teb": {
+ "english_name": "Tetete"
+ },
+ "tec": {
+ "english_name": "Terik"
+ },
+ "ted": {
+ "english_name": "Krumen, Tepo"
+ },
+ "tee": {
+ "english_name": "Tepehua, Huehuetla"
+ },
+ "tef": {
+ "english_name": "Teressa"
+ },
+ "teg": {
+ "english_name": "Teke-Tege"
+ },
+ "tex": {
+ "english_name": "Tennet"
+ },
+ "ktx": {
+ "english_name": "Kaxararí"
+ },
+ "kty": {
+ "english_name": "Kango (Bas-Uélé District)"
+ },
+ "ktz": {
+ "english_name": "Ju/'hoan"
+ },
+ "tey": {
+ "english_name": "Tulishi"
+ },
+ "ktt": {
+ "english_name": "Ketum"
+ },
+ "ktu": {
+ "english_name": "Kituba (Democratic Republic of Congo)"
+ },
+ "ktv": {
+ "english_name": "Katu, Eastern"
+ },
+ "ktw": {
+ "english_name": "Kato"
+ },
+ "ktp": {
+ "english_name": "Kaduo"
+ },
+ "ktq": {
+ "english_name": "Katabaga"
+ },
+ "ktr": {
+ "english_name": "Kota Marudu Tinagas"
+ },
+ "kts": {
+ "english_name": "Muyu, South"
+ },
+ "ktl": {
+ "english_name": "Koroshi"
+ },
+ "ktm": {
+ "english_name": "Kurti"
+ },
+ "ktn": {
+ "english_name": "Karitiâna"
+ },
+ "kto": {
+ "english_name": "Kuot"
+ },
+ "kth": {
+ "english_name": "Karanga"
+ },
+ "kti": {
+ "english_name": "Muyu, North"
+ },
+ "ktj": {
+ "english_name": "Krumen, Plapo"
+ },
+ "ktk": {
+ "english_name": "Kaniet"
+ },
+ "ktd": {
+ "english_name": "Kokata"
+ },
+ "kte": {
+ "english_name": "Nubri"
+ },
+ "ktf": {
+ "english_name": "Kwami"
+ },
+ "ktg": {
+ "english_name": "Kalkutung"
+ },
+ "kta": {
+ "english_name": "Katua"
+ },
+ "ktb": {
+ "english_name": "Kambaata"
+ },
+ "ktc": {
+ "english_name": "Kholok"
+ },
+ "tep": {
+ "english_name": "Tepecano"
+ },
+ "teq": {
+ "english_name": "Temein"
+ },
+ "ter": {
+ "english_name": "Tereno"
+ },
+ "ypp": {
+ "english_name": "Phupa"
+ },
+ "tsg": {
+ "english_name": "Tausug"
+ },
+ "ypz": {
+ "english_name": "Phuza"
+ },
+ "tet": {
+ "english_name": "Tetum"
+ },
+ "teu": {
+ "english_name": "Soo"
+ },
+ "ypb": {
+ "english_name": "Phowa, Labo"
+ },
+ "ypa": {
+ "english_name": "Phala"
+ },
+ "tev": {
+ "english_name": "Teor"
+ },
+ "yph": {
+ "english_name": "Phupha"
+ },
+ "tew": {
+ "english_name": "Tewa (USA)"
+ },
+ "ypn": {
+ "english_name": "Phowa, Ani"
+ },
+ "ypo": {
+ "english_name": "Phola, Alo"
+ },
+ "ypm": {
+ "english_name": "Phuma"
+ },
+ "udj": {
+ "english_name": "Ujir"
+ },
+ "hrx": {
+ "english_name": "Hunsrik"
+ },
+ "hrz": {
+ "english_name": "Harzani"
+ },
+ "hru": {
+ "english_name": "Hruso"
+ },
+ "hrt": {
+ "english_name": "Hértevin"
+ },
+ "hrw": {
+ "english_name": "Warwar Feni"
+ },
+ "hrp": {
+ "english_name": "Nhirrpi"
+ },
+ "hrm": {
+ "english_name": "Miao, Horned"
+ },
+ "hro": {
+ "english_name": "Haroi"
+ },
+ "udl": {
+ "english_name": "Wuzlam"
+ },
+ "hrk": {
+ "english_name": "Haruku"
+ },
+ "hre": {
+ "english_name": "Hre"
+ },
+ "udm": {
+ "english_name": "Udmurt"
+ },
+ "hra": {
+ "english_name": "Hrangkhol"
+ },
+ "hrc": {
+ "english_name": "Niwer Mil"
+ },
+ "de": {
+ "name": "Deutsch",
+ "english_name": "German"
+ },
+ "da": {
+ "name": "Dansk",
+ "english_name": "Danish"
+ },
+ "dz": {
+ "english_name": "Dzongkha"
+ },
+ "dv": {
+ "english_name": "Dhivehi"
+ },
+ "eme": {
+ "english_name": "Emerillon"
+ },
+ "emg": {
+ "english_name": "Meohang, Eastern"
+ },
+ "ema": {
+ "english_name": "Emai-Iuleha-Ora"
+ },
+ "emb": {
+ "english_name": "Embaloh"
+ },
+ "emm": {
+ "english_name": "Mamulique"
+ },
+ "emn": {
+ "english_name": "Eman"
+ },
+ "emi": {
+ "english_name": "Mussau-Emira"
+ },
+ "emk": {
+ "english_name": "Maninkakan, Eastern"
+ },
+ "suz": {
+ "english_name": "Sunwar"
+ },
+ "emu": {
+ "english_name": "Muria, Eastern"
+ },
+ "emw": {
+ "english_name": "Emplawas"
+ },
+ "emp": {
+ "english_name": "Emberá, Northern"
+ },
+ "ems": {
+ "english_name": "Yupik, Pacific Gulf"
+ },
+ "emy": {
+ "english_name": "Mayan, Epigraphic"
+ },
+ "emx": {
+ "english_name": "Erromintxela"
+ },
+ "wa": {
+ "name": "Walon",
+ "english_name": "Walloon"
+ },
+ "hai": {
+ "english_name": "Haida"
+ },
+ "wo": {
+ "english_name": "Wolof"
+ },
+ "haj": {
+ "english_name": "Hajong"
+ },
+ "hak": {
+ "english_name": "Chinese, Hakka"
+ },
+ "coq": {
+ "english_name": "Coquille"
+ },
+ "cop": {
+ "english_name": "Coptic"
+ },
+ "cou": {
+ "english_name": "Wamey"
+ },
+ "cot": {
+ "english_name": "Caquinte"
+ },
+ "cow": {
+ "english_name": "Cowlitz"
+ },
+ "cov": {
+ "english_name": "Cao Miao"
+ },
+ "coy": {
+ "english_name": "Coyaima"
+ },
+ "cox": {
+ "english_name": "Nanti"
+ },
+ "ill": {
+ "english_name": "Iranun"
+ },
+ "coz": {
+ "english_name": "Chochotec"
+ },
+ "ilk": {
+ "english_name": "Ilongot"
+ },
+ "ili": {
+ "english_name": "Ili Turki"
+ },
+ "ilv": {
+ "english_name": "Ilue"
+ },
+ "coc": {
+ "english_name": "Cocopa"
+ },
+ "cob": {
+ "english_name": "Chicomuceltec"
+ },
+ "coe": {
+ "english_name": "Koreguaje"
+ },
+ "cod": {
+ "english_name": "Cocama-Cocamilla"
+ },
+ "cog": {
+ "english_name": "Chong"
+ },
+ "cof": {
+ "english_name": "Colorado"
+ },
+ "coh": {
+ "english_name": "Chonyi-Dzihana-Kauma"
+ },
+ "cok": {
+ "english_name": "Cora, Santa Teresa"
+ },
+ "coj": {
+ "english_name": "Cochimi"
+ },
+ "com": {
+ "english_name": "Comanche"
+ },
+ "col": {
+ "english_name": "Columbia-Wenatchi"
+ },
+ "coo": {
+ "english_name": "Comox"
+ },
+ "con": {
+ "english_name": "Cofán"
+ },
+ "bnp": {
+ "english_name": "Bola"
+ },
+ "bnw": {
+ "english_name": "Bisis"
+ },
+ "bnv": {
+ "english_name": "Bonerif"
+ },
+ "bnu": {
+ "english_name": "Bentong"
+ },
+ "bnk": {
+ "english_name": "Bierebo"
+ },
+ "hay": {
+ "english_name": "Haya"
+ },
+ "haz": {
+ "english_name": "Hazaragi"
+ },
+ "bnc": {
+ "english_name": "Bontok"
+ },
+ "bnb": {
+ "english_name": "Bookan"
+ },
+ "bna": {
+ "english_name": "Bonerate"
+ },
+ "gnr": {
+ "english_name": "Gureng Gureng"
+ },
+ "gnq": {
+ "english_name": "Gana"
+ },
+ "aiy": {
+ "english_name": "Ali"
+ },
+ "gnw": {
+ "english_name": "Guaraní, Western Bolivian"
+ },
+ "gnt": {
+ "english_name": "Guntai"
+ },
+ "gnu": {
+ "english_name": "Gnau"
+ },
+ "gnz": {
+ "english_name": "Ganzi"
+ },
+ "ait": {
+ "english_name": "Arikem"
+ },
+ "aiw": {
+ "english_name": "Aari"
+ },
+ "aiq": {
+ "english_name": "Aimaq"
+ },
+ "aip": {
+ "english_name": "Burumakok"
+ },
+ "ais": {
+ "english_name": "Amis, Nataoran"
+ },
+ "air": {
+ "english_name": "Airoran"
+ },
+ "gnb": {
+ "english_name": "Gangte"
+ },
+ "gnc": {
+ "english_name": "Guanche"
+ },
+ "aio": {
+ "english_name": "Aiton"
+ },
+ "gna": {
+ "english_name": "Kaansa"
+ },
+ "aii": {
+ "english_name": "Neo-Aramaic, Assyrian"
+ },
+ "gng": {
+ "english_name": "Ngangam"
+ },
+ "gnd": {
+ "english_name": "Zulgo-Gemzek"
+ },
+ "gne": {
+ "english_name": "Ganang"
+ },
+ "aie": {
+ "english_name": "Amara"
+ },
+ "gnk": {
+ "english_name": "//Gana"
+ },
+ "aig": {
+ "english_name": "Creole English, Antigua and Barbuda"
+ },
+ "aif": {
+ "english_name": "Agi"
+ },
+ "gnn": {
+ "english_name": "Gumatj"
+ },
+ "gno": {
+ "english_name": "Gondi, Northern"
+ },
+ "aic": {
+ "english_name": "Ainbai"
+ },
+ "aib": {
+ "english_name": "Ainu (China)"
+ },
+ "nij": {
+ "english_name": "Ngaju"
+ },
+ "nik": {
+ "english_name": "Nicobarese, Southern"
+ },
+ "nih": {
+ "english_name": "Nyiha (Tanzania)"
+ },
+ "nii": {
+ "english_name": "Nii"
+ },
+ "nin": {
+ "english_name": "Ninzo"
+ },
+ "nio": {
+ "english_name": "Nganasan"
+ },
+ "nil": {
+ "english_name": "Nila"
+ },
+ "nim": {
+ "english_name": "Nilamba"
+ },
+ "nib": {
+ "english_name": "Nakame"
+ },
+ "nia": {
+ "english_name": "Nias"
+ },
+ "nif": {
+ "english_name": "Nek"
+ },
+ "nig": {
+ "english_name": "Ngalakan"
+ },
+ "nid": {
+ "english_name": "Ngandi"
+ },
+ "nie": {
+ "english_name": "Niellim"
+ },
+ "niz": {
+ "english_name": "Ningil"
+ },
+ "nix": {
+ "english_name": "Hema"
+ },
+ "niy": {
+ "english_name": "Ngiti"
+ },
+ "nir": {
+ "english_name": "Nimboran"
+ },
+ "nis": {
+ "english_name": "Nimi"
+ },
+ "niq": {
+ "english_name": "Nandi"
+ },
+ "niv": {
+ "english_name": "Gilyak"
+ },
+ "niw": {
+ "english_name": "Nimo"
+ },
+ "nit": {
+ "english_name": "Kolami, Southeastern"
+ },
+ "niu": {
+ "english_name": "Niuean"
+ },
+ "thz": {
+ "english_name": "Tamajeq, Tayart"
+ },
+ "thy": {
+ "english_name": "Tha"
+ },
+ "thw": {
+ "english_name": "Thudam"
+ },
+ "thv": {
+ "english_name": "Tamahaq, Tahaggart"
+ },
+ "thu": {
+ "english_name": "Thuri"
+ },
+ "tht": {
+ "english_name": "Tahltan"
+ },
+ "ths": {
+ "english_name": "Thakali"
+ },
+ "thr": {
+ "english_name": "Tharu, Rana"
+ },
+ "thq": {
+ "english_name": "Tharu, Kochila"
+ },
+ "thp": {
+ "english_name": "Thompson"
+ },
+ "thn": {
+ "english_name": "Thachanadan"
+ },
+ "thm": {
+ "english_name": "Aheu"
+ },
+ "thl": {
+ "english_name": "Tharu, Dangaura"
+ },
+ "thk": {
+ "english_name": "Tharaka"
+ },
+ "thi": {
+ "english_name": "Tai Long"
+ },
+ "epi": {
+ "english_name": "Epie"
+ },
+ "thf": {
+ "english_name": "Thangmi"
+ },
+ "the": {
+ "english_name": "Tharu, Chitwania"
+ },
+ "thd": {
+ "english_name": "Thayore"
+ },
+ "thc": {
+ "english_name": "Tai Hang Tong"
+ },
+ "dse": {
+ "english_name": "Dutch Sign Language"
+ },
+ "lcs": {
+ "english_name": "Lisabata-Nuniali"
+ },
+ "lcp": {
+ "english_name": "Lawa, Western"
+ },
+ "lcq": {
+ "english_name": "Luhu"
+ },
+ "rna": {
+ "english_name": "Runa"
+ },
+ "rng": {
+ "english_name": "Ronga"
+ },
+ "rnd": {
+ "english_name": "Ruund"
+ },
+ "lcf": {
+ "english_name": "Lubu"
+ },
+ "lcd": {
+ "english_name": "Lola"
+ },
+ "lce": {
+ "english_name": "Loncong"
+ },
+ "lcc": {
+ "english_name": "Legenyem"
+ },
+ "rnr": {
+ "english_name": "Nari Nari"
+ },
+ "lcl": {
+ "english_name": "Lisela"
+ },
+ "lcm": {
+ "english_name": "Tungag"
+ },
+ "rnw": {
+ "english_name": "Rungwa"
+ },
+ "lch": {
+ "english_name": "Luchazi"
+ },
+ "bpa": {
+ "english_name": "Daakaka"
+ },
+ "qxc": {
+ "english_name": "Quechua, Chincha"
+ },
+ "bpb": {
+ "english_name": "Barbacoas"
+ },
+ "bpd": {
+ "english_name": "Banda-Banda"
+ },
+ "bpg": {
+ "english_name": "Bonggo"
+ },
+ "bpi": {
+ "english_name": "Bagupi"
+ },
+ "bph": {
+ "english_name": "Botlikh"
+ },
+ "bpk": {
+ "english_name": "Orowe"
+ },
+ "bpj": {
+ "english_name": "Binji"
+ },
+ "bpm": {
+ "english_name": "Biyom"
+ },
+ "bpl": {
+ "english_name": "Broome Pearling Lugger Pidgin"
+ },
+ "bpo": {
+ "english_name": "Anasi"
+ },
+ "bpn": {
+ "english_name": "Dzao Min"
+ },
+ "bpq": {
+ "english_name": "Malay, Banda"
+ },
+ "bpp": {
+ "english_name": "Kaure"
+ },
+ "bps": {
+ "english_name": "Blaan, Sarangani"
+ },
+ "bpr": {
+ "english_name": "Blaan, Koronadal"
+ },
+ "bpu": {
+ "english_name": "Bongu"
+ },
+ "bpt": {
+ "english_name": "Barrow Point"
+ },
+ "bpw": {
+ "english_name": "Bo (Papua New Guinea)"
+ },
+ "bpv": {
+ "english_name": "Marind, Bian"
+ },
+ "bpy": {
+ "english_name": "Bishnupriya"
+ },
+ "bpx": {
+ "english_name": "Bareli, Palya"
+ },
+ "bpz": {
+ "english_name": "Bilba"
+ },
+ "zca": {
+ "english_name": "Zapotec, Coatecas Altas"
+ },
+ "zch": {
+ "english_name": "Zhuang, Central Hongshuihe"
+ },
+ "yka": {
+ "english_name": "Yakan"
+ },
+ "ykg": {
+ "english_name": "Yukaghir, Northern"
+ },
+ "ykk": {
+ "english_name": "Yakaikeke"
+ },
+ "yki": {
+ "english_name": "Yoke"
+ },
+ "yko": {
+ "english_name": "Yasa"
+ },
+ "ykn": {
+ "english_name": "Kua-nsi"
+ },
+ "ykm": {
+ "english_name": "Kap"
+ },
+ "ykl": {
+ "english_name": "Khlula"
+ },
+ "ykr": {
+ "english_name": "Yekora"
+ },
+ "yku": {
+ "english_name": "Kuamasi"
+ },
+ "ykt": {
+ "english_name": "Kathu"
+ },
+ "yky": {
+ "english_name": "Yakoma"
+ },
+ "plw": {
+ "english_name": "Palawano, Brooke's Point"
+ },
+ "plv": {
+ "english_name": "Palawano, Southwest"
+ },
+ "plu": {
+ "english_name": "Palikúr"
+ },
+ "plt": {
+ "english_name": "Malagasy, Plateau"
+ },
+ "pls": {
+ "english_name": "Popoloca, San Marcos Tlalcoyalco"
+ },
+ "plr": {
+ "english_name": "Senoufo, Palaka"
+ },
+ "plq": {
+ "english_name": "Palaic"
+ },
+ "plp": {
+ "english_name": "Palpa"
+ },
+ "plz": {
+ "english_name": "Paluan"
+ },
+ "ply": {
+ "english_name": "Bolyu"
+ },
+ "plg": {
+ "english_name": "Pilagá"
+ },
+ "ple": {
+ "english_name": "Palu'e"
+ },
+ "pld": {
+ "english_name": "Polari"
+ },
+ "plc": {
+ "english_name": "Palawano, Central"
+ },
+ "plb": {
+ "english_name": "Polonombauk"
+ },
+ "pla": {
+ "english_name": "Miani"
+ },
+ "plo": {
+ "english_name": "Popoluca, Oluta"
+ },
+ "pln": {
+ "english_name": "Palenquero"
+ },
+ "pll": {
+ "english_name": "Palaung, Shwe"
+ },
+ "plk": {
+ "english_name": "Shina, Kohistani"
+ },
+ "plj": {
+ "english_name": "Polci"
+ },
+ "plh": {
+ "english_name": "Paulohi"
+ },
+ "obo": {
+ "english_name": "Manobo, Obo"
+ },
+ "obl": {
+ "english_name": "Oblo"
+ },
+ "obm": {
+ "english_name": "Moabite"
+ },
+ "obk": {
+ "english_name": "Bontok, Southern"
+ },
+ "obi": {
+ "english_name": "Obispeño"
+ },
+ "obt": {
+ "english_name": "Breton, Old"
+ },
+ "obu": {
+ "english_name": "Obulom"
+ },
+ "obr": {
+ "english_name": "Burmese, Old"
+ },
+ "xyt": {
+ "english_name": "Mayi-Thakurti"
+ },
+ "xyy": {
+ "english_name": "Yorta Yorta"
+ },
+ "xya": {
+ "english_name": "Yaygir"
+ },
+ "xyb": {
+ "english_name": "Yandjibara"
+ },
+ "xyj": {
+ "english_name": "Mayi-Yapi"
+ },
+ "xyk": {
+ "english_name": "Mayi-Kulan"
+ },
+ "xyl": {
+ "english_name": "Yalakalore"
+ },
+ "wao": {
+ "english_name": "Wappo"
+ },
+ "wan": {
+ "english_name": "Wan"
+ },
+ "wam": {
+ "english_name": "Wampanoag"
+ },
+ "wal": {
+ "english_name": "Wolaytta"
+ },
+ "waj": {
+ "english_name": "Waffa"
+ },
+ "wai": {
+ "english_name": "Wares"
+ },
+ "wah": {
+ "english_name": "Watubela"
+ },
+ "wag": {
+ "english_name": "Wa'ema"
+ },
+ "waf": {
+ "english_name": "Wakoná"
+ },
+ "wae": {
+ "english_name": "Walser"
+ },
+ "wad": {
+ "english_name": "Wandamen"
+ },
+ "wac": {
+ "english_name": "Wasco-Wishram"
+ },
+ "wab": {
+ "english_name": "Wab"
+ },
+ "waa": {
+ "english_name": "Walla Walla"
+ },
+ "waz": {
+ "english_name": "Wampur"
+ },
+ "way": {
+ "english_name": "Wayana"
+ },
+ "wax": {
+ "english_name": "Watam"
+ },
+ "waw": {
+ "english_name": "Waiwai"
+ },
+ "wav": {
+ "english_name": "Waka"
+ },
+ "wau": {
+ "english_name": "Waurá"
+ },
+ "wat": {
+ "english_name": "Kaninuwa"
+ },
+ "was": {
+ "english_name": "Washo"
+ },
+ "war": {
+ "english_name": "Waray (Philippines)"
+ },
+ "waq": {
+ "english_name": "Wageman"
+ },
+ "wap": {
+ "english_name": "Wapishana"
+ },
+ "mtx": {
+ "english_name": "Mixtec, Tidaá"
+ },
+ "mty": {
+ "english_name": "Nabi"
+ },
+ "mtr": {
+ "english_name": "Mewari"
+ },
+ "mts": {
+ "english_name": "Yora"
+ },
+ "mtp": {
+ "english_name": "Wichí Lhamtés Nocten"
+ },
+ "mtq": {
+ "english_name": "Muong"
+ },
+ "mtv": {
+ "english_name": "Asaro'o"
+ },
+ "mtw": {
+ "english_name": "Binukidnon, Southern"
+ },
+ "mtt": {
+ "english_name": "Mota"
+ },
+ "mtu": {
+ "english_name": "Mixtec, Tututepec"
+ },
+ "mtj": {
+ "english_name": "Moskona"
+ },
+ "mtk": {
+ "english_name": "Mbe'"
+ },
+ "mth": {
+ "english_name": "Munggui"
+ },
+ "mti": {
+ "english_name": "Maiwa (Papua New Guinea)"
+ },
+ "mtn": {
+ "english_name": "Matagalpa"
+ },
+ "mto": {
+ "english_name": "Mixe, Totontepec"
+ },
+ "mtl": {
+ "english_name": "Montol"
+ },
+ "mtm": {
+ "english_name": "Mator"
+ },
+ "mtb": {
+ "english_name": "Anyin Morofo"
+ },
+ "mtc": {
+ "english_name": "Munit"
+ },
+ "mta": {
+ "english_name": "Manobo, Cotabato"
+ },
+ "mtf": {
+ "english_name": "Murik (Papua New Guinea)"
+ },
+ "mtg": {
+ "english_name": "Una"
+ },
+ "mtd": {
+ "english_name": "Mualang"
+ },
+ "mte": {
+ "english_name": "Mono (Solomon Islands)"
+ },
+ "vwa": {
+ "english_name": "Awa (China)"
+ },
+ "kvf": {
+ "english_name": "Kabalai"
+ },
+ "kvg": {
+ "english_name": "Kuni-Boazi"
+ },
+ "kvd": {
+ "english_name": "Kui (Indonesia)"
+ },
+ "kve": {
+ "english_name": "Kalabakan"
+ },
+ "kvb": {
+ "english_name": "Kubu"
+ },
+ "kvc": {
+ "english_name": "Kove"
+ },
+ "kva": {
+ "english_name": "Bagvalal"
+ },
+ "kvn": {
+ "english_name": "Kuna, Border"
+ },
+ "kvo": {
+ "english_name": "Dobel"
+ },
+ "kvl": {
+ "english_name": "Kayaw"
+ },
+ "kvm": {
+ "english_name": "Kendem"
+ },
+ "kvj": {
+ "english_name": "Psikye"
+ },
+ "kvk": {
+ "english_name": "Korean Sign Language"
+ },
+ "kvh": {
+ "english_name": "Komodo"
+ },
+ "kvi": {
+ "english_name": "Kwang"
+ },
+ "kvv": {
+ "english_name": "Kola"
+ },
+ "kvw": {
+ "english_name": "Wersing"
+ },
+ "kvt": {
+ "english_name": "Karen, Lahta"
+ },
+ "kvu": {
+ "english_name": "Karen, Yinbaw"
+ },
+ "kvr": {
+ "english_name": "Kerinci"
+ },
+ "kvs": {
+ "english_name": "Kunggara"
+ },
+ "kvp": {
+ "english_name": "Kompane"
+ },
+ "kvq": {
+ "english_name": "Karen, Geba"
+ },
+ "kvz": {
+ "english_name": "Tsakwambo"
+ },
+ "kvx": {
+ "english_name": "Koli, Parkari"
+ },
+ "kvy": {
+ "english_name": "Karen, Yintale"
+ },
+ "ums": {
+ "english_name": "Pendau"
+ },
+ "umr": {
+ "english_name": "Umbugarla"
+ },
+ "szn": {
+ "english_name": "Sula"
+ },
+ "yvt": {
+ "english_name": "Yavitero"
+ },
+ "szl": {
+ "english_name": "Silesian"
+ },
+ "szb": {
+ "english_name": "Ngalum"
+ },
+ "jvn": {
+ "english_name": "Javanese, Caribbean"
+ },
+ "jvd": {
+ "english_name": "Javindo"
+ },
+ "sza": {
+ "english_name": "Semelai"
+ },
+ "szg": {
+ "english_name": "Sengele"
+ },
+ "szd": {
+ "english_name": "Seru"
+ },
+ "sze": {
+ "english_name": "Seze"
+ },
+ "umo": {
+ "english_name": "Umotína"
+ },
+ "guc": {
+ "english_name": "Wayuu"
+ },
+ "gub": {
+ "english_name": "Guajajára"
+ },
+ "gua": {
+ "english_name": "Shiki"
+ },
+ "gug": {
+ "english_name": "Guaraní, Paraguayan"
+ },
+ "guf": {
+ "english_name": "Gupapuyngu"
+ },
+ "gue": {
+ "english_name": "Gurinji"
+ },
+ "gud": {
+ "english_name": "Dida, Yocoboué"
+ },
+ "guk": {
+ "english_name": "Gumuz"
+ },
+ "gui": {
+ "english_name": "Guaraní, Eastern Bolivian"
+ },
+ "guh": {
+ "english_name": "Guahibo"
+ },
+ "guo": {
+ "english_name": "Guayabero"
+ },
+ "gun": {
+ "english_name": "Guaraní, Mbyá"
+ },
+ "gum": {
+ "english_name": "Guambiano"
+ },
+ "gul": {
+ "english_name": "Creole English, Sea Island"
+ },
+ "gus": {
+ "english_name": "Guinean Sign Language"
+ },
+ "gur": {
+ "english_name": "Farefare"
+ },
+ "guq": {
+ "english_name": "Aché"
+ },
+ "gup": {
+ "english_name": "Gunwinggu"
+ },
+ "guw": {
+ "english_name": "Gun"
+ },
+ "guv": {
+ "english_name": "Gey"
+ },
+ "guu": {
+ "english_name": "Yanomamö"
+ },
+ "gut": {
+ "english_name": "Maléku Jaíka"
+ },
+ "guz": {
+ "english_name": "Gusii"
+ },
+ "gux": {
+ "english_name": "Gourmanchéma"
+ },
+ "hto": {
+ "english_name": "Huitoto, Minica"
+ },
+ "hti": {
+ "english_name": "Hoti"
+ },
+ "htu": {
+ "english_name": "Hitu"
+ },
+ "hts": {
+ "english_name": "Hadza"
+ },
+ "htx": {
+ "english_name": "Hittite, Middle"
+ },
+ "szv": {
+ "english_name": "Isu (Fako Division)"
+ },
+ "szw": {
+ "english_name": "Sawai"
+ },
+ "eko": {
+ "english_name": "Koti"
+ },
+ "ekm": {
+ "english_name": "Elip"
+ },
+ "ekl": {
+ "english_name": "Kol (Bangladesh)"
+ },
+ "ekk": {
+ "english_name": "Estonian, Standard"
+ },
+ "eki": {
+ "english_name": "Eki"
+ },
+ "ekg": {
+ "english_name": "Ekari"
+ },
+ "eke": {
+ "english_name": "Ekit"
+ },
+ "ekc": {
+ "english_name": "Karnic, Eastern"
+ },
+ "eka": {
+ "english_name": "Ekajuk"
+ },
+ "eky": {
+ "english_name": "Kayah, Eastern"
+ },
+ "ekr": {
+ "english_name": "Yace"
+ },
+ "ekp": {
+ "english_name": "Ekpeye"
+ },
+ "uzn": {
+ "english_name": "Uzbek, Northern"
+ },
+ "fbl": {
+ "english_name": "Bikol, West Albay"
+ },
+ "caz": {
+ "english_name": "Canichana"
+ },
+ "cay": {
+ "english_name": "Cayuga"
+ },
+ "cax": {
+ "english_name": "Chiquitano"
+ },
+ "ibl": {
+ "english_name": "Ibaloi"
+ },
+ "ibm": {
+ "english_name": "Agoi"
+ },
+ "ibn": {
+ "english_name": "Ibino"
+ },
+ "cas": {
+ "english_name": "Tsimané"
+ },
+ "car": {
+ "english_name": "Carib, Galibi"
+ },
+ "caq": {
+ "english_name": "Nicobarese, Car"
+ },
+ "cap": {
+ "english_name": "Chipaya"
+ },
+ "caw": {
+ "english_name": "Callawalla"
+ },
+ "cav": {
+ "english_name": "Cavineña"
+ },
+ "ibg": {
+ "english_name": "Ibanag"
+ },
+ "cak": {
+ "english_name": "Kaqchikel"
+ },
+ "iby": {
+ "english_name": "Ibani"
+ },
+ "cah": {
+ "english_name": "Cahuarano"
+ },
+ "cao": {
+ "english_name": "Chácobo"
+ },
+ "can": {
+ "english_name": "Chambri"
+ },
+ "cam": {
+ "english_name": "Cemuhî"
+ },
+ "cal": {
+ "english_name": "Carolinian"
+ },
+ "cac": {
+ "english_name": "Chuj"
+ },
+ "cab": {
+ "english_name": "Garifuna"
+ },
+ "caa": {
+ "english_name": "Chortí"
+ },
+ "cag": {
+ "english_name": "Nivaclé"
+ },
+ "caf": {
+ "english_name": "Carrier, Southern"
+ },
+ "cae": {
+ "english_name": "Lehar"
+ },
+ "cad": {
+ "english_name": "Caddo"
+ },
+ "spx": {
+ "english_name": "Picene, South"
+ },
+ "spy": {
+ "english_name": "Sabaot"
+ },
+ "spp": {
+ "english_name": "Senoufo, Supyire"
+ },
+ "spq": {
+ "english_name": "Spanish, Loreto-Ucayali"
+ },
+ "spr": {
+ "english_name": "Saparua"
+ },
+ "sps": {
+ "english_name": "Saposa"
+ },
+ "spt": {
+ "english_name": "Bhoti, Spiti"
+ },
+ "spu": {
+ "english_name": "Sapuan"
+ },
+ "spv": {
+ "english_name": "Sambalpuri"
+ },
+ "spi": {
+ "english_name": "Saponi"
+ },
+ "spk": {
+ "english_name": "Sengo"
+ },
+ "spl": {
+ "english_name": "Selepet"
+ },
+ "spm": {
+ "english_name": "Akukem"
+ },
+ "spo": {
+ "english_name": "Spokane"
+ },
+ "spb": {
+ "english_name": "Sepa (Indonesia)"
+ },
+ "spc": {
+ "english_name": "Sapé"
+ },
+ "spd": {
+ "english_name": "Saep"
+ },
+ "spe": {
+ "english_name": "Sepa (Papua New Guinea)"
+ },
+ "spg": {
+ "english_name": "Sian"
+ },
+ "aog": {
+ "english_name": "Angoram"
+ },
+ "aof": {
+ "english_name": "Bragat"
+ },
+ "aoe": {
+ "english_name": "Angal Enen"
+ },
+ "aod": {
+ "english_name": "Andarum"
+ },
+ "aoc": {
+ "english_name": "Pemon"
+ },
+ "aob": {
+ "english_name": "Abom"
+ },
+ "aoa": {
+ "english_name": "Angolar"
+ },
+ "aon": {
+ "english_name": "Arapesh, Bumbita"
+ },
+ "aom": {
+ "english_name": "Ömie"
+ },
+ "aol": {
+ "english_name": "Alor"
+ },
+ "aok": {
+ "english_name": "Arhö"
+ },
+ "aoj": {
+ "english_name": "Mufian"
+ },
+ "aoi": {
+ "english_name": "Anindilyakwa"
+ },
+ "aoh": {
+ "english_name": "Arma"
+ },
+ "aou": {
+ "english_name": "A'ou"
+ },
+ "aot": {
+ "english_name": "A'tong"
+ },
+ "aos": {
+ "english_name": "Taikat"
+ },
+ "aor": {
+ "english_name": "Aore"
+ },
+ "aoz": {
+ "english_name": "Uab Meto"
+ },
+ "aox": {
+ "english_name": "Atorada"
+ },
+ "ght": {
+ "english_name": "Kuke"
+ },
+ "ghr": {
+ "english_name": "Ghera"
+ },
+ "ghs": {
+ "english_name": "Guhu-Samane"
+ },
+ "ghe": {
+ "english_name": "Ghale, Southern"
+ },
+ "gha": {
+ "english_name": "Ghadamès"
+ },
+ "ghc": {
+ "english_name": "Gaelic, Hiberno-Scottish"
+ },
+ "ghl": {
+ "english_name": "Ghulfan"
+ },
+ "ghn": {
+ "english_name": "Ghanongga"
+ },
+ "gho": {
+ "english_name": "Ghomara"
+ },
+ "ghh": {
+ "english_name": "Ghale, Northern"
+ },
+ "ghk": {
+ "english_name": "Karen, Geko"
+ },
+ "soa": {
+ "english_name": "Thai Song"
+ },
+ "soc": {
+ "english_name": "So (Democratic Republic of Congo)"
+ },
+ "sob": {
+ "english_name": "Sobei"
+ },
+ "soe": {
+ "english_name": "Songomeno"
+ },
+ "sod": {
+ "english_name": "Songoora"
+ },
+ "sog": {
+ "english_name": "Sogdian"
+ },
+ "soi": {
+ "english_name": "Sonha"
+ },
+ "soh": {
+ "english_name": "Aka"
+ },
+ "sok": {
+ "english_name": "Sokoro"
+ },
+ "nol": {
+ "english_name": "Nomlaki"
+ },
+ "aeq": {
+ "english_name": "Aer"
+ },
+ "non": {
+ "english_name": "Norse, Old"
+ },
+ "noh": {
+ "english_name": "Nomu"
+ },
+ "noi": {
+ "english_name": "Noiri"
+ },
+ "noj": {
+ "english_name": "Nonuya"
+ },
+ "nok": {
+ "english_name": "Nooksack"
+ },
+ "nod": {
+ "english_name": "Thai, Northern"
+ },
+ "noe": {
+ "english_name": "Nimadi"
+ },
+ "nof": {
+ "english_name": "Nomane"
+ },
+ "nog": {
+ "english_name": "Nogai"
+ },
+ "tjm": {
+ "english_name": "Timucua"
+ },
+ "noa": {
+ "english_name": "Woun Meu"
+ },
+ "tjo": {
+ "english_name": "Tamazight, Temacine"
+ },
+ "noc": {
+ "english_name": "Nuk"
+ },
+ "tjs": {
+ "english_name": "Tujia, Southern"
+ },
+ "aer": {
+ "english_name": "Arrernte, Eastern"
+ },
+ "tju": {
+ "english_name": "Tjurruru"
+ },
+ "noy": {
+ "english_name": "Noy"
+ },
+ "noz": {
+ "english_name": "Nayi"
+ },
+ "not": {
+ "english_name": "Nomatsiguenga"
+ },
+ "nou": {
+ "english_name": "Ewage-Notu"
+ },
+ "nov": {
+ "english_name": "Novial"
+ },
+ "now": {
+ "english_name": "Nyambo"
+ },
+ "nop": {
+ "english_name": "Numanggang"
+ },
+ "noq": {
+ "english_name": "Ngongo"
+ },
+ "nos": {
+ "english_name": "Nisu, Eastern"
+ },
+ "aey": {
+ "english_name": "Amele"
+ },
+ "sou": {
+ "english_name": "Thai, Southern"
+ },
+ "el": {
+ "name": "Ελληνικά",
+ "english_name": "Greek, Modern (1453-)"
+ },
+ "eo": {
+ "name": "Esperanto",
+ "english_name": "Esperanto"
+ },
+ "en": {
+ "english_name": "English"
+ },
+ "sow": {
+ "english_name": "Sowanda"
+ },
+ "ee": {
+ "english_name": "Ewe"
+ },
+ "soy": {
+ "english_name": "Miyobe"
+ },
+ "sox": {
+ "english_name": "Swo"
+ },
+ "eu": {
+ "name": "Euskara",
+ "english_name": "Basque"
+ },
+ "et": {
+ "name": "Eesti",
+ "english_name": "Estonian"
+ },
+ "es": {
+ "name": "Español",
+ "english_name": "Spanish"
+ },
+ "aea": {
+ "english_name": "Areba"
+ },
+ "soz": {
+ "english_name": "Temi"
+ },
+ "aeb": {
+ "english_name": "Arabic, Tunisian"
+ },
+ "aee": {
+ "english_name": "Pashayi, Northeast"
+ },
+ "aed": {
+ "english_name": "Argentine Sign Language"
+ },
+ "lmx": {
+ "english_name": "Laimbue"
+ },
+ "lmy": {
+ "english_name": "Lamboya"
+ },
+ "lmz": {
+ "english_name": "Lumbee"
+ },
+ "lmp": {
+ "english_name": "Limbum"
+ },
+ "lmq": {
+ "english_name": "Lamatuka"
+ },
+ "lmr": {
+ "english_name": "Lamalera"
+ },
+ "lmu": {
+ "english_name": "Lamenu"
+ },
+ "lmv": {
+ "english_name": "Lomaiviti"
+ },
+ "lmw": {
+ "english_name": "Miwok, Lake"
+ },
+ "lmh": {
+ "english_name": "Lambichhong"
+ },
+ "lmi": {
+ "english_name": "Lombi"
+ },
+ "lmj": {
+ "english_name": "Lembata, West"
+ },
+ "lmk": {
+ "english_name": "Lamkang"
+ },
+ "lml": {
+ "english_name": "Hano"
+ },
+ "lmn": {
+ "english_name": "Lambadi"
+ },
+ "lmo": {
+ "english_name": "Lombard"
+ },
+ "lma": {
+ "english_name": "Limba, East"
+ },
+ "lmb": {
+ "english_name": "Merei"
+ },
+ "lmc": {
+ "english_name": "Limilngan"
+ },
+ "lmd": {
+ "english_name": "Lumun"
+ },
+ "lme": {
+ "english_name": "Pévé"
+ },
+ "lmf": {
+ "english_name": "Lembata, South"
+ },
+ "lmg": {
+ "english_name": "Lamogai"
+ },
+ "aem": {
+ "english_name": "Arem"
+ },
+ "aen": {
+ "english_name": "Armenian Sign Language"
+ },
+ "zao": {
+ "english_name": "Zapotec, Ozolotepec"
+ },
+ "xh": {
+ "name": "Xhosa",
+ "english_name": "Xhosa"
+ },
+ "zam": {
+ "english_name": "Zapotec, Miahuatlán"
+ },
+ "zaj": {
+ "english_name": "Zaramo"
+ },
+ "zak": {
+ "english_name": "Zanaki"
+ },
+ "zah": {
+ "english_name": "Zangwal"
+ },
+ "zai": {
+ "english_name": "Zapotec, Isthmus"
+ },
+ "zaf": {
+ "english_name": "Zapotec, Ayoquesco"
+ },
+ "zag": {
+ "english_name": "Zaghawa"
+ },
+ "zad": {
+ "english_name": "Zapotec, Cajonos"
+ },
+ "zae": {
+ "english_name": "Zapotec, Yareni"
+ },
+ "zab": {
+ "english_name": "Zapotec, San Juan Guelavía"
+ },
+ "zac": {
+ "english_name": "Zapotec, Ocotlán"
+ },
+ "zaa": {
+ "english_name": "Zapotec, Sierra de Juárez"
+ },
+ "zaz": {
+ "english_name": "Zari"
+ },
+ "zax": {
+ "english_name": "Zapotec, Xadani"
+ },
+ "zay": {
+ "english_name": "Zayse-Zergulla"
+ },
+ "zav": {
+ "english_name": "Zapotec, Yatzachi"
+ },
+ "zaw": {
+ "english_name": "Zapotec, Mitla"
+ },
+ "zat": {
+ "english_name": "Zapotec, Tabaa"
+ },
+ "zau": {
+ "english_name": "Zangskari"
+ },
+ "zar": {
+ "english_name": "Zapotec, Rincón"
+ },
+ "zas": {
+ "english_name": "Zapotec, Santo Domingo Albarradas"
+ },
+ "zap": {
+ "english_name": "Zapotec"
+ },
+ "zaq": {
+ "english_name": "Zapotec, Aloápam"
+ },
+ "yig": {
+ "english_name": "Nasu, Wusa"
+ },
+ "yif": {
+ "english_name": "Ache"
+ },
+ "yia": {
+ "english_name": "Yinggarda"
+ },
+ "yim": {
+ "english_name": "Naga, Yimchungru"
+ },
+ "yil": {
+ "english_name": "Yindjilandji"
+ },
+ "yin": {
+ "english_name": "Yinchia"
+ },
+ "yii": {
+ "english_name": "Yidiny"
+ },
+ "yih": {
+ "english_name": "Yiddish, Western"
+ },
+ "yik": {
+ "english_name": "Lalo, Dongshanba"
+ },
+ "yij": {
+ "english_name": "Yindjibarndi"
+ },
+ "yiu": {
+ "english_name": "Awu"
+ },
+ "yit": {
+ "english_name": "Lalu, Eastern"
+ },
+ "yiv": {
+ "english_name": "Nisu, Northern"
+ },
+ "yiq": {
+ "english_name": "Miqie"
+ },
+ "yip": {
+ "english_name": "Pholo"
+ },
+ "yis": {
+ "english_name": "Yis"
+ },
+ "yir": {
+ "english_name": "Awyu, North"
+ },
+ "yix": {
+ "english_name": "Yi, Axi"
+ },
+ "yiz": {
+ "english_name": "Azhe"
+ },
+ "pny": {
+ "english_name": "Pinyin"
+ },
+ "pnx": {
+ "english_name": "Phong-Kniang"
+ },
+ "pnz": {
+ "english_name": "Pana (Central African Republic)"
+ },
+ "pnq": {
+ "english_name": "Pana (Burkina Faso)"
+ },
+ "pnp": {
+ "english_name": "Pancana"
+ },
+ "pns": {
+ "english_name": "Ponosakan"
+ },
+ "pnr": {
+ "english_name": "Panim"
+ },
+ "pnu": {
+ "english_name": "Bunu, Jiongnai"
+ },
+ "pnt": {
+ "english_name": "Pontic"
+ },
+ "pnw": {
+ "english_name": "Panytyima"
+ },
+ "pnv": {
+ "english_name": "Pinigura"
+ },
+ "pni": {
+ "english_name": "Aoheng"
+ },
+ "pnh": {
+ "english_name": "Penrhyn"
+ },
+ "pnk": {
+ "english_name": "Paunaka"
+ },
+ "pnj": {
+ "english_name": "Pinjarup"
+ },
+ "pnm": {
+ "english_name": "Punan Batu 1"
+ },
+ "pnl": {
+ "english_name": "Paleni"
+ },
+ "pno": {
+ "english_name": "Panobo"
+ },
+ "pnn": {
+ "english_name": "Pinai-Hagahai"
+ },
+ "pna": {
+ "english_name": "Punan Bah-Biau"
+ },
+ "pnc": {
+ "english_name": "Pannei"
+ },
+ "pnb": {
+ "english_name": "Panjabi, Western"
+ },
+ "pne": {
+ "english_name": "Penan, Western"
+ },
+ "png": {
+ "english_name": "Pongu"
+ },
+ "wca": {
+ "english_name": "Yanomámi"
+ },
+ "wci": {
+ "english_name": "Gbe, Waci"
+ },
+ "mrx": {
+ "english_name": "Maremgi"
+ },
+ "mry": {
+ "english_name": "Mandaya"
+ },
+ "mrz": {
+ "english_name": "Marind"
+ },
+ "mrt": {
+ "english_name": "Marghi Central"
+ },
+ "mru": {
+ "english_name": "Mono (Cameroon)"
+ },
+ "mrv": {
+ "english_name": "Mangareva"
+ },
+ "mrw": {
+ "english_name": "Maranao"
+ },
+ "mrp": {
+ "english_name": "Morouas"
+ },
+ "mrq": {
+ "english_name": "Marquesan, North"
+ },
+ "mrr": {
+ "english_name": "Maria (India)"
+ },
+ "mrs": {
+ "english_name": "Maragus"
+ },
+ "mrl": {
+ "english_name": "Mortlockese"
+ },
+ "mrm": {
+ "english_name": "Merlav"
+ },
+ "mrn": {
+ "english_name": "Cheke Holo"
+ },
+ "mro": {
+ "english_name": "Mru"
+ },
+ "mrh": {
+ "english_name": "Chin, Mara"
+ },
+ "mrj": {
+ "english_name": "Mari, Western"
+ },
+ "mrk": {
+ "english_name": "Hmwaveke"
+ },
+ "mrd": {
+ "english_name": "Magar, Western"
+ },
+ "mre": {
+ "english_name": "Martha's Vineyard Sign Language"
+ },
+ "mrf": {
+ "english_name": "Elseng"
+ },
+ "mrg": {
+ "english_name": "Mising"
+ },
+ "mra": {
+ "english_name": "Mlabri"
+ },
+ "mrb": {
+ "english_name": "Marino"
+ },
+ "mrc": {
+ "english_name": "Maricopa"
+ },
+ "xvs": {
+ "english_name": "Vestinian"
+ },
+ "kxh": {
+ "english_name": "Karo (Ethiopia)"
+ },
+ "kxi": {
+ "english_name": "Murut, Keningau"
+ },
+ "kxj": {
+ "english_name": "Kulfa"
+ },
+ "kxk": {
+ "english_name": "Karen, Zayein"
+ },
+ "kxl": {
+ "english_name": "Kurux, Nepali"
+ },
+ "kxm": {
+ "english_name": "Khmer, Northern"
+ },
+ "kxn": {
+ "english_name": "Melanau, Kanowit-Tanjong"
+ },
+ "kxo": {
+ "english_name": "Kanoé"
+ },
+ "kxa": {
+ "english_name": "Kairiru"
+ },
+ "kxb": {
+ "english_name": "Krobu"
+ },
+ "kxc": {
+ "english_name": "Konso"
+ },
+ "kxd": {
+ "english_name": "Brunei"
+ },
+ "kxf": {
+ "english_name": "Karen, Manumanaw"
+ },
+ "kxx": {
+ "english_name": "Likuba"
+ },
+ "kxy": {
+ "english_name": "Kayong"
+ },
+ "kxz": {
+ "english_name": "Kerewo"
+ },
+ "kxp": {
+ "english_name": "Koli, Wadiyara"
+ },
+ "kxq": {
+ "english_name": "Kanum, Smärky"
+ },
+ "kxr": {
+ "english_name": "Koro (Papua New Guinea)"
+ },
+ "kxs": {
+ "english_name": "Kangjia"
+ },
+ "kxt": {
+ "english_name": "Koiwat"
+ },
+ "kxu": {
+ "english_name": "Kui (India)"
+ },
+ "kxv": {
+ "english_name": "Kuvi"
+ },
+ "kxw": {
+ "english_name": "Konai"
+ },
+ "xwt": {
+ "english_name": "Wotjobaluk"
+ },
+ "gbb": {
+ "english_name": "Kaytetye"
+ },
+ "yty": {
+ "english_name": "Yatay"
+ },
+ "ytw": {
+ "english_name": "Yout Wam"
+ },
+ "ytp": {
+ "english_name": "Thopho"
+ },
+ "ytl": {
+ "english_name": "Tanglang"
+ },
+ "yta": {
+ "english_name": "Talu"
+ },
+ "jib": {
+ "english_name": "Jibu"
+ },
+ "gwe": {
+ "english_name": "Gweno"
+ },
+ "gwd": {
+ "english_name": "Gawwada"
+ },
+ "gwg": {
+ "english_name": "Moo"
+ },
+ "gwf": {
+ "english_name": "Gowro"
+ },
+ "gwa": {
+ "english_name": "Mbato"
+ },
+ "gwc": {
+ "english_name": "Kalami"
+ },
+ "gwb": {
+ "english_name": "Gwa"
+ },
+ "gwm": {
+ "english_name": "Awngthim"
+ },
+ "gwn": {
+ "english_name": "Gwandara"
+ },
+ "gwi": {
+ "english_name": "Gwichʼin"
+ },
+ "gwj": {
+ "english_name": "/Gwi"
+ },
+ "gwu": {
+ "english_name": "Guwamu"
+ },
+ "gwt": {
+ "english_name": "Gawar-Bati"
+ },
+ "gww": {
+ "english_name": "Kwini"
+ },
+ "gwr": {
+ "english_name": "Gwere"
+ },
+ "gwx": {
+ "english_name": "Gua"
+ },
+ "hvk": {
+ "english_name": "Haveke"
+ },
+ "hvn": {
+ "english_name": "Sabu"
+ },
+ "hvc": {
+ "english_name": "Haitian Vodoun Culture Language"
+ },
+ "hve": {
+ "english_name": "Huave, San Dionisio Del Mar"
+ },
+ "hvv": {
+ "english_name": "Huave, Santa María Del Mar"
+ },
+ "tls": {
+ "english_name": "Tambotalo"
+ },
+ "tlr": {
+ "english_name": "Talise"
+ },
+ "eip": {
+ "english_name": "Eipomek"
+ },
+ "eit": {
+ "english_name": "Eitiep"
+ },
+ "eiv": {
+ "english_name": "Askopan"
+ },
+ "tlt": {
+ "english_name": "Teluti"
+ },
+ "tly": {
+ "english_name": "Talysh"
+ },
+ "yi": {
+ "english_name": "Yiddish"
+ },
+ "tlc": {
+ "english_name": "Totonac, Yecuatla"
+ },
+ "yo": {
+ "english_name": "Yoruba"
+ },
+ "tlb": {
+ "english_name": "Tobelo"
+ },
+ "tli": {
+ "english_name": "Tlingit"
+ },
+ "tlo": {
+ "english_name": "Talodi"
+ },
+ "ccp": {
+ "english_name": "Chakma"
+ },
+ "ccr": {
+ "english_name": "Cacaopera"
+ },
+ "ccm": {
+ "english_name": "Creole Malay, Malaccan"
+ },
+ "ccl": {
+ "english_name": "Cutchi-Swahili"
+ },
+ "cco": {
+ "english_name": "Chinantec, Comaltepec"
+ },
+ "cch": {
+ "english_name": "Atsam"
+ },
+ "ccj": {
+ "english_name": "Kasanga"
+ },
+ "cce": {
+ "english_name": "Chopi"
+ },
+ "ccd": {
+ "english_name": "Creole, Cafundo"
+ },
+ "ccg": {
+ "english_name": "Daka, Samba"
+ },
+ "cca": {
+ "english_name": "Cauca"
+ },
+ "ccc": {
+ "english_name": "Chamicuro"
+ },
+ "ami": {
+ "english_name": "Amis"
+ },
+ "amk": {
+ "english_name": "Ambai"
+ },
+ "psi": {
+ "english_name": "Pashayi, Southeast"
+ },
+ "psn": {
+ "english_name": "Panasuan"
+ },
+ "aml": {
+ "english_name": "War-Jaintia"
+ },
+ "amo": {
+ "english_name": "Amo"
+ },
+ "amn": {
+ "english_name": "Amanab"
+ },
+ "ama": {
+ "english_name": "Amanayé"
+ },
+ "psc": {
+ "english_name": "Persian Sign Language"
+ },
+ "amc": {
+ "english_name": "Amahuaca"
+ },
+ "amb": {
+ "english_name": "Ambo"
+ },
+ "ame": {
+ "english_name": "Yanesha'"
+ },
+ "psg": {
+ "english_name": "Penang Sign Language"
+ },
+ "amg": {
+ "english_name": "Amurdak"
+ },
+ "pse": {
+ "english_name": "Malay, Central"
+ },
+ "amy": {
+ "english_name": "Ami"
+ },
+ "amx": {
+ "english_name": "Anmatyerre"
+ },
+ "amz": {
+ "english_name": "Atampaya"
+ },
+ "amq": {
+ "english_name": "Amahai"
+ },
+ "amp": {
+ "english_name": "Alamblak"
+ },
+ "psp": {
+ "english_name": "Philippine Sign Language"
+ },
+ "psq": {
+ "english_name": "Pasi"
+ },
+ "amu": {
+ "english_name": "Amuzgo, Guerrero"
+ },
+ "psw": {
+ "english_name": "Port Sandwich"
+ },
+ "amw": {
+ "english_name": "Neo-Aramaic, Western"
+ },
+ "psu": {
+ "english_name": "Prākrit, Sauraseni"
+ },
+ "gju": {
+ "english_name": "Gujari"
+ },
+ "gjn": {
+ "english_name": "Gonja"
+ },
+ "gjm": {
+ "english_name": "Gunditjmara"
+ },
+ "gjk": {
+ "english_name": "Koli, Kachi"
+ },
+ "gji": {
+ "english_name": "Geji"
+ },
+ "nmv": {
+ "english_name": "Ngamini"
+ },
+ "nmw": {
+ "english_name": "Nimoa"
+ },
+ "nmt": {
+ "english_name": "Namonuito"
+ },
+ "nmu": {
+ "english_name": "Maidu, Northeast"
+ },
+ "nmr": {
+ "english_name": "Nimbari"
+ },
+ "nms": {
+ "english_name": "Letemboi"
+ },
+ "nmp": {
+ "english_name": "Nimanbur"
+ },
+ "nmq": {
+ "english_name": "Nambya"
+ },
+ "tdc": {
+ "english_name": "Emberá-Tadó"
+ },
+ "tdb": {
+ "english_name": "Panchpargania"
+ },
+ "tda": {
+ "english_name": "Tagdal"
+ },
+ "nmz": {
+ "english_name": "Nawdm"
+ },
+ "tdf": {
+ "english_name": "Talieng"
+ },
+ "nmx": {
+ "english_name": "Nama (Papua New Guinea)"
+ },
+ "nmy": {
+ "english_name": "Namuyi"
+ },
+ "nmf": {
+ "english_name": "Naga, Tangkhul (India)"
+ },
+ "nmg": {
+ "english_name": "Kwasio"
+ },
+ "nmd": {
+ "english_name": "Ndumu"
+ },
+ "nme": {
+ "english_name": "Naga, Mzieme"
+ },
+ "nmb": {
+ "english_name": "Nambas, Big"
+ },
+ "nmc": {
+ "english_name": "Ngam"
+ },
+ "nma": {
+ "english_name": "Naga, Maram"
+ },
+ "nmn": {
+ "english_name": "!Xóõ"
+ },
+ "nmo": {
+ "english_name": "Naga, Moyon"
+ },
+ "nml": {
+ "english_name": "Ndemli"
+ },
+ "nmm": {
+ "english_name": "Manangba"
+ },
+ "nmj": {
+ "english_name": "Ngombe (Central African Republic)"
+ },
+ "nmk": {
+ "english_name": "Namakura"
+ },
+ "nmh": {
+ "english_name": "Naga, Monsang"
+ },
+ "nmi": {
+ "english_name": "Nyam"
+ },
+ "dza": {
+ "english_name": "Tunzu"
+ },
+ "src": {
+ "english_name": "Sardinian, Logudorese"
+ },
+ "sra": {
+ "english_name": "Saruga"
+ },
+ "dze": {
+ "english_name": "Djiwarli"
+ },
+ "srg": {
+ "english_name": "Sulod"
+ },
+ "dzg": {
+ "english_name": "Dazaga"
+ },
+ "sre": {
+ "english_name": "Sara"
+ },
+ "srk": {
+ "english_name": "Serudung Murut"
+ },
+ "srh": {
+ "english_name": "Sarikoli"
+ },
+ "sri": {
+ "english_name": "Siriano"
+ },
+ "srn": {
+ "english_name": "Sranan Tongo"
+ },
+ "dzl": {
+ "english_name": "Dzalakha"
+ },
+ "srl": {
+ "english_name": "Isirawa"
+ },
+ "dzn": {
+ "english_name": "Dzando"
+ },
+ "srr": {
+ "english_name": "Serer"
+ },
+ "srs": {
+ "english_name": "Sarsi"
+ },
+ "srq": {
+ "english_name": "Sirionó"
+ },
+ "srv": {
+ "english_name": "Sorsoganon, Southern"
+ },
+ "srw": {
+ "english_name": "Serua"
+ },
+ "srt": {
+ "english_name": "Sauri"
+ },
+ "sru": {
+ "english_name": "Suruí"
+ },
+ "srz": {
+ "english_name": "Shahmirzadi"
+ },
+ "srx": {
+ "english_name": "Sirmauri"
+ },
+ "sry": {
+ "english_name": "Sera"
+ },
+ "lob": {
+ "english_name": "Lobi"
+ },
+ "loc": {
+ "english_name": "Inonhan"
+ },
+ "loa": {
+ "english_name": "Loloda"
+ },
+ "lof": {
+ "english_name": "Logol"
+ },
+ "log": {
+ "english_name": "Logo"
+ },
+ "loe": {
+ "english_name": "Saluan"
+ },
+ "loj": {
+ "english_name": "Lou"
+ },
+ "lok": {
+ "english_name": "Loko"
+ },
+ "loh": {
+ "english_name": "Narim"
+ },
+ "loi": {
+ "english_name": "Loma (Côte d'Ivoire)"
+ },
+ "lon": {
+ "english_name": "Lomwe, Malawi"
+ },
+ "loo": {
+ "english_name": "Lombo"
+ },
+ "lol": {
+ "english_name": "Mongo"
+ },
+ "lom": {
+ "english_name": "Loma (Liberia)"
+ },
+ "lor": {
+ "english_name": "Téén"
+ },
+ "los": {
+ "english_name": "Loniu"
+ },
+ "lop": {
+ "english_name": "Lopa"
+ },
+ "loq": {
+ "english_name": "Lobala"
+ },
+ "lov": {
+ "english_name": "Lopi"
+ },
+ "low": {
+ "english_name": "Lobu, Tampias"
+ },
+ "lot": {
+ "english_name": "Otuho"
+ },
+ "lou": {
+ "english_name": "Creole French, Louisiana"
+ },
+ "loz": {
+ "english_name": "Lozi"
+ },
+ "lox": {
+ "english_name": "Loun"
+ },
+ "loy": {
+ "english_name": "Loke"
+ },
+ "rjs": {
+ "english_name": "Rajbanshi"
+ },
+ "rjg": {
+ "english_name": "Rajong"
+ },
+ "rji": {
+ "english_name": "Raji"
+ },
+ "yon": {
+ "english_name": "Yongkom"
+ },
+ "yom": {
+ "english_name": "Yombe"
+ },
+ "yol": {
+ "english_name": "Yola"
+ },
+ "yok": {
+ "english_name": "Yokuts"
+ },
+ "yoi": {
+ "english_name": "Yonaguni"
+ },
+ "yog": {
+ "english_name": "Yogad"
+ },
+ "yob": {
+ "english_name": "Yoba"
+ },
+ "yoy": {
+ "english_name": "Yoy"
+ },
+ "yox": {
+ "english_name": "Yoron"
+ },
+ "yot": {
+ "english_name": "Yotti"
+ },
+ "wmx": {
+ "english_name": "Womo"
+ },
+ "wms": {
+ "english_name": "Wambon"
+ },
+ "wmw": {
+ "english_name": "Mwani"
+ },
+ "wmt": {
+ "english_name": "Walmajarri"
+ },
+ "wmi": {
+ "english_name": "Wamin"
+ },
+ "wmh": {
+ "english_name": "Waima'a"
+ },
+ "wmo": {
+ "english_name": "Wom (Papua New Guinea)"
+ },
+ "wmn": {
+ "english_name": "Waamwang"
+ },
+ "wmm": {
+ "english_name": "Maiwa (Indonesia)"
+ },
+ "wmc": {
+ "english_name": "Wamas"
+ },
+ "wmb": {
+ "english_name": "Wambaya"
+ },
+ "wma": {
+ "english_name": "Mawa (Nigeria)"
+ },
+ "wme": {
+ "english_name": "Wambule"
+ },
+ "wmd": {
+ "english_name": "Mamaindé"
+ },
+ "mpg": {
+ "english_name": "Marba"
+ },
+ "mpd": {
+ "english_name": "Machinere"
+ },
+ "mpe": {
+ "english_name": "Majang"
+ },
+ "mpb": {
+ "english_name": "Mullukmulluk"
+ },
+ "mpc": {
+ "english_name": "Mangarayi"
+ },
+ "mpa": {
+ "english_name": "Mpoto"
+ },
+ "mpn": {
+ "english_name": "Mindiri"
+ },
+ "mpo": {
+ "english_name": "Miu"
+ },
+ "mpl": {
+ "english_name": "Watut, Middle"
+ },
+ "mpm": {
+ "english_name": "Mixtec, Yosondúa"
+ },
+ "mpj": {
+ "english_name": "Martu Wangka"
+ },
+ "mpk": {
+ "english_name": "Mbara (Chad)"
+ },
+ "mph": {
+ "english_name": "Maung"
+ },
+ "mpi": {
+ "english_name": "Mpade"
+ },
+ "mpv": {
+ "english_name": "Mungkip"
+ },
+ "mpw": {
+ "english_name": "Mapidian"
+ },
+ "mpt": {
+ "english_name": "Mian"
+ },
+ "mpu": {
+ "english_name": "Makuráp"
+ },
+ "mpr": {
+ "english_name": "Vangunu"
+ },
+ "mps": {
+ "english_name": "Dadibi"
+ },
+ "mpp": {
+ "english_name": "Migabac"
+ },
+ "mpq": {
+ "english_name": "Matís"
+ },
+ "mpz": {
+ "english_name": "Mpi"
+ },
+ "mpx": {
+ "english_name": "Misima-Panaeati"
+ },
+ "mpy": {
+ "english_name": "Mapia"
+ },
+ "asr": {
+ "english_name": "Asuri"
+ },
+ "puo": {
+ "english_name": "Puoc"
+ },
+ "pui": {
+ "english_name": "Puinave"
+ },
+ "asu": {
+ "english_name": "Asurini, Tocantins"
+ },
+ "puk": {
+ "english_name": "Pu Ko"
+ },
+ "pue": {
+ "english_name": "Puelche"
+ },
+ "puf": {
+ "english_name": "Punan Merah"
+ },
+ "kzr": {
+ "english_name": "Karang"
+ },
+ "kzs": {
+ "english_name": "Dusun, Sugut"
+ },
+ "kzp": {
+ "english_name": "Kaidipang"
+ },
+ "kzq": {
+ "english_name": "Kaike"
+ },
+ "kzv": {
+ "english_name": "Komyandaret"
+ },
+ "kzw": {
+ "english_name": "Karirí-Xocó"
+ },
+ "kzt": {
+ "english_name": "Dusun, Tambunan"
+ },
+ "kzu": {
+ "english_name": "Kayupulau"
+ },
+ "kzz": {
+ "english_name": "Kalabra"
+ },
+ "kzx": {
+ "english_name": "Kamarian"
+ },
+ "kzy": {
+ "english_name": "Kango (Tshopo District)"
+ },
+ "kzb": {
+ "english_name": "Kaibobo"
+ },
+ "kzc": {
+ "english_name": "Kulango, Bondoukou"
+ },
+ "kza": {
+ "english_name": "Karaboro, Western"
+ },
+ "kzf": {
+ "english_name": "Kaili, Da'a"
+ },
+ "kzg": {
+ "english_name": "Kikai"
+ },
+ "kzd": {
+ "english_name": "Kadai"
+ },
+ "kze": {
+ "english_name": "Kosena"
+ },
+ "kzj": {
+ "english_name": "Kadazan, Coastal"
+ },
+ "kzk": {
+ "english_name": "Kazukuru"
+ },
+ "kzi": {
+ "english_name": "Kelabit"
+ },
+ "kzn": {
+ "english_name": "Kokola"
+ },
+ "kzo": {
+ "english_name": "Kaningi"
+ },
+ "kzl": {
+ "english_name": "Kayeli"
+ },
+ "kzm": {
+ "english_name": "Kais"
+ },
+ "pux": {
+ "english_name": "Puare"
+ },
+ "puy": {
+ "english_name": "Purisimeño"
+ },
+ "jrb": {
+ "english_name": "Judeo-Arabic"
+ },
+ "jra": {
+ "english_name": "Jarai"
+ },
+ "put": {
+ "english_name": "Putoh"
+ },
+ "jru": {
+ "english_name": "Japrería"
+ },
+ "jrt": {
+ "english_name": "Jorto"
+ },
+ "jrr": {
+ "english_name": "Jiru"
+ },
+ "puu": {
+ "english_name": "Punu"
+ },
+ "puw": {
+ "english_name": "Puluwatese"
+ },
+ "pup": {
+ "english_name": "Pulabu"
+ },
+ "asn": {
+ "english_name": "Asuriní, Xingú"
+ },
+ "gqn": {
+ "english_name": "Guana (Brazil)"
+ },
+ "gqi": {
+ "english_name": "Guiqiong"
+ },
+ "gqa": {
+ "english_name": "Ga'anda"
+ },
+ "gqu": {
+ "english_name": "Qau"
+ },
+ "gqr": {
+ "english_name": "Gor"
+ },
+ "hhr": {
+ "english_name": "Kerak"
+ },
+ "hhy": {
+ "english_name": "Hoyahoya"
+ },
+ "hhi": {
+ "english_name": "Hoia Hoia"
+ },
+ "fr": {
+ "name": "français",
+ "english_name": "French"
+ },
+ "cjk": {
+ "english_name": "Chokwe"
+ },
+ "fy": {
+ "english_name": "Frisian, Western"
+ },
+ "fa": {
+ "name": "فارسی",
+ "english_name": "Persian"
+ },
+ "ff": {
+ "english_name": "Fulah"
+ },
+ "fi": {
+ "name": "suomi",
+ "english_name": "Finnish"
+ },
+ "fj": {
+ "english_name": "Fijian"
+ },
+ "fo": {
+ "english_name": "Faroese"
+ },
+ "egy": {
+ "english_name": "Egyptian (Ancient)"
+ },
+ "ego": {
+ "english_name": "Eggon"
+ },
+ "egl": {
+ "english_name": "Emilian"
+ },
+ "ega": {
+ "english_name": "Ega"
+ },
+ "uvh": {
+ "english_name": "Uri"
+ },
+ "ffm": {
+ "english_name": "Fulfulde, Maasina"
+ },
+ "uvl": {
+ "english_name": "Lote"
+ },
+ "ffi": {
+ "english_name": "Foia Foia"
+ },
+ "uve": {
+ "english_name": "Uvean, West"
+ },
+ "cjy": {
+ "english_name": "Chinese, Jinyu"
+ },
+ "ceg": {
+ "english_name": "Chamacoco"
+ },
+ "rwa": {
+ "english_name": "Rawo"
+ },
+ "ceb": {
+ "english_name": "Cebuano"
+ },
+ "cea": {
+ "english_name": "Chehalis, Lower"
+ },
+ "cen": {
+ "english_name": "Cen"
+ },
+ "rwk": {
+ "english_name": "Rwa"
+ },
+ "cek": {
+ "english_name": "Chin, Eastern Khumi"
+ },
+ "rwm": {
+ "english_name": "Amba (Uganda)"
+ },
+ "rwo": {
+ "english_name": "Rawa"
+ },
+ "rwr": {
+ "english_name": "Marwari (India)"
+ },
+ "cet": {
+ "english_name": "Centúúm"
+ },
+ "ifu": {
+ "english_name": "Ifugao, Mayoyao"
+ },
+ "ify": {
+ "english_name": "Kallahan, Keley-I"
+ },
+ "ife": {
+ "english_name": "Ifè"
+ },
+ "iff": {
+ "english_name": "Ifo"
+ },
+ "ifa": {
+ "english_name": "Ifugao, Amganad"
+ },
+ "ifb": {
+ "english_name": "Ifugao, Batad"
+ },
+ "ifm": {
+ "english_name": "Teke-Fuumu"
+ },
+ "ifk": {
+ "english_name": "Ifugao, Tuwali"
+ },
+ "ass": {
+ "english_name": "Ipulo"
+ },
+ "pum": {
+ "english_name": "Puma"
+ },
+ "asq": {
+ "english_name": "Austrian Sign Language"
+ },
+ "asp": {
+ "english_name": "Algerian Sign Language"
+ },
+ "asw": {
+ "english_name": "Australian Aborigines Sign Language"
+ },
+ "asv": {
+ "english_name": "Asoa"
+ },
+ "puj": {
+ "english_name": "Punan Tubu"
+ },
+ "ast": {
+ "name": "Asturianu",
+ "english_name": "Asturian"
+ },
+ "pud": {
+ "english_name": "Punan Aput"
+ },
+ "asz": {
+ "english_name": "As"
+ },
+ "asy": {
+ "english_name": "Asmat, Yaosakor"
+ },
+ "asx": {
+ "english_name": "Muratayak"
+ },
+ "pua": {
+ "english_name": "Purepecha, Western Highland"
+ },
+ "pub": {
+ "english_name": "Purum"
+ },
+ "puc": {
+ "english_name": "Punan Merap"
+ },
+ "asc": {
+ "english_name": "Asmat, Casuarina Coast"
+ },
+ "asb": {
+ "english_name": "Assiniboine"
+ },
+ "asa": {
+ "english_name": "Asu (Tanzania)"
+ },
+ "asg": {
+ "english_name": "Cishingini"
+ },
+ "asf": {
+ "english_name": "Australian Sign Language"
+ },
+ "ase": {
+ "english_name": "American Sign Language"
+ },
+ "asd": {
+ "english_name": "Asas"
+ },
+ "ask": {
+ "english_name": "Ashkun"
+ },
+ "asj": {
+ "english_name": "Sari"
+ },
+ "asi": {
+ "english_name": "Buruwai"
+ },
+ "ash": {
+ "english_name": "Abishira"
+ },
+ "aso": {
+ "english_name": "Dano"
+ },
+ "puq": {
+ "english_name": "Puquina"
+ },
+ "pur": {
+ "english_name": "Puruborá"
+ },
+ "asl": {
+ "english_name": "Asilulu"
+ },
+ "ncx": {
+ "english_name": "Nahuatl, Central Puebla"
+ },
+ "ncz": {
+ "english_name": "Natchez"
+ },
+ "tfn": {
+ "english_name": "Tanaina"
+ },
+ "tfi": {
+ "english_name": "Gbe, Tofin"
+ },
+ "ncp": {
+ "english_name": "Ndaktup"
+ },
+ "ncr": {
+ "english_name": "Ncane"
+ },
+ "ncs": {
+ "english_name": "Nicaraguan Sign Language"
+ },
+ "nct": {
+ "english_name": "Naga, Chothe"
+ },
+ "ncu": {
+ "english_name": "Chumburung"
+ },
+ "nch": {
+ "english_name": "Nahuatl, Central Huasteca"
+ },
+ "nci": {
+ "english_name": "Nahuatl, Classical"
+ },
+ "ncj": {
+ "english_name": "Nahuatl, Northern Puebla"
+ },
+ "nck": {
+ "english_name": "Nakara"
+ },
+ "ncl": {
+ "english_name": "Nahuatl, Michoacán"
+ },
+ "ncm": {
+ "english_name": "Nambo"
+ },
+ "ncn": {
+ "english_name": "Nauna"
+ },
+ "nco": {
+ "english_name": "Sibe"
+ },
+ "nca": {
+ "english_name": "Iyo"
+ },
+ "ncb": {
+ "english_name": "Nicobarese, Central"
+ },
+ "ncc": {
+ "english_name": "Ponam"
+ },
+ "ncd": {
+ "english_name": "Nachering"
+ },
+ "nce": {
+ "english_name": "Yale"
+ },
+ "ncf": {
+ "english_name": "Notsi"
+ },
+ "ncg": {
+ "english_name": "Nisga'a"
+ },
+ "dtk": {
+ "english_name": "Dogon, Tene Kan"
+ },
+ "ste": {
+ "english_name": "Liana-Seti"
+ },
+ "dti": {
+ "english_name": "Dogon, Ana Tinga"
+ },
+ "dth": {
+ "english_name": "Adithinngithigh"
+ },
+ "dto": {
+ "english_name": "Dogon, Tommo So"
+ },
+ "sta": {
+ "english_name": "Settla"
+ },
+ "dtm": {
+ "english_name": "Dogon, Tomo Kan"
+ },
+ "stl": {
+ "english_name": "Stellingwerfs"
+ },
+ "dtb": {
+ "english_name": "Kadazan, Labuk-Kinabatangan"
+ },
+ "dta": {
+ "english_name": "Daur"
+ },
+ "sto": {
+ "english_name": "Stoney"
+ },
+ "sth": {
+ "english_name": "Shelta"
+ },
+ "sti": {
+ "english_name": "Stieng, Bulo"
+ },
+ "stj": {
+ "english_name": "Samo, Matya"
+ },
+ "dtd": {
+ "english_name": "Ditidaht"
+ },
+ "stt": {
+ "english_name": "Stieng, Budeh"
+ },
+ "stu": {
+ "english_name": "Samtao"
+ },
+ "dty": {
+ "english_name": "Dotyali"
+ },
+ "stw": {
+ "english_name": "Satawalese"
+ },
+ "stp": {
+ "english_name": "Tepehuan, Southeastern"
+ },
+ "stq": {
+ "english_name": "Saterfriesisch"
+ },
+ "str": {
+ "english_name": "Salish, Straits"
+ },
+ "sts": {
+ "english_name": "Shumashti"
+ },
+ "dts": {
+ "english_name": "Dogon, Toro So"
+ },
+ "dtr": {
+ "english_name": "Lotud"
+ },
+ "dtp": {
+ "english_name": "Dusun, Central"
+ },
+ "sty": {
+ "english_name": "Tatar, Siberian"
+ },
+ "dtu": {
+ "english_name": "Dogon, Tebul Ure"
+ },
+ "dtt": {
+ "english_name": "Dogon, Toro Tegu"
+ },
+ "tfo": {
+ "english_name": "Tefaro"
+ },
+ "lid": {
+ "english_name": "Nyindrou"
+ },
+ "lie": {
+ "english_name": "Likila"
+ },
+ "lif": {
+ "english_name": "Limbu"
+ },
+ "lig": {
+ "english_name": "Ligbi"
+ },
+ "lia": {
+ "english_name": "Limba, West-Central"
+ },
+ "lib": {
+ "english_name": "Likum"
+ },
+ "lic": {
+ "english_name": "Hlai"
+ },
+ "lil": {
+ "english_name": "Lillooet"
+ },
+ "lio": {
+ "english_name": "Liki"
+ },
+ "lih": {
+ "english_name": "Lihir"
+ },
+ "lij": {
+ "english_name": "Ligurian"
+ },
+ "lik": {
+ "english_name": "Lika"
+ },
+ "liu": {
+ "english_name": "Logorik"
+ },
+ "liv": {
+ "english_name": "Liv"
+ },
+ "liw": {
+ "english_name": "Col"
+ },
+ "lip": {
+ "english_name": "Sekpele"
+ },
+ "liq": {
+ "english_name": "Libido"
+ },
+ "lir": {
+ "english_name": "English, Liberian"
+ },
+ "lis": {
+ "english_name": "Lisu"
+ },
+ "lix": {
+ "english_name": "Liabuku"
+ },
+ "liy": {
+ "english_name": "Banda-Bambari"
+ },
+ "liz": {
+ "english_name": "Libinza"
+ },
+ "kac": {
+ "english_name": "Kachin"
+ },
+ "kab": {
+ "english_name": "Kabyle"
+ },
+ "kaa": {
+ "english_name": "Kara-Kalpak"
+ },
+ "kag": {
+ "english_name": "Kajaman"
+ },
+ "kaf": {
+ "english_name": "Katso"
+ },
+ "kae": {
+ "english_name": "Ketangalan"
+ },
+ "kad": {
+ "english_name": "Adara"
+ },
+ "kak": {
+ "english_name": "Kallahan, Kayapa"
+ },
+ "kaj": {
+ "english_name": "Jju"
+ },
+ "kai": {
+ "english_name": "Karekare"
+ },
+ "kah": {
+ "english_name": "Kara (Central African Republic)"
+ },
+ "kao": {
+ "english_name": "Xaasongaxango"
+ },
+ "kam": {
+ "english_name": "Kamba (Kenya)"
+ },
+ "kaq": {
+ "english_name": "Capanahua"
+ },
+ "kap": {
+ "english_name": "Bezhta"
+ },
+ "kaw": {
+ "english_name": "Kawi"
+ },
+ "kav": {
+ "english_name": "Katukína"
+ },
+ "kay": {
+ "english_name": "Kamayurá"
+ },
+ "kax": {
+ "english_name": "Kao"
+ },
+ "rhg": {
+ "english_name": "Rohingya"
+ },
+ "bzw": {
+ "english_name": "Basa (Nigeria)"
+ },
+ "bzv": {
+ "english_name": "Naami"
+ },
+ "bzu": {
+ "english_name": "Burmeso"
+ },
+ "bzt": {
+ "english_name": "Brithenig"
+ },
+ "bzs": {
+ "english_name": "Brazilian Sign Language"
+ },
+ "bzr": {
+ "english_name": "Biri"
+ },
+ "bzq": {
+ "english_name": "Buli (Indonesia)"
+ },
+ "bzp": {
+ "english_name": "Kemberano"
+ },
+ "bzz": {
+ "english_name": "Evant"
+ },
+ "bzy": {
+ "english_name": "Obanliku"
+ },
+ "bzx": {
+ "english_name": "Bozo, Kɛlɛngaxo"
+ },
+ "bzg": {
+ "english_name": "Babuza"
+ },
+ "bzf": {
+ "english_name": "Boikin"
+ },
+ "bze": {
+ "english_name": "Bozo, Jenaama"
+ },
+ "bzd": {
+ "english_name": "Bribri"
+ },
+ "bzc": {
+ "english_name": "Malagasy, Southern Betsimisaraka"
+ },
+ "bzb": {
+ "english_name": "Andio"
+ },
+ "bza": {
+ "english_name": "Bandi"
+ },
+ "bzo": {
+ "english_name": "Bozaba"
+ },
+ "bzn": {
+ "english_name": "Boano (Maluku)"
+ },
+ "bzm": {
+ "english_name": "Bolondo"
+ },
+ "bzl": {
+ "english_name": "Boano (Sulawesi)"
+ },
+ "bzk": {
+ "english_name": "Creole English, Nicaragua"
+ },
+ "bzj": {
+ "english_name": "Kriol English, Belize"
+ },
+ "bzi": {
+ "english_name": "Bisu"
+ },
+ "bzh": {
+ "english_name": "Buang, Mapos"
+ },
+ "tft": {
+ "english_name": "Ternate"
+ },
+ "ymq": {
+ "english_name": "Muji, Qila"
+ },
+ "ymp": {
+ "english_name": "Yamap"
+ },
+ "yms": {
+ "english_name": "Mysian"
+ },
+ "ymr": {
+ "english_name": "Malasar"
+ },
+ "ymx": {
+ "english_name": "Muji, Northern"
+ },
+ "ymz": {
+ "english_name": "Muzi"
+ },
+ "ymc": {
+ "english_name": "Muji, Southern"
+ },
+ "ymb": {
+ "english_name": "Yambes"
+ },
+ "yme": {
+ "english_name": "Yameo"
+ },
+ "ymd": {
+ "english_name": "Muda"
+ },
+ "ymg": {
+ "english_name": "Yamongeri"
+ },
+ "ymi": {
+ "english_name": "Moji"
+ },
+ "ymh": {
+ "english_name": "Mili"
+ },
+ "ymk": {
+ "english_name": "Makwe"
+ },
+ "tfr": {
+ "english_name": "Teribe"
+ },
+ "ymm": {
+ "english_name": "Maay"
+ },
+ "yml": {
+ "english_name": "Iamalele"
+ },
+ "ymo": {
+ "english_name": "Yangum Mon"
+ },
+ "ymn": {
+ "english_name": "Yamna"
+ },
+ "std": {
+ "english_name": "Sentinel"
+ },
+ "stf": {
+ "english_name": "Seta"
+ },
+ "stg": {
+ "english_name": "Trieng"
+ },
+ "ypg": {
+ "english_name": "Phola"
+ },
+ "stb": {
+ "english_name": "Subanen, Northern"
+ },
+ "stm": {
+ "english_name": "Setaman"
+ },
+ "stn": {
+ "english_name": "Owa"
+ },
+ "stk": {
+ "english_name": "Arammba"
+ },
+ "ydk": {
+ "english_name": "Yoidik"
+ },
+ "woy": {
+ "english_name": "Weyto"
+ },
+ "wow": {
+ "english_name": "Wawonii"
+ },
+ "stv": {
+ "english_name": "Silt'e"
+ },
+ "wos": {
+ "english_name": "Hanga Hundi"
+ },
+ "wor": {
+ "english_name": "Woria"
+ },
+ "wom": {
+ "english_name": "Wom (Nigeria)"
+ },
+ "woo": {
+ "english_name": "Manombai"
+ },
+ "won": {
+ "english_name": "Wongo"
+ },
+ "woi": {
+ "english_name": "Kamang"
+ },
+ "wok": {
+ "english_name": "Longto"
+ },
+ "woe": {
+ "english_name": "Woleaian"
+ },
+ "wod": {
+ "english_name": "Wolani"
+ },
+ "wog": {
+ "english_name": "Wogamusin"
+ },
+ "wof": {
+ "english_name": "Wolof, Gambian"
+ },
+ "woa": {
+ "english_name": "Tyaraity"
+ },
+ "woc": {
+ "english_name": "Wogeo"
+ },
+ "wob": {
+ "english_name": "Wè Northern"
+ },
+ "adu": {
+ "english_name": "Aduge"
+ },
+ "ads": {
+ "english_name": "Adamorobe Sign Language"
+ },
+ "adq": {
+ "english_name": "Adangbe"
+ },
+ "ady": {
+ "english_name": "Adyghe"
+ },
+ "adg": {
+ "english_name": "Andegerebinha"
+ },
+ "add": {
+ "english_name": "Dzodinka"
+ },
+ "ade": {
+ "english_name": "Adele"
+ },
+ "boz": {
+ "english_name": "Bozo, Tiéyaxo"
+ },
+ "iya": {
+ "english_name": "Iyayu"
+ },
+ "iyo": {
+ "english_name": "Mesaka"
+ },
+ "adh": {
+ "english_name": "Adhola"
+ },
+ "iyx": {
+ "english_name": "Yaka (Congo)"
+ },
+ "jpa": {
+ "english_name": "Aramaic, Jewish Palestinian"
+ },
+ "hba": {
+ "english_name": "Hamba"
+ },
+ "hbb": {
+ "english_name": "Huba"
+ },
+ "tdq": {
+ "english_name": "Tita"
+ },
+ "gsp": {
+ "english_name": "Wasembo"
+ },
+ "gss": {
+ "english_name": "Greek Sign Language"
+ },
+ "gsw": {
+ "english_name": "German, Swiss"
+ },
+ "gse": {
+ "english_name": "Ghanaian Sign Language"
+ },
+ "hbs": {
+ "english_name": "Serbo-Croatian"
+ },
+ "gsg": {
+ "english_name": "German Sign Language"
+ },
+ "gsm": {
+ "english_name": "Guatemalan Sign Language"
+ },
+ "gsl": {
+ "english_name": "Gusilay"
+ },
+ "gso": {
+ "english_name": "Gbaya, Southwest"
+ },
+ "gsn": {
+ "english_name": "Gusan"
+ },
+ "hji": {
+ "english_name": "Haji"
+ },
+ "qxr": {
+ "english_name": "Quichua, Cañar Highland"
+ },
+ "eee": {
+ "english_name": "E"
+ },
+ "kux": {
+ "english_name": "Kukatja"
+ },
+ "rhp": {
+ "english_name": "Yahang"
+ },
+ "ruk": {
+ "english_name": "Che"
+ },
+ "cgk": {
+ "english_name": "Chocangacakha"
+ },
+ "rui": {
+ "english_name": "Rufiji"
+ },
+ "ruo": {
+ "english_name": "Romanian, Istro"
+ },
+ "cga": {
+ "english_name": "Changriwa"
+ },
+ "ruc": {
+ "english_name": "Ruuli"
+ },
+ "cgc": {
+ "english_name": "Kagayanen"
+ },
+ "ruf": {
+ "english_name": "Luguru"
+ },
+ "rug": {
+ "english_name": "Roviana"
+ },
+ "cgg": {
+ "english_name": "Chiga"
+ },
+ "rue": {
+ "english_name": "Rusyn"
+ },
+ "ruz": {
+ "english_name": "Ruma"
+ },
+ "ruy": {
+ "english_name": "Mala (Nigeria)"
+ },
+ "rup": {
+ "english_name": "Romanian, Macedo-"
+ },
+ "ruq": {
+ "english_name": "Romanian, Megleno"
+ },
+ "rut": {
+ "english_name": "Rutul"
+ },
+ "ruu": {
+ "english_name": "Lobu, Lanas"
+ },
+ "bga": {
+ "english_name": "Gwamhi-Wuri"
+ },
+ "bgb": {
+ "english_name": "Bobongko"
+ },
+ "bgc": {
+ "english_name": "Haryanvi"
+ },
+ "bgd": {
+ "english_name": "Bareli, Rathwi"
+ },
+ "bge": {
+ "english_name": "Bauria"
+ },
+ "bgf": {
+ "english_name": "Bangandu"
+ },
+ "bgg": {
+ "english_name": "Bugun"
+ },
+ "bgi": {
+ "english_name": "Giangan"
+ },
+ "idt": {
+ "english_name": "Idaté"
+ },
+ "idu": {
+ "english_name": "Idoma"
+ },
+ "idr": {
+ "english_name": "Indri"
+ },
+ "ids": {
+ "english_name": "Idesa"
+ },
+ "bgn": {
+ "english_name": "Balochi, Western"
+ },
+ "bgo": {
+ "english_name": "Baga Koga"
+ },
+ "bgp": {
+ "english_name": "Balochi, Eastern"
+ },
+ "bgq": {
+ "english_name": "Bagri"
+ },
+ "bgr": {
+ "english_name": "Chin, Bawm"
+ },
+ "bgs": {
+ "english_name": "Tagabawa"
+ },
+ "bgt": {
+ "english_name": "Bughotu"
+ },
+ "bgu": {
+ "english_name": "Mbongno"
+ },
+ "bgv": {
+ "english_name": "Warkay-Bipim"
+ },
+ "idi": {
+ "english_name": "Idi"
+ },
+ "bgx": {
+ "english_name": "Turkish, Balkan Gagauz"
+ },
+ "bgy": {
+ "english_name": "Benggoi"
+ },
+ "idd": {
+ "english_name": "Ede Idaca"
+ },
+ "ide": {
+ "english_name": "Idere"
+ },
+ "idb": {
+ "english_name": "Indo-Portuguese"
+ },
+ "idc": {
+ "english_name": "Idon"
+ },
+ "ida": {
+ "english_name": "Idakho-Isukha-Tiriki"
+ },
+ "syc": {
+ "english_name": "Syriac, Classical"
+ },
+ "pww": {
+ "english_name": "Karen, Pwo Northern"
+ },
+ "pwr": {
+ "english_name": "Powari"
+ },
+ "aqp": {
+ "english_name": "Atakapa"
+ },
+ "aqr": {
+ "english_name": "Arhâ"
+ },
+ "aqz": {
+ "english_name": "Akuntsu"
+ },
+ "aqd": {
+ "english_name": "Dogon, Ampari"
+ },
+ "aqg": {
+ "english_name": "Arigidi"
+ },
+ "pwb": {
+ "english_name": "Panawa"
+ },
+ "aqc": {
+ "english_name": "Archi"
+ },
+ "pwa": {
+ "english_name": "Pawaia"
+ },
+ "aqm": {
+ "english_name": "Atohwaim"
+ },
+ "pwo": {
+ "english_name": "Karen, Pwo Western"
+ },
+ "aqn": {
+ "english_name": "Alta, Northern"
+ },
+ "pwi": {
+ "english_name": "Patwin"
+ },
+ "uta": {
+ "english_name": "Otank"
+ },
+ "ute": {
+ "english_name": "Ute-Southern Paiute"
+ },
+ "utr": {
+ "english_name": "Etulo"
+ },
+ "utp": {
+ "english_name": "Amba (Solomon Islands)"
+ },
+ "utu": {
+ "english_name": "Utu"
+ },
+ "nab": {
+ "english_name": "Nambikuára, Southern"
+ },
+ "nac": {
+ "english_name": "Narak"
+ },
+ "naa": {
+ "english_name": "Namla"
+ },
+ "naf": {
+ "english_name": "Nabak"
+ },
+ "nag": {
+ "english_name": "Naga Pidgin"
+ },
+ "nad": {
+ "english_name": "Nijadali"
+ },
+ "nae": {
+ "english_name": "Naka'ela"
+ },
+ "naj": {
+ "english_name": "Nalu"
+ },
+ "nak": {
+ "english_name": "Nakanai"
+ },
+ "nan": {
+ "english_name": "Chinese, Min Nan"
+ },
+ "nao": {
+ "english_name": "Naaba"
+ },
+ "nal": {
+ "english_name": "Nalik"
+ },
+ "nam": {
+ "english_name": "Ngan'gityemerri"
+ },
+ "nar": {
+ "english_name": "Iguta"
+ },
+ "nas": {
+ "english_name": "Naasioi"
+ },
+ "nap": {
+ "english_name": "Neapolitan"
+ },
+ "naq": {
+ "english_name": "Nama (Namibia)"
+ },
+ "naw": {
+ "english_name": "Nawuri"
+ },
+ "nat": {
+ "english_name": "Hungworo"
+ },
+ "naz": {
+ "english_name": "Nahuatl, Coatepec"
+ },
+ "nax": {
+ "english_name": "Nakwi"
+ },
+ "nay": {
+ "english_name": "Narrinyeri"
+ },
+ "tmr": {
+ "english_name": "Aramaic, Jewish Babylonian (ca. 200-1200 CE)"
+ },
+ "tmt": {
+ "english_name": "Tasmate"
+ },
+ "svm": {
+ "english_name": "Slavomolisano"
+ },
+ "svk": {
+ "english_name": "Slovakian Sign Language"
+ },
+ "sve": {
+ "english_name": "Serili"
+ },
+ "dva": {
+ "english_name": "Duau"
+ },
+ "svc": {
+ "english_name": "Creole English, Vincentian"
+ },
+ "sva": {
+ "english_name": "Svan"
+ },
+ "svx": {
+ "english_name": "Skalvian"
+ },
+ "svr": {
+ "english_name": "Savara"
+ },
+ "svs": {
+ "english_name": "Savosavo"
+ },
+ "gv": {
+ "english_name": "Manx"
+ },
+ "gu": {
+ "name": "ગુજરાતી",
+ "english_name": "Gujarati"
+ },
+ "gd": {
+ "english_name": "Gaelic, Scottish"
+ },
+ "ga": {
+ "name": "Gaeilge",
+ "english_name": "Irish"
+ },
+ "gn": {
+ "english_name": "Guarani"
+ },
+ "gl": {
+ "name": "Galego",
+ "english_name": "Galician"
+ },
+ "lkn": {
+ "english_name": "Lakon"
+ },
+ "lko": {
+ "english_name": "Khayo"
+ },
+ "lkl": {
+ "english_name": "Laeko-Libuat"
+ },
+ "lkm": {
+ "english_name": "Kalaamaya"
+ },
+ "lkj": {
+ "english_name": "Remun"
+ },
+ "lkh": {
+ "english_name": "Lakha"
+ },
+ "lki": {
+ "english_name": "Laki"
+ },
+ "lkd": {
+ "english_name": "Lakondê"
+ },
+ "lke": {
+ "english_name": "Kenyi"
+ },
+ "lkb": {
+ "english_name": "Kabras"
+ },
+ "lkc": {
+ "english_name": "Kucong"
+ },
+ "lka": {
+ "english_name": "Lakalei"
+ },
+ "lky": {
+ "english_name": "Lokoya"
+ },
+ "lkt": {
+ "english_name": "Lakota"
+ },
+ "lku": {
+ "english_name": "Kungkari"
+ },
+ "lkr": {
+ "english_name": "Päri"
+ },
+ "lks": {
+ "english_name": "Kisa"
+ },
+ "kce": {
+ "english_name": "Kaivi"
+ },
+ "kcd": {
+ "english_name": "Kanum, Ngkâlmpw"
+ },
+ "kcg": {
+ "english_name": "Tyap"
+ },
+ "kcf": {
+ "english_name": "Ukaan"
+ },
+ "kca": {
+ "english_name": "Khanty"
+ },
+ "kcc": {
+ "english_name": "Lubila"
+ },
+ "kcb": {
+ "english_name": "Kawacha"
+ },
+ "kcm": {
+ "english_name": "Gula (Central African Republic)"
+ },
+ "kcl": {
+ "english_name": "Kela (Papua New Guinea)"
+ },
+ "kco": {
+ "english_name": "Kinalakna"
+ },
+ "kcn": {
+ "english_name": "Nubi"
+ },
+ "kci": {
+ "english_name": "Kamantan"
+ },
+ "kch": {
+ "english_name": "Vono"
+ },
+ "kck": {
+ "english_name": "Kalanga"
+ },
+ "kcj": {
+ "english_name": "Kobiana"
+ },
+ "kcu": {
+ "english_name": "Kami (Tanzania)"
+ },
+ "kct": {
+ "english_name": "Kaian"
+ },
+ "kcw": {
+ "english_name": "Kabwari"
+ },
+ "kcv": {
+ "english_name": "Kete"
+ },
+ "kcq": {
+ "english_name": "Kamo"
+ },
+ "kcp": {
+ "english_name": "Kanga"
+ },
+ "kcs": {
+ "english_name": "Koenoem"
+ },
+ "kcr": {
+ "english_name": "Katla"
+ },
+ "kcy": {
+ "english_name": "Korandje"
+ },
+ "kcx": {
+ "english_name": "Kachama-Ganjule"
+ },
+ "kcz": {
+ "english_name": "Konongo"
+ },
+ "syi": {
+ "english_name": "Seki"
+ },
+ "bxz": {
+ "english_name": "Binahari"
+ },
+ "bxq": {
+ "english_name": "Beele"
+ },
+ "bxp": {
+ "english_name": "Bebil"
+ },
+ "bxs": {
+ "english_name": "Busam"
+ },
+ "bxr": {
+ "english_name": "Buriat, Russia"
+ },
+ "bxu": {
+ "english_name": "Buriat, China"
+ },
+ "bxw": {
+ "english_name": "Bankagooma"
+ },
+ "bxv": {
+ "english_name": "Berakou"
+ },
+ "bxi": {
+ "english_name": "Pirlatapa"
+ },
+ "bxh": {
+ "english_name": "Buhutu"
+ },
+ "bxk": {
+ "english_name": "Bukusu"
+ },
+ "bxj": {
+ "english_name": "Bayungu"
+ },
+ "bxm": {
+ "english_name": "Buriat, Mongolia"
+ },
+ "bxl": {
+ "english_name": "Jalkunan"
+ },
+ "bxo": {
+ "english_name": "Barikanchi"
+ },
+ "bxn": {
+ "english_name": "Burduna"
+ },
+ "bxa": {
+ "english_name": "Tairaha"
+ },
+ "bxc": {
+ "english_name": "Molengue"
+ },
+ "bxb": {
+ "english_name": "Bor, Belanda"
+ },
+ "bxe": {
+ "english_name": "Birale"
+ },
+ "bxd": {
+ "english_name": "Pela"
+ },
+ "bxg": {
+ "english_name": "Bangala"
+ },
+ "bxf": {
+ "english_name": "Bilur"
+ },
+ "zh": {
+ "name": "中文",
+ "english_name": "Chinese"
+ },
+ "za": {
+ "english_name": "Zhuang"
+ },
+ "zu": {
+ "name": "Isi-Zulu",
+ "english_name": "Zulu"
+ },
+ "ulk": {
+ "english_name": "Meriam"
+ },
+ "ycp": {
+ "english_name": "Chepya"
+ },
+ "ych": {
+ "english_name": "Chesu"
+ },
+ "ycn": {
+ "english_name": "Yucuna"
+ },
+ "ycl": {
+ "english_name": "Lolopo"
+ },
+ "ozm": {
+ "english_name": "Koonzime"
+ },
+ "ulb": {
+ "english_name": "Ulukwumi"
+ },
+ "vbb": {
+ "english_name": "Babar, Southeast"
+ },
+ "vbk": {
+ "english_name": "Bontok, Southwestern"
+ },
+ "wig": {
+ "english_name": "Wik-Ngathana"
+ },
+ "wif": {
+ "english_name": "Wik-Keyangan"
+ },
+ "wie": {
+ "english_name": "Wik-Epa"
+ },
+ "wic": {
+ "english_name": "Wichita"
+ },
+ "wib": {
+ "english_name": "Toussian, Southern"
+ },
+ "win": {
+ "english_name": "Ho-Chunk"
+ },
+ "wim": {
+ "english_name": "Wik-Mungkan"
+ },
+ "wil": {
+ "english_name": "Wilawila"
+ },
+ "wik": {
+ "english_name": "Wikalkan"
+ },
+ "wij": {
+ "english_name": "Wik-Iiyanh"
+ },
+ "wii": {
+ "english_name": "Minidien"
+ },
+ "wih": {
+ "english_name": "Wik-Me'anha"
+ },
+ "wiv": {
+ "english_name": "Vitu"
+ },
+ "wiu": {
+ "english_name": "Wiru"
+ },
+ "sys": {
+ "english_name": "Sinyar"
+ },
+ "wir": {
+ "english_name": "Wiraféd"
+ },
+ "zmm": {
+ "english_name": "Marimanindji"
+ },
+ "wiy": {
+ "english_name": "Wiyot"
+ },
+ "syr": {
+ "english_name": "Syriac"
+ },
+ "xqa": {
+ "english_name": "Karakhanid"
+ },
+ "xqt": {
+ "english_name": "Qatabanian"
+ },
+ "jns": {
+ "english_name": "Jaunsari"
+ },
+ "jna": {
+ "english_name": "Jangshung"
+ },
+ "jng": {
+ "english_name": "Yangman"
+ },
+ "jnd": {
+ "english_name": "Jandavra"
+ },
+ "jnj": {
+ "english_name": "Yemsa"
+ },
+ "jni": {
+ "english_name": "Janji"
+ },
+ "jnl": {
+ "english_name": "Rawat"
+ },
+ "syy": {
+ "english_name": "Al-Sayyid Bedouin Sign Language"
+ },
+ "snf": {
+ "english_name": "Noon"
+ },
+ "hlu": {
+ "english_name": "Luwian, Hieroglyphic"
+ },
+ "hlt": {
+ "english_name": "Chin, Matu"
+ },
+ "snb": {
+ "english_name": "Sebuyau"
+ },
+ "hle": {
+ "english_name": "Hlersu"
+ },
+ "hld": {
+ "english_name": "Halang Doan"
+ },
+ "hlb": {
+ "english_name": "Halbi"
+ },
+ "hla": {
+ "english_name": "Halia"
+ },
+ "snc": {
+ "english_name": "Sinaugoro"
+ },
+ "sno": {
+ "english_name": "Snohomish"
+ },
+ "snm": {
+ "english_name": "Ma'di, Southern"
+ },
+ "ecs": {
+ "english_name": "Ecuadorian Sign Language"
+ },
+ "ecr": {
+ "english_name": "Eteocretan"
+ },
+ "ecy": {
+ "english_name": "Eteocypriot"
+ },
+ "snv": {
+ "english_name": "Sa'ban"
+ },
+ "snu": {
+ "english_name": "Senggi"
+ },
+ "snr": {
+ "english_name": "Sihan"
+ },
+ "sns": {
+ "english_name": "South West Bay"
+ },
+ "snp": {
+ "english_name": "Siane"
+ },
+ "snq": {
+ "english_name": "Sangu (Gabon)"
+ },
+ "snz": {
+ "english_name": "Sinsauru"
+ },
+ "sny": {
+ "english_name": "Saniyo-Hiyewe"
+ },
+ "rsl": {
+ "english_name": "Russian Sign Language"
+ },
+ "rsi": {
+ "english_name": "Rennellese Sign Language"
+ },
+ "rsb": {
+ "english_name": "Romano-Serbian"
+ },
+ "cyb": {
+ "english_name": "Cayubaba"
+ },
+ "cya": {
+ "english_name": "Chatino, Nopala"
+ },
+ "cyo": {
+ "english_name": "Cuyonon"
+ },
+ "bej": {
+ "english_name": "Beja"
+ },
+ "bek": {
+ "english_name": "Bebeli"
+ },
+ "beh": {
+ "english_name": "Biali"
+ },
+ "bei": {
+ "english_name": "Bekati'"
+ },
+ "beo": {
+ "english_name": "Beami"
+ },
+ "bem": {
+ "english_name": "Bemba (Zambia)"
+ },
+ "beb": {
+ "english_name": "Bebele"
+ },
+ "bec": {
+ "english_name": "Iceve-Maci"
+ },
+ "bea": {
+ "english_name": "Beaver"
+ },
+ "bef": {
+ "english_name": "Benabena"
+ },
+ "beg": {
+ "english_name": "Belait"
+ },
+ "bed": {
+ "english_name": "Bedoanas"
+ },
+ "bee": {
+ "english_name": "Byangsi"
+ },
+ "bez": {
+ "english_name": "Bena (Tanzania)"
+ },
+ "bex": {
+ "english_name": "Jur Modo"
+ },
+ "bey": {
+ "english_name": "Beli (Papua New Guinea)"
+ },
+ "bes": {
+ "english_name": "Besme"
+ },
+ "bep": {
+ "english_name": "Besoa"
+ },
+ "beq": {
+ "english_name": "Beembe"
+ },
+ "bev": {
+ "english_name": "Bété, Daloa"
+ },
+ "bew": {
+ "english_name": "Betawi"
+ },
+ "bet": {
+ "english_name": "Béte, Guiberoua"
+ },
+ "beu": {
+ "english_name": "Blagar"
+ },
+ "pyx": {
+ "english_name": "Pyu (Myanmar)"
+ },
+ "pyy": {
+ "english_name": "Pyen"
+ },
+ "awy": {
+ "english_name": "Awyu, Edera"
+ },
+ "awx": {
+ "english_name": "Awara"
+ },
+ "aww": {
+ "english_name": "Awun"
+ },
+ "awv": {
+ "english_name": "Awyu, Jair"
+ },
+ "awu": {
+ "english_name": "Awyu, Central"
+ },
+ "awt": {
+ "english_name": "Araweté"
+ },
+ "aws": {
+ "english_name": "Awyu, South"
+ },
+ "awr": {
+ "english_name": "Awera"
+ },
+ "awo": {
+ "english_name": "Awak"
+ },
+ "awn": {
+ "english_name": "Awngi"
+ },
+ "awm": {
+ "english_name": "Arawum"
+ },
+ "awk": {
+ "english_name": "Awabakal"
+ },
+ "pym": {
+ "english_name": "Fyam"
+ },
+ "awi": {
+ "english_name": "Aekyom"
+ },
+ "awh": {
+ "english_name": "Awbono"
+ },
+ "awg": {
+ "english_name": "Anguthimri"
+ },
+ "awe": {
+ "english_name": "Awetí"
+ },
+ "awc": {
+ "english_name": "Cicipu"
+ },
+ "awb": {
+ "english_name": "Awa (Papua New Guinea)"
+ },
+ "awa": {
+ "english_name": "Awadhi"
+ },
+ "ure": {
+ "english_name": "Uru"
+ },
+ "urf": {
+ "english_name": "Uradhi"
+ },
+ "urg": {
+ "english_name": "Urigina"
+ },
+ "ura": {
+ "english_name": "Urarina"
+ },
+ "urb": {
+ "english_name": "Urubú-Kaapor"
+ },
+ "urc": {
+ "english_name": "Urningangg"
+ },
+ "url": {
+ "english_name": "Urali"
+ },
+ "urm": {
+ "english_name": "Urapmin"
+ },
+ "urn": {
+ "english_name": "Uruangnirin"
+ },
+ "uro": {
+ "english_name": "Ura (Papua New Guinea)"
+ },
+ "urh": {
+ "english_name": "Urhobo"
+ },
+ "uri": {
+ "english_name": "Urim"
+ },
+ "urk": {
+ "english_name": "Urak Lawoi'"
+ },
+ "urt": {
+ "english_name": "Urat"
+ },
+ "uru": {
+ "english_name": "Urumi"
+ },
+ "urv": {
+ "english_name": "Uruava"
+ },
+ "urw": {
+ "english_name": "Sop"
+ },
+ "urp": {
+ "english_name": "Uru-Pa-In"
+ },
+ "urr": {
+ "english_name": "Lehalurup"
+ },
+ "ibd": {
+ "english_name": "Iwaidja"
+ },
+ "urx": {
+ "english_name": "Urimo"
+ },
+ "ury": {
+ "english_name": "Orya"
+ },
+ "urz": {
+ "english_name": "Uru-Eu-Wau-Wau"
+ },
+ "ibe": {
+ "english_name": "Akpes"
+ },
+ "ngd": {
+ "english_name": "Ngando (Central African Republic)"
+ },
+ "nge": {
+ "english_name": "Ngemba"
+ },
+ "ngg": {
+ "english_name": "Ngbaka Manza"
+ },
+ "nga": {
+ "english_name": "Ngbaka"
+ },
+ "ngb": {
+ "english_name": "Ngbandi, Northern"
+ },
+ "ngc": {
+ "english_name": "Ngombe (Democratic Republic of Congo)"
+ },
+ "ngl": {
+ "english_name": "Lomwe"
+ },
+ "ngm": {
+ "english_name": "Ngatik Men's Creole"
+ },
+ "ngn": {
+ "english_name": "Ngwo"
+ },
+ "ngo": {
+ "english_name": "Ngoni"
+ },
+ "ngh": {
+ "english_name": "N/u"
+ },
+ "ngi": {
+ "english_name": "Ngizim"
+ },
+ "ngj": {
+ "english_name": "Ngie"
+ },
+ "ngk": {
+ "english_name": "Dalabon"
+ },
+ "ngt": {
+ "english_name": "Ngeq"
+ },
+ "ngu": {
+ "english_name": "Nahuatl, Guerrero"
+ },
+ "ngv": {
+ "english_name": "Nagumi"
+ },
+ "ngw": {
+ "english_name": "Ngwaba"
+ },
+ "ngp": {
+ "english_name": "Ngulu"
+ },
+ "ngq": {
+ "english_name": "Ngurimi"
+ },
+ "ngr": {
+ "english_name": "Engdewu"
+ },
+ "ngs": {
+ "english_name": "Gvoko"
+ },
+ "ngx": {
+ "english_name": "Nggwahyi"
+ },
+ "ngy": {
+ "english_name": "Tibea"
+ },
+ "ngz": {
+ "english_name": "Ngungwel"
+ },
+ "mgc": {
+ "english_name": "Morokodo"
+ },
+ "mgb": {
+ "english_name": "Mararit"
+ },
+ "mga": {
+ "english_name": "Irish, Middle (900-1200)"
+ },
+ "tbz": {
+ "english_name": "Ditammari"
+ },
+ "mgg": {
+ "english_name": "Mpumpong"
+ },
+ "mgf": {
+ "english_name": "Maklew"
+ },
+ "mge": {
+ "english_name": "Mango"
+ },
+ "mgd": {
+ "english_name": "Moru"
+ },
+ "mgk": {
+ "english_name": "Mawes"
+ },
+ "mgj": {
+ "english_name": "Abureni"
+ },
+ "mgi": {
+ "english_name": "Lijili"
+ },
+ "mgh": {
+ "english_name": "Makhuwa-Meetto"
+ },
+ "mgo": {
+ "english_name": "Meta'"
+ },
+ "mgn": {
+ "english_name": "Mbangi"
+ },
+ "mgm": {
+ "english_name": "Mambae"
+ },
+ "mgl": {
+ "english_name": "Maleu-Kilenge"
+ },
+ "mgs": {
+ "english_name": "Manda (Tanzania)"
+ },
+ "mgr": {
+ "english_name": "Mambwe-Lungu"
+ },
+ "mgq": {
+ "english_name": "Malila"
+ },
+ "mgp": {
+ "english_name": "Magar, Eastern"
+ },
+ "mgw": {
+ "english_name": "Matumbi"
+ },
+ "mgv": {
+ "english_name": "Matengo"
+ },
+ "mgu": {
+ "english_name": "Mailu"
+ },
+ "mgt": {
+ "english_name": "Mongol"
+ },
+ "tba": {
+ "english_name": "Aikanã"
+ },
+ "mgz": {
+ "english_name": "Mbugwe"
+ },
+ "mgy": {
+ "english_name": "Mbunga"
+ },
+ "tbb": {
+ "english_name": "Tapeba"
+ },
+ "tbe": {
+ "english_name": "Tanimbili"
+ },
+ "tbd": {
+ "english_name": "Kaki Ae"
+ },
+ "tbg": {
+ "english_name": "Tairora, North"
+ },
+ "tbf": {
+ "english_name": "Mandara"
+ },
+ "shp": {
+ "english_name": "Shipibo-Conibo"
+ },
+ "shq": {
+ "english_name": "Sala"
+ },
+ "shr": {
+ "english_name": "Shi"
+ },
+ "shs": {
+ "english_name": "Shuswap"
+ },
+ "sht": {
+ "english_name": "Shasta"
+ },
+ "shu": {
+ "english_name": "Arabic, Chadian"
+ },
+ "shv": {
+ "english_name": "Shehri"
+ },
+ "dpp": {
+ "english_name": "Papar"
+ },
+ "shx": {
+ "english_name": "She"
+ },
+ "shy": {
+ "english_name": "Tachawit"
+ },
+ "shz": {
+ "english_name": "Senoufo, Syenara"
+ },
+ "sha": {
+ "english_name": "Shall-Zwall"
+ },
+ "shb": {
+ "english_name": "Ninam"
+ },
+ "shc": {
+ "english_name": "Sonde"
+ },
+ "shd": {
+ "english_name": "Kundal Shahi"
+ },
+ "she": {
+ "english_name": "Sheko"
+ },
+ "shg": {
+ "english_name": "Shua"
+ },
+ "shh": {
+ "english_name": "Shoshoni"
+ },
+ "shi": {
+ "english_name": "Tachelhit"
+ },
+ "shj": {
+ "english_name": "Shatt"
+ },
+ "shk": {
+ "english_name": "Shilluk"
+ },
+ "shl": {
+ "english_name": "Shendu"
+ },
+ "shm": {
+ "english_name": "Shahrudi"
+ },
+ "shn": {
+ "english_name": "Shan"
+ },
+ "sho": {
+ "english_name": "Shanga"
+ },
+ "lup": {
+ "english_name": "Lumbu"
+ },
+ "luq": {
+ "english_name": "Lucumi"
+ },
+ "lur": {
+ "english_name": "Laura"
+ },
+ "lus": {
+ "english_name": "Lushai"
+ },
+ "lut": {
+ "english_name": "Lushootseed"
+ },
+ "luu": {
+ "english_name": "Lumba-Yakkha"
+ },
+ "luv": {
+ "english_name": "Luwati"
+ },
+ "luw": {
+ "english_name": "Luo (Cameroon)"
+ },
+ "luy": {
+ "english_name": "Luyia"
+ },
+ "luz": {
+ "english_name": "Luri, Southern"
+ },
+ "lua": {
+ "english_name": "Luba-Lulua"
+ },
+ "luc": {
+ "english_name": "Aringa"
+ },
+ "lud": {
+ "english_name": "Ludian"
+ },
+ "lue": {
+ "english_name": "Luvale"
+ },
+ "luf": {
+ "english_name": "Laua"
+ },
+ "lui": {
+ "english_name": "Luiseno"
+ },
+ "luj": {
+ "english_name": "Luna"
+ },
+ "luk": {
+ "english_name": "Lunanakha"
+ },
+ "lul": {
+ "english_name": "Olu'bo"
+ },
+ "lum": {
+ "english_name": "Luimbi"
+ },
+ "lun": {
+ "english_name": "Lunda"
+ },
+ "luo": {
+ "english_name": "Luo (Kenya and Tanzania)"
+ },
+ "keo": {
+ "english_name": "Kakwa"
+ },
+ "ken": {
+ "english_name": "Kenyang"
+ },
+ "kem": {
+ "english_name": "Kemak"
+ },
+ "kel": {
+ "english_name": "Kela (Democratic Republic of Congo)"
+ },
+ "kek": {
+ "english_name": "Kekchí"
+ },
+ "kej": {
+ "english_name": "Kadar"
+ },
+ "kei": {
+ "english_name": "Kei"
+ },
+ "keh": {
+ "english_name": "Keak"
+ },
+ "keg": {
+ "english_name": "Tese"
+ },
+ "kef": {
+ "english_name": "Kpessi"
+ },
+ "kee": {
+ "english_name": "Keres, Eastern"
+ },
+ "ked": {
+ "english_name": "Kerewe"
+ },
+ "kec": {
+ "english_name": "Keiga"
+ },
+ "keb": {
+ "english_name": "Kélé"
+ },
+ "kea": {
+ "english_name": "Kabuverdianu"
+ },
+ "jie": {
+ "english_name": "Jilbe"
+ },
+ "kez": {
+ "english_name": "Kukele"
+ },
+ "key": {
+ "english_name": "Kupia"
+ },
+ "kex": {
+ "english_name": "Kukna"
+ },
+ "kew": {
+ "english_name": "Kewa, West"
+ },
+ "kev": {
+ "english_name": "Kanikkaran"
+ },
+ "keu": {
+ "english_name": "Akebu"
+ },
+ "ket": {
+ "english_name": "Ket"
+ },
+ "kes": {
+ "english_name": "Kugbo"
+ },
+ "ker": {
+ "english_name": "Kera"
+ },
+ "keq": {
+ "english_name": "Kamar"
+ },
+ "kep": {
+ "english_name": "Kaikadi"
+ },
+ "jiv": {
+ "english_name": "Shuar"
+ },
+ "yay": {
+ "english_name": "Agwagwune"
+ },
+ "yax": {
+ "english_name": "Yauma"
+ },
+ "yaz": {
+ "english_name": "Lokaa"
+ },
+ "yau": {
+ "english_name": "Yuwana"
+ },
+ "yat": {
+ "english_name": "Yambeta"
+ },
+ "yaw": {
+ "english_name": "Yawalapití"
+ },
+ "yav": {
+ "english_name": "Yangben"
+ },
+ "yaq": {
+ "english_name": "Yaqui"
+ },
+ "jit": {
+ "english_name": "Jita"
+ },
+ "yas": {
+ "english_name": "Nugunu (Cameroon)"
+ },
+ "yar": {
+ "english_name": "Yabarana"
+ },
+ "yam": {
+ "english_name": "Yamba"
+ },
+ "yal": {
+ "english_name": "Yalunka"
+ },
+ "yao": {
+ "english_name": "Yao"
+ },
+ "jiu": {
+ "english_name": "Jinuo, Youle"
+ },
+ "yai": {
+ "english_name": "Yagnobi"
+ },
+ "yah": {
+ "english_name": "Yazgulyam"
+ },
+ "yak": {
+ "english_name": "Yakama"
+ },
+ "yaj": {
+ "english_name": "Banda-Yangere"
+ },
+ "yae": {
+ "english_name": "Pumé"
+ },
+ "yad": {
+ "english_name": "Yagua"
+ },
+ "yag": {
+ "english_name": "Yámana"
+ },
+ "yaf": {
+ "english_name": "Yaka (Democratic Republic of Congo)"
+ },
+ "yaa": {
+ "english_name": "Yaminahua"
+ },
+ "yac": {
+ "english_name": "Yali, Pass Valley"
+ },
+ "yab": {
+ "english_name": "Yuhup"
+ },
+ "oti": {
+ "english_name": "Oti"
+ },
+ "otk": {
+ "english_name": "Turkish, Old"
+ },
+ "otl": {
+ "english_name": "Otomi, Tilapa"
+ },
+ "otm": {
+ "english_name": "Otomi, Eastern Highland"
+ },
+ "otn": {
+ "english_name": "Otomi, Tenango"
+ },
+ "ota": {
+ "english_name": "Turkish, Ottoman (1500-1928)"
+ },
+ "otb": {
+ "english_name": "Tibetan, Old"
+ },
+ "jiq": {
+ "english_name": "Guanyinqiao"
+ },
+ "otd": {
+ "english_name": "Ot Danum"
+ },
+ "ote": {
+ "english_name": "Otomi, Mezquital"
+ },
+ "otx": {
+ "english_name": "Otomi, Texcatepec"
+ },
+ "oty": {
+ "english_name": "Tamil, Old"
+ },
+ "otz": {
+ "english_name": "Otomi, Ixtenco"
+ },
+ "otq": {
+ "english_name": "Otomi, Querétaro"
+ },
+ "otr": {
+ "english_name": "Otoro"
+ },
+ "ots": {
+ "english_name": "Otomi, Estado de México"
+ },
+ "ott": {
+ "english_name": "Otomi, Temoaya"
+ },
+ "otu": {
+ "english_name": "Otuke"
+ },
+ "otw": {
+ "english_name": "Ottawa"
+ },
+ "jiy": {
+ "english_name": "Jinuo, Buyuan"
+ },
+ "wkl": {
+ "english_name": "Kalanadi"
+ },
+ "wka": {
+ "english_name": "Kw'adza"
+ },
+ "wkb": {
+ "english_name": "Kumbaran"
+ },
+ "wkd": {
+ "english_name": "Wakde"
+ },
+ "wky": {
+ "english_name": "Wangkayutyuru"
+ },
+ "sbv": {
+ "english_name": "Sabine"
+ },
+ "wku": {
+ "english_name": "Kunduvadi"
+ },
+ "wkw": {
+ "english_name": "Wakawaka"
+ },
+ "sbw": {
+ "english_name": "Simba"
+ },
+ "mzt": {
+ "english_name": "Mintil"
+ },
+ "mzu": {
+ "english_name": "Inapang"
+ },
+ "mzv": {
+ "english_name": "Manza"
+ },
+ "mzw": {
+ "english_name": "Deg"
+ },
+ "mzp": {
+ "english_name": "Movima"
+ },
+ "mzq": {
+ "english_name": "Mori Atas"
+ },
+ "mzr": {
+ "english_name": "Marúbo"
+ },
+ "mzs": {
+ "english_name": "Macanese"
+ },
+ "mzx": {
+ "english_name": "Mawayana"
+ },
+ "mzy": {
+ "english_name": "Mozambican Sign Language"
+ },
+ "mzz": {
+ "english_name": "Maiadomu"
+ },
+ "mzd": {
+ "english_name": "Malimba"
+ },
+ "mze": {
+ "english_name": "Morawa"
+ },
+ "mzg": {
+ "english_name": "Monastic Sign Language"
+ },
+ "mza": {
+ "english_name": "Mixtec, Santa María Zacatepec"
+ },
+ "mzb": {
+ "english_name": "Tumzabt"
+ },
+ "mzc": {
+ "english_name": "Madagascar Sign Language"
+ },
+ "mzl": {
+ "english_name": "Mixe, Mazatlán"
+ },
+ "mzm": {
+ "english_name": "Mumuye"
+ },
+ "mzn": {
+ "english_name": "Mazanderani"
+ },
+ "mzo": {
+ "english_name": "Matipuhy"
+ },
+ "mzh": {
+ "english_name": "Wichí Lhamtés Güisnay"
+ },
+ "mzi": {
+ "english_name": "Mazatec, Ixcatlán"
+ },
+ "mzj": {
+ "english_name": "Manya"
+ },
+ "mzk": {
+ "english_name": "Mambila, Nigeria"
+ },
+ "zyg": {
+ "english_name": "Zhuang, Yang"
+ },
+ "zyb": {
+ "english_name": "Zhuang, Yongbei"
+ },
+ "zyn": {
+ "english_name": "Zhuang, Yongnan"
+ },
+ "zyj": {
+ "english_name": "Zhuang, Youjiang"
+ },
+ "syb": {
+ "english_name": "Subanen, Central"
+ },
+ "zyp": {
+ "english_name": "Chin, Zyphe"
+ },
+ "xsr": {
+ "english_name": "Sherpa"
+ },
+ "xss": {
+ "english_name": "Assan"
+ },
+ "xsp": {
+ "english_name": "Silopi"
+ },
+ "xsq": {
+ "english_name": "Makhuwa-Saka"
+ },
+ "xsv": {
+ "english_name": "Sudovian"
+ },
+ "xsu": {
+ "english_name": "Sanumá"
+ },
+ "xsy": {
+ "english_name": "Saisiyat"
+ },
+ "xsb": {
+ "english_name": "Sambal"
+ },
+ "xsc": {
+ "english_name": "Scythian"
+ },
+ "xsa": {
+ "english_name": "Sabaean"
+ },
+ "xsd": {
+ "english_name": "Sidetic"
+ },
+ "xse": {
+ "english_name": "Sempan"
+ },
+ "xsh": {
+ "english_name": "Shamang"
+ },
+ "xsi": {
+ "english_name": "Sio"
+ },
+ "xsn": {
+ "english_name": "Sanga (Nigeria)"
+ },
+ "xso": {
+ "english_name": "Solano"
+ },
+ "xsl": {
+ "english_name": "Slavey, South"
+ },
+ "xsm": {
+ "english_name": "Kasem"
+ },
+ "jls": {
+ "english_name": "Jamaican Sign Language"
+ },
+ "jle": {
+ "english_name": "Ngile"
+ },
+ "swi": {
+ "english_name": "Sui"
+ },
+ "dui": {
+ "english_name": "Dumun"
+ },
+ "swk": {
+ "english_name": "Sena, Malawi"
+ },
+ "swj": {
+ "english_name": "Sira"
+ },
+ "swm": {
+ "english_name": "Samosa"
+ },
+ "swl": {
+ "english_name": "Swedish Sign Language"
+ },
+ "dun": {
+ "english_name": "Dusun Deyah"
+ },
+ "swn": {
+ "english_name": "Sawknah"
+ },
+ "swc": {
+ "english_name": "Swahili, Congo"
+ },
+ "swb": {
+ "english_name": "Comorian, Maore"
+ },
+ "swg": {
+ "english_name": "Swabian"
+ },
+ "swf": {
+ "english_name": "Sere"
+ },
+ "swy": {
+ "english_name": "Sarua"
+ },
+ "swx": {
+ "english_name": "Suruahá"
+ },
+ "hz": {
+ "english_name": "Herero"
+ },
+ "hy": {
+ "english_name": "Armenian"
+ },
+ "eaa": {
+ "english_name": "Karenggapa"
+ },
+ "ht": {
+ "english_name": "Haitian"
+ },
+ "hu": {
+ "name": "magyar",
+ "english_name": "Hungarian"
+ },
+ "swq": {
+ "english_name": "Sharwa"
+ },
+ "hi": {
+ "name": "हिंदी",
+ "english_name": "Hindi"
+ },
+ "ho": {
+ "english_name": "Hiri Motu"
+ },
+ "swp": {
+ "english_name": "Suau"
+ },
+ "ha": {
+ "english_name": "Hausa"
+ },
+ "sws": {
+ "english_name": "Seluwasan"
+ },
+ "he": {
+ "name": "עברית",
+ "english_name": "Hebrew"
+ },
+ "dma": {
+ "english_name": "Duma"
+ },
+ "dmb": {
+ "english_name": "Dogon, Mombo"
+ },
+ "pi": {
+ "english_name": "Pali"
+ },
+ "dmd": {
+ "english_name": "Madhi Madhi"
+ },
+ "dme": {
+ "english_name": "Dugwor"
+ },
+ "dmg": {
+ "english_name": "Kinabatangan, Upper"
+ },
+ "dmk": {
+ "english_name": "Domaaki"
+ },
+ "dml": {
+ "english_name": "Dameli"
+ },
+ "dmm": {
+ "english_name": "Dama"
+ },
+ "dmo": {
+ "english_name": "Kemedzung"
+ },
+ "dmr": {
+ "english_name": "Damar, East"
+ },
+ "dms": {
+ "english_name": "Dampelas"
+ },
+ "pl": {
+ "name": "polski",
+ "english_name": "Polish"
+ },
+ "dmv": {
+ "english_name": "Dumpas"
+ },
+ "dmw": {
+ "english_name": "Mudburra"
+ },
+ "dmx": {
+ "english_name": "Dema"
+ },
+ "dmy": {
+ "english_name": "Demta"
+ },
+ "swv": {
+ "english_name": "Shekhawati"
+ },
+ "hna": {
+ "english_name": "Mina (Cameroon)"
+ },
+ "bcm": {
+ "english_name": "Bannoni"
+ },
+ "bcn": {
+ "english_name": "Bali (Nigeria)"
+ },
+ "bco": {
+ "english_name": "Kaluli"
+ },
+ "hne": {
+ "english_name": "Chhattisgarhi"
+ },
+ "hnd": {
+ "english_name": "Hindko, Southern"
+ },
+ "bcj": {
+ "english_name": "Bardi"
+ },
+ "bck": {
+ "english_name": "Bunaba"
+ },
+ "hni": {
+ "english_name": "Hani"
+ },
+ "hnh": {
+ "english_name": "//Ani"
+ },
+ "bcf": {
+ "english_name": "Bamu"
+ },
+ "hnj": {
+ "english_name": "Hmong Njua"
+ },
+ "bca": {
+ "english_name": "Bai, Central"
+ },
+ "hno": {
+ "english_name": "Hindko, Northern"
+ },
+ "hnn": {
+ "english_name": "Hanunoo"
+ },
+ "hns": {
+ "english_name": "Hindustani, Caribbean"
+ },
+ "hnu": {
+ "english_name": "Hung"
+ },
+ "bcy": {
+ "english_name": "Bacama"
+ },
+ "bcz": {
+ "english_name": "Bainouk-Gunyaamolo"
+ },
+ "bct": {
+ "english_name": "Bendi"
+ },
+ "bcu": {
+ "english_name": "Awad Bing"
+ },
+ "bcv": {
+ "english_name": "Shoo-Minda-Nye"
+ },
+ "bcw": {
+ "english_name": "Bana"
+ },
+ "bcp": {
+ "english_name": "Bali (Democratic Republic of Congo)"
+ },
+ "bcq": {
+ "english_name": "Bench"
+ },
+ "bcr": {
+ "english_name": "Babine"
+ },
+ "bcs": {
+ "english_name": "Kohumono"
+ },
+ "aua": {
+ "english_name": "Asumboa"
+ },
+ "auc": {
+ "english_name": "Waorani"
+ },
+ "aub": {
+ "english_name": "Alugu"
+ },
+ "aud": {
+ "english_name": "Anuta"
+ },
+ "aug": {
+ "english_name": "Aguna"
+ },
+ "aui": {
+ "english_name": "Anuki"
+ },
+ "auh": {
+ "english_name": "Aushi"
+ },
+ "auk": {
+ "english_name": "Heyo"
+ },
+ "auj": {
+ "english_name": "Awjilah"
+ },
+ "aum": {
+ "english_name": "Asu (Nigeria)"
+ },
+ "aul": {
+ "english_name": "Aulua"
+ },
+ "auo": {
+ "english_name": "Auyokawa"
+ },
+ "aun": {
+ "english_name": "One, Molmo"
+ },
+ "auq": {
+ "english_name": "Anus"
+ },
+ "aup": {
+ "english_name": "Makayam"
+ },
+ "aur": {
+ "english_name": "Aruek"
+ },
+ "auu": {
+ "english_name": "Auye"
+ },
+ "aut": {
+ "english_name": "Austral"
+ },
+ "auw": {
+ "english_name": "Awyi"
+ },
+ "auy": {
+ "english_name": "Awiyaana"
+ },
+ "aux": {
+ "english_name": "Aurá"
+ },
+ "auz": {
+ "english_name": "Arabic, Uzbeki"
+ },
+ "blg": {
+ "english_name": "Balau"
+ },
+ "upi": {
+ "english_name": "Umeda"
+ },
+ "upv": {
+ "english_name": "Uripiv-Wala-Rano-Atchin"
+ },
+ "nen": {
+ "english_name": "Nengone"
+ },
+ "neo": {
+ "english_name": "Ná-Meo"
+ },
+ "nem": {
+ "english_name": "Nemi"
+ },
+ "nej": {
+ "english_name": "Neko"
+ },
+ "nek": {
+ "english_name": "Neku"
+ },
+ "neh": {
+ "english_name": "Nyenkha"
+ },
+ "nei": {
+ "english_name": "Hittite, Neo-"
+ },
+ "nef": {
+ "english_name": "Nefamese"
+ },
+ "neg": {
+ "english_name": "Negidal"
+ },
+ "ned": {
+ "english_name": "Nde-Gbite"
+ },
+ "nee": {
+ "english_name": "Nêlêmwa-Nixumwak"
+ },
+ "neb": {
+ "english_name": "Toura (Côte d'Ivoire)"
+ },
+ "nec": {
+ "english_name": "Nedebang"
+ },
+ "nea": {
+ "english_name": "Ngad'a, Eastern"
+ },
+ "nez": {
+ "english_name": "Nez Perce"
+ },
+ "nex": {
+ "english_name": "Neme"
+ },
+ "ney": {
+ "english_name": "Neyo"
+ },
+ "nev": {
+ "english_name": "Nyaheun"
+ },
+ "new": {
+ "english_name": "Newari"
+ },
+ "net": {
+ "english_name": "Nete"
+ },
+ "neu": {
+ "english_name": "Neo"
+ },
+ "ner": {
+ "english_name": "Yahadian"
+ },
+ "nes": {
+ "english_name": "Kinnauri, Bhoti"
+ },
+ "neq": {
+ "english_name": "Mixe, North Central"
+ },
+ "mee": {
+ "english_name": "Mengen"
+ },
+ "med": {
+ "english_name": "Melpa"
+ },
+ "mef": {
+ "english_name": "Megam"
+ },
+ "mea": {
+ "english_name": "Menka"
+ },
+ "mec": {
+ "english_name": "Mara"
+ },
+ "meb": {
+ "english_name": "Ikobi"
+ },
+ "mem": {
+ "english_name": "Mangala"
+ },
+ "mel": {
+ "english_name": "Melanau, Central"
+ },
+ "meo": {
+ "english_name": "Malay, Kedah"
+ },
+ "men": {
+ "english_name": "Mende (Sierra Leone)"
+ },
+ "mei": {
+ "english_name": "Midob"
+ },
+ "meh": {
+ "english_name": "Mixtec, Southwestern Tlaxiaco"
+ },
+ "mek": {
+ "english_name": "Mekeo"
+ },
+ "mej": {
+ "english_name": "Meyah"
+ },
+ "meu": {
+ "english_name": "Motu"
+ },
+ "met": {
+ "english_name": "Mato"
+ },
+ "mew": {
+ "english_name": "Maaka"
+ },
+ "mev": {
+ "english_name": "Mano"
+ },
+ "meq": {
+ "english_name": "Merey"
+ },
+ "mep": {
+ "english_name": "Miriwung"
+ },
+ "mes": {
+ "english_name": "Masmaje"
+ },
+ "mer": {
+ "english_name": "Meru"
+ },
+ "mey": {
+ "english_name": "Hassaniyya"
+ },
+ "mez": {
+ "english_name": "Menominee"
+ },
+ "dry": {
+ "english_name": "Darai"
+ },
+ "drq": {
+ "english_name": "Dura"
+ },
+ "sjs": {
+ "english_name": "Senhaja De Srair"
+ },
+ "drs": {
+ "english_name": "Gedeo"
+ },
+ "drr": {
+ "english_name": "Dororo"
+ },
+ "dru": {
+ "english_name": "Rukai"
+ },
+ "drt": {
+ "english_name": "Drents"
+ },
+ "sjt": {
+ "english_name": "Sami, Ter"
+ },
+ "sju": {
+ "english_name": "Sami, Ume"
+ },
+ "dri": {
+ "english_name": "C'lela"
+ },
+ "sjk": {
+ "english_name": "Sami, Kemi"
+ },
+ "sjn": {
+ "english_name": "Sindarin"
+ },
+ "drl": {
+ "english_name": "Paakantyi"
+ },
+ "dro": {
+ "english_name": "Melanau, Daro-Matu"
+ },
+ "drn": {
+ "english_name": "Damar, West"
+ },
+ "sjb": {
+ "english_name": "Sajau Basap"
+ },
+ "drc": {
+ "english_name": "Minderico"
+ },
+ "drb": {
+ "english_name": "Dair"
+ },
+ "dre": {
+ "english_name": "Dolpo"
+ },
+ "drd": {
+ "english_name": "Darmiya"
+ },
+ "drg": {
+ "english_name": "Rungus"
+ },
+ "sje": {
+ "english_name": "Sami, Pite"
+ },
+ "lww": {
+ "english_name": "Lewo"
+ },
+ "lwt": {
+ "english_name": "Lewotobi"
+ },
+ "lwu": {
+ "english_name": "Lawu"
+ },
+ "lwh": {
+ "english_name": "Lachi, White"
+ },
+ "lwo": {
+ "english_name": "Luwo"
+ },
+ "lwl": {
+ "english_name": "Lawa, Eastern"
+ },
+ "lwm": {
+ "english_name": "Laomian"
+ },
+ "lwa": {
+ "english_name": "Lwalu"
+ },
+ "lwg": {
+ "english_name": "Wanga"
+ },
+ "lwe": {
+ "english_name": "Lewo Eleng"
+ },
+ "kgq": {
+ "english_name": "Kamoro"
+ },
+ "kgp": {
+ "english_name": "Kaingang"
+ },
+ "kgs": {
+ "english_name": "Kumbainggar"
+ },
+ "kgr": {
+ "english_name": "Abun"
+ },
+ "kgu": {
+ "english_name": "Kobol"
+ },
+ "kgt": {
+ "english_name": "Somyev"
+ },
+ "kgw": {
+ "english_name": "Karon Dori"
+ },
+ "kgv": {
+ "english_name": "Karas"
+ },
+ "kgy": {
+ "english_name": "Kyerung"
+ },
+ "kgx": {
+ "english_name": "Kamaru"
+ },
+ "kga": {
+ "english_name": "Koyaga"
+ },
+ "kgc": {
+ "english_name": "Kasseng"
+ },
+ "kgb": {
+ "english_name": "Kawe"
+ },
+ "kge": {
+ "english_name": "Komering"
+ },
+ "kgd": {
+ "english_name": "Kataang"
+ },
+ "kgg": {
+ "english_name": "Kusunda"
+ },
+ "kgf": {
+ "english_name": "Kube"
+ },
+ "kgi": {
+ "english_name": "Selangor Sign Language"
+ },
+ "kgk": {
+ "english_name": "Kaiwá"
+ },
+ "kgj": {
+ "english_name": "Kham, Gamale"
+ },
+ "kgm": {
+ "english_name": "Karipúna"
+ },
+ "kgl": {
+ "english_name": "Kunggari"
+ },
+ "kgo": {
+ "english_name": "Krongo"
+ },
+ "kgn": {
+ "english_name": "Karingani"
+ },
+ "xhc": {
+ "english_name": "Hunnic"
+ },
+ "xha": {
+ "english_name": "Harami"
+ },
+ "xhe": {
+ "english_name": "Khetrani"
+ },
+ "xhd": {
+ "english_name": "Hadrami"
+ },
+ "xhr": {
+ "english_name": "Hernican"
+ },
+ "xhv": {
+ "english_name": "Khua"
+ },
+ "xhu": {
+ "english_name": "Hurrian"
+ },
+ "xht": {
+ "english_name": "Hattic"
+ },
+ "yga": {
+ "english_name": "Malyangapa"
+ },
+ "ygm": {
+ "english_name": "Yagomi"
+ },
+ "ygl": {
+ "english_name": "Yangum Gel"
+ },
+ "ygi": {
+ "english_name": "Yiningayi"
+ },
+ "ygw": {
+ "english_name": "Yagwoia"
+ },
+ "ygu": {
+ "english_name": "Yugul"
+ },
+ "ygr": {
+ "english_name": "Yagaria"
+ },
+ "ygp": {
+ "english_name": "Gepo"
+ },
+ "jpr": {
+ "english_name": "Judeo-Persian"
+ },
+ "wur": {
+ "english_name": "Wurrugu"
+ },
+ "wuv": {
+ "english_name": "Wuvulu-Aua"
+ },
+ "wuu": {
+ "english_name": "Chinese, Wu"
+ },
+ "wut": {
+ "english_name": "Wutung"
+ },
+ "wuy": {
+ "english_name": "Wauyai"
+ },
+ "wux": {
+ "english_name": "Wulna"
+ },
+ "wub": {
+ "english_name": "Wunambal"
+ },
+ "wua": {
+ "english_name": "Wikngenchera"
+ },
+ "wud": {
+ "english_name": "Wudu"
+ },
+ "wuh": {
+ "english_name": "Wutunhua"
+ },
+ "wun": {
+ "english_name": "Bungu"
+ },
+ "wum": {
+ "english_name": "Wumbvu"
+ },
+ "wul": {
+ "english_name": "Silimo"
+ },
+ "mxz": {
+ "english_name": "Masela, Central"
+ },
+ "mxx": {
+ "english_name": "Mahou"
+ },
+ "mxy": {
+ "english_name": "Mixtec, Southeastern Nochixtlán"
+ },
+ "mxv": {
+ "english_name": "Mixtec, Metlatónoc"
+ },
+ "mxw": {
+ "english_name": "Namo"
+ },
+ "mxt": {
+ "english_name": "Mixtec, Jamiltepec"
+ },
+ "mxu": {
+ "english_name": "Mada (Cameroon)"
+ },
+ "mxr": {
+ "english_name": "Murik (Malaysia)"
+ },
+ "mxs": {
+ "english_name": "Mixtec, Huitepec"
+ },
+ "mxp": {
+ "english_name": "Mixe, Tlahuitoltepec"
+ },
+ "mxq": {
+ "english_name": "Mixe, Juquila"
+ },
+ "mxn": {
+ "english_name": "Moi (Indonesia)"
+ },
+ "mxo": {
+ "english_name": "Mbowe"
+ },
+ "mxl": {
+ "english_name": "Gbe, Maxi"
+ },
+ "mxm": {
+ "english_name": "Meramera"
+ },
+ "mxj": {
+ "english_name": "Miju-Mishmi"
+ },
+ "mxk": {
+ "english_name": "Monumbo"
+ },
+ "mxh": {
+ "english_name": "Mvuba"
+ },
+ "mxi": {
+ "english_name": "Mozarabic"
+ },
+ "mxf": {
+ "english_name": "Malgbe"
+ },
+ "mxg": {
+ "english_name": "Mbangala"
+ },
+ "mxd": {
+ "english_name": "Modang"
+ },
+ "mxe": {
+ "english_name": "Mele-Fila"
+ },
+ "mxb": {
+ "english_name": "Mixtec, Tezoatlán"
+ },
+ "mxc": {
+ "english_name": "Manyika"
+ },
+ "mxa": {
+ "english_name": "Mixtec, Northwest Oaxaca"
+ },
+ "zwa": {
+ "english_name": "Zay"
+ },
+ "xut": {
+ "english_name": "Kuthant"
+ },
+ "xuu": {
+ "english_name": "Kxoe"
+ },
+ "xup": {
+ "english_name": "Umpqua, Upper"
+ },
+ "xur": {
+ "english_name": "Urartian"
+ },
+ "isr": {
+ "english_name": "Israeli Sign Language"
+ },
+ "isu": {
+ "english_name": "Isu (Menchum Division)"
+ },
+ "ist": {
+ "english_name": "Istriot"
+ },
+ "isk": {
+ "english_name": "Ishkashimi"
+ },
+ "isi": {
+ "english_name": "Nkem-Nkum"
+ },
+ "ish": {
+ "english_name": "Esan"
+ },
+ "iso": {
+ "english_name": "Isoko"
+ },
+ "isn": {
+ "english_name": "Isanzu"
+ },
+ "ism": {
+ "english_name": "Masimasi"
+ },
+ "isc": {
+ "english_name": "Isconahua"
+ },
+ "xum": {
+ "english_name": "Umbrian"
+ },
+ "isa": {
+ "english_name": "Isabi"
+ },
+ "xuo": {
+ "english_name": "Kuo"
+ },
+ "isg": {
+ "english_name": "Irish Sign Language"
+ },
+ "ise": {
+ "english_name": "Italian Sign Language"
+ },
+ "isd": {
+ "english_name": "Isnag"
+ },
+ "jjr": {
+ "english_name": "Bankal"
+ },
+ "ukq": {
+ "english_name": "Ukwa"
+ },
+ "gyg": {
+ "english_name": "Gbayi"
+ },
+ "gyf": {
+ "english_name": "Gungabula"
+ },
+ "gye": {
+ "english_name": "Gyem"
+ },
+ "gyd": {
+ "english_name": "Kayardild"
+ },
+ "gyb": {
+ "english_name": "Garus"
+ },
+ "gya": {
+ "english_name": "Gbaya, Northwest"
+ },
+ "gyn": {
+ "english_name": "Creole English, Guyanese"
+ },
+ "gym": {
+ "english_name": "Ngäbere"
+ },
+ "gyl": {
+ "english_name": "Gayil"
+ },
+ "gyi": {
+ "english_name": "Gyele"
+ },
+ "gyr": {
+ "english_name": "Guarayu"
+ },
+ "gyy": {
+ "english_name": "Gunya"
+ },
+ "tyl": {
+ "english_name": "Thu Lao"
+ },
+ "tyn": {
+ "english_name": "Kombai"
+ },
+ "tyh": {
+ "english_name": "O'du"
+ },
+ "tyi": {
+ "english_name": "Teke-Tsaayi"
+ },
+ "tyj": {
+ "english_name": "Tai Do"
+ },
+ "tye": {
+ "english_name": "Kyanga"
+ },
+ "tya": {
+ "english_name": "Tauya"
+ },
+ "tyx": {
+ "english_name": "Teke-Tyee"
+ },
+ "tyz": {
+ "english_name": "Tày"
+ },
+ "tyt": {
+ "english_name": "Tày Tac"
+ },
+ "tyu": {
+ "english_name": "Kua"
+ },
+ "tyv": {
+ "english_name": "Tuvinian"
+ },
+ "typ": {
+ "english_name": "Thaypan"
+ },
+ "tyr": {
+ "english_name": "Tai Daeng"
+ },
+ "tys": {
+ "english_name": "Tày Sa Pa"
+ },
+ "dok": {
+ "english_name": "Dondo"
+ },
+ "doh": {
+ "english_name": "Dong"
+ },
+ "doi": {
+ "english_name": "Dogri (macrolanguage)"
+ },
+ "don": {
+ "english_name": "Toura (Papua New Guinea)"
+ },
+ "doo": {
+ "english_name": "Dongo"
+ },
+ "dol": {
+ "english_name": "Doso"
+ },
+ "dob": {
+ "english_name": "Dobu"
+ },
+ "doc": {
+ "english_name": "Dong, Northern"
+ },
+ "doa": {
+ "english_name": "Dom"
+ },
+ "dof": {
+ "english_name": "Domu"
+ },
+ "doe": {
+ "english_name": "Doe"
+ },
+ "doz": {
+ "english_name": "Dorze"
+ },
+ "dox": {
+ "english_name": "Bussa"
+ },
+ "doy": {
+ "english_name": "Dompo"
+ },
+ "dor": {
+ "english_name": "Dori'o"
+ },
+ "dos": {
+ "english_name": "Dogosé"
+ },
+ "dop": {
+ "english_name": "Lukpa"
+ },
+ "doq": {
+ "english_name": "Dominican Sign Language"
+ },
+ "dov": {
+ "english_name": "Dombe"
+ },
+ "dow": {
+ "english_name": "Doyayo"
+ },
+ "dot": {
+ "english_name": "Dass"
+ },
+ "bav": {
+ "english_name": "Vengo"
+ },
+ "baw": {
+ "english_name": "Bambili-Bambui"
+ },
+ "bau": {
+ "english_name": "Bada (Nigeria)"
+ },
+ "bar": {
+ "english_name": "Bavarian"
+ },
+ "bas": {
+ "english_name": "Basa (Cameroon)"
+ },
+ "bap": {
+ "english_name": "Bantawa"
+ },
+ "bax": {
+ "english_name": "Bamun"
+ },
+ "bay": {
+ "english_name": "Batuley"
+ },
+ "baf": {
+ "english_name": "Nubaca"
+ },
+ "bag": {
+ "english_name": "Tuki"
+ },
+ "bae": {
+ "english_name": "Baré"
+ },
+ "bab": {
+ "english_name": "Bainouk-Gunyuño"
+ },
+ "bac": {
+ "english_name": "Badui"
+ },
+ "baa": {
+ "english_name": "Babatana"
+ },
+ "ban": {
+ "english_name": "Balinese"
+ },
+ "bao": {
+ "english_name": "Waimaha"
+ },
+ "bal": {
+ "english_name": "Baluchi"
+ },
+ "baj": {
+ "english_name": "Barakai"
+ },
+ "bah": {
+ "english_name": "Creole English, Bahamas"
+ },
+ "omc": {
+ "english_name": "Mochica"
+ },
+ "omb": {
+ "english_name": "Ambae, East"
+ },
+ "oma": {
+ "english_name": "Omaha-Ponca"
+ },
+ "omg": {
+ "english_name": "Omagua"
+ },
+ "ome": {
+ "english_name": "Omejes"
+ },
+ "omk": {
+ "english_name": "Omok"
+ },
+ "omi": {
+ "english_name": "Omi"
+ },
+ "omo": {
+ "english_name": "Utarmbung"
+ },
+ "omn": {
+ "english_name": "Minoan"
+ },
+ "oml": {
+ "english_name": "Ombo"
+ },
+ "omr": {
+ "english_name": "Marathi, Old"
+ },
+ "omp": {
+ "english_name": "Manipuri, Old"
+ },
+ "omw": {
+ "english_name": "Tairora, South"
+ },
+ "omu": {
+ "english_name": "Omurano"
+ },
+ "omt": {
+ "english_name": "Omotik"
+ },
+ "omx": {
+ "english_name": "Mon, Old"
+ },
+ "unr": {
+ "english_name": "Mundari"
+ },
+ "unu": {
+ "english_name": "Unubahe"
+ },
+ "unx": {
+ "english_name": "Munda"
+ },
+ "unz": {
+ "english_name": "Kaili, Unde"
+ },
+ "fng": {
+ "english_name": "Fanagalo"
+ },
+ "una": {
+ "english_name": "Watut, North"
+ },
+ "und": {
+ "english_name": "Undetermined"
+ },
+ "une": {
+ "english_name": "Uneme"
+ },
+ "ung": {
+ "english_name": "Ngarinyin"
+ },
+ "unk": {
+ "english_name": "Enawené-Nawé"
+ },
+ "unm": {
+ "english_name": "Unami"
+ },
+ "fni": {
+ "english_name": "Fania"
+ },
+ "scg": {
+ "english_name": "Sanggau"
+ },
+ "mco": {
+ "english_name": "Mixe, Coatlán"
+ },
+ "mcn": {
+ "english_name": "Masana"
+ },
+ "mcm": {
+ "english_name": "Creole Portuguese, Malaccan"
+ },
+ "mcl": {
+ "english_name": "Macaguaje"
+ },
+ "mck": {
+ "english_name": "Mbunda"
+ },
+ "mcj": {
+ "english_name": "Mvanip"
+ },
+ "mci": {
+ "english_name": "Mese"
+ },
+ "gli": {
+ "english_name": "Guliguli"
+ },
+ "mcg": {
+ "english_name": "Mapoyo"
+ },
+ "mcf": {
+ "english_name": "Matsés"
+ },
+ "mce": {
+ "english_name": "Mixtec, Itundujia"
+ },
+ "mcd": {
+ "english_name": "Sharanahua"
+ },
+ "mcc": {
+ "english_name": "Bitur"
+ },
+ "glj": {
+ "english_name": "Gula Iro"
+ },
+ "mca": {
+ "english_name": "Maca"
+ },
+ "glk": {
+ "english_name": "Gilaki"
+ },
+ "mcz": {
+ "english_name": "Mawan"
+ },
+ "mcy": {
+ "english_name": "Watut, South"
+ },
+ "mcx": {
+ "english_name": "Mpiemo"
+ },
+ "mcw": {
+ "english_name": "Mawa (Chad)"
+ },
+ "mcv": {
+ "english_name": "Minanibai"
+ },
+ "mcu": {
+ "english_name": "Mambila, Cameroon"
+ },
+ "mct": {
+ "english_name": "Mengisa"
+ },
+ "mcs": {
+ "english_name": "Mambai"
+ },
+ "mcr": {
+ "english_name": "Menya"
+ },
+ "mcq": {
+ "english_name": "Ese"
+ },
+ "mcp": {
+ "english_name": "Makaa"
+ },
+ "slx": {
+ "english_name": "Salampasu"
+ },
+ "sly": {
+ "english_name": "Selayar"
+ },
+ "slz": {
+ "english_name": "Ma'ya"
+ },
+ "slt": {
+ "english_name": "Sila"
+ },
+ "slu": {
+ "english_name": "Selaru"
+ },
+ "slw": {
+ "english_name": "Sialum"
+ },
+ "slp": {
+ "english_name": "Lamaholot"
+ },
+ "slq": {
+ "english_name": "Salchuq"
+ },
+ "slr": {
+ "english_name": "Salar"
+ },
+ "sls": {
+ "english_name": "Singapore Sign Language"
+ },
+ "sll": {
+ "english_name": "Salt-Yui"
+ },
+ "slm": {
+ "english_name": "Sama, Pangutaran"
+ },
+ "sln": {
+ "english_name": "Salinan"
+ },
+ "slh": {
+ "english_name": "Salish, Southern Puget Sound"
+ },
+ "sli": {
+ "english_name": "Silesian, Lower"
+ },
+ "slj": {
+ "english_name": "Salumá"
+ },
+ "sld": {
+ "english_name": "Sissala"
+ },
+ "sle": {
+ "english_name": "Sholaga"
+ },
+ "slf": {
+ "english_name": "Swiss-Italian Sign Language"
+ },
+ "slg": {
+ "english_name": "Selungai Murut"
+ },
+ "slc": {
+ "english_name": "Sáliba"
+ },
+ "glc": {
+ "english_name": "Bon Gula"
+ },
+ "gld": {
+ "english_name": "Nanai"
+ },
+ "is": {
+ "name": "Íslenska",
+ "english_name": "Icelandic"
+ },
+ "iu": {
+ "english_name": "Inuktitut"
+ },
+ "it": {
+ "name": "Italiano",
+ "english_name": "Italian"
+ },
+ "ii": {
+ "english_name": "Yi, Sichuan"
+ },
+ "ik": {
+ "english_name": "Inupiaq"
+ },
+ "io": {
+ "english_name": "Ido"
+ },
+ "ia": {
+ "english_name": "Interlingua (International Auxiliary Language Association)"
+ },
+ "ie": {
+ "english_name": "Interlingue"
+ },
+ "id": {
+ "name": "Indonesian",
+ "english_name": "Indonesian"
+ },
+ "ig": {
+ "english_name": "Igbo"
+ },
+ "gly": {
+ "english_name": "Gule"
+ },
+ "sav": {
+ "english_name": "Saafi-Saafi"
+ },
+ "swr": {
+ "english_name": "Saweru"
+ },
+ "wdu": {
+ "english_name": "Wadjigu"
+ },
+ "kiz": {
+ "english_name": "Kisi"
+ },
+ "kiy": {
+ "english_name": "Kirikiri"
+ },
+ "kix": {
+ "english_name": "Naga, Khiamniungan"
+ },
+ "kis": {
+ "english_name": "Kis"
+ },
+ "kiq": {
+ "english_name": "Kosadle"
+ },
+ "kip": {
+ "english_name": "Kham, Sheshi"
+ },
+ "kiw": {
+ "english_name": "Kiwai, Northeast"
+ },
+ "kiv": {
+ "english_name": "Kimbu"
+ },
+ "kiu": {
+ "english_name": "Kirmanjki (individual language)"
+ },
+ "kit": {
+ "english_name": "Agob"
+ },
+ "kij": {
+ "english_name": "Kilivila"
+ },
+ "kii": {
+ "english_name": "Kitsai"
+ },
+ "kih": {
+ "english_name": "Kilmeri"
+ },
+ "kio": {
+ "english_name": "Kiowa"
+ },
+ "kim": {
+ "english_name": "Karagas"
+ },
+ "kil": {
+ "english_name": "Kariya"
+ },
+ "kic": {
+ "english_name": "Kickapoo"
+ },
+ "kib": {
+ "english_name": "Koalib"
+ },
+ "kia": {
+ "english_name": "Kim"
+ },
+ "kig": {
+ "english_name": "Kimaama"
+ },
+ "kif": {
+ "english_name": "Kham, Eastern Parbate"
+ },
+ "kie": {
+ "english_name": "Kibet"
+ },
+ "kid": {
+ "english_name": "Koshin"
+ },
+ "xjb": {
+ "english_name": "Minjungbal"
+ },
+ "glu": {
+ "english_name": "Gula (Chad)"
+ },
+ "xjt": {
+ "english_name": "Jaitmatang"
+ },
+ "glw": {
+ "english_name": "Glavda"
+ },
+ "yei": {
+ "english_name": "Yeni"
+ },
+ "yej": {
+ "english_name": "Yevanic"
+ },
+ "yel": {
+ "english_name": "Yela"
+ },
+ "yea": {
+ "english_name": "Ravula"
+ },
+ "yec": {
+ "english_name": "Yeniche"
+ },
+ "yee": {
+ "english_name": "Yimas"
+ },
+ "yey": {
+ "english_name": "Yeyi"
+ },
+ "yes": {
+ "english_name": "Nyankpa"
+ },
+ "yer": {
+ "english_name": "Tarok"
+ },
+ "yeu": {
+ "english_name": "Yerukula"
+ },
+ "yet": {
+ "english_name": "Yetfa"
+ },
+ "yev": {
+ "english_name": "Yapunda"
+ },
+ "opt": {
+ "english_name": "Opata"
+ },
+ "opy": {
+ "english_name": "Ofayé"
+ },
+ "opa": {
+ "english_name": "Okpamheri"
+ },
+ "opm": {
+ "english_name": "Oksapmin"
+ },
+ "opo": {
+ "english_name": "Opao"
+ },
+ "opk": {
+ "english_name": "Kopkaka"
+ },
+ "www": {
+ "english_name": "Wawa"
+ },
+ "wwr": {
+ "english_name": "Warrwa"
+ },
+ "wwa": {
+ "english_name": "Waama"
+ },
+ "wwb": {
+ "english_name": "Wakabunga"
+ },
+ "wwo": {
+ "english_name": "Wetamut"
+ },
+ "zuy": {
+ "english_name": "Zumaya"
+ },
+ "zua": {
+ "english_name": "Zeem"
+ },
+ "zuh": {
+ "english_name": "Tokano"
+ },
+ "zun": {
+ "english_name": "Zuni"
+ },
+ "zum": {
+ "english_name": "Kumzari"
+ },
+ "iqu": {
+ "english_name": "Iquito"
+ },
+ "xww": {
+ "english_name": "Wemba Wemba"
+ },
+ "iqw": {
+ "english_name": "Ikwo"
+ },
+ "xwr": {
+ "english_name": "Kwerba Mamberamo"
+ },
+ "xwo": {
+ "english_name": "Oirat, Written"
+ },
+ "xwl": {
+ "english_name": "Gbe, Western Xwla"
+ },
+ "xwj": {
+ "english_name": "Wajuk"
+ },
+ "xwk": {
+ "english_name": "Wangkumara"
+ },
+ "xwg": {
+ "english_name": "Kwegu"
+ },
+ "xwd": {
+ "english_name": "Wadi Wadi"
+ },
+ "xwe": {
+ "english_name": "Gbe, Xwela"
+ },
+ "xwc": {
+ "english_name": "Woccon"
+ },
+ "xwa": {
+ "english_name": "Kwaza"
+ },
+ "rnp": {
+ "english_name": "Rongpo"
+ },
+ "fse": {
+ "english_name": "Finnish Sign Language"
+ },
+ "fsl": {
+ "english_name": "French Sign Language"
+ },
+ "fss": {
+ "english_name": "Finland-Swedish Sign Language"
+ },
+ "tnu": {
+ "english_name": "Tay Khang"
+ },
+ "tnv": {
+ "english_name": "Tangchangya"
+ },
+ "dil": {
+ "english_name": "Dilling"
+ },
+ "dim": {
+ "english_name": "Dime"
+ },
+ "din": {
+ "english_name": "Dinka"
+ },
+ "dio": {
+ "english_name": "Dibo"
+ },
+ "dih": {
+ "english_name": "Kumiai"
+ },
+ "dii": {
+ "english_name": "Dimbong"
+ },
+ "dij": {
+ "english_name": "Dai"
+ },
+ "dik": {
+ "english_name": "Dinka, Southwestern"
+ },
+ "jhi": {
+ "english_name": "Jehai"
+ },
+ "dif": {
+ "english_name": "Dieri"
+ },
+ "dig": {
+ "english_name": "Digo"
+ },
+ "dia": {
+ "english_name": "Dia"
+ },
+ "dib": {
+ "english_name": "Dinka, South Central"
+ },
+ "dic": {
+ "english_name": "Dida, Lakota"
+ },
+ "jhs": {
+ "english_name": "Jhankot Sign Language"
+ },
+ "dix": {
+ "english_name": "Dixon Reef"
+ },
+ "diy": {
+ "english_name": "Diuwe"
+ },
+ "diz": {
+ "english_name": "Ding"
+ },
+ "dit": {
+ "english_name": "Dirari"
+ },
+ "diu": {
+ "english_name": "Diriku"
+ },
+ "diw": {
+ "english_name": "Dinka, Northwestern"
+ },
+ "dip": {
+ "english_name": "Dinka, Northeastern"
+ },
+ "diq": {
+ "english_name": "Dimli (individual language)"
+ },
+ "dir": {
+ "english_name": "Dirim"
+ },
+ "dis": {
+ "english_name": "Dimasa"
+ },
+ "ruh": {
+ "english_name": "Ruga"
+ },
+ "rub": {
+ "english_name": "Gungu"
+ },
+ "box": {
+ "english_name": "Buamu"
+ },
+ "boy": {
+ "english_name": "Bodo (Central African Republic)"
+ },
+ "hbo": {
+ "english_name": "Hebrew, Ancient"
+ },
+ "hbn": {
+ "english_name": "Heiban"
+ },
+ "bop": {
+ "english_name": "Bonkiman"
+ },
+ "boq": {
+ "english_name": "Bogaya"
+ },
+ "bor": {
+ "english_name": "Borôro"
+ },
+ "bot": {
+ "english_name": "Bongo"
+ },
+ "bou": {
+ "english_name": "Bondei"
+ },
+ "bov": {
+ "english_name": "Tuwuli"
+ },
+ "bow": {
+ "english_name": "Rema"
+ },
+ "boh": {
+ "english_name": "Boma"
+ },
+ "boi": {
+ "english_name": "Barbareño"
+ },
+ "boj": {
+ "english_name": "Anjam"
+ },
+ "bok": {
+ "english_name": "Bonjo"
+ },
+ "bol": {
+ "english_name": "Bole"
+ },
+ "bom": {
+ "english_name": "Berom"
+ },
+ "bon": {
+ "english_name": "Bine"
+ },
+ "boo": {
+ "english_name": "Bozo, Tiemacèwè"
+ },
+ "hbu": {
+ "english_name": "Habu"
+ },
+ "boa": {
+ "english_name": "Bora"
+ },
+ "bob": {
+ "english_name": "Aweer"
+ },
+ "boe": {
+ "english_name": "Mundabli"
+ },
+ "bof": {
+ "english_name": "Bolon"
+ },
+ "bog": {
+ "english_name": "Bamako Sign Language"
+ },
+ "qvn": {
+ "english_name": "Quechua, North Junín"
+ },
+ "qvo": {
+ "english_name": "Quechua, Napo Lowland"
+ },
+ "ayl": {
+ "english_name": "Arabic, Libyan"
+ },
+ "ayo": {
+ "english_name": "Ayoreo"
+ },
+ "ayn": {
+ "english_name": "Arabic, Sanaani"
+ },
+ "ayi": {
+ "english_name": "Leyigha"
+ },
+ "ayh": {
+ "english_name": "Arabic, Hadrami"
+ },
+ "ayk": {
+ "english_name": "Akuku"
+ },
+ "aye": {
+ "english_name": "Ayere"
+ },
+ "ayd": {
+ "english_name": "Ayabadhu"
+ },
+ "ayg": {
+ "english_name": "Ginyanga"
+ },
+ "aya": {
+ "english_name": "Awar"
+ },
+ "ayc": {
+ "english_name": "Aymara, Southern"
+ },
+ "ayb": {
+ "english_name": "Gbe, Ayizo"
+ },
+ "ayy": {
+ "english_name": "Ayta, Tayabas"
+ },
+ "ayz": {
+ "english_name": "Mai Brat"
+ },
+ "ayu": {
+ "english_name": "Ayu"
+ },
+ "ayt": {
+ "english_name": "Ayta, Magbukun"
+ },
+ "ayq": {
+ "english_name": "Ayi (Papua New Guinea)"
+ },
+ "ayp": {
+ "english_name": "Arabic, North Mesopotamian"
+ },
+ "ays": {
+ "english_name": "Ayta, Sorsogon"
+ },
+ "ayr": {
+ "english_name": "Aymara, Central"
+ },
+ "ood": {
+ "english_name": "Tohono O'odham"
+ },
+ "oog": {
+ "english_name": "Ong"
+ },
+ "oon": {
+ "english_name": "Önge"
+ },
+ "oos": {
+ "english_name": "Ossetic, Old"
+ },
+ "oor": {
+ "english_name": "Oorlams"
+ },
+ "qvi": {
+ "english_name": "Quichua, Imbabura Highland"
+ },
+ "fly": {
+ "english_name": "Tsotsitaal"
+ },
+ "tby": {
+ "english_name": "Tabaru"
+ },
+ "flr": {
+ "english_name": "Fuliiru"
+ },
+ "ulw": {
+ "english_name": "Ulwa"
+ },
+ "ulu": {
+ "english_name": "Uma' Lung"
+ },
+ "fli": {
+ "english_name": "Fali"
+ },
+ "flh": {
+ "english_name": "Foau"
+ },
+ "uli": {
+ "english_name": "Ulithian"
+ },
+ "uln": {
+ "english_name": "Unserdeutsch"
+ },
+ "fll": {
+ "english_name": "Fali, North"
+ },
+ "ull": {
+ "english_name": "Ullatan"
+ },
+ "fln": {
+ "english_name": "Flinders Island"
+ },
+ "fla": {
+ "english_name": "Kalispel-Pend d'Oreille"
+ },
+ "ulc": {
+ "english_name": "Ulch"
+ },
+ "ula": {
+ "english_name": "Fungwa"
+ },
+ "ulf": {
+ "english_name": "Usku"
+ },
+ "bgj": {
+ "english_name": "Bangolan"
+ },
+ "ule": {
+ "english_name": "Lule"
+ },
+ "bgk": {
+ "english_name": "Bit"
+ },
+ "tbx": {
+ "english_name": "Kapin"
+ },
+ "bgl": {
+ "english_name": "Bo (Laos)"
+ },
+ "bgm": {
+ "english_name": "Baga Mboteni"
+ },
+ "nyx": {
+ "english_name": "Nganyaywana"
+ },
+ "nyy": {
+ "english_name": "Nyakyusa-Ngonde"
+ },
+ "nyr": {
+ "english_name": "Nyiha (Malawi)"
+ },
+ "nys": {
+ "english_name": "Nyunga"
+ },
+ "nyp": {
+ "english_name": "Nyang'i"
+ },
+ "nyq": {
+ "english_name": "Nayini"
+ },
+ "nyv": {
+ "english_name": "Nyulnyul"
+ },
+ "nyw": {
+ "english_name": "Nyaw"
+ },
+ "nyt": {
+ "english_name": "Nyawaygi"
+ },
+ "nyu": {
+ "english_name": "Nyungwe"
+ },
+ "nyj": {
+ "english_name": "Nyanga"
+ },
+ "nyk": {
+ "english_name": "Nyaneka"
+ },
+ "nyh": {
+ "english_name": "Nyigina"
+ },
+ "nyi": {
+ "english_name": "Ama (Sudan)"
+ },
+ "nyn": {
+ "english_name": "Nyankole"
+ },
+ "nyo": {
+ "english_name": "Nyoro"
+ },
+ "nyl": {
+ "english_name": "Nyeu"
+ },
+ "nym": {
+ "english_name": "Nyamwezi"
+ },
+ "nyb": {
+ "english_name": "Nyangbo"
+ },
+ "nyc": {
+ "english_name": "Nyanga-li"
+ },
+ "nyf": {
+ "english_name": "Giryama"
+ },
+ "nyg": {
+ "english_name": "Nyindu"
+ },
+ "nyd": {
+ "english_name": "Nyore"
+ },
+ "nye": {
+ "english_name": "Nyengo"
+ },
+ "maq": {
+ "english_name": "Mazatec, Chiquihuitlán"
+ },
+ "sng": {
+ "english_name": "Sanga (Democratic Republic of Congo)"
+ },
+ "mas": {
+ "english_name": "Masai"
+ },
+ "sne": {
+ "english_name": "Bidayuh, Bau"
+ },
+ "mau": {
+ "english_name": "Mazatec, Huautla"
+ },
+ "mat": {
+ "english_name": "Matlatzinca, San Francisco"
+ },
+ "maw": {
+ "english_name": "Mampruli"
+ },
+ "mav": {
+ "english_name": "Sateré-Mawé"
+ },
+ "snn": {
+ "english_name": "Siona"
+ },
+ "max": {
+ "english_name": "Malay, North Moluccan"
+ },
+ "snl": {
+ "english_name": "Sangil"
+ },
+ "maz": {
+ "english_name": "Mazahua, Central"
+ },
+ "snj": {
+ "english_name": "Sango, Riverain"
+ },
+ "snk": {
+ "english_name": "Soninke"
+ },
+ "snh": {
+ "english_name": "Shinabo"
+ },
+ "sni": {
+ "english_name": "Sensi"
+ },
+ "maa": {
+ "english_name": "Mazatec, San Jerónimo Tecóatl"
+ },
+ "snw": {
+ "english_name": "Selee"
+ },
+ "mab": {
+ "english_name": "Mixtec, Yutanduchi"
+ },
+ "mae": {
+ "english_name": "Bo-Rukul"
+ },
+ "mad": {
+ "english_name": "Madurese"
+ },
+ "mag": {
+ "english_name": "Magahi"
+ },
+ "maf": {
+ "english_name": "Mafa"
+ },
+ "mai": {
+ "english_name": "Maithili"
+ },
+ "mak": {
+ "english_name": "Makasar"
+ },
+ "maj": {
+ "english_name": "Mazatec, Jalapa De Díaz"
+ },
+ "mam": {
+ "english_name": "Mam"
+ },
+ "bgz": {
+ "english_name": "Banggai"
+ },
+ "snx": {
+ "english_name": "Sam"
+ },
+ "man": {
+ "english_name": "Mandingo"
+ },
+ "zna": {
+ "english_name": "Zan Gula"
+ },
+ "zng": {
+ "english_name": "Mang"
+ },
+ "zne": {
+ "english_name": "Zande (individual language)"
+ },
+ "znk": {
+ "english_name": "Manangkari"
+ },
+ "zns": {
+ "english_name": "Mangas"
+ },
+ "lsg": {
+ "english_name": "Lyons Sign Language"
+ },
+ "lsd": {
+ "english_name": "Lishana Deni"
+ },
+ "lse": {
+ "english_name": "Lusengo"
+ },
+ "lsa": {
+ "english_name": "Lasgerdi"
+ },
+ "lso": {
+ "english_name": "Laos Sign Language"
+ },
+ "lsl": {
+ "english_name": "Latvian Sign Language"
+ },
+ "lsm": {
+ "english_name": "Saamia"
+ },
+ "lsh": {
+ "english_name": "Lish"
+ },
+ "lsi": {
+ "english_name": "Lashi"
+ },
+ "lst": {
+ "english_name": "Trinidad and Tobago Sign Language"
+ },
+ "lsr": {
+ "english_name": "Aruop"
+ },
+ "lss": {
+ "english_name": "Lasi"
+ },
+ "lsp": {
+ "english_name": "Panamanian Sign Language"
+ },
+ "lsy": {
+ "english_name": "Mauritian Sign Language"
+ },
+ "kky": {
+ "english_name": "Guguyimidjir"
+ },
+ "kkx": {
+ "english_name": "Kohin"
+ },
+ "kkz": {
+ "english_name": "Kaska"
+ },
+ "kku": {
+ "english_name": "Tumi"
+ },
+ "kkt": {
+ "english_name": "Koi"
+ },
+ "kkw": {
+ "english_name": "Teke-Kukuya"
+ },
+ "kkv": {
+ "english_name": "Kangean"
+ },
+ "kkq": {
+ "english_name": "Kaiku"
+ },
+ "kkp": {
+ "english_name": "Gugubera"
+ },
+ "kks": {
+ "english_name": "Giiwo"
+ },
+ "kkr": {
+ "english_name": "Kir-Balar"
+ },
+ "kkm": {
+ "english_name": "Kiong"
+ },
+ "kkl": {
+ "english_name": "Yale, Kosarek"
+ },
+ "kko": {
+ "english_name": "Karko"
+ },
+ "kkn": {
+ "english_name": "Kon Keu"
+ },
+ "kki": {
+ "english_name": "Kagulu"
+ },
+ "kkh": {
+ "english_name": "Khün"
+ },
+ "kkk": {
+ "english_name": "Kokota"
+ },
+ "kkj": {
+ "english_name": "Kako"
+ },
+ "kke": {
+ "english_name": "Kakabe"
+ },
+ "kkd": {
+ "english_name": "Kinuku"
+ },
+ "kkg": {
+ "english_name": "Kalinga, Mabaka Valley"
+ },
+ "kkf": {
+ "english_name": "Monpa, Kalaktang"
+ },
+ "kka": {
+ "english_name": "Kakanda"
+ },
+ "kkc": {
+ "english_name": "Odoodee"
+ },
+ "kkb": {
+ "english_name": "Kwerisa"
+ },
+ "xlo": {
+ "english_name": "Loup A"
+ },
+ "xln": {
+ "english_name": "Alanic"
+ },
+ "xli": {
+ "english_name": "Liburnian"
+ },
+ "xlg": {
+ "english_name": "Ligurian (Ancient)"
+ },
+ "xle": {
+ "english_name": "Lemnian"
+ },
+ "xld": {
+ "english_name": "Lydian"
+ },
+ "xlc": {
+ "english_name": "Lycian"
+ },
+ "xlb": {
+ "english_name": "Loup B"
+ },
+ "xla": {
+ "english_name": "Kamula"
+ },
+ "xly": {
+ "english_name": "Elymian"
+ },
+ "xlu": {
+ "english_name": "Luwian, Cuneiform"
+ },
+ "xls": {
+ "english_name": "Lusitanian"
+ },
+ "xlp": {
+ "english_name": "Lepontic"
+ },
+ "orz": {
+ "english_name": "Ormu"
+ },
+ "orx": {
+ "english_name": "Oro"
+ },
+ "ory": {
+ "english_name": "Oriya (individual language)"
+ },
+ "orv": {
+ "english_name": "Russian, Old"
+ },
+ "orw": {
+ "english_name": "Oro Win"
+ },
+ "ort": {
+ "english_name": "Oriya, Adivasi"
+ },
+ "oru": {
+ "english_name": "Ormuri"
+ },
+ "orr": {
+ "english_name": "Oruma"
+ },
+ "ors": {
+ "english_name": "Orang Seletar"
+ },
+ "orn": {
+ "english_name": "Orang Kanaq"
+ },
+ "oro": {
+ "english_name": "Orokolo"
+ },
+ "orh": {
+ "english_name": "Oroqen"
+ },
+ "org": {
+ "english_name": "Oring"
+ },
+ "ore": {
+ "english_name": "Orejón"
+ },
+ "orc": {
+ "english_name": "Orma"
+ },
+ "ora": {
+ "english_name": "Oroha"
+ },
+ "xpm": {
+ "english_name": "Pumpokol"
+ },
+ "zsu": {
+ "english_name": "Sukurum"
+ },
+ "zsr": {
+ "english_name": "Zapotec, Southern Rincon"
+ },
+ "zsa": {
+ "english_name": "Sarasira"
+ },
+ "zsl": {
+ "english_name": "Zambian Sign Language"
+ },
+ "zsm": {
+ "english_name": "Malay, Standard"
+ },
+ "zsk": {
+ "english_name": "Kaskean"
+ },
+ "iwo": {
+ "english_name": "Iwur"
+ },
+ "iwm": {
+ "english_name": "Iwam"
+ },
+ "iwk": {
+ "english_name": "I-Wak"
+ },
+ "iws": {
+ "english_name": "Iwam, Sepik"
+ },
+ "pwg": {
+ "english_name": "Gapapaiwa"
+ },
+ "pwn": {
+ "english_name": "Paiwan"
+ },
+ "pwm": {
+ "english_name": "Molbog"
+ },
+ "ges": {
+ "english_name": "Geser-Gorom"
+ },
+ "geq": {
+ "english_name": "Geme"
+ },
+ "gew": {
+ "english_name": "Gera"
+ },
+ "gez": {
+ "name": "ግዕዝኛ",
+ "english_name": "Geez"
+ },
+ "gey": {
+ "english_name": "Enya"
+ },
+ "gex": {
+ "english_name": "Garre"
+ },
+ "gec": {
+ "english_name": "Grebo, Gboloo"
+ },
+ "geb": {
+ "english_name": "Kire"
+ },
+ "gea": {
+ "english_name": "Geruma"
+ },
+ "geg": {
+ "english_name": "Gengle"
+ },
+ "ged": {
+ "english_name": "Gade"
+ },
+ "gek": {
+ "english_name": "Yiwom"
+ },
+ "gej": {
+ "english_name": "Gen"
+ },
+ "gei": {
+ "english_name": "Gebe"
+ },
+ "geh": {
+ "english_name": "German, Hutterite"
+ },
+ "gel": {
+ "english_name": "ut-Ma'in"
+ },
+ "fqs": {
+ "english_name": "Fas"
+ },
+ "tuy": {
+ "english_name": "Tugen"
+ },
+ "ain": {
+ "english_name": "Ainu (Japan)"
+ },
+ "tux": {
+ "english_name": "Tuxináwa"
+ },
+ "ima": {
+ "english_name": "Malasar, Mala"
+ },
+ "tuz": {
+ "english_name": "Turka"
+ },
+ "tuq": {
+ "english_name": "Tedaga"
+ },
+ "jv": {
+ "english_name": "Javanese"
+ },
+ "tus": {
+ "english_name": "Tuscarora"
+ },
+ "tuu": {
+ "english_name": "Tututni"
+ },
+ "tuv": {
+ "english_name": "Turkana"
+ },
+ "tuh": {
+ "english_name": "Taulil"
+ },
+ "tui": {
+ "english_name": "Tupuri"
+ },
+ "tuj": {
+ "english_name": "Tugutil"
+ },
+ "tul": {
+ "english_name": "Tula"
+ },
+ "tum": {
+ "english_name": "Tumbuka"
+ },
+ "tun": {
+ "english_name": "Tunica"
+ },
+ "tuo": {
+ "english_name": "Tucano"
+ },
+ "tua": {
+ "english_name": "Wiarumus"
+ },
+ "tub": {
+ "english_name": "Tübatulabal"
+ },
+ "tuc": {
+ "english_name": "Mutu"
+ },
+ "tud": {
+ "english_name": "Tuxá"
+ },
+ "ja": {
+ "name": "日本語",
+ "english_name": "Japanese"
+ },
+ "tuf": {
+ "english_name": "Tunebo, Central"
+ },
+ "tug": {
+ "english_name": "Tunia"
+ },
+ "dkr": {
+ "english_name": "Kuijau"
+ },
+ "dks": {
+ "english_name": "Dinka, Southeastern"
+ },
+ "dkx": {
+ "english_name": "Mazagway"
+ },
+ "imi": {
+ "english_name": "Anamgura"
+ },
+ "dka": {
+ "english_name": "Dakpakha"
+ },
+ "dkk": {
+ "english_name": "Dakka"
+ },
+ "iml": {
+ "english_name": "Miluk"
+ },
+ "imn": {
+ "english_name": "Imonda"
+ },
+ "cqd": {
+ "english_name": "Miao, Chuanqiandian Cluster"
+ },
+ "cqu": {
+ "english_name": "Quechua, Chilean"
+ },
+ "bmb": {
+ "english_name": "Bembe"
+ },
+ "bmc": {
+ "english_name": "Biem"
+ },
+ "bma": {
+ "english_name": "Lame"
+ },
+ "bmf": {
+ "english_name": "Bom"
+ },
+ "bmg": {
+ "english_name": "Bamwe"
+ },
+ "bmd": {
+ "english_name": "Manduri, Baga"
+ },
+ "bme": {
+ "english_name": "Limassa"
+ },
+ "bmj": {
+ "english_name": "Bote-Majhi"
+ },
+ "bmk": {
+ "english_name": "Ghayavi"
+ },
+ "bmh": {
+ "english_name": "Kein"
+ },
+ "bmi": {
+ "english_name": "Bagirmi"
+ },
+ "bmn": {
+ "english_name": "Bina (Papua New Guinea)"
+ },
+ "bmo": {
+ "english_name": "Bambalang"
+ },
+ "bml": {
+ "english_name": "Bomboli"
+ },
+ "bmm": {
+ "english_name": "Malagasy, Northern Betsimisaraka"
+ },
+ "bmr": {
+ "english_name": "Muinane"
+ },
+ "bms": {
+ "english_name": "Kanuri, Bilma"
+ },
+ "bmp": {
+ "english_name": "Bulgebi"
+ },
+ "bmq": {
+ "english_name": "Bomu"
+ },
+ "bmv": {
+ "english_name": "Bum"
+ },
+ "bmw": {
+ "english_name": "Bomwali"
+ },
+ "bmt": {
+ "english_name": "Biao Mon"
+ },
+ "bmu": {
+ "english_name": "Somba-Siawari"
+ },
+ "bmz": {
+ "english_name": "Baramu"
+ },
+ "bmx": {
+ "english_name": "Baimak"
+ },
+ "hds": {
+ "english_name": "Honduras Sign Language"
+ },
+ "hdy": {
+ "english_name": "Hadiyya"
+ },
+ "hdn": {
+ "english_name": "Haida, Northern"
+ },
+ "pap": {
+ "english_name": "Papiamento"
+ },
+ "paq": {
+ "english_name": "Parya"
+ },
+ "par": {
+ "english_name": "Panamint"
+ },
+ "pas": {
+ "english_name": "Papasena"
+ },
+ "pat": {
+ "english_name": "Papitalai"
+ },
+ "pau": {
+ "english_name": "Palauan"
+ },
+ "pav": {
+ "english_name": "Pakaásnovos"
+ },
+ "paw": {
+ "english_name": "Pawnee"
+ },
+ "pax": {
+ "english_name": "Pankararé"
+ },
+ "pay": {
+ "english_name": "Pech"
+ },
+ "paz": {
+ "english_name": "Pankararú"
+ },
+ "pab": {
+ "english_name": "Parecís"
+ },
+ "pac": {
+ "english_name": "Pacoh"
+ },
+ "pad": {
+ "english_name": "Paumarí"
+ },
+ "pae": {
+ "english_name": "Pagibete"
+ },
+ "paf": {
+ "english_name": "Paranawát"
+ },
+ "pag": {
+ "english_name": "Pangasinan"
+ },
+ "pah": {
+ "english_name": "Tenharim"
+ },
+ "pai": {
+ "english_name": "Pe"
+ },
+ "pak": {
+ "english_name": "Parakanã"
+ },
+ "pal": {
+ "english_name": "Pahlavi"
+ },
+ "pam": {
+ "english_name": "Pampanga"
+ },
+ "pao": {
+ "english_name": "Paiute, Northern"
+ },
+ "oin": {
+ "english_name": "One, Inebu"
+ },
+ "oia": {
+ "english_name": "Oirata"
+ },
+ "uji": {
+ "english_name": "Tanjijili"
+ },
+ "moz": {
+ "english_name": "Mukulu"
+ },
+ "moy": {
+ "english_name": "Shekkacho"
+ },
+ "mox": {
+ "english_name": "Molima"
+ },
+ "mos": {
+ "english_name": "Mossi"
+ },
+ "mor": {
+ "english_name": "Moro"
+ },
+ "moq": {
+ "english_name": "Mor (Bomberai Peninsula)"
+ },
+ "mop": {
+ "english_name": "Mopán Maya"
+ },
+ "mow": {
+ "english_name": "Moi (Congo)"
+ },
+ "mov": {
+ "english_name": "Mohave"
+ },
+ "mou": {
+ "english_name": "Mogum"
+ },
+ "mot": {
+ "english_name": "Barí"
+ },
+ "mok": {
+ "english_name": "Morori"
+ },
+ "moj": {
+ "english_name": "Monzombo"
+ },
+ "moi": {
+ "english_name": "Mboi"
+ },
+ "moh": {
+ "english_name": "Mohawk"
+ },
+ "moo": {
+ "english_name": "Monom"
+ },
+ "mom": {
+ "english_name": "Mangue"
+ },
+ "moc": {
+ "english_name": "Mocoví"
+ },
+ "moa": {
+ "english_name": "Mwan"
+ },
+ "mog": {
+ "english_name": "Mongondow"
+ },
+ "moe": {
+ "english_name": "Montagnais"
+ },
+ "mod": {
+ "english_name": "Mobilian"
+ },
+ "zlm": {
+ "english_name": "Malay (individual language)"
+ },
+ "zln": {
+ "english_name": "Zhuang, Lianshan"
+ },
+ "zlj": {
+ "english_name": "Zhuang, Liujiang"
+ },
+ "zlq": {
+ "english_name": "Zhuang, Liuqian"
+ },
+ "kmg": {
+ "english_name": "Kâte"
+ },
+ "kmf": {
+ "english_name": "Kare (Papua New Guinea)"
+ },
+ "kme": {
+ "english_name": "Bakole"
+ },
+ "kmd": {
+ "english_name": "Kalinga, Majukayang"
+ },
+ "kmc": {
+ "english_name": "Dong, Southern"
+ },
+ "kmb": {
+ "english_name": "Kimbundu"
+ },
+ "kma": {
+ "english_name": "Konni"
+ },
+ "kmo": {
+ "english_name": "Kwoma"
+ },
+ "kmn": {
+ "english_name": "Awtuw"
+ },
+ "kmm": {
+ "english_name": "Kom (India)"
+ },
+ "kml": {
+ "english_name": "Kalinga, Tanudan"
+ },
+ "kmk": {
+ "english_name": "Kalinga, Limos"
+ },
+ "kmj": {
+ "english_name": "Kumarbhag Paharia"
+ },
+ "kmi": {
+ "english_name": "Kami (Nigeria)"
+ },
+ "kmh": {
+ "english_name": "Kalam"
+ },
+ "kmw": {
+ "english_name": "Komo (Democratic Republic of Congo)"
+ },
+ "kmv": {
+ "english_name": "Creole French, Karipúna"
+ },
+ "kmu": {
+ "english_name": "Kanite"
+ },
+ "kmt": {
+ "english_name": "Kemtuik"
+ },
+ "kms": {
+ "english_name": "Kamasau"
+ },
+ "kmr": {
+ "english_name": "Kurdish, Northern"
+ },
+ "kmq": {
+ "english_name": "Kwama"
+ },
+ "kmp": {
+ "english_name": "Gimme"
+ },
+ "kmz": {
+ "english_name": "Khorasani Turkish"
+ },
+ "kmy": {
+ "english_name": "Koma"
+ },
+ "kmx": {
+ "english_name": "Waboda"
+ },
+ "xns": {
+ "english_name": "Kanashi"
+ },
+ "xnr": {
+ "english_name": "Kangri"
+ },
+ "xnu": {
+ "english_name": "Nukunul"
+ },
+ "xnt": {
+ "english_name": "Narragansett"
+ },
+ "xny": {
+ "english_name": "Nyiyaparli"
+ },
+ "xnz": {
+ "english_name": "Kenzi"
+ },
+ "xna": {
+ "english_name": "North Arabian, Ancient"
+ },
+ "xnb": {
+ "english_name": "Kanakanabu"
+ },
+ "xng": {
+ "english_name": "Mongolian, Middle"
+ },
+ "xni": {
+ "english_name": "Ngarigu"
+ },
+ "xnh": {
+ "english_name": "Kuanhua"
+ },
+ "xnk": {
+ "english_name": "Nganakarti"
+ },
+ "xno": {
+ "english_name": "Anglo-Norman"
+ },
+ "xnn": {
+ "english_name": "Kankanay, Northern"
+ },
+ "yyu": {
+ "english_name": "Yau (Sandaun Province)"
+ },
+ "yyr": {
+ "english_name": "Yir Yoront"
+ },
+ "yyz": {
+ "english_name": "Ayizi"
+ },
+ "svb": {
+ "english_name": "Ulau-Suain"
+ },
+ "goo": {
+ "english_name": "Gone Dau"
+ },
+ "goe": {
+ "english_name": "Gongduk"
+ },
+ "zqe": {
+ "english_name": "Zhuang, Qiubei"
+ },
+ "goa": {
+ "english_name": "Guro"
+ },
+ "gob": {
+ "english_name": "Playero"
+ },
+ "ium": {
+ "english_name": "Mien, Iu"
+ },
+ "got": {
+ "english_name": "Gothic"
+ },
+ "wsa": {
+ "english_name": "Warembori"
+ },
+ "hya": {
+ "english_name": "Hya"
+ },
+ "wsi": {
+ "english_name": "Wusi"
+ },
+ "wsk": {
+ "english_name": "Waskia"
+ },
+ "wss": {
+ "english_name": "Wasa"
+ },
+ "wsr": {
+ "english_name": "Owenia"
+ },
+ "wsu": {
+ "english_name": "Wasu"
+ },
+ "wsv": {
+ "english_name": "Wotapuri-Katarqalai"
+ },
+ "gor": {
+ "english_name": "Gorontalo"
+ },
+ "aba": {
+ "english_name": "Abé"
+ },
+ "abb": {
+ "english_name": "Bankon"
+ },
+ "abc": {
+ "english_name": "Ayta, Ambala"
+ },
+ "abd": {
+ "english_name": "Manide"
+ },
+ "abe": {
+ "english_name": "Abnaki, Western"
+ },
+ "abf": {
+ "english_name": "Abai Sungai"
+ },
+ "abg": {
+ "english_name": "Abaga"
+ },
+ "abh": {
+ "english_name": "Arabic, Tajiki"
+ },
+ "abi": {
+ "english_name": "Abidji"
+ },
+ "abj": {
+ "english_name": "Aka-Bea"
+ },
+ "abl": {
+ "english_name": "Lampung Nyo"
+ },
+ "abm": {
+ "english_name": "Abanyom"
+ },
+ "abn": {
+ "english_name": "Abua"
+ },
+ "abo": {
+ "english_name": "Abon"
+ },
+ "abp": {
+ "english_name": "Ayta, Abellen"
+ },
+ "abq": {
+ "english_name": "Abaza"
+ },
+ "abr": {
+ "english_name": "Abron"
+ },
+ "abs": {
+ "english_name": "Malay, Ambonese"
+ },
+ "abt": {
+ "english_name": "Ambulas"
+ },
+ "abu": {
+ "english_name": "Abure"
+ },
+ "abv": {
+ "english_name": "Arabic, Baharna"
+ },
+ "abw": {
+ "english_name": "Pal"
+ },
+ "abx": {
+ "english_name": "Inabaknon"
+ },
+ "aby": {
+ "english_name": "Aneme Wake"
+ },
+ "abz": {
+ "english_name": "Abui"
+ },
+ "ggu": {
+ "english_name": "Gagu"
+ },
+ "ggt": {
+ "english_name": "Gitua"
+ },
+ "ggw": {
+ "english_name": "Gogodala"
+ },
+ "gge": {
+ "english_name": "Guragone"
+ },
+ "ggd": {
+ "english_name": "Gugadj"
+ },
+ "ggg": {
+ "english_name": "Gurgula"
+ },
+ "gga": {
+ "english_name": "Gao"
+ },
+ "ggb": {
+ "english_name": "Gbii"
+ },
+ "ggl": {
+ "english_name": "Ganglau"
+ },
+ "ggo": {
+ "english_name": "Gondi, Southern"
+ },
+ "ggn": {
+ "english_name": "Gurung, Eastern"
+ },
+ "ggk": {
+ "english_name": "Kungarakany"
+ },
+ "fwe": {
+ "english_name": "Fwe"
+ },
+ "fwa": {
+ "english_name": "Fwâi"
+ },
+ "sbh": {
+ "english_name": "Sori-Harengan"
+ },
+ "eya": {
+ "english_name": "Eyak"
+ },
+ "twc": {
+ "english_name": "Teshenawa"
+ },
+ "twa": {
+ "english_name": "Twana"
+ },
+ "twf": {
+ "english_name": "Tiwa, Northern"
+ },
+ "twg": {
+ "english_name": "Tereweng"
+ },
+ "twd": {
+ "english_name": "Twents"
+ },
+ "twe": {
+ "english_name": "Tewa (Indonesia)"
+ },
+ "twh": {
+ "english_name": "Tai Dón"
+ },
+ "twn": {
+ "english_name": "Twendi"
+ },
+ "two": {
+ "english_name": "Tswapong"
+ },
+ "eyo": {
+ "english_name": "Keiyo"
+ },
+ "twm": {
+ "english_name": "Monpa, Tawang"
+ },
+ "twr": {
+ "english_name": "Tarahumara, Southwestern"
+ },
+ "twp": {
+ "english_name": "Ere"
+ },
+ "twq": {
+ "english_name": "Tasawaq"
+ },
+ "tww": {
+ "english_name": "Tuwari"
+ },
+ "twt": {
+ "english_name": "Turiwára"
+ },
+ "twu": {
+ "english_name": "Termanu"
+ },
+ "twx": {
+ "english_name": "Tewe"
+ },
+ "twy": {
+ "english_name": "Tawoyan"
+ },
+ "prm": {
+ "english_name": "Kibiri"
+ },
+ "dez": {
+ "english_name": "Dengese"
+ },
+ "dep": {
+ "english_name": "Delaware, Pidgin"
+ },
+ "deq": {
+ "english_name": "Dendi (Central African Republic)"
+ },
+ "der": {
+ "english_name": "Deori"
+ },
+ "des": {
+ "english_name": "Desano"
+ },
+ "jda": {
+ "english_name": "Jad"
+ },
+ "dev": {
+ "english_name": "Domung"
+ },
+ "prl": {
+ "english_name": "Peruvian Sign Language"
+ },
+ "dei": {
+ "english_name": "Demisa"
+ },
+ "dek": {
+ "english_name": "Dek"
+ },
+ "del": {
+ "english_name": "Delaware"
+ },
+ "dem": {
+ "english_name": "Dem"
+ },
+ "den": {
+ "english_name": "Slave (Athapascan)"
+ },
+ "jdt": {
+ "english_name": "Judeo-Tat"
+ },
+ "dec": {
+ "english_name": "Dagik"
+ },
+ "ded": {
+ "english_name": "Dedua"
+ },
+ "dee": {
+ "english_name": "Dewoin"
+ },
+ "def": {
+ "english_name": "Dezfuli"
+ },
+ "deg": {
+ "english_name": "Degema"
+ },
+ "csm": {
+ "english_name": "Miwok, Central Sierra"
+ },
+ "csl": {
+ "english_name": "Chinese Sign Language"
+ },
+ "cso": {
+ "english_name": "Chinantec, Sochiapam"
+ },
+ "csn": {
+ "english_name": "Colombian Sign Language"
+ },
+ "csi": {
+ "english_name": "Miwok, Coast"
+ },
+ "csh": {
+ "english_name": "Chin, Asho"
+ },
+ "csk": {
+ "english_name": "Jola-Kasa"
+ },
+ "csj": {
+ "english_name": "Chin, Songlai"
+ },
+ "cse": {
+ "english_name": "Czech Sign Language"
+ },
+ "csd": {
+ "english_name": "Chiangmai Sign Language"
+ },
+ "csg": {
+ "english_name": "Chilean Sign Language"
+ },
+ "csf": {
+ "english_name": "Cuba Sign Language"
+ },
+ "csa": {
+ "english_name": "Chinantec, Chiltepec"
+ },
+ "csc": {
+ "english_name": "Catalan Sign Language"
+ },
+ "csb": {
+ "english_name": "Kashubian"
+ },
+ "csy": {
+ "english_name": "Chin, Siyin"
+ },
+ "csz": {
+ "english_name": "Coos"
+ },
+ "cst": {
+ "english_name": "Ohlone, Northern"
+ },
+ "csw": {
+ "english_name": "Cree, Swampy"
+ },
+ "csv": {
+ "english_name": "Chin, Sumtu"
+ },
+ "csq": {
+ "english_name": "Croatia Sign Language"
+ },
+ "rys": {
+ "english_name": "Yaeyama"
+ },
+ "css": {
+ "english_name": "Ohlone, Southern"
+ },
+ "csr": {
+ "english_name": "Costa Rican Sign Language"
+ },
+ "bkd": {
+ "english_name": "Binukid"
+ },
+ "bkf": {
+ "english_name": "Beeke"
+ },
+ "bkg": {
+ "english_name": "Buraka"
+ },
+ "bka": {
+ "english_name": "Kyak"
+ },
+ "bkc": {
+ "english_name": "Baka (Cameroon)"
+ },
+ "bkl": {
+ "english_name": "Berik"
+ },
+ "bkm": {
+ "english_name": "Kom (Cameroon)"
+ },
+ "bkn": {
+ "english_name": "Bukitan"
+ },
+ "bko": {
+ "english_name": "Kwa'"
+ },
+ "bkh": {
+ "english_name": "Bakoko"
+ },
+ "bki": {
+ "english_name": "Baki"
+ },
+ "bkj": {
+ "english_name": "Pande"
+ },
+ "bkk": {
+ "english_name": "Brokskat"
+ },
+ "bkt": {
+ "english_name": "Boloki"
+ },
+ "bku": {
+ "english_name": "Buhid"
+ },
+ "bkv": {
+ "english_name": "Bekwarra"
+ },
+ "bkw": {
+ "english_name": "Bekwel"
+ },
+ "bkp": {
+ "english_name": "Boko (Democratic Republic of Congo)"
+ },
+ "bkq": {
+ "english_name": "Bakairí"
+ },
+ "bkr": {
+ "english_name": "Bakumpai"
+ },
+ "bks": {
+ "english_name": "Sorsoganon, Northern"
+ },
+ "bkx": {
+ "english_name": "Baikeno"
+ },
+ "bky": {
+ "english_name": "Bokyi"
+ },
+ "bkz": {
+ "english_name": "Bungku"
+ },
+ "pcp": {
+ "english_name": "Pacahuara"
+ },
+ "pcw": {
+ "english_name": "Pyapun"
+ },
+ "pcj": {
+ "english_name": "Parenga"
+ },
+ "pck": {
+ "english_name": "Chin, Paite"
+ },
+ "pch": {
+ "english_name": "Pardhan"
+ },
+ "pci": {
+ "english_name": "Duruwa"
+ },
+ "pcn": {
+ "english_name": "Piti"
+ },
+ "pcl": {
+ "english_name": "Pardhi"
+ },
+ "pcm": {
+ "english_name": "Pidgin, Nigerian"
+ },
+ "pcb": {
+ "english_name": "Pear"
+ },
+ "pcc": {
+ "english_name": "Bouyei"
+ },
+ "pca": {
+ "english_name": "Popoloca, Santa Inés Ahuatempan"
+ },
+ "pcf": {
+ "english_name": "Paliyan"
+ },
+ "pcg": {
+ "english_name": "Paniya"
+ },
+ "pcd": {
+ "english_name": "Picard"
+ },
+ "pce": {
+ "english_name": "Palaung, Ruching"
+ },
+ "oks": {
+ "english_name": "Oko-Eni-Osayen"
+ },
+ "okr": {
+ "english_name": "Kirike"
+ },
+ "oku": {
+ "english_name": "Oku"
+ },
+ "okv": {
+ "english_name": "Orokaiva"
+ },
+ "uhn": {
+ "english_name": "Damal"
+ },
+ "okx": {
+ "english_name": "Okpe (Northwestern Edo)"
+ },
+ "oka": {
+ "english_name": "Okanagan"
+ },
+ "okb": {
+ "english_name": "Okobo"
+ },
+ "oke": {
+ "english_name": "Okpe (Southwestern Edo)"
+ },
+ "okd": {
+ "english_name": "Okodia"
+ },
+ "okg": {
+ "english_name": "Koko Babangk"
+ },
+ "oki": {
+ "english_name": "Okiek"
+ },
+ "okh": {
+ "english_name": "Koresh-e Rostam"
+ },
+ "okk": {
+ "english_name": "One, Kwamtim"
+ },
+ "okj": {
+ "english_name": "Oko-Juwoi"
+ },
+ "okm": {
+ "english_name": "Korean, Middle (10th-16th cent.)"
+ },
+ "okl": {
+ "english_name": "Kentish Sign Language, Old"
+ },
+ "oko": {
+ "english_name": "Korean, Old (3rd-9th cent.)"
+ },
+ "okn": {
+ "english_name": "Oki-No-Erabu"
+ },
+ "sbr": {
+ "english_name": "Sembakung Murut"
+ },
+ "sbs": {
+ "english_name": "Subiya"
+ },
+ "sbp": {
+ "english_name": "Sangu (Tanzania)"
+ },
+ "sbq": {
+ "english_name": "Sileibi"
+ },
+ "mmy": {
+ "english_name": "Migaama"
+ },
+ "mmx": {
+ "english_name": "Madak"
+ },
+ "sbt": {
+ "english_name": "Kimki"
+ },
+ "mmz": {
+ "english_name": "Mabaale"
+ },
+ "mmu": {
+ "english_name": "Mmaala"
+ },
+ "mmt": {
+ "english_name": "Malalamai"
+ },
+ "mmw": {
+ "english_name": "Emae"
+ },
+ "mmv": {
+ "english_name": "Miriti"
+ },
+ "mmq": {
+ "english_name": "Musak"
+ },
+ "mmp": {
+ "english_name": "Siawi"
+ },
+ "mmr": {
+ "english_name": "Miao, Western Xiangxi"
+ },
+ "mmm": {
+ "english_name": "Maii"
+ },
+ "mml": {
+ "english_name": "Man Met"
+ },
+ "mmo": {
+ "english_name": "Buang, Mangga"
+ },
+ "mmn": {
+ "english_name": "Mamanwa"
+ },
+ "mmi": {
+ "english_name": "Musar"
+ },
+ "mmh": {
+ "english_name": "Mehináku"
+ },
+ "mmk": {
+ "english_name": "Mukha-Dora"
+ },
+ "mmj": {
+ "english_name": "Majhwar"
+ },
+ "mme": {
+ "english_name": "Mae"
+ },
+ "mmd": {
+ "english_name": "Maonan"
+ },
+ "mmg": {
+ "english_name": "Ambrym, North"
+ },
+ "mmf": {
+ "english_name": "Mundat"
+ },
+ "mma": {
+ "english_name": "Mama"
+ },
+ "sbo": {
+ "english_name": "Sabüm"
+ },
+ "mmc": {
+ "english_name": "Mazahua, Michoacán"
+ },
+ "mmb": {
+ "english_name": "Momina"
+ },
+ "koi": {
+ "english_name": "Komi-Permyak"
+ },
+ "koh": {
+ "english_name": "Koyo"
+ },
+ "kok": {
+ "name": "Konkani (macrolanguage)",
+ "english_name": "Konkani (macrolanguage)"
+ },
+ "kol": {
+ "english_name": "Kol (Papua New Guinea)"
+ },
+ "koo": {
+ "english_name": "Konzo"
+ },
+ "koa": {
+ "english_name": "Konomala"
+ },
+ "koc": {
+ "english_name": "Kpati"
+ },
+ "koe": {
+ "english_name": "Kacipo-Balesi"
+ },
+ "kod": {
+ "english_name": "Kodi"
+ },
+ "kog": {
+ "english_name": "Cogui"
+ },
+ "kof": {
+ "english_name": "Kubi"
+ },
+ "koy": {
+ "english_name": "Koyukon"
+ },
+ "kox": {
+ "english_name": "Coxima"
+ },
+ "koz": {
+ "english_name": "Korak"
+ },
+ "koq": {
+ "english_name": "Kota (Gabon)"
+ },
+ "kop": {
+ "english_name": "Waube"
+ },
+ "kos": {
+ "english_name": "Kosraean"
+ },
+ "kou": {
+ "english_name": "Koke"
+ },
+ "kot": {
+ "english_name": "Lagwan"
+ },
+ "kow": {
+ "english_name": "Kugama"
+ },
+ "kov": {
+ "english_name": "Kudu-Camo"
+ },
+ "vnm": {
+ "english_name": "Vinmavis"
+ },
+ "vnk": {
+ "english_name": "Vano"
+ },
+ "vnp": {
+ "english_name": "Vunapu"
+ },
+ "ka": {
+ "english_name": "Georgian"
+ },
+ "kg": {
+ "english_name": "Kongo"
+ },
+ "kk": {
+ "english_name": "Kazakh"
+ },
+ "kj": {
+ "english_name": "Kuanyama"
+ },
+ "ki": {
+ "english_name": "Kikuyu"
+ },
+ "bdb": {
+ "english_name": "Basap"
+ },
+ "ko": {
+ "name": "한국어",
+ "english_name": "Korean"
+ },
+ "kn": {
+ "name": "ಕನ್ನಡ",
+ "english_name": "Kannada"
+ },
+ "km": {
+ "english_name": "Khmer, Central"
+ },
+ "kl": {
+ "english_name": "Kalaallisut"
+ },
+ "ks": {
+ "english_name": "Kashmiri"
+ },
+ "kr": {
+ "english_name": "Kanuri"
+ },
+ "kw": {
+ "english_name": "Cornish"
+ },
+ "kv": {
+ "english_name": "Komi"
+ },
+ "ku": {
+ "english_name": "Kurdish"
+ },
+ "scs": {
+ "english_name": "Slavey, North"
+ },
+ "ky": {
+ "english_name": "Kirghiz"
+ },
+ "aes": {
+ "english_name": "Alsea"
+ },
+ "ikr": {
+ "english_name": "Ikaranggal"
+ },
+ "ikp": {
+ "english_name": "Ikpeshi"
+ },
+ "ikw": {
+ "english_name": "Ikwere"
+ },
+ "ikv": {
+ "english_name": "Iku-Gora-Ankwa"
+ },
+ "ikt": {
+ "english_name": "Inuinnaqtun"
+ },
+ "ikz": {
+ "english_name": "Ikizu"
+ },
+ "ikx": {
+ "english_name": "Ik"
+ },
+ "ike": {
+ "english_name": "Inuktitut, Eastern Canadian"
+ },
+ "ikk": {
+ "english_name": "Ika"
+ },
+ "iki": {
+ "english_name": "Iko"
+ },
+ "iko": {
+ "english_name": "Olulumo-Ikom"
+ },
+ "ikl": {
+ "english_name": "Ikulu"
+ },
+ "raf": {
+ "english_name": "Meohang, Western"
+ },
+ "rad": {
+ "english_name": "Rade"
+ },
+ "rab": {
+ "english_name": "Camling"
+ },
+ "rac": {
+ "english_name": "Rasawa"
+ },
+ "raa": {
+ "english_name": "Dungmali"
+ },
+ "ran": {
+ "english_name": "Riantana"
+ },
+ "rao": {
+ "english_name": "Rao"
+ },
+ "ram": {
+ "english_name": "Canela"
+ },
+ "gaz": {
+ "english_name": "Oromo, West Central"
+ },
+ "gay": {
+ "english_name": "Gayo"
+ },
+ "gax": {
+ "english_name": "Oromo, Borana-Arsi-Guji"
+ },
+ "gaw": {
+ "english_name": "Nobonob"
+ },
+ "gau": {
+ "english_name": "Gadaba, Mudhili"
+ },
+ "gat": {
+ "english_name": "Kenati"
+ },
+ "gas": {
+ "english_name": "Garasia, Adiwasi"
+ },
+ "gar": {
+ "english_name": "Galeya"
+ },
+ "gaq": {
+ "english_name": "Gata'"
+ },
+ "gap": {
+ "english_name": "Gal"
+ },
+ "gao": {
+ "english_name": "Gants"
+ },
+ "gan": {
+ "english_name": "Chinese, Gan"
+ },
+ "gam": {
+ "english_name": "Kandawo"
+ },
+ "gal": {
+ "english_name": "Galolen"
+ },
+ "gak": {
+ "english_name": "Gamkonora"
+ },
+ "gaj": {
+ "english_name": "Gadsup"
+ },
+ "gai": {
+ "english_name": "Borei"
+ },
+ "gah": {
+ "english_name": "Alekano"
+ },
+ "gag": {
+ "english_name": "Gagauz"
+ },
+ "gaf": {
+ "english_name": "Gende"
+ },
+ "gae": {
+ "english_name": "Guarequena"
+ },
+ "gad": {
+ "english_name": "Gaddang"
+ },
+ "gac": {
+ "english_name": "Great Andamanese, Mixed"
+ },
+ "gab": {
+ "english_name": "Gabri"
+ },
+ "gaa": {
+ "english_name": "Ga"
+ },
+ "fuv": {
+ "english_name": "Fulfulde, Nigerian"
+ },
+ "rav": {
+ "english_name": "Sampang"
+ },
+ "fut": {
+ "english_name": "Futuna-Aniwa"
+ },
+ "fuu": {
+ "english_name": "Furu"
+ },
+ "fur": {
+ "english_name": "Friulian"
+ },
+ "fuq": {
+ "english_name": "Fulfulde, Central-Eastern Niger"
+ },
+ "rat": {
+ "english_name": "Razajerdi"
+ },
+ "fuy": {
+ "english_name": "Fuyug"
+ },
+ "fuf": {
+ "english_name": "Pular"
+ },
+ "fud": {
+ "english_name": "Futuna, East"
+ },
+ "fue": {
+ "english_name": "Fulfulde, Borgu"
+ },
+ "fub": {
+ "english_name": "Fulfulde, Adamawa"
+ },
+ "fuc": {
+ "english_name": "Pulaar"
+ },
+ "fun": {
+ "english_name": "Fulniô"
+ },
+ "rar": {
+ "english_name": "Rarotongan"
+ },
+ "fum": {
+ "english_name": "Fum"
+ },
+ "fuj": {
+ "english_name": "Ko"
+ },
+ "fuh": {
+ "english_name": "Fulfulde, Western Niger"
+ },
+ "fui": {
+ "english_name": "Fulfulde, Bagirmi"
+ },
+ "rap": {
+ "english_name": "Rapanui"
+ },
+ "raq": {
+ "english_name": "Saam"
+ },
+ "ewo": {
+ "english_name": "Ewondo"
+ },
+ "tqb": {
+ "english_name": "Tembé"
+ },
+ "tql": {
+ "english_name": "Lehali"
+ },
+ "raz": {
+ "english_name": "Rahambuu"
+ },
+ "tqn": {
+ "english_name": "Tenino"
+ },
+ "tqo": {
+ "english_name": "Toaripi"
+ },
+ "tqt": {
+ "english_name": "Totonac, Western"
+ },
+ "tqu": {
+ "english_name": "Touo"
+ },
+ "tqw": {
+ "english_name": "Tonkawa"
+ },
+ "tqp": {
+ "english_name": "Tomoip"
+ },
+ "rax": {
+ "english_name": "Rang"
+ },
+ "tqr": {
+ "english_name": "Torona"
+ },
+ "ray": {
+ "english_name": "Rapa"
+ },
+ "dgb": {
+ "english_name": "Dogon, Bunoge"
+ },
+ "dgc": {
+ "english_name": "Agta, Casiguran Dumagat"
+ },
+ "sya": {
+ "english_name": "Siang"
+ },
+ "dga": {
+ "english_name": "Dagaare, Southern"
+ },
+ "dgg": {
+ "english_name": "Doga"
+ },
+ "dgd": {
+ "english_name": "Dagaari Dioula"
+ },
+ "dge": {
+ "english_name": "Degenan"
+ },
+ "syk": {
+ "english_name": "Sukur"
+ },
+ "dgk": {
+ "english_name": "Dagba"
+ },
+ "dgh": {
+ "english_name": "Dghwede"
+ },
+ "dgi": {
+ "english_name": "Dagara, Northern"
+ },
+ "dgn": {
+ "english_name": "Dagoman"
+ },
+ "dgo": {
+ "english_name": "Dogri (individual language)"
+ },
+ "dgl": {
+ "english_name": "Andaandi"
+ },
+ "syl": {
+ "english_name": "Sylheti"
+ },
+ "dgr": {
+ "english_name": "Dogrib"
+ },
+ "dgs": {
+ "english_name": "Dogoso"
+ },
+ "syw": {
+ "english_name": "Kagate"
+ },
+ "dgw": {
+ "english_name": "Daungwurrung"
+ },
+ "dgt": {
+ "english_name": "Ndra'ngith"
+ },
+ "dgu": {
+ "english_name": "Degaru"
+ },
+ "dgz": {
+ "english_name": "Daga"
+ },
+ "dgx": {
+ "english_name": "Doghoro"
+ },
+ "jbw": {
+ "english_name": "Yawijibaya"
+ },
+ "jbu": {
+ "english_name": "Jukun Takum"
+ },
+ "jbt": {
+ "english_name": "Jabutí"
+ },
+ "jbr": {
+ "english_name": "Jofotek-Bromnya"
+ },
+ "jbe": {
+ "english_name": "Judeo-Berber"
+ },
+ "jbo": {
+ "english_name": "Lojban"
+ },
+ "jbn": {
+ "english_name": "Nafusi"
+ },
+ "jbk": {
+ "english_name": "Barikewa"
+ },
+ "jbj": {
+ "english_name": "Arandai"
+ },
+ "jbi": {
+ "english_name": "Badjiri"
+ },
+ "ldb": {
+ "english_name": "Dũya"
+ },
+ "lda": {
+ "english_name": "Kla-Dan"
+ },
+ "ldg": {
+ "english_name": "Lenyima"
+ },
+ "ldd": {
+ "english_name": "Luri"
+ },
+ "ldk": {
+ "english_name": "Leelau"
+ },
+ "ldj": {
+ "english_name": "Lemoro"
+ },
+ "ldi": {
+ "english_name": "Laari"
+ },
+ "ldh": {
+ "english_name": "Lamja-Dengsa-Tola"
+ },
+ "ldo": {
+ "english_name": "Loo"
+ },
+ "ldn": {
+ "english_name": "Láadan"
+ },
+ "ldm": {
+ "english_name": "Landoma"
+ },
+ "ldl": {
+ "english_name": "Kaan"
+ },
+ "ldq": {
+ "english_name": "Lufu"
+ },
+ "ldp": {
+ "english_name": "Tso"
+ },
+ "cuw": {
+ "english_name": "Chukwa"
+ },
+ "cuv": {
+ "english_name": "Cuvok"
+ },
+ "cuu": {
+ "english_name": "Tai Ya"
+ },
+ "cut": {
+ "english_name": "Cuicatec, Teutila"
+ },
+ "cur": {
+ "english_name": "Chhulung"
+ },
+ "cuq": {
+ "english_name": "Cun"
+ },
+ "cup": {
+ "english_name": "Cupeño"
+ },
+ "cux": {
+ "english_name": "Cuicatec, Tepeuxila"
+ },
+ "cug": {
+ "english_name": "Cung"
+ },
+ "rga": {
+ "english_name": "Roria"
+ },
+ "cuc": {
+ "english_name": "Chinantec, Usila"
+ },
+ "cub": {
+ "english_name": "Cubeo"
+ },
+ "cua": {
+ "english_name": "Cua"
+ },
+ "cuo": {
+ "english_name": "Cumanagoto"
+ },
+ "cum": {
+ "english_name": "Cumeral"
+ },
+ "cul": {
+ "english_name": "Culina"
+ },
+ "cuk": {
+ "english_name": "Kuna, San Blas"
+ },
+ "cuj": {
+ "english_name": "Mashco Piro"
+ },
+ "cui": {
+ "english_name": "Cuiba"
+ },
+ "cuh": {
+ "english_name": "Chuka"
+ },
+ "bin": {
+ "english_name": "Bini"
+ },
+ "bio": {
+ "english_name": "Nai"
+ },
+ "bil": {
+ "english_name": "Bile"
+ },
+ "bim": {
+ "english_name": "Bimoba"
+ },
+ "bij": {
+ "english_name": "Vaghat-Ya-Bijim-Legeri"
+ },
+ "bik": {
+ "english_name": "Bikol"
+ },
+ "qwh": {
+ "english_name": "Quechua, Huaylas Ancash"
+ },
+ "bif": {
+ "english_name": "Biafada"
+ },
+ "big": {
+ "english_name": "Biangai"
+ },
+ "bid": {
+ "english_name": "Bidiyo"
+ },
+ "bie": {
+ "english_name": "Bepour"
+ },
+ "bib": {
+ "english_name": "Bissa"
+ },
+ "bic": {
+ "english_name": "Bikaru"
+ },
+ "qwa": {
+ "english_name": "Quechua, Corongo Ancash"
+ },
+ "bia": {
+ "english_name": "Badimaya"
+ },
+ "biz": {
+ "english_name": "Baloi"
+ },
+ "bix": {
+ "english_name": "Bijori"
+ },
+ "biy": {
+ "english_name": "Birhor"
+ },
+ "biv": {
+ "english_name": "Birifor, Southern"
+ },
+ "biw": {
+ "english_name": "Kol (Cameroon)"
+ },
+ "bit": {
+ "english_name": "Berinomo"
+ },
+ "biu": {
+ "english_name": "Biete"
+ },
+ "bir": {
+ "english_name": "Bisorio"
+ },
+ "bip": {
+ "english_name": "Bila"
+ },
+ "biq": {
+ "english_name": "Bipi"
+ },
+ "qxs": {
+ "english_name": "Qiang, Southern"
+ },
+ "pxm": {
+ "english_name": "Mixe, Quetzaltepec"
+ },
+ "pex": {
+ "english_name": "Petats"
+ },
+ "pey": {
+ "english_name": "Petjo"
+ },
+ "pez": {
+ "english_name": "Penan, Eastern"
+ },
+ "pev": {
+ "english_name": "Pémono"
+ },
+ "pep": {
+ "english_name": "Kunja"
+ },
+ "peq": {
+ "english_name": "Pomo, Southern"
+ },
+ "pes": {
+ "english_name": "Persian, Iranian"
+ },
+ "pel": {
+ "english_name": "Pekal"
+ },
+ "pem": {
+ "english_name": "Phende"
+ },
+ "peo": {
+ "english_name": "Persian, Old (ca. 600-400 B.C.)"
+ },
+ "peh": {
+ "english_name": "Bonan"
+ },
+ "pei": {
+ "english_name": "Chichimeca-Jonaz"
+ },
+ "pej": {
+ "english_name": "Pomo, Northern"
+ },
+ "pek": {
+ "english_name": "Penchal"
+ },
+ "ped": {
+ "english_name": "Mala (Papua New Guinea)"
+ },
+ "pee": {
+ "english_name": "Taje"
+ },
+ "pef": {
+ "english_name": "Pomo, Northeastern"
+ },
+ "peg": {
+ "english_name": "Pengo"
+ },
+ "pea": {
+ "english_name": "Indonesian, Peranakan"
+ },
+ "peb": {
+ "english_name": "Pomo, Eastern"
+ },
+ "ufi": {
+ "english_name": "Ufim"
+ },
+ "qyp": {
+ "english_name": "Quiripi"
+ },
+ "qxw": {
+ "english_name": "Quechua, Jauja Wanca"
+ },
+ "nsh": {
+ "english_name": "Ngoshie"
+ },
+ "nsi": {
+ "english_name": "Nigerian Sign Language"
+ },
+ "nsk": {
+ "english_name": "Naskapi"
+ },
+ "nsl": {
+ "english_name": "Norwegian Sign Language"
+ },
+ "nsm": {
+ "english_name": "Naga, Sumi"
+ },
+ "nsn": {
+ "english_name": "Nehan"
+ },
+ "nso": {
+ "name": "Pedi",
+ "english_name": "Pedi"
+ },
+ "nsa": {
+ "english_name": "Naga, Sangtam"
+ },
+ "nsc": {
+ "english_name": "Nshi"
+ },
+ "nsd": {
+ "english_name": "Nisu, Southern"
+ },
+ "nse": {
+ "english_name": "Nsenga"
+ },
+ "nsf": {
+ "english_name": "Nisu, Northwestern"
+ },
+ "nsg": {
+ "english_name": "Ngasa"
+ },
+ "nsx": {
+ "english_name": "Nsongo"
+ },
+ "nsy": {
+ "english_name": "Nasal"
+ },
+ "nsz": {
+ "english_name": "Nisenan"
+ },
+ "nsp": {
+ "english_name": "Nepalese Sign Language"
+ },
+ "nsq": {
+ "english_name": "Miwok, Northern Sierra"
+ },
+ "nsr": {
+ "english_name": "Maritime Sign Language"
+ },
+ "nss": {
+ "english_name": "Nali"
+ },
+ "nst": {
+ "english_name": "Naga, Tase"
+ },
+ "nsu": {
+ "english_name": "Nahuatl, Sierra Negra"
+ },
+ "nsv": {
+ "english_name": "Nisu, Southwestern"
+ },
+ "nsw": {
+ "english_name": "Navut"
+ },
+ "mkg": {
+ "english_name": "Mak (China)"
+ },
+ "mkf": {
+ "english_name": "Miya"
+ },
+ "mke": {
+ "english_name": "Mawchi"
+ },
+ "mkc": {
+ "english_name": "Siliput"
+ },
+ "mkb": {
+ "english_name": "Mal Paharia"
+ },
+ "mka": {
+ "english_name": "Mbre"
+ },
+ "mko": {
+ "english_name": "Mingang Doso"
+ },
+ "mkn": {
+ "english_name": "Malay, Kupang"
+ },
+ "mkm": {
+ "english_name": "Moklen"
+ },
+ "mkl": {
+ "english_name": "Mokole"
+ },
+ "mkk": {
+ "english_name": "Byep"
+ },
+ "mkj": {
+ "english_name": "Mokilese"
+ },
+ "mki": {
+ "english_name": "Dhatki"
+ },
+ "mkw": {
+ "english_name": "Kituba (Congo)"
+ },
+ "mkv": {
+ "english_name": "Mafea"
+ },
+ "mku": {
+ "english_name": "Maninka, Konyanka"
+ },
+ "mkt": {
+ "english_name": "Vamale"
+ },
+ "mks": {
+ "english_name": "Mixtec, Silacayoapan"
+ },
+ "mkr": {
+ "english_name": "Malas"
+ },
+ "mkq": {
+ "english_name": "Miwok, Bay"
+ },
+ "mkp": {
+ "english_name": "Moikodi"
+ },
+ "mkz": {
+ "english_name": "Makasae"
+ },
+ "mky": {
+ "english_name": "Makian, East"
+ },
+ "mkx": {
+ "english_name": "Manobo, Kinamiging"
+ },
+ "sdt": {
+ "english_name": "Shuadit"
+ },
+ "sdu": {
+ "english_name": "Sarudu"
+ },
+ "sdp": {
+ "english_name": "Sherdukpen"
+ },
+ "sdr": {
+ "english_name": "Sadri, Oraon"
+ },
+ "sds": {
+ "english_name": "Sened"
+ },
+ "sdx": {
+ "english_name": "Melanau, Sibu"
+ },
+ "sdz": {
+ "english_name": "Sallands"
+ },
+ "sde": {
+ "english_name": "Surubu"
+ },
+ "sdf": {
+ "english_name": "Sarli"
+ },
+ "sdg": {
+ "english_name": "Savi"
+ },
+ "sda": {
+ "english_name": "Toraja-Sa'dan"
+ },
+ "sdb": {
+ "english_name": "Shabak"
+ },
+ "sdc": {
+ "english_name": "Sardinian, Sassarese"
+ },
+ "sdl": {
+ "english_name": "Saudi Arabian Sign Language"
+ },
+ "sdm": {
+ "english_name": "Semandang"
+ },
+ "sdn": {
+ "english_name": "Sardinian, Gallurese"
+ },
+ "sdo": {
+ "english_name": "Bidayuh, Bukar-Sadung"
+ },
+ "sdh": {
+ "english_name": "Kurdish, Southern"
+ },
+ "sdj": {
+ "english_name": "Suundi"
+ },
+ "sdk": {
+ "english_name": "Sos Kundi"
+ },
+ "zhw": {
+ "english_name": "Zhoa"
+ },
+ "zhb": {
+ "english_name": "Zhaba"
+ },
+ "zhd": {
+ "english_name": "Zhuang, Dai"
+ },
+ "zhi": {
+ "english_name": "Zhire"
+ },
+ "zhn": {
+ "english_name": "Zhuang, Nong"
+ },
+ "bcg": {
+ "english_name": "Baga Binari"
+ },
+ "lyg": {
+ "english_name": "Lyngngam"
+ },
+ "lya": {
+ "english_name": "Layakha"
+ },
+ "tvd": {
+ "english_name": "Tsuvadi"
+ },
+ "lyn": {
+ "english_name": "Luyana"
+ },
+ "kqs": {
+ "english_name": "Kissi, Northern"
+ },
+ "kqr": {
+ "english_name": "Kimaragang"
+ },
+ "kqq": {
+ "english_name": "Krenak"
+ },
+ "kqp": {
+ "english_name": "Kimré"
+ },
+ "kqw": {
+ "english_name": "Kandas"
+ },
+ "kqv": {
+ "english_name": "Okolod"
+ },
+ "kqu": {
+ "english_name": "Seroa"
+ },
+ "kqt": {
+ "english_name": "Kadazan, Klias River"
+ },
+ "kqz": {
+ "english_name": "Korana"
+ },
+ "kqy": {
+ "english_name": "Koorete"
+ },
+ "kqx": {
+ "english_name": "Mser"
+ },
+ "kqc": {
+ "english_name": "Doromu-Koki"
+ },
+ "kqb": {
+ "english_name": "Kovai"
+ },
+ "kqa": {
+ "english_name": "Mum"
+ },
+ "kqg": {
+ "english_name": "Khe"
+ },
+ "kqf": {
+ "english_name": "Kakabai"
+ },
+ "kqe": {
+ "english_name": "Kalagan"
+ },
+ "kqd": {
+ "english_name": "Koy Sanjaq Surat"
+ },
+ "kqk": {
+ "english_name": "Gbe, Kotafon"
+ },
+ "kqj": {
+ "english_name": "Koromira"
+ },
+ "kqi": {
+ "english_name": "Koitabu"
+ },
+ "kqh": {
+ "english_name": "Kisankasa"
+ },
+ "kqo": {
+ "english_name": "Krahn, Eastern"
+ },
+ "kqn": {
+ "english_name": "Kaonde"
+ },
+ "kqm": {
+ "english_name": "Khisa"
+ },
+ "kql": {
+ "english_name": "Kyenele"
+ },
+ "xby": {
+ "english_name": "Batyala"
+ },
+ "xbx": {
+ "english_name": "Kabixí"
+ },
+ "bcb": {
+ "english_name": "Bainouk-Samik"
+ },
+ "xbw": {
+ "english_name": "Kambiwá"
+ },
+ "xbp": {
+ "english_name": "Bibbulman"
+ },
+ "xbr": {
+ "english_name": "Kambera"
+ },
+ "xbm": {
+ "english_name": "Breton, Middle"
+ },
+ "xbo": {
+ "english_name": "Bolgarian"
+ },
+ "xbn": {
+ "english_name": "Kenaboi"
+ },
+ "xbi": {
+ "english_name": "Kombio"
+ },
+ "xbj": {
+ "english_name": "Birrpayi"
+ },
+ "xbe": {
+ "english_name": "Bigambal"
+ },
+ "xbd": {
+ "english_name": "Bindal"
+ },
+ "xbg": {
+ "english_name": "Bunganditj"
+ },
+ "xba": {
+ "english_name": "Kamba (Brazil)"
+ },
+ "xbc": {
+ "english_name": "Bactrian"
+ },
+ "xbb": {
+ "english_name": "Burdekin, Lower"
+ },
+ "bcc": {
+ "english_name": "Balochi, Southern"
+ },
+ "tdi": {
+ "english_name": "Tomadino"
+ },
+ "tdh": {
+ "english_name": "Thulung"
+ },
+ "vlp": {
+ "english_name": "Valpei"
+ },
+ "vls": {
+ "english_name": "Vlaams"
+ },
+ "tdo": {
+ "english_name": "Teme"
+ },
+ "haa": {
+ "english_name": "Han"
+ },
+ "chb": {
+ "english_name": "Chibcha"
+ },
+ "hab": {
+ "english_name": "Hanoi Sign Language"
+ },
+ "chd": {
+ "english_name": "Chontal, Highland Oaxaca"
+ },
+ "chf": {
+ "english_name": "Chontal, Tabasco"
+ },
+ "chg": {
+ "english_name": "Chagatai"
+ },
+ "chh": {
+ "english_name": "Chinook"
+ },
+ "chj": {
+ "english_name": "Chinantec, Ojitlán"
+ },
+ "chk": {
+ "english_name": "Chuukese"
+ },
+ "chl": {
+ "english_name": "Cahuilla"
+ },
+ "chm": {
+ "english_name": "Mari (Russia)"
+ },
+ "chn": {
+ "english_name": "Chinook jargon"
+ },
+ "cho": {
+ "english_name": "Choctaw"
+ },
+ "chp": {
+ "english_name": "Chipewyan"
+ },
+ "chq": {
+ "english_name": "Chinantec, Quiotepec"
+ },
+ "chr": {
+ "english_name": "Cherokee"
+ },
+ "cht": {
+ "english_name": "Cholón"
+ },
+ "chw": {
+ "english_name": "Chuwabu"
+ },
+ "chx": {
+ "english_name": "Chantyal"
+ },
+ "chy": {
+ "english_name": "Cheyenne"
+ },
+ "chz": {
+ "english_name": "Chinantec, Ozumacín"
+ },
+ "iin": {
+ "english_name": "Thiin"
+ },
+ "tdg": {
+ "english_name": "Tamang, Western"
+ },
+ "tde": {
+ "english_name": "Dogon, Tiranige Diga"
+ },
+ "afn": {
+ "english_name": "Defaka"
+ },
+ "afo": {
+ "english_name": "Eloyi"
+ },
+ "afh": {
+ "english_name": "Afrihili"
+ },
+ "afi": {
+ "english_name": "Akrukay"
+ },
+ "afk": {
+ "english_name": "Nanubae"
+ },
+ "afd": {
+ "english_name": "Andai"
+ },
+ "afe": {
+ "english_name": "Putukwam"
+ },
+ "afg": {
+ "english_name": "Afghan Sign Language"
+ },
+ "gcl": {
+ "english_name": "Creole English, Grenadian"
+ },
+ "afb": {
+ "english_name": "Arabic, Gulf"
+ },
+ "gcn": {
+ "english_name": "Gaina"
+ },
+ "gcr": {
+ "english_name": "Creole French, Guianese"
+ },
+ "gct": {
+ "english_name": "German, Colonia Tovar"
+ },
+ "afz": {
+ "english_name": "Obokuitai"
+ },
+ "aft": {
+ "english_name": "Afitti"
+ },
+ "afu": {
+ "english_name": "Awutu"
+ },
+ "afp": {
+ "english_name": "Tapei"
+ },
+ "afs": {
+ "english_name": "Creole, Afro-Seminole"
+ },
+ "sis": {
+ "english_name": "Siuslaw"
+ },
+ "sir": {
+ "english_name": "Siri"
+ },
+ "siv": {
+ "english_name": "Sumariup"
+ },
+ "lg": {
+ "english_name": "Ganda"
+ },
+ "tsl": {
+ "english_name": "Ts'ün-Lao"
+ },
+ "tsm": {
+ "english_name": "Turkish Sign Language"
+ },
+ "lb": {
+ "english_name": "Luxembourgish"
+ },
+ "tsk": {
+ "english_name": "Tseku"
+ },
+ "tsh": {
+ "english_name": "Tsuvan"
+ },
+ "la": {
+ "english_name": "Latin"
+ },
+ "ln": {
+ "english_name": "Lingala"
+ },
+ "lo": {
+ "english_name": "Lao"
+ },
+ "tsd": {
+ "english_name": "Tsakonian"
+ },
+ "tse": {
+ "english_name": "Tunisian Sign Language"
+ },
+ "tsb": {
+ "english_name": "Tsamai"
+ },
+ "tsc": {
+ "english_name": "Tswa"
+ },
+ "li": {
+ "english_name": "Limburgan"
+ },
+ "lv": {
+ "name": "Latviešu",
+ "english_name": "Latvian"
+ },
+ "lt": {
+ "name": "Lietuvių",
+ "english_name": "Lithuanian"
+ },
+ "lu": {
+ "english_name": "Luba-Katanga"
+ },
+ "tsz": {
+ "english_name": "Purepecha"
+ },
+ "tdx": {
+ "english_name": "Malagasy, Tandroy-Mahafaly"
+ },
+ "tsy": {
+ "english_name": "Tebul Sign Language"
+ },
+ "tsv": {
+ "english_name": "Tsogo"
+ },
+ "tsw": {
+ "english_name": "Tsishingini"
+ },
+ "tst": {
+ "english_name": "Songway Kiini, Tondi"
+ },
+ "tsu": {
+ "english_name": "Tsou"
+ },
+ "tsr": {
+ "english_name": "Akei"
+ },
+ "tss": {
+ "english_name": "Taiwan Sign Language"
+ },
+ "tsp": {
+ "english_name": "Toussian, Northern"
+ },
+ "tsq": {
+ "english_name": "Thai Sign Language"
+ },
+ "dad": {
+ "english_name": "Marik"
+ },
+ "dae": {
+ "english_name": "Duupa"
+ },
+ "dag": {
+ "english_name": "Dagbani"
+ },
+ "daa": {
+ "english_name": "Dangaléat"
+ },
+ "dac": {
+ "english_name": "Dambi"
+ },
+ "dal": {
+ "english_name": "Dahalo"
+ },
+ "dam": {
+ "english_name": "Damakawa"
+ },
+ "dao": {
+ "english_name": "Chin, Daai"
+ },
+ "dah": {
+ "english_name": "Gwahatike"
+ },
+ "dai": {
+ "english_name": "Day"
+ },
+ "daj": {
+ "english_name": "Daju, Dar Fur"
+ },
+ "dak": {
+ "english_name": "Dakota"
+ },
+ "dau": {
+ "english_name": "Daju, Dar Sila"
+ },
+ "dav": {
+ "english_name": "Taita"
+ },
+ "daw": {
+ "english_name": "Davawenyo"
+ },
+ "daq": {
+ "english_name": "Maria, Dandami"
+ },
+ "dar": {
+ "english_name": "Dargwa"
+ },
+ "das": {
+ "english_name": "Daho-Doo"
+ },
+ "dax": {
+ "english_name": "Dayi"
+ },
+ "daz": {
+ "english_name": "Dao"
+ },
+ "lfa": {
+ "english_name": "Lefa"
+ },
+ "lfn": {
+ "english_name": "Lingua Franca Nova"
+ },
+ "rey": {
+ "english_name": "Reyesano"
+ },
+ "rer": {
+ "english_name": "Rer Bare"
+ },
+ "res": {
+ "english_name": "Reshe"
+ },
+ "cwt": {
+ "english_name": "Kuwaataay"
+ },
+ "ret": {
+ "english_name": "Retta"
+ },
+ "rej": {
+ "english_name": "Rejang"
+ },
+ "rei": {
+ "english_name": "Reli"
+ },
+ "ren": {
+ "english_name": "Rengao"
+ },
+ "rel": {
+ "english_name": "Rendille"
+ },
+ "rem": {
+ "english_name": "Remo"
+ },
+ "cwa": {
+ "english_name": "Kabwa"
+ },
+ "cwb": {
+ "english_name": "Maindo"
+ },
+ "cwe": {
+ "english_name": "Kwere"
+ },
+ "cwd": {
+ "english_name": "Cree, Woods"
+ },
+ "cwg": {
+ "english_name": "Chewong"
+ },
+ "ree": {
+ "english_name": "Kayan, Rejang"
+ },
+ "bwp": {
+ "english_name": "Mandobo Bawah"
+ },
+ "bwq": {
+ "english_name": "Bobo Madaré, Southern"
+ },
+ "bwr": {
+ "english_name": "Bura-Pabir"
+ },
+ "bws": {
+ "english_name": "Bomboma"
+ },
+ "bwt": {
+ "english_name": "Bafaw-Balong"
+ },
+ "bwu": {
+ "english_name": "Buli (Ghana)"
+ },
+ "quw": {
+ "english_name": "Quichua, Tena Lowland"
+ },
+ "bww": {
+ "english_name": "Bwa"
+ },
+ "bwx": {
+ "english_name": "Bunu, Bu-Nao"
+ },
+ "bwy": {
+ "english_name": "Bwamu, Cwi"
+ },
+ "bwz": {
+ "english_name": "Bwisi"
+ },
+ "quz": {
+ "english_name": "Quechua, Cusco"
+ },
+ "tds": {
+ "english_name": "Doutai"
+ },
+ "qua": {
+ "english_name": "Quapaw"
+ },
+ "bwa": {
+ "english_name": "Bwatoo"
+ },
+ "bwb": {
+ "english_name": "Namosi-Naitasiri-Serua"
+ },
+ "bwc": {
+ "english_name": "Bwile"
+ },
+ "bwd": {
+ "english_name": "Bwaidoka"
+ },
+ "bwe": {
+ "english_name": "Karen, Bwe"
+ },
+ "bwf": {
+ "english_name": "Boselewa"
+ },
+ "bwg": {
+ "english_name": "Barwe"
+ },
+ "bwh": {
+ "english_name": "Bishuo"
+ },
+ "bwi": {
+ "english_name": "Baniwa"
+ },
+ "bwj": {
+ "english_name": "Bwamu, Láá Láá"
+ },
+ "bwk": {
+ "english_name": "Bauwaki"
+ },
+ "bwl": {
+ "english_name": "Bwela"
+ },
+ "bwm": {
+ "english_name": "Biwat"
+ },
+ "bwn": {
+ "english_name": "Bunu, Wunai"
+ },
+ "bwo": {
+ "english_name": "Boro (Ethiopia)"
+ },
+ "pgg": {
+ "english_name": "Pangwali"
+ },
+ "pga": {
+ "english_name": "Creole Arabic, Sudanese"
+ },
+ "pgn": {
+ "english_name": "Paelignian"
+ },
+ "pgl": {
+ "english_name": "Irish, Primitive"
+ },
+ "pgk": {
+ "english_name": "Rerep"
+ },
+ "pgi": {
+ "english_name": "Pagi"
+ },
+ "pgu": {
+ "english_name": "Pagu"
+ },
+ "pgs": {
+ "english_name": "Pangseng"
+ },
+ "udu": {
+ "english_name": "Uduk"
+ },
+ "ogu": {
+ "english_name": "Ogbronuagum"
+ },
+ "ogo": {
+ "english_name": "Khana"
+ },
+ "uda": {
+ "english_name": "Uda"
+ },
+ "udg": {
+ "english_name": "Muduga"
+ },
+ "ude": {
+ "english_name": "Udihe"
+ },
+ "oge": {
+ "english_name": "Georgian, Old"
+ },
+ "ogg": {
+ "english_name": "Ogbogolo"
+ },
+ "udi": {
+ "english_name": "Udi"
+ },
+ "ogc": {
+ "english_name": "Ogbah"
+ },
+ "ogb": {
+ "english_name": "Ogbia"
+ },
+ "hav": {
+ "english_name": "Havu"
+ },
+ "nqq": {
+ "english_name": "Naga, Kyan-Karyaw"
+ },
+ "nqy": {
+ "english_name": "Naga, Akyaung Ari"
+ },
+ "nqg": {
+ "english_name": "Nago, Southern"
+ },
+ "nqk": {
+ "english_name": "Ede Nago, Kura"
+ },
+ "nqn": {
+ "english_name": "Nen"
+ },
+ "nqo": {
+ "english_name": "N'Ko"
+ },
+ "nqm": {
+ "english_name": "Ndom"
+ },
+ "mii": {
+ "english_name": "Mixtec, Chigmecatitlán"
+ },
+ "mih": {
+ "english_name": "Mixtec, Chayuco"
+ },
+ "mik": {
+ "english_name": "Mikasuki"
+ },
+ "mij": {
+ "english_name": "Abar"
+ },
+ "mim": {
+ "english_name": "Mixtec, Alacatlatzala"
+ },
+ "mil": {
+ "english_name": "Mixtec, Peñoles"
+ },
+ "mio": {
+ "english_name": "Mixtec, Pinotepa Nacional"
+ },
+ "min": {
+ "english_name": "Minangkabau"
+ },
+ "mia": {
+ "english_name": "Miami"
+ },
+ "mic": {
+ "english_name": "Mi'kmaq"
+ },
+ "mib": {
+ "english_name": "Mixtec, Atatláhuca"
+ },
+ "mie": {
+ "english_name": "Mixtec, Ocotepec"
+ },
+ "mid": {
+ "english_name": "Mandaic"
+ },
+ "mig": {
+ "english_name": "Mixtec, San Miguel El Grande"
+ },
+ "mif": {
+ "english_name": "Mofu-Gudur"
+ },
+ "miy": {
+ "english_name": "Mixtec, Ayutla"
+ },
+ "mix": {
+ "english_name": "Mixtec, Mixtepec"
+ },
+ "miz": {
+ "english_name": "Mixtec, Coatzospan"
+ },
+ "miq": {
+ "english_name": "Mískito"
+ },
+ "mip": {
+ "english_name": "Mixtec, Apasco-Apoala"
+ },
+ "mis": {
+ "english_name": "Uncoded languages"
+ },
+ "mir": {
+ "english_name": "Mixe, Isthmus"
+ },
+ "miu": {
+ "english_name": "Mixtec, Cacaloxtepec"
+ },
+ "mit": {
+ "english_name": "Mixtec, Southern Puebla"
+ },
+ "miw": {
+ "english_name": "Akoye"
+ },
+ "sfw": {
+ "english_name": "Sehwi"
+ },
+ "sfs": {
+ "english_name": "South African Sign Language"
+ },
+ "sfm": {
+ "english_name": "Miao, Small Flowery"
+ },
+ "sfe": {
+ "english_name": "Subanen, Eastern"
+ },
+ "sfb": {
+ "english_name": "Langue des signes de Belgique Francophone"
+ },
+ "ksu": {
+ "english_name": "Khamyang"
+ },
+ "kst": {
+ "english_name": "Winyé"
+ },
+ "ksw": {
+ "english_name": "Karen, S'gaw"
+ },
+ "ksv": {
+ "english_name": "Kusu"
+ },
+ "ksq": {
+ "english_name": "Kwaami"
+ },
+ "ksp": {
+ "english_name": "Kaba"
+ },
+ "kss": {
+ "english_name": "Kisi, Southern"
+ },
+ "ksr": {
+ "english_name": "Borong"
+ },
+ "ksy": {
+ "english_name": "Kharia Thar"
+ },
+ "ksx": {
+ "english_name": "Kedang"
+ },
+ "ksz": {
+ "english_name": "Kodaku"
+ },
+ "kse": {
+ "english_name": "Kuni"
+ },
+ "ksd": {
+ "english_name": "Kuanua"
+ },
+ "ksg": {
+ "english_name": "Kusaghe"
+ },
+ "ksf": {
+ "english_name": "Bafia"
+ },
+ "ksa": {
+ "english_name": "Shuwa-Zamani"
+ },
+ "ksc": {
+ "english_name": "Kalinga, Southern"
+ },
+ "ksb": {
+ "english_name": "Shambala"
+ },
+ "ksm": {
+ "english_name": "Kumba"
+ },
+ "ksl": {
+ "english_name": "Kumalu"
+ },
+ "kso": {
+ "english_name": "Kofa"
+ },
+ "ksn": {
+ "english_name": "Kasiguranin"
+ },
+ "ksi": {
+ "english_name": "Krisa"
+ },
+ "ksh": {
+ "english_name": "Kölsch"
+ },
+ "ksk": {
+ "english_name": "Kansa"
+ },
+ "ksj": {
+ "english_name": "Uare"
+ },
+ "xdc": {
+ "english_name": "Dacian"
+ },
+ "xda": {
+ "english_name": "Darkinyung"
+ },
+ "xdm": {
+ "english_name": "Edomite"
+ },
+ "xdk": {
+ "english_name": "Dharuk"
+ },
+ "xdy": {
+ "english_name": "Dayak, Malayic"
+ },
+ "vrs": {
+ "english_name": "Varisi"
+ },
+ "vrt": {
+ "english_name": "Burmbar"
+ },
+ "vra": {
+ "english_name": "Vera'a"
+ },
+ "vro": {
+ "english_name": "Võro"
+ },
+ "ilg": {
+ "english_name": "Garig-Ilgar"
+ },
+ "ilb": {
+ "english_name": "Ila"
+ },
+ "yso": {
+ "english_name": "Nisi (China)"
+ },
+ "ysn": {
+ "english_name": "Sani"
+ },
+ "ysl": {
+ "english_name": "Yugoslavian Sign Language"
+ },
+ "ysc": {
+ "english_name": "Yassic"
+ },
+ "ila": {
+ "english_name": "Ile Ape"
+ },
+ "ysg": {
+ "english_name": "Sonaga"
+ },
+ "uis": {
+ "english_name": "Uisai"
+ },
+ "ysd": {
+ "english_name": "Samatao"
+ },
+ "ysy": {
+ "english_name": "Sanie"
+ },
+ "ilo": {
+ "english_name": "Iloko"
+ },
+ "yss": {
+ "english_name": "Yessan-Mayo"
+ },
+ "ysr": {
+ "english_name": "Yupik, Sirenik"
+ },
+ "ysp": {
+ "english_name": "Lolopo, Southern"
+ },
+ "uiv": {
+ "english_name": "Iyive"
+ },
+ "ay": {
+ "english_name": "Aymara"
+ },
+ "coa": {
+ "english_name": "Malay, Cocos Islands"
+ },
+ "cjh": {
+ "english_name": "Chehalis, Upper"
+ },
+ "cji": {
+ "english_name": "Chamalal"
+ },
+ "cjn": {
+ "english_name": "Chenapian"
+ },
+ "cjo": {
+ "english_name": "Ashéninka Pajonal"
+ },
+ "cjm": {
+ "english_name": "Cham, Eastern"
+ },
+ "cja": {
+ "english_name": "Cham, Western"
+ },
+ "cje": {
+ "english_name": "Chru"
+ },
+ "ilu": {
+ "english_name": "Ili'uun"
+ },
+ "cjs": {
+ "english_name": "Shor"
+ },
+ "cjp": {
+ "english_name": "Cabécar"
+ },
+ "cjv": {
+ "english_name": "Chuave"
+ },
+ "ils": {
+ "english_name": "International Sign"
+ },
+ "iow": {
+ "english_name": "Iowa-Oto"
+ },
+ "iou": {
+ "english_name": "Tuma-Irumu"
+ },
+ "ior": {
+ "english_name": "Inor"
+ },
+ "wyr": {
+ "english_name": "Wayoró"
+ },
+ "wyy": {
+ "english_name": "Fijian, Western"
+ },
+ "wyb": {
+ "english_name": "Wangaaybuwan-Ngiyambaa"
+ },
+ "wya": {
+ "english_name": "Wyandot"
+ },
+ "wym": {
+ "english_name": "Wymysorys"
+ },
+ "qvh": {
+ "english_name": "Quechua, Huamalíes-Dos de Mayo Huánuco"
+ },
+ "wyi": {
+ "english_name": "Woiwurrung"
+ },
+ "adw": {
+ "english_name": "Amundava"
+ },
+ "adt": {
+ "english_name": "Adnyamathanha"
+ },
+ "gmh": {
+ "english_name": "German, Middle High (ca. 1050-1500)"
+ },
+ "adr": {
+ "english_name": "Adonara"
+ },
+ "gmn": {
+ "english_name": "Gimnime"
+ },
+ "gmm": {
+ "english_name": "Gbaya-Mbodomo"
+ },
+ "gml": {
+ "english_name": "German, Middle Low"
+ },
+ "gmb": {
+ "english_name": "Gula'alaa"
+ },
+ "gma": {
+ "english_name": "Gambera"
+ },
+ "adz": {
+ "english_name": "Adzera"
+ },
+ "adx": {
+ "english_name": "Tibetan, Amdo"
+ },
+ "gmd": {
+ "english_name": "Mághdì"
+ },
+ "adf": {
+ "english_name": "Arabic, Dhofari"
+ },
+ "gmz": {
+ "english_name": "Mgbolizhia"
+ },
+ "gmy": {
+ "english_name": "Greek, Mycenaean"
+ },
+ "gmx": {
+ "english_name": "Magoma"
+ },
+ "adb": {
+ "english_name": "Adabe"
+ },
+ "ada": {
+ "english_name": "Adangme"
+ },
+ "adn": {
+ "english_name": "Adang"
+ },
+ "ado": {
+ "english_name": "Abu"
+ },
+ "adl": {
+ "english_name": "Galo"
+ },
+ "adj": {
+ "english_name": "Adioukrou"
+ },
+ "gmv": {
+ "english_name": "Gamo"
+ },
+ "gmu": {
+ "english_name": "Gumalu"
+ },
+ "adi": {
+ "english_name": "Adi"
+ },
+ "njb": {
+ "english_name": "Naga, Nocte"
+ },
+ "nja": {
+ "english_name": "Nzanyi"
+ },
+ "njd": {
+ "english_name": "Ndonde Hamba"
+ },
+ "njj": {
+ "english_name": "Njen"
+ },
+ "nji": {
+ "english_name": "Gudanji"
+ },
+ "njh": {
+ "english_name": "Naga, Lotha"
+ },
+ "njo": {
+ "english_name": "Naga, Ao"
+ },
+ "njn": {
+ "english_name": "Naga, Liangmai"
+ },
+ "njm": {
+ "english_name": "Naga, Angami"
+ },
+ "njl": {
+ "english_name": "Njalgulgule"
+ },
+ "njs": {
+ "english_name": "Nisa"
+ },
+ "njr": {
+ "english_name": "Njerep"
+ },
+ "nju": {
+ "english_name": "Ngadjunmaya"
+ },
+ "njt": {
+ "english_name": "Ndyuka-Trio Pidgin"
+ },
+ "njz": {
+ "english_name": "Nyishi"
+ },
+ "njy": {
+ "english_name": "Njyem"
+ },
+ "njx": {
+ "english_name": "Kunyi"
+ },
+ "tmp": {
+ "english_name": "Tai Mène"
+ },
+ "tmq": {
+ "english_name": "Tumleo"
+ },
+ "esu": {
+ "english_name": "Yupik, Central"
+ },
+ "tms": {
+ "english_name": "Tima"
+ },
+ "ess": {
+ "english_name": "Yupik, Central Siberian"
+ },
+ "tmu": {
+ "english_name": "Iau"
+ },
+ "esq": {
+ "english_name": "Esselen"
+ },
+ "tmw": {
+ "english_name": "Temuan"
+ },
+ "tmy": {
+ "english_name": "Tami"
+ },
+ "tmz": {
+ "english_name": "Tamanaku"
+ },
+ "tma": {
+ "english_name": "Tama (Chad)"
+ },
+ "ese": {
+ "english_name": "Ese Ejja"
+ },
+ "tmc": {
+ "english_name": "Tumak"
+ },
+ "tmd": {
+ "english_name": "Haruai"
+ },
+ "tme": {
+ "english_name": "Tremembé"
+ },
+ "tmf": {
+ "english_name": "Toba-Maskoy"
+ },
+ "tmg": {
+ "english_name": "Ternateño"
+ },
+ "eso": {
+ "english_name": "Estonian Sign Language"
+ },
+ "esn": {
+ "english_name": "Salvadoran Sign Language"
+ },
+ "esm": {
+ "english_name": "Esuma"
+ },
+ "esl": {
+ "english_name": "Egypt Sign Language"
+ },
+ "esk": {
+ "english_name": "Inupiatun, Northwest Alaska"
+ },
+ "tmm": {
+ "english_name": "Tai Thanh"
+ },
+ "esi": {
+ "english_name": "Inupiatun, North Alaskan"
+ },
+ "esh": {
+ "english_name": "Eshtehardi"
+ },
+ "dcc": {
+ "english_name": "Deccan"
+ },
+ "dcr": {
+ "english_name": "Negerhollands"
+ },
+ "rcf": {
+ "english_name": "Creole French, Réunion"
+ },
+ "buz": {
+ "english_name": "Bukwen"
+ },
+ "bux": {
+ "english_name": "Boghom"
+ },
+ "buy": {
+ "english_name": "Bullom So"
+ },
+ "bus": {
+ "english_name": "Bokobaru"
+ },
+ "bup": {
+ "english_name": "Busoa"
+ },
+ "buq": {
+ "english_name": "Brem"
+ },
+ "buv": {
+ "english_name": "Bun"
+ },
+ "buw": {
+ "english_name": "Bubi"
+ },
+ "but": {
+ "english_name": "Bungain"
+ },
+ "buu": {
+ "english_name": "Budu"
+ },
+ "buj": {
+ "english_name": "Basa-Gurmana"
+ },
+ "buk": {
+ "english_name": "Bugawac"
+ },
+ "buh": {
+ "english_name": "Bunu, Younuo"
+ },
+ "bui": {
+ "english_name": "Bongili"
+ },
+ "bun": {
+ "english_name": "Sherbro"
+ },
+ "buo": {
+ "english_name": "Terei"
+ },
+ "bum": {
+ "english_name": "Bulu (Cameroon)"
+ },
+ "bub": {
+ "english_name": "Bua"
+ },
+ "buc": {
+ "english_name": "Bushi"
+ },
+ "bua": {
+ "english_name": "Buriat"
+ },
+ "buf": {
+ "english_name": "Bushoong"
+ },
+ "bug": {
+ "english_name": "Buginese"
+ },
+ "bud": {
+ "english_name": "Ntcham"
+ },
+ "bue": {
+ "english_name": "Beothuk"
+ },
+ "tjw": {
+ "english_name": "Djabwurrung"
+ },
+ "pih": {
+ "english_name": "Pitcairn-Norfolk"
+ },
+ "pii": {
+ "english_name": "Pini"
+ },
+ "pij": {
+ "english_name": "Pijao"
+ },
+ "pil": {
+ "english_name": "Yom"
+ },
+ "pim": {
+ "english_name": "Powhatan"
+ },
+ "pin": {
+ "english_name": "Piame"
+ },
+ "pio": {
+ "english_name": "Piapoco"
+ },
+ "pia": {
+ "english_name": "Pima Bajo"
+ },
+ "pib": {
+ "english_name": "Yine"
+ },
+ "pic": {
+ "english_name": "Pinji"
+ },
+ "pid": {
+ "english_name": "Piaroa"
+ },
+ "pie": {
+ "english_name": "Piro"
+ },
+ "pif": {
+ "english_name": "Pingelapese"
+ },
+ "pig": {
+ "english_name": "Pisabo"
+ },
+ "pix": {
+ "english_name": "Piu"
+ },
+ "piy": {
+ "english_name": "Piya-Kwonci"
+ },
+ "piz": {
+ "english_name": "Pije"
+ },
+ "pip": {
+ "english_name": "Pero"
+ },
+ "pir": {
+ "english_name": "Piratapuyo"
+ },
+ "pis": {
+ "english_name": "Pijin"
+ },
+ "pit": {
+ "english_name": "Pitta Pitta"
+ },
+ "piu": {
+ "english_name": "Pintupi-Luritja"
+ },
+ "piv": {
+ "english_name": "Pileni"
+ },
+ "piw": {
+ "english_name": "Pimbwe"
+ },
+ "oac": {
+ "english_name": "Oroch"
+ },
+ "oaa": {
+ "english_name": "Orok"
+ },
+ "oav": {
+ "english_name": "Avar, Old"
+ },
+ "oar": {
+ "english_name": "Aramaic, Old (up to 700 BCE)"
+ },
+ "ubu": {
+ "english_name": "Umbu-Ungu"
+ },
+ "ubr": {
+ "english_name": "Ubir"
+ },
+ "uby": {
+ "english_name": "Ubykh"
+ },
+ "uba": {
+ "english_name": "Ubang"
+ },
+ "ubl": {
+ "english_name": "Bikol, Buhi'non"
+ },
+ "ubi": {
+ "english_name": "Ubi"
+ },
+ "nwr": {
+ "english_name": "Nawaru"
+ },
+ "scl": {
+ "english_name": "Shina"
+ },
+ "nwx": {
+ "english_name": "Newar, Middle"
+ },
+ "nwy": {
+ "english_name": "Nottoway-Meherrin"
+ },
+ "nwe": {
+ "english_name": "Ngwe"
+ },
+ "nwg": {
+ "english_name": "Ngayawung"
+ },
+ "nwa": {
+ "english_name": "Nawathinehena"
+ },
+ "nwb": {
+ "english_name": "Nyabwa"
+ },
+ "nwc": {
+ "english_name": "Newari, Classical"
+ },
+ "nwm": {
+ "english_name": "Nyamusa-Molo"
+ },
+ "nwo": {
+ "english_name": "Nauo"
+ },
+ "nwi": {
+ "english_name": "Tanna, Southwest"
+ },
+ "mws": {
+ "english_name": "Mwimbi-Muthambi"
+ },
+ "mwr": {
+ "english_name": "Marwari"
+ },
+ "mwq": {
+ "english_name": "Chin, Mün"
+ },
+ "mwp": {
+ "english_name": "Kala Lagaw Ya"
+ },
+ "mww": {
+ "english_name": "Hmong Daw"
+ },
+ "mwv": {
+ "english_name": "Mentawai"
+ },
+ "mwu": {
+ "english_name": "Mittu"
+ },
+ "mwt": {
+ "english_name": "Moken"
+ },
+ "mwz": {
+ "english_name": "Moingi"
+ },
+ "mwy": {
+ "english_name": "Mosiro"
+ },
+ "mwx": {
+ "english_name": "Mediak"
+ },
+ "mwc": {
+ "english_name": "Are"
+ },
+ "mwb": {
+ "english_name": "Juwal"
+ },
+ "mwa": {
+ "english_name": "Mwatebu"
+ },
+ "mwg": {
+ "english_name": "Aiklep"
+ },
+ "mwf": {
+ "english_name": "Murrinh-Patha"
+ },
+ "mwe": {
+ "english_name": "Mwera (Chimwera)"
+ },
+ "mwk": {
+ "english_name": "Maninkakan, Kita"
+ },
+ "mwi": {
+ "english_name": "Labo"
+ },
+ "mwh": {
+ "english_name": "Mouk-Aria"
+ },
+ "mwo": {
+ "english_name": "Maewo, Central"
+ },
+ "mwn": {
+ "english_name": "Nyamwanga"
+ },
+ "mwm": {
+ "english_name": "Sar"
+ },
+ "mwl": {
+ "english_name": "Mirandese"
+ },
+ "scf": {
+ "english_name": "Creole French, San Miguel"
+ },
+ "scb": {
+ "english_name": "Chut"
+ },
+ "aix": {
+ "english_name": "Aighon"
+ },
+ "zdj": {
+ "english_name": "Comorian, Ngazidja"
+ },
+ "scx": {
+ "english_name": "Sicel"
+ },
+ "scw": {
+ "english_name": "Sha"
+ },
+ "aim": {
+ "english_name": "Aimol"
+ },
+ "scv": {
+ "english_name": "Sheni"
+ },
+ "kuz": {
+ "english_name": "Kunza"
+ },
+ "kuy": {
+ "english_name": "Kuuku-Ya'u"
+ },
+ "ail": {
+ "english_name": "Aimele"
+ },
+ "kuw": {
+ "english_name": "Kpagua"
+ },
+ "kuv": {
+ "english_name": "Kur"
+ },
+ "kuu": {
+ "english_name": "Kuskokwim, Upper"
+ },
+ "kut": {
+ "english_name": "Kutenai"
+ },
+ "kus": {
+ "english_name": "Kusaal"
+ },
+ "kuq": {
+ "english_name": "Karipuna"
+ },
+ "kup": {
+ "english_name": "Kunimaipa"
+ },
+ "kuo": {
+ "english_name": "Kumukio"
+ },
+ "kun": {
+ "english_name": "Kunama"
+ },
+ "kum": {
+ "english_name": "Kumyk"
+ },
+ "kul": {
+ "english_name": "Kulere"
+ },
+ "kuk": {
+ "english_name": "Kepo'"
+ },
+ "kuj": {
+ "english_name": "Kuria"
+ },
+ "kui": {
+ "english_name": "Kuikúro-Kalapálo"
+ },
+ "kuh": {
+ "english_name": "Kushi"
+ },
+ "kug": {
+ "english_name": "Kupa"
+ },
+ "kuf": {
+ "english_name": "Katu, Western"
+ },
+ "kue": {
+ "english_name": "Kuman"
+ },
+ "kud": {
+ "english_name": "'Auhelawa"
+ },
+ "kuc": {
+ "english_name": "Kwinsu"
+ },
+ "kub": {
+ "english_name": "Kutep"
+ },
+ "aih": {
+ "english_name": "Ai-Cham"
+ },
+ "aik": {
+ "english_name": "Ake"
+ },
+ "xfa": {
+ "english_name": "Faliscan"
+ },
+ "aij": {
+ "english_name": "Lishanid Noshan"
+ },
+ "aid": {
+ "english_name": "Alngith"
+ },
+ "gnh": {
+ "english_name": "Lere"
+ },
+ "zmo": {
+ "english_name": "Molo"
+ },
+ "gni": {
+ "english_name": "Gooniyandi"
+ },
+ "wdd": {
+ "english_name": "Wandji"
+ },
+ "wdg": {
+ "english_name": "Wadaginam"
+ },
+ "aia": {
+ "english_name": "Arosi"
+ },
+ "wdj": {
+ "english_name": "Wadjiginy"
+ },
+ "qve": {
+ "english_name": "Quechua, Eastern Apurímac"
+ },
+ "gnl": {
+ "english_name": "Gangulu"
+ },
+ "zmc": {
+ "english_name": "Margany"
+ },
+ "bgw": {
+ "english_name": "Bhatri"
+ },
+ "gnm": {
+ "english_name": "Ginuman"
+ },
+ "zmf": {
+ "english_name": "Mfinu"
+ },
+ "zmg": {
+ "english_name": "Marti Ke"
+ },
+ "zmz": {
+ "english_name": "Mbandja"
+ },
+ "zmx": {
+ "english_name": "Bomitaba"
+ },
+ "zms": {
+ "english_name": "Mbesa"
+ },
+ "mg": {
+ "english_name": "Malagasy"
+ },
+ "zmq": {
+ "english_name": "Mituku"
+ },
+ "ml": {
+ "english_name": "Malayalam"
+ },
+ "mn": {
+ "name": "Монгол",
+ "english_name": "Mongolian"
+ },
+ "mi": {
+ "name": "Reo Māori",
+ "english_name": "Maori"
+ },
+ "mh": {
+ "english_name": "Marshallese"
+ },
+ "mk": {
+ "name": "Македонски",
+ "english_name": "Macedonian"
+ },
+ "mt": {
+ "name": "Malti",
+ "english_name": "Maltese"
+ },
+ "ms": {
+ "name": "Malay (macrolanguage)",
+ "english_name": "Malay (macrolanguage)"
+ },
+ "mr": {
+ "name": "मराठी",
+ "english_name": "Marathi"
+ },
+ "zmu": {
+ "english_name": "Muruwari"
+ },
+ "my": {
+ "english_name": "Burmese"
+ },
+ "ena": {
+ "english_name": "Apali"
+ },
+ "enb": {
+ "english_name": "Markweeta"
+ },
+ "enc": {
+ "english_name": "En"
+ },
+ "end": {
+ "english_name": "Ende"
+ },
+ "enf": {
+ "english_name": "Enets, Forest"
+ },
+ "enh": {
+ "english_name": "Enets, Tundra"
+ },
+ "enm": {
+ "english_name": "English, Middle (1100-1500)"
+ },
+ "enn": {
+ "english_name": "Engenni"
+ },
+ "eno": {
+ "english_name": "Enggano"
+ },
+ "enq": {
+ "english_name": "Enga"
+ },
+ "enr": {
+ "english_name": "Emumu"
+ },
+ "enu": {
+ "english_name": "Enu"
+ },
+ "env": {
+ "english_name": "Enwan (Edu State)"
+ },
+ "enw": {
+ "english_name": "Enwan (Akwa Ibom State)"
+ },
+ "cll": {
+ "english_name": "Chala"
+ },
+ "clm": {
+ "english_name": "Clallam"
+ },
+ "clo": {
+ "english_name": "Chontal, Lowland Oaxaca"
+ },
+ "clh": {
+ "english_name": "Chilisso"
+ },
+ "cli": {
+ "english_name": "Chakali"
+ },
+ "clj": {
+ "english_name": "Chin, Laitu"
+ },
+ "clk": {
+ "english_name": "Idu-Mishmi"
+ },
+ "cld": {
+ "english_name": "Neo-Aramaic, Chaldean"
+ },
+ "cle": {
+ "english_name": "Chinantec, Lealao"
+ },
+ "cla": {
+ "english_name": "Ron"
+ },
+ "imo": {
+ "english_name": "Imbongu"
+ },
+ "clc": {
+ "english_name": "Chilcotin"
+ },
+ "ims": {
+ "english_name": "Marsian"
+ },
+ "imr": {
+ "english_name": "Imroing"
+ },
+ "cly": {
+ "english_name": "Chatino, Eastern Highland"
+ },
+ "clt": {
+ "english_name": "Chin, Lautu"
+ },
+ "clu": {
+ "english_name": "Caluyanun"
+ },
+ "clw": {
+ "english_name": "Chulym"
+ },
+ "gom": {
+ "english_name": "Konkani, Goan"
+ },
+ "gol": {
+ "english_name": "Gola"
+ },
+ "ajz": {
+ "english_name": "Karbi, Amri"
+ },
+ "gon": {
+ "english_name": "Gondi"
+ },
+ "goi": {
+ "english_name": "Gobasi"
+ },
+ "goh": {
+ "english_name": "German, Old High (ca. 750-1050)"
+ },
+ "gok": {
+ "english_name": "Gowli"
+ },
+ "goj": {
+ "english_name": "Gowlan"
+ },
+ "ajp": {
+ "english_name": "Arabic, South Levantine"
+ },
+ "god": {
+ "english_name": "Godié"
+ },
+ "gog": {
+ "english_name": "Gogo"
+ },
+ "gof": {
+ "english_name": "Gofa"
+ },
+ "ajt": {
+ "english_name": "Arabic, Judeo-Tunisian"
+ },
+ "aju": {
+ "english_name": "Arabic, Judeo-Moroccan"
+ },
+ "goc": {
+ "english_name": "Gorakor"
+ },
+ "ajw": {
+ "english_name": "Ajawa"
+ },
+ "aji": {
+ "english_name": "Ajië"
+ },
+ "goy": {
+ "english_name": "Goundo"
+ },
+ "gox": {
+ "english_name": "Gobu"
+ },
+ "ajn": {
+ "english_name": "Andajin"
+ },
+ "goz": {
+ "english_name": "Gozarkhani"
+ },
+ "gou": {
+ "english_name": "Gavar"
+ },
+ "aja": {
+ "english_name": "Aja (Sudan)"
+ },
+ "gow": {
+ "english_name": "Gorowa"
+ },
+ "goq": {
+ "english_name": "Gorap"
+ },
+ "gop": {
+ "english_name": "Yeretuar"
+ },
+ "gos": {
+ "english_name": "Gronings"
+ },
+ "ajg": {
+ "english_name": "Aja (Benin)"
+ },
+ "nhe": {
+ "english_name": "Nahuatl, Eastern Huasteca"
+ },
+ "nhd": {
+ "english_name": "Chiripá"
+ },
+ "nhg": {
+ "english_name": "Nahuatl, Tetelcingo"
+ },
+ "nhf": {
+ "english_name": "Nhuwala"
+ },
+ "nha": {
+ "english_name": "Nhanda"
+ },
+ "nhc": {
+ "english_name": "Nahuatl, Tabasco"
+ },
+ "nhb": {
+ "english_name": "Beng"
+ },
+ "nhm": {
+ "english_name": "Nahuatl, Morelos"
+ },
+ "nho": {
+ "english_name": "Takuu"
+ },
+ "nhn": {
+ "english_name": "Nahuatl, Central"
+ },
+ "nhi": {
+ "english_name": "Nahuatl, Zacatlán-Ahuacatlán-Tepetzintla"
+ },
+ "nhh": {
+ "english_name": "Nahari"
+ },
+ "nhk": {
+ "english_name": "Nahuatl, Isthmus-Cosoleacaque"
+ },
+ "nhu": {
+ "english_name": "Noone"
+ },
+ "nht": {
+ "english_name": "Nahuatl, Ometepec"
+ },
+ "nhw": {
+ "english_name": "Nahuatl, Western Huasteca"
+ },
+ "nhv": {
+ "english_name": "Nahuatl, Temascaltepec"
+ },
+ "nhq": {
+ "english_name": "Nahuatl, Huaxcaleca"
+ },
+ "nhp": {
+ "english_name": "Nahuatl, Isthmus-Pajapan"
+ },
+ "nhr": {
+ "english_name": "Naro"
+ },
+ "nhy": {
+ "english_name": "Nahuatl, Northern Oaxaca"
+ },
+ "nhx": {
+ "english_name": "Nahuatl, Isthmus-Mecayapan"
+ },
+ "nhz": {
+ "english_name": "Nahuatl, Santa María La Alta"
+ },
+ "toz": {
+ "english_name": "To"
+ },
+ "tox": {
+ "english_name": "Tobian"
+ },
+ "toy": {
+ "english_name": "Topoiyo"
+ },
+ "tor": {
+ "english_name": "Banda, Togbo-Vara"
+ },
+ "tos": {
+ "english_name": "Totonac, Highland"
+ },
+ "top": {
+ "english_name": "Totonac, Papantla"
+ },
+ "toq": {
+ "english_name": "Toposa"
+ },
+ "tov": {
+ "english_name": "Taromi, Upper"
+ },
+ "tow": {
+ "english_name": "Jemez"
+ },
+ "tou": {
+ "english_name": "Tho"
+ },
+ "toj": {
+ "english_name": "Tojolabal"
+ },
+ "toh": {
+ "english_name": "Gitonga"
+ },
+ "toi": {
+ "english_name": "Tonga (Zambia)"
+ },
+ "too": {
+ "english_name": "Totonac, Xicotepec De Juárez"
+ },
+ "tol": {
+ "english_name": "Tolowa"
+ },
+ "tom": {
+ "english_name": "Tombulu"
+ },
+ "tob": {
+ "english_name": "Toba"
+ },
+ "toc": {
+ "english_name": "Totonac, Coyutla"
+ },
+ "tof": {
+ "english_name": "Gizrra"
+ },
+ "tog": {
+ "english_name": "Tonga (Nyasa)"
+ },
+ "tod": {
+ "english_name": "Toma"
+ },
+ "toe": {
+ "english_name": "Tomedes"
+ },
+ "aez": {
+ "english_name": "Aeka"
+ },
+ "tue": {
+ "english_name": "Tuyuca"
+ },
+ "lbq": {
+ "english_name": "Wampar"
+ },
+ "rag": {
+ "english_name": "Logooli"
+ },
+ "lbs": {
+ "english_name": "Libyan Sign Language"
+ },
+ "lbr": {
+ "english_name": "Lohorung"
+ },
+ "lbu": {
+ "english_name": "Labu"
+ },
+ "lbt": {
+ "english_name": "Lachi"
+ },
+ "lbw": {
+ "english_name": "Tolaki"
+ },
+ "lbv": {
+ "english_name": "Lavatbura-Lamusong"
+ },
+ "lby": {
+ "english_name": "Lamu-Lamu"
+ },
+ "lbx": {
+ "english_name": "Lawangan"
+ },
+ "ral": {
+ "english_name": "Ralte"
+ },
+ "lbz": {
+ "english_name": "Lardil"
+ },
+ "raj": {
+ "english_name": "Rajasthani"
+ },
+ "rak": {
+ "english_name": "Tulu-Bohuai"
+ },
+ "rah": {
+ "english_name": "Rabha"
+ },
+ "rai": {
+ "english_name": "Ramoaaina"
+ },
+ "lba": {
+ "english_name": "Lui"
+ },
+ "raw": {
+ "english_name": "Rawang"
+ },
+ "lbc": {
+ "english_name": "Lakkia"
+ },
+ "lbb": {
+ "english_name": "Label"
+ },
+ "lbe": {
+ "english_name": "Lak"
+ },
+ "ras": {
+ "english_name": "Tegali"
+ },
+ "lbg": {
+ "english_name": "Laopang"
+ },
+ "lbf": {
+ "english_name": "Tinani"
+ },
+ "lbi": {
+ "english_name": "La'bi"
+ },
+ "lbk": {
+ "english_name": "Bontok, Central"
+ },
+ "lbj": {
+ "english_name": "Ladakhi"
+ },
+ "lbm": {
+ "english_name": "Lodhi"
+ },
+ "lbl": {
+ "english_name": "Bikol, Libon"
+ },
+ "lbo": {
+ "english_name": "Laven"
+ },
+ "lbn": {
+ "english_name": "Lamet"
+ },
+ "bsx": {
+ "english_name": "Yangkam"
+ },
+ "bsy": {
+ "english_name": "Bisaya, Sabah"
+ },
+ "bst": {
+ "english_name": "Basketo"
+ },
+ "bsu": {
+ "english_name": "Bahonsuai"
+ },
+ "bsv": {
+ "english_name": "Baga Sobané"
+ },
+ "bsw": {
+ "english_name": "Baiso"
+ },
+ "bsp": {
+ "english_name": "Baga Sitemu"
+ },
+ "bsq": {
+ "english_name": "Bassa"
+ },
+ "bsr": {
+ "english_name": "Bassa-Kontagora"
+ },
+ "bss": {
+ "english_name": "Akoose"
+ },
+ "bsl": {
+ "english_name": "Basa-Gumna"
+ },
+ "bsm": {
+ "english_name": "Busami"
+ },
+ "bsn": {
+ "english_name": "Barasana-Eduria"
+ },
+ "bso": {
+ "english_name": "Buso"
+ },
+ "bsh": {
+ "english_name": "Kati"
+ },
+ "bsi": {
+ "english_name": "Bassossi"
+ },
+ "bsj": {
+ "english_name": "Bangwinji"
+ },
+ "bsk": {
+ "english_name": "Burushaski"
+ },
+ "bse": {
+ "english_name": "Wushi"
+ },
+ "bsf": {
+ "english_name": "Bauchi"
+ },
+ "bsg": {
+ "english_name": "Bashkardi"
+ },
+ "qya": {
+ "english_name": "Quenya"
+ },
+ "bsa": {
+ "english_name": "Abinomn"
+ },
+ "bsb": {
+ "english_name": "Bisaya, Brunei"
+ },
+ "bsc": {
+ "english_name": "Bassari"
+ },
+ "pkr": {
+ "english_name": "Kurumba, Attapady"
+ },
+ "pks": {
+ "english_name": "Pakistan Sign Language"
+ },
+ "pkp": {
+ "english_name": "Pukapuka"
+ },
+ "pkt": {
+ "english_name": "Maleng"
+ },
+ "pku": {
+ "english_name": "Paku"
+ },
+ "pkb": {
+ "english_name": "Pokomo"
+ },
+ "pkc": {
+ "english_name": "Paekche"
+ },
+ "pka": {
+ "english_name": "Prākrit, Ardhamāgadhī"
+ },
+ "pkg": {
+ "english_name": "Pak-Tong"
+ },
+ "pkh": {
+ "english_name": "Pankhu"
+ },
+ "pkn": {
+ "english_name": "Pakanha"
+ },
+ "pko": {
+ "english_name": "Pökoot"
+ },
+ "och": {
+ "english_name": "Chinese, Old"
+ },
+ "oco": {
+ "english_name": "Cornish, Old"
+ },
+ "oca": {
+ "english_name": "Ocaina"
+ },
+ "ocu": {
+ "english_name": "Matlatzinca, Atzingo"
+ },
+ "xom": {
+ "english_name": "Komo (Sudan)"
+ },
+ "nuz": {
+ "english_name": "Nahuatl, Tlamacazapa"
+ },
+ "nux": {
+ "english_name": "Mehek"
+ },
+ "nuy": {
+ "english_name": "Nunggubuyu"
+ },
+ "nuv": {
+ "english_name": "Nuni, Northern"
+ },
+ "nuw": {
+ "english_name": "Nguluwan"
+ },
+ "nut": {
+ "english_name": "Nung (Viet Nam)"
+ },
+ "nuu": {
+ "english_name": "Ngbundu"
+ },
+ "nur": {
+ "english_name": "Nukuria"
+ },
+ "nus": {
+ "english_name": "Nuer"
+ },
+ "nup": {
+ "english_name": "Nupe-Nupe-Tako"
+ },
+ "nuq": {
+ "english_name": "Nukumanu"
+ },
+ "nun": {
+ "english_name": "Anong"
+ },
+ "nuo": {
+ "english_name": "Nguôn"
+ },
+ "nul": {
+ "english_name": "Nusa Laut"
+ },
+ "num": {
+ "english_name": "Niuafo'ou"
+ },
+ "nuj": {
+ "english_name": "Nyole"
+ },
+ "nuk": {
+ "english_name": "Nuu-chah-nulth"
+ },
+ "nuh": {
+ "english_name": "Ndunda"
+ },
+ "nui": {
+ "english_name": "Ngumbi"
+ },
+ "nuf": {
+ "english_name": "Nusu"
+ },
+ "nug": {
+ "english_name": "Nungali"
+ },
+ "nud": {
+ "english_name": "Ngala"
+ },
+ "nue": {
+ "english_name": "Ngundu"
+ },
+ "nuc": {
+ "english_name": "Nukuini"
+ },
+ "nua": {
+ "english_name": "Yuanga"
+ },
+ "muu": {
+ "english_name": "Yaaku"
+ },
+ "mut": {
+ "english_name": "Muria, Western"
+ },
+ "muv": {
+ "english_name": "Muthuvan"
+ },
+ "muq": {
+ "english_name": "Miao, Eastern Xiangxi"
+ },
+ "mup": {
+ "english_name": "Malvi"
+ },
+ "mus": {
+ "english_name": "Creek"
+ },
+ "mur": {
+ "english_name": "Murle"
+ },
+ "muy": {
+ "english_name": "Muyang"
+ },
+ "mux": {
+ "english_name": "Bo-Ung"
+ },
+ "muz": {
+ "english_name": "Mursi"
+ },
+ "mue": {
+ "english_name": "Media Lengua"
+ },
+ "mud": {
+ "english_name": "Aleut, Mednyj"
+ },
+ "mug": {
+ "english_name": "Musgu"
+ },
+ "mua": {
+ "english_name": "Mundang"
+ },
+ "muc": {
+ "english_name": "Ajumbu"
+ },
+ "mub": {
+ "english_name": "Mubi"
+ },
+ "mum": {
+ "english_name": "Maiwala"
+ },
+ "mul": {
+ "english_name": "Multiple languages"
+ },
+ "muo": {
+ "english_name": "Nyong"
+ },
+ "mui": {
+ "english_name": "Musi"
+ },
+ "muh": {
+ "english_name": "Mündü"
+ },
+ "muk": {
+ "english_name": "Mugom"
+ },
+ "muj": {
+ "english_name": "Mabire"
+ },
+ "zbe": {
+ "english_name": "Berawan, East"
+ },
+ "zbc": {
+ "english_name": "Berawan, Central"
+ },
+ "zbl": {
+ "english_name": "Blissymbols"
+ },
+ "zbw": {
+ "english_name": "Berawan, West"
+ },
+ "zbt": {
+ "english_name": "Batui"
+ },
+ "kwa": {
+ "english_name": "Dâw"
+ },
+ "kwc": {
+ "english_name": "Likwala"
+ },
+ "kwb": {
+ "english_name": "Kwa"
+ },
+ "kwe": {
+ "english_name": "Kwerba"
+ },
+ "kwd": {
+ "english_name": "Kwaio"
+ },
+ "kwg": {
+ "english_name": "Sara Kaba Deme"
+ },
+ "kwf": {
+ "english_name": "Kwara'ae"
+ },
+ "kwi": {
+ "english_name": "Awa-Cuaiquer"
+ },
+ "kwh": {
+ "english_name": "Kowiai"
+ },
+ "kwk": {
+ "english_name": "Kwakiutl"
+ },
+ "kwj": {
+ "english_name": "Kwanga"
+ },
+ "kwm": {
+ "english_name": "Kwambi"
+ },
+ "kwl": {
+ "english_name": "Kofyar"
+ },
+ "kwo": {
+ "english_name": "Kwomtari"
+ },
+ "kwn": {
+ "english_name": "Kwangali"
+ },
+ "kwp": {
+ "english_name": "Kodia"
+ },
+ "kws": {
+ "english_name": "Kwese"
+ },
+ "kwr": {
+ "english_name": "Kwer"
+ },
+ "kwu": {
+ "english_name": "Kwakum"
+ },
+ "kwt": {
+ "english_name": "Kwesten"
+ },
+ "kww": {
+ "english_name": "Kwinti"
+ },
+ "kwv": {
+ "english_name": "Sara Kaba Náà"
+ },
+ "kwy": {
+ "english_name": "Kongo, San Salvador"
+ },
+ "kwx": {
+ "english_name": "Khirwar"
+ },
+ "kwz": {
+ "english_name": "Kwadi"
+ },
+ "rth": {
+ "english_name": "Ratahan"
+ },
+ "xxr": {
+ "english_name": "Koropó"
+ },
+ "xxt": {
+ "english_name": "Tambora"
+ },
+ "xxb": {
+ "english_name": "Boro (Ghana)"
+ },
+ "xxk": {
+ "english_name": "Ke'o"
+ },
+ "xxm": {
+ "english_name": "Minkin"
+ },
+ "wfg": {
+ "english_name": "Yafi"
+ },
+ "rnn": {
+ "english_name": "Roon"
+ },
+ "rnl": {
+ "english_name": "Ranglong"
+ },
+ "elk": {
+ "english_name": "Elkei"
+ },
+ "elh": {
+ "english_name": "El Hugeirat"
+ },
+ "eli": {
+ "english_name": "Nding"
+ },
+ "elo": {
+ "english_name": "El Molo"
+ },
+ "elm": {
+ "english_name": "Eleme"
+ },
+ "ele": {
+ "english_name": "Elepi"
+ },
+ "elx": {
+ "english_name": "Elamite"
+ },
+ "elu": {
+ "english_name": "Elu"
+ },
+ "qxa": {
+ "english_name": "Quechua, Chiquián Ancash"
+ },
+ "yww": {
+ "english_name": "Yawarawarga"
+ },
+ "ywu": {
+ "english_name": "Nasu, Wumeng"
+ },
+ "ywt": {
+ "english_name": "Lalo, Xishanba"
+ },
+ "ywr": {
+ "english_name": "Yawuru"
+ },
+ "ywq": {
+ "english_name": "Yi, Wuding-Luquan"
+ },
+ "jyy": {
+ "english_name": "Jaya"
+ },
+ "ywg": {
+ "english_name": "Yinhawangka"
+ },
+ "jye": {
+ "english_name": "Arabic, Judeo-Yemeni"
+ },
+ "ywa": {
+ "english_name": "Kalou"
+ },
+ "jya": {
+ "english_name": "Jiarong"
+ },
+ "ywn": {
+ "english_name": "Yawanawa"
+ },
+ "ywl": {
+ "english_name": "Lalu, Western"
+ },
+ "qxh": {
+ "english_name": "Quechua, Panao Huánuco"
+ },
+ "qxn": {
+ "english_name": "Quechua, Northern Conchucos Ancash"
+ },
+ "qxo": {
+ "english_name": "Quechua, Southern Conchucos Ancash"
+ },
+ "qxl": {
+ "english_name": "Quichua, Salasaca Highland"
+ },
+ "wdk": {
+ "english_name": "Wadikali"
+ },
+ "cnw": {
+ "english_name": "Chin, Ngawn"
+ },
+ "cnt": {
+ "english_name": "Chinantec, Tepetotutla"
+ },
+ "cnu": {
+ "english_name": "Chenoua"
+ },
+ "cns": {
+ "english_name": "Asmat, Central"
+ },
+ "icl": {
+ "english_name": "Icelandic Sign Language"
+ },
+ "ica": {
+ "english_name": "Ede Ica"
+ },
+ "qxp": {
+ "english_name": "Quechua, Puno"
+ },
+ "cnx": {
+ "english_name": "Cornish, Middle"
+ },
+ "cng": {
+ "english_name": "Qiang, Northern"
+ },
+ "qxq": {
+ "english_name": "Qashqa'i"
+ },
+ "cnb": {
+ "english_name": "Chin, Chinbon"
+ },
+ "cnc": {
+ "english_name": "Côông"
+ },
+ "cna": {
+ "english_name": "Changthang"
+ },
+ "icr": {
+ "english_name": "Creole English, Islander"
+ },
+ "cnl": {
+ "english_name": "Chinantec, Lalana"
+ },
+ "cnk": {
+ "english_name": "Chin, Khumi"
+ },
+ "cnh": {
+ "english_name": "Chin, Haka"
+ },
+ "cni": {
+ "english_name": "Asháninka"
+ },
+ "hsb": {
+ "english_name": "Sorbian, Upper"
+ },
+ "twb": {
+ "english_name": "Tawbuid, Western"
+ },
+ "pys": {
+ "english_name": "Paraguayan Sign Language"
+ },
+ "qxt": {
+ "english_name": "Quechua, Santa Ana de Tusi Pasco"
+ },
+ "hsh": {
+ "english_name": "Hungarian Sign Language"
+ },
+ "qxu": {
+ "english_name": "Quechua, Arequipa-La Unión"
+ },
+ "hsn": {
+ "english_name": "Chinese, Xiang"
+ },
+ "hsl": {
+ "english_name": "Hausa Sign Language"
+ },
+ "pyu": {
+ "english_name": "Puyuma"
+ },
+ "hss": {
+ "english_name": "Harsusi"
+ },
+ "ahb": {
+ "english_name": "Axamb"
+ },
+ "ppa": {
+ "english_name": "Pao"
+ },
+ "aha": {
+ "english_name": "Ahanta"
+ },
+ "ahg": {
+ "english_name": "Qimant"
+ },
+ "ppe": {
+ "english_name": "Papi"
+ },
+ "ppk": {
+ "english_name": "Uma"
+ },
+ "ahk": {
+ "english_name": "Akha"
+ },
+ "ahh": {
+ "english_name": "Aghu"
+ },
+ "ahi": {
+ "english_name": "Aizi, Tiagbamrin"
+ },
+ "ppo": {
+ "english_name": "Folopa"
+ },
+ "aho": {
+ "english_name": "Ahom"
+ },
+ "ppm": {
+ "english_name": "Papuma"
+ },
+ "ppl": {
+ "english_name": "Pipil"
+ },
+ "ahr": {
+ "english_name": "Ahirani"
+ },
+ "ahs": {
+ "english_name": "Ashe"
+ },
+ "ahp": {
+ "english_name": "Aizi, Aproumu"
+ },
+ "ppp": {
+ "english_name": "Pelende"
+ },
+ "twl": {
+ "english_name": "Tawara"
+ },
+ "aht": {
+ "english_name": "Ahtena"
+ },
+ "ppt": {
+ "english_name": "Pare"
+ },
+ "giw": {
+ "english_name": "Gelao, White"
+ },
+ "giu": {
+ "english_name": "Mulao"
+ },
+ "git": {
+ "english_name": "Gitxsan"
+ },
+ "gis": {
+ "english_name": "Giziga, North"
+ },
+ "gir": {
+ "english_name": "Gelao, Red"
+ },
+ "giq": {
+ "english_name": "Gelao, Green"
+ },
+ "gip": {
+ "english_name": "Gimi (West New Britain)"
+ },
+ "giz": {
+ "english_name": "Giziga, South"
+ },
+ "giy": {
+ "english_name": "Giyug"
+ },
+ "gix": {
+ "english_name": "Gilima"
+ },
+ "gig": {
+ "english_name": "Goaria"
+ },
+ "gid": {
+ "english_name": "Gidar"
+ },
+ "gic": {
+ "english_name": "Gail"
+ },
+ "gib": {
+ "english_name": "Gibanawa"
+ },
+ "gia": {
+ "english_name": "Kitja"
+ },
+ "gin": {
+ "english_name": "Hinukh"
+ },
+ "gim": {
+ "english_name": "Gimi (Eastern Highlands)"
+ },
+ "gil": {
+ "english_name": "Gilbertese"
+ },
+ "gih": {
+ "english_name": "Githabul"
+ },
+ "nnn": {
+ "english_name": "Ngete"
+ },
+ "nnm": {
+ "english_name": "Namia"
+ },
+ "nnl": {
+ "english_name": "Naga, Northern Rengma"
+ },
+ "nnk": {
+ "english_name": "Nankina"
+ },
+ "nnj": {
+ "english_name": "Nyangatom"
+ },
+ "nni": {
+ "english_name": "Nuaulu, North"
+ },
+ "nnh": {
+ "english_name": "Ngiemboon"
+ },
+ "nng": {
+ "english_name": "Naga, Maring"
+ },
+ "nnf": {
+ "english_name": "Ngaing"
+ },
+ "nne": {
+ "english_name": "Ngandyera"
+ },
+ "nnd": {
+ "english_name": "Ambae, West"
+ },
+ "nnc": {
+ "english_name": "Nancere"
+ },
+ "nnb": {
+ "english_name": "Nande"
+ },
+ "nna": {
+ "english_name": "Nyangumarta"
+ },
+ "nnz": {
+ "english_name": "Nda'nda'"
+ },
+ "nny": {
+ "english_name": "Nyangga"
+ },
+ "nnw": {
+ "english_name": "Nuni, Southern"
+ },
+ "nnv": {
+ "english_name": "Nugunu (Australia)"
+ },
+ "nnu": {
+ "english_name": "Dwang"
+ },
+ "nnt": {
+ "english_name": "Nanticoke"
+ },
+ "nns": {
+ "english_name": "Ningye"
+ },
+ "nnr": {
+ "english_name": "Narungga"
+ },
+ "nnq": {
+ "english_name": "Ngindo"
+ },
+ "nnp": {
+ "english_name": "Naga, Wancho"
+ },
+ "nl": {
+ "name": "Nederlands",
+ "english_name": "Dutch"
+ },
+ "tiy": {
+ "english_name": "Tiruray"
+ },
+ "nn": {
+ "name": "Norwegian Nynorsk",
+ "english_name": "Norwegian Nynorsk"
+ },
+ "no": {
+ "english_name": "Norwegian"
+ },
+ "tit": {
+ "english_name": "Tinigua"
+ },
+ "na": {
+ "english_name": "Nauru"
+ },
+ "nb": {
+ "name": "Norwegian Bokmål",
+ "english_name": "Norwegian Bokmål"
+ },
+ "tiw": {
+ "english_name": "Tiwi"
+ },
+ "nd": {
+ "english_name": "Ndebele, North"
+ },
+ "ne": {
+ "english_name": "Nepali (macrolanguage)"
+ },
+ "ng": {
+ "english_name": "Ndonga"
+ },
+ "til": {
+ "english_name": "Tillamook"
+ },
+ "ny": {
+ "english_name": "Nyanja"
+ },
+ "tin": {
+ "english_name": "Tindi"
+ },
+ "tio": {
+ "english_name": "Teop"
+ },
+ "tih": {
+ "english_name": "Murut, Timugon"
+ },
+ "tii": {
+ "english_name": "Tiene"
+ },
+ "tij": {
+ "english_name": "Tilung"
+ },
+ "tik": {
+ "english_name": "Tikar"
+ },
+ "tid": {
+ "english_name": "Tidong"
+ },
+ "nr": {
+ "english_name": "Ndebele, South"
+ },
+ "tig": {
+ "name": "ትግረ",
+ "english_name": "Tigre"
+ },
+ "tia": {
+ "english_name": "Tamazight, Tidikelt"
+ },
+ "nv": {
+ "english_name": "Navajo"
+ },
+ "tic": {
+ "english_name": "Tira"
+ },
+ "sqs": {
+ "english_name": "Sri Lankan Sign Language"
+ },
+ "sqr": {
+ "english_name": "Arabic, Siculo"
+ },
+ "sqq": {
+ "english_name": "Sou"
+ },
+ "squ": {
+ "english_name": "Squamish"
+ },
+ "sqt": {
+ "english_name": "Soqotri"
+ },
+ "sqk": {
+ "english_name": "Albanian Sign Language"
+ },
+ "ich": {
+ "english_name": "Etkywan"
+ },
+ "sqo": {
+ "english_name": "Sorkhei"
+ },
+ "sqn": {
+ "english_name": "Susquehannock"
+ },
+ "sqm": {
+ "english_name": "Suma"
+ },
+ "sqa": {
+ "english_name": "Shama-Sambuga"
+ },
+ "llx": {
+ "english_name": "Lauan"
+ },
+ "rol": {
+ "english_name": "Romblomanon"
+ },
+ "rom": {
+ "english_name": "Romany"
+ },
+ "roo": {
+ "english_name": "Rotokas"
+ },
+ "lls": {
+ "english_name": "Lithuanian Sign Language"
+ },
+ "llq": {
+ "english_name": "Lolak"
+ },
+ "llp": {
+ "english_name": "Efate, North"
+ },
+ "rod": {
+ "english_name": "Rogo"
+ },
+ "roe": {
+ "english_name": "Ronji"
+ },
+ "llu": {
+ "english_name": "Lau"
+ },
+ "rog": {
+ "english_name": "Roglai, Northern"
+ },
+ "llk": {
+ "english_name": "Lelak"
+ },
+ "llj": {
+ "english_name": "Ladji Ladji"
+ },
+ "lli": {
+ "english_name": "Teke-Laali"
+ },
+ "llh": {
+ "english_name": "Lamu"
+ },
+ "llo": {
+ "english_name": "Khlor"
+ },
+ "lln": {
+ "english_name": "Lele (Chad)"
+ },
+ "llm": {
+ "english_name": "Lasalimu"
+ },
+ "lll": {
+ "english_name": "Lilau"
+ },
+ "llc": {
+ "english_name": "Lele (Guinea)"
+ },
+ "llb": {
+ "english_name": "Lolo"
+ },
+ "lla": {
+ "english_name": "Lala-Roba"
+ },
+ "llg": {
+ "english_name": "Lole"
+ },
+ "llf": {
+ "english_name": "Hermit"
+ },
+ "lle": {
+ "english_name": "Lele (Papua New Guinea)"
+ },
+ "lld": {
+ "english_name": "Ladin"
+ },
+ "bqf": {
+ "english_name": "Baga Kaloum"
+ },
+ "bqg": {
+ "english_name": "Bago-Kusuntu"
+ },
+ "bqd": {
+ "english_name": "Bung"
+ },
+ "bqb": {
+ "english_name": "Bagusa"
+ },
+ "bqc": {
+ "english_name": "Boko (Benin)"
+ },
+ "bqa": {
+ "english_name": "Tchumbuli"
+ },
+ "bqn": {
+ "english_name": "Bulgarian Sign Language"
+ },
+ "bqo": {
+ "english_name": "Balo"
+ },
+ "bql": {
+ "english_name": "Bilakura"
+ },
+ "bqm": {
+ "english_name": "Wumboko"
+ },
+ "bqj": {
+ "english_name": "Bandial"
+ },
+ "bqk": {
+ "english_name": "Banda-Mbrès"
+ },
+ "bqh": {
+ "english_name": "Baima"
+ },
+ "bqi": {
+ "english_name": "Bakhtiari"
+ },
+ "bqv": {
+ "english_name": "Koro Wachi"
+ },
+ "bqw": {
+ "english_name": "Buru (Nigeria)"
+ },
+ "bqt": {
+ "english_name": "Bamukumbit"
+ },
+ "bqu": {
+ "english_name": "Boguru"
+ },
+ "bqr": {
+ "english_name": "Burusu"
+ },
+ "bqs": {
+ "english_name": "Bosngun"
+ },
+ "bqp": {
+ "english_name": "Busa"
+ },
+ "bqq": {
+ "english_name": "Biritai"
+ },
+ "wdy": {
+ "english_name": "Wadjabangayi"
+ },
+ "bqz": {
+ "english_name": "Bakaka"
+ },
+ "bqx": {
+ "english_name": "Baangi"
+ },
+ "bqy": {
+ "english_name": "Bengkala Sign Language"
+ },
+ "cno": {
+ "english_name": "Con"
+ },
+ "jdg": {
+ "english_name": "Jadgali"
+ },
+ "pmt": {
+ "english_name": "Tuamotuan"
+ },
+ "pmw": {
+ "english_name": "Miwok, Plains"
+ },
+ "pmq": {
+ "english_name": "Pame, Northern"
+ },
+ "pmr": {
+ "english_name": "Paynamar"
+ },
+ "pms": {
+ "english_name": "Piemontese"
+ },
+ "pmx": {
+ "english_name": "Naga, Poumei"
+ },
+ "pmy": {
+ "english_name": "Malay, Papuan"
+ },
+ "pmz": {
+ "english_name": "Pame, Southern"
+ },
+ "pmd": {
+ "english_name": "Pallanganmiddang"
+ },
+ "pme": {
+ "english_name": "Pwaamei"
+ },
+ "pmf": {
+ "english_name": "Pamona"
+ },
+ "pma": {
+ "english_name": "Paama"
+ },
+ "pmb": {
+ "english_name": "Pambia"
+ },
+ "pmc": {
+ "english_name": "Palumata"
+ },
+ "pml": {
+ "english_name": "Lingua Franca"
+ },
+ "pmm": {
+ "english_name": "Pomo"
+ },
+ "pmn": {
+ "english_name": "Pam"
+ },
+ "pmo": {
+ "english_name": "Pom"
+ },
+ "pmh": {
+ "english_name": "Prākrit, Māhārāṣṭri"
+ },
+ "pmi": {
+ "english_name": "Pumi, Northern"
+ },
+ "pmj": {
+ "english_name": "Pumi, Southern"
+ },
+ "pmk": {
+ "english_name": "Pamlico"
+ },
+ "deh": {
+ "english_name": "Dehwari"
+ },
+ "msz": {
+ "english_name": "Momare"
+ },
+ "msy": {
+ "english_name": "Aruamu"
+ },
+ "msx": {
+ "english_name": "Moresada"
+ },
+ "msw": {
+ "english_name": "Mansoanka"
+ },
+ "msv": {
+ "english_name": "Maslam"
+ },
+ "msu": {
+ "english_name": "Musom"
+ },
+ "mss": {
+ "english_name": "Masela, West"
+ },
+ "msr": {
+ "english_name": "Mongolian Sign Language"
+ },
+ "msq": {
+ "english_name": "Caac"
+ },
+ "msp": {
+ "english_name": "Maritsauá"
+ },
+ "mso": {
+ "english_name": "Mombum"
+ },
+ "msn": {
+ "english_name": "Vurës"
+ },
+ "msm": {
+ "english_name": "Manobo, Agusan"
+ },
+ "msl": {
+ "english_name": "Molof"
+ },
+ "msk": {
+ "english_name": "Mansaka"
+ },
+ "msj": {
+ "english_name": "Ma (Democratic Republic of Congo)"
+ },
+ "msi": {
+ "english_name": "Malay, Sabah"
+ },
+ "msh": {
+ "english_name": "Malagasy, Masikoro"
+ },
+ "msg": {
+ "english_name": "Moraid"
+ },
+ "msf": {
+ "english_name": "Mekwei"
+ },
+ "mse": {
+ "english_name": "Musey"
+ },
+ "msd": {
+ "english_name": "Yucatec Maya Sign Language"
+ },
+ "msc": {
+ "english_name": "Maninka, Sankaran"
+ },
+ "msb": {
+ "english_name": "Masbatenyo"
+ },
+ "kyk": {
+ "english_name": "Kamayo"
+ },
+ "kyj": {
+ "english_name": "Karao"
+ },
+ "kyi": {
+ "english_name": "Kiput"
+ },
+ "kyh": {
+ "english_name": "Karok"
+ },
+ "kyo": {
+ "english_name": "Kelon"
+ },
+ "kyn": {
+ "english_name": "Binukidnon, Northern"
+ },
+ "kym": {
+ "english_name": "Kpatili"
+ },
+ "kyl": {
+ "english_name": "Kalapuya"
+ },
+ "kyc": {
+ "english_name": "Kyaka"
+ },
+ "kyb": {
+ "english_name": "Kalinga, Butbut"
+ },
+ "kya": {
+ "english_name": "Kwaya"
+ },
+ "kyg": {
+ "english_name": "Keyagana"
+ },
+ "kyf": {
+ "english_name": "Kouya"
+ },
+ "kye": {
+ "english_name": "Krache"
+ },
+ "kyd": {
+ "english_name": "Karey"
+ },
+ "kyz": {
+ "english_name": "Kayabí"
+ },
+ "kyy": {
+ "english_name": "Kambaira"
+ },
+ "kyx": {
+ "english_name": "Rapoisi"
+ },
+ "kys": {
+ "english_name": "Kayan, Baram"
+ },
+ "kyr": {
+ "english_name": "Kuruáya"
+ },
+ "kyq": {
+ "english_name": "Kenga"
+ },
+ "kyp": {
+ "english_name": "Kang"
+ },
+ "kyw": {
+ "english_name": "Kudmali"
+ },
+ "kyv": {
+ "english_name": "Kayort"
+ },
+ "kyu": {
+ "english_name": "Kayah, Western"
+ },
+ "kyt": {
+ "english_name": "Kayagar"
+ },
+ "tbp": {
+ "english_name": "Taworta"
+ },
+ "tbs": {
+ "english_name": "Tanguat"
+ },
+ "ryn": {
+ "english_name": "Amami-Oshima, Northern"
+ },
+ "tbr": {
+ "english_name": "Tumtum"
+ },
+ "xzp": {
+ "english_name": "Zapotec, Ancient"
+ },
+ "tbu": {
+ "english_name": "Tubar"
+ },
+ "tbt": {
+ "english_name": "Tembo (Kitembo)"
+ },
+ "tbw": {
+ "english_name": "Tagbanwa"
+ },
+ "xzm": {
+ "english_name": "Zemgalian"
+ },
+ "tbv": {
+ "english_name": "Tobo"
+ },
+ "xzh": {
+ "english_name": "Zhang-Zhung"
+ },
+ "tbi": {
+ "english_name": "Gaam"
+ },
+ "tbh": {
+ "english_name": "Thurawal"
+ },
+ "tbk": {
+ "english_name": "Tagbanwa, Calamian"
+ },
+ "tbj": {
+ "english_name": "Tiang"
+ },
+ "tbm": {
+ "english_name": "Tagbu"
+ },
+ "tbl": {
+ "english_name": "Tboli"
+ },
+ "tbo": {
+ "english_name": "Tawala"
+ },
+ "tbn": {
+ "english_name": "Tunebo, Barro Negro"
+ },
+ "tbc": {
+ "english_name": "Takia"
+ },
+ "gta": {
+ "english_name": "Guató"
+ },
+ "vto": {
+ "english_name": "Vitou"
+ },
+ "gtu": {
+ "english_name": "Aghu-Tharnggala"
+ },
+ "ppi": {
+ "english_name": "Paipai"
+ },
+ "ulm": {
+ "english_name": "Ulumanda'"
+ },
+ "ahn": {
+ "english_name": "Àhàn"
+ },
+ "ppn": {
+ "english_name": "Papapana"
+ },
+ "ttj": {
+ "english_name": "Tooro"
+ },
+ "ahl": {
+ "english_name": "Igo"
+ },
+ "ahm": {
+ "english_name": "Aizi, Mobumrin"
+ },
+ "pps": {
+ "english_name": "Popoloca, San Luís Temalacayuca"
+ },
+ "ryu": {
+ "english_name": "Okinawan, Central"
+ },
+ "shw": {
+ "english_name": "Shwai"
+ },
+ "ppq": {
+ "english_name": "Pei"
+ },
+ "did": {
+ "english_name": "Didinga"
+ },
+ "ppu": {
+ "english_name": "Papora"
+ },
+ "eja": {
+ "english_name": "Ejamat"
+ },
+ "yuy": {
+ "english_name": "Yugur, East"
+ },
+ "yux": {
+ "english_name": "Yukaghir, Southern"
+ },
+ "yuz": {
+ "english_name": "Yuracare"
+ },
+ "yuq": {
+ "english_name": "Yuqui"
+ },
+ "yup": {
+ "english_name": "Yukpa"
+ },
+ "yur": {
+ "english_name": "Yurok"
+ },
+ "yut": {
+ "english_name": "Yopno"
+ },
+ "yuw": {
+ "english_name": "Yau (Morobe Province)"
+ },
+ "yui": {
+ "english_name": "Yurutí"
+ },
+ "jwi": {
+ "english_name": "Jwira-Pepesa"
+ },
+ "yuk": {
+ "english_name": "Yuki"
+ },
+ "yuj": {
+ "english_name": "Karkar-Yuri"
+ },
+ "yum": {
+ "english_name": "Quechan"
+ },
+ "yul": {
+ "english_name": "Yulu"
+ },
+ "yun": {
+ "english_name": "Bena (Nigeria)"
+ },
+ "yua": {
+ "english_name": "Yucateco"
+ },
+ "yuc": {
+ "english_name": "Yuchi"
+ },
+ "yub": {
+ "english_name": "Yugambal"
+ },
+ "yue": {
+ "english_name": "Chinese, Yue"
+ },
+ "yud": {
+ "english_name": "Arabic, Judeo-Tripolitanian"
+ },
+ "yug": {
+ "english_name": "Yug"
+ },
+ "yuf": {
+ "english_name": "Havasupai-Walapai-Yavapai"
+ },
+ "tns": {
+ "english_name": "Tenis"
+ },
+ "ian": {
+ "english_name": "Iatmul"
+ },
+ "iai": {
+ "english_name": "Iaai"
+ },
+ "yxg": {
+ "english_name": "Yagara"
+ },
+ "iap": {
+ "english_name": "Iapama"
+ },
+ "iar": {
+ "english_name": "Purari"
+ },
+ "hud": {
+ "english_name": "Huaulu"
+ },
+ "hue": {
+ "english_name": "Huave, San Francisco Del Mar"
+ },
+ "huf": {
+ "english_name": "Humene"
+ },
+ "hug": {
+ "english_name": "Huachipaeri"
+ },
+ "hub": {
+ "english_name": "Huambisa"
+ },
+ "huc": {
+ "english_name": "=/Hua"
+ },
+ "hul": {
+ "english_name": "Hula"
+ },
+ "hum": {
+ "english_name": "Hungana"
+ },
+ "huo": {
+ "english_name": "Hu"
+ },
+ "huh": {
+ "english_name": "Huilliche"
+ },
+ "hui": {
+ "english_name": "Huli"
+ },
+ "huj": {
+ "english_name": "Hmong, Northern Guiyang"
+ },
+ "huk": {
+ "english_name": "Hulung"
+ },
+ "hut": {
+ "english_name": "Humla"
+ },
+ "huu": {
+ "english_name": "Huitoto, Murui"
+ },
+ "huv": {
+ "english_name": "Huave, San Mateo Del Mar"
+ },
+ "huw": {
+ "english_name": "Hukumina"
+ },
+ "hup": {
+ "english_name": "Hupa"
+ },
+ "huq": {
+ "english_name": "Tsat"
+ },
+ "hur": {
+ "english_name": "Halkomelem"
+ },
+ "hus": {
+ "english_name": "Huastec"
+ },
+ "hux": {
+ "english_name": "Huitoto, Nüpode"
+ },
+ "huy": {
+ "english_name": "Hulaulá"
+ },
+ "huz": {
+ "english_name": "Hunzib"
+ },
+ "pre": {
+ "english_name": "Principense"
+ },
+ "ane": {
+ "english_name": "Xârâcùù"
+ },
+ "prg": {
+ "english_name": "Prussian"
+ },
+ "ang": {
+ "english_name": "English, Old (ca. 450-1100)"
+ },
+ "ana": {
+ "english_name": "Andaqui"
+ },
+ "prc": {
+ "english_name": "Parachi"
+ },
+ "prb": {
+ "english_name": "Lua'"
+ },
+ "anl": {
+ "english_name": "Chin, Anu-Hkongso"
+ },
+ "anm": {
+ "english_name": "Anal"
+ },
+ "ann": {
+ "english_name": "Obolo"
+ },
+ "ano": {
+ "english_name": "Andoque"
+ },
+ "anh": {
+ "english_name": "Nend"
+ },
+ "prh": {
+ "english_name": "Porohanon"
+ },
+ "anj": {
+ "english_name": "Anor"
+ },
+ "ank": {
+ "english_name": "Goemai"
+ },
+ "pru": {
+ "english_name": "Puragi"
+ },
+ "anu": {
+ "english_name": "Anuak"
+ },
+ "anv": {
+ "english_name": "Denya"
+ },
+ "anw": {
+ "english_name": "Anaang"
+ },
+ "prq": {
+ "english_name": "Ashéninka Perené"
+ },
+ "anq": {
+ "english_name": "Jarawa (India)"
+ },
+ "prs": {
+ "english_name": "Dari"
+ },
+ "prr": {
+ "english_name": "Puri"
+ },
+ "pry": {
+ "english_name": "Pray 3"
+ },
+ "prx": {
+ "english_name": "Purik"
+ },
+ "anz": {
+ "english_name": "Anem"
+ },
+ "prz": {
+ "english_name": "Providencia Sign Language"
+ },
+ "gkp": {
+ "english_name": "Kpelle, Guinea"
+ },
+ "gko": {
+ "english_name": "Kok-Nar"
+ },
+ "gkn": {
+ "english_name": "Gokana"
+ },
+ "gka": {
+ "english_name": "Guya"
+ },
+ "gke": {
+ "english_name": "Ndai"
+ },
+ "fcs": {
+ "english_name": "Quebec Sign Language"
+ },
+ "uya": {
+ "english_name": "Doko-Uyanga"
+ },
+ "nlq": {
+ "english_name": "Naga, Lao"
+ },
+ "tkg": {
+ "english_name": "Malagasy, Tesaka"
+ },
+ "tkd": {
+ "english_name": "Tukudede"
+ },
+ "tke": {
+ "english_name": "Takwane"
+ },
+ "nlu": {
+ "english_name": "Nchumbulu"
+ },
+ "nlw": {
+ "english_name": "Walangama"
+ },
+ "nlv": {
+ "english_name": "Nahuatl, Orizaba"
+ },
+ "nly": {
+ "english_name": "Nyamal"
+ },
+ "nlx": {
+ "english_name": "Nahali"
+ },
+ "tkl": {
+ "english_name": "Tokelau"
+ },
+ "nlz": {
+ "english_name": "Nalögo"
+ },
+ "nla": {
+ "english_name": "Ngombale"
+ },
+ "tkw": {
+ "english_name": "Teanu"
+ },
+ "nlc": {
+ "english_name": "Nalca"
+ },
+ "tku": {
+ "english_name": "Totonac, Upper Necaxa"
+ },
+ "nle": {
+ "english_name": "Nyala, East"
+ },
+ "tks": {
+ "english_name": "Takestani"
+ },
+ "nlg": {
+ "english_name": "Gela"
+ },
+ "tkq": {
+ "english_name": "Tee"
+ },
+ "nli": {
+ "english_name": "Grangali"
+ },
+ "nlk": {
+ "english_name": "Yali, Ninia"
+ },
+ "nlj": {
+ "english_name": "Nyali"
+ },
+ "tkz": {
+ "english_name": "Takua"
+ },
+ "nll": {
+ "english_name": "Nihali"
+ },
+ "nlo": {
+ "english_name": "Ngul"
+ },
+ "ssy": {
+ "english_name": "Saho"
+ },
+ "dyy": {
+ "english_name": "Dyaabugay"
+ },
+ "ssz": {
+ "english_name": "Sengseng"
+ },
+ "ssu": {
+ "english_name": "Susuami"
+ },
+ "dyu": {
+ "english_name": "Dyula"
+ },
+ "ssv": {
+ "english_name": "Shark Bay"
+ },
+ "ssq": {
+ "english_name": "So'a"
+ },
+ "ssp": {
+ "english_name": "Spanish Sign Language"
+ },
+ "sss": {
+ "english_name": "Sô"
+ },
+ "ssr": {
+ "english_name": "Swiss-French Sign Language"
+ },
+ "ssm": {
+ "english_name": "Semnam"
+ },
+ "dym": {
+ "english_name": "Dogon, Yanda Dom"
+ },
+ "dyn": {
+ "english_name": "Dyangadi"
+ },
+ "dyo": {
+ "english_name": "Jola-Fonyi"
+ },
+ "ssi": {
+ "english_name": "Sansi"
+ },
+ "dyi": {
+ "english_name": "Senoufo, Djimini"
+ },
+ "ssk": {
+ "english_name": "Sunam"
+ },
+ "ssj": {
+ "english_name": "Sausi"
+ },
+ "dyd": {
+ "english_name": "Dyugun"
+ },
+ "ssd": {
+ "english_name": "Siroi"
+ },
+ "ssg": {
+ "english_name": "Seimat"
+ },
+ "dyg": {
+ "english_name": "Agta, Villa Viciosa"
+ },
+ "dya": {
+ "english_name": "Dyan"
+ },
+ "dyb": {
+ "english_name": "Dyaberdyaber"
+ },
+ "ssb": {
+ "english_name": "Sama, Southern"
+ },
+ "rms": {
+ "english_name": "Romanian Sign Language"
+ },
+ "rmp": {
+ "english_name": "Rempi"
+ },
+ "rmq": {
+ "english_name": "Caló"
+ },
+ "rmv": {
+ "english_name": "Romanova"
+ },
+ "rmw": {
+ "english_name": "Romani, Welsh"
+ },
+ "rmt": {
+ "english_name": "Domari"
+ },
+ "lnz": {
+ "english_name": "Lonzo"
+ },
+ "lnu": {
+ "english_name": "Longuda"
+ },
+ "lnw": {
+ "english_name": "Lanima"
+ },
+ "rmy": {
+ "english_name": "Romani, Vlax"
+ },
+ "lns": {
+ "english_name": "Lamnso'"
+ },
+ "lnm": {
+ "english_name": "Langam"
+ },
+ "lnl": {
+ "english_name": "Banda, South Central"
+ },
+ "lno": {
+ "english_name": "Lango (Sudan)"
+ },
+ "lnn": {
+ "english_name": "Lorediakarkar"
+ },
+ "lni": {
+ "english_name": "Daantanai'"
+ },
+ "lnh": {
+ "english_name": "Lanoh"
+ },
+ "rmd": {
+ "english_name": "Danish, Traveller"
+ },
+ "lnj": {
+ "english_name": "Leningitij"
+ },
+ "lnd": {
+ "english_name": "Lundayeh"
+ },
+ "lng": {
+ "english_name": "Langobardic"
+ },
+ "rmi": {
+ "english_name": "Lomavren"
+ },
+ "lna": {
+ "english_name": "Langbashe"
+ },
+ "rmo": {
+ "english_name": "Romani, Sinte"
+ },
+ "rml": {
+ "english_name": "Romani, Baltic"
+ },
+ "lnb": {
+ "english_name": "Mbalanhu"
+ },
+ "pox": {
+ "english_name": "Polabian"
+ },
+ "poy": {
+ "english_name": "Pogolo"
+ },
+ "pov": {
+ "english_name": "Crioulo, Upper Guinea"
+ },
+ "pow": {
+ "english_name": "Popoloca, San Felipe Otlaltepec"
+ },
+ "pot": {
+ "english_name": "Potawatomi"
+ },
+ "pos": {
+ "english_name": "Popoluca, Sayula"
+ },
+ "pop": {
+ "english_name": "Pwapwâ"
+ },
+ "poq": {
+ "english_name": "Popoluca, Texistepec"
+ },
+ "pon": {
+ "english_name": "Pohnpeian"
+ },
+ "poo": {
+ "english_name": "Pomo, Central"
+ },
+ "pom": {
+ "english_name": "Pomo, Southeastern"
+ },
+ "pok": {
+ "english_name": "Pokangá"
+ },
+ "poh": {
+ "english_name": "Poqomchi'"
+ },
+ "poi": {
+ "english_name": "Popoluca, Highland"
+ },
+ "pof": {
+ "english_name": "Poke"
+ },
+ "pog": {
+ "english_name": "Potiguára"
+ },
+ "pod": {
+ "english_name": "Ponares"
+ },
+ "poe": {
+ "english_name": "Popoloca, San Juan Atzingo"
+ },
+ "poc": {
+ "english_name": "Poqomam"
+ },
+ "tnn": {
+ "english_name": "Tanna, North"
+ },
+ "mqa": {
+ "english_name": "Maba (Indonesia)"
+ },
+ "mqc": {
+ "english_name": "Mangole"
+ },
+ "mqb": {
+ "english_name": "Mbuko"
+ },
+ "mqe": {
+ "english_name": "Matepi"
+ },
+ "mqg": {
+ "english_name": "Malay, Kota Bangun Kutai"
+ },
+ "mqf": {
+ "english_name": "Momuna"
+ },
+ "mqi": {
+ "english_name": "Mariri"
+ },
+ "mqh": {
+ "english_name": "Mixtec, Tlazoyaltepec"
+ },
+ "mqk": {
+ "english_name": "Manobo, Rajah Kabunsuwan"
+ },
+ "mqj": {
+ "english_name": "Mamasa"
+ },
+ "mqm": {
+ "english_name": "Marquesan, South"
+ },
+ "mql": {
+ "english_name": "Mbelime"
+ },
+ "mqo": {
+ "english_name": "Modole"
+ },
+ "mqn": {
+ "english_name": "Moronene"
+ },
+ "mqq": {
+ "english_name": "Minokok"
+ },
+ "mqp": {
+ "english_name": "Manipa"
+ },
+ "mqs": {
+ "english_name": "Makian, West"
+ },
+ "mqr": {
+ "english_name": "Mander"
+ },
+ "mqu": {
+ "english_name": "Mandari"
+ },
+ "mqt": {
+ "english_name": "Mok"
+ },
+ "mqw": {
+ "english_name": "Murupi"
+ },
+ "mqv": {
+ "english_name": "Mosimo"
+ },
+ "mqy": {
+ "english_name": "Manggarai"
+ },
+ "mqx": {
+ "english_name": "Mamuju"
+ },
+ "mqz": {
+ "english_name": "Pano"
+ },
+ "uha": {
+ "english_name": "Uhami"
+ },
+ "tnh": {
+ "english_name": "Maiani"
+ },
+ "tix": {
+ "english_name": "Tiwa, Southern"
+ },
+ "tiz": {
+ "english_name": "Tai Hongjin"
+ },
+ "yhl": {
+ "english_name": "Phowa, Hlepho"
+ },
+ "yha": {
+ "english_name": "Buyang, Baha"
+ },
+ "yhd": {
+ "english_name": "Arabic, Judeo-Iraqi"
+ },
+ "tiu": {
+ "english_name": "Adasen"
+ },
+ "tiv": {
+ "english_name": "Tiv"
+ },
+ "tip": {
+ "english_name": "Trimuris"
+ },
+ "tiq": {
+ "english_name": "Tiéfo"
+ },
+ "tis": {
+ "english_name": "Itneg, Masadiit"
+ },
+ "tim": {
+ "english_name": "Timbe"
+ },
+ "tif": {
+ "english_name": "Tifal"
+ },
+ "wbv": {
+ "english_name": "Wajarri"
+ },
+ "wbw": {
+ "english_name": "Woi"
+ },
+ "wbt": {
+ "english_name": "Wanman"
+ },
+ "wbr": {
+ "english_name": "Wagdi"
+ },
+ "wbp": {
+ "english_name": "Warlpiri"
+ },
+ "wbq": {
+ "english_name": "Waddar"
+ },
+ "wbf": {
+ "english_name": "Wara"
+ },
+ "wbe": {
+ "english_name": "Waritai"
+ },
+ "wbb": {
+ "english_name": "Wabo"
+ },
+ "wba": {
+ "english_name": "Warao"
+ },
+ "wbl": {
+ "english_name": "Wakhi"
+ },
+ "wbm": {
+ "english_name": "Wa"
+ },
+ "wbj": {
+ "english_name": "Alagwa"
+ },
+ "wbk": {
+ "english_name": "Waigali"
+ },
+ "wbh": {
+ "english_name": "Wanda"
+ },
+ "wbi": {
+ "english_name": "Vwanji"
+ },
+ "gvj": {
+ "english_name": "Guajá"
+ },
+ "gvn": {
+ "english_name": "Kuku-Yalanji"
+ },
+ "gvo": {
+ "english_name": "Gavião Do Jiparaná"
+ },
+ "gvl": {
+ "english_name": "Gulay"
+ },
+ "gvm": {
+ "english_name": "Gurmana"
+ },
+ "gvc": {
+ "english_name": "Guanano"
+ },
+ "gva": {
+ "english_name": "Guana (Paraguay)"
+ },
+ "gvf": {
+ "english_name": "Golin"
+ },
+ "gve": {
+ "english_name": "Duwet"
+ },
+ "gvy": {
+ "english_name": "Guyani"
+ },
+ "gvr": {
+ "english_name": "Gurung, Western"
+ },
+ "gvs": {
+ "english_name": "Gumawana"
+ },
+ "gvp": {
+ "english_name": "Gavião, Pará"
+ },
+ "om": {
+ "english_name": "Oromo"
+ },
+ "oj": {
+ "english_name": "Ojibwa"
+ },
+ "oc": {
+ "name": "Occitan (aprèp 1500)",
+ "english_name": "Occitan (post 1500)"
+ },
+ "sqh": {
+ "english_name": "Shau"
+ },
+ "os": {
+ "english_name": "Ossetian"
+ },
+ "or": {
+ "name": "Oriya (macrolanguage)",
+ "english_name": "Oriya (macrolanguage)"
+ },
+ "yap": {
+ "english_name": "Yapese"
+ },
+ "ehu": {
+ "english_name": "Ehueun"
+ },
+ "yan": {
+ "english_name": "Mayangna"
+ },
+ "rmu": {
+ "english_name": "Romani, Tavringer"
+ },
+ "jub": {
+ "english_name": "Wannu"
+ },
+ "juc": {
+ "english_name": "Jurchen"
+ },
+ "jua": {
+ "english_name": "Júma"
+ },
+ "jud": {
+ "english_name": "Worodougou"
+ },
+ "juk": {
+ "english_name": "Wapan"
+ },
+ "juh": {
+ "english_name": "Hõne"
+ },
+ "jui": {
+ "english_name": "Ngadjuri"
+ },
+ "jun": {
+ "english_name": "Juang"
+ },
+ "juo": {
+ "english_name": "Jiba"
+ },
+ "jul": {
+ "english_name": "Jirel"
+ },
+ "jum": {
+ "english_name": "Jumjum"
+ },
+ "jur": {
+ "english_name": "Jurúna"
+ },
+ "jus": {
+ "english_name": "Jumla Sign Language"
+ },
+ "jup": {
+ "english_name": "Hupdë"
+ },
+ "juw": {
+ "english_name": "Wãpha"
+ },
+ "jut": {
+ "english_name": "Jutish"
+ },
+ "juu": {
+ "english_name": "Ju"
+ },
+ "juy": {
+ "english_name": "Juray"
+ },
+ "cbb": {
+ "english_name": "Cabiyarí"
+ },
+ "cbc": {
+ "english_name": "Carapana"
+ },
+ "cbg": {
+ "english_name": "Chimila"
+ },
+ "cbd": {
+ "english_name": "Carijona"
+ },
+ "cbe": {
+ "english_name": "Chipiajes"
+ },
+ "cbj": {
+ "english_name": "Ede Cabe"
+ },
+ "cbk": {
+ "english_name": "Chavacano"
+ },
+ "cbh": {
+ "english_name": "Cagua"
+ },
+ "cbi": {
+ "english_name": "Chachi"
+ },
+ "cbn": {
+ "english_name": "Nyahkur"
+ },
+ "cbo": {
+ "english_name": "Izora"
+ },
+ "cbl": {
+ "english_name": "Chin, Bualkhaw"
+ },
+ "cbr": {
+ "english_name": "Cashibo-Cacataibo"
+ },
+ "cbs": {
+ "english_name": "Cashinahua"
+ },
+ "cbv": {
+ "english_name": "Cacua"
+ },
+ "cbw": {
+ "english_name": "Kinabalian"
+ },
+ "cbt": {
+ "english_name": "Chayahuita"
+ },
+ "cbu": {
+ "english_name": "Candoshi-Shapra"
+ },
+ "cby": {
+ "english_name": "Carabayo"
+ },
+ "igw": {
+ "english_name": "Igwe"
+ },
+ "igs": {
+ "english_name": "Interglossa"
+ },
+ "igg": {
+ "english_name": "Igana"
+ },
+ "ige": {
+ "english_name": "Igede"
+ },
+ "igb": {
+ "english_name": "Ebira"
+ },
+ "igo": {
+ "english_name": "Isebe"
+ },
+ "ign": {
+ "english_name": "Ignaciano"
+ },
+ "igm": {
+ "english_name": "Kanggape"
+ },
+ "igl": {
+ "english_name": "Igala"
+ },
+ "hwo": {
+ "english_name": "Hwana"
+ },
+ "hwc": {
+ "english_name": "Creole English, Hawai'i"
+ },
+ "hwa": {
+ "english_name": "Wané"
+ },
+ "tlu": {
+ "english_name": "Tulehu"
+ },
+ "hmi": {
+ "english_name": "Hmong, Northern Huishui"
+ },
+ "pto": {
+ "english_name": "Zo'é"
+ },
+ "ptn": {
+ "english_name": "Patani"
+ },
+ "all": {
+ "english_name": "Allar"
+ },
+ "alm": {
+ "english_name": "Amblong"
+ },
+ "alj": {
+ "english_name": "Alangan"
+ },
+ "alk": {
+ "english_name": "Alak"
+ },
+ "pti": {
+ "english_name": "Pintiini"
+ },
+ "ali": {
+ "english_name": "Amaimon"
+ },
+ "alf": {
+ "english_name": "Alege"
+ },
+ "ald": {
+ "english_name": "Alladian"
+ },
+ "ale": {
+ "english_name": "Aleut"
+ },
+ "alc": {
+ "english_name": "Qawasqar"
+ },
+ "pta": {
+ "english_name": "Pai Tavytera"
+ },
+ "ala": {
+ "english_name": "Alago"
+ },
+ "alz": {
+ "english_name": "Alur"
+ },
+ "pty": {
+ "english_name": "Pathiya"
+ },
+ "aly": {
+ "english_name": "Alyawarr"
+ },
+ "ptw": {
+ "english_name": "Pentlatch"
+ },
+ "ptv": {
+ "english_name": "Port Vato"
+ },
+ "ptu": {
+ "english_name": "Bambam"
+ },
+ "alu": {
+ "english_name": "'Are'are"
+ },
+ "alr": {
+ "english_name": "Alutor"
+ },
+ "ptr": {
+ "english_name": "Piamatsina"
+ },
+ "alp": {
+ "english_name": "Alune"
+ },
+ "alq": {
+ "english_name": "Algonquin"
+ },
+ "rob": {
+ "english_name": "Tae'"
+ },
+ "faz": {
+ "english_name": "Fars, Northwestern"
+ },
+ "fax": {
+ "english_name": "Fala"
+ },
+ "fay": {
+ "english_name": "Fars, Southwestern"
+ },
+ "far": {
+ "english_name": "Fataleka"
+ },
+ "fap": {
+ "english_name": "Palor"
+ },
+ "fat": {
+ "english_name": "Fanti"
+ },
+ "fau": {
+ "english_name": "Fayu"
+ },
+ "faj": {
+ "english_name": "Faita"
+ },
+ "fak": {
+ "english_name": "Fang (Cameroon)"
+ },
+ "fah": {
+ "english_name": "Fali, Baissa"
+ },
+ "fai": {
+ "english_name": "Faiwol"
+ },
+ "fan": {
+ "english_name": "Fang (Equatorial Guinea)"
+ },
+ "rof": {
+ "english_name": "Rombo"
+ },
+ "fal": {
+ "english_name": "Fali, South"
+ },
+ "fam": {
+ "english_name": "Fam"
+ },
+ "fab": {
+ "english_name": "Fa d'Ambu"
+ },
+ "uwa": {
+ "english_name": "Kuku-Uwanh"
+ },
+ "faa": {
+ "english_name": "Fasu"
+ },
+ "faf": {
+ "english_name": "Fagani"
+ },
+ "fag": {
+ "english_name": "Finongan"
+ },
+ "fad": {
+ "english_name": "Wagi"
+ },
+ "teh": {
+ "english_name": "Tehuelche"
+ },
+ "tei": {
+ "english_name": "Torricelli"
+ },
+ "nby": {
+ "english_name": "Ningera"
+ },
+ "tek": {
+ "english_name": "Teke, Ibali"
+ },
+ "tem": {
+ "english_name": "Timne"
+ },
+ "ten": {
+ "english_name": "Tama (Colombia)"
+ },
+ "teo": {
+ "english_name": "Teso"
+ },
+ "nbs": {
+ "english_name": "Namibian Sign Language"
+ },
+ "nbr": {
+ "english_name": "Numana-Nunku-Gbantu-Numbu"
+ },
+ "nbq": {
+ "english_name": "Nggem"
+ },
+ "nbp": {
+ "english_name": "Nnam"
+ },
+ "nbw": {
+ "english_name": "Ngbandi, Southern"
+ },
+ "nbv": {
+ "english_name": "Ngamambo"
+ },
+ "nbu": {
+ "english_name": "Naga, Rongmei"
+ },
+ "nbt": {
+ "english_name": "Na"
+ },
+ "nbk": {
+ "english_name": "Nake"
+ },
+ "nbj": {
+ "english_name": "Ngarinman"
+ },
+ "nbi": {
+ "english_name": "Naga, Mao"
+ },
+ "nbh": {
+ "english_name": "Ngamo"
+ },
+ "nbo": {
+ "english_name": "Nkukoli"
+ },
+ "nbn": {
+ "english_name": "Kuri"
+ },
+ "nbm": {
+ "english_name": "Ngbaka Ma'bo"
+ },
+ "nbc": {
+ "english_name": "Naga, Chang"
+ },
+ "nbb": {
+ "english_name": "Ndoe"
+ },
+ "nba": {
+ "english_name": "Nyemba"
+ },
+ "tes": {
+ "english_name": "Tengger"
+ },
+ "nbg": {
+ "english_name": "Nagarchal"
+ },
+ "ror": {
+ "english_name": "Rongga"
+ },
+ "nbe": {
+ "english_name": "Naga, Konyak"
+ },
+ "nbd": {
+ "english_name": "Ngbinda"
+ },
+ "sug": {
+ "english_name": "Suganga"
+ },
+ "sue": {
+ "english_name": "Suena"
+ },
+ "suc": {
+ "english_name": "Subanon, Western"
+ },
+ "sub": {
+ "english_name": "Suku"
+ },
+ "sua": {
+ "english_name": "Sulka"
+ },
+ "sbu": {
+ "english_name": "Bhoti, Stod"
+ },
+ "suk": {
+ "english_name": "Sukuma"
+ },
+ "suj": {
+ "english_name": "Shubi"
+ },
+ "sui": {
+ "english_name": "Suki"
+ },
+ "rou": {
+ "english_name": "Runga"
+ },
+ "suw": {
+ "english_name": "Sumbwa"
+ },
+ "sbz": {
+ "english_name": "Sara Kaba"
+ },
+ "sut": {
+ "english_name": "Subtiaba"
+ },
+ "sus": {
+ "english_name": "Susu"
+ },
+ "sur": {
+ "english_name": "Mwaghavul"
+ },
+ "suq": {
+ "english_name": "Suri"
+ },
+ "row": {
+ "english_name": "Dela-Oenale"
+ },
+ "sbx": {
+ "english_name": "Seberuang"
+ },
+ "suy": {
+ "english_name": "Suyá"
+ },
+ "sux": {
+ "english_name": "Sumerian"
+ },
+ "sco": {
+ "english_name": "Scots"
+ },
+ "sby": {
+ "english_name": "Soli"
+ },
+ "sbb": {
+ "english_name": "Simbo"
+ },
+ "sbc": {
+ "english_name": "Kele (Papua New Guinea)"
+ },
+ "sba": {
+ "english_name": "Ngambay"
+ },
+ "sbf": {
+ "english_name": "Shabo"
+ },
+ "sbg": {
+ "english_name": "Seget"
+ },
+ "rkt": {
+ "english_name": "Rangpuri"
+ },
+ "rkw": {
+ "english_name": "Arakwal"
+ },
+ "sbd": {
+ "english_name": "Samo, Southern"
+ },
+ "sbe": {
+ "english_name": "Saliba"
+ },
+ "sbj": {
+ "english_name": "Surbakhal"
+ },
+ "rka": {
+ "english_name": "Kraol"
+ },
+ "rkb": {
+ "english_name": "Rikbaktsa"
+ },
+ "sbk": {
+ "english_name": "Safwa"
+ },
+ "rkm": {
+ "english_name": "Marka"
+ },
+ "rkh": {
+ "english_name": "Rakahanga-Manihiki"
+ },
+ "rki": {
+ "english_name": "Rakhine"
+ },
+ "sbi": {
+ "english_name": "Seti"
+ },
+ "sbn": {
+ "english_name": "Bhil, Sindhi"
+ },
+ "sbl": {
+ "english_name": "Sambal, Botolan"
+ },
+ "sbm": {
+ "english_name": "Sagala"
+ },
+ "yva": {
+ "english_name": "Yawa"
+ },
+ "pzn": {
+ "english_name": "Naga, Para"
+ },
+ "sce": {
+ "english_name": "Dongxiang"
+ },
+ "oyy": {
+ "english_name": "Oya'oya"
+ },
+ "oym": {
+ "english_name": "Wayampi"
+ },
+ "oyd": {
+ "english_name": "Oyda"
+ },
+ "oyb": {
+ "english_name": "Oy"
+ },
+ "lha": {
+ "english_name": "Laha (Viet Nam)"
+ },
+ "lhn": {
+ "english_name": "Lahanan"
+ },
+ "lhm": {
+ "english_name": "Lhomi"
+ },
+ "lhl": {
+ "english_name": "Lohar, Lahul"
+ },
+ "lhi": {
+ "english_name": "Lahu Shi"
+ },
+ "lhh": {
+ "english_name": "Laha (Indonesia)"
+ },
+ "lhu": {
+ "english_name": "Lahu"
+ },
+ "lht": {
+ "english_name": "Lo-Toga"
+ },
+ "lhs": {
+ "english_name": "Mlahsö"
+ },
+ "lhp": {
+ "english_name": "Lhokpu"
+ },
+ "ynl": {
+ "english_name": "Yangulam"
+ },
+ "ynn": {
+ "english_name": "Yana"
+ },
+ "yno": {
+ "english_name": "Yong"
+ },
+ "ynk": {
+ "english_name": "Yupik, Naukan"
+ },
+ "ynd": {
+ "english_name": "Yandruwandha"
+ },
+ "yne": {
+ "english_name": "Lang'e"
+ },
+ "yng": {
+ "english_name": "Yango"
+ },
+ "yna": {
+ "english_name": "Aluo"
+ },
+ "ynu": {
+ "english_name": "Yahuna"
+ },
+ "ynq": {
+ "english_name": "Yendang"
+ },
+ "yns": {
+ "english_name": "Yansi"
+ },
+ "tln": {
+ "english_name": "Talondo'"
+ },
+ "izh": {
+ "english_name": "Ingrian"
+ },
+ "izr": {
+ "english_name": "Izere"
+ },
+ "izz": {
+ "english_name": "Izii"
+ },
+ "wlx": {
+ "english_name": "Wali (Ghana)"
+ },
+ "wly": {
+ "english_name": "Waling"
+ },
+ "wlr": {
+ "english_name": "Wailapa"
+ },
+ "wls": {
+ "english_name": "Wallisian"
+ },
+ "wlu": {
+ "english_name": "Wuliwuli"
+ },
+ "wlv": {
+ "english_name": "Wichí Lhamtés Vejoz"
+ },
+ "wlw": {
+ "english_name": "Walak"
+ },
+ "wli": {
+ "english_name": "Waioli"
+ },
+ "wlk": {
+ "english_name": "Wailaki"
+ },
+ "wll": {
+ "english_name": "Wali (Sudan)"
+ },
+ "wlm": {
+ "english_name": "Welsh, Middle"
+ },
+ "wlo": {
+ "english_name": "Wolio"
+ },
+ "wla": {
+ "english_name": "Walio"
+ },
+ "wlc": {
+ "english_name": "Comorian, Mwali"
+ },
+ "wle": {
+ "english_name": "Wolane"
+ },
+ "wlg": {
+ "english_name": "Kunbarlang"
+ },
+ "gpn": {
+ "english_name": "Taiap"
+ },
+ "gpe": {
+ "english_name": "Pidgin English, Ghanaian"
+ },
+ "gpa": {
+ "english_name": "Gupa-Abawa"
+ },
+ "efi": {
+ "english_name": "Efik"
+ },
+ "efa": {
+ "english_name": "Efai"
+ },
+ "efe": {
+ "english_name": "Efe"
+ },
+ "jsl": {
+ "english_name": "Japanese Sign Language"
+ },
+ "scq": {
+ "english_name": "Sa'och"
+ },
+ "scp": {
+ "english_name": "Helambu Sherpa"
+ },
+ "cde": {
+ "english_name": "Chenchu"
+ },
+ "cdf": {
+ "english_name": "Chiru"
+ },
+ "cdg": {
+ "english_name": "Chamari"
+ },
+ "cda": {
+ "english_name": "Choni"
+ },
+ "rtc": {
+ "english_name": "Chin, Rungtu"
+ },
+ "rtm": {
+ "english_name": "Rotuman"
+ },
+ "cdm": {
+ "english_name": "Chepang"
+ },
+ "cdn": {
+ "english_name": "Chaudangsi"
+ },
+ "cdo": {
+ "english_name": "Chinese, Min Dong"
+ },
+ "cdh": {
+ "english_name": "Chambeali"
+ },
+ "cdi": {
+ "english_name": "Chodri"
+ },
+ "cdj": {
+ "english_name": "Churahi"
+ },
+ "rtw": {
+ "english_name": "Rathawi"
+ },
+ "cdr": {
+ "english_name": "Cinda-Regi-Tiyal"
+ },
+ "cds": {
+ "english_name": "Chadian Sign Language"
+ },
+ "tcz": {
+ "english_name": "Chin, Thado"
+ },
+ "cdy": {
+ "english_name": "Chadong"
+ },
+ "cdz": {
+ "english_name": "Koda"
+ },
+ "bfc": {
+ "english_name": "Bai, Northern"
+ },
+ "bfb": {
+ "english_name": "Bareli, Pauri"
+ },
+ "bfa": {
+ "english_name": "Bari"
+ },
+ "bfg": {
+ "english_name": "Kayan, Busang"
+ },
+ "bff": {
+ "english_name": "Bofi"
+ },
+ "bfe": {
+ "english_name": "Betaf"
+ },
+ "bfd": {
+ "english_name": "Bafut"
+ },
+ "bfk": {
+ "english_name": "Ban Khor Sign Language"
+ },
+ "bfj": {
+ "english_name": "Bafanji"
+ },
+ "bfi": {
+ "english_name": "British Sign Language"
+ },
+ "bfh": {
+ "english_name": "Blafe"
+ },
+ "bfo": {
+ "english_name": "Birifor, Malba"
+ },
+ "bfn": {
+ "english_name": "Bunak"
+ },
+ "bfm": {
+ "english_name": "Mmen"
+ },
+ "bfl": {
+ "english_name": "Banda-Ndélé"
+ },
+ "bfs": {
+ "english_name": "Bai, Southern"
+ },
+ "bfr": {
+ "english_name": "Bazigar"
+ },
+ "bfq": {
+ "english_name": "Badaga"
+ },
+ "bfp": {
+ "english_name": "Beba"
+ },
+ "bfw": {
+ "english_name": "Bondo"
+ },
+ "bfu": {
+ "english_name": "Gahri"
+ },
+ "bft": {
+ "english_name": "Balti"
+ },
+ "bfz": {
+ "english_name": "Pahari, Mahasu"
+ },
+ "bfy": {
+ "english_name": "Bagheli"
+ },
+ "bfx": {
+ "english_name": "Bantayanon"
+ },
+ "tct": {
+ "english_name": "T'en"
+ },
+ "hir": {
+ "english_name": "Himarimã"
+ },
+ "tcu": {
+ "english_name": "Tarahumara, Southeastern"
+ },
+ "hit": {
+ "english_name": "Hittite"
+ },
+ "hiw": {
+ "english_name": "Hiw"
+ },
+ "hix": {
+ "english_name": "Hixkaryána"
+ },
+ "tcs": {
+ "english_name": "Creole, Torres Strait"
+ },
+ "hia": {
+ "english_name": "Lamang"
+ },
+ "hib": {
+ "english_name": "Hibito"
+ },
+ "hid": {
+ "english_name": "Hidatsa"
+ },
+ "tcp": {
+ "english_name": "Chin, Tawr"
+ },
+ "hif": {
+ "english_name": "Hindi, Fiji"
+ },
+ "hig": {
+ "english_name": "Kamwe"
+ },
+ "hih": {
+ "english_name": "Pamosu"
+ },
+ "hii": {
+ "english_name": "Hinduri"
+ },
+ "hij": {
+ "english_name": "Hijuk"
+ },
+ "hik": {
+ "english_name": "Seit-Kaitetu"
+ },
+ "hil": {
+ "english_name": "Hiligaynon"
+ },
+ "hio": {
+ "english_name": "Tsoa"
+ },
+ "tcn": {
+ "english_name": "Tichurong"
+ },
+ "tco": {
+ "english_name": "Taungyo"
+ },
+ "tcl": {
+ "english_name": "Taman (Myanmar)"
+ },
+ "tcm": {
+ "english_name": "Tanahmerah"
+ },
+ "tck": {
+ "english_name": "Tchitchege"
+ },
+ "arp": {
+ "english_name": "Arapaho"
+ },
+ "arq": {
+ "english_name": "Arabic, Algerian"
+ },
+ "arr": {
+ "english_name": "Karo (Brazil)"
+ },
+ "ars": {
+ "english_name": "Arabic, Najdi"
+ },
+ "aru": {
+ "english_name": "Aruá (Amazonas State)"
+ },
+ "arv": {
+ "english_name": "Arbore"
+ },
+ "arw": {
+ "english_name": "Arawak"
+ },
+ "arx": {
+ "english_name": "Aruá (Rodonia State)"
+ },
+ "ary": {
+ "english_name": "Arabic, Moroccan"
+ },
+ "arz": {
+ "english_name": "Arabic, Egyptian"
+ },
+ "tci": {
+ "english_name": "Wára"
+ },
+ "roc": {
+ "english_name": "Roglai, Cacgia"
+ },
+ "tcf": {
+ "english_name": "Me'phaa, Malinaltepec"
+ },
+ "arb": {
+ "english_name": "Arabic, Standard"
+ },
+ "arc": {
+ "english_name": "Aramaic, Official (700-300 BCE)"
+ },
+ "ard": {
+ "english_name": "Arabana"
+ },
+ "are": {
+ "english_name": "Arrarnta, Western"
+ },
+ "tcg": {
+ "english_name": "Tamagario"
+ },
+ "arh": {
+ "english_name": "Arhuaco"
+ },
+ "ari": {
+ "english_name": "Arikara"
+ },
+ "arj": {
+ "english_name": "Arapaso"
+ },
+ "ark": {
+ "english_name": "Arikapú"
+ },
+ "arl": {
+ "english_name": "Arabela"
+ },
+ "tcd": {
+ "english_name": "Tafi"
+ },
+ "arn": {
+ "english_name": "Mapudungun"
+ },
+ "aro": {
+ "english_name": "Araona"
+ },
+ "uuu": {
+ "english_name": "U"
+ },
+ "fgr": {
+ "english_name": "Fongoro"
+ },
+ "uur": {
+ "english_name": "Ura (Vanuatu)"
+ },
+ "uum": {
+ "english_name": "Urum"
+ },
+ "uun": {
+ "english_name": "Kulon-Pazeh"
+ },
+ "tgr": {
+ "english_name": "Tareng"
+ },
+ "tgs": {
+ "english_name": "Nume"
+ },
+ "tgp": {
+ "english_name": "Tangoa"
+ },
+ "tgq": {
+ "english_name": "Tring"
+ },
+ "tgv": {
+ "english_name": "Tingui-Boto"
+ },
+ "tgw": {
+ "english_name": "Senoufo, Tagwana"
+ },
+ "tgt": {
+ "english_name": "Tagbanwa, Central"
+ },
+ "tgu": {
+ "english_name": "Tanggu"
+ },
+ "tgz": {
+ "english_name": "Tagalaka"
+ },
+ "tgx": {
+ "english_name": "Tagish"
+ },
+ "tgy": {
+ "english_name": "Togoyo"
+ },
+ "tgb": {
+ "english_name": "Tobilung"
+ },
+ "tgc": {
+ "english_name": "Tigak"
+ },
+ "tga": {
+ "english_name": "Sagalla"
+ },
+ "tgf": {
+ "english_name": "Chalikha"
+ },
+ "tgd": {
+ "english_name": "Ciwogai"
+ },
+ "tge": {
+ "english_name": "Tamang, Eastern Gorkha"
+ },
+ "tgj": {
+ "english_name": "Tagin"
+ },
+ "tgh": {
+ "english_name": "Creole English, Tobagonian"
+ },
+ "tgi": {
+ "english_name": "Lawunuia"
+ },
+ "tgn": {
+ "english_name": "Tandaganon"
+ },
+ "tgo": {
+ "english_name": "Sudest"
+ },
+ "duh": {
+ "english_name": "Dungra Bhil"
+ },
+ "ps": {
+ "name": "Pushto",
+ "english_name": "Pushto"
+ },
+ "duj": {
+ "english_name": "Dhuwal"
+ },
+ "duk": {
+ "english_name": "Uyajitaya"
+ },
+ "dul": {
+ "english_name": "Agta, Alabat Island"
+ },
+ "dum": {
+ "english_name": "Dutch, Middle (ca. 1050-1350)"
+ },
+ "pt": {
+ "name": "Português",
+ "english_name": "Portuguese"
+ },
+ "duo": {
+ "english_name": "Agta, Dupaninan"
+ },
+ "dua": {
+ "english_name": "Duala"
+ },
+ "dub": {
+ "english_name": "Dubli"
+ },
+ "duc": {
+ "english_name": "Duna"
+ },
+ "dud": {
+ "english_name": "Hun-Saare"
+ },
+ "due": {
+ "english_name": "Agta, Umiray Dumaget"
+ },
+ "duf": {
+ "english_name": "Dumbea"
+ },
+ "dug": {
+ "english_name": "Duruma"
+ },
+ "dux": {
+ "english_name": "Duungooma"
+ },
+ "duy": {
+ "english_name": "Agta, Dicamay"
+ },
+ "duz": {
+ "english_name": "Duli"
+ },
+ "pa": {
+ "name": "ਪੰਜਾਬੀ",
+ "english_name": "Panjabi"
+ },
+ "dup": {
+ "english_name": "Duano"
+ },
+ "duq": {
+ "english_name": "Dusun Malang"
+ },
+ "dur": {
+ "english_name": "Dii"
+ },
+ "dus": {
+ "english_name": "Dumi"
+ },
+ "swu": {
+ "english_name": "Suwawa"
+ },
+ "duu": {
+ "english_name": "Drung"
+ },
+ "duv": {
+ "english_name": "Duvle"
+ },
+ "duw": {
+ "english_name": "Dusun Witu"
+ },
+ "rit": {
+ "english_name": "Ritarungo"
+ },
+ "riu": {
+ "english_name": "Riung"
+ },
+ "rir": {
+ "english_name": "Ribun"
+ },
+ "rin": {
+ "english_name": "Nungu"
+ },
+ "ril": {
+ "english_name": "Riang (Myanmar)"
+ },
+ "rim": {
+ "english_name": "Nyaturu"
+ },
+ "rif": {
+ "english_name": "Tarifit"
+ },
+ "rie": {
+ "english_name": "Rien"
+ },
+ "ria": {
+ "english_name": "Riang (India)"
+ },
+ "imy": {
+ "english_name": "Milyan"
+ },
+ "rop": {
+ "english_name": "Kriol"
+ },
+ "lji": {
+ "english_name": "Laiyolo"
+ },
+ "ljl": {
+ "english_name": "Li'o"
+ },
+ "lja": {
+ "english_name": "Golpa"
+ },
+ "lje": {
+ "english_name": "Rampi"
+ },
+ "ljx": {
+ "english_name": "Yuru"
+ },
+ "ljp": {
+ "english_name": "Lampung Api"
+ },
+ "ljw": {
+ "english_name": "Yirandali"
+ },
+ "uzs": {
+ "english_name": "Uzbek, Southern"
+ },
+ "zzj": {
+ "english_name": "Zhuang, Zuojiang"
+ },
+ "zza": {
+ "english_name": "Zaza"
+ },
+ "ylu": {
+ "english_name": "Aribwaung"
+ },
+ "ylr": {
+ "english_name": "Yalarnnga"
+ },
+ "yly": {
+ "english_name": "Nyâlayu"
+ },
+ "ylg": {
+ "english_name": "Yelogu"
+ },
+ "yle": {
+ "english_name": "Yele"
+ },
+ "ylb": {
+ "english_name": "Yaleba"
+ },
+ "yla": {
+ "english_name": "Yaul"
+ },
+ "yln": {
+ "english_name": "Buyang, Langnian"
+ },
+ "ylo": {
+ "english_name": "Yi, Naluo"
+ },
+ "yll": {
+ "english_name": "Yil"
+ },
+ "ylm": {
+ "english_name": "Limi"
+ },
+ "yli": {
+ "english_name": "Yali, Angguruk"
+ },
+ "xpk": {
+ "english_name": "Pano, Kulina"
+ },
+ "xpj": {
+ "english_name": "Mpalitjanh"
+ },
+ "xpi": {
+ "english_name": "Pictish"
+ },
+ "xpo": {
+ "english_name": "Pochutec"
+ },
+ "xpn": {
+ "english_name": "Kapinawá"
+ },
+ "ixl": {
+ "english_name": "Ixil"
+ },
+ "xpc": {
+ "english_name": "Pecheneg"
+ },
+ "ixc": {
+ "english_name": "Ixcatec"
+ },
+ "xpa": {
+ "english_name": "Pirriya"
+ },
+ "xpg": {
+ "english_name": "Phrygian"
+ },
+ "xpe": {
+ "english_name": "Kpelle, Liberia"
+ },
+ "xpy": {
+ "english_name": "Puyo"
+ },
+ "xps": {
+ "english_name": "Pisidian"
+ },
+ "xpr": {
+ "english_name": "Parthian"
+ },
+ "xpq": {
+ "english_name": "Mohegan-Pequot"
+ },
+ "xpp": {
+ "english_name": "Puyo-Paekche"
+ },
+ "xpu": {
+ "english_name": "Punic"
+ },
+ "xpt": {
+ "english_name": "Punthamara"
+ },
+ "wnb": {
+ "english_name": "Wanambre"
+ },
+ "wnc": {
+ "english_name": "Wantoat"
+ },
+ "wng": {
+ "english_name": "Wanggom"
+ },
+ "wnd": {
+ "english_name": "Wandarang"
+ },
+ "wne": {
+ "english_name": "Waneci"
+ },
+ "wnk": {
+ "english_name": "Wanukaka"
+ },
+ "wni": {
+ "english_name": "Comorian, Ndzwani"
+ },
+ "wnn": {
+ "english_name": "Wunumara"
+ },
+ "wno": {
+ "english_name": "Wano"
+ },
+ "wnm": {
+ "english_name": "Wanggamala"
+ },
+ "wnp": {
+ "english_name": "Wanap"
+ },
+ "wnw": {
+ "english_name": "Wintu"
+ },
+ "wnu": {
+ "english_name": "Usan"
+ },
+ "wny": {
+ "english_name": "Wanyi"
+ },
+ "tni": {
+ "english_name": "Tandia"
+ },
+ "grv": {
+ "english_name": "Grebo, Central"
+ },
+ "grw": {
+ "english_name": "Gweda"
+ },
+ "grt": {
+ "english_name": "Garo"
+ },
+ "gru": {
+ "english_name": "Kistane"
+ },
+ "grr": {
+ "english_name": "Taznatit"
+ },
+ "grs": {
+ "english_name": "Gresi"
+ },
+ "grq": {
+ "english_name": "Gorovu"
+ },
+ "grz": {
+ "english_name": "Guramalum"
+ },
+ "tpu": {
+ "english_name": "Tampuan"
+ },
+ "grx": {
+ "english_name": "Guriaso"
+ },
+ "gry": {
+ "english_name": "Grebo, Barclayville"
+ },
+ "grg": {
+ "english_name": "Madi"
+ },
+ "grd": {
+ "english_name": "Guruntum-Mbaaru"
+ },
+ "grb": {
+ "english_name": "Grebo"
+ },
+ "grc": {
+ "english_name": "Greek, Ancient (to 1453)"
+ },
+ "gra": {
+ "english_name": "Garasia, Rajput"
+ },
+ "gro": {
+ "english_name": "Groma"
+ },
+ "grm": {
+ "english_name": "Kota Marudu Talantang"
+ },
+ "grj": {
+ "english_name": "Grebo, Southern"
+ },
+ "grh": {
+ "english_name": "Gbiri-Niragu"
+ },
+ "gri": {
+ "english_name": "Ghari"
+ },
+ "ugn": {
+ "english_name": "Ugandan Sign Language"
+ },
+ "jqr": {
+ "english_name": "Jaqaru"
+ },
+ "iba": {
+ "english_name": "Iban"
+ },
+ "ibb": {
+ "english_name": "Ibibio"
+ },
+ "rro": {
+ "english_name": "Waima"
+ },
+ "cfm": {
+ "english_name": "Chin, Falam"
+ },
+ "rri": {
+ "english_name": "Ririo"
+ },
+ "cfg": {
+ "english_name": "Como Karim"
+ },
+ "cfd": {
+ "english_name": "Cara"
+ },
+ "cfa": {
+ "english_name": "Dijim-Bwilim"
+ },
+ "rrt": {
+ "english_name": "Arritinngithigh"
+ },
+ "bde": {
+ "english_name": "Bade"
+ },
+ "bdd": {
+ "english_name": "Bunama"
+ },
+ "bdg": {
+ "english_name": "Bonggi"
+ },
+ "bdf": {
+ "english_name": "Biage"
+ },
+ "bda": {
+ "english_name": "Bayot"
+ },
+ "bdc": {
+ "english_name": "Emberá-Baudó"
+ },
+ "caj": {
+ "english_name": "Chané"
+ },
+ "bdm": {
+ "english_name": "Buduma"
+ },
+ "bdl": {
+ "english_name": "Bajau, Indonesian"
+ },
+ "bdo": {
+ "english_name": "Morom"
+ },
+ "bdn": {
+ "english_name": "Baldemu"
+ },
+ "bdi": {
+ "english_name": "Burun"
+ },
+ "bdh": {
+ "english_name": "Baka (Sudan)"
+ },
+ "bdk": {
+ "english_name": "Budukh"
+ },
+ "bdj": {
+ "english_name": "Bai"
+ },
+ "bdu": {
+ "english_name": "Oroko"
+ },
+ "bdt": {
+ "english_name": "Bokoto"
+ },
+ "bdw": {
+ "english_name": "Baham"
+ },
+ "bdv": {
+ "english_name": "Bodo Parja"
+ },
+ "bdq": {
+ "english_name": "Bahnar"
+ },
+ "bdp": {
+ "english_name": "Bende"
+ },
+ "bds": {
+ "english_name": "Burunge"
+ },
+ "bdr": {
+ "english_name": "Bajau, West Coast"
+ },
+ "bdy": {
+ "english_name": "Bandjalang"
+ },
+ "bdx": {
+ "english_name": "Budong-Budong"
+ },
+ "bdz": {
+ "english_name": "Badeshi"
+ },
+ "tcy": {
+ "english_name": "Tulu"
+ },
+ "hks": {
+ "english_name": "Hong Kong Sign Language"
+ },
+ "hkk": {
+ "english_name": "Hunjara-Kaina Ke"
+ },
+ "hka": {
+ "english_name": "Kahe"
+ },
+ "ibr": {
+ "english_name": "Ibuoro"
+ },
+ "hke": {
+ "english_name": "Hunde"
+ },
+ "ibu": {
+ "english_name": "Ibu"
+ },
+ "tcx": {
+ "english_name": "Toda"
+ },
+ "apz": {
+ "english_name": "Safeyoka"
+ },
+ "apx": {
+ "english_name": "Aputai"
+ },
+ "apy": {
+ "english_name": "Apalaí"
+ },
+ "tcw": {
+ "english_name": "Totonac, Tecpatlán"
+ },
+ "apr": {
+ "english_name": "Arop-Lokep"
+ },
+ "aps": {
+ "english_name": "Arop-Sissano"
+ },
+ "app": {
+ "english_name": "Apma"
+ },
+ "apq": {
+ "english_name": "A-Pucikwar"
+ },
+ "apv": {
+ "english_name": "Alapmunte"
+ },
+ "apw": {
+ "english_name": "Apache, Western"
+ },
+ "apt": {
+ "english_name": "Apatani"
+ },
+ "apu": {
+ "english_name": "Apurinã"
+ },
+ "apj": {
+ "english_name": "Apache, Jicarilla"
+ },
+ "apk": {
+ "english_name": "Apache, Kiowa"
+ },
+ "aph": {
+ "english_name": "Athpariya"
+ },
+ "api": {
+ "english_name": "Apiaká"
+ },
+ "apn": {
+ "english_name": "Apinayé"
+ },
+ "apo": {
+ "english_name": "Ambul"
+ },
+ "apl": {
+ "english_name": "Apache, Lipan"
+ },
+ "apm": {
+ "english_name": "Apache, Mescalero-Chiricahua"
+ },
+ "apb": {
+ "english_name": "Sa'a"
+ },
+ "apc": {
+ "english_name": "Arabic, North Levantine"
+ },
+ "apf": {
+ "english_name": "Agta, Pahanan"
+ },
+ "apg": {
+ "english_name": "Ampanang"
+ },
+ "apd": {
+ "english_name": "Arabic, Sudanese"
+ },
+ "ape": {
+ "english_name": "Bukiyip"
+ },
+ "usa": {
+ "english_name": "Usarufa"
+ },
+ "usk": {
+ "english_name": "Usaghade"
+ },
+ "usi": {
+ "english_name": "Usui"
+ },
+ "ush": {
+ "english_name": "Ushojo"
+ },
+ "usu": {
+ "english_name": "Uya"
+ },
+ "fer": {
+ "english_name": "Feroge"
+ },
+ "usp": {
+ "english_name": "Uspanteco"
+ },
+ "tau": {
+ "english_name": "Tanana, Upper"
+ },
+ "tav": {
+ "english_name": "Tatuyo"
+ },
+ "taw": {
+ "english_name": "Tai"
+ },
+ "tap": {
+ "english_name": "Taabwa"
+ },
+ "taq": {
+ "english_name": "Tamasheq"
+ },
+ "tar": {
+ "english_name": "Tarahumara, Central"
+ },
+ "tas": {
+ "english_name": "Tay Boi"
+ },
+ "tax": {
+ "english_name": "Tamki"
+ },
+ "tay": {
+ "english_name": "Atayal"
+ },
+ "taz": {
+ "english_name": "Tocho"
+ },
+ "tad": {
+ "english_name": "Tause"
+ },
+ "tae": {
+ "english_name": "Tariana"
+ },
+ "taf": {
+ "english_name": "Tapirapé"
+ },
+ "tag": {
+ "english_name": "Tagoi"
+ },
+ "taa": {
+ "english_name": "Tanana, Lower"
+ },
+ "tab": {
+ "english_name": "Tabassaran"
+ },
+ "tac": {
+ "english_name": "Tarahumara, Lowland"
+ },
+ "tal": {
+ "english_name": "Tal"
+ },
+ "tan": {
+ "english_name": "Tangale"
+ },
+ "tao": {
+ "english_name": "Yami"
+ },
+ "taj": {
+ "english_name": "Tamang, Eastern"
+ },
+ "tak": {
+ "english_name": "Tala"
+ },
+ "dwr": {
+ "english_name": "Dawro"
+ },
+ "dws": {
+ "english_name": "Dutton World Speedwords"
+ },
+ "siq": {
+ "english_name": "Sonia"
+ },
+ "sip": {
+ "english_name": "Sikkimese"
+ },
+ "siw": {
+ "english_name": "Siwai"
+ },
+ "dww": {
+ "english_name": "Dawawa"
+ },
+ "siu": {
+ "english_name": "Sinagen"
+ },
+ "siz": {
+ "english_name": "Siwi"
+ },
+ "siy": {
+ "english_name": "Sivandi"
+ },
+ "six": {
+ "english_name": "Sumau"
+ },
+ "sib": {
+ "english_name": "Sebop"
+ },
+ "sia": {
+ "english_name": "Sami, Akkala"
+ },
+ "dwa": {
+ "english_name": "Diri"
+ },
+ "sig": {
+ "english_name": "Paasaal"
+ },
+ "sif": {
+ "english_name": "Siamou"
+ },
+ "sie": {
+ "english_name": "Simaa"
+ },
+ "sid": {
+ "english_name": "Sidamo"
+ },
+ "sik": {
+ "english_name": "Sikiana"
+ },
+ "sij": {
+ "english_name": "Numbami"
+ },
+ "sii": {
+ "english_name": "Shom Peng"
+ },
+ "sih": {
+ "english_name": "Zire"
+ },
+ "sim": {
+ "english_name": "Mende (Papua New Guinea)"
+ },
+ "sil": {
+ "english_name": "Sisaala, Tumulung"
+ },
+ "kbj": {
+ "english_name": "Kari"
+ },
+ "kbk": {
+ "english_name": "Koiari, Grass"
+ },
+ "kbh": {
+ "english_name": "Camsá"
+ },
+ "kbi": {
+ "english_name": "Kaptiau"
+ },
+ "kbn": {
+ "english_name": "Kare (Central African Republic)"
+ },
+ "kbo": {
+ "english_name": "Keliko"
+ },
+ "kbl": {
+ "english_name": "Kanembu"
+ },
+ "kbm": {
+ "english_name": "Iwal"
+ },
+ "kbb": {
+ "english_name": "Kaxuiâna"
+ },
+ "kbc": {
+ "english_name": "Kadiwéu"
+ },
+ "kba": {
+ "english_name": "Kalarko"
+ },
+ "kbg": {
+ "english_name": "Khamba"
+ },
+ "kbd": {
+ "english_name": "Kabardian"
+ },
+ "kbe": {
+ "english_name": "Kanju"
+ },
+ "kbz": {
+ "english_name": "Duhwa"
+ },
+ "kbx": {
+ "english_name": "Ap Ma"
+ },
+ "kby": {
+ "english_name": "Kanuri, Manga"
+ },
+ "kbr": {
+ "english_name": "Kafa"
+ },
+ "kbs": {
+ "english_name": "Kande"
+ },
+ "kbp": {
+ "english_name": "Kabiyè"
+ },
+ "kbq": {
+ "english_name": "Kamano"
+ },
+ "kbv": {
+ "english_name": "Dera (Indonesia)"
+ },
+ "kbw": {
+ "english_name": "Kaiep"
+ },
+ "kbt": {
+ "english_name": "Abadi"
+ },
+ "kbu": {
+ "english_name": "Kabutra"
+ },
+ "byz": {
+ "english_name": "Banaro"
+ },
+ "byx": {
+ "english_name": "Qaqet"
+ },
+ "byv": {
+ "english_name": "Medumba"
+ },
+ "byw": {
+ "english_name": "Belhariya"
+ },
+ "byt": {
+ "english_name": "Berti"
+ },
+ "byr": {
+ "english_name": "Baruya"
+ },
+ "bys": {
+ "english_name": "Burak"
+ },
+ "byp": {
+ "english_name": "Bumaji"
+ },
+ "byq": {
+ "english_name": "Basay"
+ },
+ "byn": {
+ "name": "Bilin",
+ "english_name": "Bilin"
+ },
+ "byo": {
+ "english_name": "Biyo"
+ },
+ "byl": {
+ "english_name": "Bayono"
+ },
+ "bym": {
+ "english_name": "Bidyara"
+ },
+ "byj": {
+ "english_name": "Bina (Nigeria)"
+ },
+ "byk": {
+ "english_name": "Biao"
+ },
+ "byh": {
+ "english_name": "Bhujel"
+ },
+ "byi": {
+ "english_name": "Buyu"
+ },
+ "byf": {
+ "english_name": "Bete"
+ },
+ "byg": {
+ "english_name": "Baygo"
+ },
+ "byd": {
+ "english_name": "Benyadu'"
+ },
+ "bye": {
+ "english_name": "Pouye"
+ },
+ "byb": {
+ "english_name": "Bikya"
+ },
+ "byc": {
+ "english_name": "Ubaghara"
+ },
+ "bya": {
+ "english_name": "Batak"
+ },
+ "rau": {
+ "english_name": "Raute"
+ },
+ "nfd": {
+ "english_name": "Ahwai"
+ },
+ "nfa": {
+ "english_name": "Dhao"
+ },
+ "nfl": {
+ "english_name": "Ayiwo"
+ },
+ "nfu": {
+ "english_name": "Mfumte"
+ },
+ "nfr": {
+ "english_name": "Nafaanra"
+ },
+ "oui": {
+ "english_name": "Uighur, Old"
+ },
+ "oum": {
+ "english_name": "Ouma"
+ },
+ "pqa": {
+ "english_name": "Pa'a"
+ },
+ "oub": {
+ "english_name": "Glio-Oubi"
+ },
+ "oua": {
+ "english_name": "Tagargrent"
+ },
+ "oue": {
+ "english_name": "Oune"
+ },
+ "pqm": {
+ "english_name": "Malecite-Passamaquoddy"
+ },
+ "lts": {
+ "english_name": "Tachoni"
+ },
+ "ltu": {
+ "english_name": "Latu"
+ },
+ "ltc": {
+ "english_name": "Chinese, Late Middle"
+ },
+ "ltg": {
+ "english_name": "Latgalian"
+ },
+ "lti": {
+ "english_name": "Leti (Indonesia)"
+ },
+ "lto": {
+ "english_name": "Tsotso"
+ },
+ "ltn": {
+ "english_name": "Latundê"
+ },
+ "zxx": {
+ "english_name": "No linguistic content"
+ },
+ "ybx": {
+ "english_name": "Yawiyo"
+ },
+ "yby": {
+ "english_name": "Yaweyuha"
+ },
+ "ybh": {
+ "english_name": "Yakha"
+ },
+ "ybi": {
+ "english_name": "Yamphu"
+ },
+ "ybj": {
+ "english_name": "Hasha"
+ },
+ "ybk": {
+ "english_name": "Bokha"
+ },
+ "ybl": {
+ "english_name": "Yukuben"
+ },
+ "ybm": {
+ "english_name": "Yaben"
+ },
+ "ybn": {
+ "english_name": "Yabaâna"
+ },
+ "ybo": {
+ "english_name": "Yabong"
+ },
+ "yba": {
+ "english_name": "Yala"
+ },
+ "ybb": {
+ "english_name": "Yemba"
+ },
+ "ybe": {
+ "english_name": "Yugur, West"
+ },
+ "xrm": {
+ "english_name": "Armazic"
+ },
+ "xrn": {
+ "english_name": "Arin"
+ },
+ "xri": {
+ "english_name": "Krikati-Timbira"
+ },
+ "xre": {
+ "english_name": "Kreye"
+ },
+ "xrd": {
+ "english_name": "Gundungurra"
+ },
+ "xrg": {
+ "english_name": "Minang"
+ },
+ "xra": {
+ "english_name": "Krahô"
+ },
+ "xrb": {
+ "english_name": "Karaboro, Eastern"
+ },
+ "hr": {
+ "name": "hrvatski",
+ "english_name": "Croatian"
+ },
+ "xru": {
+ "english_name": "Marriammu"
+ },
+ "xrt": {
+ "english_name": "Aranama-Tamique"
+ },
+ "xrw": {
+ "english_name": "Karawa"
+ },
+ "xrq": {
+ "english_name": "Karranga"
+ },
+ "xrr": {
+ "english_name": "Raetic"
+ },
+ "whg": {
+ "english_name": "Wahgi, North"
+ },
+ "sol": {
+ "english_name": "Solos"
+ },
+ "wha": {
+ "english_name": "Manusela"
+ },
+ "whk": {
+ "english_name": "Kenyah, Wahau"
+ },
+ "whu": {
+ "english_name": "Kayan, Wahau"
+ },
+ "soo": {
+ "english_name": "Songo"
+ },
+ "dmc": {
+ "english_name": "Gavak"
+ },
+ "qu": {
+ "english_name": "Quechua"
+ },
+ "thh": {
+ "english_name": "Tarahumara, Northern"
+ },
+ "ebg": {
+ "english_name": "Ebughu"
+ },
+ "ebo": {
+ "english_name": "Teke-Ebo"
+ },
+ "ebk": {
+ "english_name": "Bontok, Eastern"
+ },
+ "ebu": {
+ "english_name": "Embu"
+ },
+ "ebr": {
+ "english_name": "Ebrié"
+ },
+ "dlg": {
+ "english_name": "Dolgan"
+ },
+ "dlk": {
+ "english_name": "Dahalik"
+ },
+ "dln": {
+ "english_name": "Darlong"
+ },
+ "dlm": {
+ "english_name": "Dalmatian"
+ },
+ "dmu": {
+ "english_name": "Dubu"
+ },
+ "jor": {
+ "english_name": "Jorá"
+ },
+ "jos": {
+ "english_name": "Jordanian Sign Language"
+ },
+ "jow": {
+ "english_name": "Jowulu"
+ },
+ "job": {
+ "english_name": "Joba"
+ },
+ "jod": {
+ "english_name": "Wojenaka"
+ },
+ "rpt": {
+ "english_name": "Rapting"
+ },
+ "rpn": {
+ "english_name": "Repanbitip"
+ },
+ "bbo": {
+ "english_name": "Bobo Madaré, Northern"
+ },
+ "bbn": {
+ "english_name": "Uneapa"
+ },
+ "bbm": {
+ "english_name": "Babango"
+ },
+ "bbl": {
+ "english_name": "Bats"
+ },
+ "bbk": {
+ "english_name": "Babanki"
+ },
+ "bbj": {
+ "english_name": "Ghomálá'"
+ },
+ "bbi": {
+ "english_name": "Barombi"
+ },
+ "bbh": {
+ "english_name": "Bugan"
+ },
+ "bbg": {
+ "english_name": "Barama"
+ },
+ "bbf": {
+ "english_name": "Baibai"
+ },
+ "bbe": {
+ "english_name": "Bangba"
+ },
+ "bbd": {
+ "english_name": "Bau"
+ },
+ "bbc": {
+ "english_name": "Batak Toba"
+ },
+ "bbb": {
+ "english_name": "Barai"
+ },
+ "bba": {
+ "english_name": "Baatonum"
+ },
+ "bbz": {
+ "english_name": "Creole Arabic, Babalia"
+ },
+ "bby": {
+ "english_name": "Befang"
+ },
+ "bbx": {
+ "english_name": "Bubia"
+ },
+ "bbw": {
+ "english_name": "Baba"
+ },
+ "bbv": {
+ "english_name": "Karnai"
+ },
+ "bbu": {
+ "english_name": "Kulung (Nigeria)"
+ },
+ "bbt": {
+ "english_name": "Mburku"
+ },
+ "bbs": {
+ "english_name": "Bakpinka"
+ },
+ "bbr": {
+ "english_name": "Girawa"
+ },
+ "bbq": {
+ "english_name": "Bamali"
+ },
+ "bbp": {
+ "english_name": "Banda, West Central"
+ },
+ "hmy": {
+ "english_name": "Hmong, Southern Guiyang"
+ },
+ "hmz": {
+ "english_name": "Hmong Shua"
+ },
+ "hmt": {
+ "english_name": "Hamtai"
+ },
+ "hmu": {
+ "english_name": "Hamap"
+ },
+ "hmv": {
+ "english_name": "Hmong Dô"
+ },
+ "hmw": {
+ "english_name": "Hmong, Western Mashan"
+ },
+ "hmp": {
+ "english_name": "Hmong, Northern Mashan"
+ },
+ "hmq": {
+ "english_name": "Miao, Eastern Qiandong"
+ },
+ "hmr": {
+ "english_name": "Hmar"
+ },
+ "hms": {
+ "english_name": "Miao, Southern Qiandong"
+ },
+ "hml": {
+ "english_name": "Hmong, Luopohe"
+ },
+ "hmm": {
+ "english_name": "Hmong, Central Mashan"
+ },
+ "hmn": {
+ "english_name": "Hmong"
+ },
+ "hmh": {
+ "english_name": "Hmong, Southwestern Huishui"
+ },
+ "bln": {
+ "english_name": "Bikol, Southern Catanduanes"
+ },
+ "hmj": {
+ "english_name": "Ge"
+ },
+ "hmk": {
+ "english_name": "Maek"
+ },
+ "hmd": {
+ "english_name": "Miao, Large Flowery"
+ },
+ "hme": {
+ "english_name": "Hmong, Eastern Huishui"
+ },
+ "hmf": {
+ "english_name": "Hmong Don"
+ },
+ "hmg": {
+ "english_name": "Hmong, Southwestern Guiyang"
+ },
+ "hma": {
+ "english_name": "Hmong, Southern Mashan"
+ },
+ "hmb": {
+ "english_name": "Songhay, Humburi Senni"
+ },
+ "hmc": {
+ "english_name": "Hmong, Central Huishui"
+ },
+ "tja": {
+ "english_name": "Tajuasohn"
+ },
+ "nom": {
+ "english_name": "Nocamán"
+ },
+ "avt": {
+ "english_name": "Au"
+ },
+ "avu": {
+ "english_name": "Avokaya"
+ },
+ "avv": {
+ "english_name": "Avá-Canoeiro"
+ },
+ "avs": {
+ "english_name": "Aushiri"
+ },
+ "avl": {
+ "english_name": "Arabic, Eastern Egyptian Bedawi"
+ },
+ "avm": {
+ "english_name": "Angkamuthi"
+ },
+ "avn": {
+ "english_name": "Avatime"
+ },
+ "avo": {
+ "english_name": "Agavotaguerra"
+ },
+ "avi": {
+ "english_name": "Avikam"
+ },
+ "avk": {
+ "english_name": "Kotava"
+ },
+ "avd": {
+ "english_name": "Alviri-Vidari"
+ },
+ "avb": {
+ "english_name": "Avau"
+ },
+ "fkk": {
+ "english_name": "Kirya-Konzəl"
+ },
+ "tjg": {
+ "english_name": "Tunjung"
+ },
+ "tji": {
+ "english_name": "Tujia, Northern"
+ },
+ "fkv": {
+ "english_name": "Finnish, Kven"
+ },
+ "tjl": {
+ "english_name": "Tai Laing"
+ },
+ "tjn": {
+ "english_name": "Tonjon"
+ },
+ "mfa": {
+ "english_name": "Malay, Pattani"
+ },
+ "mfb": {
+ "english_name": "Bangka"
+ },
+ "mfc": {
+ "english_name": "Mba"
+ },
+ "mfd": {
+ "english_name": "Mendankwe-Nkwen"
+ },
+ "mfe": {
+ "english_name": "Morisyen"
+ },
+ "mff": {
+ "english_name": "Naki"
+ },
+ "mfg": {
+ "english_name": "Mogofin"
+ },
+ "mfh": {
+ "english_name": "Matal"
+ },
+ "mfi": {
+ "english_name": "Wandala"
+ },
+ "mfj": {
+ "english_name": "Mefele"
+ },
+ "mfk": {
+ "english_name": "Mofu, North"
+ },
+ "mfl": {
+ "english_name": "Putai"
+ },
+ "mfm": {
+ "english_name": "Marghi South"
+ },
+ "mfn": {
+ "english_name": "Mbembe, Cross River"
+ },
+ "mfo": {
+ "english_name": "Mbe"
+ },
+ "mfp": {
+ "english_name": "Malay, Makassar"
+ },
+ "mfq": {
+ "english_name": "Moba"
+ },
+ "mfr": {
+ "english_name": "Marithiel"
+ },
+ "mfs": {
+ "english_name": "Mexican Sign Language"
+ },
+ "mft": {
+ "english_name": "Mokerang"
+ },
+ "mfu": {
+ "english_name": "Mbwela"
+ },
+ "mfv": {
+ "english_name": "Mandjak"
+ },
+ "mfw": {
+ "english_name": "Mulaha"
+ },
+ "mfx": {
+ "english_name": "Melo"
+ },
+ "mfy": {
+ "english_name": "Mayo"
+ },
+ "mfz": {
+ "english_name": "Mabaan"
+ },
+ "tce": {
+ "english_name": "Tutchone, Southern"
+ },
+ "tcb": {
+ "english_name": "Tanacross"
+ },
+ "tcc": {
+ "english_name": "Datooga"
+ },
+ "tca": {
+ "english_name": "Ticuna"
+ },
+ "sku": {
+ "english_name": "Sakao"
+ },
+ "skt": {
+ "english_name": "Sakata"
+ },
+ "skw": {
+ "english_name": "Creole Dutch, Skepi"
+ },
+ "skv": {
+ "english_name": "Skou"
+ },
+ "skq": {
+ "english_name": "Sininkere"
+ },
+ "skp": {
+ "english_name": "Sekapan"
+ },
+ "sks": {
+ "english_name": "Maia"
+ },
+ "skr": {
+ "english_name": "Seraiki"
+ },
+ "sky": {
+ "english_name": "Sikaiana"
+ },
+ "skx": {
+ "english_name": "Seko Padang"
+ },
+ "skz": {
+ "english_name": "Sekar"
+ },
+ "ske": {
+ "english_name": "Seke (Vanuatu)"
+ },
+ "skd": {
+ "english_name": "Miwok, Southern Sierra"
+ },
+ "skg": {
+ "english_name": "Malagasy, Sakalava"
+ },
+ "skf": {
+ "english_name": "Sakirabiá"
+ },
+ "ska": {
+ "english_name": "Skagit"
+ },
+ "skc": {
+ "english_name": "Ma Manda"
+ },
+ "skb": {
+ "english_name": "Saek"
+ },
+ "skm": {
+ "english_name": "Kutong"
+ },
+ "sko": {
+ "english_name": "Seko Tengah"
+ },
+ "skn": {
+ "english_name": "Subanon, Kolibugan"
+ },
+ "ski": {
+ "english_name": "Sika"
+ },
+ "skh": {
+ "english_name": "Sikule"
+ },
+ "skk": {
+ "english_name": "Sok"
+ },
+ "skj": {
+ "english_name": "Seke (Nepal)"
+ },
+ "kdl": {
+ "english_name": "Tsikimba"
+ },
+ "kdm": {
+ "english_name": "Kagoma"
+ },
+ "kdn": {
+ "english_name": "Kunda"
+ },
+ "kdh": {
+ "english_name": "Tem"
+ },
+ "kdi": {
+ "english_name": "Kumam"
+ },
+ "kdj": {
+ "english_name": "Karamojong"
+ },
+ "kdk": {
+ "english_name": "Numèè"
+ },
+ "kdd": {
+ "english_name": "Yankunytjatjara"
+ },
+ "kde": {
+ "english_name": "Makonde"
+ },
+ "kdf": {
+ "english_name": "Mamusi"
+ },
+ "kdg": {
+ "english_name": "Seba"
+ },
+ "kda": {
+ "english_name": "Worimi"
+ },
+ "kdc": {
+ "english_name": "Kutu"
+ },
+ "kdx": {
+ "english_name": "Kam"
+ },
+ "kdy": {
+ "english_name": "Keder"
+ },
+ "kdz": {
+ "english_name": "Kwaja"
+ },
+ "kdt": {
+ "english_name": "Kuy"
+ },
+ "kdu": {
+ "english_name": "Kadaru"
+ },
+ "kdw": {
+ "english_name": "Koneraw"
+ },
+ "kdp": {
+ "english_name": "Kaningdon-Nindem"
+ },
+ "kdq": {
+ "english_name": "Koch"
+ },
+ "kdr": {
+ "english_name": "Karaim"
+ },
+ "ndi": {
+ "english_name": "Samba Leko"
+ },
+ "ndh": {
+ "english_name": "Ndali"
+ },
+ "ndk": {
+ "english_name": "Ndaka"
+ },
+ "ndj": {
+ "english_name": "Ndamba"
+ },
+ "ndm": {
+ "english_name": "Ndam"
+ },
+ "ndl": {
+ "english_name": "Ndolo"
+ },
+ "ndn": {
+ "english_name": "Ngundi"
+ },
+ "nda": {
+ "english_name": "Ndasa"
+ },
+ "ndc": {
+ "english_name": "Ndau"
+ },
+ "ndb": {
+ "english_name": "Kenswei Nsei"
+ },
+ "ndd": {
+ "english_name": "Nde-Nsele-Nta"
+ },
+ "ndg": {
+ "english_name": "Ndengereko"
+ },
+ "ndf": {
+ "english_name": "Nadruvian"
+ },
+ "ndy": {
+ "english_name": "Lutos"
+ },
+ "ndx": {
+ "english_name": "Nduga"
+ },
+ "ndz": {
+ "english_name": "Ndogo"
+ },
+ "ndq": {
+ "english_name": "Ndombe"
+ },
+ "ndp": {
+ "english_name": "Ndo"
+ },
+ "nds": {
+ "english_name": "German, Low"
+ },
+ "ndr": {
+ "english_name": "Ndoola"
+ },
+ "ndu": {
+ "english_name": "Dugun"
+ },
+ "ndt": {
+ "english_name": "Ndunga"
+ },
+ "ndw": {
+ "english_name": "Ndobo"
+ },
+ "ndv": {
+ "english_name": "Ndut"
+ },
+ "owl": {
+ "english_name": "Welsh, Old"
+ },
+ "owi": {
+ "english_name": "Owiniga"
+ },
+ "vaj": {
+ "english_name": "Vasekela Bushman"
+ },
+ "vah": {
+ "english_name": "Varhadi-Nagpuri"
+ },
+ "vai": {
+ "english_name": "Vai"
+ },
+ "van": {
+ "english_name": "Valman"
+ },
+ "vao": {
+ "english_name": "Vao"
+ },
+ "val": {
+ "english_name": "Vehes"
+ },
+ "vam": {
+ "english_name": "Vanimo"
+ },
+ "vaa": {
+ "english_name": "Vaagri Booli"
+ },
+ "vaf": {
+ "english_name": "Vafsi"
+ },
+ "vag": {
+ "english_name": "Vagla"
+ },
+ "vae": {
+ "english_name": "Vale"
+ },
+ "vay": {
+ "english_name": "Wayu"
+ },
+ "var": {
+ "english_name": "Huarijio"
+ },
+ "vas": {
+ "english_name": "Vasavi"
+ },
+ "vap": {
+ "english_name": "Vaiphei"
+ },
+ "vav": {
+ "english_name": "Varli"
+ },
+ "vau": {
+ "english_name": "Vanuma"
+ },
+ "bcl": {
+ "english_name": "Bikol, Central"
+ },
+ "bch": {
+ "english_name": "Bariai"
+ },
+ "bci": {
+ "english_name": "Baoulé"
+ },
+ "lvu": {
+ "english_name": "Levuka"
+ },
+ "lvs": {
+ "english_name": "Latvian, Standard"
+ },
+ "bcd": {
+ "english_name": "Babar, North"
+ },
+ "lva": {
+ "english_name": "Maku'a"
+ },
+ "bce": {
+ "english_name": "Bamenyam"
+ },
+ "lvk": {
+ "english_name": "Lavukaleve"
+ },
+ "myy": {
+ "english_name": "Macuna"
+ },
+ "myx": {
+ "english_name": "Masaaba"
+ },
+ "myz": {
+ "english_name": "Mandaic, Classical"
+ },
+ "myp": {
+ "english_name": "Pirahã"
+ },
+ "mys": {
+ "english_name": "Mesmes"
+ },
+ "myr": {
+ "english_name": "Muniche"
+ },
+ "myu": {
+ "english_name": "Mundurukú"
+ },
+ "myw": {
+ "english_name": "Muyuw"
+ },
+ "myv": {
+ "english_name": "Erzya"
+ },
+ "myi": {
+ "english_name": "Mina (India)"
+ },
+ "myh": {
+ "english_name": "Makah"
+ },
+ "myk": {
+ "english_name": "Senoufo, Mamara"
+ },
+ "myj": {
+ "english_name": "Mangayat"
+ },
+ "mym": {
+ "english_name": "Me'en"
+ },
+ "myl": {
+ "english_name": "Moma"
+ },
+ "myo": {
+ "english_name": "Anfillo"
+ },
+ "myc": {
+ "english_name": "Mayeka"
+ },
+ "myb": {
+ "english_name": "Mbay"
+ },
+ "mye": {
+ "english_name": "Myene"
+ },
+ "myd": {
+ "english_name": "Maramba"
+ },
+ "myg": {
+ "english_name": "Manta"
+ },
+ "myf": {
+ "english_name": "Bambassi"
+ }
+ },
+ "google": {},
+ "duckduckgo": [
+ "ar-XA",
+ "bg-BG",
+ "ca-CT",
+ "ca-ES",
+ "cs-CZ",
+ "da-DK",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "el-GR",
+ "en-AU",
+ "en-CA",
+ "en-ID",
+ "en-IE",
+ "en-IN",
+ "en-MY",
+ "en-NZ",
+ "en-PH",
+ "en-SG",
+ "en-UK",
+ "en-US",
+ "en-ZA",
+ "es-AR",
+ "es-CL",
+ "es-CO",
+ "es-ES",
+ "es-MX",
+ "es-PE",
+ "es-US",
+ "et-EE",
+ "fi-FI",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "he-IL",
+ "hr-HR",
+ "hu-HU",
+ "id-ID",
+ "it-CH",
+ "it-IT",
+ "jp-JP",
+ "kr-KR",
+ "lt-LT",
+ "lv-LV",
+ "ms-MY",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-BR",
+ "pt-PT",
+ "ro-RO",
+ "ru-RU",
+ "sk-SK",
+ "sl-SL",
+ "sv-SE",
+ "th-TH",
+ "tl-PH",
+ "tr-TR",
+ "tzh-HK",
+ "tzh-TW",
+ "vi-VN",
+ "wt-WT",
+ "zh-CN"
+ ],
+ "google news": {},
+ "qwant": [
+ "bg-BG",
+ "br-FR",
+ "ca-AD",
+ "ca-ES",
+ "ca-FR",
+ "co-FR",
+ "cs-CZ",
+ "cy-GB",
+ "da-DK",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "el-GR",
+ "en-AU",
+ "en-CA",
+ "en-GB",
+ "en-IE",
+ "en-IN",
+ "en-MY",
+ "en-NZ",
+ "en-PH",
+ "en-SG",
+ "en-US",
+ "es-AD",
+ "es-AR",
+ "es-CL",
+ "es-ES",
+ "es-MX",
+ "et-EE",
+ "eu-ES",
+ "eu-FR",
+ "fi-FI",
+ "fr-AD",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "gd-GB",
+ "he-IL",
+ "hu-HU",
+ "it-CH",
+ "it-IT",
+ "ja-JP",
+ "ko-KR",
+ "ms-MY",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-AD",
+ "pt-BR",
+ "pt-PT",
+ "ro-RO",
+ "ru-RU",
+ "sv-SE",
+ "th-TH",
+ "tr-TR"
+ ],
+ "wikipedia": {
+ "gv": {
+ "articles": 4966,
+ "name": "Gaelg",
+ "english_name": "Manx"
+ },
+ "sco": {
+ "articles": 52700,
+ "name": "Scots",
+ "english_name": "Scots"
+ },
+ "scn": {
+ "articles": 26052,
+ "name": "Sicilianu",
+ "english_name": "Sicilian"
+ },
+ "wuu": {
+ "articles": 12505,
+ "name": "吴语",
+ "english_name": "Wu"
+ },
+ "tcy": {
+ "articles": 970,
+ "name": "ತುಳು",
+ "english_name": "Tulu"
+ },
+ "cdo": {
+ "articles": 13994,
+ "name": "Mìng-dĕ̤ng-ngṳ̄",
+ "english_name": "Min Dong"
+ },
+ "gu": {
+ "articles": 28113,
+ "name": "ગુજરાતી",
+ "english_name": "Gujarati"
+ },
+ "kbd": {
+ "articles": 1576,
+ "name": "Адыгэбзэ (Adighabze)",
+ "english_name": "Kabardian Circassian"
+ },
+ "got": {
+ "articles": 577,
+ "name": "𐌲𐌿𐍄𐌹𐍃𐌺",
+ "english_name": "Gothic"
+ },
+ "gd": {
+ "articles": 14736,
+ "name": "Gàidhlig",
+ "english_name": "Scottish Gaelic"
+ },
+ "jbo": {
+ "articles": 1229,
+ "name": "Lojban",
+ "english_name": "Lojban"
+ },
+ "ga": {
+ "articles": 48149,
+ "name": "Gaeilge",
+ "english_name": "Irish"
+ },
+ "gn": {
+ "articles": 3619,
+ "name": "Avañe'ẽ",
+ "english_name": "Guarani"
+ },
+ "kbp": {
+ "articles": 1450,
+ "name": "Kabɩyɛ",
+ "english_name": "Kabiye"
+ },
+ "gl": {
+ "articles": 151099,
+ "name": "Galego",
+ "english_name": "Galician"
+ },
+ "als": {
+ "articles": 25014,
+ "name": "Alemannisch",
+ "english_name": "Alemannic"
+ },
+ "lg": {
+ "articles": 1155,
+ "name": "Luganda",
+ "english_name": "Luganda"
+ },
+ "hak": {
+ "articles": 8843,
+ "name": "Hak-kâ-fa / 客家話",
+ "english_name": "Hakka"
+ },
+ "lb": {
+ "articles": 54478,
+ "name": "Lëtzebuergesch",
+ "english_name": "Luxembourgish"
+ },
+ "szl": {
+ "articles": 7513,
+ "name": "Ślůnski",
+ "english_name": "Silesian"
+ },
+ "vep": {
+ "articles": 5802,
+ "name": "Vepsän",
+ "english_name": "Vepsian"
+ },
+ "la": {
+ "articles": 129128,
+ "name": "Latina",
+ "english_name": "Latin"
+ },
+ "ln": {
+ "articles": 3046,
+ "name": "Lingala",
+ "english_name": "Lingala"
+ },
+ "frp": {
+ "articles": 3146,
+ "name": "Arpitan",
+ "english_name": "Franco-Provençal"
+ },
+ "tt": {
+ "articles": 80846,
+ "name": "Tatarça / Татарча",
+ "english_name": "Tatar"
+ },
+ "tr": {
+ "articles": 315699,
+ "name": "Türkçe",
+ "english_name": "Turkish"
+ },
+ "cbk-zam": {
+ "articles": 2996,
+ "name": "Chavacano de Zamboanga",
+ "english_name": "Zamboanga Chavacano"
+ },
+ "li": {
+ "articles": 12244,
+ "name": "Limburgs",
+ "english_name": "Limburgish"
+ },
+ "lv": {
+ "articles": 87649,
+ "name": "Latviešu",
+ "english_name": "Latvian"
+ },
+ "to": {
+ "articles": 1692,
+ "name": "faka Tonga",
+ "english_name": "Tongan"
+ },
+ "tl": {
+ "articles": 81327,
+ "name": "Tagalog",
+ "english_name": "Tagalog"
+ },
+ "jam": {
+ "articles": 1630,
+ "name": "Jumiekan Kryuol",
+ "english_name": "Jamaican Patois"
+ },
+ "vec": {
+ "articles": 11226,
+ "name": "Vèneto",
+ "english_name": "Venetian"
+ },
+ "th": {
+ "articles": 126603,
+ "name": "ไทย",
+ "english_name": "Thai"
+ },
+ "ti": {
+ "articles": 168,
+ "name": "ትግርኛ",
+ "english_name": "Tigrinya"
+ },
+ "tg": {
+ "articles": 95443,
+ "name": "Тоҷикӣ",
+ "english_name": "Tajik"
+ },
+ "te": {
+ "articles": 69303,
+ "name": "తెలుగు",
+ "english_name": "Telugu"
+ },
+ "ksh": {
+ "articles": 2840,
+ "name": "Ripoarisch",
+ "english_name": "Ripuarian"
+ },
+ "pcd": {
+ "articles": 3775,
+ "name": "Picard",
+ "english_name": "Picard"
+ },
+ "ta": {
+ "articles": 117845,
+ "name": "தமிழ்",
+ "english_name": "Tamil"
+ },
+ "yi": {
+ "articles": 14493,
+ "name": "ייִדיש",
+ "english_name": "Yiddish"
+ },
+ "lrc": {
+ "articles": 5368,
+ "name": "لۊری شومالی",
+ "english_name": "Northern Luri"
+ },
+ "xmf": {
+ "articles": 12602,
+ "name": "მარგალური (Margaluri)",
+ "english_name": "Mingrelian"
+ },
+ "ceb": {
+ "articles": 5380865,
+ "name": "Sinugboanong Binisaya",
+ "english_name": "Cebuano"
+ },
+ "yo": {
+ "articles": 31717,
+ "name": "Yorùbá",
+ "english_name": "Yoruba"
+ },
+ "de": {
+ "articles": 2220065,
+ "name": "Deutsch",
+ "english_name": "German"
+ },
+ "da": {
+ "articles": 239987,
+ "name": "Dansk",
+ "english_name": "Danish"
+ },
+ "za": {
+ "articles": 1868,
+ "name": "Cuengh",
+ "english_name": "Zhuang"
+ },
+ "pdc": {
+ "articles": 1845,
+ "name": "Deitsch",
+ "english_name": "Pennsylvania German"
+ },
+ "bxr": {
+ "articles": 2093,
+ "name": "Буряад",
+ "english_name": "Buryat"
+ },
+ "dz": {
+ "articles": 219,
+ "name": "ཇོང་ཁ",
+ "english_name": "Dzongkha"
+ },
+ "hif": {
+ "articles": 9761,
+ "name": "Fiji Hindi",
+ "english_name": "Fiji Hindi"
+ },
+ "rm": {
+ "articles": 3543,
+ "name": "Rumantsch",
+ "english_name": "Romansh"
+ },
+ "dv": {
+ "articles": 3022,
+ "name": "ދިވެހިބަސް",
+ "english_name": "Divehi"
+ },
+ "qu": {
+ "articles": 20755,
+ "name": "Runa Simi",
+ "english_name": "Quechua"
+ },
+ "vls": {
+ "articles": 6536,
+ "name": "West-Vlams",
+ "english_name": "West Flemish"
+ },
+ "bar": {
+ "articles": 26645,
+ "name": "Boarisch",
+ "english_name": "Bavarian"
+ },
+ "ang": {
+ "articles": 3039,
+ "name": "Englisc",
+ "english_name": "Anglo-Saxon"
+ },
+ "eml": {
+ "articles": 11187,
+ "name": "Emiliàn e rumagnòl",
+ "english_name": "Emilian-Romagnol"
+ },
+ "kn": {
+ "articles": 23709,
+ "name": "ಕನ್ನಡ",
+ "english_name": "Kannada"
+ },
+ "fiu-vro": {
+ "articles": 5448,
+ "name": "Võro",
+ "english_name": "Võro"
+ },
+ "bpy": {
+ "articles": 25080,
+ "name": "ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী",
+ "english_name": "Bishnupriya Manipuri"
+ },
+ "crh": {
+ "articles": 5977,
+ "name": "Qırımtatarca",
+ "english_name": "Crimean Tatar"
+ },
+ "mhr": {
+ "articles": 10025,
+ "name": "Олык Марий (Olyk Marij)",
+ "english_name": "Meadow Mari"
+ },
+ "diq": {
+ "articles": 9036,
+ "name": "Zazaki",
+ "english_name": "Zazaki"
+ },
+ "el": {
+ "articles": 152453,
+ "name": "Ελληνικά",
+ "english_name": "Greek"
+ },
+ "eo": {
+ "articles": 249972,
+ "name": "Esperanto",
+ "english_name": "Esperanto"
+ },
+ "en": {
+ "articles": 5717839,
+ "name": "English",
+ "english_name": "English"
+ },
+ "zh": {
+ "articles": 1022608,
+ "name": "中文",
+ "english_name": "Chinese"
+ },
+ "pms": {
+ "articles": 64375,
+ "name": "Piemontèis",
+ "english_name": "Piedmontese"
+ },
+ "ee": {
+ "articles": 345,
+ "name": "Eʋegbe",
+ "english_name": "Ewe"
+ },
+ "tpi": {
+ "articles": 1481,
+ "name": "Tok Pisin",
+ "english_name": "Tok Pisin"
+ },
+ "arz": {
+ "articles": 19444,
+ "name": "مصرى (Maṣri)",
+ "english_name": "Egyptian Arabic"
+ },
+ "lfn": {
+ "articles": 2868,
+ "name": "Lingua franca nova",
+ "english_name": "Lingua Franca Nova"
+ },
+ "mdf": {
+ "articles": 1185,
+ "name": "Мокшень (Mokshanj Kälj)",
+ "english_name": "Moksha"
+ },
+ "kaa": {
+ "articles": 1908,
+ "name": "Qaraqalpaqsha",
+ "english_name": "Karakalpak"
+ },
+ "olo": {
+ "articles": 2700,
+ "name": "Karjalan",
+ "english_name": "Livvi-Karelian"
+ },
+ "arc": {
+ "articles": 1628,
+ "name": "ܐܪܡܝܐ",
+ "english_name": "Aramaic"
+ },
+ "cr": {
+ "articles": 104,
+ "name": "Nehiyaw",
+ "english_name": "Cree"
+ },
+ "eu": {
+ "articles": 304835,
+ "name": "Euskara",
+ "english_name": "Basque"
+ },
+ "et": {
+ "articles": 180987,
+ "name": "Eesti",
+ "english_name": "Estonian"
+ },
+ "tet": {
+ "articles": 1431,
+ "name": "Tetun",
+ "english_name": "Tetum"
+ },
+ "es": {
+ "articles": 1474724,
+ "name": "Español",
+ "english_name": "Spanish"
+ },
+ "ba": {
+ "articles": 43988,
+ "name": "Башҡорт",
+ "english_name": "Bashkir"
+ },
+ "gom": {
+ "articles": 3514,
+ "name": "गोंयची कोंकणी / Gõychi Konknni",
+ "english_name": "Goan Konkani"
+ },
+ "ru": {
+ "articles": 1497272,
+ "name": "Русский",
+ "english_name": "Russian"
+ },
+ "roa-tara": {
+ "articles": 9242,
+ "name": "Tarandíne",
+ "english_name": "Tarantino"
+ },
+ "ha": {
+ "articles": 1913,
+ "name": "هَوُسَ",
+ "english_name": "Hausa"
+ },
+ "ak": {
+ "articles": 561,
+ "name": "Akana",
+ "english_name": "Akan"
+ },
+ "lad": {
+ "articles": 3805,
+ "name": "Dzhudezmo",
+ "english_name": "Ladino"
+ },
+ "new": {
+ "articles": 72159,
+ "name": "नेपाल भाषा",
+ "english_name": "Newar"
+ },
+ "rn": {
+ "articles": 611,
+ "name": "Kirundi",
+ "english_name": "Kirundi"
+ },
+ "ro": {
+ "articles": 388471,
+ "name": "Română",
+ "english_name": "Romanian"
+ },
+ "dsb": {
+ "articles": 3189,
+ "name": "Dolnoserbski",
+ "english_name": "Lower Sorbian"
+ },
+ "bn": {
+ "articles": 60805,
+ "name": "বাংলা",
+ "english_name": "Bengali"
+ },
+ "gor": {
+ "articles": 1776,
+ "name": "Hulontalo",
+ "english_name": "Gorontalo"
+ },
+ "hsb": {
+ "articles": 13181,
+ "name": "Hornjoserbsce",
+ "english_name": "Upper Sorbian"
+ },
+ "be": {
+ "articles": 157264,
+ "name": "Беларуская",
+ "english_name": "Belarusian"
+ },
+ "bg": {
+ "articles": 245706,
+ "name": "Български",
+ "english_name": "Bulgarian"
+ },
+ "myv": {
+ "articles": 5353,
+ "name": "Эрзянь (Erzjanj Kelj)",
+ "english_name": "Erzya"
+ },
+ "uk": {
+ "articles": 816473,
+ "name": "Українська",
+ "english_name": "Ukrainian"
+ },
+ "wa": {
+ "articles": 14717,
+ "name": "Walon",
+ "english_name": "Walloon"
+ },
+ "ast": {
+ "articles": 86717,
+ "name": "Asturianu",
+ "english_name": "Asturian"
+ },
+ "wo": {
+ "articles": 1170,
+ "name": "Wolof",
+ "english_name": "Wolof"
+ },
+ "bm": {
+ "articles": 646,
+ "name": "Bamanankan",
+ "english_name": "Bambara"
+ },
+ "jv": {
+ "articles": 54946,
+ "name": "Basa Jawa",
+ "english_name": "Javanese"
+ },
+ "bo": {
+ "articles": 5822,
+ "name": "བོད་སྐད",
+ "english_name": "Tibetan"
+ },
+ "bh": {
+ "articles": 7671,
+ "name": "भोजपुरी",
+ "english_name": "Bihari"
+ },
+ "bi": {
+ "articles": 1176,
+ "name": "Bislama",
+ "english_name": "Bislama"
+ },
+ "rue": {
+ "articles": 6698,
+ "name": "Русиньскый",
+ "english_name": "Rusyn"
+ },
+ "map-bms": {
+ "articles": 13333,
+ "name": "Basa Banyumasan",
+ "english_name": "Banyumasan"
+ },
+ "tum": {
+ "articles": 572,
+ "name": "chiTumbuka",
+ "english_name": "Tumbuka"
+ },
+ "br": {
+ "articles": 65468,
+ "name": "Brezhoneg",
+ "english_name": "Breton"
+ },
+ "bs": {
+ "articles": 78388,
+ "name": "Bosanski",
+ "english_name": "Bosnian"
+ },
+ "lez": {
+ "articles": 3954,
+ "name": "Лезги чІал (Lezgi č’al)",
+ "english_name": "Lezgian"
+ },
+ "ja": {
+ "articles": 1121035,
+ "name": "日本語",
+ "english_name": "Japanese"
+ },
+ "om": {
+ "articles": 772,
+ "name": "Oromoo",
+ "english_name": "Oromo"
+ },
+ "glk": {
+ "articles": 5656,
+ "name": "گیلکی",
+ "english_name": "Gilaki"
+ },
+ "ace": {
+ "articles": 7451,
+ "name": "Bahsa Acèh",
+ "english_name": "Acehnese"
+ },
+ "ilo": {
+ "articles": 11422,
+ "name": "Ilokano",
+ "english_name": "Ilokano"
+ },
+ "roa-rup": {
+ "articles": 1212,
+ "name": "Armãneashce",
+ "english_name": "Aromanian"
+ },
+ "oc": {
+ "articles": 84869,
+ "name": "Occitan",
+ "english_name": "Occitan"
+ },
+ "ltg": {
+ "articles": 807,
+ "name": "Latgaļu",
+ "english_name": "Latgalian"
+ },
+ "be-tarask": {
+ "articles": 64277,
+ "name": "Беларуская (тарашкевіца)",
+ "english_name": "Belarusian (Taraškievica)"
+ },
+ "st": {
+ "articles": 543,
+ "name": "Sesotho",
+ "english_name": "Sesotho"
+ },
+ "lo": {
+ "articles": 2952,
+ "name": "ລາວ",
+ "english_name": "Lao"
+ },
+ "krc": {
+ "articles": 2027,
+ "name": "Къарачай-Малкъар (Qarachay-Malqar)",
+ "english_name": "Karachay-Balkar"
+ },
+ "nds": {
+ "articles": 31150,
+ "name": "Plattdüütsch",
+ "english_name": "Low Saxon"
+ },
+ "os": {
+ "articles": 11084,
+ "name": "Иронау",
+ "english_name": "Ossetian"
+ },
+ "or": {
+ "articles": 14248,
+ "name": "ଓଡ଼ିଆ",
+ "english_name": "Oriya"
+ },
+ "udm": {
+ "articles": 4508,
+ "name": "Удмурт кыл",
+ "english_name": "Udmurt"
+ },
+ "xh": {
+ "articles": 748,
+ "name": "isiXhosa",
+ "english_name": "Xhosa"
+ },
+ "ch": {
+ "articles": 472,
+ "name": "Chamoru",
+ "english_name": "Chamorro"
+ },
+ "co": {
+ "articles": 5567,
+ "name": "Corsu",
+ "english_name": "Corsican"
+ },
+ "nso": {
+ "articles": 8089,
+ "name": "Sepedi",
+ "english_name": "Northern Sotho"
+ },
+ "simple": {
+ "articles": 138362,
+ "name": "Simple English",
+ "english_name": "Simple English"
+ },
+ "bjn": {
+ "articles": 1853,
+ "name": "Bahasa Banjar",
+ "english_name": "Banjar"
+ },
+ "ca": {
+ "articles": 589895,
+ "name": "Català",
+ "english_name": "Catalan"
+ },
+ "lmo": {
+ "articles": 37698,
+ "name": "Lumbaart",
+ "english_name": "Lombard"
+ },
+ "ce": {
+ "articles": 208693,
+ "name": "Нохчийн",
+ "english_name": "Chechen"
+ },
+ "ts": {
+ "articles": 566,
+ "name": "Xitsonga",
+ "english_name": "Tsonga"
+ },
+ "cy": {
+ "articles": 101280,
+ "name": "Cymraeg",
+ "english_name": "Welsh"
+ },
+ "ab": {
+ "articles": 3427,
+ "name": "Аҧсуа",
+ "english_name": "Abkhazian"
+ },
+ "cs": {
+ "articles": 412770,
+ "name": "Čeština",
+ "english_name": "Czech"
+ },
+ "ty": {
+ "articles": 1195,
+ "name": "Reo Mā`ohi",
+ "english_name": "Tahitian"
+ },
+ "ady": {
+ "articles": 408,
+ "name": "Адыгэбзэ",
+ "english_name": "Adyghe"
+ },
+ "cv": {
+ "articles": 41433,
+ "name": "Чăваш",
+ "english_name": "Chuvash"
+ },
+ "cu": {
+ "articles": 660,
+ "name": "Словѣньскъ",
+ "english_name": "Old Church Slavonic"
+ },
+ "ve": {
+ "articles": 267,
+ "name": "Tshivenda",
+ "english_name": "Venda"
+ },
+ "koi": {
+ "articles": 3449,
+ "name": "Перем Коми (Perem Komi)",
+ "english_name": "Komi-Permyak"
+ },
+ "ps": {
+ "articles": 9106,
+ "name": "پښتو",
+ "english_name": "Pashto"
+ },
+ "fj": {
+ "articles": 424,
+ "name": "Na Vosa Vakaviti",
+ "english_name": "Fijian"
+ },
+ "srn": {
+ "articles": 1059,
+ "name": "Sranantongo",
+ "english_name": "Sranan"
+ },
+ "pt": {
+ "articles": 1005169,
+ "name": "Português",
+ "english_name": "Portuguese"
+ },
+ "sm": {
+ "articles": 799,
+ "name": "Gagana Samoa",
+ "english_name": "Samoan"
+ },
+ "ext": {
+ "articles": 3013,
+ "name": "Estremeñu",
+ "english_name": "Extremaduran"
+ },
+ "lt": {
+ "articles": 189496,
+ "name": "Lietuvių",
+ "english_name": "Lithuanian"
+ },
+ "zh-min-nan": {
+ "articles": 227444,
+ "name": "Bân-lâm-gú",
+ "english_name": "Min Nan"
+ },
+ "frr": {
+ "articles": 7705,
+ "name": "Nordfriisk",
+ "english_name": "North Frisian"
+ },
+ "chr": {
+ "articles": 854,
+ "name": "ᏣᎳᎩ",
+ "english_name": "Cherokee"
+ },
+ "pa": {
+ "articles": 30223,
+ "name": "ਪੰਜਾਬੀ",
+ "english_name": "Punjabi"
+ },
+ "xal": {
+ "articles": 2036,
+ "name": "Хальмг",
+ "english_name": "Kalmyk"
+ },
+ "chy": {
+ "articles": 609,
+ "name": "Tsetsêhestâhese",
+ "english_name": "Cheyenne"
+ },
+ "pi": {
+ "articles": 2530,
+ "name": "पाऴि",
+ "english_name": "Pali"
+ },
+ "war": {
+ "articles": 1263242,
+ "name": "Winaray",
+ "english_name": "Waray-Waray"
+ },
+ "pl": {
+ "articles": 1300041,
+ "name": "Polski",
+ "english_name": "Polish"
+ },
+ "tk": {
+ "articles": 5491,
+ "name": "Türkmen",
+ "english_name": "Turkmen"
+ },
+ "hy": {
+ "articles": 245745,
+ "name": "Հայերեն",
+ "english_name": "Armenian"
+ },
+ "an": {
+ "articles": 33544,
+ "name": "Aragonés",
+ "english_name": "Aragonese"
+ },
+ "nrm": {
+ "articles": 4003,
+ "name": "Nouormand/Normaund",
+ "english_name": "Norman"
+ },
+ "hr": {
+ "articles": 198726,
+ "name": "Hrvatski",
+ "english_name": "Croatian"
+ },
+ "iu": {
+ "articles": 402,
+ "name": "ᐃᓄᒃᑎᑐᑦ",
+ "english_name": "Inuktitut"
+ },
+ "pfl": {
+ "articles": 2259,
+ "name": "Pälzisch",
+ "english_name": "Palatinate German"
+ },
+ "ht": {
+ "articles": 53067,
+ "name": "Krèyol ayisyen",
+ "english_name": "Haitian"
+ },
+ "hu": {
+ "articles": 436930,
+ "name": "Magyar",
+ "english_name": "Hungarian"
+ },
+ "gan": {
+ "articles": 6405,
+ "name": "贛語",
+ "english_name": "Gan"
+ },
+ "bat-smg": {
+ "articles": 16307,
+ "name": "Žemaitėška",
+ "english_name": "Samogitian"
+ },
+ "hi": {
+ "articles": 126671,
+ "name": "हिन्दी",
+ "english_name": "Hindi"
+ },
+ "tw": {
+ "articles": 650,
+ "name": "Twi",
+ "english_name": "Twi"
+ },
+ "gag": {
+ "articles": 2760,
+ "name": "Gagauz",
+ "english_name": "Gagauz"
+ },
+ "kg": {
+ "articles": 1181,
+ "name": "KiKongo",
+ "english_name": "Kongo"
+ },
+ "pnb": {
+ "articles": 46645,
+ "name": "شاہ مکھی پنجابی (Shāhmukhī Pañjābī)",
+ "english_name": "Western Punjabi"
+ },
+ "bug": {
+ "articles": 14117,
+ "name": "Basa Ugi",
+ "english_name": "Buginese"
+ },
+ "he": {
+ "articles": 230405,
+ "name": "עברית",
+ "english_name": "Hebrew"
+ },
+ "mg": {
+ "articles": 85263,
+ "name": "Malagasy",
+ "english_name": "Malagasy"
+ },
+ "fur": {
+ "articles": 3284,
+ "name": "Furlan",
+ "english_name": "Friulian"
+ },
+ "uz": {
+ "articles": 129308,
+ "name": "O‘zbek",
+ "english_name": "Uzbek"
+ },
+ "ml": {
+ "articles": 58717,
+ "name": "മലയാളം",
+ "english_name": "Malayalam"
+ },
+ "azb": {
+ "articles": 101690,
+ "name": "تۆرکجه",
+ "english_name": "South Azerbaijani"
+ },
+ "mn": {
+ "articles": 18326,
+ "name": "Монгол",
+ "english_name": "Mongolian"
+ },
+ "mi": {
+ "articles": 7145,
+ "name": "Māori",
+ "english_name": "Maori"
+ },
+ "ik": {
+ "articles": 260,
+ "name": "Iñupiak",
+ "english_name": "Inupiak"
+ },
+ "mk": {
+ "articles": 96187,
+ "name": "Македонски",
+ "english_name": "Macedonian"
+ },
+ "ur": {
+ "articles": 140514,
+ "name": "اردو",
+ "english_name": "Urdu"
+ },
+ "zea": {
+ "articles": 4417,
+ "name": "Zeêuws",
+ "english_name": "Zeelandic"
+ },
+ "mt": {
+ "articles": 3330,
+ "name": "Malti",
+ "english_name": "Maltese"
+ },
+ "dty": {
+ "articles": 2935,
+ "name": "डोटेली",
+ "english_name": "Doteli"
+ },
+ "stq": {
+ "articles": 3966,
+ "name": "Seeltersk",
+ "english_name": "Saterland Frisian"
+ },
+ "ms": {
+ "articles": 319749,
+ "name": "Bahasa Melayu",
+ "english_name": "Malay"
+ },
+ "mr": {
+ "articles": 51938,
+ "name": "मराठी",
+ "english_name": "Marathi"
+ },
+ "inh": {
+ "articles": 781,
+ "name": "Гӏалгӏай",
+ "english_name": "Ingush"
+ },
+ "ug": {
+ "articles": 4092,
+ "name": "ئۇيغۇر تىلى",
+ "english_name": "Uyghur"
+ },
+ "mwl": {
+ "articles": 3653,
+ "name": "Mirandés",
+ "english_name": "Mirandese"
+ },
+ "my": {
+ "articles": 39501,
+ "name": "မြန်မာဘာသာ",
+ "english_name": "Burmese"
+ },
+ "ki": {
+ "articles": 1357,
+ "name": "Gĩkũyũ",
+ "english_name": "Kikuyu"
+ },
+ "pih": {
+ "articles": 672,
+ "name": "Norfuk",
+ "english_name": "Norfolk"
+ },
+ "sah": {
+ "articles": 11663,
+ "name": "Саха тыла (Saxa Tyla)",
+ "english_name": "Sakha"
+ },
+ "ss": {
+ "articles": 448,
+ "name": "SiSwati",
+ "english_name": "Swati"
+ },
+ "af": {
+ "articles": 58995,
+ "name": "Afrikaans",
+ "english_name": "Afrikaans"
+ },
+ "tn": {
+ "articles": 641,
+ "name": "Setswana",
+ "english_name": "Tswana"
+ },
+ "vi": {
+ "articles": 1188863,
+ "name": "Tiếng Việt",
+ "english_name": "Vietnamese"
+ },
+ "is": {
+ "articles": 45775,
+ "name": "Íslenska",
+ "english_name": "Icelandic"
+ },
+ "am": {
+ "articles": 14359,
+ "name": "አማርኛ",
+ "english_name": "Amharic"
+ },
+ "it": {
+ "articles": 1461380,
+ "name": "Italiano",
+ "english_name": "Italian"
+ },
+ "vo": {
+ "articles": 121490,
+ "name": "Volapük",
+ "english_name": "Volapük"
+ },
+ "ay": {
+ "articles": 4383,
+ "name": "Aymar",
+ "english_name": "Aymara"
+ },
+ "as": {
+ "articles": 4991,
+ "name": "অসমীয়া",
+ "english_name": "Assamese"
+ },
+ "ar": {
+ "articles": 609711,
+ "name": "العربية",
+ "english_name": "Arabic"
+ },
+ "lbe": {
+ "articles": 1216,
+ "name": "Лакку",
+ "english_name": "Lak"
+ },
+ "km": {
+ "articles": 6712,
+ "name": "ភាសាខ្មែរ",
+ "english_name": "Khmer"
+ },
+ "io": {
+ "articles": 27921,
+ "name": "Ido",
+ "english_name": "Ido"
+ },
+ "av": {
+ "articles": 2306,
+ "name": "Авар",
+ "english_name": "Avar"
+ },
+ "ia": {
+ "articles": 20764,
+ "name": "Interlingua",
+ "english_name": "Interlingua"
+ },
+ "haw": {
+ "articles": 2960,
+ "name": "Hawai`i",
+ "english_name": "Hawaiian"
+ },
+ "az": {
+ "articles": 137984,
+ "name": "Azərbaycanca",
+ "english_name": "Azerbaijani"
+ },
+ "ie": {
+ "articles": 4046,
+ "name": "Interlingue",
+ "english_name": "Interlingue"
+ },
+ "id": {
+ "articles": 439613,
+ "name": "Bahasa Indonesia",
+ "english_name": "Indonesian"
+ },
+ "nds-nl": {
+ "articles": 8656,
+ "name": "Nedersaksisch",
+ "english_name": "Dutch Low Saxon"
+ },
+ "sat": {
+ "articles": 378,
+ "name": "Santali",
+ "english_name": "ᱥᱟᱱᱛᱟᱲᱤ"
+ },
+ "pap": {
+ "articles": 1933,
+ "name": "Papiamentu",
+ "english_name": "Papiamentu"
+ },
+ "ks": {
+ "articles": 323,
+ "name": "कश्मीरी / كشميري",
+ "english_name": "Kashmiri"
+ },
+ "nl": {
+ "articles": 1942104,
+ "name": "Nederlands",
+ "english_name": "Dutch"
+ },
+ "nn": {
+ "articles": 139512,
+ "name": "Nynorsk",
+ "english_name": "Norwegian (Nynorsk)"
+ },
+ "no": {
+ "articles": 494547,
+ "name": "Norsk (Bokmål)",
+ "english_name": "Norwegian (Bokmål)"
+ },
+ "na": {
+ "articles": 1305,
+ "name": "dorerin Naoero",
+ "english_name": "Nauruan"
+ },
+ "nah": {
+ "articles": 6921,
+ "name": "Nāhuatl",
+ "english_name": "Nahuatl"
+ },
+ "ne": {
+ "articles": 30697,
+ "name": "नेपाली",
+ "english_name": "Nepali"
+ },
+ "lij": {
+ "articles": 3425,
+ "name": "Líguru",
+ "english_name": "Ligurian"
+ },
+ "csb": {
+ "articles": 5246,
+ "name": "Kaszëbsczi",
+ "english_name": "Kashubian"
+ },
+ "tyv": {
+ "articles": 1722,
+ "name": "Тыва",
+ "english_name": "Tuvan"
+ },
+ "ny": {
+ "articles": 426,
+ "name": "Chichewa",
+ "english_name": "Chichewa"
+ },
+ "nap": {
+ "articles": 14555,
+ "name": "Nnapulitano",
+ "english_name": "Neapolitan"
+ },
+ "rmy": {
+ "articles": 658,
+ "name": "romani - रोमानी",
+ "english_name": "Romani"
+ },
+ "ig": {
+ "articles": 1361,
+ "name": "Igbo",
+ "english_name": "Igbo"
+ },
+ "pag": {
+ "articles": 2609,
+ "name": "Pangasinan",
+ "english_name": "Pangasinan"
+ },
+ "zu": {
+ "articles": 1024,
+ "name": "isiZulu",
+ "english_name": "Zulu"
+ },
+ "kw": {
+ "articles": 3821,
+ "name": "Kernewek/Karnuack",
+ "english_name": "Cornish"
+ },
+ "atj": {
+ "articles": 596,
+ "name": "Atikamekw",
+ "english_name": "Atikamekw"
+ },
+ "pam": {
+ "articles": 8555,
+ "name": "Kapampangan",
+ "english_name": "Kapampangan"
+ },
+ "nv": {
+ "articles": 6116,
+ "name": "Diné bizaad",
+ "english_name": "Navajo"
+ },
+ "sn": {
+ "articles": 3945,
+ "name": "chiShona",
+ "english_name": "Shona"
+ },
+ "kab": {
+ "articles": 2869,
+ "name": "Taqbaylit",
+ "english_name": "Kabyle"
+ },
+ "fr": {
+ "articles": 2040551,
+ "name": "Français",
+ "english_name": "French"
+ },
+ "mrj": {
+ "articles": 10268,
+ "name": "Кырык Мары (Kyryk Mary)",
+ "english_name": "Hill Mari"
+ },
+ "zh-yue": {
+ "articles": 68440,
+ "name": "粵語",
+ "english_name": "Cantonese"
+ },
+ "fy": {
+ "articles": 40760,
+ "name": "Frysk",
+ "english_name": "West Frisian"
+ },
+ "pnt": {
+ "articles": 458,
+ "name": "Ποντιακά",
+ "english_name": "Pontic"
+ },
+ "fa": {
+ "articles": 641921,
+ "name": "فارسی",
+ "english_name": "Persian"
+ },
+ "rw": {
+ "articles": 1823,
+ "name": "Ikinyarwanda",
+ "english_name": "Kinyarwanda"
+ },
+ "ff": {
+ "articles": 227,
+ "name": "Fulfulde",
+ "english_name": "Fula"
+ },
+ "mai": {
+ "articles": 12902,
+ "name": "मैथिली",
+ "english_name": "Maithili"
+ },
+ "fi": {
+ "articles": 444426,
+ "name": "Suomi",
+ "english_name": "Finnish"
+ },
+ "mzn": {
+ "articles": 12724,
+ "name": "مَزِروني",
+ "english_name": "Mazandarani"
+ },
+ "sa": {
+ "articles": 11350,
+ "name": "संस्कृतम्",
+ "english_name": "Sanskrit"
+ },
+ "zh-classical": {
+ "articles": 8200,
+ "name": "古文 / 文言文",
+ "english_name": "Classical Chinese"
+ },
+ "fo": {
+ "articles": 12792,
+ "name": "Føroyskt",
+ "english_name": "Faroese"
+ },
+ "bcl": {
+ "articles": 8161,
+ "name": "Bikol",
+ "english_name": "Central Bicolano"
+ },
+ "ka": {
+ "articles": 124386,
+ "name": "ქართული",
+ "english_name": "Georgian"
+ },
+ "nov": {
+ "articles": 1659,
+ "name": "Novial",
+ "english_name": "Novial"
+ },
+ "ckb": {
+ "articles": 22151,
+ "name": "Soranî / کوردی",
+ "english_name": "Sorani"
+ },
+ "kk": {
+ "articles": 222362,
+ "name": "Қазақша",
+ "english_name": "Kazakh"
+ },
+ "sr": {
+ "articles": 610270,
+ "name": "Српски / Srpski",
+ "english_name": "Serbian"
+ },
+ "sq": {
+ "articles": 74713,
+ "name": "Shqip",
+ "english_name": "Albanian"
+ },
+ "min": {
+ "articles": 222296,
+ "name": "Minangkabau",
+ "english_name": "Minangkabau"
+ },
+ "ko": {
+ "articles": 427108,
+ "name": "한국어",
+ "english_name": "Korean"
+ },
+ "sv": {
+ "articles": 3767201,
+ "name": "Svenska",
+ "english_name": "Swedish"
+ },
+ "su": {
+ "articles": 39667,
+ "name": "Basa Sunda",
+ "english_name": "Sundanese"
+ },
+ "kl": {
+ "articles": 1658,
+ "name": "Kalaallisut",
+ "english_name": "Greenlandic"
+ },
+ "sk": {
+ "articles": 227102,
+ "name": "Slovenčina",
+ "english_name": "Slovak"
+ },
+ "si": {
+ "articles": 14849,
+ "name": "සිංහල",
+ "english_name": "Sinhalese"
+ },
+ "sh": {
+ "articles": 445848,
+ "name": "Srpskohrvatski / Српскохрватски",
+ "english_name": "Serbo-Croatian"
+ },
+ "so": {
+ "articles": 5871,
+ "name": "Soomaali",
+ "english_name": "Somali"
+ },
+ "kv": {
+ "articles": 5301,
+ "name": "Коми",
+ "english_name": "Komi"
+ },
+ "ku": {
+ "articles": 23646,
+ "name": "Kurdî / كوردی",
+ "english_name": "Kurdish"
+ },
+ "sl": {
+ "articles": 162300,
+ "name": "Slovenščina",
+ "english_name": "Slovenian"
+ },
+ "sc": {
+ "articles": 5886,
+ "name": "Sardu",
+ "english_name": "Sardinian"
+ },
+ "ky": {
+ "articles": 79728,
+ "name": "Кыргызча",
+ "english_name": "Kirghiz"
+ },
+ "sg": {
+ "articles": 255,
+ "name": "Sängö",
+ "english_name": "Sango"
+ },
+ "sw": {
+ "articles": 45275,
+ "name": "Kiswahili",
+ "english_name": "Swahili"
+ },
+ "se": {
+ "articles": 7443,
+ "name": "Sámegiella",
+ "english_name": "Northern Sami"
+ },
+ "sd": {
+ "articles": 10440,
+ "name": "سنڌي، سندھی ، सिन्ध",
+ "english_name": "Sindhi"
+ }
+ },
+ "bing news": [
+ "ar",
+ "bg",
+ "ca",
+ "cs",
+ "da",
+ "de",
+ "el",
+ "en",
+ "es",
+ "et",
+ "fa",
+ "fi",
+ "fr",
+ "he",
+ "hr",
+ "hu",
+ "id",
+ "is",
+ "it",
+ "ja",
+ "ko",
+ "lt",
+ "lv",
+ "ms",
+ "nl",
+ "no",
+ "pl",
+ "pt-BR",
+ "pt-PT",
+ "ro",
+ "ru",
+ "sk",
+ "sl",
+ "sq",
+ "sr",
+ "sv",
+ "th",
+ "tr",
+ "uk",
+ "vi",
+ "zh-CHS",
+ "zh-CHT"
+ ],
+ "yahoo news": [
+ "ar",
+ "bg",
+ "cs",
+ "da",
+ "de",
+ "el",
+ "en",
+ "es",
+ "et",
+ "fi",
+ "fr",
+ "he",
+ "hr",
+ "hu",
+ "it",
+ "ja",
+ "ko",
+ "lt",
+ "lv",
+ "nl",
+ "no",
+ "pl",
+ "pt",
+ "ro",
+ "ru",
+ "sk",
+ "sl",
+ "sv",
+ "th",
+ "tr",
+ "zh-CHS",
+ "zh-CHT"
+ ],
+ "swisscows": [
+ "ar-SA",
+ "browser",
+ "da-DK",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "en-AU",
+ "en-CA",
+ "en-GB",
+ "en-IE",
+ "en-IN",
+ "en-MY",
+ "en-NZ",
+ "en-PH",
+ "en-US",
+ "en-ZA",
+ "es-AR",
+ "es-CL",
+ "es-ES",
+ "es-MX",
+ "es-US",
+ "fi-FI",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "it-IT",
+ "ja-JP",
+ "ko-KR",
+ "lv-LV",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-BR",
+ "pt-PT",
+ "ru-RU",
+ "sv-SE",
+ "tr-TR",
+ "uk-UA",
+ "zh-CN",
+ "zh-HK",
+ "zh-TW"
+ ],
+ "qwant images": [
+ "bg-BG",
+ "br-FR",
+ "ca-AD",
+ "ca-ES",
+ "ca-FR",
+ "co-FR",
+ "cs-CZ",
+ "cy-GB",
+ "da-DK",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "el-GR",
+ "en-AU",
+ "en-CA",
+ "en-GB",
+ "en-IE",
+ "en-IN",
+ "en-MY",
+ "en-NZ",
+ "en-PH",
+ "en-SG",
+ "en-US",
+ "es-AD",
+ "es-AR",
+ "es-CL",
+ "es-ES",
+ "es-MX",
+ "et-EE",
+ "eu-ES",
+ "eu-FR",
+ "fi-FI",
+ "fr-AD",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "gd-GB",
+ "he-IL",
+ "hu-HU",
+ "it-CH",
+ "it-IT",
+ "ja-JP",
+ "ko-KR",
+ "ms-MY",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-AD",
+ "pt-BR",
+ "pt-PT",
+ "ro-RO",
+ "ru-RU",
+ "sv-SE",
+ "th-TH",
+ "tr-TR"
+ ],
+ "wikidata": {
+ "gv": {
+ "articles": 4966,
+ "name": "Gaelg",
+ "english_name": "Manx"
+ },
+ "sco": {
+ "articles": 52700,
+ "name": "Scots",
+ "english_name": "Scots"
+ },
+ "scn": {
+ "articles": 26052,
+ "name": "Sicilianu",
+ "english_name": "Sicilian"
+ },
+ "wuu": {
+ "articles": 12505,
+ "name": "吴语",
+ "english_name": "Wu"
+ },
+ "tcy": {
+ "articles": 970,
+ "name": "ತುಳು",
+ "english_name": "Tulu"
+ },
+ "cdo": {
+ "articles": 13994,
+ "name": "Mìng-dĕ̤ng-ngṳ̄",
+ "english_name": "Min Dong"
+ },
+ "gu": {
+ "articles": 28113,
+ "name": "ગુજરાતી",
+ "english_name": "Gujarati"
+ },
+ "kbd": {
+ "articles": 1576,
+ "name": "Адыгэбзэ (Adighabze)",
+ "english_name": "Kabardian Circassian"
+ },
+ "got": {
+ "articles": 577,
+ "name": "𐌲𐌿𐍄𐌹𐍃𐌺",
+ "english_name": "Gothic"
+ },
+ "gd": {
+ "articles": 14736,
+ "name": "Gàidhlig",
+ "english_name": "Scottish Gaelic"
+ },
+ "jbo": {
+ "articles": 1229,
+ "name": "Lojban",
+ "english_name": "Lojban"
+ },
+ "ga": {
+ "articles": 48149,
+ "name": "Gaeilge",
+ "english_name": "Irish"
+ },
+ "gn": {
+ "articles": 3619,
+ "name": "Avañe'ẽ",
+ "english_name": "Guarani"
+ },
+ "kbp": {
+ "articles": 1450,
+ "name": "Kabɩyɛ",
+ "english_name": "Kabiye"
+ },
+ "gl": {
+ "articles": 151099,
+ "name": "Galego",
+ "english_name": "Galician"
+ },
+ "als": {
+ "articles": 25014,
+ "name": "Alemannisch",
+ "english_name": "Alemannic"
+ },
+ "lg": {
+ "articles": 1155,
+ "name": "Luganda",
+ "english_name": "Luganda"
+ },
+ "hak": {
+ "articles": 8843,
+ "name": "Hak-kâ-fa / 客家話",
+ "english_name": "Hakka"
+ },
+ "lb": {
+ "articles": 54478,
+ "name": "Lëtzebuergesch",
+ "english_name": "Luxembourgish"
+ },
+ "szl": {
+ "articles": 7513,
+ "name": "Ślůnski",
+ "english_name": "Silesian"
+ },
+ "vep": {
+ "articles": 5802,
+ "name": "Vepsän",
+ "english_name": "Vepsian"
+ },
+ "la": {
+ "articles": 129128,
+ "name": "Latina",
+ "english_name": "Latin"
+ },
+ "ln": {
+ "articles": 3046,
+ "name": "Lingala",
+ "english_name": "Lingala"
+ },
+ "frp": {
+ "articles": 3146,
+ "name": "Arpitan",
+ "english_name": "Franco-Provençal"
+ },
+ "tt": {
+ "articles": 80846,
+ "name": "Tatarça / Татарча",
+ "english_name": "Tatar"
+ },
+ "tr": {
+ "articles": 315699,
+ "name": "Türkçe",
+ "english_name": "Turkish"
+ },
+ "cbk-zam": {
+ "articles": 2996,
+ "name": "Chavacano de Zamboanga",
+ "english_name": "Zamboanga Chavacano"
+ },
+ "li": {
+ "articles": 12244,
+ "name": "Limburgs",
+ "english_name": "Limburgish"
+ },
+ "lv": {
+ "articles": 87649,
+ "name": "Latviešu",
+ "english_name": "Latvian"
+ },
+ "to": {
+ "articles": 1692,
+ "name": "faka Tonga",
+ "english_name": "Tongan"
+ },
+ "tl": {
+ "articles": 81327,
+ "name": "Tagalog",
+ "english_name": "Tagalog"
+ },
+ "jam": {
+ "articles": 1630,
+ "name": "Jumiekan Kryuol",
+ "english_name": "Jamaican Patois"
+ },
+ "vec": {
+ "articles": 11226,
+ "name": "Vèneto",
+ "english_name": "Venetian"
+ },
+ "th": {
+ "articles": 126603,
+ "name": "ไทย",
+ "english_name": "Thai"
+ },
+ "ti": {
+ "articles": 168,
+ "name": "ትግርኛ",
+ "english_name": "Tigrinya"
+ },
+ "tg": {
+ "articles": 95443,
+ "name": "Тоҷикӣ",
+ "english_name": "Tajik"
+ },
+ "te": {
+ "articles": 69303,
+ "name": "తెలుగు",
+ "english_name": "Telugu"
+ },
+ "ksh": {
+ "articles": 2840,
+ "name": "Ripoarisch",
+ "english_name": "Ripuarian"
+ },
+ "pcd": {
+ "articles": 3775,
+ "name": "Picard",
+ "english_name": "Picard"
+ },
+ "ta": {
+ "articles": 117845,
+ "name": "தமிழ்",
+ "english_name": "Tamil"
+ },
+ "yi": {
+ "articles": 14493,
+ "name": "ייִדיש",
+ "english_name": "Yiddish"
+ },
+ "lrc": {
+ "articles": 5368,
+ "name": "لۊری شومالی",
+ "english_name": "Northern Luri"
+ },
+ "xmf": {
+ "articles": 12602,
+ "name": "მარგალური (Margaluri)",
+ "english_name": "Mingrelian"
+ },
+ "ceb": {
+ "articles": 5380865,
+ "name": "Sinugboanong Binisaya",
+ "english_name": "Cebuano"
+ },
+ "yo": {
+ "articles": 31717,
+ "name": "Yorùbá",
+ "english_name": "Yoruba"
+ },
+ "de": {
+ "articles": 2220065,
+ "name": "Deutsch",
+ "english_name": "German"
+ },
+ "da": {
+ "articles": 239987,
+ "name": "Dansk",
+ "english_name": "Danish"
+ },
+ "za": {
+ "articles": 1868,
+ "name": "Cuengh",
+ "english_name": "Zhuang"
+ },
+ "pdc": {
+ "articles": 1845,
+ "name": "Deitsch",
+ "english_name": "Pennsylvania German"
+ },
+ "bxr": {
+ "articles": 2093,
+ "name": "Буряад",
+ "english_name": "Buryat"
+ },
+ "dz": {
+ "articles": 219,
+ "name": "ཇོང་ཁ",
+ "english_name": "Dzongkha"
+ },
+ "hif": {
+ "articles": 9761,
+ "name": "Fiji Hindi",
+ "english_name": "Fiji Hindi"
+ },
+ "rm": {
+ "articles": 3543,
+ "name": "Rumantsch",
+ "english_name": "Romansh"
+ },
+ "dv": {
+ "articles": 3022,
+ "name": "ދިވެހިބަސް",
+ "english_name": "Divehi"
+ },
+ "qu": {
+ "articles": 20755,
+ "name": "Runa Simi",
+ "english_name": "Quechua"
+ },
+ "vls": {
+ "articles": 6536,
+ "name": "West-Vlams",
+ "english_name": "West Flemish"
+ },
+ "bar": {
+ "articles": 26645,
+ "name": "Boarisch",
+ "english_name": "Bavarian"
+ },
+ "ang": {
+ "articles": 3039,
+ "name": "Englisc",
+ "english_name": "Anglo-Saxon"
+ },
+ "eml": {
+ "articles": 11187,
+ "name": "Emiliàn e rumagnòl",
+ "english_name": "Emilian-Romagnol"
+ },
+ "kn": {
+ "articles": 23709,
+ "name": "ಕನ್ನಡ",
+ "english_name": "Kannada"
+ },
+ "fiu-vro": {
+ "articles": 5448,
+ "name": "Võro",
+ "english_name": "Võro"
+ },
+ "bpy": {
+ "articles": 25080,
+ "name": "ইমার ঠার/বিষ্ণুপ্রিয়া মণিপুরী",
+ "english_name": "Bishnupriya Manipuri"
+ },
+ "crh": {
+ "articles": 5977,
+ "name": "Qırımtatarca",
+ "english_name": "Crimean Tatar"
+ },
+ "mhr": {
+ "articles": 10025,
+ "name": "Олык Марий (Olyk Marij)",
+ "english_name": "Meadow Mari"
+ },
+ "diq": {
+ "articles": 9036,
+ "name": "Zazaki",
+ "english_name": "Zazaki"
+ },
+ "el": {
+ "articles": 152453,
+ "name": "Ελληνικά",
+ "english_name": "Greek"
+ },
+ "eo": {
+ "articles": 249972,
+ "name": "Esperanto",
+ "english_name": "Esperanto"
+ },
+ "en": {
+ "articles": 5717839,
+ "name": "English",
+ "english_name": "English"
+ },
+ "zh": {
+ "articles": 1022608,
+ "name": "中文",
+ "english_name": "Chinese"
+ },
+ "pms": {
+ "articles": 64375,
+ "name": "Piemontèis",
+ "english_name": "Piedmontese"
+ },
+ "ee": {
+ "articles": 345,
+ "name": "Eʋegbe",
+ "english_name": "Ewe"
+ },
+ "tpi": {
+ "articles": 1481,
+ "name": "Tok Pisin",
+ "english_name": "Tok Pisin"
+ },
+ "arz": {
+ "articles": 19444,
+ "name": "مصرى (Maṣri)",
+ "english_name": "Egyptian Arabic"
+ },
+ "lfn": {
+ "articles": 2868,
+ "name": "Lingua franca nova",
+ "english_name": "Lingua Franca Nova"
+ },
+ "mdf": {
+ "articles": 1185,
+ "name": "Мокшень (Mokshanj Kälj)",
+ "english_name": "Moksha"
+ },
+ "kaa": {
+ "articles": 1908,
+ "name": "Qaraqalpaqsha",
+ "english_name": "Karakalpak"
+ },
+ "olo": {
+ "articles": 2700,
+ "name": "Karjalan",
+ "english_name": "Livvi-Karelian"
+ },
+ "arc": {
+ "articles": 1628,
+ "name": "ܐܪܡܝܐ",
+ "english_name": "Aramaic"
+ },
+ "cr": {
+ "articles": 104,
+ "name": "Nehiyaw",
+ "english_name": "Cree"
+ },
+ "eu": {
+ "articles": 304835,
+ "name": "Euskara",
+ "english_name": "Basque"
+ },
+ "et": {
+ "articles": 180987,
+ "name": "Eesti",
+ "english_name": "Estonian"
+ },
+ "tet": {
+ "articles": 1431,
+ "name": "Tetun",
+ "english_name": "Tetum"
+ },
+ "es": {
+ "articles": 1474724,
+ "name": "Español",
+ "english_name": "Spanish"
+ },
+ "ba": {
+ "articles": 43988,
+ "name": "Башҡорт",
+ "english_name": "Bashkir"
+ },
+ "gom": {
+ "articles": 3514,
+ "name": "गोंयची कोंकणी / Gõychi Konknni",
+ "english_name": "Goan Konkani"
+ },
+ "ru": {
+ "articles": 1497272,
+ "name": "Русский",
+ "english_name": "Russian"
+ },
+ "roa-tara": {
+ "articles": 9242,
+ "name": "Tarandíne",
+ "english_name": "Tarantino"
+ },
+ "ha": {
+ "articles": 1913,
+ "name": "هَوُسَ",
+ "english_name": "Hausa"
+ },
+ "ak": {
+ "articles": 561,
+ "name": "Akana",
+ "english_name": "Akan"
+ },
+ "lad": {
+ "articles": 3805,
+ "name": "Dzhudezmo",
+ "english_name": "Ladino"
+ },
+ "new": {
+ "articles": 72159,
+ "name": "नेपाल भाषा",
+ "english_name": "Newar"
+ },
+ "rn": {
+ "articles": 611,
+ "name": "Kirundi",
+ "english_name": "Kirundi"
+ },
+ "ro": {
+ "articles": 388471,
+ "name": "Română",
+ "english_name": "Romanian"
+ },
+ "dsb": {
+ "articles": 3189,
+ "name": "Dolnoserbski",
+ "english_name": "Lower Sorbian"
+ },
+ "bn": {
+ "articles": 60805,
+ "name": "বাংলা",
+ "english_name": "Bengali"
+ },
+ "gor": {
+ "articles": 1776,
+ "name": "Hulontalo",
+ "english_name": "Gorontalo"
+ },
+ "hsb": {
+ "articles": 13181,
+ "name": "Hornjoserbsce",
+ "english_name": "Upper Sorbian"
+ },
+ "be": {
+ "articles": 157264,
+ "name": "Беларуская",
+ "english_name": "Belarusian"
+ },
+ "bg": {
+ "articles": 245706,
+ "name": "Български",
+ "english_name": "Bulgarian"
+ },
+ "myv": {
+ "articles": 5353,
+ "name": "Эрзянь (Erzjanj Kelj)",
+ "english_name": "Erzya"
+ },
+ "uk": {
+ "articles": 816473,
+ "name": "Українська",
+ "english_name": "Ukrainian"
+ },
+ "wa": {
+ "articles": 14717,
+ "name": "Walon",
+ "english_name": "Walloon"
+ },
+ "ast": {
+ "articles": 86717,
+ "name": "Asturianu",
+ "english_name": "Asturian"
+ },
+ "wo": {
+ "articles": 1170,
+ "name": "Wolof",
+ "english_name": "Wolof"
+ },
+ "bm": {
+ "articles": 646,
+ "name": "Bamanankan",
+ "english_name": "Bambara"
+ },
+ "jv": {
+ "articles": 54946,
+ "name": "Basa Jawa",
+ "english_name": "Javanese"
+ },
+ "bo": {
+ "articles": 5822,
+ "name": "བོད་སྐད",
+ "english_name": "Tibetan"
+ },
+ "bh": {
+ "articles": 7671,
+ "name": "भोजपुरी",
+ "english_name": "Bihari"
+ },
+ "bi": {
+ "articles": 1176,
+ "name": "Bislama",
+ "english_name": "Bislama"
+ },
+ "rue": {
+ "articles": 6698,
+ "name": "Русиньскый",
+ "english_name": "Rusyn"
+ },
+ "map-bms": {
+ "articles": 13333,
+ "name": "Basa Banyumasan",
+ "english_name": "Banyumasan"
+ },
+ "tum": {
+ "articles": 572,
+ "name": "chiTumbuka",
+ "english_name": "Tumbuka"
+ },
+ "br": {
+ "articles": 65468,
+ "name": "Brezhoneg",
+ "english_name": "Breton"
+ },
+ "bs": {
+ "articles": 78388,
+ "name": "Bosanski",
+ "english_name": "Bosnian"
+ },
+ "lez": {
+ "articles": 3954,
+ "name": "Лезги чІал (Lezgi č’al)",
+ "english_name": "Lezgian"
+ },
+ "ja": {
+ "articles": 1121035,
+ "name": "日本語",
+ "english_name": "Japanese"
+ },
+ "om": {
+ "articles": 772,
+ "name": "Oromoo",
+ "english_name": "Oromo"
+ },
+ "glk": {
+ "articles": 5656,
+ "name": "گیلکی",
+ "english_name": "Gilaki"
+ },
+ "ace": {
+ "articles": 7451,
+ "name": "Bahsa Acèh",
+ "english_name": "Acehnese"
+ },
+ "ilo": {
+ "articles": 11422,
+ "name": "Ilokano",
+ "english_name": "Ilokano"
+ },
+ "roa-rup": {
+ "articles": 1212,
+ "name": "Armãneashce",
+ "english_name": "Aromanian"
+ },
+ "oc": {
+ "articles": 84869,
+ "name": "Occitan",
+ "english_name": "Occitan"
+ },
+ "ltg": {
+ "articles": 807,
+ "name": "Latgaļu",
+ "english_name": "Latgalian"
+ },
+ "be-tarask": {
+ "articles": 64277,
+ "name": "Беларуская (тарашкевіца)",
+ "english_name": "Belarusian (Taraškievica)"
+ },
+ "st": {
+ "articles": 543,
+ "name": "Sesotho",
+ "english_name": "Sesotho"
+ },
+ "lo": {
+ "articles": 2952,
+ "name": "ລາວ",
+ "english_name": "Lao"
+ },
+ "krc": {
+ "articles": 2027,
+ "name": "Къарачай-Малкъар (Qarachay-Malqar)",
+ "english_name": "Karachay-Balkar"
+ },
+ "nds": {
+ "articles": 31150,
+ "name": "Plattdüütsch",
+ "english_name": "Low Saxon"
+ },
+ "os": {
+ "articles": 11084,
+ "name": "Иронау",
+ "english_name": "Ossetian"
+ },
+ "or": {
+ "articles": 14248,
+ "name": "ଓଡ଼ିଆ",
+ "english_name": "Oriya"
+ },
+ "udm": {
+ "articles": 4508,
+ "name": "Удмурт кыл",
+ "english_name": "Udmurt"
+ },
+ "xh": {
+ "articles": 748,
+ "name": "isiXhosa",
+ "english_name": "Xhosa"
+ },
+ "ch": {
+ "articles": 472,
+ "name": "Chamoru",
+ "english_name": "Chamorro"
+ },
+ "co": {
+ "articles": 5567,
+ "name": "Corsu",
+ "english_name": "Corsican"
+ },
+ "nso": {
+ "articles": 8089,
+ "name": "Sepedi",
+ "english_name": "Northern Sotho"
+ },
+ "simple": {
+ "articles": 138362,
+ "name": "Simple English",
+ "english_name": "Simple English"
+ },
+ "bjn": {
+ "articles": 1853,
+ "name": "Bahasa Banjar",
+ "english_name": "Banjar"
+ },
+ "ca": {
+ "articles": 589895,
+ "name": "Català",
+ "english_name": "Catalan"
+ },
+ "lmo": {
+ "articles": 37698,
+ "name": "Lumbaart",
+ "english_name": "Lombard"
+ },
+ "ce": {
+ "articles": 208693,
+ "name": "Нохчийн",
+ "english_name": "Chechen"
+ },
+ "ts": {
+ "articles": 566,
+ "name": "Xitsonga",
+ "english_name": "Tsonga"
+ },
+ "cy": {
+ "articles": 101280,
+ "name": "Cymraeg",
+ "english_name": "Welsh"
+ },
+ "ab": {
+ "articles": 3427,
+ "name": "Аҧсуа",
+ "english_name": "Abkhazian"
+ },
+ "cs": {
+ "articles": 412770,
+ "name": "Čeština",
+ "english_name": "Czech"
+ },
+ "ty": {
+ "articles": 1195,
+ "name": "Reo Mā`ohi",
+ "english_name": "Tahitian"
+ },
+ "ady": {
+ "articles": 408,
+ "name": "Адыгэбзэ",
+ "english_name": "Adyghe"
+ },
+ "cv": {
+ "articles": 41433,
+ "name": "Чăваш",
+ "english_name": "Chuvash"
+ },
+ "cu": {
+ "articles": 660,
+ "name": "Словѣньскъ",
+ "english_name": "Old Church Slavonic"
+ },
+ "ve": {
+ "articles": 267,
+ "name": "Tshivenda",
+ "english_name": "Venda"
+ },
+ "koi": {
+ "articles": 3449,
+ "name": "Перем Коми (Perem Komi)",
+ "english_name": "Komi-Permyak"
+ },
+ "ps": {
+ "articles": 9106,
+ "name": "پښتو",
+ "english_name": "Pashto"
+ },
+ "fj": {
+ "articles": 424,
+ "name": "Na Vosa Vakaviti",
+ "english_name": "Fijian"
+ },
+ "srn": {
+ "articles": 1059,
+ "name": "Sranantongo",
+ "english_name": "Sranan"
+ },
+ "pt": {
+ "articles": 1005169,
+ "name": "Português",
+ "english_name": "Portuguese"
+ },
+ "sm": {
+ "articles": 799,
+ "name": "Gagana Samoa",
+ "english_name": "Samoan"
+ },
+ "ext": {
+ "articles": 3013,
+ "name": "Estremeñu",
+ "english_name": "Extremaduran"
+ },
+ "lt": {
+ "articles": 189496,
+ "name": "Lietuvių",
+ "english_name": "Lithuanian"
+ },
+ "zh-min-nan": {
+ "articles": 227444,
+ "name": "Bân-lâm-gú",
+ "english_name": "Min Nan"
+ },
+ "frr": {
+ "articles": 7705,
+ "name": "Nordfriisk",
+ "english_name": "North Frisian"
+ },
+ "chr": {
+ "articles": 854,
+ "name": "ᏣᎳᎩ",
+ "english_name": "Cherokee"
+ },
+ "pa": {
+ "articles": 30223,
+ "name": "ਪੰਜਾਬੀ",
+ "english_name": "Punjabi"
+ },
+ "xal": {
+ "articles": 2036,
+ "name": "Хальмг",
+ "english_name": "Kalmyk"
+ },
+ "chy": {
+ "articles": 609,
+ "name": "Tsetsêhestâhese",
+ "english_name": "Cheyenne"
+ },
+ "pi": {
+ "articles": 2530,
+ "name": "पाऴि",
+ "english_name": "Pali"
+ },
+ "war": {
+ "articles": 1263242,
+ "name": "Winaray",
+ "english_name": "Waray-Waray"
+ },
+ "pl": {
+ "articles": 1300041,
+ "name": "Polski",
+ "english_name": "Polish"
+ },
+ "tk": {
+ "articles": 5491,
+ "name": "Türkmen",
+ "english_name": "Turkmen"
+ },
+ "hy": {
+ "articles": 245745,
+ "name": "Հայերեն",
+ "english_name": "Armenian"
+ },
+ "an": {
+ "articles": 33544,
+ "name": "Aragonés",
+ "english_name": "Aragonese"
+ },
+ "nrm": {
+ "articles": 4003,
+ "name": "Nouormand/Normaund",
+ "english_name": "Norman"
+ },
+ "hr": {
+ "articles": 198726,
+ "name": "Hrvatski",
+ "english_name": "Croatian"
+ },
+ "iu": {
+ "articles": 402,
+ "name": "ᐃᓄᒃᑎᑐᑦ",
+ "english_name": "Inuktitut"
+ },
+ "pfl": {
+ "articles": 2259,
+ "name": "Pälzisch",
+ "english_name": "Palatinate German"
+ },
+ "ht": {
+ "articles": 53067,
+ "name": "Krèyol ayisyen",
+ "english_name": "Haitian"
+ },
+ "hu": {
+ "articles": 436930,
+ "name": "Magyar",
+ "english_name": "Hungarian"
+ },
+ "gan": {
+ "articles": 6405,
+ "name": "贛語",
+ "english_name": "Gan"
+ },
+ "bat-smg": {
+ "articles": 16307,
+ "name": "Žemaitėška",
+ "english_name": "Samogitian"
+ },
+ "hi": {
+ "articles": 126671,
+ "name": "हिन्दी",
+ "english_name": "Hindi"
+ },
+ "tw": {
+ "articles": 650,
+ "name": "Twi",
+ "english_name": "Twi"
+ },
+ "gag": {
+ "articles": 2760,
+ "name": "Gagauz",
+ "english_name": "Gagauz"
+ },
+ "kg": {
+ "articles": 1181,
+ "name": "KiKongo",
+ "english_name": "Kongo"
+ },
+ "pnb": {
+ "articles": 46645,
+ "name": "شاہ مکھی پنجابی (Shāhmukhī Pañjābī)",
+ "english_name": "Western Punjabi"
+ },
+ "bug": {
+ "articles": 14117,
+ "name": "Basa Ugi",
+ "english_name": "Buginese"
+ },
+ "he": {
+ "articles": 230405,
+ "name": "עברית",
+ "english_name": "Hebrew"
+ },
+ "mg": {
+ "articles": 85263,
+ "name": "Malagasy",
+ "english_name": "Malagasy"
+ },
+ "fur": {
+ "articles": 3284,
+ "name": "Furlan",
+ "english_name": "Friulian"
+ },
+ "uz": {
+ "articles": 129308,
+ "name": "O‘zbek",
+ "english_name": "Uzbek"
+ },
+ "ml": {
+ "articles": 58717,
+ "name": "മലയാളം",
+ "english_name": "Malayalam"
+ },
+ "azb": {
+ "articles": 101690,
+ "name": "تۆرکجه",
+ "english_name": "South Azerbaijani"
+ },
+ "mn": {
+ "articles": 18326,
+ "name": "Монгол",
+ "english_name": "Mongolian"
+ },
+ "mi": {
+ "articles": 7145,
+ "name": "Māori",
+ "english_name": "Maori"
+ },
+ "ik": {
+ "articles": 260,
+ "name": "Iñupiak",
+ "english_name": "Inupiak"
+ },
+ "mk": {
+ "articles": 96187,
+ "name": "Македонски",
+ "english_name": "Macedonian"
+ },
+ "ur": {
+ "articles": 140514,
+ "name": "اردو",
+ "english_name": "Urdu"
+ },
+ "zea": {
+ "articles": 4417,
+ "name": "Zeêuws",
+ "english_name": "Zeelandic"
+ },
+ "mt": {
+ "articles": 3330,
+ "name": "Malti",
+ "english_name": "Maltese"
+ },
+ "dty": {
+ "articles": 2935,
+ "name": "डोटेली",
+ "english_name": "Doteli"
+ },
+ "stq": {
+ "articles": 3966,
+ "name": "Seeltersk",
+ "english_name": "Saterland Frisian"
+ },
+ "ms": {
+ "articles": 319749,
+ "name": "Bahasa Melayu",
+ "english_name": "Malay"
+ },
+ "mr": {
+ "articles": 51938,
+ "name": "मराठी",
+ "english_name": "Marathi"
+ },
+ "inh": {
+ "articles": 781,
+ "name": "Гӏалгӏай",
+ "english_name": "Ingush"
+ },
+ "ug": {
+ "articles": 4092,
+ "name": "ئۇيغۇر تىلى",
+ "english_name": "Uyghur"
+ },
+ "mwl": {
+ "articles": 3653,
+ "name": "Mirandés",
+ "english_name": "Mirandese"
+ },
+ "my": {
+ "articles": 39501,
+ "name": "မြန်မာဘာသာ",
+ "english_name": "Burmese"
+ },
+ "ki": {
+ "articles": 1357,
+ "name": "Gĩkũyũ",
+ "english_name": "Kikuyu"
+ },
+ "pih": {
+ "articles": 672,
+ "name": "Norfuk",
+ "english_name": "Norfolk"
+ },
+ "sah": {
+ "articles": 11663,
+ "name": "Саха тыла (Saxa Tyla)",
+ "english_name": "Sakha"
+ },
+ "ss": {
+ "articles": 448,
+ "name": "SiSwati",
+ "english_name": "Swati"
+ },
+ "af": {
+ "articles": 58995,
+ "name": "Afrikaans",
+ "english_name": "Afrikaans"
+ },
+ "tn": {
+ "articles": 641,
+ "name": "Setswana",
+ "english_name": "Tswana"
+ },
+ "vi": {
+ "articles": 1188863,
+ "name": "Tiếng Việt",
+ "english_name": "Vietnamese"
+ },
+ "is": {
+ "articles": 45775,
+ "name": "Íslenska",
+ "english_name": "Icelandic"
+ },
+ "am": {
+ "articles": 14359,
+ "name": "አማርኛ",
+ "english_name": "Amharic"
+ },
+ "it": {
+ "articles": 1461380,
+ "name": "Italiano",
+ "english_name": "Italian"
+ },
+ "vo": {
+ "articles": 121490,
+ "name": "Volapük",
+ "english_name": "Volapük"
+ },
+ "ay": {
+ "articles": 4383,
+ "name": "Aymar",
+ "english_name": "Aymara"
+ },
+ "as": {
+ "articles": 4991,
+ "name": "অসমীয়া",
+ "english_name": "Assamese"
+ },
+ "ar": {
+ "articles": 609711,
+ "name": "العربية",
+ "english_name": "Arabic"
+ },
+ "lbe": {
+ "articles": 1216,
+ "name": "Лакку",
+ "english_name": "Lak"
+ },
+ "km": {
+ "articles": 6712,
+ "name": "ភាសាខ្មែរ",
+ "english_name": "Khmer"
+ },
+ "io": {
+ "articles": 27921,
+ "name": "Ido",
+ "english_name": "Ido"
+ },
+ "av": {
+ "articles": 2306,
+ "name": "Авар",
+ "english_name": "Avar"
+ },
+ "ia": {
+ "articles": 20764,
+ "name": "Interlingua",
+ "english_name": "Interlingua"
+ },
+ "haw": {
+ "articles": 2960,
+ "name": "Hawai`i",
+ "english_name": "Hawaiian"
+ },
+ "az": {
+ "articles": 137984,
+ "name": "Azərbaycanca",
+ "english_name": "Azerbaijani"
+ },
+ "ie": {
+ "articles": 4046,
+ "name": "Interlingue",
+ "english_name": "Interlingue"
+ },
+ "id": {
+ "articles": 439613,
+ "name": "Bahasa Indonesia",
+ "english_name": "Indonesian"
+ },
+ "nds-nl": {
+ "articles": 8656,
+ "name": "Nedersaksisch",
+ "english_name": "Dutch Low Saxon"
+ },
+ "sat": {
+ "articles": 378,
+ "name": "Santali",
+ "english_name": "ᱥᱟᱱᱛᱟᱲᱤ"
+ },
+ "pap": {
+ "articles": 1933,
+ "name": "Papiamentu",
+ "english_name": "Papiamentu"
+ },
+ "ks": {
+ "articles": 323,
+ "name": "कश्मीरी / كشميري",
+ "english_name": "Kashmiri"
+ },
+ "nl": {
+ "articles": 1942104,
+ "name": "Nederlands",
+ "english_name": "Dutch"
+ },
+ "nn": {
+ "articles": 139512,
+ "name": "Nynorsk",
+ "english_name": "Norwegian (Nynorsk)"
+ },
+ "no": {
+ "articles": 494547,
+ "name": "Norsk (Bokmål)",
+ "english_name": "Norwegian (Bokmål)"
+ },
+ "na": {
+ "articles": 1305,
+ "name": "dorerin Naoero",
+ "english_name": "Nauruan"
+ },
+ "nah": {
+ "articles": 6921,
+ "name": "Nāhuatl",
+ "english_name": "Nahuatl"
+ },
+ "ne": {
+ "articles": 30697,
+ "name": "नेपाली",
+ "english_name": "Nepali"
+ },
+ "lij": {
+ "articles": 3425,
+ "name": "Líguru",
+ "english_name": "Ligurian"
+ },
+ "csb": {
+ "articles": 5246,
+ "name": "Kaszëbsczi",
+ "english_name": "Kashubian"
+ },
+ "tyv": {
+ "articles": 1722,
+ "name": "Тыва",
+ "english_name": "Tuvan"
+ },
+ "ny": {
+ "articles": 426,
+ "name": "Chichewa",
+ "english_name": "Chichewa"
+ },
+ "nap": {
+ "articles": 14555,
+ "name": "Nnapulitano",
+ "english_name": "Neapolitan"
+ },
+ "rmy": {
+ "articles": 658,
+ "name": "romani - रोमानी",
+ "english_name": "Romani"
+ },
+ "ig": {
+ "articles": 1361,
+ "name": "Igbo",
+ "english_name": "Igbo"
+ },
+ "pag": {
+ "articles": 2609,
+ "name": "Pangasinan",
+ "english_name": "Pangasinan"
+ },
+ "zu": {
+ "articles": 1024,
+ "name": "isiZulu",
+ "english_name": "Zulu"
+ },
+ "kw": {
+ "articles": 3821,
+ "name": "Kernewek/Karnuack",
+ "english_name": "Cornish"
+ },
+ "atj": {
+ "articles": 596,
+ "name": "Atikamekw",
+ "english_name": "Atikamekw"
+ },
+ "pam": {
+ "articles": 8555,
+ "name": "Kapampangan",
+ "english_name": "Kapampangan"
+ },
+ "nv": {
+ "articles": 6116,
+ "name": "Diné bizaad",
+ "english_name": "Navajo"
+ },
+ "sn": {
+ "articles": 3945,
+ "name": "chiShona",
+ "english_name": "Shona"
+ },
+ "kab": {
+ "articles": 2869,
+ "name": "Taqbaylit",
+ "english_name": "Kabyle"
+ },
+ "fr": {
+ "articles": 2040551,
+ "name": "Français",
+ "english_name": "French"
+ },
+ "mrj": {
+ "articles": 10268,
+ "name": "Кырык Мары (Kyryk Mary)",
+ "english_name": "Hill Mari"
+ },
+ "zh-yue": {
+ "articles": 68440,
+ "name": "粵語",
+ "english_name": "Cantonese"
+ },
+ "fy": {
+ "articles": 40760,
+ "name": "Frysk",
+ "english_name": "West Frisian"
+ },
+ "pnt": {
+ "articles": 458,
+ "name": "Ποντιακά",
+ "english_name": "Pontic"
+ },
+ "fa": {
+ "articles": 641921,
+ "name": "فارسی",
+ "english_name": "Persian"
+ },
+ "rw": {
+ "articles": 1823,
+ "name": "Ikinyarwanda",
+ "english_name": "Kinyarwanda"
+ },
+ "ff": {
+ "articles": 227,
+ "name": "Fulfulde",
+ "english_name": "Fula"
+ },
+ "mai": {
+ "articles": 12902,
+ "name": "मैथिली",
+ "english_name": "Maithili"
+ },
+ "fi": {
+ "articles": 444426,
+ "name": "Suomi",
+ "english_name": "Finnish"
+ },
+ "mzn": {
+ "articles": 12724,
+ "name": "مَزِروني",
+ "english_name": "Mazandarani"
+ },
+ "sa": {
+ "articles": 11350,
+ "name": "संस्कृतम्",
+ "english_name": "Sanskrit"
+ },
+ "zh-classical": {
+ "articles": 8200,
+ "name": "古文 / 文言文",
+ "english_name": "Classical Chinese"
+ },
+ "fo": {
+ "articles": 12792,
+ "name": "Føroyskt",
+ "english_name": "Faroese"
+ },
+ "bcl": {
+ "articles": 8161,
+ "name": "Bikol",
+ "english_name": "Central Bicolano"
+ },
+ "ka": {
+ "articles": 124386,
+ "name": "ქართული",
+ "english_name": "Georgian"
+ },
+ "nov": {
+ "articles": 1659,
+ "name": "Novial",
+ "english_name": "Novial"
+ },
+ "ckb": {
+ "articles": 22151,
+ "name": "Soranî / کوردی",
+ "english_name": "Sorani"
+ },
+ "kk": {
+ "articles": 222362,
+ "name": "Қазақша",
+ "english_name": "Kazakh"
+ },
+ "sr": {
+ "articles": 610270,
+ "name": "Српски / Srpski",
+ "english_name": "Serbian"
+ },
+ "sq": {
+ "articles": 74713,
+ "name": "Shqip",
+ "english_name": "Albanian"
+ },
+ "min": {
+ "articles": 222296,
+ "name": "Minangkabau",
+ "english_name": "Minangkabau"
+ },
+ "ko": {
+ "articles": 427108,
+ "name": "한국어",
+ "english_name": "Korean"
+ },
+ "sv": {
+ "articles": 3767201,
+ "name": "Svenska",
+ "english_name": "Swedish"
+ },
+ "su": {
+ "articles": 39667,
+ "name": "Basa Sunda",
+ "english_name": "Sundanese"
+ },
+ "kl": {
+ "articles": 1658,
+ "name": "Kalaallisut",
+ "english_name": "Greenlandic"
+ },
+ "sk": {
+ "articles": 227102,
+ "name": "Slovenčina",
+ "english_name": "Slovak"
+ },
+ "si": {
+ "articles": 14849,
+ "name": "සිංහල",
+ "english_name": "Sinhalese"
+ },
+ "sh": {
+ "articles": 445848,
+ "name": "Srpskohrvatski / Српскохрватски",
+ "english_name": "Serbo-Croatian"
+ },
+ "so": {
+ "articles": 5871,
+ "name": "Soomaali",
+ "english_name": "Somali"
+ },
+ "kv": {
+ "articles": 5301,
+ "name": "Коми",
+ "english_name": "Komi"
+ },
+ "ku": {
+ "articles": 23646,
+ "name": "Kurdî / كوردی",
+ "english_name": "Kurdish"
+ },
+ "sl": {
+ "articles": 162300,
+ "name": "Slovenščina",
+ "english_name": "Slovenian"
+ },
+ "sc": {
+ "articles": 5886,
+ "name": "Sardu",
+ "english_name": "Sardinian"
+ },
+ "ky": {
+ "articles": 79728,
+ "name": "Кыргызча",
+ "english_name": "Kirghiz"
+ },
+ "sg": {
+ "articles": 255,
+ "name": "Sängö",
+ "english_name": "Sango"
+ },
+ "sw": {
+ "articles": 45275,
+ "name": "Kiswahili",
+ "english_name": "Swahili"
+ },
+ "se": {
+ "articles": 7443,
+ "name": "Sámegiella",
+ "english_name": "Northern Sami"
+ },
+ "sd": {
+ "articles": 10440,
+ "name": "سنڌي، سندھی ، सिन्ध",
+ "english_name": "Sindhi"
+ }
+ },
+ "bing videos": [
+ "ar-SA",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "en-AU",
+ "en-CA",
+ "en-GB",
+ "en-ID",
+ "en-IN",
+ "en-MY",
+ "en-US",
+ "en-ZA",
+ "es-AR",
+ "es-ES",
+ "es-MX",
+ "es-US",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "it-IT",
+ "ja-JP",
+ "ko-KR",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-BR",
+ "ru-RU",
+ "sv-SE",
+ "tr-TR",
+ "zh-CN",
+ "zh-HK",
+ "zh-TW"
+ ],
+ "ddg definitions": [
+ "ar-XA",
+ "bg-BG",
+ "ca-CT",
+ "ca-ES",
+ "cs-CZ",
+ "da-DK",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "el-GR",
+ "en-AU",
+ "en-CA",
+ "en-ID",
+ "en-IE",
+ "en-IN",
+ "en-MY",
+ "en-NZ",
+ "en-PH",
+ "en-SG",
+ "en-UK",
+ "en-US",
+ "en-ZA",
+ "es-AR",
+ "es-CL",
+ "es-CO",
+ "es-ES",
+ "es-MX",
+ "es-PE",
+ "es-US",
+ "et-EE",
+ "fi-FI",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "he-IL",
+ "hr-HR",
+ "hu-HU",
+ "id-ID",
+ "it-CH",
+ "it-IT",
+ "jp-JP",
+ "kr-KR",
+ "lt-LT",
+ "lv-LV",
+ "ms-MY",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-BR",
+ "pt-PT",
+ "ro-RO",
+ "ru-RU",
+ "sk-SK",
+ "sl-SL",
+ "sv-SE",
+ "th-TH",
+ "tl-PH",
+ "tr-TR",
+ "tzh-HK",
+ "tzh-TW",
+ "vi-VN",
+ "wt-WT",
+ "zh-CN"
+ ],
+ "yahoo": [
+ "ar",
+ "bg",
+ "cs",
+ "da",
+ "de",
+ "el",
+ "en",
+ "es",
+ "et",
+ "fi",
+ "fr",
+ "he",
+ "hr",
+ "hu",
+ "it",
+ "ja",
+ "ko",
+ "lt",
+ "lv",
+ "nl",
+ "no",
+ "pl",
+ "pt",
+ "ro",
+ "ru",
+ "sk",
+ "sl",
+ "sv",
+ "th",
+ "tr",
+ "zh-CHS",
+ "zh-CHT"
+ ],
+ "bing images": [
+ "ar-SA",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "en-AU",
+ "en-CA",
+ "en-GB",
+ "en-ID",
+ "en-IN",
+ "en-MY",
+ "en-US",
+ "en-ZA",
+ "es-AR",
+ "es-ES",
+ "es-MX",
+ "es-US",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "it-IT",
+ "ja-JP",
+ "ko-KR",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-BR",
+ "ru-RU",
+ "sv-SE",
+ "tr-TR",
+ "zh-CN",
+ "zh-HK",
+ "zh-TW"
+ ],
+ "qwant social": [
+ "bg-BG",
+ "br-FR",
+ "ca-AD",
+ "ca-ES",
+ "ca-FR",
+ "co-FR",
+ "cs-CZ",
+ "cy-GB",
+ "da-DK",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "el-GR",
+ "en-AU",
+ "en-CA",
+ "en-GB",
+ "en-IE",
+ "en-IN",
+ "en-MY",
+ "en-NZ",
+ "en-PH",
+ "en-SG",
+ "en-US",
+ "es-AD",
+ "es-AR",
+ "es-CL",
+ "es-ES",
+ "es-MX",
+ "et-EE",
+ "eu-ES",
+ "eu-FR",
+ "fi-FI",
+ "fr-AD",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "gd-GB",
+ "he-IL",
+ "hu-HU",
+ "it-CH",
+ "it-IT",
+ "ja-JP",
+ "ko-KR",
+ "ms-MY",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-AD",
+ "pt-BR",
+ "pt-PT",
+ "ro-RO",
+ "ru-RU",
+ "sv-SE",
+ "th-TH",
+ "tr-TR"
+ ],
+ "bing": [
+ "ar",
+ "bg",
+ "ca",
+ "cs",
+ "da",
+ "de",
+ "el",
+ "en",
+ "es",
+ "et",
+ "fa",
+ "fi",
+ "fr",
+ "he",
+ "hr",
+ "hu",
+ "id",
+ "is",
+ "it",
+ "ja",
+ "ko",
+ "lt",
+ "lv",
+ "ms",
+ "nl",
+ "no",
+ "pl",
+ "pt-BR",
+ "pt-PT",
+ "ro",
+ "ru",
+ "sk",
+ "sl",
+ "sq",
+ "sr",
+ "sv",
+ "th",
+ "tr",
+ "uk",
+ "vi",
+ "zh-CHS",
+ "zh-CHT"
+ ],
+ "qwant news": [
+ "bg-BG",
+ "br-FR",
+ "ca-AD",
+ "ca-ES",
+ "ca-FR",
+ "co-FR",
+ "cs-CZ",
+ "cy-GB",
+ "da-DK",
+ "de-AT",
+ "de-CH",
+ "de-DE",
+ "el-GR",
+ "en-AU",
+ "en-CA",
+ "en-GB",
+ "en-IE",
+ "en-IN",
+ "en-MY",
+ "en-NZ",
+ "en-PH",
+ "en-SG",
+ "en-US",
+ "es-AD",
+ "es-AR",
+ "es-CL",
+ "es-ES",
+ "es-MX",
+ "et-EE",
+ "eu-ES",
+ "eu-FR",
+ "fi-FI",
+ "fr-AD",
+ "fr-BE",
+ "fr-CA",
+ "fr-CH",
+ "fr-FR",
+ "gd-GB",
+ "he-IL",
+ "hu-HU",
+ "it-CH",
+ "it-IT",
+ "ja-JP",
+ "ko-KR",
+ "ms-MY",
+ "nl-BE",
+ "nl-NL",
+ "no-NO",
+ "pl-PL",
+ "pt-AD",
+ "pt-BR",
+ "pt-PT",
+ "ro-RO",
+ "ru-RU",
+ "sv-SE",
+ "th-TH",
+ "tr-TR"
+ ],
+ "gigablast": []
+} \ No newline at end of file
diff --git a/searx/data/useragents.json b/searx/data/useragents.json
new file mode 100644
index 0000000..850bc41
--- /dev/null
+++ b/searx/data/useragents.json
@@ -0,0 +1,14 @@
+{
+ "ua": "Mozilla/5.0 ({os}; rv:{version}) Gecko/20100101 Firefox/{version}",
+ "versions": [
+ "61.0.1",
+ "61.0",
+ "60.0.2",
+ "60.0.1",
+ "60.0"
+ ],
+ "os": [
+ "Windows NT 10; WOW64",
+ "X11; Linux x86_64"
+ ]
+} \ No newline at end of file
diff --git a/searx/engines/__init__.py b/searx/engines/__init__.py
index af3cf81..c2f9f3d 100644
--- a/searx/engines/__init__.py
+++ b/searx/engines/__init__.py
@@ -20,13 +20,14 @@ import sys
import threading
from os.path import realpath, dirname
from io import open
+from babel.localedata import locale_identifiers
from flask_babel import gettext
from operator import itemgetter
from json import loads
from requests import get
from searx import settings
from searx import logger
-from searx.utils import load_module
+from searx.utils import load_module, match_language
logger = logger.getChild('engines')
@@ -38,6 +39,8 @@ engines = {}
categories = {'general': []}
languages = loads(open(engine_dir + '/../data/engines_languages.json', 'r', encoding='utf-8').read())
+babel_langs = [lang_parts[0] + '-' + lang_parts[-1] if len(lang_parts) > 1 else lang_parts[0]
+ for lang_parts in (lang_code.split('_') for lang_code in locale_identifiers())]
engine_shortcuts = {}
engine_default_args = {'paging': False,
@@ -97,6 +100,22 @@ def load_engine(engine_data):
if engine_data['name'] in languages:
setattr(engine, 'supported_languages', languages[engine_data['name']])
+ # find custom aliases for non standard language codes
+ if hasattr(engine, 'supported_languages'):
+ if hasattr(engine, 'language_aliases'):
+ language_aliases = getattr(engine, 'language_aliases')
+ else:
+ language_aliases = {}
+
+ for engine_lang in getattr(engine, 'supported_languages'):
+ iso_lang = match_language(engine_lang, babel_langs, fallback=None)
+ if iso_lang and iso_lang != engine_lang and not engine_lang.startswith(iso_lang) and \
+ iso_lang not in getattr(engine, 'supported_languages'):
+ language_aliases[iso_lang] = engine_lang
+
+ if language_aliases:
+ setattr(engine, 'language_aliases', language_aliases)
+
# assign language fetching method if auxiliary method exists
if hasattr(engine, '_fetch_supported_languages'):
setattr(engine, 'fetch_supported_languages',
diff --git a/searx/engines/acgsou.py b/searx/engines/acgsou.py
new file mode 100644
index 0000000..cca28f0
--- /dev/null
+++ b/searx/engines/acgsou.py
@@ -0,0 +1,75 @@
+"""
+ Acgsou (Japanese Animation/Music/Comics Bittorrent tracker)
+
+ @website https://www.acgsou.com/
+ @provide-api no
+ @using-api no
+ @results HTML
+ @stable no (HTML can change)
+ @parse url, title, content, seed, leech, torrentfile
+"""
+
+from lxml import html
+from searx.engines.xpath import extract_text
+from searx.url_utils import urlencode
+from searx.utils import get_torrent_size, int_or_zero
+
+# engine dependent config
+categories = ['files', 'images', 'videos', 'music']
+paging = True
+
+# search-url
+base_url = 'http://www.acgsou.com/'
+search_url = base_url + 'search.php?{query}&page={offset}'
+# xpath queries
+xpath_results = '//table[contains(@class, "list_style table_fixed")]//tr[not(th)]'
+xpath_category = './/td[2]/a[1]'
+xpath_title = './/td[3]/a[last()]'
+xpath_torrent_links = './/td[3]/a'
+xpath_filesize = './/td[4]/text()'
+
+
+def request(query, params):
+ query = urlencode({'keyword': query})
+ params['url'] = search_url.format(query=query, offset=params['pageno'])
+ return params
+
+
+def response(resp):
+ results = []
+ dom = html.fromstring(resp.text)
+ for result in dom.xpath(xpath_results):
+ # defaults
+ filesize = 0
+ magnet_link = "magnet:?xt=urn:btih:{}&tr=http://tracker.acgsou.com:2710/announce"
+ torrent_link = ""
+
+ try:
+ category = extract_text(result.xpath(xpath_category)[0])
+ except:
+ pass
+
+ page_a = result.xpath(xpath_title)[0]
+ title = extract_text(page_a)
+ href = base_url + page_a.attrib.get('href')
+
+ magnet_link = magnet_link.format(page_a.attrib.get('href')[5:-5])
+
+ try:
+ filesize_info = result.xpath(xpath_filesize)[0]
+ filesize = filesize_info[:-2]
+ filesize_multiplier = filesize_info[-2:]
+ filesize = get_torrent_size(filesize, filesize_multiplier)
+ except:
+ pass
+ # I didn't add download/seed/leech count since as I figured out they are generated randomly everytime
+ content = u'Category: "{category}".'
+ content = content.format(category=category)
+
+ results.append({'url': href,
+ 'title': title,
+ 'content': content,
+ 'filesize': filesize,
+ 'magnetlink': magnet_link,
+ 'template': 'torrent.html'})
+ return results
diff --git a/searx/engines/archlinux.py b/searx/engines/archlinux.py
index 245bc50..fc08112 100644
--- a/searx/engines/archlinux.py
+++ b/searx/engines/archlinux.py
@@ -99,13 +99,13 @@ supported_languages = dict(lang_urls, **main_langs)
# do search-request
def request(query, params):
- # translate the locale (e.g. 'en_US') to language code ('en')
+ # translate the locale (e.g. 'en-US') to language code ('en')
language = locale_to_lang_code(params['language'])
# if our language is hosted on the main site, we need to add its name
# to the query in order to narrow the results to that language
if language in main_langs:
- query += '(' + main_langs[language] + ')'
+ query += b' (' + main_langs[language] + b')'
# prepare the request parameters
query = urlencode({'search': query})
diff --git a/searx/engines/base.py b/searx/engines/base.py
index be0b7d2..f1b1cf6 100755
--- a/searx/engines/base.py
+++ b/searx/engines/base.py
@@ -55,7 +55,7 @@ shorcut_dict = {
def request(query, params):
# replace shortcuts with API advanced search keywords
for key in shorcut_dict.keys():
- query = re.sub(str(key), str(shorcut_dict[key]), query)
+ query = re.sub(key, shorcut_dict[key], str(query))
# basic search
offset = (params['pageno'] - 1) * number_of_results
diff --git a/searx/engines/bing.py b/searx/engines/bing.py
index 2e58d02..2da4061 100644
--- a/searx/engines/bing.py
+++ b/searx/engines/bing.py
@@ -16,12 +16,14 @@
from lxml import html
from searx.engines.xpath import extract_text
from searx.url_utils import urlencode
+from searx.utils import match_language, gen_useragent
# engine dependent config
categories = ['general']
paging = True
language_support = True
supported_languages_url = 'https://www.bing.com/account/general'
+language_aliases = {'zh-CN': 'zh-CHS', 'zh-TW': 'zh-CHT', 'zh-HK': 'zh-CHT'}
# search-url
base_url = 'https://www.bing.com/'
@@ -32,15 +34,18 @@ search_string = 'search?{query}&first={offset}'
def request(query, params):
offset = (params['pageno'] - 1) * 10 + 1
- lang = params['language'].split('-')[0].upper()
+ lang = match_language(params['language'], supported_languages, language_aliases)
- query = u'language:{} {}'.format(lang, query.decode('utf-8')).encode('utf-8')
+ query = u'language:{} {}'.format(lang.split('-')[0].upper(), query.decode('utf-8')).encode('utf-8')
search_path = search_string.format(
query=urlencode({'q': query}),
offset=offset)
params['url'] = base_url + search_path
+
+ params['headers']['User-Agent'] = gen_useragent('Windows NT 6.3; WOW64')
+
return params
diff --git a/searx/engines/bing_images.py b/searx/engines/bing_images.py
index 1567905..876011f 100644
--- a/searx/engines/bing_images.py
+++ b/searx/engines/bing_images.py
@@ -19,6 +19,7 @@ from lxml import html
from json import loads
import re
from searx.url_utils import urlencode
+from searx.utils import match_language
# engine dependent config
categories = ['images']
@@ -46,26 +47,6 @@ safesearch_types = {2: 'STRICT',
_quote_keys_regex = re.compile('({|,)([a-z][a-z0-9]*):(")', re.I | re.U)
-# get supported region code
-def get_region_code(lang, lang_list=None):
- region = None
- if lang in (lang_list or supported_languages):
- region = lang
- elif lang.startswith('no'):
- region = 'nb-NO'
- else:
- # try to get a supported country code with language
- lang = lang.split('-')[0]
- for lc in (lang_list or supported_languages):
- if lang == lc.split('-')[0]:
- region = lc
- break
- if region:
- return region.lower()
- else:
- return 'en-us'
-
-
# do search-request
def request(query, params):
offset = (params['pageno'] - 1) * 10 + 1
@@ -74,7 +55,7 @@ def request(query, params):
query=urlencode({'q': query}),
offset=offset)
- language = get_region_code(params['language'])
+ language = match_language(params['language'], supported_languages).lower()
params['cookies']['SRCHHPGUSR'] = \
'ADLT=' + safesearch_types.get(params['safesearch'], 'DEMOTE')
@@ -107,9 +88,7 @@ def response(resp):
url = json_data.get('purl')
img_src = json_data.get('murl')
-
- thumb_json_data = loads(_quote_keys_regex.sub(r'\1"\2": \3', link.attrib.get('mad')))
- thumbnail = thumb_json_data.get('turl')
+ thumbnail = json_data.get('turl')
# append result
results.append({'template': 'images.html',
diff --git a/searx/engines/bing_news.py b/searx/engines/bing_news.py
index c609a19..39048a1 100644
--- a/searx/engines/bing_news.py
+++ b/searx/engines/bing_news.py
@@ -14,8 +14,8 @@
from datetime import datetime
from dateutil import parser
from lxml import etree
-from searx.utils import list_get
-from searx.engines.bing import _fetch_supported_languages, supported_languages_url
+from searx.utils import list_get, match_language
+from searx.engines.bing import _fetch_supported_languages, supported_languages_url, language_aliases
from searx.url_utils import urlencode, urlparse, parse_qsl
# engine dependent config
@@ -71,7 +71,7 @@ def request(query, params):
offset = (params['pageno'] - 1) * 10 + 1
- language = params['language']
+ language = match_language(params['language'], supported_languages, language_aliases)
params['url'] = _get_url(query, language, offset, params['time_range'])
diff --git a/searx/engines/bing_videos.py b/searx/engines/bing_videos.py
index 312a82b..7002ac8 100644
--- a/searx/engines/bing_videos.py
+++ b/searx/engines/bing_videos.py
@@ -12,9 +12,10 @@
from json import loads
from lxml import html
-from searx.engines.bing_images import _fetch_supported_languages, supported_languages_url, get_region_code
+from searx.engines.bing_images import _fetch_supported_languages, supported_languages_url
from searx.engines.xpath import extract_text
from searx.url_utils import urlencode
+from searx.utils import match_language
categories = ['videos']
@@ -47,8 +48,8 @@ def request(query, params):
'ADLT=' + safesearch_types.get(params['safesearch'], 'DEMOTE')
# language cookie
- region = get_region_code(params['language'], lang_list=supported_languages)
- params['cookies']['_EDGE_S'] = 'mkt=' + region + '&F=1'
+ language = match_language(params['language'], supported_languages).lower()
+ params['cookies']['_EDGE_S'] = 'mkt=' + language + '&F=1'
# query and paging
params['url'] = search_url.format(query=urlencode({'q': query}),
diff --git a/searx/engines/currency_convert.py b/searx/engines/currency_convert.py
index 9c1c2f7..8eab8f6 100644
--- a/searx/engines/currency_convert.py
+++ b/searx/engines/currency_convert.py
@@ -11,7 +11,7 @@ if sys.version_info[0] == 3:
unicode = str
categories = []
-url = 'https://finance.google.com/finance/converter?a=1&from={0}&to={1}'
+url = 'https://duckduckgo.com/js/spice/currency/1/{0}/{1}'
weight = 100
parser_re = re.compile(b'.*?(\\d+(?:\\.\\d+)?) ([^.0-9]+) (?:in|to) ([^.0-9]+)', re.I)
@@ -44,7 +44,6 @@ def request(query, params):
if not m:
# wrong query
return params
-
amount, from_currency, to_currency = m.groups()
amount = float(amount)
from_currency = name_to_iso4217(from_currency.strip())
@@ -63,16 +62,13 @@ def request(query, params):
def response(resp):
+ """remove first and last lines to get only json"""
+ json_resp = resp.text[resp.text.find('\n') + 1:resp.text.rfind('\n') - 2]
results = []
- pat = '<span class=bld>(.+) {0}</span>'.format(
- resp.search_params['to'].upper())
-
try:
- conversion_rate = re.findall(pat, resp.text)[0]
- conversion_rate = float(conversion_rate)
+ conversion_rate = float(json.loads(json_resp)['conversion']['converted-amount'])
except:
return results
-
answer = '{0} {1} = {2} {3}, 1 {1} ({5}) = {4} {3} ({6})'.format(
resp.search_params['amount'],
resp.search_params['from'],
@@ -83,7 +79,7 @@ def response(resp):
resp.search_params['to_name'],
)
- url = 'https://finance.google.com/finance?q={0}{1}'.format(
+ url = 'https://duckduckgo.com/js/spice/currency/1/{0}/{1}'.format(
resp.search_params['from'].upper(), resp.search_params['to'])
results.append({'answer': answer, 'url': url})
diff --git a/searx/engines/dailymotion.py b/searx/engines/dailymotion.py
index cfa7679..8268b62 100644
--- a/searx/engines/dailymotion.py
+++ b/searx/engines/dailymotion.py
@@ -15,6 +15,7 @@
from json import loads
from datetime import datetime
from searx.url_utils import urlencode
+from searx.utils import match_language
# engine dependent config
categories = ['videos']
@@ -32,7 +33,7 @@ supported_languages_url = 'https://api.dailymotion.com/languages'
# do search-request
def request(query, params):
- locale = params['language']
+ locale = match_language(params['language'], supported_languages)
params['url'] = search_url.format(
query=urlencode({'search': query, 'localization': locale}),
diff --git a/searx/engines/duckduckgo.py b/searx/engines/duckduckgo.py
index 6f8797f..2c5dc50 100644
--- a/searx/engines/duckduckgo.py
+++ b/searx/engines/duckduckgo.py
@@ -18,16 +18,27 @@ from json import loads
from searx.engines.xpath import extract_text
from searx.poolrequests import get
from searx.url_utils import urlencode
+from searx.utils import match_language
# engine dependent config
categories = ['general']
paging = True
language_support = True
-supported_languages_url = 'https://duckduckgo.com/d2030.js'
+supported_languages_url = 'https://duckduckgo.com/util/u172.js'
time_range_support = True
+language_aliases = {
+ 'ar-SA': 'ar-XA',
+ 'es-419': 'es-XL',
+ 'ja': 'jp-JP',
+ 'ko': 'kr-KR',
+ 'sl-SI': 'sl-SL',
+ 'zh-TW': 'tzh-TW',
+ 'zh-HK': 'tzh-HK'
+}
+
# search-url
-url = 'https://duckduckgo.com/html?{query}&s={offset}&api=/d.js&o=json&dc={dc_param}'
+url = 'https://duckduckgo.com/html?{query}&s={offset}&dc={dc_param}'
time_range_url = '&df={range}'
time_range_dict = {'day': 'd',
@@ -42,34 +53,12 @@ content_xpath = './/a[@class="result__snippet"]'
# match query's language to a region code that duckduckgo will accept
-def get_region_code(lang, lang_list=None):
- # custom fixes for languages
- if lang[:2] == 'ja':
- region_code = 'jp-jp'
- elif lang[:2] == 'sl':
- region_code = 'sl-sl'
- elif lang == 'zh-TW':
- region_code = 'tw-tzh'
- elif lang == 'zh-HK':
- region_code = 'hk-tzh'
- elif lang[-2:] == 'SA':
- region_code = 'xa-' + lang.split('-')[0]
- elif lang[-2:] == 'GB':
- region_code = 'uk-' + lang.split('-')[0]
- else:
- region_code = lang.split('-')
- if len(region_code) == 2:
- # country code goes first
- region_code = region_code[1].lower() + '-' + region_code[0].lower()
- else:
- # tries to get a country code from language
- region_code = region_code[0].lower()
- for lc in (lang_list or supported_languages):
- lc = lc.split('-')
- if region_code == lc[0]:
- region_code = lc[1].lower() + '-' + lc[0].lower()
- break
- return region_code
+def get_region_code(lang, lang_list=[]):
+ lang_code = match_language(lang, lang_list, language_aliases, 'wt-WT')
+ lang_parts = lang_code.split('-')
+
+ # country code goes first
+ return lang_parts[1].lower() + '-' + lang_parts[0].lower()
# do search-request
@@ -79,7 +68,7 @@ def request(query, params):
offset = (params['pageno'] - 1) * 30
- region_code = get_region_code(params['language'])
+ region_code = get_region_code(params['language'], supported_languages)
params['url'] = url.format(
query=urlencode({'q': query, 'kl': region_code}), offset=offset, dc_param=offset)
diff --git a/searx/engines/duckduckgo_definitions.py b/searx/engines/duckduckgo_definitions.py
index 21c6a65..957a13e 100644
--- a/searx/engines/duckduckgo_definitions.py
+++ b/searx/engines/duckduckgo_definitions.py
@@ -2,9 +2,9 @@ import json
from lxml import html
from re import compile
from searx.engines.xpath import extract_text
-from searx.engines.duckduckgo import _fetch_supported_languages, supported_languages_url
+from searx.engines.duckduckgo import _fetch_supported_languages, supported_languages_url, language_aliases
from searx.url_utils import urlencode
-from searx.utils import html_to_text
+from searx.utils import html_to_text, match_language
url = 'https://api.duckduckgo.com/'\
+ '?{query}&format=json&pretty=0&no_redirect=1&d=1'
@@ -24,7 +24,8 @@ def result_to_text(url, text, htmlResult):
def request(query, params):
params['url'] = url.format(query=urlencode({'q': query}))
- params['headers']['Accept-Language'] = params['language'].split('-')[0]
+ language = match_language(params['language'], supported_languages, language_aliases)
+ params['headers']['Accept-Language'] = language.split('-')[0]
return params
diff --git a/searx/engines/duckduckgo_images.py b/searx/engines/duckduckgo_images.py
index 7b0e726..7905d0b 100644
--- a/searx/engines/duckduckgo_images.py
+++ b/searx/engines/duckduckgo_images.py
@@ -15,7 +15,10 @@
from json import loads
from searx.engines.xpath import extract_text
-from searx.engines.duckduckgo import _fetch_supported_languages, supported_languages_url, get_region_code
+from searx.engines.duckduckgo import (
+ _fetch_supported_languages, supported_languages_url,
+ get_region_code, language_aliases
+)
from searx.poolrequests import get
from searx.url_utils import urlencode
diff --git a/searx/engines/duden.py b/searx/engines/duden.py
new file mode 100644
index 0000000..881ff9d
--- /dev/null
+++ b/searx/engines/duden.py
@@ -0,0 +1,76 @@
+"""
+ Duden
+ @website https://www.duden.de
+ @provide-api no
+ @using-api no
+ @results HTML (using search portal)
+ @stable no (HTML can change)
+ @parse url, title, content
+"""
+
+from lxml import html, etree
+import re
+from searx.engines.xpath import extract_text
+from searx.url_utils import quote
+from searx import logger
+
+categories = ['general']
+paging = True
+language_support = False
+
+# search-url
+base_url = 'https://www.duden.de/'
+search_url = base_url + 'suchen/dudenonline/{query}?page={offset}'
+
+
+def request(query, params):
+ '''pre-request callback
+ params<dict>:
+ method : POST/GET
+ headers : {}
+ data : {} # if method == POST
+ url : ''
+ category: 'search category'
+ pageno : 1 # number of the requested page
+ '''
+
+ offset = (params['pageno'] - 1)
+ params['url'] = search_url.format(offset=offset, query=quote(query))
+ return params
+
+
+def response(resp):
+ '''post-response callback
+ resp: requests response object
+ '''
+ results = []
+
+ dom = html.fromstring(resp.text)
+
+ try:
+ number_of_results_string = re.sub('[^0-9]', '', dom.xpath(
+ '//a[@class="active" and contains(@href,"/suchen/dudenonline")]/span/text()')[0]
+ )
+
+ results.append({'number_of_results': int(number_of_results_string)})
+
+ except:
+ logger.debug("Couldn't read number of results.")
+ pass
+
+ for result in dom.xpath('//section[@class="wide" and not(contains(@style,"overflow:hidden"))]'):
+ try:
+ logger.debug("running for %s" % str(result))
+ link = result.xpath('.//h2/a')[0]
+ url = link.attrib.get('href')
+ title = result.xpath('string(.//h2/a)')
+ content = extract_text(result.xpath('.//p'))
+ # append result
+ results.append({'url': url,
+ 'title': title,
+ 'content': content})
+ except:
+ logger.debug('result parse error in:\n%s', etree.tostring(result, pretty_print=True))
+ continue
+
+ return results
diff --git a/searx/engines/gentoo.py b/searx/engines/gentoo.py
new file mode 100644
index 0000000..a7a966c
--- /dev/null
+++ b/searx/engines/gentoo.py
@@ -0,0 +1,128 @@
+# -*- coding: utf-8 -*-
+
+"""
+ Gentoo Wiki
+
+ @website https://wiki.gentoo.org
+ @provide-api yes
+ @using-api no
+ @results HTML
+ @stable no (HTML can change)
+ @parse url, title
+"""
+
+from lxml import html
+from searx.engines.xpath import extract_text
+from searx.url_utils import urlencode, urljoin
+
+# engine dependent config
+categories = ['it']
+language_support = True
+paging = True
+base_url = 'https://wiki.gentoo.org'
+
+# xpath queries
+xpath_results = '//ul[@class="mw-search-results"]/li'
+xpath_link = './/div[@class="mw-search-result-heading"]/a'
+
+
+# cut 'en' from 'en-US', 'de' from 'de-CH', and so on
+def locale_to_lang_code(locale):
+ if locale.find('-') >= 0:
+ locale = locale.split('-')[0]
+ return locale
+
+
+# wikis for some languages were moved off from the main site, we need to make
+# requests to correct URLs to be able to get results in those languages
+lang_urls = {
+ 'en': {
+ 'base': 'https://wiki.gentoo.org',
+ 'search': '/index.php?title=Special:Search&offset={offset}&{query}'
+ },
+ 'others': {
+ 'base': 'https://wiki.gentoo.org',
+ 'search': '/index.php?title=Special:Search&offset={offset}&{query}\
+ &profile=translation&languagefilter={language}'
+ }
+}
+
+
+# get base & search URLs for selected language
+def get_lang_urls(language):
+ if language != 'en':
+ return lang_urls['others']
+ return lang_urls['en']
+
+
+# Language names to build search requests for
+# those languages which are hosted on the main site.
+main_langs = {
+ 'ar': 'العربية',
+ 'bg': 'Български',
+ 'cs': 'Česky',
+ 'da': 'Dansk',
+ 'el': 'Ελληνικά',
+ 'es': 'Español',
+ 'he': 'עברית',
+ 'hr': 'Hrvatski',
+ 'hu': 'Magyar',
+ 'it': 'Italiano',
+ 'ko': '한국어',
+ 'lt': 'Lietuviškai',
+ 'nl': 'Nederlands',
+ 'pl': 'Polski',
+ 'pt': 'Português',
+ 'ru': 'Русский',
+ 'sl': 'Slovenský',
+ 'th': 'ไทย',
+ 'uk': 'Українська',
+ 'zh': '简体中文'
+}
+supported_languages = dict(lang_urls, **main_langs)
+
+
+# do search-request
+def request(query, params):
+ # translate the locale (e.g. 'en-US') to language code ('en')
+ language = locale_to_lang_code(params['language'])
+
+ # if our language is hosted on the main site, we need to add its name
+ # to the query in order to narrow the results to that language
+ if language in main_langs:
+ query += b' (' + (main_langs[language]).encode('utf-8') + b')'
+
+ # prepare the request parameters
+ query = urlencode({'search': query})
+ offset = (params['pageno'] - 1) * 20
+
+ # get request URLs for our language of choice
+ urls = get_lang_urls(language)
+ search_url = urls['base'] + urls['search']
+
+ params['url'] = search_url.format(query=query, offset=offset,
+ language=language)
+
+ return params
+
+
+# get response from search-request
+def response(resp):
+ # get the base URL for the language in which request was made
+ language = locale_to_lang_code(resp.search_params['language'])
+ base_url = get_lang_urls(language)['base']
+
+ results = []
+
+ dom = html.fromstring(resp.text)
+
+ # parse results
+ for result in dom.xpath(xpath_results):
+ link = result.xpath(xpath_link)[0]
+ href = urljoin(base_url, link.attrib.get('href'))
+ title = extract_text(link)
+
+ results.append({'url': href,
+ 'title': title})
+
+ return results
diff --git a/searx/engines/gigablast.py b/searx/engines/gigablast.py
index ed9380e..9b9b9bd 100644
--- a/searx/engines/gigablast.py
+++ b/searx/engines/gigablast.py
@@ -34,6 +34,7 @@ search_string = 'search?{query}'\
'&qlang={lang}'\
'&ff={safesearch}'\
'&rxiec={rxieu}'\
+ '&ulse={ulse}'\
'&rand={rxikd}' # current unix timestamp
# specific xpath variables
@@ -64,6 +65,7 @@ def request(query, params):
number_of_results=number_of_results,
rxikd=int(time() * 1000),
rxieu=random.randint(1000000000, 9999999999),
+ ulse=random.randint(100000000, 999999999),
lang=language,
safesearch=safesearch)
diff --git a/searx/engines/google.py b/searx/engines/google.py
index 0a86783..62e7d11 100644
--- a/searx/engines/google.py
+++ b/searx/engines/google.py
@@ -14,6 +14,7 @@ from lxml import html, etree
from searx.engines.xpath import extract_text, extract_url
from searx import logger
from searx.url_utils import urlencode, urlparse, parse_qsl
+from searx.utils import match_language
logger = logger.getChild('google engine')
@@ -72,7 +73,7 @@ country_to_hostname = {
'RO': 'www.google.ro', # Romania
'RU': 'www.google.ru', # Russia
'SK': 'www.google.sk', # Slovakia
- 'SL': 'www.google.si', # Slovenia (SL -> si)
+ 'SI': 'www.google.si', # Slovenia
'SE': 'www.google.se', # Sweden
'TH': 'www.google.co.th', # Thailand
'TR': 'www.google.com.tr', # Turkey
@@ -90,7 +91,7 @@ url_map = 'https://www.openstreetmap.org/'\
search_path = '/search'
search_url = ('https://{hostname}' +
search_path +
- '?{query}&start={offset}&gws_rd=cr&gbv=1&lr={lang}&ei=x')
+ '?{query}&start={offset}&gws_rd=cr&gbv=1&lr={lang}&hl={lang_short}&ei=x')
time_range_search = "&tbs=qdr:{range}"
time_range_dict = {'day': 'd',
@@ -165,22 +166,16 @@ def extract_text_from_dom(result, xpath):
def request(query, params):
offset = (params['pageno'] - 1) * 10
- # temporary fix until a way of supporting en-US is found
- if params['language'] == 'en-US':
- params['language'] = 'en-GB'
-
- if params['language'][:2] == 'jv':
- language = 'jw'
- country = 'ID'
- url_lang = 'lang_jw'
+ language = match_language(params['language'], supported_languages)
+ language_array = language.split('-')
+ if params['language'].find('-') > 0:
+ country = params['language'].split('-')[1]
+ elif len(language_array) == 2:
+ country = language_array[1]
else:
- language_array = params['language'].lower().split('-')
- if len(language_array) == 2:
- country = language_array[1]
- else:
- country = 'US'
- language = language_array[0] + ',' + language_array[0] + '-' + country
- url_lang = 'lang_' + language_array[0]
+ country = 'US'
+
+ url_lang = 'lang_' + language
if use_locale_domain:
google_hostname = country_to_hostname.get(country.upper(), default_hostname)
@@ -192,11 +187,12 @@ def request(query, params):
params['url'] = search_url.format(offset=offset,
query=urlencode({'q': query}),
hostname=google_hostname,
- lang=url_lang)
+ lang=url_lang,
+ lang_short=language)
if params['time_range'] in time_range_dict:
params['url'] += time_range_search.format(range=time_range_dict[params['time_range']])
- params['headers']['Accept-Language'] = language
+ params['headers']['Accept-Language'] = language + ',' + language + '-' + country
params['headers']['Accept'] = 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8'
params['google_hostname'] = google_hostname
diff --git a/searx/engines/google_images.py b/searx/engines/google_images.py
index a380170..504831a 100644
--- a/searx/engines/google_images.py
+++ b/searx/engines/google_images.py
@@ -13,7 +13,7 @@
from datetime import date, timedelta
from json import loads
from lxml import html
-from searx.url_utils import urlencode
+from searx.url_utils import urlencode, urlparse, parse_qs
# engine dependent config
@@ -25,10 +25,9 @@ number_of_results = 100
search_url = 'https://www.google.com/search'\
'?{query}'\
- '&asearch=ichunk'\
- '&async=_id:rg_s,_pms:s'\
'&tbm=isch'\
- '&yv=2'\
+ '&gbv=1'\
+ '&sa=G'\
'&{search_options}'
time_range_attr = "qdr:{range}"
time_range_custom_attr = "cdr:1,cd_min:{start},cd_max{end}"
@@ -66,30 +65,22 @@ def request(query, params):
def response(resp):
results = []
- g_result = loads(resp.text)
-
- dom = html.fromstring(g_result[1][1])
+ dom = html.fromstring(resp.text)
# parse results
- for result in dom.xpath('//div[@data-ved]'):
-
- try:
- metadata = loads(''.join(result.xpath('./div[contains(@class, "rg_meta")]/text()')))
- except:
- continue
-
- thumbnail_src = metadata['tu']
-
- # http to https
- thumbnail_src = thumbnail_src.replace("http://", "https://")
-
+ for img in dom.xpath('//a'):
+ r = {
+ 'title': u' '.join(img.xpath('.//div[class="rg_ilmbg"]//text()')),
+ 'content': '',
+ 'template': 'images.html',
+ }
+ url = urlparse(img.xpath('.//@href')[0])
+ query = parse_qs(url.query)
+ r['url'] = query['imgrefurl'][0]
+ r['img_src'] = query['imgurl'][0]
+ r['thumbnail_src'] = r['img_src']
# append result
- results.append({'url': metadata['ru'],
- 'title': metadata['pt'],
- 'content': metadata['s'],
- 'thumbnail_src': thumbnail_src,
- 'img_src': metadata['ou'],
- 'template': 'images.html'})
+ results.append(r)
# return results
return results
diff --git a/searx/engines/google_news.py b/searx/engines/google_news.py
index 8b8e717..aadcb76 100644
--- a/searx/engines/google_news.py
+++ b/searx/engines/google_news.py
@@ -13,6 +13,7 @@
from lxml import html
from searx.engines.google import _fetch_supported_languages, supported_languages_url
from searx.url_utils import urlencode
+from searx.utils import match_language
# search-url
categories = ['news']
@@ -50,8 +51,9 @@ def request(query, params):
params['url'] = search_url.format(query=urlencode({'q': query}),
search_options=urlencode(search_options))
- language_array = params['language'].lower().split('-')
- params['url'] += '&lr=lang_' + language_array[0]
+ language = match_language(params['language'], supported_languages).split('-')[0]
+ if language:
+ params['url'] += '&lr=lang_' + language
return params
@@ -66,8 +68,8 @@ def response(resp):
for result in dom.xpath('//div[@class="g"]|//div[@class="g _cy"]'):
try:
r = {
- 'url': result.xpath('.//a[@class="l _PMs"]')[0].attrib.get("href"),
- 'title': ''.join(result.xpath('.//a[@class="l _PMs"]//text()')),
+ 'url': result.xpath('.//a[@class="l lLrAF"]')[0].attrib.get("href"),
+ 'title': ''.join(result.xpath('.//a[@class="l lLrAF"]//text()')),
'content': ''.join(result.xpath('.//div[@class="st"]//text()')),
}
except:
diff --git a/searx/engines/google_videos.py b/searx/engines/google_videos.py
index 310b314..9a41b2d 100644
--- a/searx/engines/google_videos.py
+++ b/searx/engines/google_videos.py
@@ -7,7 +7,7 @@
@using-api no
@results HTML
@stable no
- @parse url, title, content
+ @parse url, title, content, thumbnail
"""
from datetime import date, timedelta
@@ -15,7 +15,7 @@ from json import loads
from lxml import html
from searx.engines.xpath import extract_text
from searx.url_utils import urlencode
-
+import re
# engine dependent config
categories = ['videos']
@@ -25,7 +25,7 @@ time_range_support = True
number_of_results = 10
search_url = 'https://www.google.com/search'\
- '?{query}'\
+ '?q={query}'\
'&tbm=vid'\
'&{search_options}'
time_range_attr = "qdr:{range}"
@@ -69,15 +69,27 @@ def response(resp):
# parse results
for result in dom.xpath('//div[@class="g"]'):
- title = extract_text(result.xpath('.//h3/a'))
- url = result.xpath('.//h3/a/@href')[0]
+ title = extract_text(result.xpath('.//h3'))
+ url = result.xpath('.//div[@class="r"]/a/@href')[0]
content = extract_text(result.xpath('.//span[@class="st"]'))
+ # get thumbnails
+ script = str(dom.xpath('//script[contains(., "_setImagesSrc")]')[0].text)
+ id = result.xpath('.//div[@class="s"]//img/@id')[0]
+ thumbnails_data = re.findall('s=\'(.*?)(?:\\\\[a-z,1-9,\\\\]+\'|\')\;var ii=\[(?:|[\'vidthumb\d+\',]+)\'' + id,
+ script)
+ tmp = []
+ if len(thumbnails_data) != 0:
+ tmp = re.findall('(data:image/jpeg;base64,[a-z,A-Z,0-9,/,\+]+)', thumbnails_data[0])
+ thumbnail = ''
+ if len(tmp) != 0:
+ thumbnail = tmp[-1]
+
# append result
results.append({'url': url,
'title': title,
'content': content,
- 'thumbnail': '',
+ 'thumbnail': thumbnail,
'template': 'videos.html'})
return results
diff --git a/searx/engines/nyaa.py b/searx/engines/nyaa.py
index 6a8e598..c57979a 100644
--- a/searx/engines/nyaa.py
+++ b/searx/engines/nyaa.py
@@ -1,7 +1,7 @@
"""
Nyaa.si (Anime Bittorrent tracker)
- @website http://www.nyaa.si/
+ @website https://nyaa.si/
@provide-api no
@using-api no
@results HTML
@@ -19,7 +19,7 @@ categories = ['files', 'images', 'videos', 'music']
paging = True
# search-url
-base_url = 'http://www.nyaa.si/'
+base_url = 'https://nyaa.si/'
search_url = base_url + '?page=search&{query}&offset={offset}'
# xpath queries
diff --git a/searx/engines/piratebay.py b/searx/engines/piratebay.py
index a5af8d8..2f3f22a 100644
--- a/searx/engines/piratebay.py
+++ b/searx/engines/piratebay.py
@@ -18,7 +18,7 @@ categories = ['videos', 'music', 'files']
paging = True
# search-url
-url = 'https://thepiratebay.se/'
+url = 'https://thepiratebay.org/'
search_url = url + 'search/{search_term}/{pageno}/99/{search_type}'
# piratebay specific type-definitions
diff --git a/searx/engines/qwant.py b/searx/engines/qwant.py
index 408c2b3..4b0f1c8 100644
--- a/searx/engines/qwant.py
+++ b/searx/engines/qwant.py
@@ -14,6 +14,7 @@ from datetime import datetime
from json import loads
from searx.utils import html_to_text
from searx.url_utils import urlencode
+from searx.utils import match_language
# engine dependent config
categories = None
@@ -27,7 +28,7 @@ category_to_keyword = {'general': 'web',
'social media': 'social'}
# search-url
-url = 'https://api.qwant.com/api/search/{keyword}?count=10&offset={offset}&f=&{query}'
+url = 'https://api.qwant.com/api/search/{keyword}?count=10&offset={offset}&f=&{query}&t={keyword}&uiv=4'
# do search-request
@@ -45,16 +46,8 @@ def request(query, params):
offset=offset)
# add language tag
- if params['language'] == 'no' or params['language'].startswith('no-'):
- params['language'] = params['language'].replace('no', 'nb', 1)
- if params['language'].find('-') < 0:
- # tries to get a country code from language
- for lang in supported_languages:
- lc = lang.split('-')
- if params['language'] == lc[0]:
- params['language'] = lang
- break
- params['url'] += '&locale=' + params['language'].replace('-', '_').lower()
+ language = match_language(params['language'], supported_languages)
+ params['url'] += '&locale=' + language.replace('-', '_').lower()
return params
diff --git a/searx/engines/startpage.py b/searx/engines/startpage.py
index 3e06759..55efdc8 100644
--- a/searx/engines/startpage.py
+++ b/searx/engines/startpage.py
@@ -32,8 +32,9 @@ search_url = base_url + 'do/search'
# specific xpath variables
# ads xpath //div[@id="results"]/div[@id="sponsored"]//div[@class="result"]
# not ads: div[@class="result"] are the direct childs of div[@id="results"]
-results_xpath = '//div[@class="result"]'
+results_xpath = '//li[contains(@class, "search-result") and contains(@class, "search-item")]'
link_xpath = './/h3/a'
+content_xpath = './p[@class="search-item__body"]'
# do search-request
@@ -73,14 +74,10 @@ def response(resp):
if re.match(r"^http(s|)://(www\.)?startpage\.com/do/search\?.*$", url):
continue
- # block ixquick search url's
- if re.match(r"^http(s|)://(www\.)?ixquick\.com/do/search\?.*$", url):
- continue
-
title = extract_text(link)
- if result.xpath('./p[@class="desc clk"]'):
- content = extract_text(result.xpath('./p[@class="desc clk"]'))
+ if result.xpath(content_xpath):
+ content = extract_text(result.xpath(content_xpath))
else:
content = ''
diff --git a/searx/engines/swisscows.py b/searx/engines/swisscows.py
index 45e9d87..ff4df24 100644
--- a/searx/engines/swisscows.py
+++ b/searx/engines/swisscows.py
@@ -14,6 +14,7 @@ from json import loads
import re
from lxml.html import fromstring
from searx.url_utils import unquote, urlencode
+from searx.utils import match_language
# engine dependent config
categories = ['general', 'images']
@@ -35,11 +36,8 @@ regex_img_url_remove_start = re.compile(b'^https?://i\.swisscows\.ch/\?link=')
# do search-request
def request(query, params):
- if params['language'].split('-')[0] == 'no':
- region = 'nb-NO'
- else:
- region = params['language']
- ui_language = params['language'].split('-')[0]
+ region = match_language(params['language'], supported_languages)
+ ui_language = region.split('-')[0]
search_path = search_string.format(
query=urlencode({'query': query, 'uiLanguage': ui_language, 'region': region}),
diff --git a/searx/engines/wikidata.py b/searx/engines/wikidata.py
index 1f31a1f..c315b30 100644
--- a/searx/engines/wikidata.py
+++ b/searx/engines/wikidata.py
@@ -16,6 +16,7 @@ from searx.poolrequests import get
from searx.engines.xpath import extract_text
from searx.engines.wikipedia import _fetch_supported_languages, supported_languages_url
from searx.url_utils import urlencode
+from searx.utils import match_language
from json import loads
from lxml.html import fromstring
@@ -26,7 +27,7 @@ result_count = 1
# urls
wikidata_host = 'https://www.wikidata.org'
url_search = wikidata_host \
- + '/wiki/Special:ItemDisambiguation?{query}'
+ + '/w/index.php?{query}'
wikidata_api = wikidata_host + '/w/api.php'
url_detail = wikidata_api\
@@ -39,7 +40,7 @@ url_map = 'https://www.openstreetmap.org/'\
url_image = 'https://commons.wikimedia.org/wiki/Special:FilePath/{filename}?width=500&height=400'
# xpaths
-wikidata_ids_xpath = '//div/ul[@class="wikibase-disambiguation"]/li/a/@title'
+wikidata_ids_xpath = '//ul[@class="mw-search-results"]/li//a/@href'
title_xpath = '//*[contains(@class,"wikibase-title-label")]'
description_xpath = '//div[contains(@class,"wikibase-entitytermsview-heading-description")]'
property_xpath = '//div[@id="{propertyid}"]'
@@ -53,25 +54,25 @@ value_xpath = './/div[contains(@class,"wikibase-statementview-mainsnak")]'\
+ '/*/div[contains(@class,"wikibase-snakview-value")]'
language_fallback_xpath = '//sup[contains(@class,"wb-language-fallback-indicator")]'
calendar_name_xpath = './/sup[contains(@class,"wb-calendar-name")]'
+media_xpath = value_xpath + '//div[contains(@class,"commons-media-caption")]//a'
def request(query, params):
- language = params['language'].split('-')[0]
-
params['url'] = url_search.format(
- query=urlencode({'label': query, 'language': language}))
+ query=urlencode({'search': query}))
return params
def response(resp):
results = []
html = fromstring(resp.text)
- wikidata_ids = html.xpath(wikidata_ids_xpath)
+ search_results = html.xpath(wikidata_ids_xpath)
- language = resp.search_params['language'].split('-')[0]
+ language = match_language(resp.search_params['language'], supported_languages).split('-')[0]
# TODO: make requests asynchronous to avoid timeout when result_count > 1
- for wikidata_id in wikidata_ids[:result_count]:
+ for search_result in search_results[:result_count]:
+ wikidata_id = search_result.split('/')[-1]
url = url_detail.format(query=urlencode({'page': wikidata_id, 'uselang': language}))
htmlresponse = get(url)
jsonresponse = loads(htmlresponse.text)
@@ -313,7 +314,7 @@ def add_image(result):
for property_id in property_ids:
image = result.xpath(property_xpath.replace('{propertyid}', property_id))
if image:
- image_name = image[0].xpath(value_xpath)
+ image_name = image[0].xpath(media_xpath)
image_src = url_image.replace('{filename}', extract_text(image_name[0]))
return image_src
diff --git a/searx/engines/wikipedia.py b/searx/engines/wikipedia.py
index fe82f51..6cd17e3 100644
--- a/searx/engines/wikipedia.py
+++ b/searx/engines/wikipedia.py
@@ -13,6 +13,7 @@
from json import loads
from lxml.html import fromstring
from searx.url_utils import quote, urlencode
+from searx.utils import match_language
# search-url
base_url = u'https://{language}.wikipedia.org/'
@@ -30,13 +31,7 @@ supported_languages_url = 'https://meta.wikimedia.org/wiki/List_of_Wikipedias'
# set language in base_url
def url_lang(lang):
- lang = lang.split('-')[0]
- if lang not in supported_languages:
- language = 'en'
- else:
- language = lang
-
- return language
+ return match_language(lang, supported_languages).split('-')[0]
# do search-request
diff --git a/searx/engines/www500px.py b/searx/engines/www500px.py
deleted file mode 100644
index 7a2015a..0000000
--- a/searx/engines/www500px.py
+++ /dev/null
@@ -1,73 +0,0 @@
-"""
- 500px (Images)
-
- @website https://500px.com
- @provide-api yes (https://developers.500px.com/)
-
- @using-api no
- @results HTML
- @stable no (HTML can change)
- @parse url, title, thumbnail, img_src, content
-
- @todo rewrite to api
-"""
-
-from json import loads
-from searx.url_utils import urlencode, urljoin
-
-# engine dependent config
-categories = ['images']
-paging = True
-
-# search-url
-base_url = 'https://500px.com'
-search_url = 'https://api.500px.com/v1/photos/search?type=photos'\
- '&{query}'\
- '&image_size%5B%5D=4'\
- '&image_size%5B%5D=20'\
- '&image_size%5B%5D=21'\
- '&image_size%5B%5D=1080'\
- '&image_size%5B%5D=1600'\
- '&image_size%5B%5D=2048'\
- '&include_states=true'\
- '&formats=jpeg%2Clytro'\
- '&include_tags=true'\
- '&exclude_nude=true'\
- '&page={pageno}'\
- '&rpp=50'\
- '&sdk_key=b68e60cff4c929bedea36ca978830c5caca790c3'
-
-
-# do search-request
-def request(query, params):
- params['url'] = search_url.format(pageno=params['pageno'],
- query=urlencode({'term': query}))
-
- return params
-
-
-# get response from search-request
-def response(resp):
- results = []
-
- response_json = loads(resp.text)
-
- # parse results
- for result in response_json['photos']:
- url = urljoin(base_url, result['url'])
- title = result['name']
- # last index is the biggest resolution
- img_src = result['image_url'][-1]
- thumbnail_src = result['image_url'][0]
- content = result['description'] or ''
-
- # append result
- results.append({'url': url,
- 'title': title,
- 'img_src': img_src,
- 'content': content,
- 'thumbnail_src': thumbnail_src,
- 'template': 'images.html'})
-
- # return results
- return results
diff --git a/searx/engines/xpath.py b/searx/engines/xpath.py
index c8c56da..50f98d9 100644
--- a/searx/engines/xpath.py
+++ b/searx/engines/xpath.py
@@ -53,7 +53,7 @@ def extract_url(xpath_results, search_url):
if url.startswith('//'):
# add http or https to this kind of url //example.com/
parsed_search_url = urlparse(search_url)
- url = u'{0}:{1}'.format(parsed_search_url.scheme, url)
+ url = u'{0}:{1}'.format(parsed_search_url.scheme or 'http', url)
elif url.startswith('/'):
# fix relative url to the search engine
url = urljoin(search_url, url)
diff --git a/searx/engines/yahoo.py b/searx/engines/yahoo.py
index 626a398..ba4cb6a 100644
--- a/searx/engines/yahoo.py
+++ b/searx/engines/yahoo.py
@@ -14,6 +14,7 @@
from lxml import html
from searx.engines.xpath import extract_text, extract_url
from searx.url_utils import unquote, urlencode
+from searx.utils import match_language
# engine dependent config
categories = ['general']
@@ -39,6 +40,8 @@ time_range_dict = {'day': ['1d', 'd'],
'week': ['1w', 'w'],
'month': ['1m', 'm']}
+language_aliases = {'zh-CN': 'zh-CHS', 'zh-TW': 'zh-CHT', 'zh-HK': 'zh-CHT'}
+
# remove yahoo-specific tracking-url
def parse_url(url_string):
@@ -70,23 +73,16 @@ def _get_url(query, offset, language, time_range):
lang=language)
-def _get_language(params):
- if params['language'][:2] == 'zh':
- if params['language'] == 'zh' or params['language'] == 'zh-CH':
- return 'szh'
- else:
- return 'tzh'
- else:
- return params['language'].split('-')[0]
-
-
# do search-request
def request(query, params):
if params['time_range'] and params['time_range'] not in time_range_dict:
return params
offset = (params['pageno'] - 1) * 10 + 1
- language = _get_language(params)
+ language = match_language(params['language'], supported_languages, language_aliases)
+ if language not in language_aliases.values():
+ language = language.split('-')[0]
+ language = language.replace('-', '_').lower()
params['url'] = _get_url(query, offset, language, params['time_range'])
@@ -145,7 +141,11 @@ def _fetch_supported_languages(resp):
dom = html.fromstring(resp.text)
options = dom.xpath('//div[@id="yschlang"]/span/label/input')
for option in options:
- code = option.xpath('./@value')[0][5:].replace('_', '-')
+ code_parts = option.xpath('./@value')[0][5:].split('_')
+ if len(code_parts) == 2:
+ code = code_parts[0] + '-' + code_parts[1].upper()
+ else:
+ code = code_parts[0]
supported_languages.append(code)
return supported_languages
diff --git a/searx/engines/yahoo_news.py b/searx/engines/yahoo_news.py
index 69e9aef..b61384d 100644
--- a/searx/engines/yahoo_news.py
+++ b/searx/engines/yahoo_news.py
@@ -13,9 +13,12 @@ import re
from datetime import datetime, timedelta
from lxml import html
from searx.engines.xpath import extract_text, extract_url
-from searx.engines.yahoo import parse_url, _fetch_supported_languages, supported_languages_url
+from searx.engines.yahoo import (
+ parse_url, _fetch_supported_languages, supported_languages_url, language_aliases
+)
from dateutil import parser
from searx.url_utils import urlencode
+from searx.utils import match_language
# engine dependent config
categories = ['news']
@@ -38,7 +41,7 @@ suggestion_xpath = '//div[contains(@class,"VerALSOTRY")]//a'
def request(query, params):
offset = (params['pageno'] - 1) * 10 + 1
- language = params['language'].split('-')[0]
+ language = match_language(params['language'], supported_languages, language_aliases).split('-')[0]
params['url'] = search_url.format(offset=offset,
query=urlencode({'p': query}),
diff --git a/searx/languages.py b/searx/languages.py
index 5fa9527..cab1245 100644
--- a/searx/languages.py
+++ b/searx/languages.py
@@ -5,11 +5,7 @@
language_codes = (
(u"ar-SA", u"العربية", u"", u"Arabic"),
(u"bg-BG", u"Български", u"", u"Bulgarian"),
- (u"ca", u"Català", u"", u"Catalan"),
- (u"ca-AD", u"Català", u"Andorra", u"Catalan"),
- (u"ca-CT", u"Català", u"", u"Catalan"),
- (u"ca-ES", u"Català", u"Espanya", u"Catalan"),
- (u"ca-FR", u"Català", u"França", u"Catalan"),
+ (u"ca-ES", u"Català", u"", u"Catalan"),
(u"cs-CZ", u"Čeština", u"", u"Czech"),
(u"da-DK", u"Dansk", u"", u"Danish"),
(u"de", u"Deutsch", u"", u"German"),
@@ -21,55 +17,51 @@ language_codes = (
(u"en-AU", u"English", u"Australia", u"English"),
(u"en-CA", u"English", u"Canada", u"English"),
(u"en-GB", u"English", u"United Kingdom", u"English"),
- (u"en-ID", u"English", u"Indonesia", u"English"),
- (u"en-IE", u"English", u"Ireland", u"English"),
(u"en-IN", u"English", u"India", u"English"),
(u"en-MY", u"English", u"Malaysia", u"English"),
- (u"en-NZ", u"English", u"New Zealand", u"English"),
- (u"en-PH", u"English", u"Philippines", u"English"),
- (u"en-SG", u"English", u"Singapore", u"English"),
(u"en-US", u"English", u"United States", u"English"),
- (u"en-ZA", u"English", u"South Africa", u"English"),
(u"es", u"Español", u"", u"Spanish"),
- (u"es-AD", u"Español", u"Andorra", u"Spanish"),
(u"es-AR", u"Español", u"Argentina", u"Spanish"),
- (u"es-CL", u"Español", u"Chile", u"Spanish"),
- (u"es-CO", u"Español", u"Colombia", u"Spanish"),
(u"es-ES", u"Español", u"España", u"Spanish"),
(u"es-MX", u"Español", u"México", u"Spanish"),
- (u"es-PE", u"Español", u"Perú", u"Spanish"),
- (u"es-US", u"Español", u"Estados Unidos", u"Spanish"),
(u"et-EE", u"Eesti", u"", u"Estonian"),
+ (u"fa-IR", u"فارسی", u"", u"Persian"),
(u"fi-FI", u"Suomi", u"", u"Finnish"),
(u"fr", u"Français", u"", u"French"),
- (u"fr-AD", u"Français", u"Andorre", u"French"),
(u"fr-BE", u"Français", u"Belgique", u"French"),
(u"fr-CA", u"Français", u"Canada", u"French"),
(u"fr-CH", u"Français", u"Suisse", u"French"),
(u"fr-FR", u"Français", u"France", u"French"),
(u"he-IL", u"עברית", u"", u"Hebrew"),
+ (u"hr-HR", u"Hrvatski", u"", u"Croatian"),
(u"hu-HU", u"Magyar", u"", u"Hungarian"),
- (u"it", u"Italiano", u"", u"Italian"),
- (u"it-CH", u"Italiano", u"Svizzera", u"Italian"),
- (u"it-IT", u"Italiano", u"Italia", u"Italian"),
+ (u"id-ID", u"Indonesia", u"", u"Indonesian"),
+ (u"is-IS", u"Íslenska", u"", u"Icelandic"),
+ (u"it-IT", u"Italiano", u"", u"Italian"),
(u"ja-JP", u"日本語", u"", u"Japanese"),
(u"ko-KR", u"한국어", u"", u"Korean"),
+ (u"lt-LT", u"Lietuvių", u"", u"Lithuanian"),
+ (u"lv-LV", u"Latviešu", u"", u"Latvian"),
+ (u"ms-MY", u"Bahasa Melayu", u"", u"Malay"),
+ (u"nb-NO", u"Norsk Bokmål", u"", u"Norwegian Bokmål"),
(u"nl", u"Nederlands", u"", u"Dutch"),
(u"nl-BE", u"Nederlands", u"België", u"Dutch"),
(u"nl-NL", u"Nederlands", u"Nederland", u"Dutch"),
- (u"no-NO", u"Norsk", u"", u"Norwegian"),
(u"pl-PL", u"Polski", u"", u"Polish"),
(u"pt", u"Português", u"", u"Portuguese"),
- (u"pt-AD", u"Português", u"Andorra", u"Portuguese"),
(u"pt-BR", u"Português", u"Brasil", u"Portuguese"),
(u"pt-PT", u"Português", u"Portugal", u"Portuguese"),
(u"ro-RO", u"Română", u"", u"Romanian"),
(u"ru-RU", u"Русский", u"", u"Russian"),
+ (u"sk-SK", u"Slovenčina", u"", u"Slovak"),
+ (u"sl-SI", u"Slovenščina", u"", u"Slovenian"),
+ (u"sr-RS", u"Српски", u"", u"Serbian"),
(u"sv-SE", u"Svenska", u"", u"Swedish"),
(u"th-TH", u"ไทย", u"", u"Thai"),
(u"tr-TR", u"Türkçe", u"", u"Turkish"),
+ (u"uk-UA", u"Українська", u"", u"Ukrainian"),
+ (u"vi-VN", u"Tiếng Việt", u"", u"Vietnamese"),
(u"zh", u"中文", u"", u"Chinese"),
(u"zh-CN", u"中文", u"中国", u"Chinese"),
- (u"zh-HK", u"中文", u"香港", u"Chinese"),
- (u"zh-TW", u"中文", u"台湾", u"Chinese")
+ (u"zh-TW", u"中文", u"台灣", u"Chinese")
)
diff --git a/searx/plugins/oa_doi_rewrite.py b/searx/plugins/oa_doi_rewrite.py
index b62ef0b..d494249 100644
--- a/searx/plugins/oa_doi_rewrite.py
+++ b/searx/plugins/oa_doi_rewrite.py
@@ -9,7 +9,7 @@ regex = re.compile(r'10\.\d{4,9}/[^\s]+')
name = gettext('Open Access DOI rewrite')
description = gettext('Avoid paywalls by redirecting to open-access versions of publications when available')
default_on = False
-preference_section = 'privacy'
+preference_section = 'general'
doi_resolvers = settings['doi_resolvers']
@@ -30,7 +30,8 @@ def get_doi_resolver(args, preference_doi_resolver):
doi_resolver = args.get('doi_resolver', preference_doi_resolver)[0]
if doi_resolver not in doi_resolvers:
doi_resolvers = settings['default_doi_resolver']
- return doi_resolver
+ doi_resolver_url = doi_resolvers[doi_resolver]
+ return doi_resolver_url
def on_result(request, search, result):
diff --git a/searx/preferences.py b/searx/preferences.py
index 70ccbb7..ed2cc40 100644
--- a/searx/preferences.py
+++ b/searx/preferences.py
@@ -115,10 +115,6 @@ class SearchLanguageSetting(EnumStringSetting):
pass
elif lang in self.choices:
data = lang
- elif data == 'nb-NO':
- data = 'no-NO'
- elif data == 'ar-XA':
- data = 'ar-SA'
else:
data = self.value
self.value = data
@@ -268,6 +264,9 @@ class Preferences(object):
'False': False,
'True': True}),
'doi_resolver': MultipleChoiceSetting(['oadoi.org'], choices=DOI_RESOLVERS),
+ 'oscar-style': EnumStringSetting(
+ settings['ui'].get('theme_args', {}).get('oscar_style', 'logicodev'),
+ choices=['', 'logicodev', 'logicodev-dark', 'pointhi']),
}
self.engines = EnginesSetting('engines', choices=engines)
diff --git a/searx/query.py b/searx/query.py
index 6e5f2e8..0b5143d 100644
--- a/searx/query.py
+++ b/searx/query.py
@@ -96,9 +96,13 @@ class RawTextQuery(object):
break
# user may set a valid, yet not selectable language
- if not self.languages and VALID_LANGUAGE_CODE.match(lang):
- self.languages.append(lang)
- parse_next = True
+ if VALID_LANGUAGE_CODE.match(lang):
+ lang_parts = lang.split('-')
+ if len(lang_parts) > 1:
+ lang = lang_parts[0].lower() + '-' + lang_parts[1].upper()
+ if lang not in self.languages:
+ self.languages.append(lang)
+ parse_next = True
# this force a engine or category
if query_part[0] == '!' or query_part[0] == '?':
@@ -107,14 +111,21 @@ class RawTextQuery(object):
# check if prefix is equal with engine shortcut
if prefix in engine_shortcuts:
parse_next = True
- self.engines.append({'category': 'none',
- 'name': engine_shortcuts[prefix]})
+ engine_name = engine_shortcuts[prefix]
+ if engine_name in engines:
+ for engine_category in engines[engine_name].categories:
+ self.engines.append({'category': engine_category,
+ 'name': engine_name,
+ 'from_bang': True})
# check if prefix is equal with engine name
elif prefix in engines:
parse_next = True
- self.engines.append({'category': 'none',
- 'name': prefix})
+ if prefix in engines:
+ for engine_category in engines[prefix].categories:
+ self.engines.append({'category': engine_category,
+ 'name': prefix,
+ 'from_bang': True})
# check if prefix is equal with categorie name
elif prefix in categories:
diff --git a/searx/search.py b/searx/search.py
index b523c27..950a49f 100644
--- a/searx/search.py
+++ b/searx/search.py
@@ -147,7 +147,8 @@ def search_one_request_safe(engine_name, query, request_params, result_container
if requests_exception:
# update continuous_errors / suspend_end_time
engine.continuous_errors += 1
- engine.suspend_end_time = time() + min(60, engine.continuous_errors)
+ engine.suspend_end_time = time() + min(settings['search']['max_ban_time_on_fail'],
+ engine.continuous_errors * settings['search']['ban_time_on_fail'])
else:
# no HTTP error (perhaps an engine error)
# anyway, reset the suspend variables
@@ -258,8 +259,13 @@ def get_search_query_from_webapp(preferences, form):
# if engines are calculated from query,
# set categories by using that informations
if query_engines and raw_text_query.specific:
- query_categories = list(set(engine['category']
- for engine in query_engines))
+ additional_categories = set()
+ for engine in query_engines:
+ if 'from_bang' in engine and engine['from_bang']:
+ additional_categories.add('none')
+ else:
+ additional_categories.add(engine['category'])
+ query_categories = list(additional_categories)
# otherwise, using defined categories to
# calculate which engines should be used
diff --git a/searx/settings.yml b/searx/settings.yml
index 5392eb1..00b001b 100644
--- a/searx/settings.yml
+++ b/searx/settings.yml
@@ -6,6 +6,8 @@ search:
safe_search : 0 # Filter results. 0: None, 1: Moderate, 2: Strict
autocomplete : "" # Existing autocomplete backends: "dbpedia", "duckduckgo", "google", "startpage", "wikipedia" - leave blank to turn it off by default
language : "en-US"
+ ban_time_on_fail : 5 # ban time in seconds after engine errors
+ max_ban_time_on_fail : 120 # max ban time in seconds after engine errors
server:
port : 8888
@@ -16,10 +18,12 @@ server:
http_protocol_version : "1.0" # 1.0 and 1.1 are supported
ui:
- static_path : "/usr/share/python3-searx/static" # Custom static path - leave it blank if you didn't change
- templates_path : "/usr/share/python3-searx/templates" # Custom templates path - leave it blank if you didn't change
+ static_path : "" # Custom static path - leave it blank if you didn't change
+ templates_path : "" # Custom templates path - leave it blank if you didn't change
default_theme : oscar # ui theme
default_locale : "" # Default interface locale - leave blank to detect from browser information or use codes from the 'locales' config section
+ theme_args :
+ oscar_style : logicodev # default style of oscar
# searx supports result proxification using an external service: https://github.com/asciimoo/morty
# uncomment below section if you have running morty proxy
@@ -174,6 +178,7 @@ engines:
- name : wikidata
engine : wikidata
shortcut : wd
+ timeout : 3.0
weight : 2
- name : duckduckgo
@@ -191,10 +196,9 @@ engines:
engine : xpath
paging : True
search_url : http://etymonline.com/?search={query}&p={pageno}
- url_xpath : //dt/a[1]/@href
- title_xpath : //dt
- content_xpath : //dd
- suggestion_xpath : //a[@class="crossreference"]
+ url_xpath : //a[contains(@class, "word--")]/@href
+ title_xpath : //p[contains(@class, "word__name--")]/text()
+ content_xpath : //section[contains(@class, "word__defination")]/object
first_page_num : 0
shortcut : et
disabled : True
@@ -204,10 +208,6 @@ engines:
shortcut : fa
disabled : True
- - name : 500px
- engine : www500px
- shortcut : px
-
- name : 1x
engine : www1x
shortcut : 1x
@@ -255,6 +255,10 @@ engines:
timeout : 3.0
disabled: True
+ - name : gentoo
+ engine : gentoo
+ shortcut : ge
+
- name : gitlab
engine : json_engine
paging : True
@@ -292,7 +296,7 @@ engines:
engine : xpath
paging : True
search_url : https://scholar.google.com/scholar?start={pageno}&q={query}&hl=en&as_sdt=0,5&as_vis=1
- results_xpath : //div[@class="gs_r"]/div[@class="gs_ri"]
+ results_xpath : //div[contains(@class, "gs_r")]/div[@class="gs_ri"]
url_xpath : .//h3/a/@href
title_xpath : .//h3/a
content_xpath : .//div[@class="gs_rs"]
@@ -414,6 +418,12 @@ engines:
engine : nyaa
shortcut : nt
disabled : True
+
+ - name : acgsou
+ engine : acgsou
+ shortcut : acg
+ disabled : True
+ timeout: 5.0
- name : openairedatasets
engine : json_engine
@@ -569,14 +579,6 @@ engines:
timeout : 6.0
disabled : True
- - name : ixquick
- engine : startpage
- base_url : 'https://www.ixquick.eu/'
- search_url : 'https://www.ixquick.eu/do/search'
- shortcut : iq
- timeout : 6.0
- disabled : True
-
- name : swisscows
engine : swisscows
shortcut : sw
@@ -690,6 +692,38 @@ engines:
shortcut : 1337x
disabled : True
+ - name : Duden
+ engine : duden
+ shortcut : du
+ disabled : True
+
+ - name : seznam
+ shortcut: szn
+ engine: xpath
+ paging : True
+ search_url : https://search.seznam.cz/?q={query}&count=10&from={pageno}
+ results_xpath: //div[@class="Page-content"]//div[@class="Result "]
+ url_xpath : ./h3/a/@href
+ title_xpath : ./h3
+ content_xpath : .//p[@class="Result-description"]
+ first_page_num : 0
+ page_size : 10
+ disabled : True
+
+ - name : mojeek
+ shortcut: mjk
+ engine: xpath
+ paging : True
+ search_url : https://www.mojeek.com/search?q={query}&s={pageno}
+ results_xpath: /html/body//div[@class="results"]/ul[@class="results-standard"]/li
+ url_xpath : ./h2/a/@href
+ title_xpath : ./h2
+ content_xpath : ./p[@class="s"]
+ suggestion_xpath : /html/body//div[@class="top-info"]/p[@class="top-info spell"]/a
+ first_page_num : 1
+ page_size : 10
+ disabled : True
+
# - name : yacy
# engine : yacy
# shortcut : ya
@@ -708,21 +742,28 @@ locales:
en : English
ar : العَرَبِيَّة (Arabic)
bg : Български (Bulgarian)
+ ca : Català (Catalan)
cs : Čeština (Czech)
+ cy : Cymraeg (Welsh)
da : Dansk (Danish)
de : Deutsch (German)
el_GR : Ελληνικά (Greek_Greece)
eo : Esperanto (Esperanto)
es : Español (Spanish)
+ eu : Euskara (Basque)
+ fa_IR : (fārsī) فارسى (Persian)
fi : Suomi (Finnish)
fil : Wikang Filipino (Filipino)
fr : Français (French)
+ gl : Galego (Galician)
he : עברית (Hebrew)
hr : Hrvatski (Croatian)
hu : Magyar (Hungarian)
it : Italiano (Italian)
ja : 日本語 (Japanese)
nl : Nederlands (Dutch)
+ nl_BE : Vlaams (Dutch_Belgium)
+ pl : Polski (Polish)
pt : Português (Portuguese)
pt_BR : Português (Portuguese_Brazil)
ro : Română (Romanian)
@@ -731,8 +772,10 @@ locales:
sl : Slovenski (Slovene)
sr : српски (Serbian)
sv : Svenska (Swedish)
+ te : తెలుగు (telugu)
tr : Türkçe (Turkish)
uk : українська мова (Ukrainian)
+ vi : tiếng việt (㗂越)
zh : 中文 (Chinese)
zh_TW : 國語 (Taiwanese Mandarin)
@@ -740,5 +783,6 @@ doi_resolvers :
oadoi.org : 'https://oadoi.org/'
doi.org : 'https://doi.org/'
doai.io : 'http://doai.io/'
+ sci-hub.tw : 'http://sci-hub.tw/'
default_doi_resolver : 'oadoi.org'
diff --git a/searx/static/plugins/css/infinite_scroll.css b/searx/static/plugins/css/infinite_scroll.css
index 7e0ee20..07b9f6d 100644
--- a/searx/static/plugins/css/infinite_scroll.css
+++ b/searx/static/plugins/css/infinite_scroll.css
@@ -14,3 +14,6 @@
border-radius: 50% !important;
margin: 0 auto;
}
+#pagination button {
+ visibility: hidden;
+}
diff --git a/searx/static/plugins/js/vim_hotkeys.js b/searx/static/plugins/js/vim_hotkeys.js
index 61500d8..13bd070 100644
--- a/searx/static/plugins/js/vim_hotkeys.js
+++ b/searx/static/plugins/js/vim_hotkeys.js
@@ -104,7 +104,7 @@ $(document).ready(function() {
}
};
- $(document).keyup(function(e) {
+ $(document).keydown(function(e) {
// check for modifiers so we don't break browser's hotkeys
if (vimKeys.hasOwnProperty(e.keyCode)
&& !e.ctrlKey
@@ -118,6 +118,7 @@ $(document).ready(function() {
}
} else {
if (e.target === document.body) {
+ e.preventDefault();
vimKeys[e.keyCode].fun();
}
}
diff --git a/searx/static/themes/oscar/gruntfile.js b/searx/static/themes/oscar/gruntfile.js
index b86b883..5913994 100644
--- a/searx/static/themes/oscar/gruntfile.js
+++ b/searx/static/themes/oscar/gruntfile.js
@@ -81,9 +81,16 @@ module.exports = function(grunt) {
}
});
- grunt.loadNpmTasks('grunt-contrib-uglify', '/usr/lib/nodejs');
- grunt.loadNpmTasks('grunt-contrib-concat', '/usr/lib/nodejs');
+ grunt.loadNpmTasks('grunt-contrib-uglify');
+ grunt.loadNpmTasks('grunt-contrib-jshint');
+ grunt.loadNpmTasks('grunt-contrib-watch');
+ grunt.loadNpmTasks('grunt-contrib-concat');
+ grunt.loadNpmTasks('grunt-contrib-less');
- grunt.registerTask('default', ['concat', 'uglify']);
+ grunt.registerTask('test', ['jshint']);
+
+ grunt.registerTask('default', ['jshint', 'concat', 'uglify', 'less']);
+
+ grunt.registerTask('styles', ['less']);
};
diff --git a/searx/static/themes/oscar/img/icons/README.md b/searx/static/themes/oscar/img/icons/README.md
deleted file mode 100644
index 0e3ad1c..0000000
--- a/searx/static/themes/oscar/img/icons/README.md
+++ /dev/null
@@ -1,2 +0,0 @@
-Source: http://www.iconspedia.com/pack/flat-gradient-social-icons-4384/
-License: Free for non commercial use.
diff --git a/searx/static/themes/oscar/less/logicodev/search.less b/searx/static/themes/oscar/less/logicodev/search.less
index fa1e0e8..d65e305 100644
--- a/searx/static/themes/oscar/less/logicodev/search.less
+++ b/searx/static/themes/oscar/less/logicodev/search.less
@@ -18,6 +18,7 @@
padding-bottom: 0.4rem;
padding-top: 0.4rem;
text-align: center;
+ min-width: 50px;
}
label:last-child, .input-group-addon:last-child {
border-right: @mild-gray 1px solid;
diff --git a/searx/static/themes/oscar/less/pointhi/search.less b/searx/static/themes/oscar/less/pointhi/search.less
index cea6799..5ff7336 100644
--- a/searx/static/themes/oscar/less/pointhi/search.less
+++ b/searx/static/themes/oscar/less/pointhi/search.less
@@ -18,6 +18,7 @@
padding-bottom: 0.8rem;
padding-top: 0.8rem;
text-align: center;
+ min-width: 50px;
}
label:last-child, .input-group-addon:last-child {
diff --git a/searx/static/themes/simple/gruntfile.js b/searx/static/themes/simple/gruntfile.js
index 1d53319..a0f9fd7 100644
--- a/searx/static/themes/simple/gruntfile.js
+++ b/searx/static/themes/simple/gruntfile.js
@@ -25,6 +25,10 @@ module.exports = function(grunt) {
output: {
comments: 'some'
},
+ ie8: false,
+ warnings: true,
+ compress: false,
+ mangle: true,
sourceMap: true
},
dist: {
@@ -60,6 +64,12 @@ module.exports = function(grunt) {
production: {
options: {
paths: ["less"],
+ plugins: [
+ new (require('less-plugin-clean-css'))({
+ advanced: true,
+ compatibility: '*'
+ })
+ ],
banner: '/*! searx | <%= grunt.template.today("dd-mm-yyyy") %> | https://github.com/asciimoo/searx */\n'
},
files: {
@@ -93,7 +103,8 @@ module.exports = function(grunt) {
'node_modules/ionicons-npm/src/music-note.svg',
'node_modules/ionicons-npm/src/ion-close-round.svg',
'node_modules/ionicons-npm/src/android-more-vertical.svg',
- 'magnet.svg'
+ 'magnet.svg',
+ 'node_modules/ionicons-npm/src/android-close.svg',
],
dest: 'fonts',
destLess: 'less',
@@ -133,8 +144,15 @@ module.exports = function(grunt) {
}
});
- grunt.loadNpmTasks('grunt-contrib-uglify', '/usr/lib/nodejs');
- grunt.loadNpmTasks('grunt-contrib-concat', '/usr/lib/nodejs');
+ grunt.loadNpmTasks('grunt-contrib-watch');
+ grunt.loadNpmTasks('grunt-contrib-uglify');
+ grunt.loadNpmTasks('grunt-contrib-jshint');
+ grunt.loadNpmTasks('grunt-contrib-concat');
+ grunt.loadNpmTasks('grunt-contrib-less');
+ grunt.loadNpmTasks('grunt-contrib-cssmin');
+ grunt.loadNpmTasks('grunt-webfont');
- grunt.registerTask('default', ['concat', 'uglify']);
+ grunt.registerTask('test', ['jshint']);
+
+ grunt.registerTask('default', ['jshint', 'concat', 'uglify', 'less:development', 'less:production']);
};
diff --git a/searx/static/themes/simple/img/loader.gif b/searx/static/themes/simple/img/loader.gif
deleted file mode 100644
index 419cdee..0000000
--- a/searx/static/themes/simple/img/loader.gif
+++ /dev/null
Binary files differ
diff --git a/searx/static/themes/simple/js/searx_src/00_searx_toolkit.js b/searx/static/themes/simple/js/searx_src/00_searx_toolkit.js
index fca7e16..fb52442 100644
--- a/searx/static/themes/simple/js/searx_src/00_searx_toolkit.js
+++ b/searx/static/themes/simple/js/searx_src/00_searx_toolkit.js
@@ -147,9 +147,18 @@
}
};
+ searx.insertBefore = function (newNode, referenceNode) {
+ element.parentNode.insertBefore(newNode, referenceNode);
+ };
+
+ searx.insertAfter = function(newNode, referenceNode) {
+ referenceNode.parentNode.insertBefore(newNode, referenceNode.nextSibling);
+ };
+
searx.on('.close', 'click', function(e) {
var el = e.target || e.srcElement;
- this.parentNode.style.display="None";
+ this.parentNode.classList.add('invisible');
});
+
return searx;
})(window, document, window.searx);
diff --git a/searx/static/themes/simple/js/searx_src/autocomplete.js b/searx/static/themes/simple/js/searx_src/autocomplete.js
index 4bbe017..b95fbcf 100644
--- a/searx/static/themes/simple/js/searx_src/autocomplete.js
+++ b/searx/static/themes/simple/js/searx_src/autocomplete.js
@@ -1,51 +1,4 @@
-(function(f){
- if(typeof exports=== "object" && typeof module !== "undefined") {
- module.exports = f()
- } else if(typeof define === "function" && define.amd) {
- define([], f)
- }else{
- var g;
- if(typeof window !== "undefined") {
- g = window
- } else if(typeof global !== "undefined") {
- g = global
- } else if(typeof self !== "undefined") {
- g = self
- } else {
- g = this
- }
- g.AutoComplete = f()
- }
-})(function(){
- var define, module, exports;
- return (function e(t, n, r){
- function s(o, u){
- if(!n[o]){
- if(!t[o]){
- var a = typeof require == "function" && require;
- if(!u && a)
- return a(o, !0);
- if(i)
- return i(o, !0);
- var f = new Error("Cannot find module '" + o + "'");
- throw f.code = "MODULE_NOT_FOUND", f
- }
- var l = n[o] = {
- exports:{}
- };
- t[o][0].call(l.exports,function(e) {
- var n = t[o][1][e];
- return s(n?n:e)
- }, l, l.exports, e, t, n, r)
- }
- return n[o].exports
- }
- var i = typeof require == "function" && require;
- for(var o = 0; o < r.length; o++)
- s(r[o]);
- return s
- })({
- 1:[function(require, module, exports){
+(function(f){if(typeof exports==="object"&&typeof module!=="undefined"){module.exports=f()}else if(typeof define==="function"&&define.amd){define([],f)}else{var g;if(typeof window!=="undefined"){g=window}else if(typeof global!=="undefined"){g=global}else if(typeof self!=="undefined"){g=self}else{g=this}g.AutoComplete = f()}})(function(){var define,module,exports;return (function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
/*
* @license MIT
*
diff --git a/searx/static/themes/simple/js/searx_src/searx_keyboard.js b/searx/static/themes/simple/js/searx_src/searx_keyboard.js
index 6365b52..657d9ec 100644
--- a/searx/static/themes/simple/js/searx_src/searx_keyboard.js
+++ b/searx/static/themes/simple/js/searx_src/searx_keyboard.js
@@ -116,7 +116,7 @@ searx.ready(function() {
}
};
- searx.on(document, "keyup", function(e) {
+ searx.on(document, "keydown", function(e) {
// check for modifiers so we don't break browser's hotkeys
if (vimKeys.hasOwnProperty(e.keyCode) && !e.ctrlKey && !e.altKey && !e.shiftKey && !e.metaKey) {
var tagName = e.target.tagName.toLowerCase();
@@ -126,6 +126,7 @@ searx.ready(function() {
}
} else {
if (e.target === document.body || tagName === 'a' || tagName === 'button') {
+ e.preventDefault();
vimKeys[e.keyCode].fun();
}
}
@@ -290,13 +291,7 @@ searx.ready(function() {
};
}
- function toggleHelp() {
- var helpPanel = document.querySelector('#vim-hotkeys-help');
- if (helpPanel.length) {
- helpPanel.classList.toggle('hidden');
- return;
- }
-
+ function initHelpContent(divElement) {
var categories = {};
for (var k in vimKeys) {
@@ -313,14 +308,9 @@ searx.ready(function() {
return;
}
- var html = '<div id="vim-hotkeys-help" class="well vim-hotkeys-help">';
- html += '<div class="container-fluid">';
-
- html += '<div class="row">';
- html += '<div class="col-sm-12">';
- html += '<h3>How to navigate searx with Vim-like hotkeys</h3>';
- html += '</div>'; // col-sm-12
- html += '</div>'; // row
+ var html = '<a href="#" class="close" aria-label="close" title="close">×</a>';
+ html += '<h3>How to navigate searx with Vim-like hotkeys</h3>';
+ html += '<table>';
for (var i = 0; i < sorted.length; i++) {
var cat = categories[sorted[i]];
@@ -329,13 +319,11 @@ searx.ready(function() {
var first = i % 2 === 0;
if (first) {
- html += '<div class="row dflex">';
+ html += '<tr>';
}
- html += '<div class="col-sm-' + (first && lastCategory ? 12 : 6) + ' dflex">';
+ html += '<td>';
- html += '<div class="panel panel-default iflex">';
- html += '<div class="panel-heading">' + cat[0].cat + '</div>';
- html += '<div class="panel-body">';
+ html += '<h4>' + cat[0].cat + '</h4>';
html += '<ul class="list-unstyled">';
for (var cj in cat) {
@@ -343,18 +331,36 @@ searx.ready(function() {
}
html += '</ul>';
- html += '</div>'; // panel-body
- html += '</div>'; // panel
- html += '</div>'; // col-sm-*
+ html += '</td>'; // col-sm-*
if (!first || lastCategory) {
- html += '</div>'; // row
+ html += '</tr>'; // row
}
}
- html += '</div>'; // container-fluid
- html += '</div>'; // vim-hotkeys-help
+ html += '</table>';
+
+ divElement.innerHTML = html;
+ }
+
+ function toggleHelp() {
+ var helpPanel = document.querySelector('#vim-hotkeys-help');
+ console.log(helpPanel);
+ if (helpPanel === undefined || helpPanel === null) {
+ // first call
+ helpPanel = document.createElement('div');
+ helpPanel.id = 'vim-hotkeys-help';
+ helpPanel.className='dialog-modal';
+ helpPanel.style='width: 40%';
+ initHelpContent(helpPanel);
+ var body = document.getElementsByTagName('body')[0];
+ body.appendChild(helpPanel);
+ } else {
+ // togggle hidden
+ helpPanel.classList.toggle('invisible');
+ return;
+ }
- $('body').append(html);
}
+
});
diff --git a/searx/static/themes/simple/js/searx_src/searx_mapresult.js b/searx/static/themes/simple/js/searx_src/searx_mapresult.js
index 823f648..869d07d 100644
--- a/searx/static/themes/simple/js/searx_src/searx_mapresult.js
+++ b/searx/static/themes/simple/js/searx_src/searx_mapresult.js
@@ -90,13 +90,14 @@
newHtml += "</td></tr>";
}
}
- result_table_loadicon.classList.add('invisible');
+ result_table_loadicon.parentNode.removeChild(result_table_loadicon);
result_table.classList.remove('invisible');
result_table.querySelector("tbody").innerHTML = newHtml;
}
})
.catch(function() {
- result_table_loadicon.innerHTML = result_table_loadicon.innerHTML + "<p class=\"text-muted\">could not load data!</p>";
+ result_table_loadicon.classList.remove('invisible');
+ result_table_loadicon.innerHTML = "could not load data!";
});
}
}
diff --git a/searx/static/themes/simple/js/searx_src/searx_search.js b/searx/static/themes/simple/js/searx_src/searx_search.js
index 1b93f90..964be21 100644
--- a/searx/static/themes/simple/js/searx_src/searx_search.js
+++ b/searx/static/themes/simple/js/searx_src/searx_search.js
@@ -33,6 +33,26 @@
}
}
+ function createClearButton(qinput) {
+ var cs = document.getElementById('clear_search');
+ var updateClearButton = function() {
+ if (qinput.value.length === 0) {
+ cs.classList.add("empty");
+ } else {
+ cs.classList.remove("empty");
+ }
+ };
+
+ // update status, event listener
+ updateClearButton();
+ cs.addEventListener('click', function() {
+ qinput.value='';
+ qinput.focus();
+ updateClearButton();
+ });
+ qinput.addEventListener('keyup', updateClearButton, false);
+ }
+
searx.ready(function() {
qinput = d.getElementById(qinput_id);
@@ -46,6 +66,9 @@
}
if (qinput !== null) {
+ // clear button
+ createClearButton(qinput);
+
// autocompleter
if (searx.autocompleter) {
searx.autocomplete = AutoComplete.call(w, {
diff --git a/searx/static/themes/simple/less/mixins.less b/searx/static/themes/simple/less/mixins.less
index 097ab49..b3aa4e1 100644
--- a/searx/static/themes/simple/less/mixins.less
+++ b/searx/static/themes/simple/less/mixins.less
@@ -30,7 +30,7 @@
.select-all-on-focus() {
-webkit-user-select: all;
-moz-user-select: all;
- -ms-user-select: all;
+ -ms-user-select: element;
user-select: all;
}
diff --git a/searx/static/themes/simple/less/normalize.less b/searx/static/themes/simple/less/normalize.less
index fa4e73d..47b010e 100644
--- a/searx/static/themes/simple/less/normalize.less
+++ b/searx/static/themes/simple/less/normalize.less
@@ -1,17 +1,15 @@
-/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
+/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */
/* Document
========================================================================== */
/**
* 1. Correct the line height in all browsers.
- * 2. Prevent adjustments of font size after orientation changes in
- * IE on Windows Phone and in iOS.
+ * 2. Prevent adjustments of font size after orientation changes in iOS.
*/
html {
line-height: 1.15; /* 1 */
- -ms-text-size-adjust: 100%; /* 2 */
-webkit-text-size-adjust: 100%; /* 2 */
}
@@ -19,7 +17,7 @@ html {
========================================================================== */
/**
- * Remove the margin in all browsers (opinionated).
+ * Remove the margin in all browsers.
*/
body {
@@ -27,19 +25,6 @@ body {
}
/**
- * Add the correct display in IE 9-.
- */
-
-article,
-aside,
-footer,
-header,
-nav,
-section {
- display: block;
-}
-
-/**
* Correct the font size and margin on `h1` elements within `section` and
* `article` contexts in Chrome, Firefox, and Safari.
*/
@@ -53,25 +38,6 @@ h1 {
========================================================================== */
/**
- * Add the correct display in IE 9-.
- * 1. Add the correct display in IE.
- */
-
-figcaption,
-figure,
-main { /* 1 */
- display: block;
-}
-
-/**
- * Add the correct margin in IE 8.
- */
-
-figure {
- margin: 1em 40px;
-}
-
-/**
* 1. Add the correct box sizing in Firefox.
* 2. Show the overflow in Edge and IE.
*/
@@ -96,17 +62,15 @@ pre {
========================================================================== */
/**
- * 1. Remove the gray background on active links in IE 10.
- * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
+ * Remove the gray background on active links in IE 10.
*/
a {
- background-color: transparent; /* 1 */
- -webkit-text-decoration-skip: objects; /* 2 */
+ background-color: transparent;
}
/**
- * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
+ * 1. Remove the bottom border in Chrome 57-
* 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
*/
@@ -117,15 +81,6 @@ abbr[title] {
}
/**
- * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
- */
-
-b,
-strong {
- font-weight: inherit;
-}
-
-/**
* Add the correct font weight in Chrome, Edge, and Safari.
*/
@@ -147,23 +102,6 @@ samp {
}
/**
- * Add the correct font style in Android 4.3-.
- */
-
-dfn {
- font-style: italic;
-}
-
-/**
- * Add the correct background and color in IE 9-.
- */
-
-mark {
- background-color: #ff0;
- color: #000;
-}
-
-/**
* Add the correct font size in all browsers.
*/
@@ -196,44 +134,18 @@ sup {
========================================================================== */
/**
- * Add the correct display in IE 9-.
- */
-
-audio,
-video {
- display: inline-block;
-}
-
-/**
- * Add the correct display in iOS 4-7.
- */
-
-audio:not([controls]) {
- display: none;
- height: 0;
-}
-
-/**
- * Remove the border on images inside links in IE 10-.
+ * Remove the border on images inside links in IE 10.
*/
img {
border-style: none;
}
-/**
- * Hide the overflow in IE.
- */
-
-svg:not(:root) {
- overflow: hidden;
-}
-
/* Forms
========================================================================== */
/**
- * 1. Change the font styles in all browsers (opinionated).
+ * 1. Change the font styles in all browsers.
* 2. Remove the margin in Firefox and Safari.
*/
@@ -242,7 +154,7 @@ input,
optgroup,
select,
textarea {
- font-family: sans-serif; /* 1 */
+ font-family: inherit; /* 1 */
font-size: 100%; /* 1 */
line-height: 1.15; /* 1 */
margin: 0; /* 2 */
@@ -269,16 +181,14 @@ select { /* 1 */
}
/**
- * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
- * controls in Android 4.
- * 2. Correct the inability to style clickable types in iOS and Safari.
+ * Correct the inability to style clickable types in iOS and Safari.
*/
button,
-html [type="button"], /* 1 */
+[type="button"],
[type="reset"],
[type="submit"] {
- -webkit-appearance: button; /* 2 */
+ -webkit-appearance: button;
}
/**
@@ -329,17 +239,15 @@ legend {
}
/**
- * 1. Add the correct display in IE 9-.
- * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
+ * Add the correct vertical alignment in Chrome, Firefox, and Opera.
*/
progress {
- display: inline-block; /* 1 */
- vertical-align: baseline; /* 2 */
+ vertical-align: baseline;
}
/**
- * Remove the default vertical scrollbar in IE.
+ * Remove the default vertical scrollbar in IE 10+.
*/
textarea {
@@ -347,8 +255,8 @@ textarea {
}
/**
- * 1. Add the correct box sizing in IE 10-.
- * 2. Remove the padding in IE 10-.
+ * 1. Add the correct box sizing in IE 10.
+ * 2. Remove the padding in IE 10.
*/
[type="checkbox"],
@@ -377,10 +285,9 @@ textarea {
}
/**
- * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
+ * Remove the inner padding in Chrome and Safari on macOS.
*/
-[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
-webkit-appearance: none;
}
@@ -399,12 +306,10 @@ textarea {
========================================================================== */
/*
- * Add the correct display in IE 9-.
- * 1. Add the correct display in Edge, IE, and Firefox.
+ * Add the correct display in Edge, IE 10+, and Firefox.
*/
-details, /* 1 */
-menu {
+details {
display: block;
}
@@ -416,30 +321,19 @@ summary {
display: list-item;
}
-/* Scripting
+/* Misc
========================================================================== */
/**
- * Add the correct display in IE 9-.
- */
-
-canvas {
- display: inline-block;
-}
-
-/**
- * Add the correct display in IE.
+ * Add the correct display in IE 10+.
*/
template {
display: none;
}
-/* Hidden
- ========================================================================== */
-
/**
- * Add the correct display in IE 10-.
+ * Add the correct display in IE 10.
*/
[hidden] {
diff --git a/searx/static/themes/simple/less/preferences.less b/searx/static/themes/simple/less/preferences.less
index b8e096c..e1e88b5 100644
--- a/searx/static/themes/simple/less/preferences.less
+++ b/searx/static/themes/simple/less/preferences.less
@@ -45,6 +45,24 @@
text-align: center;
}
+ table.cookies {
+ width: auto;
+
+ th, td {
+ text-align: left;
+ padding: 0.25em;
+ }
+
+ th:first-child, td:first-child {
+ padding-right: 4em;
+ }
+
+ &>tbody>tr:nth-child(even)>th,
+ &>tbody>tr:nth-child(even)>td {
+ background-color: @color-settings-tr-hover;
+ }
+ }
+
.name, .shortcut {
text-align: left;
}
@@ -69,6 +87,13 @@
}
}
+
+ div.selectable_url {
+ pre {
+ width: 100%;
+ }
+ }
+
}
@media screen and (max-width: 75em) {
diff --git a/searx/static/themes/simple/less/search.less b/searx/static/themes/simple/less/search.less
index beeac3e..dbcfc93 100644
--- a/searx/static/themes/simple/less/search.less
+++ b/searx/static/themes/simple/less/search.less
@@ -26,11 +26,43 @@
*/
}
+#clear_search {
+ display: block;
+ border-collapse: separate;
+ box-sizing: border-box;
+ width: 1.8em;
+
+ margin: 0;
+ padding: 2px;
+ height: 2.2em;
+ background: none repeat scroll 0 0 @color-search-background;
+ border-top: 1px solid @color-search-border;
+ border-bottom: 1px solid @color-search-border;
+ border-right: none;
+ border-left: none;
+ border-radius: 0px;
+ outline: none;
+ color: @color-search-font;
+ font-size: 16px;
+ z-index: 10000;
+
+ &:hover {
+ color: @color-search-border;
+ }
+
+ &.empty * {
+ display: none;
+ }
+}
+
+#q::-ms-clear, #q::-webkit-search-cancel-button {
+ display: none;
+}
+
#q, #send_search {
display: block !important;
border-collapse: separate;
box-sizing: border-box;
- position: relative;
margin: 0;
padding: 2px;
diff --git a/searx/static/themes/simple/less/style.less b/searx/static/themes/simple/less/style.less
index b79b3eb..9f69f7a 100644
--- a/searx/static/themes/simple/less/style.less
+++ b/searx/static/themes/simple/less/style.less
@@ -477,25 +477,9 @@ article.result-images[data-vim-selected]::before {
#search_url {
margin-top: 8px;
- div {
- display: block;
- border: 1px solid @color-result-search-url-border;
- padding: 4px;
- color: @color-result-search-url-font;
- width: 100%;
- display: block;
- margin: 0.1em;
- overflow: hidden;
- height: 1.2em;
- line-height: 1.2em;
-
+ div.selectable_url {
pre {
- display: block;
width: 200em;
- font-size: 0.8em;
- word-break: break-all;
- margin: 0.1em;
- .select-all-on-focus();
}
}
}
@@ -648,6 +632,34 @@ article.result-images[data-vim-selected]::before {
}
+#main_results div#results.only_template_images {
+ flex-direction: column;
+ width: auto;
+ display: flex;
+
+ #sidebar {
+ position: relative;
+ top: auto;
+ order: 2;
+ }
+
+ #urls {
+ position: relative;
+ order: 1;
+ }
+
+ #backToTop {
+ right: 0.5em;
+ left: auto;
+ }
+
+ #pagination {
+ position: relative;
+ order: 3;
+ }
+}
+
+
@media screen and (max-width: @results-width) {
article[data-vim-selected]::before {
diff --git a/searx/static/themes/simple/less/toolkit.less b/searx/static/themes/simple/less/toolkit.less
index 641747c..46ea17b 100644
--- a/searx/static/themes/simple/less/toolkit.less
+++ b/searx/static/themes/simple/less/toolkit.less
@@ -20,7 +20,16 @@ html.js .show_if_nojs {
}
.invisible {
- display: none;
+ display: none !important;
+}
+
+.list-unstyled {
+ list-style-type: none;
+
+ li {
+ margin-top: 4px;
+ margin-bottom: 4px;
+ }
}
.danger {
@@ -39,6 +48,15 @@ html.js .show_if_nojs {
border-radius: 5px;
}
+// kbd
+kbd {
+ padding: 2px 4px;
+ margin: 1px;
+ font-size: 90%;
+ color: white;
+ background: black;
+}
+
// table
table {
@@ -65,6 +83,32 @@ tr {
}
}
+// pre
+.pre() {
+ display: block;
+ font-size: 0.8em;
+ word-break: break-all;
+ margin: 0.1em;
+ .select-all-on-focus();
+}
+
+div.selectable_url {
+ display: block;
+ border: 1px solid @color-result-search-url-border;
+ padding: 4px;
+ color: @color-result-search-url-font;
+ width: 100%;
+ display: block;
+ margin: 0.1em;
+ overflow: hidden;
+ height: 1.2em;
+ line-height: 1.2em;
+
+ pre {
+ .pre();
+ }
+}
+
// dialog
.dialog() {
position: relative;
@@ -95,6 +139,28 @@ tr {
margin: 1px 0 0 0;
}
+ table {
+ width: auto;
+ }
+
+ tr {
+ vertical-align: text-top;
+
+ &:hover {
+ background: transparent;
+ }
+ }
+
+ td {
+ padding: 0 1em 0 0;
+ }
+
+
+ h4 {
+ margin-top: 0.3em;
+ margin-bottom: 0.3em;
+ }
+
}
.dialog-error {
@@ -113,6 +179,19 @@ tr {
.ion-warning();
}
+.dialog-modal {
+ .dialog();
+ background: white;
+ position: fixed;
+ top: 50%;
+ left: 50%;
+ /* bring your own prefixes */
+ transform: translate(-50%, -50%);
+ z-index: 100000;
+ margin: 0 50% 0 0;
+ box-shadow: 0 0 1em;
+}
+
// btn-collapse
.btn-collapse {
cursor: pointer;
@@ -128,7 +207,7 @@ tr {
border: none;
}
-// tabs
+/* -- tabs --*/
.tabs .tabs > label {
font-size: 90%;
}
@@ -215,7 +294,7 @@ html body .tabs > input:checked {
}
}
-// select
+/* -- select -- */
select {
height: 28px;
margin: 0 1em 0 0;
@@ -251,7 +330,7 @@ select {
}
-// checkbox-onoff
+/* -- checkbox-onoff -- */
@supports (border-radius: 50px) {
.checkbox-onoff {
display: inline-block;
@@ -285,7 +364,7 @@ select {
}
}
-// checkbox
+/* -- checkbox --*/
@supports (transform: rotate(-45deg)) {
.checkbox {
width: 20px;
@@ -325,7 +404,7 @@ select {
}
}
- // disabled : can't be focused, show only the check mark
+ // disabled : can''t be focused, show only the check mark
input[disabled] + label {
background-color: transparent !important;
box-shadow: none !important;
@@ -344,3 +423,46 @@ select {
width: 100%;
}
}
+
+/* -- loader -- */
+.loader,
+.loader:after {
+ border-radius: 50%;
+ width: 2em;
+ height: 2em;
+}
+.loader {
+ margin: 1em auto;
+ font-size: 10px;
+ position: relative;
+ text-indent: -9999em;
+ border-top: 0.5em solid rgba(0, 0, 0, 0.2);
+ border-right: 0.5em solid rgba(0, 0, 0, 0.2);
+ border-bottom: 0.5em solid rgba(0, 0, 0, 0.2);
+ border-left: 0.5em solid rgba(255, 255, 255, 0);
+ -webkit-transform: translateZ(0);
+ -ms-transform: translateZ(0);
+ transform: translateZ(0);
+ -webkit-animation: load8 1.2s infinite linear;
+ animation: load8 1.2s infinite linear;
+}
+@-webkit-keyframes load8 {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+}
+@keyframes load8 {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+} \ No newline at end of file
diff --git a/searx/static/themes/simple/less/toolkit_loader.less b/searx/static/themes/simple/less/toolkit_loader.less
new file mode 100644
index 0000000..7ef19c1
--- /dev/null
+++ b/searx/static/themes/simple/less/toolkit_loader.less
@@ -0,0 +1,41 @@
+.loader,
+.loader:after {
+ border-radius: 50%;
+ width: 10em;
+ height: 10em;
+}
+.loader {
+ margin: 60px auto;
+ font-size: 10px;
+ position: relative;
+ text-indent: -9999em;
+ border-top: 1.1em solid rgba(255, 255, 255, 0.2);
+ border-right: 1.1em solid rgba(255, 255, 255, 0.2);
+ border-bottom: 1.1em solid rgba(255, 255, 255, 0.2);
+ border-left: 1.1em solid #ffffff;
+ -webkit-transform: translateZ(0);
+ -ms-transform: translateZ(0);
+ transform: translateZ(0);
+ -webkit-animation: load8 1.1s infinite linear;
+ animation: load8 1.1s infinite linear;
+}
+@-webkit-keyframes load8 {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+}
+@keyframes load8 {
+ 0% {
+ -webkit-transform: rotate(0deg);
+ transform: rotate(0deg);
+ }
+ 100% {
+ -webkit-transform: rotate(360deg);
+ transform: rotate(360deg);
+ }
+} \ No newline at end of file
diff --git a/searx/static/themes/simple/package.json b/searx/static/themes/simple/package.json
index f3d6bbf..5150e81 100644
--- a/searx/static/themes/simple/package.json
+++ b/searx/static/themes/simple/package.json
@@ -1,15 +1,15 @@
{
"devDependencies": {
- "grunt": "~1.0.1",
+ "grunt": "~1.0.3",
"grunt-contrib-concat": "~1.0.1",
"grunt-contrib-cssmin": "^2.2.1",
"grunt-contrib-jshint": "~1.1.0",
"grunt-contrib-less": "^1.4.1",
- "grunt-contrib-uglify": "~3.0.1",
- "grunt-contrib-watch": "~1.0.0",
- "grunt-webfont": "^1.6.0",
+ "grunt-contrib-uglify": "~3.4.0",
+ "grunt-contrib-watch": "~1.1.0",
+ "grunt-webfont": "^1.7.1",
"ionicons-npm": "^2.0.1",
- "jslint": "^0.10.3",
+ "jslint": "^0.12.0",
"less-plugin-clean-css": "^1.5.1"
},
"scripts": {
diff --git a/searx/templates/__common__/about.html b/searx/templates/__common__/about.html
index d8afab7..bf17333 100644
--- a/searx/templates/__common__/about.html
+++ b/searx/templates/__common__/about.html
@@ -60,3 +60,4 @@ Searx can be added to your browser's search bar; moreover, it can be set as the
<p><a href="{{ url_for('stats') }}">Stats page</a> contains some useful data about the engines used.</p>
</div>
+{% include "__common__/aboutextend.html" ignore missing %}
diff --git a/searx/templates/oscar/languages.html b/searx/templates/oscar/languages.html
index 996c427..369abca 100644
--- a/searx/templates/oscar/languages.html
+++ b/searx/templates/oscar/languages.html
@@ -1,5 +1,5 @@
{% if preferences %}
-<select class="form-control" name='language'>
+<select class="custom-select form-control" name='language'>
{% else %}
<select class="time_range custom-select form-control" id='language' name='language'>
{% endif %}
diff --git a/searx/templates/oscar/preferences.html b/searx/templates/oscar/preferences.html
index f23cae3..b64d72d 100644
--- a/searx/templates/oscar/preferences.html
+++ b/searx/templates/oscar/preferences.html
@@ -187,7 +187,7 @@
</td>
<th>{{ search_engine.name }}</th>
<td class="name">{{ shortcuts[search_engine.name] }}</td>
- <td>{{ support_toggle(current_language in search_engine.supported_languages or current_language.split('-')[0] in search_engine.supported_languages) }}</td>
+ <td>{{ support_toggle(stats[search_engine.name].supports_selected_language) }}</td>
<td>{{ support_toggle(search_engine.safesearch==True) }}</td>
<td>{{ support_toggle(search_engine.time_range_support==True) }}</td>
<td class="{{ 'danger' if stats[search_engine.name]['warn_time'] else '' }}">{{ 'N/A' if stats[search_engine.name].time==None else stats[search_engine.name].time }}</td>
@@ -197,7 +197,7 @@
<td class="{{ 'danger' if stats[search_engine.name]['warn_time'] else '' }}">{{ 'N/A' if stats[search_engine.name].time==None else stats[search_engine.name].time }}</td>
<td>{{ support_toggle(search_engine.time_range_support==True) }}</td>
<td>{{ support_toggle(search_engine.safesearch==True) }}</td>
- <td>{{ support_toggle(current_language in search_engine.supported_languages or current_language.split('-')[0] in search_engine.supported_languages) }}</td>
+ <td>{{ support_toggle(stats[search_engine.name].supports_selected_language) }}</td>
<td>{{ shortcuts[search_engine.name] }}</td>
<th>{{ search_engine.name }}</th>
<td class="onoff-checkbox">
diff --git a/searx/templates/simple/preferences.html b/searx/templates/simple/preferences.html
index 4529fea..049af5e 100644
--- a/searx/templates/simple/preferences.html
+++ b/searx/templates/simple/preferences.html
@@ -52,9 +52,9 @@
<p class="value">
<select name="autocomplete">
<option value=""> - </option>
- {% for backend in autocomplete_backends %}
+ {%- for backend in autocomplete_backends -%}
<option value="{{ backend }}" {% if backend == autocomplete %}selected="selected"{% endif %}>{{ backend }}</option>
- {% endfor %}
+ {%- endfor -%}
</select>
</p>
<div class="description">{{ _('Find stuff as you type') }}</div>
@@ -71,6 +71,19 @@
<div class="description">{{ _('Filter content') }}</p>
</fieldset>
{{ plugin_preferences('general') }}
+ <fieldset>
+ <legend>{{ _('Open Access DOI resolver') }}</legend>
+ <p class="value">
+ <select id='doi_resolver' name='doi_resolver'>
+ {%- for doi_resolver_name,doi_resolver_url in doi_resolvers.items() -%}
+ <option value="{{ doi_resolver_name }}" {% if doi_resolver_name == current_doi_resolver %}selected="selected"{% endif %}>
+ {{- doi_resolver_name }} - {{ doi_resolver_url -}}
+ </option>
+ {%- endfor -%}
+ </select>
+ </p>
+ <div class="description"><!-- {{ _('Redirect to open-access versions of publications when available (plugin required)') }} --></div>
+ </fieldset>
{{ tab_footer() }}
{{ tab_header('maintab', 'engines', _('Engines')) }}
@@ -151,6 +164,38 @@
{{ plugin_preferences('ui') }}
{{ tab_footer() }}
+ {{ tab_header('maintab', 'cookies', _('Cookies')) }}
+
+ <p class="text-muted" style="margin:20px 0;">
+ {{ _('This is the list of cookies and their values searx is storing on your computer.') }}<br />
+ {{ _('With that list, you can assess searx transparency.') }}<br />
+ </p>
+
+ {% if cookies %}
+ <table class="cookies">
+ <tr>
+ <th>{{ _('Cookie name') }}</th>
+ <th>{{ _('Value') }}</th>
+ </tr>
+ {% for cookie in cookies %}
+ <tr>
+ <td>{{ cookie }}</td>
+ <td>{{ cookies[cookie] }}</td>
+ </tr>
+ {% endfor %}
+ </table>
+ {% else %}
+ {% include 'oscar/messages/no_cookies.html' %}
+ {% endif %}
+
+ <h4>{{ _('Search URL of the currently saved preferences') }} :</h4>
+ <div class="selectable_url">
+ <pre>{{ url_for('index', _external=True) }}?preferences={{ preferences_url_params|e }}{% raw %}&amp;q=%s{% endraw %}</pre>
+ </div>
+ <p class="small_font">{{ _('Note: specifying custom settings in the search URL can reduce privacy by leaking data to the clicked result sites.') }}</p>
+
+ {{ tab_footer() }}
+
{{ tab_header('maintab', 'privacy', _('Privacy')) }}
<fieldset>
<legend>{{ _('Method') }}</legend>
@@ -173,6 +218,7 @@
<div class="description">{{ _('Proxying image results through searx') }}</div>
</fieldset>
{{ plugin_preferences('privacy') }}
+
{{ tab_footer() }}
{{ tabs_close() }}
@@ -180,7 +226,7 @@
<p class="small_font">{{ _('These settings are stored in your cookies, this allows us not to store this data about you.') }}
<br />
{{ _("These cookies serve your sole convenience, we don't use these cookies to track you.") }}
- </p>
+ </p>
<input type="submit" value="{{ _('save') }}" />
<div class="{% if rtl %}left{% else %}right{% endif %} preferences_back"><a href="{{ url_for('clear_cookies') }}">{{ _('Reset defaults') }}</a></div>
diff --git a/searx/templates/simple/result_templates/map.html b/searx/templates/simple/result_templates/map.html
index 1fe0c86..2de4451 100644
--- a/searx/templates/simple/result_templates/map.html
+++ b/searx/templates/simple/result_templates/map.html
@@ -23,17 +23,17 @@
{%- endif -%}
{% if result.address.road -%}
<span itemprop="streetAddress">
- {% if result.address.house_number %}{{ result.address.house_number }}, {% endif %}
- {{ result.address.road }}
+ {%- if result.address.house_number -%}{{- result.address.house_number -}}, {% endif %}
+ {{- result.address.road -}}
</span><br/>
{%- endif %}
{%- if result.address.locality -%}
- <span itemprop="addressLocality">{{ result.address.locality }}</span>
- {% if result.address.postcode %}, <span itemprop="postalCode">{{ result.address.postcode }}</span>{% endif %}
+ <span itemprop="addressLocality">{{- result.address.locality -}}</span>
+ {%- if result.address.postcode -%}, <span itemprop="postalCode">{{- result.address.postcode -}}</span>{% endif %}
<br/>
{%- endif -%}
{%- if result.address.country -%}
- <span itemprop="addressCountry">{{ result.address.country }}</span>
+ <span itemprop="addressCountry">{{- result.address.country -}}</span>
{%- endif -%}
</p>
{%- endif -%}
@@ -44,11 +44,8 @@
{% if result.osm and (result.osm.type and result.osm.id) -%}
<div class="result-content invisible" id="result-overpass-{{ index }}"{% if rtl %} dir="ltr"{% endif %}>
- <div id="result-overpass-table-loading-{{ index }}"><img src="{{ url_for('static', filename='img/loader.gif') }}" alt="Loading ..."/></div>
+ <div id="result-overpass-table-loading-{{ index }}"><div class="loader">{{ _('Loading...') }}</div></div>
<table id="result-overpass-table-{{ index }}">
- <thead>
- <tr><th>key</th><th>value</th></tr>
- </thead>
<tbody>
</tbody>
</table>
diff --git a/searx/templates/simple/results.html b/searx/templates/simple/results.html
index 081118e..195c478 100644
--- a/searx/templates/simple/results.html
+++ b/searx/templates/simple/results.html
@@ -1,18 +1,25 @@
{% extends "simple/base.html" %}
{% from 'simple/macros.html' import icon, icon_small %}
-{% block title %}{{ q|e }} - {% endblock %}
+{% block title %}{% if method == 'GET' %}{{- q|e -}} -{% endif %}{% endblock %}
{% block meta %}<link rel="alternate" type="application/rss+xml" title="Searx search: {{ q|e }}" href="{{ url_for('index') }}?q={{ q|urlencode }}&amp;categories={{ selected_categories|join(",") | replace(' ','+') }}&amp;pageno={{ pageno }}&amp;time_range={{ time_range }}&amp;language={{ current_language }}&amp;safesearch={{ safesearch }}&amp;format=rss">{% endblock %}
{% block content %}
<nav id="linkto_preferences"><a href="{{ url_for('preferences') }}">{{ icon('navicon-round') }}</a></nav>
{% include 'simple/search.html' %}
-<div id="results">
- {% if answers %}
+
+{% if results and results|map(attribute='template')|unique|list|count == 1 %}
+ {% set only_template = 'only_template_' + results[0]['template']|default('default')|replace('.html', '') %}
+{% else %}
+ {% set unique_template = '' %}
+{% endif %}
+
+<div id="results" class="{{ only_template }}">
+ {% if answers -%}
<div id="answers"><h4 class="title">{{ _('Answers') }} : </h4>
- {% for answer in answers -%}
- <div class="answer">{{ answer }}</div>
- {%- endfor %}
+ {%- for answer in answers -%}
+ <div class="answer">{{- answer -}}</div>
+ {%- endfor -%}
</div>
- {% endif %}
+ {%- endif %}
<div id="sidebar">
@@ -24,16 +31,16 @@
<div class="dialog-error" role="alert">
<p><strong>{{ _('Error!') }}</strong> {{ _('Engines cannot retrieve results') }}:</p>
<p>{% for engine_name, error_type in unresponsive_engines %}
- {{ engine_name }} ({{ error_type }}){% if not loop.last %}, {% endif %}
+ {{- engine_name }} ({{- error_type -}}){% if not loop.last %}, {% endif %}
{% endfor %}</p>
</div>
{% endif %}
{% if infoboxes %}
<div id="infoboxes">
- {% for infobox in infoboxes %}
- {% include 'simple/infobox.html' %}
- {% endfor %}
+ {% for infobox in infoboxes -%}
+ {% include 'simple/infobox.html' %}
+ {%- endfor %}
</div>
{% endif %}
@@ -56,7 +63,7 @@
<div id="search_url">
<h4 class="title">{{ _('Search URL') }} :</h4>
- <div><pre>{{ base_url }}?q={{ q|urlencode }}&amp;language={{ current_language }}&amp;time_range={{ time_range }}&amp;safesearch={{ safesearch }}{% if pageno > 1 %}&amp;pageno={{ pageno }}{% endif %}{% if selected_categories %}&amp;categories={{ selected_categories|join(",") | replace(' ','+') }}{% endif %}</pre></div>
+ <div class="selectable_url"><pre>{{ base_url }}?q={{ q|urlencode }}&amp;language={{ current_language }}&amp;time_range={{ time_range }}&amp;safesearch={{ safesearch }}{% if pageno > 1 %}&amp;pageno={{ pageno }}{% endif %}{% if selected_categories %}&amp;categories={{ selected_categories|join(",") | replace(' ','+') }}{% endif %}</pre></div>
</div>
<div id="apis">
<h4 class="title">{{ _('Download results') }}</h4>
diff --git a/searx/templates/simple/search.html b/searx/templates/simple/search.html
index 3f48d7f..9c4a99b 100644
--- a/searx/templates/simple/search.html
+++ b/searx/templates/simple/search.html
@@ -2,6 +2,7 @@
<div id="search_wrapper">
<div class="search_box">
<input id="q" name="q" type="text" placeholder="{{ _('Search for...') }}" tabindex="1" autocomplete="off" spellcheck="false" dir="auto" {% if q %}value="{{ q }}"{% endif %} >
+ <button id="clear_search" type="button" tabindex="-1"><span class="hide_if_nojs">{{ icon('close') }}</span><span class="show_if_nojs">{{ _('Clear search') }}</span></button>
<button id="send_search" type="submit" tabindex="-1"><span class="hide_if_nojs">{{ icon('search') }}</span><span class="show_if_nojs">{{ _('Start search') }}</span></button>
</div>
<div class="search_filters">
diff --git a/searx/translations/ar/LC_MESSAGES/messages.po b/searx/translations/ar/LC_MESSAGES/messages.po
index a81a804..645ca0e 100644
--- a/searx/translations/ar/LC_MESSAGES/messages.po
+++ b/searx/translations/ar/LC_MESSAGES/messages.po
@@ -3,14 +3,15 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
+# ButterflyOfFire ButterflyOfFire, 2018
# ButterflyOfFire, 2017-2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2018-01-23 17:54+0000\n"
-"Last-Translator: ButterflyOfFire\n"
+"PO-Revision-Date: 2018-09-08 08:23+0000\n"
+"Last-Translator: ButterflyOfFire ButterflyOfFire\n"
"Language-Team: Arabic (http://www.transifex.com/asciimoo/searx/language/ar/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -29,7 +30,7 @@ msgstr ""
#: searx/search.py:151
msgid "unexpected crash"
-msgstr ""
+msgstr "خلل غير مُتوقّع"
#: searx/webapp.py:136
msgid "files"
@@ -73,7 +74,7 @@ msgstr "علوم"
#: searx/webapp.py:399 searx/webapp.py:658
msgid "Invalid settings, please edit your preferences"
-msgstr ""
+msgstr "إنّ الإعدادات خاطئة، يرجى تعديل خياراتك"
#: searx/webapp.py:415
msgid "Invalid settings"
@@ -97,7 +98,7 @@ msgstr "مولّد قيمة عشوائية"
#: searx/answerers/random/answerer.py:54
msgid "Generate different random values"
-msgstr ""
+msgstr "توليد قِيم عشوائية مختلفة"
#: searx/answerers/statistics/answerer.py:53
msgid "Statistics functions"
@@ -288,7 +289,7 @@ msgstr "اللغة الإفتراضية"
#: searx/templates/pix-art/preferences.html:20
#: searx/templates/simple/preferences.html:120
msgid "Interface language"
-msgstr "لغة العرض"
+msgstr "لغة الواجهة"
#: searx/templates/courgette/preferences.html:34
#: searx/templates/legacy/preferences.html:35
@@ -371,7 +372,7 @@ msgstr "اللون"
#: searx/templates/courgette/preferences.html:86
msgid "Blue (default)"
-msgstr "أزرق )إفتراضي("
+msgstr "أزرق (إفتراضي)"
#: searx/templates/courgette/preferences.html:87
msgid "Violet"
@@ -581,13 +582,13 @@ msgstr "عرض نتائج البحث في ألسنة جديدة"
#: searx/templates/oscar/preferences.html:117
#: searx/templates/simple/preferences.html:145
msgid "On"
-msgstr ""
+msgstr "يشتغل"
#: searx/templates/legacy/preferences.html:88
#: searx/templates/oscar/preferences.html:118
#: searx/templates/simple/preferences.html:146
msgid "Off"
-msgstr ""
+msgstr "مُعطَّل"
#: searx/templates/legacy/result_templates/code.html:3
#: searx/templates/legacy/result_templates/default.html:3
@@ -626,7 +627,7 @@ msgstr "محرك بحث يحمي الخصوصية و قابل للتهكير"
#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
#: searx/templates/simple/macros.html:43
msgid "proxied"
-msgstr "يمر عبر البروكسي"
+msgstr "النفاذ عبر البروكسي"
#: searx/templates/oscar/macros.html:92
msgid "supported"
@@ -661,7 +662,7 @@ msgstr "المجيبون"
#: searx/templates/oscar/preferences.html:17
#: searx/templates/oscar/preferences.html:272
msgid "Cookies"
-msgstr "الكوكيز"
+msgstr "كعكات الكوكيز"
#: searx/templates/oscar/preferences.html:42
#: searx/templates/simple/preferences.html:48
@@ -676,12 +677,12 @@ msgstr "يقوم بتغيير لغة واجهة البحث"
#: searx/templates/oscar/preferences.html:58
#: searx/templates/simple/preferences.html:60
msgid "Find stuff as you type"
-msgstr ""
+msgstr "العثور على نتائج أثناء الكتابة"
#: searx/templates/oscar/preferences.html:69
#: searx/templates/simple/preferences.html:173
msgid "Proxying image results through searx"
-msgstr ""
+msgstr "تمرير نتائج البحث عن الصور عبر بروكسي Searx"
#: searx/templates/oscar/preferences.html:78
msgid ""
@@ -865,7 +866,7 @@ msgstr "معلومة !"
#: searx/templates/oscar/messages/no_cookies.html:4
msgid "currently, there are no cookies defined."
-msgstr ""
+msgstr "حاليا لم تقم بتحديد أي مِن كعكات الكوكيز."
#: searx/templates/oscar/messages/no_data_available.html:4
msgid "There is currently no data available. "
diff --git a/searx/translations/ca/LC_MESSAGES/messages.po b/searx/translations/ca/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..460091c
--- /dev/null
+++ b/searx/translations/ca/LC_MESSAGES/messages.po
@@ -0,0 +1,1014 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# Calbasi <joan@calbasi.net>, 2018
+# jmontane, 2018
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2018-12-15 15:10+0000\n"
+"Last-Translator: jmontane\n"
+"Language-Team: Catalan (http://www.transifex.com/asciimoo/searx/language/ca/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: ca\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "s'ha esgotat el temps d'espera"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr "Excepció en la petició"
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr "Fallada no esperada"
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "fitxers"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "general"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "música"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "xarxes socials"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "imatges"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "vídeos"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "informàtica"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "notícies"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "mapa"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "ciència"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "La configuració no és vàlida, editeu-la"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "La configuració no és vàlida"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "error en la cerca"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "fa {minutes} minuts"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "fa {hours} hores i {minutes} minuts"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "Generador de valor aleatori"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "Genera valors aleatoris diferents"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "Funcions estadístiques"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "Calcula {functions} dels arguments"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "Temps del motor (segons)"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "Càrrega de la pàgina (segons)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "Nombre de resultats"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "Valoració"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "Valoració segons el resultat"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "Errors"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(OBSOLET)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "Aquesta entrada ha estat substituïda per"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr "No hi ha resum disponible per a aquesta publicació."
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "Reescriu els enllaços HTTP cap a HTTPS si és possible"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "Desplaçament infinit"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "Carrega automàticament la pàgina següent en desplaçar-se al final de la pàgina actual"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr "Reescriu l'Open Access DOI"
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "Evita els llocs de pagaments redirigint a versions d'accés obert de les publicacions si és possible"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "Obre els enllaços de resultats en una pestanya nova"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "De forma predeterminada, els resultats s'obren en la mateixa finestra. Aquest connector canvia el comportament predeterminat i obre els enllaços en una finestra o pestanya nova. (Cal JavaScript)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "Cerca en la selecció de categories"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "Executa la cerca immediatament si hi ha seleccionada una categoria. Desactiveu-ho per a seleccionar més d'una categoria. (Cal JavaScript)"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "Mostra la vostra IP si la consulta és «ip» i el valor «user agent» del navegador si la consulta conté «user agent»."
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "Suprimeix l'URL de rastreig"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "Suprimeix els arguments de rastreig de les URL retornades"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "Dreceres de teclat del Vim"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "Navegació pels resultats de la cerca amb les dreceres a l'estil Vim (cal JavaScript). Pitgeu la tecla «h» en la pàgina principal o de resultats per a obtenir ajuda."
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "No s'ha trobat la pàgina"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "Vés a %(search_page)s."
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "pàgina de cerca"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "preferències"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "quant a"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "Preferències"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "Categories predeterminades"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "Llengua de cerca"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "Llengua predeterminada"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "Llengua de la interfície"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "Compleció automàtica"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "Servidor intermediari d'imatges"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "Activat"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "Desactivat"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "Mètode"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "Cerca segura"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "Estricta"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "Moderada"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "Cap"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "Temes"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "Color"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "Blau (predeterminat)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "Violat"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "Verd"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "Cian"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "Taronja"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "Vermell"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "Motors de cerca usats actualment"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "Nom del motor"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "Categoria"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "Permet"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "Bloca"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "Aquesta configuració es desa en les galetes. Això ens permet no emmagatzemar les vostres dades."
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "Aquestes galetes només són per a la vostra conveniència. No les usem per a rastrejar-vos."
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "desa"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "Restaura els valors predeterminats"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "enrere"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "URL de cerca"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "Baixa els resultats"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "Respostes"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "Suggeriments"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "pàgina anterior"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "pàgina següent"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "Cerca..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "Estadístiques del motor"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "context original"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "Font"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "Descarregador"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "enllaç magnet"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "fitxer torrent"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "Feu clic en la lupa per a executar la cerca"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "Resultats en pestanyes noves"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "Activat"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "Desactivat"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "en memòria cau"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "Configuració avançada"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "Tanca"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "Error!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "Funciona amb"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "un meta motor de cerca personalitzable i respectuós amb la privadesa"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "en servidor intermediari"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "suportat"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "no suportat"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "General"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "Motorrs"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "Connectat"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "Resposter"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Galetes"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "En quina llengua preferiu cercar?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "Canvia la llengua de la disposició"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "Troba coses tal com escriu"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "Envia els resultats d'imatges via el servidor intermediari del searx"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "Canvia com es trameten els formularis, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">més informació sobre els mètodes de petició</a>"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "Filtra el contingut"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "Canvia la disposició del searx"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "Trieu un estil per a aquest tema"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "Estil"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr "Solucionador de l'Open Access DOI"
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr "Redirigeix cap a versions d'accés obert de les publicacions si són disponibles (cal un connector)"
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "Drecera"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "Llengua seleccionada"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "Interval de temps"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "Temps amitjanat"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "Temps màxim"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "Aquest és el llistat dels mòduls de resposta ràpida del searx."
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "Nom"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "Paraules clau"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "Descripció"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "Exemples"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "Aquest és el llistat de les galetes, i els seu valor, que el searx té desats en el vostre equip."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "Amb aquest llistat, podeu avaluar la transparència del searx."
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Nom de la galeta"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "Valor"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr "URL de cerca de les preferències desades actualment"
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr "Nota: si indiqueu configuracions personalitzades en la URL de cerca podeu reduir la privadesa, amb filtració de dades, en fer clic als llocs dels resultats."
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "Resultats de la cerca"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "Proveu a cercar:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "Els motors no poden obtenir cap resultat"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "Enllaços"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "Comença la cerca"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "estadístiques"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "En qualsevol moment"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "Les darreres 24 hores"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "La setmana passada"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "El darrer mes"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "El darrer any"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "Atenció!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "Sembla que esteu usant searx per primer cop."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "Informació!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "actualment, no hi ha definida cap galeta."
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "Actualment, no hi ha dades disponibles."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "Els motors no poden obtenir cap resultat"
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr "Torneu-ho a intentar més tard o useu una altra instància del searx."
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "Disculpeu!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "no hem trobat cap resultat. Feu una consulta diferent o cerqueu en més categories."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "Ben fet!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "La configuració s'ha desat correctament."
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "Cagundena!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "Alguna cosa ha anat malament."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "mostra el contingut multimèdia"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "amaga el contingut multimèdia"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "Obtén la imatge"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "Mostra el codi font"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "mostra el mapa"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "amaga el mapa"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "mostra els detalls"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "amaga els detalls"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "Mida del fitxer"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "Bytes"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "kiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "MiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "GiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "TiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "Nombre de fiters"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "mostra el vídeo"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "amaga el vídeo"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "Carrega'n més..."
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "No s'ha trobat cap element"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "Suporta la llengua seleccionada"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "Interfície d'usuari"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "Privadesa"
diff --git a/searx/translations/cs/LC_MESSAGES/messages.po b/searx/translations/cs/LC_MESSAGES/messages.po
index ef96271..8d3ce3c 100644
--- a/searx/translations/cs/LC_MESSAGES/messages.po
+++ b/searx/translations/cs/LC_MESSAGES/messages.po
@@ -4,24 +4,25 @@
#
# Translators:
# Clon <fillip1@seznam.cz>, 2017
+# Václav Zouzalík <Vaclav.Zouzalik@seznam.cz>, 2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-12-18 12:03+0000\n"
+"Last-Translator: Václav Zouzalík <Vaclav.Zouzalik@seznam.cz>\n"
"Language-Team: Czech (http://www.transifex.com/asciimoo/searx/language/cs/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Generated-By: Babel 2.3.4\n"
"Language: cs\n"
-"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n"
+"Plural-Forms: nplurals=4; plural=(n == 1 && n % 1 == 0) ? 0 : (n >= 2 && n <= 4 && n % 1 == 0) ? 1: (n % 1 != 0 ) ? 2 : 3;\n"
#: searx/search.py:137 searx/search.py:182
msgid "timeout"
-msgstr ""
+msgstr "timeout"
#: searx/search.py:144
msgid "request exception"
@@ -77,7 +78,7 @@ msgstr "Neplatné nastavení, upravte svoje předvolby"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr ""
+msgstr "Neplatné nastavení"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
@@ -131,7 +132,7 @@ msgstr ""
#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
msgid "Errors"
-msgstr "Chyb"
+msgstr "Chyby"
#: searx/engines/pdbe.py:87
msgid "{title}&nbsp;(OBSOLETE)"
@@ -187,13 +188,13 @@ msgstr "Hledat ve vybrané kategorii"
msgid ""
"Perform search immediately if a category selected. Disable to select "
"multiple categories. (JavaScript required)"
-msgstr ""
+msgstr "Vyhledávejte okamžitě, pokud je vybrána kategorie. Vypněte, pokud potřebujete zvolit vícero kategorií. (vyžaduje JavaScript)"
#: searx/plugins/self_info.py:20
msgid ""
"Displays your IP if the query is \"ip\" and your user agent if the query "
"contains \"user agent\"."
-msgstr ""
+msgstr "Ukáže vaši IP adresu, pokud dotaz je \"ip\", a váš user agent, pokud dotatz obsahuje \"user agent\"."
#: searx/plugins/tracker_url_remover.py:26
msgid "Tracker URL remover"
@@ -375,7 +376,7 @@ msgstr "Modrá (základní)"
#: searx/templates/courgette/preferences.html:87
msgid "Violet"
-msgstr ""
+msgstr "Fialová"
#: searx/templates/courgette/preferences.html:88
msgid "Green"
@@ -383,7 +384,7 @@ msgstr "Zelená"
#: searx/templates/courgette/preferences.html:89
msgid "Cyan"
-msgstr ""
+msgstr "Modrozelená"
#: searx/templates/courgette/preferences.html:90
msgid "Orange"
@@ -543,14 +544,14 @@ msgstr "původní kontext"
#: searx/templates/oscar/result_templates/torrent.html:6
#: searx/templates/simple/result_templates/torrent.html:9
msgid "Seeder"
-msgstr ""
+msgstr "Seeder"
#: searx/templates/courgette/result_templates/torrent.html:7
#: searx/templates/legacy/result_templates/torrent.html:11
#: searx/templates/oscar/result_templates/torrent.html:6
#: searx/templates/simple/result_templates/torrent.html:9
msgid "Leecher"
-msgstr ""
+msgstr "Leecher"
#: searx/templates/courgette/result_templates/torrent.html:9
#: searx/templates/legacy/result_templates/torrent.html:9
@@ -676,7 +677,7 @@ msgstr "Změnít jazyk prostředí"
#: searx/templates/oscar/preferences.html:58
#: searx/templates/simple/preferences.html:60
msgid "Find stuff as you type"
-msgstr ""
+msgstr "Vyhledávat během psaní"
#: searx/templates/oscar/preferences.html:69
#: searx/templates/simple/preferences.html:173
@@ -729,7 +730,7 @@ msgstr "Zkratka"
#: searx/templates/oscar/preferences.html:164
#: searx/templates/oscar/preferences.html:174
msgid "Selected language"
-msgstr ""
+msgstr "Zvolený jazyk"
#: searx/templates/oscar/preferences.html:166
#: searx/templates/oscar/preferences.html:172
@@ -853,7 +854,7 @@ msgstr "Rok"
#: searx/templates/oscar/messages/first_time.html:6
#: searx/templates/oscar/messages/no_data_available.html:3
msgid "Heads up!"
-msgstr "Hlavy vzhůru!"
+msgstr "Hlavu vzhůru!"
#: searx/templates/oscar/messages/first_time.html:7
msgid "It look like you are using searx first time."
@@ -879,7 +880,7 @@ msgstr ""
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr ""
+msgstr "Zkuste prosím později, nebo na jiné instanci searxu."
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
@@ -891,7 +892,7 @@ msgstr "Pardón!"
msgid ""
"we didn't find any results. Please use another query or search in more "
"categories."
-msgstr "nenašly jsme žádné výsledky. Prosím použíjte jiný dotaz nebo hledejte ve více kategoriích."
+msgstr "Nenašli jsme žádné výsledky. Použijte prosím jiný dotaz nebo hledejte ve více kategoriích."
#: searx/templates/oscar/messages/save_settings_successfull.html:7
msgid "Well done!"
@@ -1010,4 +1011,4 @@ msgstr ""
#: searx/templates/simple/preferences.html:154
msgid "Privacy"
-msgstr ""
+msgstr "Soukromí"
diff --git a/searx/translations/cy/LC_MESSAGES/messages.po b/searx/translations/cy/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..3344c6d
--- /dev/null
+++ b/searx/translations/cy/LC_MESSAGES/messages.po
@@ -0,0 +1,1013 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# Aled Powell <aled@aledpowell.cymru>, 2019
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2019-01-05 13:50+0000\n"
+"Last-Translator: Aled Powell <aled@aledpowell.cymru>\n"
+"Language-Team: Welsh (http://www.transifex.com/asciimoo/searx/language/cy/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: cy\n"
+"Plural-Forms: nplurals=4; plural=(n==1) ? 0 : (n==2) ? 1 : (n != 8 && n != 11) ? 2 : 3;\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr ""
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr ""
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr ""
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "ffeiliau"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "cyffredinol"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "cerddoriaeth"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "cyfryngau cymdeithasol"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "delweddau"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "fideos"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "Technoleg"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "newyddion"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "map"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "gwyddoniaeth"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "Gosodiadau annilys. Addasa dy ddewisiadau."
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "Gosodiadau annilys"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "gwall chwilio"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "{minutes} munud yn ôl"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "{hours} awr, {minutes} munud yn ôl"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr ""
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr ""
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr ""
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr ""
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr ""
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr ""
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "Nifer o ganlyniadau"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "Sgoriau"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr ""
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "Gwallau"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr ""
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr ""
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr ""
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr ""
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr ""
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr ""
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr ""
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr ""
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "Agor dolenni canlyniadau mewn tabiau newydd yn y porwr"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "Mae canlyniadau fel arfer yn cael eu hagor yn yr un ffenestr. Mae'r ategolyn hwn yn newid hyn fel bod dolenni yn cael eu hagor mewn tabiau/ffenestri newydd. (Angen JavaScript)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr ""
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr ""
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr ""
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr ""
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr ""
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr ""
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr ""
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr ""
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "Mynd i %(search_page)s."
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "tudalen chwilio"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "dewisiadau"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "ynghylch"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "Dewisiadau"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "Categorïau arferol"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "Iaith chwilio"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "Iaith arferol"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "Iaith y rhyngwyneb"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "Awto-gwblhau"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "Galluogwyd"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "Analluogwyd"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "Dull"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "Caeth"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "Cymhedrol"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "Dim"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "Themâu"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "Lliw"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "Glas (arferol)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "Fioled"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "Gwyrdd"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "Gwyrddlas"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "Oren"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "Coch"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "Categori"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "Caniatáu"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "Rhwystro"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "cadw"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "Ailosod rhagosodiadau"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "nôl"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr ""
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "Lawrlwytho'r canlyniadau"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "Atebion"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "Awgrymiadau"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "tudalen ddiwethaf"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "tudalen nesaf"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "Chwilio am..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr ""
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "cyd-destun gwreiddiol"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "Hadau"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "Lawrlwythwyr"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "dolen magnet"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "ffeil torrent"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "Cliciwch ar y chwyddwydr i berfformio chwiliad"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "Canlyniadau mewn tabiau newydd"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "Ymlaen"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "I ffwrdd"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr ""
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "Gosodiadau uwch"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "Cau"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "Gwall!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "Pwerwyd gan"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr ""
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr ""
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "cefnogir"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "ni chefnogir"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "Cyffredin"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "Peiriannau"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "Ategolion"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "Atebwyr"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Cwcis"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "Ym mha iaith wyt ti'n ffafrio chwilio?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "Newid iaith rhyngwyneb searX"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "Darganfod pethau wrth i chi deipio"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "Newid cynllun searX"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "Dewis arddull ar gyfer y thema hon"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "Arddull"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "Llwybr Byr"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "Iaith a ddewiswyd"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "Cyfnod amser"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "Enw"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "Allweddeiriau"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "Disgrifiad"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "Enghreifftiau"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "Dyma restr y cwcis, a'u gwerthoedd, mae searX yn eu cadw ar eich dyfais."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Enw cwci"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "Gwerth"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr ""
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "Canlyniadau chwilio"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "Rho gynnig ar chwilio am:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "Ni all y peiriannau cael canlyniadau"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "Dolenni"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "Dechrau chwilio"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "ystadegau"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "Unrhyw amser"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "Y diwrnod diwethaf"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "Yr wythnos diwethaf"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "Y mis diwethaf"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "Y flwyddyn ddiwethaf"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr ""
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "Mae'n ymddangos eich bod yn defnyddio searx am y tro cyntaf."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "Gwybodaeth!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr ""
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "Does dim data ar gael ar hyn o bryd."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "Ni all y peiriannau cael canlyniadau."
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr ""
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "Sori!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "Ni ddaethpwyd o hyd i unrhyw ganlyniadau. Defnyddiwch derm(au) chwilio gwahanol neu ehangu'r chwilio i ragor o gategorïau."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "Da iawn!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "Cadwyd y gosodiadau yn iawn!"
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr ""
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "Aeth rhywbeth o'i le."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "dangos cyfryngau"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "cuddio cyfryngau"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "Cael y ddelwedd"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "Gweld y ffynhonnell"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "dangos map"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "cuddio map"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "dangos manylion"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "cuddio manylion"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "Maint ffeil"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "Beitiau"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "kiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "MiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "GiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "TiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "Nifer o Ffeiliau"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "dangos fideo"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "cuddio fideo"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "Dysgu mwy..."
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "Ni chanfuwyd eitem"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "Cefnogir yr iaith a ddewiswyd"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "Rhyngwyneb defnyddiwr"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "Preifatrwydd"
diff --git a/searx/translations/da/LC_MESSAGES/messages.po b/searx/translations/da/LC_MESSAGES/messages.po
index 75281cd..f235ccd 100644
--- a/searx/translations/da/LC_MESSAGES/messages.po
+++ b/searx/translations/da/LC_MESSAGES/messages.po
@@ -3,14 +3,15 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
+# Mikkel Kirkgaard Nielsen <memb_transifex@mikini.dk>, 2018
# Morten Krogh Andersen <spam1@krogh.net>, 2017
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-02-22 01:48+0000\n"
+"Last-Translator: Mikkel Kirkgaard Nielsen <memb_transifex@mikini.dk>\n"
"Language-Team: Danish (http://www.transifex.com/asciimoo/searx/language/da/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -21,15 +22,15 @@ msgstr ""
#: searx/search.py:137 searx/search.py:182
msgid "timeout"
-msgstr ""
+msgstr "tidsudløb"
#: searx/search.py:144
msgid "request exception"
-msgstr ""
+msgstr "forespørgsels-undtagelse"
#: searx/search.py:151
msgid "unexpected crash"
-msgstr ""
+msgstr "uventet nedlukning"
#: searx/webapp.py:136
msgid "files"
@@ -77,7 +78,7 @@ msgstr "Ugyldige indstillinger, redigér venligst dine valg"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr ""
+msgstr "Ugyldig indstilling"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
@@ -143,7 +144,7 @@ msgstr "Denne værdi er blevet overskrevet af"
#: searx/engines/pubmed.py:74
msgid "No abstract is available for this publication."
-msgstr ""
+msgstr "Intet sammendrag er tilgængelig for denne publikation."
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
@@ -159,7 +160,7 @@ msgstr "Indlæs automatisk næste side, når der scrolles til bunden af den nuv
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "Open Access DOI-omskrivning"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
@@ -630,11 +631,11 @@ msgstr "viderestillet"
#: searx/templates/oscar/macros.html:92
msgid "supported"
-msgstr ""
+msgstr "understøttet"
#: searx/templates/oscar/macros.html:96
msgid "not supported"
-msgstr ""
+msgstr "ikke-understøttet"
#: searx/templates/oscar/preferences.html:13
#: searx/templates/oscar/preferences.html:22
@@ -712,13 +713,13 @@ msgstr "Stil"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "Open Access DOI-forløser"
#: searx/templates/oscar/preferences.html:123
msgid ""
"Redirect to open-access versions of publications when available (plugin "
"required)"
-msgstr ""
+msgstr "Omdiriger til open-access-udgaver af publikationer hvis tilgængelig (plugin påkrævet)"
#: searx/templates/oscar/preferences.html:163
#: searx/templates/oscar/preferences.html:175
@@ -729,7 +730,7 @@ msgstr "Genvej"
#: searx/templates/oscar/preferences.html:164
#: searx/templates/oscar/preferences.html:174
msgid "Selected language"
-msgstr ""
+msgstr "Valgt sprog"
#: searx/templates/oscar/preferences.html:166
#: searx/templates/oscar/preferences.html:172
@@ -789,13 +790,13 @@ msgstr "Værdi"
#: searx/templates/oscar/preferences.html:301
msgid "Search URL of the currently saved preferences"
-msgstr ""
+msgstr "Søge-URL for den nuværende gemte indstilling"
#: searx/templates/oscar/preferences.html:301
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr ""
+msgstr "Bemærk: brugertilpassede indstillinger i søge-URL kan reducere niveauet af beskyttelse ved at lække data til de sider der klikkes på i resultatet."
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -804,12 +805,12 @@ msgstr "Søgereresultater"
#: searx/templates/oscar/results.html:21
#: searx/templates/simple/results.html:84
msgid "Try searching for:"
-msgstr ""
+msgstr "Prøv at søge efter:"
#: searx/templates/oscar/results.html:100
#: searx/templates/simple/results.html:25
msgid "Engines cannot retrieve results"
-msgstr ""
+msgstr "Søgemotorer kan ikke hente resultater"
#: searx/templates/oscar/results.html:131
msgid "Links"
@@ -874,12 +875,12 @@ msgstr "Der er pt. ingen tilgængelige data"
#: searx/templates/oscar/messages/no_results.html:4
#: searx/templates/simple/messages/no_results.html:4
msgid "Engines cannot retrieve results."
-msgstr ""
+msgstr "Søgemotorer kan ikke hente resultater."
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr ""
+msgstr "Vær venlig at prøve igen senere, eller find en anden searx-instans."
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
@@ -998,7 +999,7 @@ msgstr "Indlæs mere..."
#: searx/templates/simple/base.html:31
msgid "No item found"
-msgstr ""
+msgstr "Intet fundet"
#: searx/templates/simple/preferences.html:89
msgid "Supports selected language"
@@ -1006,8 +1007,8 @@ msgstr "Undstøtter valgte sprog"
#: searx/templates/simple/preferences.html:118
msgid "User interface"
-msgstr ""
+msgstr "Brugerinterface"
#: searx/templates/simple/preferences.html:154
msgid "Privacy"
-msgstr ""
+msgstr "Privatliv"
diff --git a/searx/translations/de/LC_MESSAGES/messages.po b/searx/translations/de/LC_MESSAGES/messages.po
index 2bf2291..64f253e 100644
--- a/searx/translations/de/LC_MESSAGES/messages.po
+++ b/searx/translations/de/LC_MESSAGES/messages.po
@@ -12,6 +12,7 @@
# Max <theshirinzu@gmail.com>, 2015
# pointhi, 2014
# rike, 2014
+# S R <acc-transifex@rie.hm>, 2018
# stf <stefan.marsiske@gmail.com>, 2014
# stf <stefan.marsiske@gmail.com>, 2014
# Thomas Pointhuber, 2016-2017
@@ -21,8 +22,8 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-12-09 13:14+0000\n"
-"Last-Translator: Mario Siegmann <mario_siegmann@web.de>\n"
+"PO-Revision-Date: 2018-12-28 11:02+0000\n"
+"Last-Translator: S R <acc-transifex@rie.hm>\n"
"Language-Team: German (http://www.transifex.com/asciimoo/searx/language/de/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -159,25 +160,25 @@ msgstr "Keine Zusammenfassung für die Veröffentlichung verfügbar."
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
-msgstr "Wandelt wenn möglich HTTP Links in HTTPS Links um"
+msgstr "Wandelt wenn möglich HTTP-Links in HTTPS-Links um"
#: searx/plugins/infinite_scroll.py:3
msgid "Infinite scroll"
-msgstr "Undendliches Scrollen"
+msgstr "Unendliches Scrollen"
#: searx/plugins/infinite_scroll.py:4
msgid "Automatically load next page when scrolling to bottom of current page"
-msgstr "Lädt automatisch die nächste Seite wenn das Ende der aktuellen Seite erreicht wurde"
+msgstr "Lädt automatisch die nächste Seite, wenn das Ende der aktuellen Seite erreicht wurde"
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr "Open Access DOI rewrite"
+msgstr "Open-Access-DOI umschreiben"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
"Avoid paywalls by redirecting to open-access versions of publications when "
"available"
-msgstr "Bezahlbeschränkungen durch die Weiterleitung zu der verfügbaren Open-Access Version vermeiden"
+msgstr "Bezahlbeschränkungen durch die Weiterleitung zu der verfügbaren Open-Access-Version vermeiden"
#: searx/plugins/open_results_on_new_tab.py:18
#: searx/templates/oscar/preferences.html:114
@@ -223,7 +224,7 @@ msgstr "An Vim angelehnte Tastenkombinationen"
msgid ""
"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
"\"h\" key on main or result page to get help."
-msgstr "Navigiere in der Ergebnisseite mit Vim ähnlichen Tastataurkombinationen (es wird JavaScript benötigt).\nDrücke \"h\" auf der Start bzw. Ergebnisseite um eine Hifefenster anzuzeigen"
+msgstr "Navigiere in der Ergebnisseite mit Vim ähnlichen Tastaturkombinationen (es wird JavaScript benötigt).\nDrücke \"h\" auf der Start- bzw. Ergebnisseite, um ein Hifefenster anzuzeigen"
#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
diff --git a/searx/translations/eo/LC_MESSAGES/messages.po b/searx/translations/eo/LC_MESSAGES/messages.po
index de31c9a..cd7ffe8 100644
--- a/searx/translations/eo/LC_MESSAGES/messages.po
+++ b/searx/translations/eo/LC_MESSAGES/messages.po
@@ -6,13 +6,14 @@
# Jack Stehn <jaxadeo@gmail.com>, 2017
# juanda097 <juanda097@protonmail.ch>, 2015-2016
# pizzaiolo, 2016
+# Václav Zouzalík <Vaclav.Zouzalik@seznam.cz>, 2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-11-22 08:33+0000\n"
+"Last-Translator: Václav Zouzalík <Vaclav.Zouzalik@seznam.cz>\n"
"Language-Team: Esperanto (http://www.transifex.com/asciimoo/searx/language/eo/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -23,15 +24,15 @@ msgstr ""
#: searx/search.py:137 searx/search.py:182
msgid "timeout"
-msgstr ""
+msgstr "tempolimo"
#: searx/search.py:144
msgid "request exception"
-msgstr ""
+msgstr "escepto de peto"
#: searx/search.py:151
msgid "unexpected crash"
-msgstr ""
+msgstr "neatendita paneo"
#: searx/webapp.py:136
msgid "files"
@@ -47,7 +48,7 @@ msgstr "muziko"
#: searx/webapp.py:139
msgid "social media"
-msgstr "sociaj retservoj"
+msgstr "sociaj retoj"
#: searx/webapp.py:140
msgid "images"
@@ -75,11 +76,11 @@ msgstr "scienco"
#: searx/webapp.py:399 searx/webapp.py:658
msgid "Invalid settings, please edit your preferences"
-msgstr ""
+msgstr "Nevalidaj agordoj, bonvolu redakti viajn agordojn"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr ""
+msgstr "Nevalidaj agordoj"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
@@ -95,23 +96,23 @@ msgstr "antaŭ {hours} horo(j), {minutes} minuto(j)"
#: searx/answerers/random/answerer.py:53
msgid "Random value generator"
-msgstr ""
+msgstr "Hazardvalora generilo"
#: searx/answerers/random/answerer.py:54
msgid "Generate different random values"
-msgstr ""
+msgstr "Ĝi generas diversajn hazardajn valorojn"
#: searx/answerers/statistics/answerer.py:53
msgid "Statistics functions"
-msgstr ""
+msgstr "Statistikaj funkcioj"
#: searx/answerers/statistics/answerer.py:54
msgid "Compute {functions} of the arguments"
-msgstr ""
+msgstr "Kalkulas {functions} el la argumentoj"
#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
msgid "Engine time (sec)"
-msgstr ""
+msgstr "Motora tempo (s)"
#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
msgid "Page loads (sec)"
@@ -137,19 +138,19 @@ msgstr "Eraroj"
#: searx/engines/pdbe.py:87
msgid "{title}&nbsp;(OBSOLETE)"
-msgstr ""
+msgstr "{title}&nbsp;(MALNOVA)"
#: searx/engines/pdbe.py:91
msgid "This entry has been superseded by"
-msgstr ""
+msgstr "Tiu ĉi enigo estis anstataŭigita per"
#: searx/engines/pubmed.py:74
msgid "No abstract is available for this publication."
-msgstr ""
+msgstr "Neniu resumo atingeblas por tiu ĉi eldonaĵo."
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
-msgstr "Reverki HTTP ligiloj HTTP se eble"
+msgstr "Ŝanĝi HTTP-ligilojn al HTTPS, se eblas"
#: searx/plugins/infinite_scroll.py:3
msgid "Infinite scroll"
@@ -157,17 +158,17 @@ msgstr "Senfina rulumado"
#: searx/plugins/infinite_scroll.py:4
msgid "Automatically load next page when scrolling to bottom of current page"
-msgstr "Aŭtomate ŝarĝi la sekvan paĝon kiam rulumante al la subo de la nuna paĝo"
+msgstr "Aŭtomate ŝarĝi sekvan paĝon rulumante al la subo de la nuna paĝo"
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "Malfermalira COI-ŝanĝo"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
"Avoid paywalls by redirecting to open-access versions of publications when "
"available"
-msgstr "Eviti pagomurojn alidirektante al liberaj versioj de eldonaĵoj kiam eblas"
+msgstr "Eviti pagomurojn per direkto al malfermaliraj versioj de eldonaĵoj, se eblas"
#: searx/plugins/open_results_on_new_tab.py:18
#: searx/templates/oscar/preferences.html:114
@@ -179,7 +180,7 @@ msgstr "Malfermi rezultligilojn en novaj retumilaj langetoj"
msgid ""
"Results are opened in the same window by default. This plugin overwrites the"
" default behaviour to open links on new tabs/windows. (JavaScript required)"
-msgstr "Oni malfermas rezultojn en la sama langeto defaŭlte. Ĉi tiu aldonaĵo ŝanĝas la kutima agmaniero por malfermi ligilojn en novaj langetoj/fenestroj. (ĜavaSkripto bezonata)"
+msgstr "Oni malfermas rezultojn en la sama langeto defaŭlte. Ĉi tiu aldonaĵo ŝanĝas la kutiman agmanieron por malfermi ligilojn en novaj langetoj/fenestroj. (ĜavoSkripto bezonata)"
#: searx/plugins/search_on_category_select.py:18
msgid "Search on category select"
@@ -189,7 +190,7 @@ msgstr "Serĉi en elektita kategorio"
msgid ""
"Perform search immediately if a category selected. Disable to select "
"multiple categories. (JavaScript required)"
-msgstr "Serĉi tuj se oni elektas kategorion. Malŝaltu ĝin por elekti plurajn kategoriojn (ĜavaSkripto bezonata)"
+msgstr "Serĉi tuj se oni elektas kategorion. Malŝaltu ĝin por elekti plurajn kategoriojn (ĜavoSkripto bezonata)"
#: searx/plugins/self_info.py:20
msgid ""
@@ -203,7 +204,7 @@ msgstr "Forigilo de URL-spuriloj"
#: searx/plugins/tracker_url_remover.py:27
msgid "Remove trackers arguments from the returned URL"
-msgstr "Forviŝi spuraj esprimoj de la URL"
+msgstr "Forviŝi spurajn argumentojn el la ricevita URL"
#: searx/plugins/vim_hotkeys.py:3
msgid "Vim-like hotkeys"
@@ -213,7 +214,7 @@ msgstr "Vim-ŝajnaj klavkomandoj"
msgid ""
"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
"\"h\" key on main or result page to get help."
-msgstr "Tranavigi serĉrezultojn per Vim-ŝajnaj klavkomandoj (ĜavaSkripto bezonata). Premu \"h\" por helptekstaro en rezultpaĝo."
+msgstr "Tranavigi serĉrezultojn per Vim-ŝajnaj klavkomandoj (ĜavoSkripto bezonata). Premu \"h\" por helptekstaro en ĉef- aŭ rezultpaĝo."
#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
@@ -242,7 +243,7 @@ msgstr "Serĉopaĝo"
#: searx/templates/oscar/preferences.html:3
#: searx/templates/pix-art/index.html:8
msgid "preferences"
-msgstr "preferoj"
+msgstr "agordoj"
#: searx/templates/courgette/index.html:11
#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
@@ -256,7 +257,7 @@ msgstr "pri"
#: searx/templates/pix-art/preferences.html:5
#: searx/templates/simple/preferences.html:26
msgid "Preferences"
-msgstr "Preferoj"
+msgstr "Agordoj"
#: searx/templates/courgette/preferences.html:9
#: searx/templates/legacy/preferences.html:9
@@ -282,7 +283,7 @@ msgstr "Serĉolingvo"
#: searx/templates/simple/languages.html:2
#: searx/templates/simple/preferences.html:42
msgid "Default language"
-msgstr ""
+msgstr "Defaŭlta lingvo"
#: searx/templates/courgette/preferences.html:24
#: searx/templates/legacy/preferences.html:25
@@ -400,7 +401,7 @@ msgstr "Ruĝa"
#: searx/templates/pix-art/preferences.html:49
#: searx/templates/simple/preferences.html:77
msgid "Currently used search engines"
-msgstr " Aktuale uzitajn serĉilojn"
+msgstr " Aktuale uzataj serĉiloj"
#: searx/templates/courgette/preferences.html:100
#: searx/templates/legacy/preferences.html:97
@@ -445,7 +446,7 @@ msgstr "Bloki"
msgid ""
"These settings are stored in your cookies, this allows us not to store this "
"data about you."
-msgstr "Tiuj agordoj estas konservitaj en viaj kuketoj kaj tio eblas, ke ni ne konservu tiujn datumojn pri vi."
+msgstr "Tiuj ĉi agordoj estas konservitaj en viaj kuketoj, kio ebligas al ni ne konservi tiujn datumojn pri vi en nia servilo."
#: searx/templates/courgette/preferences.html:124
#: searx/templates/legacy/preferences.html:121
@@ -478,7 +479,7 @@ msgstr "Reagordi al defaŭlto"
#: searx/templates/pix-art/preferences.html:79
#: searx/templates/simple/preferences.html:187
msgid "back"
-msgstr "antaŭe"
+msgstr "antaŭen"
#: searx/templates/courgette/results.html:12
#: searx/templates/legacy/results.html:13
@@ -492,7 +493,7 @@ msgstr "Serĉi URL"
#: searx/templates/oscar/results.html:141
#: searx/templates/simple/results.html:62
msgid "Download results"
-msgstr "Alŝutaj rezultoj"
+msgstr "Elŝuti rezultojn"
#: searx/templates/courgette/results.html:34
#: searx/templates/legacy/results.html:35
@@ -519,7 +520,7 @@ msgstr " antaŭa paĝo"
#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
#: searx/templates/simple/results.html:145
msgid "next page"
-msgstr " sekvanta paĝo"
+msgstr " sekva paĝo"
#: searx/templates/courgette/search.html:3
#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
@@ -615,11 +616,11 @@ msgstr "Fermi"
#: searx/templates/simple/messages/no_results.html:4
#: searx/templates/simple/results.html:25
msgid "Error!"
-msgstr ""
+msgstr "Eraro!"
#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
msgid "Powered by"
-msgstr "Funkciigita de"
+msgstr "Funkciigita per"
#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
msgid "a privacy-respecting, hackable metasearch engine"
@@ -628,15 +629,15 @@ msgstr "kodumebla metaserĉilo kiu respektas vian privatecon"
#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
#: searx/templates/simple/macros.html:43
msgid "proxied"
-msgstr ""
+msgstr "prokurata"
#: searx/templates/oscar/macros.html:92
msgid "supported"
-msgstr ""
+msgstr "subtenata"
#: searx/templates/oscar/macros.html:96
msgid "not supported"
-msgstr ""
+msgstr "nesubtenata"
#: searx/templates/oscar/preferences.html:13
#: searx/templates/oscar/preferences.html:22
@@ -658,7 +659,7 @@ msgstr "Aldonaĵoj"
#: searx/templates/oscar/preferences.html:16
#: searx/templates/oscar/preferences.html:245
msgid "Answerers"
-msgstr ""
+msgstr "Respondiloj"
#: searx/templates/oscar/preferences.html:17
#: searx/templates/oscar/preferences.html:272
@@ -673,7 +674,7 @@ msgstr "Kiun lingvon vi pli ŝatas por serĉi?"
#: searx/templates/oscar/preferences.html:48
#: searx/templates/simple/preferences.html:128
msgid "Change the language of the layout"
-msgstr "Ŝanĝi la fasonadan lingvon"
+msgstr "Ŝanĝi lingvon de la fasono"
#: searx/templates/oscar/preferences.html:58
#: searx/templates/simple/preferences.html:60
@@ -690,7 +691,7 @@ msgid ""
"Change how forms are submited, <a "
"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
" rel=\"external\">learn more about request methods</a>"
-msgstr " Ŝanĝi kiel formoj estas senditaj, < href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\"> Lerni pli pri peto-metodoj</> "
+msgstr "Ŝanĝi kiel formoj estas sendataj, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">sciu pli pri peto-metodoj</a> "
#: searx/templates/oscar/preferences.html:87
#: searx/templates/simple/preferences.html:71
@@ -700,7 +701,7 @@ msgstr "Filtri enhavon"
#: searx/templates/oscar/preferences.html:97
#: searx/templates/simple/preferences.html:139
msgid "Change searx layout"
-msgstr "Ŝanĝi searx-fasonadon"
+msgstr "Ŝanĝi fasonon de Searx"
#: searx/templates/oscar/preferences.html:106
#: searx/templates/oscar/preferences.html:111
@@ -714,13 +715,13 @@ msgstr "Stilo"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "Malfermalira COI-solvilo"
#: searx/templates/oscar/preferences.html:123
msgid ""
"Redirect to open-access versions of publications when available (plugin "
"required)"
-msgstr ""
+msgstr "Direkti al malfermaliraj versioj de eldonaĵoj, se eblas (aldonaĵo necesas)"
#: searx/templates/oscar/preferences.html:163
#: searx/templates/oscar/preferences.html:175
@@ -731,13 +732,13 @@ msgstr "Fulmoklavo"
#: searx/templates/oscar/preferences.html:164
#: searx/templates/oscar/preferences.html:174
msgid "Selected language"
-msgstr ""
+msgstr "Elekti lingvon"
#: searx/templates/oscar/preferences.html:166
#: searx/templates/oscar/preferences.html:172
#: searx/templates/simple/preferences.html:91
msgid "Time range"
-msgstr ""
+msgstr "Tempa intervalo"
#: searx/templates/oscar/preferences.html:167
#: searx/templates/oscar/preferences.html:171
@@ -753,29 +754,29 @@ msgstr "Maksimuma tempo"
#: searx/templates/oscar/preferences.html:248
msgid "This is the list of searx's instant answering modules."
-msgstr ""
+msgstr "Tio ĉi estas listo de tuje respondantaj moduloj de Searx."
#: searx/templates/oscar/preferences.html:252
msgid "Name"
-msgstr ""
+msgstr "Nomo"
#: searx/templates/oscar/preferences.html:253
msgid "Keywords"
-msgstr ""
+msgstr "Ŝlosilvortoj"
#: searx/templates/oscar/preferences.html:254
msgid "Description"
-msgstr ""
+msgstr "Priskribo"
#: searx/templates/oscar/preferences.html:255
msgid "Examples"
-msgstr ""
+msgstr "Ekzemploj"
#: searx/templates/oscar/preferences.html:275
msgid ""
"This is the list of cookies and their values searx is storing on your "
"computer."
-msgstr "Ĉi tiu estas la listo de kuketoj kaj siaj valoroj, kiujn searx konservas en via komputilo."
+msgstr "Ĉi tio estas listo de kuketoj kaj iliaj valoroj, kiujn searx konservas en via komputilo."
#: searx/templates/oscar/preferences.html:276
msgid "With that list, you can assess searx transparency."
@@ -791,13 +792,13 @@ msgstr "Valoro"
#: searx/templates/oscar/preferences.html:301
msgid "Search URL of the currently saved preferences"
-msgstr ""
+msgstr "Serĉo-URL kun aktuale konservitaj agordoj"
#: searx/templates/oscar/preferences.html:301
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr ""
+msgstr "Rimarko: Precizigo de propraj agordoj en la serĉo-URL povas malaltigi privatecon per nevola diskonigo de la datumoj al alklikantaj retejoj."
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -806,12 +807,12 @@ msgstr "Serĉrezultoj"
#: searx/templates/oscar/results.html:21
#: searx/templates/simple/results.html:84
msgid "Try searching for:"
-msgstr ""
+msgstr "Provu serĉi:"
#: searx/templates/oscar/results.html:100
#: searx/templates/simple/results.html:25
msgid "Engines cannot retrieve results"
-msgstr ""
+msgstr "Motoroj ne povas trovi rezultojn"
#: searx/templates/oscar/results.html:131
msgid "Links"
@@ -830,7 +831,7 @@ msgstr "statistikoj"
#: searx/templates/oscar/time-range.html:3
#: searx/templates/simple/time-range.html:3
msgid "Anytime"
-msgstr "Ie"
+msgstr "Iam ajn"
#: searx/templates/oscar/time-range.html:6
#: searx/templates/simple/time-range.html:6
@@ -850,7 +851,7 @@ msgstr "Pasinta monato"
#: searx/templates/oscar/time-range.html:15
#: searx/templates/simple/time-range.html:15
msgid "Last year"
-msgstr ""
+msgstr "Pasinta jaro"
#: searx/templates/oscar/messages/first_time.html:6
#: searx/templates/oscar/messages/no_data_available.html:3
@@ -859,7 +860,7 @@ msgstr "Atentu!"
#: searx/templates/oscar/messages/first_time.html:7
msgid "It look like you are using searx first time."
-msgstr "Ŝajnas, ke ĉi tiu estas via unua fojo uzante searx"
+msgstr "Ŝajnas, ke ĉi tio estas via unua fojo, kiam vi uzas searx."
#: searx/templates/oscar/messages/no_cookies.html:3
msgid "Information!"
@@ -867,7 +868,7 @@ msgstr "Informoj!"
#: searx/templates/oscar/messages/no_cookies.html:4
msgid "currently, there are no cookies defined."
-msgstr "ĉi-momente, ne estas kuketoj difinitaj."
+msgstr "nun ne estas ajnaj kuketoj difinitaj."
#: searx/templates/oscar/messages/no_data_available.html:4
msgid "There is currently no data available. "
@@ -876,17 +877,17 @@ msgstr "Nun ne estas datumoj disponeblaj."
#: searx/templates/oscar/messages/no_results.html:4
#: searx/templates/simple/messages/no_results.html:4
msgid "Engines cannot retrieve results."
-msgstr ""
+msgstr "Motoroj ne povas trovi rezultojn."
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr ""
+msgstr "Bonvolu provi ĝin poste aŭ trovi aliajn searx-instancon."
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
msgid "Sorry!"
-msgstr "Mizera!"
+msgstr "Pardonu!"
#: searx/templates/oscar/messages/no_results.html:15
#: searx/templates/simple/messages/no_results.html:15
@@ -952,7 +953,7 @@ msgstr "kaŝi detalojn"
#: searx/templates/oscar/result_templates/torrent.html:7
#: searx/templates/simple/result_templates/torrent.html:11
msgid "Filesize"
-msgstr "Dosiergrando"
+msgstr "Dosiergrandeco"
#: searx/templates/oscar/result_templates/torrent.html:9
#: searx/templates/simple/result_templates/torrent.html:12
@@ -1000,16 +1001,16 @@ msgstr "Ŝarĝi pli..."
#: searx/templates/simple/base.html:31
msgid "No item found"
-msgstr ""
+msgstr "Nenio trovita"
#: searx/templates/simple/preferences.html:89
msgid "Supports selected language"
-msgstr ""
+msgstr "Subtenas elektitan lingvon"
#: searx/templates/simple/preferences.html:118
msgid "User interface"
-msgstr ""
+msgstr "Fasado"
#: searx/templates/simple/preferences.html:154
msgid "Privacy"
-msgstr ""
+msgstr "Privateco"
diff --git a/searx/translations/eu/LC_MESSAGES/messages.po b/searx/translations/eu/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..b6fa194
--- /dev/null
+++ b/searx/translations/eu/LC_MESSAGES/messages.po
@@ -0,0 +1,1015 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# beriain <beriain@bitmessage.ch>, 2018
+# beriain <beriain@bitmessage.ch>, 2018
+# Txopi <txopi@ikusimakusi.eus>, 2016
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2018-11-06 16:39+0000\n"
+"Last-Translator: beriain <beriain@bitmessage.ch>\n"
+"Language-Team: Basque (http://www.transifex.com/asciimoo/searx/language/eu/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: eu\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "denbora agortzea"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr "salbuespena eskaeran"
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr "ustekabeko gelditzea"
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "fitxategiak"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "orokorra"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "musika"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "multimedia soziala"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "irudiak"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "bideoak"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "it"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "berriak"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "mapa"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "zientzia"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "Ezarpen ez baliodunak, mesedez editatu zure hobespenak"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "Ezarpen ez baliodunak"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "bilaketa akatsa"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "duela {minutes} minutu"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "duela {hours} ordu eta {minutes} minutu"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "Ausazko balio sortzailea"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "Ausazko balio ezberdinak sortu"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "Funtzio estatistikoak"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "Parametroen {functions} zenbatu"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "Bilatzailearen denbora (seg)"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "Orri kargak (seg)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "Emaitza kopurua"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "Balorazioak"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "Balorazioak emaitza bakoitzeko"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "Erroreak"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(ZAHARKITUA)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "Sarrera hau hurrengoarekin ordezkatu da"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr "Ez dago abstrakturik eskuragarri argitalpen honetarako."
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "HTTP loturak HTTPS bihurtu ahal denean"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "Korritze amaigabea"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "Hurrengo orria automatikoki kargatu uneko orriaren behekaldera mugitzerakoan"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr "Berridatzi Open Access DOI"
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "Ordainketa hormak sahiestu argitalpenen sartze-askeko bertsioetara berbidaliz ahal denean"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "Emaitzen estekak nabigatzailearen fitxa berrietan ireki"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "Emaitzak leiho berdinean irekitzen dira lehenetsi bezala. Plugin honek lehenetsitako jokabidea aldatzen du estekak fitxa/leiho berrietan irekitzeko. (JavaScript behar du)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "Bilatu kategoria hautatzerakoan"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "Bilaketa egin kategoria hautatu bezain laster. Ezgaitu ezazu hainbat kategoria hautatu ahal izateko. (JavaScript behar du)"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "Zure IPa erakutsi bilatutakoa \"ip\" bada eta zure user agenta bilatutakoa \"user agent\" bada."
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "URL aztarnariak kendu"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "Aztarnarien argumentuak kendu itzulitako URLtik"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "Vim antzeko laster-teklak"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "Emaitzetan zehar Vim bezalako tekla azkarrekin nabigatu (JavaScript behar du). Sakatu \"h\" tekla orri nagusian edo emaitzen orrian laguntza ikusteko."
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "Orria ez da aurkitu"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "%(search_page)s(e)ra joan."
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "bilaketa orria"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "hobespenak"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "honi buruz"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "Hobespenak"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "Lehenetsitako kategoriak"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "Bilaketaren hizkuntza"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "Lehenetsitako hizkuntza"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "Interfazearen hizkuntza"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "Osatze automatikoa"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "Irudietarako proxya"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "Gaituta"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "Desgaituta"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "Metodoa"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "Bilaketa segurua"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "Zorrotza"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "Moderatua"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "Bat ere ez"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "Itxurak"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "Kolorea"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "Urdina (lehenetsia)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "Bioleta"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "Berdea"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "Zian"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "Laranja"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "Gorria"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "Erabiliak izaten ari diren bilatzaileak"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "Bilatzailearen izena"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "Kategoria"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "Baimendu"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "Blokeatu"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "Ezarpen hauek zure cookietan gurdetzen dira, honek zuri buruzko informaziorik ez gordetzea baimentzen digu."
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "Cookie hauek zure onurarako besterik ez dira, ez ditugu zure jarraipenik egiteko erabiltzen."
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "gorde"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "Berrezarri lehenetsiak"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "atzera"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "Bilaketa URLa"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "Emaitzak deskargatu"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "Erantzunak"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "Iradokizunak"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "aurreko orrialdea"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "hurrengo orrialdea"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "Bilatu..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "Bilatzaileen estatistikak"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "jatorrizko testuingurua"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "Ereilea"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "Izaina"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "magnet lotura"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "torrent fitxategia"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "Lupan sakatu bilaketa egiteko"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "Emaitzak fitxa berrietan"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "Piztuta"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "Itzalita"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "cacheatuta"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "Ezarpen aurreratuak"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "Itxi"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "Errorea!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "Honek bultzatua"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "pribatutasun-errespetatzaile, metabilaketa motor hackeagarri bat"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "proxyatuta"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "onartua"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "ez onartua"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "Orokorra"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "Bilatzaileak"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "Pluginak"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "Erantzun emaileak"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Cookieak"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "Zein hizkuntzan egin nahi duzu bilaketa?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "Interfazearen hizkuntza aldatu"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "Gauzak aurkitu idatzi bitartean"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "Irudien emaitzak searx bitartez proxyatu"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "Aldatu inprimakiak nola bidaltzen diren, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">ikasi gehiago eskaera metodoen inguruan</a>"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "Edukia iragazi"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "Searxen diseinua aldatu"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "Gai honetarako estiloa hautatu"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "Estiloa"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr "Open Access DOI ebatzi"
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr "Argitalpenen sartze-askeko bertsioetara berbidali ahal denean (plugina behar du)"
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "Lasterbidea"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "Hautatutako hizkuntza"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "Denbora tartea"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr " Batezbesteko denbora"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "Gehienezko denbora"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "Hau da searxen berehalako erantzunen moduluen zerrenda."
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "Izena"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "Gako-hitzak"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "Deskripzioa"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "Adibideak"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "Hau searxek zure ordenagailuan gordetzen ari den cookien eta haien balioen zerrenda bat da."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "Zerrenda horrekin, searxen gardentasuna balioztatu dezakezu."
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Cookiearen izena"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "Balioa"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr "Une honetan gordetako hobespenen bilaketa URLa"
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr "Oharra: bilaketa URLan ezarpen pertsonalizatuak zehazteak pribatutasuna txikiagotu dezake klikatutako erantzun guneetara datuak emanez"
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "Bilaketaren emaitzak"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "Saiatu hau bilatzen:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "Bilatzaileek ezin dute emaitzik lortu"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "Estekak"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "Bilaketa hasi"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "estatistikak"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "Edonoiz"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "Azken eguna"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "Azken astea"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "Azken hilabetea"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "Azken urtea"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "Kasu!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "Searx lehen aldiz erabiltzen ari zarela ematen du."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "Informazioa!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "une honetan, ez dago cookierik definitutik."
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "Une honetan ez dago daturik eskuragarri."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "Bilatzaileek ezin dute emaitzik lortu."
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr "Mesedez, saiatu berriz beranduago edo bila ezazu beste searx instantzia bat."
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "Barkatu!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "ez dugu emaitzik aurkitu. Mesedez beste kontsulta bat egin edo bilatu kategoria gehiagotan."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "Ondo egina!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "Ezarpenak ongi gorde dira."
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "Hara!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "Zerbait gaizki joan da."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "media erakutsi"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "media ezkutatu"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "Irudia eskuratu"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "Iturria ikusi"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "mapa erakutsi"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "mapa ezkutatu"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "xehetasunak erakutsi"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "xehetasunak ezkutatu"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "Fitxategi neurria"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "Byteak"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "kiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "MiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "GiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "TiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "Fitxategi kopurua"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "erakutsi bideoa"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "ezkutatu bideoa"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "Kargatu gehiago..."
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "Ez da elementurik aurkitu"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "Hautatutako hizkuntza onartzen du"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "Erabiltzailearen interfazea"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "Pribatutasuna"
diff --git a/searx/translations/fa_IR/LC_MESSAGES/messages.po b/searx/translations/fa_IR/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..0e568e1
--- /dev/null
+++ b/searx/translations/fa_IR/LC_MESSAGES/messages.po
@@ -0,0 +1,1015 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# Aurora, 2018
+# Jim <inactive+Jim11@transifex.com>, 2017
+# Mostafa Ahangarha <ahangarha@gmail.com>, 2018
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2018-04-16 16:41+0000\n"
+"Last-Translator: Aurora\n"
+"Language-Team: Persian (Iran) (http://www.transifex.com/asciimoo/searx/language/fa_IR/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: fa_IR\n"
+"Plural-Forms: nplurals=2; plural=(n > 1);\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "پایان زمان<br>"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr "خطا در درخواست"
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr "ایست ناگهانی"
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "فایل ها<br>"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "فراگیر"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "موسیقی"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "رسانه اجتماعی"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "تصاویر<br>"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "ویدیو ها<br>"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "فناوری اطلاعات"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "اخبار"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "نقشه"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "دانش<br>"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "تنظیمات نادرست است، لطفا اولویت‌های جستجو را تغییر دهید"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "تنظیمات اشتباه"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "خطای جستجو"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "{minutes} دقیقه پیش"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "{hours} ساعت و {minutes} دقیقه پیش"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "ایجاد کننده ی مقدار تصادفی"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "ایجاد مقادیر تصادفی متفاوت"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "توابع آماری"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "پردازش {عملکرد های} نشانوند ها<br>"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "زمان موتور(ثانیه)<br>"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "زمان بارگذاری صفحه (ثانیه)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "تعداد نتایج"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "امتیازات<br>"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "امتیازات بر نتیجه<br>"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "خطاها"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(OBSOLETE)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "این ورودی معلق شده است توسط"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr "هیچ چکید ای برای این نشریه در دسترس نیست.<br>"
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "تغییر پیوند های HTTP به HTTPS در صورت امکان"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "پایین رفتن بی‌پایان"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "بارگذاری خودکار صفحه بعد در صورت پیمایش تا پایین صفحه کنونی"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr "بازنویسی Open Access DOI<br>"
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "امتناع از منابع غیر رایگان با تغییر مسیر به نسخه ی رایگان نشریات اگر در دسترس باشد<br>"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "باز کردن لینک های نتیجه در برگه‌ی جدید مرورگر"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "به طور پیش‌فرض، نتایج در پنجره ی کنونی باز می‌شوند. این افزونه، رفتار پیش‌فرض را برای بازشدن پیوند در پنجره/برگه جدید تغییر می‌دهد. (نیازمند جاوااسکریپت)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "جستجو به محض انتخاب یک دسته<br>"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "جستجو به محض انتخاب یک دسته. برای انتخاب چند دسته این گزینه را غیرفعال کنید. (نیازمند جاواسکریپت)<br>"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "اگر آی پی شما در صورت جستجو برای 'ip' و نشان دادن عامل کاربر در صورت جستجو برای 'user agent'.<br>"
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "از بین برنده ی آدرس ردیاب ها<br>"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "حذف نشانوند های ردیاب ها از آدرس برگشتی"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "کلیدهای میانبر شبیه Vim<br>"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "جابجایی در نتایج با کلیدهای میان‌بر مشابه Vim (نیازمند جاوااسکریپت). در صفحه اصلی و یا صفحه نتیجه، دکمه h را برای نمایش راهنما بفشارید."
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "صفحه پیدا نشد"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "برو به%(search_page)s."
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "صفحه جستجو<br>"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "تنظیمات<br>"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "درباره<br>"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "تنظیمات<br>"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "دسته‌بندی های پیش‌فرض"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "زبان جستجو"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "زبان پیش‌فرض"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "زبان رابط کاربری"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "تکمیل خودکار<br>"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "پراکسی تصویر<br>"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "فعال<br>"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "غیرفعال"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "روش<br>"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "جستجوی امن"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "سخت گیر<br>"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "متوسط<br>"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "هیچ<br>"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "تم ها<br>"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "رنگ"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "آبی (پیش‌فرض)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "بنفش"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "سبز<br>"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "فیروزه‌ای"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "نارنجی"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "قرمز"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "موتورهای جستجوی در حال استفاده"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "نام موتور"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "دسته"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "اجازه"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "انسداد<br>"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "این تنظیمات در کوکی های شما ذخیره شده اند، این به ما اجازه می دهد این اطلاعات را درباره شما ذخیره نکنیم.<br>"
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "این کوکی ها برای راحتی شماست، ما از این کوکی برای ردیابی شما استفاده نمیکنیم.<br>"
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "ذخیره"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "بازنشانی پیشفرض ها<br>"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "عقب<br>"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "آدرس جستجو<br>"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "نتایج دانلود<br>"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "پاسخ ها<br>"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "پیشنهادات"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "صفحه پیش"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "صفحه بعد"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "جستجو برای …"
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "آمار موتور<br>"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "متن اصلی<br>"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "سیدر<br>"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "لیچر<br>"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "لینک مگنت<br>"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "فایل تورنت<br>"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "برای اجرای جستجو روی ذره بین کلیک کنید<br>"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "نتایج در برگه جدید"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "روشن<br>"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "خاموش<br>"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "ذخیره شده<br>"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "تنظیمات پیشرفته<br>"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "بستن<br>"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "خطا!<br>"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "قدرت گرفته از<br>"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "یک ابر موتور جستجوی حافظ حریم شخصی"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "پراکسی شده<br>"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "پشتیبانی شده<br>"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "پشتیبانی نشده<br>"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "کلی<br>"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "موتور ها<br>"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "افزونه ها"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "پاسخگو ها<br>"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "کوکی ها<br>"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "چه زبانی را برای جستجو ترجیح می‌دهید؟"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "تغییر زبان رابط کاربری"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "یافتن مطالب حین نوشتن"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "پراکسی کردن نتایج تصویری از طریق searx<br>"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "چگونگی ثبت فرم ها را تغییر دهید، درباره ی متود های درخواست بیشتر بدانید"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "فیلتر کردن محتوا"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "رابط کاربری searx را تغییر دهید<br>"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "سبک این پوسته را انتخاب کنید"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "سبک"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr "حل کننده ی Open Access DOI<br>"
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr "هدایت به نسخه رایگان نشریات اگر در دسترس باشد(نیازمند به افزونه)<br>"
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "میانبر<br>"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "زبان انتخابی<br>"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "بازه ی زمانی<br>"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "زمان میانگین"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "حداکثر زمان"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "این، فهرست ماژول‌های پاسخ بلادرنگ searx است."
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "نام"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "کلیدواژه ها<br>"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "شرح<br>"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "مثال ها<br>"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "این، لیست کوکی‌ها و مقادیری است که searx روی دستگاه شما ذخیره می‌کند."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "با آن لیست، می‌توانید شفافیت searx را ارزیابی کنید."
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "نام کوکی<br>"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "مقدار<br>"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr "آدرس جستجو بر اساس تنظیمات ذخیره شده<br>"
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr "هشدار: تعیین تنظیمات شخصی در آدرس جستجو میتواند حریم شخصی شما را به خطر بیاندازد با درز کردن اطلاعات به سایت های نتایج انتخاب شده.<br>"
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "نتایج جستجو<br>"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "تلاش کنید برای جستجوی:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "موتور ها قادر به دریافت نتایج نیستند<br>"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "لینک ها<br>"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "شروع جستجو<br>"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "آمار<br>"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "هر زمانی<br>"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "روز گذشته"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "هفته گذشته"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "ماه گذشته"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "سال گذشته"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "بالاخره!<br>"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "به نظر می‌رسد اولین باری است که از searx استفاده می‌کنید."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "اطلاعات!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "در حال حاضر کوکی‌ای تعریف نشده است."
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "در حال حاضر هیچ داده‌ای در دسترس نیست."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "موتورها قادر به دریافت نتایج نیستند."
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr "لطفا بعدا دوباره تلاش کنید و یا به دنبال نمونه‌ای دیگری از searx بگردید."
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "ببخشید!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "چیزی پیدا نشد. لطفا جستار دیگری را امتحان و یا در دسته‌ های بیشتری جستجو کنید."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "آفرین!<br>"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "تنظیمات با موفقیت ذخیره شد!<br>"
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "ای وای! خراب شد!<br>"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "مشکلی رخ داد."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "نمایش رسانه<br>"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "پنهان سازی رسانه<br>"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "دریافت تصویر"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "نمایش منبع"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "نمایش نقشه"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "پنهان‌سازی نقشه"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "نمایش جزئیات"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "پنهان‌سازی جزئیات"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "اندازه فایل<br>"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "بایت"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "کیلوبایت"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "مگابایت"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "گیگابایت"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "ترابایت"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "تعداد فایل ها"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "نمایش ویدئو"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "پنهان‌سازی ویدئو"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "بیشتر…<br>"
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "چیزی پیدا نشد"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "زبان انتخاب شده را پشتیبانی می‌کند"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "رابط کاربری"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "حریم خصوصی"
diff --git a/searx/translations/fil/LC_MESSAGES/messages.po b/searx/translations/fil/LC_MESSAGES/messages.po
index 12337e0..4600619 100644
--- a/searx/translations/fil/LC_MESSAGES/messages.po
+++ b/searx/translations/fil/LC_MESSAGES/messages.po
@@ -3,15 +3,15 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
-# GR01D, 2018
-# GR01D, 2018
+# gr01d, 2018
+# gr01d, 2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
"PO-Revision-Date: 2018-02-18 04:45+0000\n"
-"Last-Translator: GR01D\n"
+"Last-Translator: gr01d\n"
"Language-Team: Filipino (http://www.transifex.com/asciimoo/searx/language/fil/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
diff --git a/searx/translations/fr/LC_MESSAGES/messages.po b/searx/translations/fr/LC_MESSAGES/messages.po
index 60c8038..4c076dd 100644
--- a/searx/translations/fr/LC_MESSAGES/messages.po
+++ b/searx/translations/fr/LC_MESSAGES/messages.po
@@ -3,7 +3,7 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
-# Alexandre Flament <alex@al-f.net>, 2017
+# Alexandre Flament <alex@al-f.net>, 2017-2018
# Benjamin Sonntag <benjamin@sonntag.fr>, 2014
# Cqoicebordel <david.barouh@wanadoo.fr>, 2014
# Cqoicebordel <david.barouh@wanadoo.fr>, 2014-2017
@@ -16,8 +16,8 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-03 12:00+0000\n"
-"Last-Translator: Cqoicebordel <david.barouh@wanadoo.fr>\n"
+"PO-Revision-Date: 2018-04-03 08:18+0000\n"
+"Last-Translator: Alexandre Flament <alex@al-f.net>\n"
"Language-Team: French (http://www.transifex.com/asciimoo/searx/language/fr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -84,7 +84,7 @@ msgstr "Paramètres non valides, veuillez éditer vos préférences"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr "Réglages non valides"
+msgstr "Paramètres non valides"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
@@ -100,7 +100,7 @@ msgstr "il y a {hours} heure(s), {minutes} minute(s)"
#: searx/answerers/random/answerer.py:53
msgid "Random value generator"
-msgstr "Générateur aléatoire"
+msgstr "Générateur de valeur aléatoire"
#: searx/answerers/random/answerer.py:54
msgid "Generate different random values"
@@ -138,7 +138,7 @@ msgstr "Score par résultat"
#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
msgid "Errors"
-msgstr "Erreurs"
+msgstr "Erreur"
#: searx/engines/pdbe.py:87
msgid "{title}&nbsp;(OBSOLETE)"
@@ -663,7 +663,7 @@ msgstr "Plugins"
#: searx/templates/oscar/preferences.html:16
#: searx/templates/oscar/preferences.html:245
msgid "Answerers"
-msgstr "Répondants"
+msgstr "Réponses instantanées"
#: searx/templates/oscar/preferences.html:17
#: searx/templates/oscar/preferences.html:272
diff --git a/searx/translations/gl/LC_MESSAGES/messages.po b/searx/translations/gl/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..3e1e223
--- /dev/null
+++ b/searx/translations/gl/LC_MESSAGES/messages.po
@@ -0,0 +1,1013 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# Xosé M. Lamas <correo@xmgz.eu>, 2018
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2018-04-20 11:00+0000\n"
+"Last-Translator: Xosé M. Lamas <correo@xmgz.eu>\n"
+"Language-Team: Galician (http://www.transifex.com/asciimoo/searx/language/gl/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: gl\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "caducidade"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr "excepción na petición"
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr "fallo non agardado"
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "ficheiros"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "xeral"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "música"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "Medios sociais"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "imaxes"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "vídeos"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "TIC"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "novas"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "mapa"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "ciencia"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "Axustes non válidos, por favor edite a configuración"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "Axustes non válidos"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "fallo na busca"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "hai {minutes} minuto(s)"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "hai {hours} hora(s), {minutes} minuto(s)"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "Xerador de valor aleatorio"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "Xerar diferentes valores aleatorios"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "Funcións de estatística"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "Calcule {functions} dos argumentos"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "Tempo de busca (sec)"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "Cargou en (seg)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "Número de resultados"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "Puntuacións"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "Puntuacións por resultado"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "Fallos"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(OBSOLETO)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "Esta entrada foi proporcionada por"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr "Non hai dispoñible un extracto para esta publicación."
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "Reescribir ligazóns HTTP a HTTPS si fose posible"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "Desplazamento infinito"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "Cargar automáticamente a seguinte páxina ao desplazarse ao fondo da páxina actual"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr "Reescritura Open Access DOI"
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "Evitar muros de pago redirecciionando a versións públicas das publicacións cando estén dispoñibles"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "Abrir ligazóns de resultados en novas lapelas do navegador"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "Por omisión, os resultados ábrense na mesma lapela. Este engadido sobreescribe o comportamento por omisión para abrir as ligazóns en novas lapelas/ventás. (Require JavaScript)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "Busca en categoría seleccionada"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "Busca ao momento si hai unha categoría seleccionada. Desactivar para seleccionar múltiples categorías. (Require JavaScript)"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "Mostra o seu IP si a consulta é \"ip\" e o seu Use Agent si a consulta contén \"user agent\"."
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "Eliminador de rastrexadores na URL"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "Elimina os argumentos de rastrexo da URL devolta"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "Atallos como os de Vim"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "Navegar nos resultados da busca con atallos como os de Vim (require JavaScript). Pulse \"h\" na pantalla principal ou de resultados para obter axuda."
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "Páxina non atopada"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "Ir a %(search_page)s"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "páxina de busca"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "axustes"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "Sobre"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "Axustes"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "Categorías por omisión"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "Idioma de busca"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "Idioma por omisión"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "Idioma da interface"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "Autocompletar"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "Proxy de imaxes"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "Activado"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "Desactivado"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "Método"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "Busca segura"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "Stricta"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "Moderada"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "Ningunha"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "Decorado"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "Cor"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "Azul (por omisión)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "Violeta"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "Verde"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "Cian"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "Laranxa"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "Vermello"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "Motores de busca utilizados actualmente"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "Nome do motor"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "Categoría"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "Permitir"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "Bloquear"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "Estos axustes gárdanse en testemuños, esto permítenos non ter que gardar ningún datos sobre vostede."
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "Estos testemuños son para a súa conveniencia, non utilizamos estos testemuños para rastrexala."
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "gardar"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "Restablecer"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "atrás"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "Busca URL"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "Descargar resultados"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "Respostas"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "Suxestións"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "páxina anterior"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "páxina seguinte"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "Buscar por..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "Estatísticas do buscador"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "contexto orixinal"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "Sementadora"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "Cliente"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "ligazón magnet"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "ficheiro torrent"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "Pulse na lupa para realizar a busca"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "Resultados en novas lapelas"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "On"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "Off"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "en memoria"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "Axustes avanzados"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "Pechar"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "Fallo!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "Proporcionado por"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "un metabuscador configurable e respetuoso coa intimidade"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "a través de proxy"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "soportado"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "non soportado"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "Xeral"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "Motores"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "Engadidos"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "Respostas"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Testemuños"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "Qué idioma prefire para buscar?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "Cambiar o idioma da disposición"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "Buscar nas cousas metras escribe"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "Utilizar o proxy de searx para as imaxes dos resultados"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "Cambiar cómo se envían os formularios, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">coñeza máis sobre os métodos de consulta</a>"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "Filtro de contido"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "Cambiar a disposición de searx"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "Escolla o estilo para este decorado"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "Estilo"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr "Resolutor Open Access DOI"
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr "Redireccionar a versións abertas das publicacións cando estén dispoñibles (require o engadido)"
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "Atallo"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "Idioma seleccionado"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "Rango temporal"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "Tempo medio"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "Tempo máx."
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "Este é o listado dos módulos de respostas instantáneas de searx"
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "Nome"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "Palabras chave"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "Descrición"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "Exemplos"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "Este é o listados dos testemuños e os seus valores que searx almacena na súa computadora."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "Con esta lista vostede pode comprobar a transparencia de searx."
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Nome do testemuño"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "Valor"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr "URL de busca dos axustes gardados actualmente."
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr "Nota: indicando axustes personalizados na URL de busca pode reducir a súa intimidade ao filtrar datos aos sitios web dos resultados."
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "Resultados da busca"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "Intente buscar:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "Os buscadores non obtiveron resultados"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "Ligazóns"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "Iniciar busca"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "estatísticas"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "Calquer momento"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "Último día"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "Última semana"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "Último mes"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "Último ano"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "Heads up!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "Semella que é a primeira vez que utiliza searx."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "Información!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "actualmente non hai testemuños establecidos."
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "Non hai datos dispoñibles."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "Os buscadores non poden obter resultados."
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr "Por favor, inténteo de novo máis tarde ou busque outra instancia de searx."
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "Sentímolo!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "non atopamos ningún resultado. Por favor, utilice outra consulta ou busque en máis categorías."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "Ben feito!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "Gardáronse correctamente os Axustes."
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "Vaia!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "Algo fallou."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "mostrar medios"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "agochar medios"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "Obter imaxe"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "Ver fonte"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "mostrar mapa"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "agochar mapa"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "mostrar detalles"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "agochar detalles"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "Tamaño do ficheiro"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "Bytes"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "kiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "MiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "GiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "TiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "Número de ficheiros"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "mostrar vídeo"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "agochar vídeo"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "Cargar máis..."
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "Non se atoparon elementos"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "Soporta o idioma seleccionado"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "Interface de usuaria"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "Intimidade"
diff --git a/searx/translations/it/LC_MESSAGES/messages.po b/searx/translations/it/LC_MESSAGES/messages.po
index b2db9b3..c2d5c85 100644
--- a/searx/translations/it/LC_MESSAGES/messages.po
+++ b/searx/translations/it/LC_MESSAGES/messages.po
@@ -5,18 +5,20 @@
# Translators:
# Adam Tauber <asciimoo@gmail.com>, 2018
# caoswave, 2016
-# caoswave, 2016-2017
+# caoswave, 2016-2018
# dp <d.pitrolo@gmx.com>, 2014
# dp <d.pitrolo@gmx.com>, 2014,2017
+# Federico <fedett@gmail.com>, 2018
# Luca C <mybusiness@yopmail.com>, 2017
# Luc <luc.absil2@gmail.com>, 2015
+# Random_R, 2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2018-02-01 22:21+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-10-16 15:53+0000\n"
+"Last-Translator: caoswave\n"
"Language-Team: Italian (http://www.transifex.com/asciimoo/searx/language/it/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -31,7 +33,7 @@ msgstr "tempo scaduto"
#: searx/search.py:144
msgid "request exception"
-msgstr ""
+msgstr "eccezione della richiesta"
#: searx/search.py:151
msgid "unexpected crash"
@@ -149,7 +151,7 @@ msgstr "Questa voce è stata sostituita da"
#: searx/engines/pubmed.py:74
msgid "No abstract is available for this publication."
-msgstr ""
+msgstr "Nessun sommario disponibile per questa pubblicazione"
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
@@ -199,7 +201,7 @@ msgstr "Esegui la ricerca immediatamente se una categoria è selezionata. Disabi
msgid ""
"Displays your IP if the query is \"ip\" and your user agent if the query "
"contains \"user agent\"."
-msgstr "Mostra il tuo IP se hai cercato \\\"ip\\\" ed il tuo user agent se hai cercato \\\"user agent\\\"."
+msgstr "Mostra il tuo IP se hai cercato \"ip\" ed il tuo user agent se hai cercato \"user agent\"."
#: searx/plugins/tracker_url_remover.py:26
msgid "Tracker URL remover"
@@ -217,7 +219,7 @@ msgstr "Scorciatoie in stile Vim"
msgid ""
"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
"\"h\" key on main or result page to get help."
-msgstr "Usa comandi in stile Vim per navigare tra i risultati (JavaScript necessario). Premi il tasto \\\"h\\\" per visualizzare la finestra d'aiuto."
+msgstr "Usa comandi in stile Vim per navigare tra i risultati (JavaScript necessario). Premi il tasto \"h\" per visualizzare la finestra d'aiuto."
#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
@@ -718,13 +720,13 @@ msgstr "Stile"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "Resolver Open Access DOI"
#: searx/templates/oscar/preferences.html:123
msgid ""
"Redirect to open-access versions of publications when available (plugin "
"required)"
-msgstr ""
+msgstr "Indirizza a versioni open-access delle pubblicazioni quando disponibili (plugin richiesto)"
#: searx/templates/oscar/preferences.html:163
#: searx/templates/oscar/preferences.html:175
@@ -795,13 +797,13 @@ msgstr "Valore"
#: searx/templates/oscar/preferences.html:301
msgid "Search URL of the currently saved preferences"
-msgstr ""
+msgstr "Cerca URL delle preferenze attualmente salvate"
#: searx/templates/oscar/preferences.html:301
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr ""
+msgstr "Nota: specificando impostazioni personalizzate nella ricerca URL può ridurre la privacy facendo traperlare dati ai siti cliccati"
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -815,7 +817,7 @@ msgstr "Prova a cercare:"
#: searx/templates/oscar/results.html:100
#: searx/templates/simple/results.html:25
msgid "Engines cannot retrieve results"
-msgstr ""
+msgstr "I motori di ricerca non riescono a recuperare risultati"
#: searx/templates/oscar/results.html:131
msgid "Links"
@@ -880,7 +882,7 @@ msgstr "Non ci sono dati attualmente disponibili."
#: searx/templates/oscar/messages/no_results.html:4
#: searx/templates/simple/messages/no_results.html:4
msgid "Engines cannot retrieve results."
-msgstr ""
+msgstr "I motori di ricerca non riescono a recuperare risultati"
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
diff --git a/searx/translations/ja/LC_MESSAGES/messages.po b/searx/translations/ja/LC_MESSAGES/messages.po
index 11a297c..24d2c35 100644
--- a/searx/translations/ja/LC_MESSAGES/messages.po
+++ b/searx/translations/ja/LC_MESSAGES/messages.po
@@ -3,11 +3,12 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
-# Akio Nishimura <akionux@gmail.com>, 2016-2017
+# Akio Nishimura <akionux@gmail.com>, 2016-2018
# Thomas Pointhuber, 2014-2015
# FIRST AUTHOR <EMAIL@ADDRESS>, 2014,2016
# Lucas Phillips <mail@lep.pw>, 2015
# Max <theshirinzu@gmail.com>, 2015
+# Nobuhiro Iwamatsu <iwamatsu@nigauri.org>, 2018
# pointhi, 2014
# Thomas Pointhuber, 2015-2016
msgid ""
@@ -15,8 +16,8 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-08-13 03:03+0000\n"
+"Last-Translator: Nobuhiro Iwamatsu <iwamatsu@nigauri.org>\n"
"Language-Team: Japanese (http://www.transifex.com/asciimoo/searx/language/ja/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -27,15 +28,15 @@ msgstr ""
#: searx/search.py:137 searx/search.py:182
msgid "timeout"
-msgstr ""
+msgstr "タイムアウト"
#: searx/search.py:144
msgid "request exception"
-msgstr ""
+msgstr "例外要求"
#: searx/search.py:151
msgid "unexpected crash"
-msgstr ""
+msgstr "予期しないクラッシュ"
#: searx/webapp.py:136
msgid "files"
@@ -83,7 +84,7 @@ msgstr "不正な設定です。設定を編集してください。"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr ""
+msgstr "不正な設定"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
@@ -149,11 +150,11 @@ msgstr "このエントリーの優先"
#: searx/engines/pubmed.py:74
msgid "No abstract is available for this publication."
-msgstr ""
+msgstr "この出版物には要約がありません。"
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
-msgstr "可能ならばHTTPリンクをHTTPSリンクに書き換える"
+msgstr "可能ならば HTTP リンクを HTTPS リンクに書き換える"
#: searx/plugins/infinite_scroll.py:3
msgid "Infinite scroll"
@@ -165,7 +166,7 @@ msgstr "現在のページの下端でスクロールすると自動的に次の
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "オープンアクセス DOI リライト"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
@@ -183,7 +184,7 @@ msgstr "検索結果のリンクを新しいタブで開く"
msgid ""
"Results are opened in the same window by default. This plugin overwrites the"
" default behaviour to open links on new tabs/windows. (JavaScript required)"
-msgstr "デフォルトでは結果は同じウィンドウで開きます。このプラグインはデフォルトの動作を書き換えて新しいタブ/ウィンドウで開くようにします。(JavaScriptが必要です)"
+msgstr "デフォルトでは結果は同じウィンドウで開きます。このプラグインはデフォルトの動作を書き換えて新しいタブ/ウィンドウで開くようにします。(JavaScript が必要です)"
#: searx/plugins/search_on_category_select.py:18
msgid "Search on category select"
@@ -193,37 +194,37 @@ msgstr "カテゴリ選択したら検索を実行"
msgid ""
"Perform search immediately if a category selected. Disable to select "
"multiple categories. (JavaScript required)"
-msgstr "カテゴリが選択されたときに検索を実行します。複数のカテゴリを選択する場合は無効にします。(JavaScriptが必要です)"
+msgstr "カテゴリが選択されたときに検索を実行します。複数のカテゴリを選択する場合は無効にします。(JavaScript が必要です)"
#: searx/plugins/self_info.py:20
msgid ""
"Displays your IP if the query is \"ip\" and your user agent if the query "
"contains \"user agent\"."
-msgstr "クエリが \"ip\" の場合にあなたのIPを、クエリに\"user agent\"が含まれる場合にあなたのユーザーエージェントを表示します。"
+msgstr "クエリが \"ip\" の場合にあなたのIPを、クエリに \"user agent\" が含まれる場合にあなたのユーザーエージェントを表示します。"
#: searx/plugins/tracker_url_remover.py:26
msgid "Tracker URL remover"
-msgstr "トラッカーURLリムーバー"
+msgstr "トラッカー URL リムーバー"
#: searx/plugins/tracker_url_remover.py:27
msgid "Remove trackers arguments from the returned URL"
-msgstr "返されたURLからトラッカー引数を消去します。"
+msgstr "返された URL からトラッカー引数を消去する"
#: searx/plugins/vim_hotkeys.py:3
msgid "Vim-like hotkeys"
-msgstr "Vim風のホットキー"
+msgstr "Vim 風のホットキー"
#: searx/plugins/vim_hotkeys.py:4
msgid ""
"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
"\"h\" key on main or result page to get help."
-msgstr "検索結果をVim風のホットキーで操作します(JavaScriptが必要)。メインページまたは検索結果ページで\"h\"キーを押してヘルプを表示します。"
+msgstr "検索結果をVim 風のホットキーで操作します(JavaScript が必要)。メインページまたは検索結果ページで \"h\" キーを押してヘルプを表示します。"
#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
#: searx/templates/simple/404.html:4
msgid "Page not found"
-msgstr "ページが見付かりません"
+msgstr "ページが見つかりません"
#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
@@ -315,14 +316,14 @@ msgstr "画像プロキシ"
#: searx/templates/oscar/preferences.html:72
#: searx/templates/simple/preferences.html:169
msgid "Enabled"
-msgstr "有効にする"
+msgstr "有効"
#: searx/templates/courgette/preferences.html:49
#: searx/templates/legacy/preferences.html:50
#: searx/templates/oscar/preferences.html:73
#: searx/templates/simple/preferences.html:170
msgid "Disabled"
-msgstr "使用不可能にする"
+msgstr "無効"
#: searx/templates/courgette/preferences.html:54
#: searx/templates/legacy/preferences.html:55
@@ -489,7 +490,7 @@ msgstr "戻る"
#: searx/templates/oscar/results.html:136
#: searx/templates/simple/results.html:58
msgid "Search URL"
-msgstr "URLを検索する"
+msgstr "URL を検索する"
#: searx/templates/courgette/results.html:16
#: searx/templates/legacy/results.html:17
@@ -623,7 +624,7 @@ msgstr "エラー!"
#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
msgid "Powered by"
-msgstr "提供:"
+msgstr "Powered by"
#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
msgid "a privacy-respecting, hackable metasearch engine"
@@ -636,11 +637,11 @@ msgstr "プロキシされている"
#: searx/templates/oscar/macros.html:92
msgid "supported"
-msgstr ""
+msgstr "サポート"
#: searx/templates/oscar/macros.html:96
msgid "not supported"
-msgstr ""
+msgstr "未サポート"
#: searx/templates/oscar/preferences.html:13
#: searx/templates/oscar/preferences.html:22
@@ -672,12 +673,12 @@ msgstr "クッキー"
#: searx/templates/oscar/preferences.html:42
#: searx/templates/simple/preferences.html:48
msgid "What language do you prefer for search?"
-msgstr "検索に使う言語はどれが良いですか?"
+msgstr "検索に使う言語はどれが良いですか?"
#: searx/templates/oscar/preferences.html:48
#: searx/templates/simple/preferences.html:128
msgid "Change the language of the layout"
-msgstr "表示する言語を変更できます"
+msgstr "表示する言語を変更"
#: searx/templates/oscar/preferences.html:58
#: searx/templates/simple/preferences.html:60
@@ -687,7 +688,7 @@ msgstr "入力補助に使う検索エンジン"
#: searx/templates/oscar/preferences.html:69
#: searx/templates/simple/preferences.html:173
msgid "Proxying image results through searx"
-msgstr "画像検索結果をsearxでプロキシする"
+msgstr "画像検索結果を searx でプロキシする"
#: searx/templates/oscar/preferences.html:78
msgid ""
@@ -704,7 +705,7 @@ msgstr "コンテンツをフィルタリングする"
#: searx/templates/oscar/preferences.html:97
#: searx/templates/simple/preferences.html:139
msgid "Change searx layout"
-msgstr "searxのレイアウトの変更"
+msgstr "Searx のレイアウトの変更"
#: searx/templates/oscar/preferences.html:106
#: searx/templates/oscar/preferences.html:111
@@ -718,13 +719,13 @@ msgstr "スタイル"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "オープンアクセス DOI リゾルバー"
#: searx/templates/oscar/preferences.html:123
msgid ""
"Redirect to open-access versions of publications when available (plugin "
"required)"
-msgstr ""
+msgstr "利用可能な場合(プラグインが必要)、オープンアクセス版の出版物にリダイレクトする"
#: searx/templates/oscar/preferences.html:163
#: searx/templates/oscar/preferences.html:175
@@ -735,7 +736,7 @@ msgstr "ショートカット"
#: searx/templates/oscar/preferences.html:164
#: searx/templates/oscar/preferences.html:174
msgid "Selected language"
-msgstr ""
+msgstr "選択された言語"
#: searx/templates/oscar/preferences.html:166
#: searx/templates/oscar/preferences.html:172
@@ -757,7 +758,7 @@ msgstr "最大時間"
#: searx/templates/oscar/preferences.html:248
msgid "This is the list of searx's instant answering modules."
-msgstr "これはsearxの即席回答モジュールのリストです。"
+msgstr "これは searx の即席回答モジュールのリストです。"
#: searx/templates/oscar/preferences.html:252
msgid "Name"
@@ -783,7 +784,7 @@ msgstr "これはクッキーのリストで、これらの値はあなたのコ
#: searx/templates/oscar/preferences.html:276
msgid "With that list, you can assess searx transparency."
-msgstr "このリストによって、あなたはsearxの透明性を評価できます。"
+msgstr "このリストによって、あなたは searx の透明性を評価できます。"
#: searx/templates/oscar/preferences.html:281
msgid "Cookie name"
@@ -795,13 +796,13 @@ msgstr "値"
#: searx/templates/oscar/preferences.html:301
msgid "Search URL of the currently saved preferences"
-msgstr ""
+msgstr "現在保存されている設定の検索 URL"
#: searx/templates/oscar/preferences.html:301
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr ""
+msgstr "注意: 検索 URL にカスタム設定を指定すると、クリックした結果サイトにデータが漏洩し、プライバシーが低下する恐れがあります。"
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -810,12 +811,12 @@ msgstr "検索結果"
#: searx/templates/oscar/results.html:21
#: searx/templates/simple/results.html:84
msgid "Try searching for:"
-msgstr ""
+msgstr "検索:"
#: searx/templates/oscar/results.html:100
#: searx/templates/simple/results.html:25
msgid "Engines cannot retrieve results"
-msgstr ""
+msgstr "エンジンは結果を取得できません"
#: searx/templates/oscar/results.html:131
msgid "Links"
@@ -859,15 +860,15 @@ msgstr "去年"
#: searx/templates/oscar/messages/first_time.html:6
#: searx/templates/oscar/messages/no_data_available.html:3
msgid "Heads up!"
-msgstr "お知らせ"
+msgstr "気をつけて!"
#: searx/templates/oscar/messages/first_time.html:7
msgid "It look like you are using searx first time."
-msgstr "searxを使うのは初めてようですね。"
+msgstr "Searxを使うのは初めてようですね。"
#: searx/templates/oscar/messages/no_cookies.html:3
msgid "Information!"
-msgstr "お知らせ"
+msgstr "お知らせ!"
#: searx/templates/oscar/messages/no_cookies.html:4
msgid "currently, there are no cookies defined."
@@ -880,12 +881,12 @@ msgstr "現在データがありません。"
#: searx/templates/oscar/messages/no_results.html:4
#: searx/templates/simple/messages/no_results.html:4
msgid "Engines cannot retrieve results."
-msgstr ""
+msgstr "エンジンは結果を取得できません。"
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr ""
+msgstr "後でやり直すか、別の searx インスタンスを探して下さい。"
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
@@ -901,7 +902,7 @@ msgstr "検索結果はありませんでした。別カテゴリで、他のク
#: searx/templates/oscar/messages/save_settings_successfull.html:7
msgid "Well done!"
-msgstr "あっぱれ。"
+msgstr "あっぱれ!"
#: searx/templates/oscar/messages/save_settings_successfull.html:8
msgid "Settings saved successfully."
@@ -909,7 +910,7 @@ msgstr "設定の保存に成功しました。"
#: searx/templates/oscar/messages/unknow_error.html:7
msgid "Oh snap!"
-msgstr "ちぇっ"
+msgstr "ちぇっ!"
#: searx/templates/oscar/messages/unknow_error.html:8
msgid "Something went wrong."
@@ -956,7 +957,7 @@ msgstr "詳細を隠す"
#: searx/templates/oscar/result_templates/torrent.html:7
#: searx/templates/simple/result_templates/torrent.html:11
msgid "Filesize"
-msgstr "ファイル・サイズ"
+msgstr "ファイルサイズ"
#: searx/templates/oscar/result_templates/torrent.html:9
#: searx/templates/simple/result_templates/torrent.html:12
@@ -1004,16 +1005,16 @@ msgstr "もっと見る…"
#: searx/templates/simple/base.html:31
msgid "No item found"
-msgstr ""
+msgstr "アイテムが見つかりません"
#: searx/templates/simple/preferences.html:89
msgid "Supports selected language"
-msgstr "選択している言語のサポート"
+msgstr "選択された言語のサポート"
#: searx/templates/simple/preferences.html:118
msgid "User interface"
-msgstr ""
+msgstr "ユーザーインターフェース"
#: searx/templates/simple/preferences.html:154
msgid "Privacy"
-msgstr ""
+msgstr "プライバシー"
diff --git a/searx/translations/nl/LC_MESSAGES/messages.po b/searx/translations/nl/LC_MESSAGES/messages.po
index 1fc8700..b4e0614 100644
--- a/searx/translations/nl/LC_MESSAGES/messages.po
+++ b/searx/translations/nl/LC_MESSAGES/messages.po
@@ -3,7 +3,7 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
-# André Koot <meneer@tken.net>, 2014-2017
+# André Koot <meneer@tken.net>, 2014-2018
# Nathan Follens, 2015-2018
# Rejo Zenger <rejo@zenger.nl>, 2016-2017
msgid ""
@@ -11,8 +11,8 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2018-02-15 22:43+0000\n"
-"Last-Translator: Nathan Follens\n"
+"PO-Revision-Date: 2018-09-22 06:46+0000\n"
+"Last-Translator: André Koot <meneer@tken.net>\n"
"Language-Team: Dutch (http://www.transifex.com/asciimoo/searx/language/nl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -835,7 +835,7 @@ msgstr "Altijd"
#: searx/templates/oscar/time-range.html:6
#: searx/templates/simple/time-range.html:6
msgid "Last day"
-msgstr "Voorbije dag"
+msgstr "Gisteren"
#: searx/templates/oscar/time-range.html:9
#: searx/templates/simple/time-range.html:9
@@ -881,7 +881,7 @@ msgstr "Zoekmachines konden geen resultaten ophalen."
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr "Probeer het later opnieuw, of gebruik een andere instantie van searx."
+msgstr "Probeer het later opnieuw, of gebruik een andere searx server."
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
diff --git a/searx/translations/nl_BE/LC_MESSAGES/messages.po b/searx/translations/nl_BE/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..c4ef022
--- /dev/null
+++ b/searx/translations/nl_BE/LC_MESSAGES/messages.po
@@ -0,0 +1,1013 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# Nathan Follens, 2018
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2018-06-24 07:59+0000\n"
+"Last-Translator: Nathan Follens\n"
+"Language-Team: Dutch (Belgium) (http://www.transifex.com/asciimoo/searx/language/nl_BE/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: nl_BE\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "time-out"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr "aanvraaguitzondering"
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr "onverwachte crash"
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "bestanden"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "algemeen"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "muziek"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "sociale media"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "afbeeldingen"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "video’s"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "IT"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "nieuws"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "kaart"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "wetenschap"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "Ongeldige instellingen, werkt uw voorkeuren bij"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "Ongeldige instellingen"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "zoekfout"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "{minutes} min geleden"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "{hours} uur, {minutes} min geleden"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "Willekeurigewaardegenerator"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "Genereert verschillende willekeurige waarden"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "Statistische functies"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "Berekent {functions} van de argumenten"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "Snelheid zoekmachien (sec)"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "Laden van pagina’s (sec)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "Aantal zoekresultaten"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "Scores"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "Scores per zoekresultaat"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "Fouten"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(VEROUDERD)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "Dit object is vervangen door"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr "Voor deze publicatie is geen abstract beschikbaar."
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "Herschrijft HTTP-koppelingen naar HTTPS, indien mogelijk"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "Oneindig scrollen"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "Volgende pagina automatisch laden bij bereiken van den onderkant van de huidige pagina"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr "Open Access DOI herschrijven"
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "Omzeilt betaalmuren met een doorverwijzing naar vrij toegankelijke versies van publicaties indien beschikbaar"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "Koppelingen openen in nieuwe tabbladen"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "Resultaten worden standaard in hetzelfde venster geopend. Deze plug-in overschrijft het standaardgedrag zodat koppelingen in nieuwe tabbladen/vensters worden geopend. (JavaScript vereist)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "Zoeken bij selecteren van categorie"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "Zoekopdracht onmiddellijk uitvoeren wanneer dat een categorie wordt geselecteerd. Zet dit uit voor meerdere categorieën te selecteren. (JavaScript vereist)"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "Geeft uw IP-adres weer als de zoekopdracht ‘ip’ is, en uwe gebruikersagent als de zoekopdracht ‘user agent’ bevat."
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "Tracker-URL-verwijderaar"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "Verwijdert trackerargumenten van de gekregen URL"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "Sneltoetsen gelijk in Vim"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "Bladert door zoekresultaten met sneltoetsen gelijk die in Vim (JavaScript vereist). Drukt op ‘h’ op de hoofdpagina of de pagina met resultaten voor hulp."
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "Pagina niet gevonden"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "Ga naar %(search_page)s."
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "zoekpagina"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "voorkeuren"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "over"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "Voorkeuren"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "Standaardcategorieën"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "Zoektaal"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "Standaardtaal"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "Interfacetaal"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "Auto-aanvullen"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "Afbeeldingsproxy"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "Ingeschakeld"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "Uitgeschakeld"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "Methode"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "SafeSearch"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "Strikt"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "Gemiddeld"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "Geen"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "Thema’s"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "Kleur"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "Blauw (standaard)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "Paars"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "Groen"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "Appelblauwzeegroen"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "Oranje"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "Rood"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "Momenteel gebruikte zoekmachienen"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "Naam zoekmachien"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "Categorie"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "Toestaan"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "Blokkeren"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "Deze instellingen worden bewaard in uw cookies. Hierdoor hoeven wij niks over u te bewaren."
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "Deze cookies zijn alleen voor uw eigen gemak, we gebruiken deze cookies niet voor u te volgen."
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "opslaan"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "Standaardinstellingen herstellen"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "terug"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "Zoek-URL"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "Zoekresultaten downloaden"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "Antwoorden"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "Suggesties"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "vorige pagina"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "volgende pagina"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "Zoeken naar..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "Zoekmachienstatistieken"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "oorspronkelijke context"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "Seeders"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "Leechers"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "magneetkoppeling"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "torrentbestand"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "Klikt op het vergrootglas voor te zoeken"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "Resultaten op nieuwe tabbladen"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "Aan"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "Uit"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "gecachet"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "Geavanceerde instellingen"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "Sluiten"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "Fout!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "Aangedreven door"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "een privacyrespecterend, aanpasbaar metazoekmachien"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "geproxyt"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "ondersteund"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "niet ondersteund"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "Algemeen"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "Zoekmachienen"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "Plug-ins"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "Beantwoorders"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Cookies"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "Welke taal wilt ge gebruiken voor het zoeken?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "Wijzigt de taal van den opmaak"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "Zoekt tijdens het typen"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "Afbeeldingsresultaten via searx laden"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "Bepaalt hoe dat de formulieren worden ingestuurd, <a href=\"http://nl.wikipedia.org/wiki/Hypertext_Transfer_Protocol#HTTP-requests\" rel=\"external\">leest meer over opvraagmethodes</a>"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "Filteren op inhoud"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "Opmaak van searx aanpassen"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "Kiest ne stijl voor dit thema"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "Stijl"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr "Open Access DOI herschrijven"
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr "Doorverwijzen naar vrij toegankelijke versies van publicaties, indien beschikbaar (plug-in vereist)"
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "Snelkoppeling"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "Geselecteerde taal"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "Tijdspanne"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "Gem. duur"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "Max. duur"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "Dit is het overzicht van de instantantwoordmodules van searx."
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "Naam"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "Kernwoorden"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "Beschrijving"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "Voorbeelden"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "Dit is de lijst van cookies en hun waarden die searx op uwe computer opslaat."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "Met deze lijst kunt ge de openheid van searx beoordelen."
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Cookienaam"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "Waarde"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr "Zoek-URL van de momenteel opgeslagen voorkeuren"
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr "Let op: aangepaste instellingen opgeven in de zoek-URL kan nadelig zijn voor uw privacy, omdat het gegevens lekt aan de aangeklikte resultaatwebsites."
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "Zoekresultaten"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "Probeert te zoeken naar:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "Zoekmachienen konden geen resultaten ophalen"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "Koppelingen"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "Start zoeken"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "stats"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "Altijd"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "Voorbijen dag"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "Voorbije week"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "Voorbije maand"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "Voorbije jaar"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "Opgelet!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "Het lijkt erop dat ge searx voor den eerste keer gebruikt."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "Informatie!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "der zijn momenteel geen cookies gedefinieerd."
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "Der zijn momenteel geen gegevens beschikbaar."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "Zoekmachinen konden geen resultaten ophalen."
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr "Probeert het later opnieuw, of gebruikt een andere instantie van searx."
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "Sorry!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "We konden geen resultaten vinden. Probeert nen andere zoekopdracht, of zoekt in meer categorieën."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "Goed gedaan!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "Instellingen opgeslagen."
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "Oeps!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "Der is iets misgegaan."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "media tonen"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "media verbergen"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "Afbeelding tonen"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "Bron bekijken"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "kaart tonen"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "kaart verbergen"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "details tonen"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "details verbergen"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "Bestandsgrootte"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "Bytes"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "kiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "MiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "GiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "TiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "Aantal bestanden"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "video tonen"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "video verbergen"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "Meer laden…"
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "Geen resultaat gevonden"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "Ondersteunt geselecteerde taal"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "Gebruikersinterface"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "Privacy"
diff --git a/searx/translations/pl/LC_MESSAGES/messages.po b/searx/translations/pl/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..d0521ed
--- /dev/null
+++ b/searx/translations/pl/LC_MESSAGES/messages.po
@@ -0,0 +1,1014 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# Artur <artur@komoter.pl>, 2017
+# Artur <artur@komoter.pl>, 2017
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2017-11-20 13:39+0000\n"
+"Last-Translator: Artur <artur@komoter.pl>\n"
+"Language-Team: Polish (Poland) (http://www.transifex.com/asciimoo/searx/language/pl_PL/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: pl_PL\n"
+"Plural-Forms: nplurals=4; plural=(n==1 ? 0 : (n%10>=2 && n%10<=4) && (n%100<12 || n%100>14) ? 1 : n!=1 && (n%10>=0 && n%10<=1) || (n%10>=5 && n%10<=9) || (n%100>=12 && n%100<=14) ? 2 : 3);\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "przekroczenie maksymalnego dozwolonego czasu"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr "wyjątek w żądaniu"
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr "niespodziewana awaria"
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "pliki"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "ogólne"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "muzyka"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "media społecznościowe"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "zdjęcia"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "wideo"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "informatyka"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "wiadomości"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "mapa"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "nauka"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "Nieprawidłowe ustawienia, proszę zmienić swoje preferencje"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "Nieprawidłowe ustawienia"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "błąd wyszukiwania"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "{minutes} minut(y) temu"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "{hours} godzin(y), {minutes} minut(y) temu"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "Generator wartości losowych"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "Wygeneruj różne wartości losowe"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "Funkcje statystyczne"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "Oblicz {functions} argumentów"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "Czas wyszukiwania (sek)"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "Ładowanie strony (sek)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "Liczba wyników"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "Wyniki"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "Wyniki na rezultat"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "Błędy"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(PRZESTARZAŁE)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "Ten wpis został zastąpiony przez"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr "Streszczenie nie jest dostępne dla tej publikacji."
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "Nadpisuj hiperłącza HTTP na HTTPS, jeśli to możliwe"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "Nieskończone przewijanie"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "Automatycznie ładuj następną stronę podczas przewijania do dolnej części bieżącej strony"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr "Nadpisywanie DOI z otwartym dostępem"
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "Unikaj opłat za dostęp, przekierowując do otwartych wersji publikacji, gdy są dostępne"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "Otwórz hiperłącza wyników w nowych kartach przeglądarki"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "Wyniki są domyślnie otwierane w tym samym oknie. Ta wtyczka zastępuje domyślne zachowanie w celu otwarcia hiperłączy w nowych kartach/oknach. (Wymagany Javascript)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "Szukaj po wybraniu kategorii"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "Wykonaj wyszukiwanie natychmiast po wybraniu kategorii. Wyłącz, aby wybrać wiele kategorii. (Wymagany Javascript)"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "Wyświetla Twój adres IP, jeśli zapytanie to \"ip\", i Twojego agenta użytkownika, jeśli zapytanie zawiera \"user agent\"."
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "Usuwanie elementów śledzących z URL-ów"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "Usuń argumenty elementów śledzących ze zwróconego adresu URL"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "Skróty podobne do Vima"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "Poruszaj się po wynikach wyszukiwania za pomocą skrótów podobnych do Vima (wymagany Javascript). Naciśnij klawisz \"h\" na stronie głównej lub stronie wyników, aby uzyskać pomoc."
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "Strona nie znaleziona"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "Przejdź do %(search_page)s."
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "strona wyszukiwania"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "preferencje"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "O searx"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "Preferencje"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "Domyślne kategorie"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "Język wyszukiwania"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "Domyślny język"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "Język interfejsu"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "Autouzupełnienie"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "Proxy zdjęć"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "Włączone"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "Wyłączone"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "Metoda"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "Bezpieczne wyszukiwanie"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "Bezkompromisowe"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "Umiarkowane"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "Wyłączone"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "Motywy"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "Kolor"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "Niebieski (domyślny)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "Fioletowy"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "Zielony"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "Turkusowy"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "Pomarańczowy"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "Czerwony"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "Obecnie używane wyszukiwarki"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "Nazwa wyszukiwarki"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "Kategoria"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "Pozwól"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "Blokuj"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "Ustawienia te są przechowywane w ciasteczkach, co pozwala nam nie przechowywać tych danych o Tobie."
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "Te ciasteczka służą wyłącznie Twojej wygodzie, nie używamy tych ciasteczek do śledzenia Ciebie."
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "zapisz"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "Przywróć domyślne"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "z powrotem"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "URL wyszukiwania"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "Ściągnij wyniki"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "Odpowiedzi"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "Propozycje"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "poprzednia strona"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "następna strona"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "Wyszukaj..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "Statystyki wyszukiwarki"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "oryginalny kontekst"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "Udostępniający"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "Pobierający"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "hiperłącze magnetyczne"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "plik torrent"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "Kliknij na szkło powiększające, aby wykonać wyszukiwanie"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "Wyniki w nowych kartach"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "Włączone"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "Wyłączone"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "buforowane"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "Zaawansowane ustawienia"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "Zamknij"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "Błąd!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "Obsługiwane przez"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "szanująca prywatność, hackowalna wyszukiwarka metasearch"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "przesłane poprzez proxy"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "wspierane"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "niewspierane"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "Ogólne"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "Wyszukiwarki"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "Wtyczki"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "Respondenci"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Ciasteczka"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "W jakim języku wolisz wyszukiwać?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "Zmień język układu"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "Szukaj podczas pisania"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "Przesyłanie wyników obrazów poprzez proxy searx"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "Zmień sposób przesyłania formularzy, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">dowiedz się więcej o metodach HTTP</a>"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "Filtruj treści"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "Zmień układ searx"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "Wybierz styl dla tego motywu"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "Styl"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr "Podsystem DOI z otwartym dostępem"
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr "Przekierowanie do otwartych wersji publikacji, gdy są dostępne (wymagana wtyczka)"
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "Skrót"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "Wybrany język"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "Zakres czasu"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "Śr. czas"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "Maksymalny czas"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "Oto lista modułów natychmiastowych odpowiedzi w searx."
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "Nazwa"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "Słowa kluczowe"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "Opis"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "Przykłady"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "Oto lista ciasteczek i ich wartości, które searx zapisuje na Twoim komputerze."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "Za pomocą tej listy możesz ocenić przezroczystość searx."
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Nazwa ciasteczka"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "Wartość"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr "Wyszukaj adres URL aktualnie zapisanych preferencji"
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr "Uwaga: określanie ustawień niestandardowych w adresie URL wyszukiwania może zmniejszyć prywatność, przenosząc dane do klikniętych stron z wyników."
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "Wyniki wyszukiwania"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "Spróbuj wyszukać:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "Wyszukiwarki nie mogą pobrać wyników"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "Hiperłącza"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "Rozpocznij wyszukiwanie"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "statystyki"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "W każdej chwili"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "W ostatnim dniu"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "W ostatnim tygodniu"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "W ostatnim miesiącu"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "W ostatnim roku"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "Moment!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "Wygląda na to, że po raz pierwszy używasz searx."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "Informacja!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "obecnie nie zdefiniowano żadnych ciasteczek."
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "Obecnie nie ma dostępnych danych."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "Wyszukiwarki nie mogą pobrać wyników."
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr "Spróbuj ponownie później lub znajdź inną instancję searx."
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "Przepraszamy!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "nie znaleźliśmy żadnych wyników. Użyj innego zapytania lub wyszukaj więcej kategorii."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "Dobra robota!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "Ustawienia zostały pomyślnie zapisane."
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "O rany!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "Coś poszło nie tak."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "pokaż media"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "ukryj media"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "Pobierz obraz"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "Pokaż źródło"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "pokaż mapę"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "ukryj mapę"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "pokaż szczegóły"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "ukryj szczegóły"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "Rozmiar pliku"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "Bajtów"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "KiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "MiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "GiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "TiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "Liczba plików"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "pokaż wideo"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "ukryj wideo"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "Załaduj więcej..."
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "Nie znaleziono elementu"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "Obsługuje wybrany język"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "Interfejs użytkownika"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "Prywatność"
diff --git a/searx/translations/pt/LC_MESSAGES/messages.po b/searx/translations/pt/LC_MESSAGES/messages.po
index 81ac6f5..d844673 100644
--- a/searx/translations/pt/LC_MESSAGES/messages.po
+++ b/searx/translations/pt/LC_MESSAGES/messages.po
@@ -4,13 +4,14 @@
#
# Translators:
# Dickprince, 2017
+# Chacal Exodius, 2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-12-26 22:43+0000\n"
+"Last-Translator: Chacal Exodius\n"
"Language-Team: Portuguese (http://www.transifex.com/asciimoo/searx/language/pt/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -21,15 +22,15 @@ msgstr ""
#: searx/search.py:137 searx/search.py:182
msgid "timeout"
-msgstr ""
+msgstr "tempo esgotado"
#: searx/search.py:144
msgid "request exception"
-msgstr ""
+msgstr "solicitar exceção"
#: searx/search.py:151
msgid "unexpected crash"
-msgstr ""
+msgstr "acidente inesperado"
#: searx/webapp.py:136
msgid "files"
@@ -77,7 +78,7 @@ msgstr "Definições inválidas, por favor edite as suas preferências"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr ""
+msgstr "Configurações inválidas"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
@@ -143,7 +144,7 @@ msgstr "Esta entrada foi substituída por"
#: searx/engines/pubmed.py:74
msgid "No abstract is available for this publication."
-msgstr ""
+msgstr "Nenhum resumo está disponível para esta publicação."
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
@@ -159,7 +160,7 @@ msgstr "Carregar automaticamente a próxima página assim que se desloque para o
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "Reescrita DOI de acesso aberto"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
@@ -461,7 +462,7 @@ msgstr "Estes cookies servem somente para sua conveniência, não os utilizamos
#: searx/templates/pix-art/preferences.html:78
#: searx/templates/simple/preferences.html:185
msgid "save"
-msgstr "guardar"
+msgstr "Guardar"
#: searx/templates/courgette/preferences.html:128
#: searx/templates/legacy/preferences.html:125
@@ -476,7 +477,7 @@ msgstr "Repor predefinições"
#: searx/templates/pix-art/preferences.html:79
#: searx/templates/simple/preferences.html:187
msgid "back"
-msgstr "atrás"
+msgstr "Atrás"
#: searx/templates/courgette/results.html:12
#: searx/templates/legacy/results.html:13
@@ -630,11 +631,11 @@ msgstr "via proxy"
#: searx/templates/oscar/macros.html:92
msgid "supported"
-msgstr ""
+msgstr "suportado"
#: searx/templates/oscar/macros.html:96
msgid "not supported"
-msgstr ""
+msgstr "não suportado"
#: searx/templates/oscar/preferences.html:13
#: searx/templates/oscar/preferences.html:22
@@ -712,13 +713,13 @@ msgstr "Estilo"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "Resolvedor DOI de Acesso Aberto"
#: searx/templates/oscar/preferences.html:123
msgid ""
"Redirect to open-access versions of publications when available (plugin "
"required)"
-msgstr ""
+msgstr "Redirecionar para versões de acesso aberto de publicações quando disponíveis (requer plug-in)"
#: searx/templates/oscar/preferences.html:163
#: searx/templates/oscar/preferences.html:175
@@ -729,7 +730,7 @@ msgstr "Atalho"
#: searx/templates/oscar/preferences.html:164
#: searx/templates/oscar/preferences.html:174
msgid "Selected language"
-msgstr ""
+msgstr "Idioma selecionado"
#: searx/templates/oscar/preferences.html:166
#: searx/templates/oscar/preferences.html:172
@@ -789,13 +790,13 @@ msgstr "Valor"
#: searx/templates/oscar/preferences.html:301
msgid "Search URL of the currently saved preferences"
-msgstr ""
+msgstr "URL de pesquisa das preferências salvas atualmente"
#: searx/templates/oscar/preferences.html:301
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr ""
+msgstr "Nota: a especificação de configurações personalizadas no URL de pesquisa pode reduzir a privacidade ao vazar dados para os sites de resultados clicados."
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -804,12 +805,12 @@ msgstr "Resultados de pesquisa"
#: searx/templates/oscar/results.html:21
#: searx/templates/simple/results.html:84
msgid "Try searching for:"
-msgstr ""
+msgstr "Tente pesquisar por:"
#: searx/templates/oscar/results.html:100
#: searx/templates/simple/results.html:25
msgid "Engines cannot retrieve results"
-msgstr ""
+msgstr "Mecanismos não podem recuperar resultados"
#: searx/templates/oscar/results.html:131
msgid "Links"
@@ -874,12 +875,12 @@ msgstr "Não existem dados disponíveis."
#: searx/templates/oscar/messages/no_results.html:4
#: searx/templates/simple/messages/no_results.html:4
msgid "Engines cannot retrieve results."
-msgstr ""
+msgstr "Mecanismos não podem recuperar resultados."
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr ""
+msgstr "Por favor, tente novamente mais tarde ou encontre outra ocorrência de searx."
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
@@ -998,7 +999,7 @@ msgstr "Carregar mais..."
#: searx/templates/simple/base.html:31
msgid "No item found"
-msgstr ""
+msgstr "Nenhum item encontrado"
#: searx/templates/simple/preferences.html:89
msgid "Supports selected language"
@@ -1006,8 +1007,8 @@ msgstr "Suporta idioma selecionado"
#: searx/templates/simple/preferences.html:118
msgid "User interface"
-msgstr ""
+msgstr "Interface de usuário"
#: searx/templates/simple/preferences.html:154
msgid "Privacy"
-msgstr ""
+msgstr "Privacidade"
diff --git a/searx/translations/pt_BR/LC_MESSAGES/messages.po b/searx/translations/pt_BR/LC_MESSAGES/messages.po
index b849be0..6a0a6b8 100644
--- a/searx/translations/pt_BR/LC_MESSAGES/messages.po
+++ b/searx/translations/pt_BR/LC_MESSAGES/messages.po
@@ -4,18 +4,19 @@
#
# Translators:
# Adam Tauber <asciimoo@gmail.com>, 2017
+# Chacal Exodius, 2018
# Gabriel Nunes <gabriel.hkr@gmail.com>, 2017
# Guimarães Mello <maeslor@cryptolab.net>, 2017
# Neton Brício <fervelinux@gmail.com>, 2015
# pizzaiolo, 2016
-# Shizuka 静香 <deusadaji@gmail.com>, 2018
+# shizuka, 2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2018-02-04 10:39+0000\n"
-"Last-Translator: Shizuka 静香 <deusadaji@gmail.com>\n"
+"PO-Revision-Date: 2018-08-06 05:21+0000\n"
+"Last-Translator: Chacal Exodius\n"
"Language-Team: Portuguese (Brazil) (http://www.transifex.com/asciimoo/searx/language/pt_BR/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -164,7 +165,7 @@ msgstr "Automaticamente carregar a próxima página quando ir até o fim da pág
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "Reescrita DOI de acesso aberto"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
@@ -717,7 +718,7 @@ msgstr "Estilo"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "Resolvedor DOI de Acesso Aberto"
#: searx/templates/oscar/preferences.html:123
msgid ""
@@ -778,7 +779,7 @@ msgstr "Exemplos"
msgid ""
"This is the list of cookies and their values searx is storing on your "
"computer."
-msgstr "Esta é a lista de cookies que searx está armazenando em seu computador."
+msgstr "Esta é a lista de cookies que o searx está armazenando em seu computador."
#: searx/templates/oscar/preferences.html:276
msgid "With that list, you can assess searx transparency."
@@ -999,7 +1000,7 @@ msgstr "ocultar vídeo"
#: searx/templates/pix-art/results.html:28
msgid "Load more..."
-msgstr "Mostrar mais ..."
+msgstr "Mostrar mais..."
#: searx/templates/simple/base.html:31
msgid "No item found"
diff --git a/searx/translations/ro/LC_MESSAGES/messages.po b/searx/translations/ro/LC_MESSAGES/messages.po
index 21a2e7d..7cfd1be 100644
--- a/searx/translations/ro/LC_MESSAGES/messages.po
+++ b/searx/translations/ro/LC_MESSAGES/messages.po
@@ -4,13 +4,14 @@
#
# Translators:
# adrian.fita <adrian.fita@gmail.com>, 2015
+# Daniel Șerbănescu <daniel@serbanescu.dk>, 2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-11-15 21:18+0000\n"
+"Last-Translator: Daniel Șerbănescu <daniel@serbanescu.dk>\n"
"Language-Team: Romanian (http://www.transifex.com/asciimoo/searx/language/ro/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -21,15 +22,15 @@ msgstr ""
#: searx/search.py:137 searx/search.py:182
msgid "timeout"
-msgstr ""
+msgstr "timp alocat expirat"
#: searx/search.py:144
msgid "request exception"
-msgstr ""
+msgstr "excepție la cerere"
#: searx/search.py:151
msgid "unexpected crash"
-msgstr ""
+msgstr "terminare prematură neașteptată"
#: searx/webapp.py:136
msgid "files"
@@ -37,7 +38,7 @@ msgstr "fișiere"
#: searx/webapp.py:137
msgid "general"
-msgstr "general"
+msgstr "generale"
#: searx/webapp.py:138
msgid "music"
@@ -57,7 +58,7 @@ msgstr "videouri"
#: searx/webapp.py:142
msgid "it"
-msgstr "el(ea)"
+msgstr "informatică"
#: searx/webapp.py:143
msgid "news"
@@ -65,23 +66,23 @@ msgstr "știri"
#: searx/webapp.py:144
msgid "map"
-msgstr "hartă"
+msgstr "hărți"
#: searx/webapp.py:145
msgid "science"
-msgstr ""
+msgstr "știință"
#: searx/webapp.py:399 searx/webapp.py:658
msgid "Invalid settings, please edit your preferences"
-msgstr ""
+msgstr "Configurări nevalide, editați preferințele"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr ""
+msgstr "Configurări nevalide"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
-msgstr ""
+msgstr "eroare de căutare"
#: searx/webapp.py:530
msgid "{minutes} minute(s) ago"
@@ -93,27 +94,27 @@ msgstr "{hours} oră(e), {minutes} minut(e) în urmă"
#: searx/answerers/random/answerer.py:53
msgid "Random value generator"
-msgstr ""
+msgstr "Generator de valori aleatorii"
#: searx/answerers/random/answerer.py:54
msgid "Generate different random values"
-msgstr ""
+msgstr "Generează valori aleatoare diferite"
#: searx/answerers/statistics/answerer.py:53
msgid "Statistics functions"
-msgstr ""
+msgstr "Funcții statistice"
#: searx/answerers/statistics/answerer.py:54
msgid "Compute {functions} of the arguments"
-msgstr ""
+msgstr "Calculează {functions} din argumente"
#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
msgid "Engine time (sec)"
-msgstr ""
+msgstr "Timpul motorului (sec)"
#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
msgid "Page loads (sec)"
-msgstr "Încărcarea paginilor (sec)"
+msgstr "Încărcarea paginii (sec)"
#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
#: searx/templates/oscar/results.html:95
@@ -135,15 +136,15 @@ msgstr "Erori"
#: searx/engines/pdbe.py:87
msgid "{title}&nbsp;(OBSOLETE)"
-msgstr ""
+msgstr "{title}&nbsp;(ÎNVECHIT)"
#: searx/engines/pdbe.py:91
msgid "This entry has been superseded by"
-msgstr ""
+msgstr "Această intrare a fost perimată de"
#: searx/engines/pubmed.py:74
msgid "No abstract is available for this publication."
-msgstr ""
+msgstr "Niciun abstract disponibil pentru această publicație."
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
@@ -151,86 +152,86 @@ msgstr "Rescrie legăturile HTTP cu HTTPS dacă e posibil"
#: searx/plugins/infinite_scroll.py:3
msgid "Infinite scroll"
-msgstr ""
+msgstr "Derulare infinită"
#: searx/plugins/infinite_scroll.py:4
msgid "Automatically load next page when scrolling to bottom of current page"
-msgstr ""
+msgstr "Încarcă automat pagina următoare când se derulează la baza paginii curente"
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "Rescriere către acces deschis DOI"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
"Avoid paywalls by redirecting to open-access versions of publications when "
"available"
-msgstr ""
+msgstr "Evită „zidurile de plată” redirecționând către versiuni cu acces deschis ale publicațiilor când sunt disponibile"
#: searx/plugins/open_results_on_new_tab.py:18
#: searx/templates/oscar/preferences.html:114
#: searx/templates/simple/preferences.html:149
msgid "Open result links on new browser tabs"
-msgstr ""
+msgstr "Deschide legăturile rezultate în taburi noi"
#: searx/plugins/open_results_on_new_tab.py:19
msgid ""
"Results are opened in the same window by default. This plugin overwrites the"
" default behaviour to open links on new tabs/windows. (JavaScript required)"
-msgstr ""
+msgstr "Rezultatele sunt deschise în aceeași fereastră în mod implicit. Acest modul suprascrie acțiunea implicită de a deschide legături în ferestre/taburi noi. (Necesită JavaScript)"
#: searx/plugins/search_on_category_select.py:18
msgid "Search on category select"
-msgstr "Căutare în categoria selectată"
+msgstr "Caută la selectarea categoriei"
#: searx/plugins/search_on_category_select.py:19
msgid ""
"Perform search immediately if a category selected. Disable to select "
"multiple categories. (JavaScript required)"
-msgstr ""
+msgstr "Execută căutarea imediat dacă o categorie este selectată. Dezactivează pentru a selecta categorii multiple. (Necesită JavaScript)"
#: searx/plugins/self_info.py:20
msgid ""
"Displays your IP if the query is \"ip\" and your user agent if the query "
"contains \"user agent\"."
-msgstr ""
+msgstr "Afișează IP-ul dacă interogarea este „ip” și agentul de utilizator dacă interogarea conține „user agent”."
#: searx/plugins/tracker_url_remover.py:26
msgid "Tracker URL remover"
-msgstr ""
+msgstr "Eliminator de URL pentru urmăritor"
#: searx/plugins/tracker_url_remover.py:27
msgid "Remove trackers arguments from the returned URL"
-msgstr ""
+msgstr "Elimină argumentele urmăritorului din URL-ul returnat"
#: searx/plugins/vim_hotkeys.py:3
msgid "Vim-like hotkeys"
-msgstr ""
+msgstr "Scurtături de tastatură în stilul Vim"
#: searx/plugins/vim_hotkeys.py:4
msgid ""
"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
"\"h\" key on main or result page to get help."
-msgstr ""
+msgstr "Navighează rezultatele căutării cu scurtături de tastatură în stilul Vim (necesită JavaScript). Apăsați tasta „h” în pagina principală sau în pagina cu rezultate pentru a obține ajutor."
#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
#: searx/templates/simple/404.html:4
msgid "Page not found"
-msgstr ""
+msgstr "Pagină negăsită"
#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
#: searx/templates/simple/404.html:6
#, python-format
msgid "Go to %(search_page)s."
-msgstr ""
+msgstr "Navighează la %(search_page)s"
#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
#: searx/templates/simple/404.html:6
msgid "search page"
-msgstr ""
+msgstr "pagină de căutare"
#: searx/templates/courgette/index.html:9
#: searx/templates/courgette/index.html:13
@@ -280,7 +281,7 @@ msgstr "Limba de căutare"
#: searx/templates/simple/languages.html:2
#: searx/templates/simple/preferences.html:42
msgid "Default language"
-msgstr ""
+msgstr "Limba implicită"
#: searx/templates/courgette/preferences.html:24
#: searx/templates/legacy/preferences.html:25
@@ -443,7 +444,7 @@ msgstr "Blochează"
msgid ""
"These settings are stored in your cookies, this allows us not to store this "
"data about you."
-msgstr "Aceste setări sunt stocate în cookie-urile d-voastră, aceasta ne permite să nu stocăm aceste date despre d-voastră."
+msgstr "Aceste configurări sunt stocate în cookie-uri, ceea ce ne permite să nu stocăm aceste date despre dumeavoastră."
#: searx/templates/courgette/preferences.html:124
#: searx/templates/legacy/preferences.html:121
@@ -453,7 +454,7 @@ msgstr "Aceste setări sunt stocate în cookie-urile d-voastră, aceasta ne perm
msgid ""
"These cookies serve your sole convenience, we don't use these cookies to "
"track you."
-msgstr "Aceste cookie-uri servesc doar pentru confortul d-voastră, noi nu stocăm aceste cookie-uri pentru a vă urmări."
+msgstr "Aceste cookie-uri servesc doar pentru conveniența dumneavoastră, noi nu stocăm aceste cookie-uri pentru a vă urmări."
#: searx/templates/courgette/preferences.html:127
#: searx/templates/legacy/preferences.html:124
@@ -468,7 +469,7 @@ msgstr "salvează"
#: searx/templates/oscar/preferences.html:307
#: searx/templates/simple/preferences.html:186
msgid "Reset defaults"
-msgstr "Resetează valorile implicite"
+msgstr "Restabilește la valorile implicite"
#: searx/templates/courgette/preferences.html:129
#: searx/templates/legacy/preferences.html:126
@@ -543,14 +544,14 @@ msgstr "contextul original"
#: searx/templates/oscar/result_templates/torrent.html:6
#: searx/templates/simple/result_templates/torrent.html:9
msgid "Seeder"
-msgstr "Seeder"
+msgstr "Partener"
#: searx/templates/courgette/result_templates/torrent.html:7
#: searx/templates/legacy/result_templates/torrent.html:11
#: searx/templates/oscar/result_templates/torrent.html:6
#: searx/templates/simple/result_templates/torrent.html:9
msgid "Leecher"
-msgstr "Leecher"
+msgstr "Sursă incompletă"
#: searx/templates/courgette/result_templates/torrent.html:9
#: searx/templates/legacy/result_templates/torrent.html:9
@@ -575,19 +576,19 @@ msgstr "Apăsați pe lupă pentru a executa căutarea"
#: searx/templates/oscar/preferences.html:113
#: searx/templates/simple/preferences.html:142
msgid "Results on new tabs"
-msgstr ""
+msgstr "Rezultate în taburi noi"
#: searx/templates/legacy/preferences.html:87
#: searx/templates/oscar/preferences.html:117
#: searx/templates/simple/preferences.html:145
msgid "On"
-msgstr ""
+msgstr "Pornit"
#: searx/templates/legacy/preferences.html:88
#: searx/templates/oscar/preferences.html:118
#: searx/templates/simple/preferences.html:146
msgid "Off"
-msgstr ""
+msgstr "Oprit"
#: searx/templates/legacy/result_templates/code.html:3
#: searx/templates/legacy/result_templates/default.html:3
@@ -599,7 +600,7 @@ msgstr "stocat temporar"
#: searx/templates/oscar/advanced.html:4
msgid "Advanced settings"
-msgstr ""
+msgstr "Configurări avansate"
#: searx/templates/oscar/base.html:62
#: searx/templates/oscar/messages/first_time.html:4
@@ -613,7 +614,7 @@ msgstr "Închide"
#: searx/templates/simple/messages/no_results.html:4
#: searx/templates/simple/results.html:25
msgid "Error!"
-msgstr ""
+msgstr "Eroare!"
#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
msgid "Powered by"
@@ -626,21 +627,21 @@ msgstr "un meta-motor de căutare care respectă confidențialitatea"
#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
#: searx/templates/simple/macros.html:43
msgid "proxied"
-msgstr ""
+msgstr "delegat"
#: searx/templates/oscar/macros.html:92
msgid "supported"
-msgstr ""
+msgstr "suporat"
#: searx/templates/oscar/macros.html:96
msgid "not supported"
-msgstr ""
+msgstr "nesuportat"
#: searx/templates/oscar/preferences.html:13
#: searx/templates/oscar/preferences.html:22
#: searx/templates/simple/preferences.html:32
msgid "General"
-msgstr "General"
+msgstr "Generale"
#: searx/templates/oscar/preferences.html:14
#: searx/templates/oscar/preferences.html:146
@@ -656,12 +657,12 @@ msgstr "Module"
#: searx/templates/oscar/preferences.html:16
#: searx/templates/oscar/preferences.html:245
msgid "Answerers"
-msgstr ""
+msgstr "Răspunzători"
#: searx/templates/oscar/preferences.html:17
#: searx/templates/oscar/preferences.html:272
msgid "Cookies"
-msgstr ""
+msgstr "Cookie-uri"
#: searx/templates/oscar/preferences.html:42
#: searx/templates/simple/preferences.html:48
@@ -703,99 +704,99 @@ msgstr "Schimbă aspectul lui searx"
#: searx/templates/oscar/preferences.html:106
#: searx/templates/oscar/preferences.html:111
msgid "Choose style for this theme"
-msgstr ""
+msgstr "Alegeți stilul pentru această temă"
#: searx/templates/oscar/preferences.html:106
#: searx/templates/oscar/preferences.html:111
msgid "Style"
-msgstr ""
+msgstr "Stil"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "Rezolvator de acces deschis DOI"
#: searx/templates/oscar/preferences.html:123
msgid ""
"Redirect to open-access versions of publications when available (plugin "
"required)"
-msgstr ""
+msgstr "Redirecționează către versiuni cu acces deschis ale publicațiilor când sunt disponibile (modul necesar)"
#: searx/templates/oscar/preferences.html:163
#: searx/templates/oscar/preferences.html:175
#: searx/templates/simple/preferences.html:88
msgid "Shortcut"
-msgstr ""
+msgstr "Scurtătură"
#: searx/templates/oscar/preferences.html:164
#: searx/templates/oscar/preferences.html:174
msgid "Selected language"
-msgstr ""
+msgstr "Limba selectată"
#: searx/templates/oscar/preferences.html:166
#: searx/templates/oscar/preferences.html:172
#: searx/templates/simple/preferences.html:91
msgid "Time range"
-msgstr ""
+msgstr "Interval de timp"
#: searx/templates/oscar/preferences.html:167
#: searx/templates/oscar/preferences.html:171
#: searx/templates/simple/preferences.html:92
msgid "Avg. time"
-msgstr ""
+msgstr "Timp mediu"
#: searx/templates/oscar/preferences.html:168
#: searx/templates/oscar/preferences.html:170
#: searx/templates/simple/preferences.html:93
msgid "Max time"
-msgstr ""
+msgstr "Timp maxim"
#: searx/templates/oscar/preferences.html:248
msgid "This is the list of searx's instant answering modules."
-msgstr ""
+msgstr "Aceasta este lista de module de răspundere instantă a lui searx."
#: searx/templates/oscar/preferences.html:252
msgid "Name"
-msgstr ""
+msgstr "Nume"
#: searx/templates/oscar/preferences.html:253
msgid "Keywords"
-msgstr ""
+msgstr "Cuvinte cheie"
#: searx/templates/oscar/preferences.html:254
msgid "Description"
-msgstr ""
+msgstr "Descriere"
#: searx/templates/oscar/preferences.html:255
msgid "Examples"
-msgstr ""
+msgstr "Exemple"
#: searx/templates/oscar/preferences.html:275
msgid ""
"This is the list of cookies and their values searx is storing on your "
"computer."
-msgstr ""
+msgstr "Aceasta este lista de cookie-uri și valorile lor pe care searx le stochează pe calculatorul dumneavoastră."
#: searx/templates/oscar/preferences.html:276
msgid "With that list, you can assess searx transparency."
-msgstr ""
+msgstr "Cu acea listă puteți evalua nivelul de transparență al lui searx."
#: searx/templates/oscar/preferences.html:281
msgid "Cookie name"
-msgstr ""
+msgstr "Nume cookie"
#: searx/templates/oscar/preferences.html:282
msgid "Value"
-msgstr ""
+msgstr "Valuare"
#: searx/templates/oscar/preferences.html:301
msgid "Search URL of the currently saved preferences"
-msgstr ""
+msgstr "URL-ul de căutare al preferințelor salvate curent"
#: searx/templates/oscar/preferences.html:301
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr ""
+msgstr "Notă: specificând configurări personalizate în URL-ul de căutare poate reduce nivelul de confidențialitate prin scurgerea datelor către siturile accesate la căutare."
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -804,12 +805,12 @@ msgstr "Rezultatele căutării"
#: searx/templates/oscar/results.html:21
#: searx/templates/simple/results.html:84
msgid "Try searching for:"
-msgstr ""
+msgstr "Încercați să căutați după:"
#: searx/templates/oscar/results.html:100
#: searx/templates/simple/results.html:25
msgid "Engines cannot retrieve results"
-msgstr ""
+msgstr "Motoarele nu pot obține rezultate"
#: searx/templates/oscar/results.html:131
msgid "Links"
@@ -828,27 +829,27 @@ msgstr "statistici"
#: searx/templates/oscar/time-range.html:3
#: searx/templates/simple/time-range.html:3
msgid "Anytime"
-msgstr ""
+msgstr "Oricând"
#: searx/templates/oscar/time-range.html:6
#: searx/templates/simple/time-range.html:6
msgid "Last day"
-msgstr ""
+msgstr "Ultima zi"
#: searx/templates/oscar/time-range.html:9
#: searx/templates/simple/time-range.html:9
msgid "Last week"
-msgstr ""
+msgstr "Ultima săptămână"
#: searx/templates/oscar/time-range.html:12
#: searx/templates/simple/time-range.html:12
msgid "Last month"
-msgstr ""
+msgstr "Ultima lună"
#: searx/templates/oscar/time-range.html:15
#: searx/templates/simple/time-range.html:15
msgid "Last year"
-msgstr ""
+msgstr "Ultimul an"
#: searx/templates/oscar/messages/first_time.html:6
#: searx/templates/oscar/messages/no_data_available.html:3
@@ -861,11 +862,11 @@ msgstr "Se pare că folosiți searx pentru prima dată."
#: searx/templates/oscar/messages/no_cookies.html:3
msgid "Information!"
-msgstr ""
+msgstr "Informație!"
#: searx/templates/oscar/messages/no_cookies.html:4
msgid "currently, there are no cookies defined."
-msgstr ""
+msgstr "momentan, nu există cookie-uri definite"
#: searx/templates/oscar/messages/no_data_available.html:4
msgid "There is currently no data available. "
@@ -874,24 +875,24 @@ msgstr "Deocamdată nu există date disponibile."
#: searx/templates/oscar/messages/no_results.html:4
#: searx/templates/simple/messages/no_results.html:4
msgid "Engines cannot retrieve results."
-msgstr ""
+msgstr "Motoarele nu pot obține rezultate"
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr ""
+msgstr "Încercați din nou mai târziu sau folosiți o altă instanță searx-"
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
msgid "Sorry!"
-msgstr "Îmi pare rău!"
+msgstr "Ne pare rău!"
#: searx/templates/oscar/messages/no_results.html:15
#: searx/templates/simple/messages/no_results.html:15
msgid ""
"we didn't find any results. Please use another query or search in more "
"categories."
-msgstr "n-am găsit nici un rezultat. Vă rog folosiți o altă interogare sau căutați în mai multe categorii."
+msgstr "n-am găsit nici un rezultat. Folosiți o altă interogare sau căutați în mai multe categorii."
#: searx/templates/oscar/messages/save_settings_successfull.html:7
msgid "Well done!"
@@ -899,7 +900,7 @@ msgstr "Bravo!"
#: searx/templates/oscar/messages/save_settings_successfull.html:8
msgid "Settings saved successfully."
-msgstr "Setările au fost salvate cu succes."
+msgstr "Configurările au fost salvate cu succes."
#: searx/templates/oscar/messages/unknow_error.html:7
msgid "Oh snap!"
@@ -998,16 +999,16 @@ msgstr "Încarcă mai multe..."
#: searx/templates/simple/base.html:31
msgid "No item found"
-msgstr ""
+msgstr "Niciun element găsit"
#: searx/templates/simple/preferences.html:89
msgid "Supports selected language"
-msgstr ""
+msgstr "Suportă limba selectată"
#: searx/templates/simple/preferences.html:118
msgid "User interface"
-msgstr ""
+msgstr "Interfața pentru utilizator"
#: searx/templates/simple/preferences.html:154
msgid "Privacy"
-msgstr ""
+msgstr "Confidențialitate"
diff --git a/searx/translations/ru/LC_MESSAGES/messages.po b/searx/translations/ru/LC_MESSAGES/messages.po
index 66738c1..befe7f9 100644
--- a/searx/translations/ru/LC_MESSAGES/messages.po
+++ b/searx/translations/ru/LC_MESSAGES/messages.po
@@ -3,17 +3,18 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
-# Andrey, 2017
+# Andrey, 2017-2019
# dimqua <dimqua@riseup.net>, 2015
# dimqua <dimqua@riseup.net>, 2015
# dimqua <dimqua@riseup.net>, 2017
+# John DOe <is-kir@ya.ru>, 2018
# Дмитрий Михирев, 2016-2017
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-12-27 10:02+0000\n"
+"PO-Revision-Date: 2019-01-05 12:11+0000\n"
"Last-Translator: Andrey\n"
"Language-Team: Russian (http://www.transifex.com/asciimoo/searx/language/ru/)\n"
"MIME-Version: 1.0\n"
@@ -29,11 +30,11 @@ msgstr "таймаут"
#: searx/search.py:144
msgid "request exception"
-msgstr "запрос исключен"
+msgstr "ошибка выполнения запроса"
#: searx/search.py:151
msgid "unexpected crash"
-msgstr "неожиданное падение"
+msgstr "неожиданный сбой"
#: searx/webapp.py:136
msgid "files"
@@ -147,7 +148,7 @@ msgstr "Эта запись была заменена на"
#: searx/engines/pubmed.py:74
msgid "No abstract is available for this publication."
-msgstr "Для данной публикации недоступно"
+msgstr "Нет аннотации для этой публикации."
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
@@ -197,15 +198,15 @@ msgstr "Выполнять поиск немедленно, если выбра
msgid ""
"Displays your IP if the query is \"ip\" and your user agent if the query "
"contains \"user agent\"."
-msgstr "Отображает ваш IP-адрес при запросе \"ip\" и отпечаток браузера при запросе \"user agent\"."
+msgstr "Отображает ваш IP-адрес при запросе \"ip\" и пользовательский агент при запросе \"user agent\"."
#: searx/plugins/tracker_url_remover.py:26
msgid "Tracker URL remover"
-msgstr "Удаление трекера URL-адресов"
+msgstr "Удаление трекинга URL-адресов"
#: searx/plugins/tracker_url_remover.py:27
msgid "Remove trackers arguments from the returned URL"
-msgstr "Удаляет аргументы отслеживания из возвращенного URL-адреса"
+msgstr "Удаляет аргументы отслеживания из URL-адреса"
#: searx/plugins/vim_hotkeys.py:3
msgid "Vim-like hotkeys"
@@ -299,7 +300,7 @@ msgstr "Язык интерфейса"
#: searx/templates/oscar/preferences.html:57
#: searx/templates/simple/preferences.html:51
msgid "Autocomplete"
-msgstr "Подгрузка результатов"
+msgstr "Автозавершение"
#: searx/templates/courgette/preferences.html:45
#: searx/templates/legacy/preferences.html:46
@@ -447,7 +448,7 @@ msgstr "Блокировать"
msgid ""
"These settings are stored in your cookies, this allows us not to store this "
"data about you."
-msgstr "Настройки хранятся в ваших файлах cookie, что позволяет нам не сохранять эти сведения о вас."
+msgstr "Настройки сохраняются в ваших файлах cookie, что позволяет нам не хранить никаких сведений о вас."
#: searx/templates/courgette/preferences.html:124
#: searx/templates/legacy/preferences.html:121
@@ -457,7 +458,7 @@ msgstr "Настройки хранятся в ваших файлах cookie,
msgid ""
"These cookies serve your sole convenience, we don't use these cookies to "
"track you."
-msgstr "Эти файлы cookie используются для вашего удобства, мы не используем их чтобы отслеживать вас."
+msgstr "Эти файлы используются исключительно для вашего удобства, мы не отслеживаем вашу активность."
#: searx/templates/courgette/preferences.html:127
#: searx/templates/legacy/preferences.html:124
@@ -621,7 +622,7 @@ msgstr "Ошибка!"
#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
msgid "Powered by"
-msgstr "Используется"
+msgstr "Основано на"
#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
msgid "a privacy-respecting, hackable metasearch engine"
@@ -630,7 +631,7 @@ msgstr "уважающая вашу приватность, открытая м
#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
#: searx/templates/simple/macros.html:43
msgid "proxied"
-msgstr "proxy"
+msgstr "proxied"
#: searx/templates/oscar/macros.html:92
msgid "supported"
@@ -670,7 +671,7 @@ msgstr "Cookie"
#: searx/templates/oscar/preferences.html:42
#: searx/templates/simple/preferences.html:48
msgid "What language do you prefer for search?"
-msgstr "На каком языке вы предпочитаете искать?"
+msgstr "Какой язык предпочтителен для поиска?"
#: searx/templates/oscar/preferences.html:48
#: searx/templates/simple/preferences.html:128
@@ -697,7 +698,7 @@ msgstr "Изменяет способ отправки запросов. <a href
#: searx/templates/oscar/preferences.html:87
#: searx/templates/simple/preferences.html:71
msgid "Filter content"
-msgstr "Фильтрация содержимого для взрослых в результатах поиска."
+msgstr "Фильтрация контента"
#: searx/templates/oscar/preferences.html:97
#: searx/templates/simple/preferences.html:139
@@ -799,7 +800,7 @@ msgstr "URL поиска для текущих сохраненных парам
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr "Обратите внимание, что задание пользовательских параметров в URL поиска может привести к их утечке к посещаемым сайтам из поисковой выдачи."
+msgstr "Учтите, что укаание пользовательских настроек в URL поиска может привести к их утечке к посещаемым сайтам из поисковой выдачи."
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -883,7 +884,7 @@ msgstr "Движки не могут получить результаты."
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr "Пожалуйста, попробуйте позже или воспользуйтесь другим searx инстансом."
+msgstr "Пожалуйста, попробуйте позже или воспользуйтесь другим сервером searx."
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
diff --git a/searx/translations/sl/LC_MESSAGES/messages.po b/searx/translations/sl/LC_MESSAGES/messages.po
index f3e6fef..3ce7f97 100644
--- a/searx/translations/sl/LC_MESSAGES/messages.po
+++ b/searx/translations/sl/LC_MESSAGES/messages.po
@@ -3,14 +3,14 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
-# asladic <ales.sladic@gmail.com>, 2017
+# asladic <ales.sladic@gmail.com>, 2017-2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-05-01 08:59+0000\n"
+"Last-Translator: asladic <ales.sladic@gmail.com>\n"
"Language-Team: Slovenian (http://www.transifex.com/asciimoo/searx/language/sl/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -21,15 +21,15 @@ msgstr ""
#: searx/search.py:137 searx/search.py:182
msgid "timeout"
-msgstr ""
+msgstr "presežena časovna omejitev"
#: searx/search.py:144
msgid "request exception"
-msgstr ""
+msgstr "napaka poizvedbe"
#: searx/search.py:151
msgid "unexpected crash"
-msgstr ""
+msgstr "nepričakovana napaka"
#: searx/webapp.py:136
msgid "files"
@@ -77,7 +77,7 @@ msgstr "Neveljavne nastavitve. Prosimo, preverite vašo konfiguracijo"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr ""
+msgstr "Neveljavne nastavitve"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
@@ -630,11 +630,11 @@ msgstr "preko posredniškega strežnika"
#: searx/templates/oscar/macros.html:92
msgid "supported"
-msgstr ""
+msgstr "podprto"
#: searx/templates/oscar/macros.html:96
msgid "not supported"
-msgstr ""
+msgstr "ni podprto"
#: searx/templates/oscar/preferences.html:13
#: searx/templates/oscar/preferences.html:22
@@ -718,7 +718,7 @@ msgstr ""
msgid ""
"Redirect to open-access versions of publications when available (plugin "
"required)"
-msgstr ""
+msgstr "Preusmeri na prosto dostopne različice publikacij, ko so na voljo (zahtevan vtičnik)"
#: searx/templates/oscar/preferences.html:163
#: searx/templates/oscar/preferences.html:175
@@ -729,7 +729,7 @@ msgstr "Bližnjica"
#: searx/templates/oscar/preferences.html:164
#: searx/templates/oscar/preferences.html:174
msgid "Selected language"
-msgstr ""
+msgstr "Izbrani jezik"
#: searx/templates/oscar/preferences.html:166
#: searx/templates/oscar/preferences.html:172
@@ -789,13 +789,13 @@ msgstr "Vrednost"
#: searx/templates/oscar/preferences.html:301
msgid "Search URL of the currently saved preferences"
-msgstr ""
+msgstr "Iskalni URL trenutno shranjenih nastavitev"
#: searx/templates/oscar/preferences.html:301
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr ""
+msgstr "Opomba: navajanje lastnih nastavitev v iskalnem URL lahko vodi do zmanjšane zasebnosti preko podajanja podatkov izbranim rezultatom."
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -804,12 +804,12 @@ msgstr "Zadetki iskanja"
#: searx/templates/oscar/results.html:21
#: searx/templates/simple/results.html:84
msgid "Try searching for:"
-msgstr ""
+msgstr "Poskusite iskati:"
#: searx/templates/oscar/results.html:100
#: searx/templates/simple/results.html:25
msgid "Engines cannot retrieve results"
-msgstr ""
+msgstr "Iskalniki ne morejo pridobiti rezultatov"
#: searx/templates/oscar/results.html:131
msgid "Links"
@@ -874,12 +874,12 @@ msgstr "Trenutno ni podatkov na voljo."
#: searx/templates/oscar/messages/no_results.html:4
#: searx/templates/simple/messages/no_results.html:4
msgid "Engines cannot retrieve results."
-msgstr ""
+msgstr "Iskalniki ne morejo pridobiti rezultatov."
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr ""
+msgstr "Prosimo, poskusite kasneje tu ali na drugi instanci searx."
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
@@ -998,7 +998,7 @@ msgstr "Naloži več..."
#: searx/templates/simple/base.html:31
msgid "No item found"
-msgstr ""
+msgstr "Ni zadetkov"
#: searx/templates/simple/preferences.html:89
msgid "Supports selected language"
@@ -1006,8 +1006,8 @@ msgstr "Podpira izbrani jezik"
#: searx/templates/simple/preferences.html:118
msgid "User interface"
-msgstr ""
+msgstr "Uporabniški vmesnik"
#: searx/templates/simple/preferences.html:154
msgid "Privacy"
-msgstr ""
+msgstr "Zasebnost"
diff --git a/searx/translations/sv/LC_MESSAGES/messages.po b/searx/translations/sv/LC_MESSAGES/messages.po
index 3c98e06..e8b01c8 100644
--- a/searx/translations/sv/LC_MESSAGES/messages.po
+++ b/searx/translations/sv/LC_MESSAGES/messages.po
@@ -4,13 +4,14 @@
#
# Translators:
# Jonatan Nyberg, 2016-2017
+# Jonatan Nyberg, 2018
# Jonatan Nyberg, 2017-2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2018-01-13 11:39+0000\n"
+"PO-Revision-Date: 2018-07-24 18:39+0000\n"
"Last-Translator: Jonatan Nyberg\n"
"Language-Team: Swedish (http://www.transifex.com/asciimoo/searx/language/sv/)\n"
"MIME-Version: 1.0\n"
@@ -160,7 +161,7 @@ msgstr "Automatiskt ladda nästa sida när du bläddrar till botten av aktuell s
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "Open Access DOI-omskrivning"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
@@ -182,7 +183,7 @@ msgstr "Resultat öppnas i samma fönster som standard. Denna insticksmodul skri
#: searx/plugins/search_on_category_select.py:18
msgid "Search on category select"
-msgstr "Sök på kategori välj"
+msgstr "Sök vid val av kategori"
#: searx/plugins/search_on_category_select.py:19
msgid ""
@@ -198,7 +199,7 @@ msgstr "Visar din IP om förfrågan är \"ip\" och din användaragent om förfr
#: searx/plugins/tracker_url_remover.py:26
msgid "Tracker URL remover"
-msgstr "Trackerwebbadress borttagare"
+msgstr "Bevakningswebbadress borttagare"
#: searx/plugins/tracker_url_remover.py:27
msgid "Remove trackers arguments from the returned URL"
@@ -263,7 +264,7 @@ msgstr "Inställningar"
#: searx/templates/oscar/preferences.html:35
#: searx/templates/simple/preferences.html:34
msgid "Default categories"
-msgstr "Standard kategorier"
+msgstr "Standardkategorier"
#: searx/templates/courgette/preferences.html:13
#: searx/templates/legacy/preferences.html:14
@@ -713,7 +714,7 @@ msgstr "Stil"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "Open Access DOI-lösare"
#: searx/templates/oscar/preferences.html:123
msgid ""
diff --git a/searx/translations/te/LC_MESSAGES/messages.po b/searx/translations/te/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..8da1506
--- /dev/null
+++ b/searx/translations/te/LC_MESSAGES/messages.po
@@ -0,0 +1,1013 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# Joseph Nuthalapati <njoseph@thoughtworks.com>, 2018
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2018-03-08 16:40+0000\n"
+"Last-Translator: Joseph Nuthalapati <njoseph@thoughtworks.com>\n"
+"Language-Team: Telugu (http://www.transifex.com/asciimoo/searx/language/te/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: te\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "కాలపరిమితి దాటిపోయింది"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr ""
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr ""
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "ఫైళ్ళు"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "సాధారణ"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "సంగీతం"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "సోషల్ మీడియా"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "చిత్రాలు"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "వీడియోలు"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "ఐటి"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "వార్తలు"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "పటము"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "విజ్ఞానశాస్త్రం"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr ""
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "చెల్లని అమరికలు"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "శోధనలో దోషము"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "{minutes} నిమిషము(ల) క్రిందట"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr ""
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr ""
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr ""
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "సాంఖ్యకశాస్త్ర ప్రమేయాలు"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr ""
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr ""
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr ""
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "ఫలితముల సంఖ్య"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr ""
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr ""
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "దోషములు"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr ""
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr ""
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr ""
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr ""
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr ""
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr ""
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr ""
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr ""
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr ""
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr ""
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr ""
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr ""
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr ""
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr ""
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr ""
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr ""
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr ""
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "పుట దొరకలేదు"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "%(search_page)sకు వెళ్ళు"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "శోధన పుట"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "అభిరుచులు"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "గురించి"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "అభిరుచులు"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "నిష్క్రియ వర్గాలు"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "శోధన భాష"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "నిష్క్రియ భాష"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "వినిమయసీమ భాష"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "విధానం"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "సురక్షితశోధన"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "కఠినమైన"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "మితమైన"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "ఏమీ లేదు"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "రంగు"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "నీలం (నిష్క్రియం)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "ఊదారంగు"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "ఆకుపచ్చ"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr " ముదురు నీలం"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "నారింజ"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "ఎరుపు"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "ప్రస్తుతం ఉపయోగించబడుతున్న శోధన యంత్రాలు"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "యంత్రం పేరు"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "వర్గము"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "అనుమతించు"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "అడ్డగించు"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr ""
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "దాచు"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "నిష్క్రియాలకు అమర్చు"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "వెనక్కి"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "శోధన URL"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "ఫలితాలను దింపుకోండి"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "జవాబులు"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "సూచనలు"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "పూర్వపు పుట"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "తర్వాతి పుట"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "శోధించు..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr ""
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr ""
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr ""
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr ""
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr ""
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr ""
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr ""
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr ""
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr ""
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr ""
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr ""
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr ""
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "మూసివేయు"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "దోషం!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr ""
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr ""
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr ""
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "ఆదరించబడిన"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "ఆదరణ లేని"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "సాధారణ"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "యంత్రాలు"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "ప్లగిన్లు"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "జవాబులు"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "కుకీలు"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "వినిమయసీమ యొక్క భాషను మార్చు"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "టైపు చేస్తూ శోధించు"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "విషయాలను వడకట్టు"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "శైలి"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "సత్వరమార్గం"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "ఎంచుకున్న భాష"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "కాల శ్రేణి"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "సగటు సమయం"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "గరిష్ఠ సమయం"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "పేరు"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "వర్ణన"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "ఉదాహరణలు"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "కుకీ పేరు"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "విలువ"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr ""
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr ""
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "దీనికొరకు శోధించండి:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "యంత్రాలు ఫలితాలను రాబట్టలేకపోతున్నాయి"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "లంకెలు"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "శోధన ప్రారంభించు"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "స్థితి వివరణ లెక్కలు"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "ఎప్పుడైనా"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "క్రిందటి రోజు"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "క్రిందటి వారం"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "క్రిందటి నెల"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "క్రిందటి సంవత్సరం"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "జాగ్రత్త!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr ""
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "సమాచారం!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr ""
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr ""
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "యంత్రాలు ఫలితాలను రాబట్టలేకపోయాయి."
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr ""
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "క్షమించండి!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr ""
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "భళా!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "ఆమరికలు విజయవంతంగా పొందుపరచబడ్డాయి."
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "అయ్యో!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "ఏదో తప్పు జరిగింది."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr ""
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "ఫైళ్ళ సంఖ్య"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "వీడియో చూపించు"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "వీడియోను దాచిపెట్టు"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr ""
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "ఏమీ దొరకలేదు"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "ఆంతరంగికత"
diff --git a/searx/translations/tr/LC_MESSAGES/messages.po b/searx/translations/tr/LC_MESSAGES/messages.po
index 65974de..a15c856 100644
--- a/searx/translations/tr/LC_MESSAGES/messages.po
+++ b/searx/translations/tr/LC_MESSAGES/messages.po
@@ -3,6 +3,7 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
+# Arda Kılıçdağı <ardakilicdagi@gmail.com>, 2018
# Caner Başaran <basaran.caner@protonmail.com>, 2014-2016
# FIRST AUTHOR <EMAIL@ADDRESS>, 2014
msgid ""
@@ -10,8 +11,8 @@ msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-12-06 17:22+0000\n"
+"Last-Translator: Arda Kılıçdağı <ardakilicdagi@gmail.com>\n"
"Language-Team: Turkish (http://www.transifex.com/asciimoo/searx/language/tr/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -22,15 +23,15 @@ msgstr ""
#: searx/search.py:137 searx/search.py:182
msgid "timeout"
-msgstr ""
+msgstr "zaman aşımı"
#: searx/search.py:144
msgid "request exception"
-msgstr ""
+msgstr "istekte bir hata oluştu"
#: searx/search.py:151
msgid "unexpected crash"
-msgstr ""
+msgstr "beklenmmeyen hata"
#: searx/webapp.py:136
msgid "files"
@@ -74,15 +75,15 @@ msgstr "bilim"
#: searx/webapp.py:399 searx/webapp.py:658
msgid "Invalid settings, please edit your preferences"
-msgstr ""
+msgstr "Hatalı ayar girildi, lütfen ayarlarınızı kontrol edin"
#: searx/webapp.py:415
msgid "Invalid settings"
-msgstr ""
+msgstr "Hatalı ayar"
#: searx/webapp.py:449 searx/webapp.py:493
msgid "search error"
-msgstr ""
+msgstr "arama hatası"
#: searx/webapp.py:530
msgid "{minutes} minute(s) ago"
@@ -94,27 +95,27 @@ msgstr "{hours} saat(), {minutes} dakika() önce"
#: searx/answerers/random/answerer.py:53
msgid "Random value generator"
-msgstr ""
+msgstr "Rastgele değer üretici"
#: searx/answerers/random/answerer.py:54
msgid "Generate different random values"
-msgstr ""
+msgstr "Farklı rastgele metinler üret"
#: searx/answerers/statistics/answerer.py:53
msgid "Statistics functions"
-msgstr ""
+msgstr "İstatistik fonksiyonları"
#: searx/answerers/statistics/answerer.py:54
msgid "Compute {functions} of the arguments"
-msgstr ""
+msgstr "Argümanların {functions} değerlerini hesapla"
#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
msgid "Engine time (sec)"
-msgstr ""
+msgstr "Motor cevap süresi (sn)"
#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
msgid "Page loads (sec)"
-msgstr "Yüklenen sayfa (sn)"
+msgstr "Sayfa yüklenmesi (sn)"
#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
#: searx/templates/oscar/results.html:95
@@ -124,11 +125,11 @@ msgstr "Sonuç sayısı"
#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
msgid "Scores"
-msgstr ""
+msgstr "Skor"
#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
msgid "Scores per result"
-msgstr ""
+msgstr "Sonuç başına skor"
#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
msgid "Errors"
@@ -136,7 +137,7 @@ msgstr "Hatalar"
#: searx/engines/pdbe.py:87
msgid "{title}&nbsp;(OBSOLETE)"
-msgstr ""
+msgstr "{title}&nbsp;(GEÇERSİZ)"
#: searx/engines/pdbe.py:91
msgid "This entry has been superseded by"
diff --git a/searx/translations/uk/LC_MESSAGES/messages.po b/searx/translations/uk/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..7c6ac5a
--- /dev/null
+++ b/searx/translations/uk/LC_MESSAGES/messages.po
@@ -0,0 +1,1015 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# pvhn4 <pvhn4@protonmail.com>, 2017
+# pvhn4 <pvhn4@protonmail.com>, 2017
+# zubr139, 2016-2017
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2017-11-01 20:31+0000\n"
+"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"Language-Team: Ukrainian (http://www.transifex.com/asciimoo/searx/language/uk/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: uk\n"
+"Plural-Forms: nplurals=4; plural=(n % 1 == 0 && n % 10 == 1 && n % 100 != 11 ? 0 : n % 1 == 0 && n % 10 >= 2 && n % 10 <= 4 && (n % 100 < 12 || n % 100 > 14) ? 1 : n % 1 == 0 && (n % 10 ==0 || (n % 10 >=5 && n % 10 <=9) || (n % 100 >=11 && n % 100 <=14 )) ? 2: 3);\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr ""
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr ""
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr ""
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "файли"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "загальні"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "музика"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "соцмережі"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "зображення"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "відео"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "IT"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "новини"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "карти"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "наука"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "Невірні налаштування, будь ласка, зробіть зміни в налаштуваннях"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr ""
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "помилка пошуку"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "{minutes} хвилин тому"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "{hours} годин, {minutes} хвилин тому"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "Генератор випадкових значень"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "Створити різні випадкові значення"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "Функції статистики"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "Розрахувати {functions} аргументів"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "Час пошуку (сек)"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "Час завантадення (сек)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "Число результатів"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "Влучань"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "Влучань за результат"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "Помилок"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(OBSOLETE)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "Цей запис був змінений"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr ""
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "За можливістю замінити в посиланнях HTTP на HTTPS"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "Нескінченна прокрутка"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "Автоматично завантажувати наступну сторінку при прокрутці поточної до кінця"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr ""
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "Уникайте платіжних каналів шляхом переадресації на версії публікацій з відкритим доступом, коли це можливо"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "Відкривати посилання результатів в нових вкладках"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "Типово результати відкриваються в тому ж вікні. Цей плагін змінює поведінку, щоб посилання відкривались типово в нових вкладках/вікнах. (Необхідний JavaScript)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "Пошук по обраній категорії"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "Виконувати пошук зразу при обранні категорії. Вимкнути вибір декількох категорій. (Необхідний JavaScript)"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "Відображає IP-адресу при запиті \"ip\" та ваш user-agent при запиті \"user agent\"."
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "Видалення URL-адреси трекера"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "Вилучіть аргументи трекера з поверненої URL-адреси"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "Гарячі клавіші Vim"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "Переміщення результатів пошуку за допомогою віртуальних клавіш (потрібно JavaScript). Натисніть клавішу \"h\" на головній сторінці або на сторінці результатів, щоб отримати допомогу."
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "Сторінка не знайдена"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "Перейти до %(search_page)s."
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "сторінки пошуку"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "опції"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "про сайт"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "Опції"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "Типові категорії"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "Мова пошуку"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "Стандартна мова"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "Мова інтерфейсу"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "Автозаповнення"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "Проксі для зображень"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "Ввімкнено"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "Вимкнено"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "Метод"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "БезпечнийПошук"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "Жорский"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "Помірний"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "Вимкнений"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "Теми"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "Колір"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "Синій (типово)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "Фіолетовий"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "Зелений"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "Блакитний"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "Помаранчевий"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "Червоний"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "Пошукові системи, які використовуються"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "Назва пошукової системи"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "Категорія"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "Дозволити"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "Заблокувати"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "Налаштування зберігаються в ваших cookie-файлах, що дає нам змогу не зберігати ці відомості про вас."
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "Ці cookie-файли необхідні винятково для вашої зручності, ми не використовуємо ці cookie-файли, щоб відслідковувати вас."
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "зберегти"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "Відновити стандартні налаштування"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "назад"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "Посилання на пошук"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "Завантажити результати"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "Відповіді"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "Пропозиції"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "попередня сторінка"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "наступна сторінка"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "Шукати..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "Статистика пошукової системи"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "в контексті"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "Сідер"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "Лічер"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "магнет-посилання"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "торрент-файл"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "Натисніть лупу, щоб виконати пошук"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "Результати в нових вкладках"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "Ввімк."
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "Вимк."
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "архівовано"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "Додаткові налаштування"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "Закрити"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "Помилка!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "Використовується"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "вільна система метапошуку, яка поважає вашу приватність"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "проксовано"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr ""
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "Загальні"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "Пошукові системи"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "Плагіни"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "Відповідачі"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Cookie-файли"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "Якій мові ви віддаєте перевагу для пошуку?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "Змінити мову сайту"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "Шукати підчас набору"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "Проксувати знайдені зображення за допомогою searx"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "Змінити спосіб відправки запитів, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">детальніше про методи запитів</a>"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "Фільтр контенту"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "Змінити вигляд сайту"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "Обрати стиль для цієї теми"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "Стиль"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "Гарячі клавіші"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "Часовий діапазон"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "Середній час"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "Максимальний час"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "Список модулів миттєвих відповідей searx."
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "Назва"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "Ключові слова"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "Опис"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "Приклади"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "Це список cookie-файлів та їх значень, які searx зберігає на вашому комп'ютері."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "По цьому списку ви можете оцінити відкритість searx."
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Ім'я cookie"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "Значення"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr ""
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr ""
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "Результати пошуку"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr ""
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr ""
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "Посилання"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "Розпочати пошук"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "статистика"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "За весь час"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "За останній день"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "За останній тиждень"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "За останній місяць"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "За останній рік"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "Отакої!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "Схоже, що ви використовуєте searx вперше."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "Інформація!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "в даний час cookie-файли не встановлені."
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "В даний час немає доступних даних."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr ""
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr ""
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "Вибачте!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "ми не знайшли жодних результатів. Будь ласка, використайте інший запит або виконайте пошук в декількох категоріях."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "Чудово!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "Налаштування успішно збережені."
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "От халепа!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "Щось пішло не так."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "показати медіа"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "приховати медіа"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "Завантажити зображення"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "Переглянути джерело"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "показати карту"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "приховати карту"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "показати деталі"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "приховати деталі"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "Розмір файла"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "Байтів"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "КіБ"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "МіБ"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "ГіБ"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "ТіБ"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "Кількість Файлів"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "показати відео"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "приховати відео"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "Завантажити більше..."
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "Підтримка обраної мови"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr ""
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr ""
diff --git a/searx/translations/vi/LC_MESSAGES/messages.po b/searx/translations/vi/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..d8a1a0c
--- /dev/null
+++ b/searx/translations/vi/LC_MESSAGES/messages.po
@@ -0,0 +1,1013 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# dd721411 <dd721411@gmail.com>, 2018
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2018-02-28 17:27+0000\n"
+"Last-Translator: dd721411 <dd721411@gmail.com>\n"
+"Language-Team: Vietnamese (http://www.transifex.com/asciimoo/searx/language/vi/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: vi\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "hết thời hạn"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr "ngoại lệ yêu cầu"
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr "lỗi bất ngờ"
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "các tập tin"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "tổng quát"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "âm nhạc"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "mạng xã hội"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "hình ảnh"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "phim"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "CNTT"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "tin tức"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "bản đồ"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "khoa học"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "Cài đặt không hợp lệ, xin xem lại tuỳ chỉnh"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "Cài đặt không hợp lệ"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "lỗi tìm kiếm"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "{minutes} phút() trước"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "{hours} giờ(), {minutes} phút() trước"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "Trình tạo giá trị ngẫu nhiên"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "Tạo các giá trị ngẫu nhiên khác nhau"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "Các hàm thống kê"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "Tính toán {functions} của các đối số"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "Thời gian trình tìm kiếm (giây)"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "Tải trang (giây)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "Số lượng kết quả"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "Điểm số"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "Điểm số cho từng kết quả"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "Các lỗi"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(LỖI THỜI)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "Mục này đã được thay thế bởi"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr "Không có bản tóm tắt nào cho ấn phẩm này."
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "Viết lại các liên kết HTTP thành HTTPS khi có thể"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "Cuộn liên tục"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "Tự động tải trang kế tiếp khi cuộn đến cuối trang hiện tại"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr "Viết lại DOI Truy Cập Miễn Phí"
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "Tránh việc trả phí bằng cách chuyển hướng đến các phiên bản truy cập miễn phí của ấn phẩm khi có thể"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "Mở kết quả trên những thẻ trình duyệt mới"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "Theo mặc định thì các kết quả được mở trên cùng một cửa sổ. Phần mở rộng này sẽ ghi đè lên hành vi mặc định đó để mở các liên kết trên các thẻ/cửa sổ mới. (yêu cầu JavaScript)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "Tìm kiếm khi chọn danh mục đơn"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "Thực thi tìm kiếm ngay khi chọn một danh mục. Tắt đi để chọn nhiều danh mục. (yêu cầu JavaScript)"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "Hiện IP của bạn khi gõ \"ip\" và hiện user agent khi gõ \"user agent\"."
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "Trình loại bỏ URL theo dõi"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "Loại bỏ các đối số theo dõi từ URL trả về"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "Các phím tắt Vim-like"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "Điều hướng các kết quả tìm kiếm với các phím tắt Vim-like (yêu cầu JavaScript). Nhấn phím \"h\" trên trang chính hoặc trang kết quả để xem trợ giúp."
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "Không tìm thấy trang"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "Đi đến %(search_page)s."
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "tìm kiếm trang"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "tuỳ chỉnh"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "thông tin về"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "Tuỳ chỉnh"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "Các danh mục mặc định"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "Ngôn ngữ tìm kiếm"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "Ngôn ngữ mặc định"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "Ngôn ngữ giao diện"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "Gợi ý tự động"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "Proxy hình ảnh"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "Đã "
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "Đã tắt"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "Phương pháp"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "Tìm Kiếm An Toàn"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "Nghiêm ngặt"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "Vừa phải"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "Không"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "Nền"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "Màu sắc"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "Xanh lam (mặc định)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "Tím"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "Xanh lục"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "Lục lam"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "Cam"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "Đỏ"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "Các trình tìm kiếm đang được dùng"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "Tên trình tìm kiếm"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "Danh mục"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "Cho phép"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "Chặn"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "Những cài đặt này được lưu trữ trong các cookie, điều này cho phép chúng tôi không phải lưu các dữ liệu về bạn."
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "Những cookie này chỉ phục vụ cho chính bạn, chúng tôi không sử dụng chúng để theo dõi bạn."
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "lưu"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "Đưa về mặc định"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "trở về"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "URL Tìm kiếm"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "Tải về các kết quả"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "Các đáp án"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "Các gợi ý"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "trang liền trước"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "trang tiếp theo"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "Tìm kiếm về..."
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "Các thông số về trình tìm kiếm"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "ngữ cảnh gốc"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "Seeder"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "Leecher"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "liên kết magnet"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "tập tin torrent"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "Nhấp vào hình kính lúp để tiến hành tìm kiếm"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "Hiện kết quả trên các thẻ mới"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "Bật"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "Tắt"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "đã lưu cache"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "Cài đặt nâng cao"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "Đóng"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "Lỗi!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "Được cung cấp bởi"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "một trình tìm kiếm đa nguồn, dễ tuỳ biến và tôn trọng quyền riêng tư"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "đã proxy"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "có hỗ trợ"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "không hỗ trợ"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "Tổng quát"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "Các trình tìm kiếm"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "Các phần mở rộng"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "Trình trả lời nhanh"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Các cookie"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "Bạn muốn tìm kiếm bằng ngôn ngữ nào?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "Thay đổi ngôn ngữ giao diện"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "Tìm kiếm ngay khi gõ"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "Proxy kết quả hình ảnh qua searx"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "Thay đổi cách thức các cụm từ tìm kiếm được gửi đi, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">tìm hiểu thêm về các phương thức tìm kiếm</a>"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "Lọc các nội dung"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "Thay đổi giao diện searx"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "Chọn phong cách cho nền này"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "Phong cách"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr "Trình xử lý DOI Truy Cập Miễn Phí"
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr "Chuyển hướng đến các phiên bản truy cập miễn phí của ấn phẩm khi có thể (yêu cầu phần mở rộng)"
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "Lối tắt"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "Ngôn ngữ được chọn"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "Khoảng thời gian"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "Thời gian trung bình"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "Thời gian tối đa"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "Đây là danh sách các module trả lời nhanh của searx"
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "Tên"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "Các từ khoá"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "Mô tả"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "Các ví dụ"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "Đây là danh sách các cookie và giá trị của chúng mà searx đang lưu trữ trên máy tính của bạn."
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "Với danh sách này, bạn có thể đánh giá tính minh bạch của searx."
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Tên cookie"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "Giá trị"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr "URL tìm kiếm của tuỳ chỉnh được lưu hiện tại"
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr "Ghi chú: việc định rõ cài đặt cá nhân trong URL tìm kiếm có thể làm suy giảm mức độ riêng tư vì nó chuyển dữ liệu đến các trang kết quả được nhấp chọn."
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "Kết quả tìm kiếm"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "Thử tìm kiếm:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "Các trình tìm kiếm không nhận được kết quả"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "Các liên kết"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "Bắt đầu tìm kiếm"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "các thông số"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "Bất kỳ lúc nào"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "Hôm trước"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "Tuần trước"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "Tháng trước"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "Năm ngoái"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "Cẩn thận!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "Có vẻ như bạn mới sử dụng searx lần đầu."
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "Thông tin!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "hiện tại không có cookie nào."
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "Hiện không có dữ liệu nào."
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "Các trình tìm kiếm không nhận được kết quả."
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr "Xin thử lại lần nữa hoặc tìm một server searx khác"
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "Xin lỗi!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "chúng tôi không tìm thấy kết quả nào. Xin gõ cụm từ khác hoặc tìm kiếm trong nhiều danh mục hơn."
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "Tốt lắm!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "Lưu cài đặt thành công."
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "Quái quỷ thật!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "Đã có sự cố."
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "hiện nội dung"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "ẩn nội dung"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "Xem hình ảnh"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "Xem nguồn"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "hiện bản đồ"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "ẩn bản đồ"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "hiện chi tiết"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "ẩn chi tiết"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "Kích thước tập tin"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "Byte"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "kiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "MiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "GiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "TiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "Số lượng tập tin"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "hiện "
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "ẩn phim"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "Tải thêm..."
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "Không tìm thấy gì"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "Có hỗ trợ ngôn ngữ được chọn"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "Giao diện người dùng"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "Quyền riêng tư"
diff --git a/searx/translations/zh_CN/LC_MESSAGES/messages.po b/searx/translations/zh_CN/LC_MESSAGES/messages.po
index f7a7068..78acb2d 100644
--- a/searx/translations/zh_CN/LC_MESSAGES/messages.po
+++ b/searx/translations/zh_CN/LC_MESSAGES/messages.po
@@ -3,15 +3,18 @@
# This file is distributed under the same license as the PROJECT project.
#
# Translators:
+# Crystal RainSlide, 2018
+# Mingye Wang <arthur200126@gmail.com>, 2018
+# Sion Kazama, 2018
# wenke, 2015
-# wenke, 2015-2017
+# wenke, 2015-2018
msgid ""
msgstr ""
"Project-Id-Version: searx\n"
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
"POT-Creation-Date: 2017-11-01 21:31+0100\n"
-"PO-Revision-Date: 2017-11-01 20:31+0000\n"
-"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
+"PO-Revision-Date: 2018-12-10 08:32+0000\n"
+"Last-Translator: Crystal RainSlide\n"
"Language-Team: Chinese (China) (http://www.transifex.com/asciimoo/searx/language/zh_CN/)\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
@@ -58,7 +61,7 @@ msgstr "视频"
#: searx/webapp.py:142
msgid "it"
-msgstr "it"
+msgstr "IT"
#: searx/webapp.py:143
msgid "news"
@@ -74,7 +77,7 @@ msgstr "学术"
#: searx/webapp.py:399 searx/webapp.py:658
msgid "Invalid settings, please edit your preferences"
-msgstr "无效的设置,请编辑你的首选项"
+msgstr "设置无效,请编辑您的首选项"
#: searx/webapp.py:415
msgid "Invalid settings"
@@ -86,11 +89,11 @@ msgstr "搜索错误"
#: searx/webapp.py:530
msgid "{minutes} minute(s) ago"
-msgstr "{minutes}分钟之前"
+msgstr "{minutes} 分钟前"
#: searx/webapp.py:532
msgid "{hours} hour(s), {minutes} minute(s) ago"
-msgstr "{hours}小时{minutes}分钟之前"
+msgstr "{hours} 小时 {minutes} 分钟前"
#: searx/answerers/random/answerer.py:53
msgid "Random value generator"
@@ -106,7 +109,7 @@ msgstr "统计功能"
#: searx/answerers/statistics/answerer.py:54
msgid "Compute {functions} of the arguments"
-msgstr "计算 {functions}参数"
+msgstr "计算 {functions} 参数"
#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
msgid "Engine time (sec)"
@@ -114,7 +117,7 @@ msgstr "搜索引擎时间(秒)"
#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
msgid "Page loads (sec)"
-msgstr "页面加载 (秒)"
+msgstr "页面加载(秒)"
#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
#: searx/templates/oscar/results.html:95
@@ -128,7 +131,7 @@ msgstr "得分"
#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
msgid "Scores per result"
-msgstr "每个结果等分"
+msgstr "每个结果的分数"
#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
msgid "Errors"
@@ -136,19 +139,19 @@ msgstr "错误"
#: searx/engines/pdbe.py:87
msgid "{title}&nbsp;(OBSOLETE)"
-msgstr "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(过时)"
#: searx/engines/pdbe.py:91
msgid "This entry has been superseded by"
-msgstr "此条目已经被取代"
+msgstr "此条目已被取代"
#: searx/engines/pubmed.py:74
msgid "No abstract is available for this publication."
-msgstr ""
+msgstr "本出版物没有摘要。"
#: searx/plugins/https_rewrite.py:32
msgid "Rewrite HTTP links to HTTPS if possible"
-msgstr "尽可能重定向HTTP链接到HTTPS"
+msgstr "将支持 HTTPS 的 HTTP 链接改为 HTTPS 链接"
#: searx/plugins/infinite_scroll.py:3
msgid "Infinite scroll"
@@ -160,13 +163,13 @@ msgstr "滚动到当前页面底部时自动加载下一页"
#: searx/plugins/oa_doi_rewrite.py:9
msgid "Open Access DOI rewrite"
-msgstr ""
+msgstr "开放访问 DOI 重定向"
#: searx/plugins/oa_doi_rewrite.py:10
msgid ""
"Avoid paywalls by redirecting to open-access versions of publications when "
"available"
-msgstr "重定向到可浏览的文章来避免付费墙(如果可用)"
+msgstr "尽量重定向到开放访问的文章以避免付费墙(如果可用)"
#: searx/plugins/open_results_on_new_tab.py:18
#: searx/templates/oscar/preferences.html:114
@@ -178,7 +181,7 @@ msgstr "在新标签页打开搜索链接"
msgid ""
"Results are opened in the same window by default. This plugin overwrites the"
" default behaviour to open links on new tabs/windows. (JavaScript required)"
-msgstr "搜索结果默认在原窗口打开。这个插件使其在新标签页/窗口打开。(需要启用JavaScript )"
+msgstr "搜索结果默认在原窗口打开。此插件能使其在新标签页或新窗口打开。(需启用 JavaScript)"
#: searx/plugins/search_on_category_select.py:18
msgid "Search on category select"
@@ -188,13 +191,13 @@ msgstr "搜索类别选择"
msgid ""
"Perform search immediately if a category selected. Disable to select "
"multiple categories. (JavaScript required)"
-msgstr "选中一个类别立即搜索。禁用可以选择多个类别搜索。(需要启用JavaScript )"
+msgstr "选中一个类别后立即执行搜索。禁用后,可以选择多个类别一起搜索。(需启用 JavaScript)"
#: searx/plugins/self_info.py:20
msgid ""
"Displays your IP if the query is \"ip\" and your user agent if the query "
"contains \"user agent\"."
-msgstr "搜索“ip”显示你的ip以及搜索内容含有“user agent”显示你的user agent。"
+msgstr "当您搜索「ip」时,这将会显示您的 IP 地址;同理,在搜索「user agent」时,将会显示您的 User Agent。"
#: searx/plugins/tracker_url_remover.py:26
msgid "Tracker URL remover"
@@ -206,13 +209,13 @@ msgstr "从返回的链接中移除跟踪参数"
#: searx/plugins/vim_hotkeys.py:3
msgid "Vim-like hotkeys"
-msgstr "类vim快捷键"
+msgstr "Vim 式快捷键"
#: searx/plugins/vim_hotkeys.py:4
msgid ""
"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
"\"h\" key on main or result page to get help."
-msgstr "使用类vim快捷键浏览搜索结果(JavaScript启用)。按“h”键获取帮助。"
+msgstr "使用 Vim 式快捷键浏览搜索结果(需要 JavaScript)。在主页或结果页按“h”键获取帮助。"
#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
@@ -225,7 +228,7 @@ msgstr "未找到网页"
#: searx/templates/simple/404.html:6
#, python-format
msgid "Go to %(search_page)s."
-msgstr "返回%(search_page)s。"
+msgstr "前往 %(search_page)s。"
#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
@@ -342,7 +345,7 @@ msgstr "安全搜索"
#: searx/templates/oscar/preferences.html:90
#: searx/templates/simple/preferences.html:66
msgid "Strict"
-msgstr "严格模式"
+msgstr "严格"
#: searx/templates/courgette/preferences.html:67
#: searx/templates/legacy/preferences.html:68
@@ -356,7 +359,7 @@ msgstr "中等"
#: searx/templates/oscar/preferences.html:92
#: searx/templates/simple/preferences.html:68
msgid "None"
-msgstr "不过滤"
+msgstr "无"
#: searx/templates/courgette/preferences.html:73
#: searx/templates/legacy/preferences.html:74
@@ -444,7 +447,7 @@ msgstr "阻止"
msgid ""
"These settings are stored in your cookies, this allows us not to store this "
"data about you."
-msgstr "这些设置保存在你的cookie,我们将不能保存你的数据。"
+msgstr "这些设置被存储在您的 cookie 中,这种保存设置的方式允许我们不存储您的设置数据。"
#: searx/templates/courgette/preferences.html:124
#: searx/templates/legacy/preferences.html:121
@@ -454,7 +457,7 @@ msgstr "这些设置保存在你的cookie,我们将不能保存你的数据。
msgid ""
"These cookies serve your sole convenience, we don't use these cookies to "
"track you."
-msgstr "这些cookie是为了让你更加方便,我们不会使用cookie追踪你。"
+msgstr "这些 Cookie 信息可辅助您便捷地使用服务,我们不会利用这些信息来追踪您。"
#: searx/templates/courgette/preferences.html:127
#: searx/templates/legacy/preferences.html:124
@@ -544,14 +547,14 @@ msgstr "原始上下文"
#: searx/templates/oscar/result_templates/torrent.html:6
#: searx/templates/simple/result_templates/torrent.html:9
msgid "Seeder"
-msgstr "Seeder"
+msgstr "做种"
#: searx/templates/courgette/result_templates/torrent.html:7
#: searx/templates/legacy/result_templates/torrent.html:11
#: searx/templates/oscar/result_templates/torrent.html:6
#: searx/templates/simple/result_templates/torrent.html:9
msgid "Leecher"
-msgstr "Leecher"
+msgstr "接收"
#: searx/templates/courgette/result_templates/torrent.html:9
#: searx/templates/legacy/result_templates/torrent.html:9
@@ -570,7 +573,7 @@ msgstr "种子文件"
#: searx/templates/legacy/categories.html:8
#: searx/templates/simple/categories.html:6
msgid "Click on the magnifier to perform search"
-msgstr "点击放大镜开始搜索"
+msgstr "点击放大镜按钮开始搜索"
#: searx/templates/legacy/preferences.html:84
#: searx/templates/oscar/preferences.html:113
@@ -622,7 +625,7 @@ msgstr "技术支持来自"
#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
msgid "a privacy-respecting, hackable metasearch engine"
-msgstr "一个尊重隐私,可再开发的元搜索引擎"
+msgstr "一个尊重隐私、可再开发的元搜索引擎"
#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
#: searx/templates/simple/macros.html:43
@@ -662,12 +665,12 @@ msgstr "智能答复"
#: searx/templates/oscar/preferences.html:17
#: searx/templates/oscar/preferences.html:272
msgid "Cookies"
-msgstr "Cookie"
+msgstr "Cookies"
#: searx/templates/oscar/preferences.html:42
#: searx/templates/simple/preferences.html:48
msgid "What language do you prefer for search?"
-msgstr "你搜索时更喜欢什么语言?"
+msgstr "您更喜欢使用什么语言进行搜索?"
#: searx/templates/oscar/preferences.html:48
#: searx/templates/simple/preferences.html:128
@@ -682,14 +685,14 @@ msgstr "自动补全搜索字词"
#: searx/templates/oscar/preferences.html:69
#: searx/templates/simple/preferences.html:173
msgid "Proxying image results through searx"
-msgstr "通过searx代理图片"
+msgstr "通过 searx 代理图片结果"
#: searx/templates/oscar/preferences.html:78
msgid ""
"Change how forms are submited, <a "
"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
" rel=\"external\">learn more about request methods</a>"
-msgstr "更改请求方法,<a href=\"http://zh.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">深入了解请求方法</a>"
+msgstr "更改提交表单时使用的请求方法,<a href=\"https://zh.wikipedia.org/wiki/%E8%B6%85%E6%96%87%E6%9C%AC%E4%BC%A0%E8%BE%93%E5%8D%8F%E8%AE%AE#%E8%AF%B7%E6%B1%82%E6%96%B9%E6%B3%95\" rel=\"external\">深入了解请求方法</a>"
#: searx/templates/oscar/preferences.html:87
#: searx/templates/simple/preferences.html:71
@@ -699,12 +702,12 @@ msgstr "过滤内容"
#: searx/templates/oscar/preferences.html:97
#: searx/templates/simple/preferences.html:139
msgid "Change searx layout"
-msgstr "改变searx布局"
+msgstr "改变 searx 布局"
#: searx/templates/oscar/preferences.html:106
#: searx/templates/oscar/preferences.html:111
msgid "Choose style for this theme"
-msgstr "选择这个主题的样式"
+msgstr "选择此主题的样式"
#: searx/templates/oscar/preferences.html:106
#: searx/templates/oscar/preferences.html:111
@@ -713,13 +716,13 @@ msgstr "样式"
#: searx/templates/oscar/preferences.html:122
msgid "Open Access DOI resolver"
-msgstr ""
+msgstr "开放访问 DOI 解析器"
#: searx/templates/oscar/preferences.html:123
msgid ""
"Redirect to open-access versions of publications when available (plugin "
"required)"
-msgstr ""
+msgstr "尽可能重定向到出版物的开放访问版本(需要插件)"
#: searx/templates/oscar/preferences.html:163
#: searx/templates/oscar/preferences.html:175
@@ -752,7 +755,7 @@ msgstr "最大时间"
#: searx/templates/oscar/preferences.html:248
msgid "This is the list of searx's instant answering modules."
-msgstr "这是searx的即时回答模块。"
+msgstr "这是 searx 的即时回答模块列表。"
#: searx/templates/oscar/preferences.html:252
msgid "Name"
@@ -768,21 +771,21 @@ msgstr "描述"
#: searx/templates/oscar/preferences.html:255
msgid "Examples"
-msgstr "例子"
+msgstr "示例"
#: searx/templates/oscar/preferences.html:275
msgid ""
"This is the list of cookies and their values searx is storing on your "
"computer."
-msgstr "这里展示了searx保存在你的电脑上的cookie。"
+msgstr "此列表展示了 searx 在您设备上存储的 cookie 信息。"
#: searx/templates/oscar/preferences.html:276
msgid "With that list, you can assess searx transparency."
-msgstr "有了这个列表,你可以评估searx透明度。"
+msgstr "您可以基于此表格来评估 searx 的透明度。"
#: searx/templates/oscar/preferences.html:281
msgid "Cookie name"
-msgstr "cookie名称"
+msgstr "Cookie 名称"
#: searx/templates/oscar/preferences.html:282
msgid "Value"
@@ -796,7 +799,7 @@ msgstr "当前保存选项的搜索链接"
msgid ""
"Note: specifying custom settings in the search URL can reduce privacy by "
"leaking data to the clicked result sites."
-msgstr "注意:在搜索链接中保存自定义设置会把数据泄露给点击的网站泄漏隐私。"
+msgstr "注意:在搜索链接中保存自定义设置会把数据泄露给点击的结果网站,从而泄漏隐私。"
#: searx/templates/oscar/results.html:17
msgid "Search results"
@@ -810,7 +813,7 @@ msgstr "尝试搜索:"
#: searx/templates/oscar/results.html:100
#: searx/templates/simple/results.html:25
msgid "Engines cannot retrieve results"
-msgstr "引擎无法检索结果"
+msgstr "引擎无法获取结果"
#: searx/templates/oscar/results.html:131
msgid "Links"
@@ -858,29 +861,29 @@ msgstr "小心!"
#: searx/templates/oscar/messages/first_time.html:7
msgid "It look like you are using searx first time."
-msgstr "看起来你是第一次使用searx。"
+msgstr "看来这是您第一次使用 searx。"
#: searx/templates/oscar/messages/no_cookies.html:3
msgid "Information!"
-msgstr "信息!"
+msgstr "注意!"
#: searx/templates/oscar/messages/no_cookies.html:4
msgid "currently, there are no cookies defined."
-msgstr "目前还未保存cookie。"
+msgstr "目前,还没有任何信息被存储在 Cookie 中。"
#: searx/templates/oscar/messages/no_data_available.html:4
msgid "There is currently no data available. "
-msgstr "目前没有数据可用。"
+msgstr "目前没有可用的数据。"
#: searx/templates/oscar/messages/no_results.html:4
#: searx/templates/simple/messages/no_results.html:4
msgid "Engines cannot retrieve results."
-msgstr "引擎无法检索结果。"
+msgstr "引擎无法获取结果。"
#: searx/templates/oscar/messages/no_results.html:10
#: searx/templates/simple/messages/no_results.html:10
msgid "Please, try again later or find another searx instance."
-msgstr "请稍后再试或使用其他的searx实例。"
+msgstr "请稍后再试,或寻找其它的 searx 实例替代。"
#: searx/templates/oscar/messages/no_results.html:14
#: searx/templates/simple/messages/no_results.html:14
@@ -892,7 +895,7 @@ msgstr "抱歉!"
msgid ""
"we didn't find any results. Please use another query or search in more "
"categories."
-msgstr "我们没有找到任何结果。请换用其他词语或在更多类别中搜索。"
+msgstr "我们没有找到任何结果。请使用其它关键词或在更多类别中搜索。"
#: searx/templates/oscar/messages/save_settings_successfull.html:7
msgid "Well done!"
@@ -961,22 +964,22 @@ msgstr "B"
#: searx/templates/oscar/result_templates/torrent.html:10
#: searx/templates/simple/result_templates/torrent.html:13
msgid "kiB"
-msgstr "KB"
+msgstr "kiB"
#: searx/templates/oscar/result_templates/torrent.html:11
#: searx/templates/simple/result_templates/torrent.html:14
msgid "MiB"
-msgstr "MB"
+msgstr "MiB"
#: searx/templates/oscar/result_templates/torrent.html:12
#: searx/templates/simple/result_templates/torrent.html:15
msgid "GiB"
-msgstr "GB"
+msgstr "GiB"
#: searx/templates/oscar/result_templates/torrent.html:13
#: searx/templates/simple/result_templates/torrent.html:16
msgid "TiB"
-msgstr "TB"
+msgstr "TiB"
#: searx/templates/oscar/result_templates/torrent.html:15
#: searx/templates/simple/result_templates/torrent.html:20
@@ -995,7 +998,7 @@ msgstr "隐藏视频"
#: searx/templates/pix-art/results.html:28
msgid "Load more..."
-msgstr "载入更多..."
+msgstr "载入更多……"
#: searx/templates/simple/base.html:31
msgid "No item found"
@@ -1003,7 +1006,7 @@ msgstr "未找到条目"
#: searx/templates/simple/preferences.html:89
msgid "Supports selected language"
-msgstr "是否支持选定的语言"
+msgstr "支持选定的语言"
#: searx/templates/simple/preferences.html:118
msgid "User interface"
diff --git a/searx/translations/zh_TW/LC_MESSAGES/messages.po b/searx/translations/zh_TW/LC_MESSAGES/messages.po
new file mode 100644
index 0000000..0a4796f
--- /dev/null
+++ b/searx/translations/zh_TW/LC_MESSAGES/messages.po
@@ -0,0 +1,1015 @@
+# Translations template for PROJECT.
+# Copyright (C) 2017 ORGANIZATION
+# This file is distributed under the same license as the PROJECT project.
+#
+# Translators:
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2016
+# Jeff Huang <s8321414@gmail.com>, 2017
+# Mingye Wang <arthur200126@gmail.com>, 2018
+msgid ""
+msgstr ""
+"Project-Id-Version: searx\n"
+"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
+"POT-Creation-Date: 2017-11-01 21:31+0100\n"
+"PO-Revision-Date: 2018-09-16 00:29+0000\n"
+"Last-Translator: Mingye Wang <arthur200126@gmail.com>\n"
+"Language-Team: Chinese (Taiwan) (http://www.transifex.com/asciimoo/searx/language/zh_TW/)\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Generated-By: Babel 2.3.4\n"
+"Language: zh_TW\n"
+"Plural-Forms: nplurals=1; plural=0;\n"
+
+#: searx/search.py:137 searx/search.py:182
+msgid "timeout"
+msgstr "逾時"
+
+#: searx/search.py:144
+msgid "request exception"
+msgstr "請求例外"
+
+#: searx/search.py:151
+msgid "unexpected crash"
+msgstr "未預期的當機"
+
+#: searx/webapp.py:136
+msgid "files"
+msgstr "檔案"
+
+#: searx/webapp.py:137
+msgid "general"
+msgstr "一般"
+
+#: searx/webapp.py:138
+msgid "music"
+msgstr "音樂"
+
+#: searx/webapp.py:139
+msgid "social media"
+msgstr "社群媒體"
+
+#: searx/webapp.py:140
+msgid "images"
+msgstr "圖片"
+
+#: searx/webapp.py:141
+msgid "videos"
+msgstr "影片"
+
+#: searx/webapp.py:142
+msgid "it"
+msgstr "IT"
+
+#: searx/webapp.py:143
+msgid "news"
+msgstr "新聞"
+
+#: searx/webapp.py:144
+msgid "map"
+msgstr "地圖"
+
+#: searx/webapp.py:145
+msgid "science"
+msgstr "科學"
+
+#: searx/webapp.py:399 searx/webapp.py:658
+msgid "Invalid settings, please edit your preferences"
+msgstr "無效的設定,請編輯您的偏好設定"
+
+#: searx/webapp.py:415
+msgid "Invalid settings"
+msgstr "無效的設定"
+
+#: searx/webapp.py:449 searx/webapp.py:493
+msgid "search error"
+msgstr "搜尋錯誤"
+
+#: searx/webapp.py:530
+msgid "{minutes} minute(s) ago"
+msgstr "{minutes} 分鐘前"
+
+#: searx/webapp.py:532
+msgid "{hours} hour(s), {minutes} minute(s) ago"
+msgstr "{hours} 小時 {minutes} 分鐘前"
+
+#: searx/answerers/random/answerer.py:53
+msgid "Random value generator"
+msgstr "隨機數值產生器"
+
+#: searx/answerers/random/answerer.py:54
+msgid "Generate different random values"
+msgstr "生成不同的隨機數值"
+
+#: searx/answerers/statistics/answerer.py:53
+msgid "Statistics functions"
+msgstr "統計功能"
+
+#: searx/answerers/statistics/answerer.py:54
+msgid "Compute {functions} of the arguments"
+msgstr "計算 {functions} 參數"
+
+#: searx/engines/__init__.py:194 searx/engines/flycheck___init__.py:201
+msgid "Engine time (sec)"
+msgstr "引擎時間(秒)"
+
+#: searx/engines/__init__.py:198 searx/engines/flycheck___init__.py:205
+msgid "Page loads (sec)"
+msgstr "頁面載入(秒)"
+
+#: searx/engines/__init__.py:202 searx/engines/flycheck___init__.py:209
+#: searx/templates/oscar/results.html:95
+#: searx/templates/simple/results.html:20
+msgid "Number of results"
+msgstr "結果筆數"
+
+#: searx/engines/__init__.py:206 searx/engines/flycheck___init__.py:213
+msgid "Scores"
+msgstr "分數"
+
+#: searx/engines/__init__.py:210 searx/engines/flycheck___init__.py:217
+msgid "Scores per result"
+msgstr "每個結果的分數"
+
+#: searx/engines/__init__.py:214 searx/engines/flycheck___init__.py:221
+msgid "Errors"
+msgstr "錯誤"
+
+#: searx/engines/pdbe.py:87
+msgid "{title}&nbsp;(OBSOLETE)"
+msgstr "{title}&nbsp;(已過時)"
+
+#: searx/engines/pdbe.py:91
+msgid "This entry has been superseded by"
+msgstr "此條目已被取代"
+
+#: searx/engines/pubmed.py:74
+msgid "No abstract is available for this publication."
+msgstr "此出版品無可用摘要。"
+
+#: searx/plugins/https_rewrite.py:32
+msgid "Rewrite HTTP links to HTTPS if possible"
+msgstr "可以的話將 HTTP 連結重寫為 HTTPS"
+
+#: searx/plugins/infinite_scroll.py:3
+msgid "Infinite scroll"
+msgstr "無限捲動"
+
+#: searx/plugins/infinite_scroll.py:4
+msgid "Automatically load next page when scrolling to bottom of current page"
+msgstr "當捲動至目前頁面的底部時自動載入下一頁"
+
+#: searx/plugins/oa_doi_rewrite.py:9
+msgid "Open Access DOI rewrite"
+msgstr "開放存取 DOI 重寫"
+
+#: searx/plugins/oa_doi_rewrite.py:10
+msgid ""
+"Avoid paywalls by redirecting to open-access versions of publications when "
+"available"
+msgstr "盡可能重新導向至出版品的開放存取版本,來避免付費牆"
+
+#: searx/plugins/open_results_on_new_tab.py:18
+#: searx/templates/oscar/preferences.html:114
+#: searx/templates/simple/preferences.html:149
+msgid "Open result links on new browser tabs"
+msgstr "在新瀏覽器分頁中開啟結果連結"
+
+#: searx/plugins/open_results_on_new_tab.py:19
+msgid ""
+"Results are opened in the same window by default. This plugin overwrites the"
+" default behaviour to open links on new tabs/windows. (JavaScript required)"
+msgstr "結果預設會在同一個視窗開啟。這個外掛程式會覆寫預設行為,會在新分頁/視窗中開啟連結。(需要 JavaScript)"
+
+#: searx/plugins/search_on_category_select.py:18
+msgid "Search on category select"
+msgstr "類別選取搜尋"
+
+#: searx/plugins/search_on_category_select.py:19
+msgid ""
+"Perform search immediately if a category selected. Disable to select "
+"multiple categories. (JavaScript required)"
+msgstr "若分類被選取時立刻執行搜尋。停用以選取多個分類。(需要 JavaScript)"
+
+#: searx/plugins/self_info.py:20
+msgid ""
+"Displays your IP if the query is \"ip\" and your user agent if the query "
+"contains \"user agent\"."
+msgstr "若搜尋字串爲「ip」則顯示您的 IP,而若是「user agent」則顯示您的使用者代理字串。"
+
+#: searx/plugins/tracker_url_remover.py:26
+msgid "Tracker URL remover"
+msgstr "追蹤器 URL 移除器"
+
+#: searx/plugins/tracker_url_remover.py:27
+msgid "Remove trackers arguments from the returned URL"
+msgstr "從傳回的 URL 中移除追蹤器參數"
+
+#: searx/plugins/vim_hotkeys.py:3
+msgid "Vim-like hotkeys"
+msgstr "類 Vim 快捷鍵"
+
+#: searx/plugins/vim_hotkeys.py:4
+msgid ""
+"Navigate search results with Vim-like hotkeys (JavaScript required). Press "
+"\"h\" key on main or result page to get help."
+msgstr "以類 Vim 的快捷鍵導覽搜尋結果(需要 JavaScript)。在主頁面或結果頁面按「h」鍵以取得說明。"
+
+#: searx/templates/courgette/404.html:4 searx/templates/legacy/404.html:4
+#: searx/templates/oscar/404.html:4 searx/templates/pix-art/404.html:4
+#: searx/templates/simple/404.html:4
+msgid "Page not found"
+msgstr "找不到頁面"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+#, python-format
+msgid "Go to %(search_page)s."
+msgstr "到 %(search_page)s。"
+
+#: searx/templates/courgette/404.html:6 searx/templates/legacy/404.html:6
+#: searx/templates/oscar/404.html:6 searx/templates/pix-art/404.html:6
+#: searx/templates/simple/404.html:6
+msgid "search page"
+msgstr "搜尋頁面"
+
+#: searx/templates/courgette/index.html:9
+#: searx/templates/courgette/index.html:13
+#: searx/templates/courgette/results.html:5
+#: searx/templates/legacy/index.html:8 searx/templates/legacy/index.html:12
+#: searx/templates/oscar/navbar.html:7
+#: searx/templates/oscar/preferences.html:3
+#: searx/templates/pix-art/index.html:8
+msgid "preferences"
+msgstr "偏好設定"
+
+#: searx/templates/courgette/index.html:11
+#: searx/templates/legacy/index.html:10 searx/templates/oscar/about.html:2
+#: searx/templates/oscar/navbar.html:6 searx/templates/pix-art/index.html:7
+msgid "about"
+msgstr "關於"
+
+#: searx/templates/courgette/preferences.html:5
+#: searx/templates/legacy/preferences.html:5
+#: searx/templates/oscar/preferences.html:8
+#: searx/templates/pix-art/preferences.html:5
+#: searx/templates/simple/preferences.html:26
+msgid "Preferences"
+msgstr "偏好設定"
+
+#: searx/templates/courgette/preferences.html:9
+#: searx/templates/legacy/preferences.html:9
+#: searx/templates/oscar/preferences.html:33
+#: searx/templates/oscar/preferences.html:35
+#: searx/templates/simple/preferences.html:34
+msgid "Default categories"
+msgstr "預設分類"
+
+#: searx/templates/courgette/preferences.html:13
+#: searx/templates/legacy/preferences.html:14
+#: searx/templates/oscar/preferences.html:41
+#: searx/templates/pix-art/preferences.html:9
+#: searx/templates/simple/preferences.html:39
+#: searx/templates/simple/preferences.html:163
+msgid "Search language"
+msgstr "搜尋語言"
+
+#: searx/templates/courgette/preferences.html:16
+#: searx/templates/legacy/preferences.html:17
+#: searx/templates/oscar/languages.html:6
+#: searx/templates/pix-art/preferences.html:12
+#: searx/templates/simple/languages.html:2
+#: searx/templates/simple/preferences.html:42
+msgid "Default language"
+msgstr "預設語言"
+
+#: searx/templates/courgette/preferences.html:24
+#: searx/templates/legacy/preferences.html:25
+#: searx/templates/oscar/preferences.html:47
+#: searx/templates/pix-art/preferences.html:20
+#: searx/templates/simple/preferences.html:120
+msgid "Interface language"
+msgstr "介面語言"
+
+#: searx/templates/courgette/preferences.html:34
+#: searx/templates/legacy/preferences.html:35
+#: searx/templates/oscar/preferences.html:57
+#: searx/templates/simple/preferences.html:51
+msgid "Autocomplete"
+msgstr "自動完成"
+
+#: searx/templates/courgette/preferences.html:45
+#: searx/templates/legacy/preferences.html:46
+#: searx/templates/oscar/preferences.html:68
+#: searx/templates/simple/preferences.html:166
+msgid "Image proxy"
+msgstr "圖片代理伺服器"
+
+#: searx/templates/courgette/preferences.html:48
+#: searx/templates/legacy/preferences.html:49
+#: searx/templates/oscar/preferences.html:72
+#: searx/templates/simple/preferences.html:169
+msgid "Enabled"
+msgstr "已啟用"
+
+#: searx/templates/courgette/preferences.html:49
+#: searx/templates/legacy/preferences.html:50
+#: searx/templates/oscar/preferences.html:73
+#: searx/templates/simple/preferences.html:170
+msgid "Disabled"
+msgstr "已停用"
+
+#: searx/templates/courgette/preferences.html:54
+#: searx/templates/legacy/preferences.html:55
+#: searx/templates/oscar/preferences.html:77
+#: searx/templates/pix-art/preferences.html:30
+#: searx/templates/simple/preferences.html:156
+msgid "Method"
+msgstr "方法"
+
+#: searx/templates/courgette/preferences.html:63
+#: searx/templates/legacy/preferences.html:64
+#: searx/templates/oscar/preferences.html:86
+#: searx/templates/oscar/preferences.html:165
+#: searx/templates/oscar/preferences.html:173
+#: searx/templates/simple/preferences.html:63
+#: searx/templates/simple/preferences.html:90
+msgid "SafeSearch"
+msgstr "安全搜尋"
+
+#: searx/templates/courgette/preferences.html:66
+#: searx/templates/legacy/preferences.html:67
+#: searx/templates/oscar/preferences.html:90
+#: searx/templates/simple/preferences.html:66
+msgid "Strict"
+msgstr "嚴格"
+
+#: searx/templates/courgette/preferences.html:67
+#: searx/templates/legacy/preferences.html:68
+#: searx/templates/oscar/preferences.html:91
+#: searx/templates/simple/preferences.html:67
+msgid "Moderate"
+msgstr "適中"
+
+#: searx/templates/courgette/preferences.html:68
+#: searx/templates/legacy/preferences.html:69
+#: searx/templates/oscar/preferences.html:92
+#: searx/templates/simple/preferences.html:68
+msgid "None"
+msgstr "無"
+
+#: searx/templates/courgette/preferences.html:73
+#: searx/templates/legacy/preferences.html:74
+#: searx/templates/oscar/preferences.html:96
+#: searx/templates/pix-art/preferences.html:39
+#: searx/templates/simple/preferences.html:131
+msgid "Themes"
+msgstr "佈景主題"
+
+#: searx/templates/courgette/preferences.html:83
+msgid "Color"
+msgstr "顏色"
+
+#: searx/templates/courgette/preferences.html:86
+msgid "Blue (default)"
+msgstr "藍色(預設值)"
+
+#: searx/templates/courgette/preferences.html:87
+msgid "Violet"
+msgstr "紫色"
+
+#: searx/templates/courgette/preferences.html:88
+msgid "Green"
+msgstr "綠色"
+
+#: searx/templates/courgette/preferences.html:89
+msgid "Cyan"
+msgstr "青色"
+
+#: searx/templates/courgette/preferences.html:90
+msgid "Orange"
+msgstr "橘色"
+
+#: searx/templates/courgette/preferences.html:91
+msgid "Red"
+msgstr "紅色"
+
+#: searx/templates/courgette/preferences.html:96
+#: searx/templates/legacy/preferences.html:93
+#: searx/templates/pix-art/preferences.html:49
+#: searx/templates/simple/preferences.html:77
+msgid "Currently used search engines"
+msgstr "目前使用的搜尋引擎"
+
+#: searx/templates/courgette/preferences.html:100
+#: searx/templates/legacy/preferences.html:97
+#: searx/templates/oscar/preferences.html:162
+#: searx/templates/oscar/preferences.html:176
+#: searx/templates/pix-art/preferences.html:53
+#: searx/templates/simple/preferences.html:87
+msgid "Engine name"
+msgstr "引擎名稱"
+
+#: searx/templates/courgette/preferences.html:101
+#: searx/templates/legacy/preferences.html:98
+msgid "Category"
+msgstr "分類"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:113
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:110
+#: searx/templates/oscar/preferences.html:161
+#: searx/templates/oscar/preferences.html:177
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:64
+#: searx/templates/simple/preferences.html:86
+msgid "Allow"
+msgstr "允許"
+
+#: searx/templates/courgette/preferences.html:102
+#: searx/templates/courgette/preferences.html:114
+#: searx/templates/legacy/preferences.html:99
+#: searx/templates/legacy/preferences.html:111
+#: searx/templates/pix-art/preferences.html:54
+#: searx/templates/pix-art/preferences.html:65
+msgid "Block"
+msgstr "封鎖"
+
+#: searx/templates/courgette/preferences.html:122
+#: searx/templates/legacy/preferences.html:119
+#: searx/templates/oscar/preferences.html:297
+#: searx/templates/pix-art/preferences.html:73
+#: searx/templates/simple/preferences.html:180
+msgid ""
+"These settings are stored in your cookies, this allows us not to store this "
+"data about you."
+msgstr "這些設定只會儲存在您的 cookies 中,這樣我們無需也不會存儲關於您的資訊。"
+
+#: searx/templates/courgette/preferences.html:124
+#: searx/templates/legacy/preferences.html:121
+#: searx/templates/oscar/preferences.html:299
+#: searx/templates/pix-art/preferences.html:75
+#: searx/templates/simple/preferences.html:182
+msgid ""
+"These cookies serve your sole convenience, we don't use these cookies to "
+"track you."
+msgstr "這些 cookies 僅做為提供您方便之用,我們不會使用這些 cookies 來追蹤您。"
+
+#: searx/templates/courgette/preferences.html:127
+#: searx/templates/legacy/preferences.html:124
+#: searx/templates/oscar/preferences.html:305
+#: searx/templates/pix-art/preferences.html:78
+#: searx/templates/simple/preferences.html:185
+msgid "save"
+msgstr "儲存"
+
+#: searx/templates/courgette/preferences.html:128
+#: searx/templates/legacy/preferences.html:125
+#: searx/templates/oscar/preferences.html:307
+#: searx/templates/simple/preferences.html:186
+msgid "Reset defaults"
+msgstr "重設為預設值"
+
+#: searx/templates/courgette/preferences.html:129
+#: searx/templates/legacy/preferences.html:126
+#: searx/templates/oscar/preferences.html:306
+#: searx/templates/pix-art/preferences.html:79
+#: searx/templates/simple/preferences.html:187
+msgid "back"
+msgstr "返回"
+
+#: searx/templates/courgette/results.html:12
+#: searx/templates/legacy/results.html:13
+#: searx/templates/oscar/results.html:136
+#: searx/templates/simple/results.html:58
+msgid "Search URL"
+msgstr "搜尋網址"
+
+#: searx/templates/courgette/results.html:16
+#: searx/templates/legacy/results.html:17
+#: searx/templates/oscar/results.html:141
+#: searx/templates/simple/results.html:62
+msgid "Download results"
+msgstr "下載結果"
+
+#: searx/templates/courgette/results.html:34
+#: searx/templates/legacy/results.html:35
+#: searx/templates/simple/results.html:10
+msgid "Answers"
+msgstr "答案"
+
+#: searx/templates/courgette/results.html:42
+#: searx/templates/legacy/results.html:43
+#: searx/templates/oscar/results.html:116
+#: searx/templates/simple/results.html:42
+msgid "Suggestions"
+msgstr "建議"
+
+#: searx/templates/courgette/results.html:70
+#: searx/templates/legacy/results.html:81
+#: searx/templates/oscar/results.html:68 searx/templates/oscar/results.html:78
+#: searx/templates/simple/results.html:130
+msgid "previous page"
+msgstr "上一頁"
+
+#: searx/templates/courgette/results.html:81
+#: searx/templates/legacy/results.html:92
+#: searx/templates/oscar/results.html:62 searx/templates/oscar/results.html:84
+#: searx/templates/simple/results.html:145
+msgid "next page"
+msgstr "下一頁"
+
+#: searx/templates/courgette/search.html:3
+#: searx/templates/legacy/search.html:3 searx/templates/oscar/search.html:6
+#: searx/templates/oscar/search_full.html:9
+#: searx/templates/pix-art/search.html:3 searx/templates/simple/search.html:4
+msgid "Search for..."
+msgstr "搜尋……"
+
+#: searx/templates/courgette/stats.html:4 searx/templates/legacy/stats.html:4
+#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
+#: searx/templates/simple/stats.html:7
+msgid "Engine stats"
+msgstr "引擎統計"
+
+#: searx/templates/courgette/result_templates/images.html:4
+#: searx/templates/legacy/result_templates/images.html:4
+#: searx/templates/pix-art/result_templates/images.html:4
+msgid "original context"
+msgstr "原始內容"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Seeder"
+msgstr "播種者"
+
+#: searx/templates/courgette/result_templates/torrent.html:7
+#: searx/templates/legacy/result_templates/torrent.html:11
+#: searx/templates/oscar/result_templates/torrent.html:6
+#: searx/templates/simple/result_templates/torrent.html:9
+msgid "Leecher"
+msgstr "接收者"
+
+#: searx/templates/courgette/result_templates/torrent.html:9
+#: searx/templates/legacy/result_templates/torrent.html:9
+#: searx/templates/oscar/macros.html:23
+#: searx/templates/simple/result_templates/torrent.html:6
+msgid "magnet link"
+msgstr "磁力連結"
+
+#: searx/templates/courgette/result_templates/torrent.html:10
+#: searx/templates/legacy/result_templates/torrent.html:10
+#: searx/templates/oscar/macros.html:24
+#: searx/templates/simple/result_templates/torrent.html:7
+msgid "torrent file"
+msgstr "torrent 檔案"
+
+#: searx/templates/legacy/categories.html:8
+#: searx/templates/simple/categories.html:6
+msgid "Click on the magnifier to perform search"
+msgstr "在磁鐵上點選以執行搜尋"
+
+#: searx/templates/legacy/preferences.html:84
+#: searx/templates/oscar/preferences.html:113
+#: searx/templates/simple/preferences.html:142
+msgid "Results on new tabs"
+msgstr "在新分頁開啟結果"
+
+#: searx/templates/legacy/preferences.html:87
+#: searx/templates/oscar/preferences.html:117
+#: searx/templates/simple/preferences.html:145
+msgid "On"
+msgstr "開啟"
+
+#: searx/templates/legacy/preferences.html:88
+#: searx/templates/oscar/preferences.html:118
+#: searx/templates/simple/preferences.html:146
+msgid "Off"
+msgstr "關閉"
+
+#: searx/templates/legacy/result_templates/code.html:3
+#: searx/templates/legacy/result_templates/default.html:3
+#: searx/templates/legacy/result_templates/map.html:9
+#: searx/templates/oscar/macros.html:34 searx/templates/oscar/macros.html:48
+#: searx/templates/simple/macros.html:43
+msgid "cached"
+msgstr "已快取"
+
+#: searx/templates/oscar/advanced.html:4
+msgid "Advanced settings"
+msgstr "進階設定"
+
+#: searx/templates/oscar/base.html:62
+#: searx/templates/oscar/messages/first_time.html:4
+#: searx/templates/oscar/messages/save_settings_successfull.html:5
+#: searx/templates/oscar/messages/unknow_error.html:5
+msgid "Close"
+msgstr "關閉"
+
+#: searx/templates/oscar/base.html:64
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+#: searx/templates/simple/results.html:25
+msgid "Error!"
+msgstr "錯誤!"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "Powered by"
+msgstr "技術支援"
+
+#: searx/templates/oscar/base.html:90 searx/templates/simple/base.html:55
+msgid "a privacy-respecting, hackable metasearch engine"
+msgstr "一個尊重隱私,可再開發的集合式搜尋引擎"
+
+#: searx/templates/oscar/macros.html:36 searx/templates/oscar/macros.html:50
+#: searx/templates/simple/macros.html:43
+msgid "proxied"
+msgstr "已代理"
+
+#: searx/templates/oscar/macros.html:92
+msgid "supported"
+msgstr "支援"
+
+#: searx/templates/oscar/macros.html:96
+msgid "not supported"
+msgstr "不支援"
+
+#: searx/templates/oscar/preferences.html:13
+#: searx/templates/oscar/preferences.html:22
+#: searx/templates/simple/preferences.html:32
+msgid "General"
+msgstr "一般"
+
+#: searx/templates/oscar/preferences.html:14
+#: searx/templates/oscar/preferences.html:146
+#: searx/templates/simple/preferences.html:76
+msgid "Engines"
+msgstr "引擎"
+
+#: searx/templates/oscar/preferences.html:15
+#: searx/templates/oscar/preferences.html:219
+msgid "Plugins"
+msgstr "外掛程式"
+
+#: searx/templates/oscar/preferences.html:16
+#: searx/templates/oscar/preferences.html:245
+msgid "Answerers"
+msgstr "答案"
+
+#: searx/templates/oscar/preferences.html:17
+#: searx/templates/oscar/preferences.html:272
+msgid "Cookies"
+msgstr "Cookies"
+
+#: searx/templates/oscar/preferences.html:42
+#: searx/templates/simple/preferences.html:48
+msgid "What language do you prefer for search?"
+msgstr "您偏好用哪種語言搜尋?"
+
+#: searx/templates/oscar/preferences.html:48
+#: searx/templates/simple/preferences.html:128
+msgid "Change the language of the layout"
+msgstr "變更佈局的語言"
+
+#: searx/templates/oscar/preferences.html:58
+#: searx/templates/simple/preferences.html:60
+msgid "Find stuff as you type"
+msgstr "隨打即找"
+
+#: searx/templates/oscar/preferences.html:69
+#: searx/templates/simple/preferences.html:173
+msgid "Proxying image results through searx"
+msgstr "透過 searx 代理圖片結果"
+
+#: searx/templates/oscar/preferences.html:78
+msgid ""
+"Change how forms are submited, <a "
+"href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\""
+" rel=\"external\">learn more about request methods</a>"
+msgstr "變更遞交形式,<a href=\"https://zh.wikipedia.org/wiki/%E8%B6%85%E6%96%87%E6%9C%AC%E4%BC%A0%E8%BE%93%E5%8D%8F%E8%AE%AE#%E8%AF%B7%E6%B1%82%E6%96%B9%E6%B3%95\" rel=\"external\">看看更多關於請求方法的介紹</a>"
+
+#: searx/templates/oscar/preferences.html:87
+#: searx/templates/simple/preferences.html:71
+msgid "Filter content"
+msgstr "過濾內容"
+
+#: searx/templates/oscar/preferences.html:97
+#: searx/templates/simple/preferences.html:139
+msgid "Change searx layout"
+msgstr "變更 searx 佈局"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Choose style for this theme"
+msgstr "選擇這個主題的樣式"
+
+#: searx/templates/oscar/preferences.html:106
+#: searx/templates/oscar/preferences.html:111
+msgid "Style"
+msgstr "樣式"
+
+#: searx/templates/oscar/preferences.html:122
+msgid "Open Access DOI resolver"
+msgstr "開放存取 DOI 解析器"
+
+#: searx/templates/oscar/preferences.html:123
+msgid ""
+"Redirect to open-access versions of publications when available (plugin "
+"required)"
+msgstr "盡可能重新導向至出版品的開放存取版本(需要外掛程式)"
+
+#: searx/templates/oscar/preferences.html:163
+#: searx/templates/oscar/preferences.html:175
+#: searx/templates/simple/preferences.html:88
+msgid "Shortcut"
+msgstr "快捷鍵"
+
+#: searx/templates/oscar/preferences.html:164
+#: searx/templates/oscar/preferences.html:174
+msgid "Selected language"
+msgstr "已選取的語言"
+
+#: searx/templates/oscar/preferences.html:166
+#: searx/templates/oscar/preferences.html:172
+#: searx/templates/simple/preferences.html:91
+msgid "Time range"
+msgstr "時間範圍"
+
+#: searx/templates/oscar/preferences.html:167
+#: searx/templates/oscar/preferences.html:171
+#: searx/templates/simple/preferences.html:92
+msgid "Avg. time"
+msgstr "平均時間"
+
+#: searx/templates/oscar/preferences.html:168
+#: searx/templates/oscar/preferences.html:170
+#: searx/templates/simple/preferences.html:93
+msgid "Max time"
+msgstr "最大時間"
+
+#: searx/templates/oscar/preferences.html:248
+msgid "This is the list of searx's instant answering modules."
+msgstr "這是 searx 的即時回覆模組清單。"
+
+#: searx/templates/oscar/preferences.html:252
+msgid "Name"
+msgstr "名稱"
+
+#: searx/templates/oscar/preferences.html:253
+msgid "Keywords"
+msgstr "關鍵字"
+
+#: searx/templates/oscar/preferences.html:254
+msgid "Description"
+msgstr "描述"
+
+#: searx/templates/oscar/preferences.html:255
+msgid "Examples"
+msgstr "範例"
+
+#: searx/templates/oscar/preferences.html:275
+msgid ""
+"This is the list of cookies and their values searx is storing on your "
+"computer."
+msgstr "這是 searx 儲存在您電腦上的 cookies 與它們的值的清單。"
+
+#: searx/templates/oscar/preferences.html:276
+msgid "With that list, you can assess searx transparency."
+msgstr "有了這份清單,您就可以評估 searx 的透明度。"
+
+#: searx/templates/oscar/preferences.html:281
+msgid "Cookie name"
+msgstr "Cookie 名稱"
+
+#: searx/templates/oscar/preferences.html:282
+msgid "Value"
+msgstr "值"
+
+#: searx/templates/oscar/preferences.html:301
+msgid "Search URL of the currently saved preferences"
+msgstr "目前偏好設定的搜尋 URL"
+
+#: searx/templates/oscar/preferences.html:301
+msgid ""
+"Note: specifying custom settings in the search URL can reduce privacy by "
+"leaking data to the clicked result sites."
+msgstr "注意:在搜尋 URL 中指定自訂的設定可能會降低隱私,因為會洩漏資料給點選的結果頁面。"
+
+#: searx/templates/oscar/results.html:17
+msgid "Search results"
+msgstr "搜尋結果"
+
+#: searx/templates/oscar/results.html:21
+#: searx/templates/simple/results.html:84
+msgid "Try searching for:"
+msgstr "嘗試搜尋:"
+
+#: searx/templates/oscar/results.html:100
+#: searx/templates/simple/results.html:25
+msgid "Engines cannot retrieve results"
+msgstr "引擎無法擷取結果"
+
+#: searx/templates/oscar/results.html:131
+msgid "Links"
+msgstr "連結"
+
+#: searx/templates/oscar/search.html:8
+#: searx/templates/oscar/search_full.html:11
+#: searx/templates/simple/search.html:5
+msgid "Start search"
+msgstr "開始搜尋"
+
+#: searx/templates/oscar/stats.html:2
+msgid "stats"
+msgstr "統計"
+
+#: searx/templates/oscar/time-range.html:3
+#: searx/templates/simple/time-range.html:3
+msgid "Anytime"
+msgstr "任何時間"
+
+#: searx/templates/oscar/time-range.html:6
+#: searx/templates/simple/time-range.html:6
+msgid "Last day"
+msgstr "一天內"
+
+#: searx/templates/oscar/time-range.html:9
+#: searx/templates/simple/time-range.html:9
+msgid "Last week"
+msgstr "一週內"
+
+#: searx/templates/oscar/time-range.html:12
+#: searx/templates/simple/time-range.html:12
+msgid "Last month"
+msgstr "一個月內"
+
+#: searx/templates/oscar/time-range.html:15
+#: searx/templates/simple/time-range.html:15
+msgid "Last year"
+msgstr "一年內"
+
+#: searx/templates/oscar/messages/first_time.html:6
+#: searx/templates/oscar/messages/no_data_available.html:3
+msgid "Heads up!"
+msgstr "注意!"
+
+#: searx/templates/oscar/messages/first_time.html:7
+msgid "It look like you are using searx first time."
+msgstr "看起來您是第一次使用 searx。"
+
+#: searx/templates/oscar/messages/no_cookies.html:3
+msgid "Information!"
+msgstr "資訊!"
+
+#: searx/templates/oscar/messages/no_cookies.html:4
+msgid "currently, there are no cookies defined."
+msgstr "目前未有已定義的 cookies。"
+
+#: searx/templates/oscar/messages/no_data_available.html:4
+msgid "There is currently no data available. "
+msgstr "目前無可用資料。"
+
+#: searx/templates/oscar/messages/no_results.html:4
+#: searx/templates/simple/messages/no_results.html:4
+msgid "Engines cannot retrieve results."
+msgstr "引擎無法擷取結果。"
+
+#: searx/templates/oscar/messages/no_results.html:10
+#: searx/templates/simple/messages/no_results.html:10
+msgid "Please, try again later or find another searx instance."
+msgstr "請再試一次或是使用其他 searx 實體搜尋。"
+
+#: searx/templates/oscar/messages/no_results.html:14
+#: searx/templates/simple/messages/no_results.html:14
+msgid "Sorry!"
+msgstr "抱歉!"
+
+#: searx/templates/oscar/messages/no_results.html:15
+#: searx/templates/simple/messages/no_results.html:15
+msgid ""
+"we didn't find any results. Please use another query or search in more "
+"categories."
+msgstr "我們找不到任何結果。請使用其他搜尋方式或在更多分類中搜尋。"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:7
+msgid "Well done!"
+msgstr "很好!"
+
+#: searx/templates/oscar/messages/save_settings_successfull.html:8
+msgid "Settings saved successfully."
+msgstr "設定成功儲存。"
+
+#: searx/templates/oscar/messages/unknow_error.html:7
+msgid "Oh snap!"
+msgstr "糟糕!"
+
+#: searx/templates/oscar/messages/unknow_error.html:8
+msgid "Something went wrong."
+msgstr "發生了一點問題。"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "show media"
+msgstr "顯示媒體"
+
+#: searx/templates/oscar/result_templates/default.html:7
+#: searx/templates/simple/result_templates/default.html:6
+msgid "hide media"
+msgstr "隱藏媒體"
+
+#: searx/templates/oscar/result_templates/images.html:30
+msgid "Get image"
+msgstr "取得圖片"
+
+#: searx/templates/oscar/result_templates/images.html:33
+msgid "View source"
+msgstr "檢視來源"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "show map"
+msgstr "顯示地圖"
+
+#: searx/templates/oscar/result_templates/map.html:7
+#: searx/templates/simple/result_templates/map.html:7
+msgid "hide map"
+msgstr "隱藏地圖"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "show details"
+msgstr "顯示詳情"
+
+#: searx/templates/oscar/result_templates/map.html:11
+#: searx/templates/simple/result_templates/map.html:11
+msgid "hide details"
+msgstr "隱藏詳情"
+
+#: searx/templates/oscar/result_templates/torrent.html:7
+#: searx/templates/simple/result_templates/torrent.html:11
+msgid "Filesize"
+msgstr "檔案大小"
+
+#: searx/templates/oscar/result_templates/torrent.html:9
+#: searx/templates/simple/result_templates/torrent.html:12
+msgid "Bytes"
+msgstr "位元組"
+
+#: searx/templates/oscar/result_templates/torrent.html:10
+#: searx/templates/simple/result_templates/torrent.html:13
+msgid "kiB"
+msgstr "kiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:11
+#: searx/templates/simple/result_templates/torrent.html:14
+msgid "MiB"
+msgstr "MiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:12
+#: searx/templates/simple/result_templates/torrent.html:15
+msgid "GiB"
+msgstr "GiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:13
+#: searx/templates/simple/result_templates/torrent.html:16
+msgid "TiB"
+msgstr "TiB"
+
+#: searx/templates/oscar/result_templates/torrent.html:15
+#: searx/templates/simple/result_templates/torrent.html:20
+msgid "Number of Files"
+msgstr "檔案數量"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "show video"
+msgstr "顯示影片"
+
+#: searx/templates/oscar/result_templates/videos.html:7
+#: searx/templates/simple/result_templates/videos.html:6
+msgid "hide video"
+msgstr "隱藏影片"
+
+#: searx/templates/pix-art/results.html:28
+msgid "Load more..."
+msgstr "載入更多……"
+
+#: searx/templates/simple/base.html:31
+msgid "No item found"
+msgstr "找不到項目"
+
+#: searx/templates/simple/preferences.html:89
+msgid "Supports selected language"
+msgstr "支援選定的語言"
+
+#: searx/templates/simple/preferences.html:118
+msgid "User interface"
+msgstr "使用者介面"
+
+#: searx/templates/simple/preferences.html:154
+msgid "Privacy"
+msgstr "隱私"
diff --git a/searx/utils.py b/searx/utils.py
index 8f095f3..dfa22c5 100644
--- a/searx/utils.py
+++ b/searx/utils.py
@@ -4,14 +4,18 @@ import hmac
import os
import re
+from babel.core import get_global
from babel.dates import format_date
from codecs import getincrementalencoder
from imp import load_source
from numbers import Number
from os.path import splitext, join
+from io import open
from random import choice
import sys
+import json
+from searx import settings
from searx.version import VERSION_STRING
from searx.languages import language_codes
from searx import settings
@@ -31,33 +35,17 @@ if sys.version_info[0] == 3:
unichr = chr
unicode = str
IS_PY2 = False
+ basestring = str
else:
IS_PY2 = True
logger = logger.getChild('utils')
-ua_versions = ('40.0',
- '41.0',
- '42.0',
- '43.0',
- '44.0',
- '45.0',
- '46.0',
- '47.0')
-
-ua_os = ('Windows NT 6.3; WOW64',
- 'X11; Linux x86_64',
- 'X11; Linux x86')
-
-ua = "Mozilla/5.0 ({os}; rv:{version}) Gecko/20100101 Firefox/{version}"
-
blocked_tags = ('script',
'style')
-
-def gen_useragent():
- # TODO
- return ua.format(os=choice(ua_os), version=choice(ua_versions))
+useragents = json.loads(open(os.path.dirname(os.path.realpath(__file__))
+ + "/data/useragents.json", 'r', encoding='utf-8').read())
def searx_useragent():
@@ -66,6 +54,10 @@ def searx_useragent():
suffix=settings['outgoing'].get('useragent_suffix', ''))
+def gen_useragent(os=None):
+ return str(useragents['ua'].format(os=os or choice(useragents['os']), version=choice(useragents['versions'])))
+
+
def highlight_content(content, query):
if not content:
@@ -322,6 +314,65 @@ def is_valid_lang(lang):
return False
+# auxiliary function to match lang_code in lang_list
+def _match_language(lang_code, lang_list=[], custom_aliases={}):
+ # replace language code with a custom alias if necessary
+ if lang_code in custom_aliases:
+ lang_code = custom_aliases[lang_code]
+
+ if lang_code in lang_list:
+ return lang_code
+
+ # try to get the most likely country for this language
+ subtags = get_global('likely_subtags').get(lang_code)
+ if subtags:
+ subtag_parts = subtags.split('_')
+ new_code = subtag_parts[0] + '-' + subtag_parts[-1]
+ if new_code in custom_aliases:
+ new_code = custom_aliases[new_code]
+ if new_code in lang_list:
+ return new_code
+
+ # try to get the any supported country for this language
+ for lc in lang_list:
+ if lang_code == lc.split('-')[0]:
+ return lc
+
+ return None
+
+
+# get the language code from lang_list that best matches locale_code
+def match_language(locale_code, lang_list=[], custom_aliases={}, fallback='en-US'):
+ # try to get language from given locale_code
+ language = _match_language(locale_code, lang_list, custom_aliases)
+ if language:
+ return language
+
+ locale_parts = locale_code.split('-')
+ lang_code = locale_parts[0]
+
+ # try to get language using an equivalent country code
+ if len(locale_parts) > 1:
+ country_alias = get_global('territory_aliases').get(locale_parts[-1])
+ if country_alias:
+ language = _match_language(lang_code + '-' + country_alias[0], lang_list, custom_aliases)
+ if language:
+ return language
+
+ # try to get language using an equivalent language code
+ alias = get_global('language_aliases').get(lang_code)
+ if alias:
+ language = _match_language(alias, lang_list, custom_aliases)
+ if language:
+ return language
+
+ if lang_code != locale_code:
+ # try to get language from given language without giving the country
+ language = _match_language(lang_code, lang_list, custom_aliases)
+
+ return language or fallback
+
+
def load_module(filename, module_dir):
modname = splitext(filename)[0]
if modname in sys.modules:
diff --git a/searx/version.py b/searx/version.py
index 11dfb1e..4e14972 100644
--- a/searx/version.py
+++ b/searx/version.py
@@ -18,7 +18,7 @@ along with searx. If not, see < http://www.gnu.org/licenses/ >.
# version of searx
VERSION_MAJOR = 0
-VERSION_MINOR = 14
+VERSION_MINOR = 15
VERSION_BUILD = 0
VERSION_STRING = "{0}.{1}.{2}".format(VERSION_MAJOR,
diff --git a/searx/webapp.py b/searx/webapp.py
index ca83f56..7145cac 100644
--- a/searx/webapp.py
+++ b/searx/webapp.py
@@ -58,16 +58,16 @@ from searx.engines import (
from searx.utils import (
UnicodeWriter, highlight_content, html_to_text, get_resources_directory,
get_static_files, get_result_templates, get_themes, gen_useragent,
- dict_subset, prettify_url
+ dict_subset, prettify_url, match_language
)
from searx.version import VERSION_STRING
-from searx.languages import language_codes
+from searx.languages import language_codes as languages
from searx.search import SearchWithPlugins, get_search_query_from_webapp
from searx.query import RawTextQuery
from searx.autocomplete import searx_bang, backends as autocomplete_backends
from searx.plugins import plugins
from searx.plugins.oa_doi_rewrite import get_doi_resolver
-from searx.preferences import Preferences, ValidationException
+from searx.preferences import Preferences, ValidationException, LANGUAGE_CODES
from searx.answerers import answerers
from searx.url_utils import urlencode, urlparse, urljoin
from searx.utils import new_hmac
@@ -133,7 +133,7 @@ if not searx_debug \
babel = Babel(app)
rtl_locales = ['ar', 'arc', 'bcc', 'bqi', 'ckb', 'dv', 'fa', 'glk', 'he',
- 'ku', 'mzn', 'pnb'', ''ps', 'sd', 'ug', 'ur', 'yi']
+ 'ku', 'mzn', 'pnb', 'ps', 'sd', 'ug', 'ur', 'yi']
# used when translating category names
_category_names = (gettext('files'),
@@ -352,9 +352,11 @@ def render(template_name, override_theme=None, **kwargs):
kwargs['safesearch'] = str(request.preferences.get_value('safesearch'))
- kwargs['language_codes'] = language_codes
+ kwargs['language_codes'] = languages
if 'current_language' not in kwargs:
- kwargs['current_language'] = request.preferences.get_value('language')
+ kwargs['current_language'] = match_language(request.preferences.get_value('language'),
+ LANGUAGE_CODES,
+ fallback=settings['search']['language'])
# override url_for function in templates
kwargs['url_for'] = url_for_theme
@@ -590,7 +592,9 @@ def index():
infoboxes=result_container.infoboxes,
paging=result_container.paging,
unresponsive_engines=result_container.unresponsive_engines,
- current_language=search_query.lang,
+ current_language=match_language(search_query.lang,
+ LANGUAGE_CODES,
+ fallback=settings['search']['language']),
base_url=get_base_url(),
theme=get_current_theme_name(),
favicons=global_favicons[themes.index(get_current_theme_name())]
@@ -687,6 +691,10 @@ def preferences():
'warn_time': False}
if e.timeout > settings['outgoing']['request_timeout']:
stats[e.name]['warn_timeout'] = True
+ if match_language(request.preferences.get_value('language'),
+ getattr(e, 'supported_languages', []),
+ getattr(e, 'language_aliases', {}), None):
+ stats[e.name]['supports_selected_language'] = True
# get first element [0], the engine time,
# and then the second element [1] : the time (the first one is the label)
@@ -855,7 +863,7 @@ def config():
'safe_search': settings['search']['safe_search'],
'default_theme': settings['ui']['default_theme'],
'version': VERSION_STRING,
- 'doi_resolvers': [r for r in search['doi_resolvers']],
+ 'doi_resolvers': [r for r in settings['doi_resolvers']],
'default_doi_resolver': settings['default_doi_resolver'],
})
diff --git a/setup.py b/setup.py
index 1b0ae30..6466d1f 100644
--- a/setup.py
+++ b/setup.py
@@ -51,9 +51,23 @@ setup(
},
package_data={
'searx': [
+ 'settings.yml',
+ '../README.rst',
+ '../requirements.txt',
+ '../requirements-dev.txt',
'data/*',
'plugins/*/*',
- 'translations/*/*/*.mo'
+ 'static/*.*',
+ 'static/*/*.*',
+ 'static/*/*/*.*',
+ 'static/*/*/*/*.*',
+ 'static/*/*/*/*/*.*',
+ 'templates/*/*.*',
+ 'templates/*/*/*.*',
+ 'tests/*',
+ 'tests/*/*',
+ 'tests/*/*/*',
+ 'translations/*/*/*'
],
},
diff --git a/tests/unit/engines/test_acgsou.py b/tests/unit/engines/test_acgsou.py
new file mode 100644
index 0000000..c01acf5
--- /dev/null
+++ b/tests/unit/engines/test_acgsou.py
@@ -0,0 +1,78 @@
+# coding=utf-8
+from collections import defaultdict
+import mock
+from searx.engines import acgsou
+from searx.testing import SearxTestCase
+
+
+class TestAcgsouEngine(SearxTestCase):
+
+ def test_request(self):
+ query = 'test_query'
+ dic = defaultdict(dict)
+ dic['pageno'] = 1
+ params = acgsou.request(query, dic)
+ self.assertTrue('url' in params)
+ self.assertTrue(query in params['url'])
+ self.assertTrue('acgsou.com' in params['url'])
+
+ def test_response(self):
+ resp = mock.Mock(text='<html></html>')
+ self.assertEqual(acgsou.response(resp), [])
+
+ html = u"""
+ <html>
+<table id="listTable" class="list_style table_fixed">
+ <thead class="tcat">
+ <tr>
+ <th axis="string" class="l1 tableHeaderOver">test</th>
+ <th axis="string" class="l2 tableHeaderOver">test</th>
+ <th axis="string" class="l3 tableHeaderOver">test</th>
+ <th axis="size" class="l4 tableHeaderOver">test</th>
+ <th axis="number" class="l5 tableHeaderOver">test</th>
+ <th axis="number" class="l6 tableHeaderOver">test</th>
+ <th axis="number" class="l7 tableHeaderOver">test</th>
+ <th axis="string" class="l8 tableHeaderOver">test</th>
+ </tr>
+ </thead>
+ <tbody class="tbody" id="data_list">
+ <tr class="alt1 ">
+ <td nowrap="nowrap">date</td>
+ <td><a href="category.html">testcategory テスト</a></td>
+ <td style="text-align:left;">
+ <a href="show-torrentid.html" target="_blank">torrentname テスト</a>
+ </td>
+ <td>1MB</td>
+ <td nowrap="nowrap">
+ <span class="bts_1">
+ 29
+ </span>
+ </td>
+ <td nowrap="nowrap">
+ <span class="btl_1">
+ 211
+ </span>
+ </td>
+ <td nowrap="nowrap">
+ <span class="btc_">
+ 168
+ </span>
+ </td>
+ <td><a href="random.html">user</a></td>
+ </tr>
+ </tbody>
+</table>
+</html>
+ """
+
+ resp = mock.Mock(text=html)
+ results = acgsou.response(resp)
+
+ self.assertEqual(type(results), list)
+ self.assertEqual(len(results), 1)
+
+ r = results[0]
+ self.assertEqual(r['url'], 'http://www.acgsou.com/show-torrentid.html')
+ self.assertEqual(r['content'], u'Category: "testcategory テスト".')
+ self.assertEqual(r['title'], u'torrentname テスト')
+ self.assertEqual(r['filesize'], 1048576)
diff --git a/tests/unit/engines/test_archlinux.py b/tests/unit/engines/test_archlinux.py
index f9e536f..f2ba483 100644
--- a/tests/unit/engines/test_archlinux.py
+++ b/tests/unit/engines/test_archlinux.py
@@ -19,12 +19,17 @@ class TestArchLinuxEngine(SearxTestCase):
query = 'test_query'
dic = defaultdict(dict)
dic['pageno'] = 1
- dic['language'] = 'en_US'
+ dic['language'] = 'en-US'
params = archlinux.request(query, dic)
self.assertTrue('url' in params)
self.assertTrue(query in params['url'])
self.assertTrue('wiki.archlinux.org' in params['url'])
+ for lang, name in archlinux.main_langs:
+ dic['language'] = lang
+ params = archlinux.request(query, dic)
+ self.assertTrue(name in params['url'])
+
for lang, domain in domains.items():
dic['language'] = lang
params = archlinux.request(query, dic)
diff --git a/tests/unit/engines/test_bing.py b/tests/unit/engines/test_bing.py
index 2528dd8..48a5e74 100644
--- a/tests/unit/engines/test_bing.py
+++ b/tests/unit/engines/test_bing.py
@@ -7,6 +7,7 @@ from searx.testing import SearxTestCase
class TestBingEngine(SearxTestCase):
def test_request(self):
+ bing.supported_languages = ['en', 'fr', 'zh-CHS', 'zh-CHT', 'pt-PT', 'pt-BR']
query = u'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 0
diff --git a/tests/unit/engines/test_bing_images.py b/tests/unit/engines/test_bing_images.py
index 3f30061..cb1d550 100644
--- a/tests/unit/engines/test_bing_images.py
+++ b/tests/unit/engines/test_bing_images.py
@@ -9,7 +9,6 @@ class TestBingImagesEngine(SearxTestCase):
def test_request(self):
bing_images.supported_languages = ['fr-FR', 'en-US']
-
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
@@ -53,7 +52,7 @@ class TestBingImagesEngine(SearxTestCase):
<li>
<div>
<div class="imgpt">
- <a m='{"purl":"page_url","murl":"img_url"}' mad='{"turl":"thumb_url"}'>
+ <a m='{"purl":"page_url","murl":"img_url","turl":"thumb_url"}'>
<img src="" alt="alt text" />
</a>
</div>
@@ -61,7 +60,7 @@ class TestBingImagesEngine(SearxTestCase):
</div>
<div>
<div class="imgpt">
- <a m='{"purl":"page_url2","murl":"img_url2"}' mad='{"turl":"thumb_url2"}'>
+ <a m='{"purl":"page_url2","murl":"img_url2","turl":"thumb_url2"}'>
<img src="" alt="alt text 2" />
</a>
</div>
@@ -72,7 +71,7 @@ class TestBingImagesEngine(SearxTestCase):
<li>
<div>
<div class="imgpt">
- <a m='{"purl":"page_url3","murl":"img_url3"}' mad='{"turl":"thumb_url3"}'>
+ <a m='{"purl":"page_url3","murl":"img_url3","turl":"thumb_url3"}'>
<img src="" alt="alt text 3" />
</a>
</div>
diff --git a/tests/unit/engines/test_bing_news.py b/tests/unit/engines/test_bing_news.py
index 3af19fd..8fc26ee 100644
--- a/tests/unit/engines/test_bing_news.py
+++ b/tests/unit/engines/test_bing_news.py
@@ -8,10 +8,11 @@ import lxml
class TestBingNewsEngine(SearxTestCase):
def test_request(self):
+ bing_news.supported_languages = ['en', 'fr']
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
- dicto['language'] = 'fr_FR'
+ dicto['language'] = 'fr-FR'
dicto['time_range'] = ''
params = bing_news.request(query, dicto)
self.assertIn('url', params)
diff --git a/tests/unit/engines/test_bing_videos.py b/tests/unit/engines/test_bing_videos.py
index 8b303d6..24387c8 100644
--- a/tests/unit/engines/test_bing_videos.py
+++ b/tests/unit/engines/test_bing_videos.py
@@ -9,7 +9,6 @@ class TestBingVideosEngine(SearxTestCase):
def test_request(self):
bing_videos.supported_languages = ['fr-FR', 'en-US']
-
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
diff --git a/tests/unit/engines/test_currency_convert.py b/tests/unit/engines/test_currency_convert.py
index 0758e2f..fec1941 100644
--- a/tests/unit/engines/test_currency_convert.py
+++ b/tests/unit/engines/test_currency_convert.py
@@ -17,7 +17,7 @@ class TestCurrencyConvertEngine(SearxTestCase):
query = b'convert 10 Pound Sterlings to United States Dollars'
params = currency_convert.request(query, dicto)
self.assertIn('url', params)
- self.assertIn('finance.google.com', params['url'])
+ self.assertIn('duckduckgo.com', params['url'])
self.assertIn('GBP', params['url'])
self.assertIn('USD', params['url'])
@@ -30,8 +30,20 @@ class TestCurrencyConvertEngine(SearxTestCase):
dicto['to_name'] = "United States dollar"
response = mock.Mock(text='a,b,c,d', search_params=dicto)
self.assertEqual(currency_convert.response(response), [])
-
- body = "<span class=bld>0.5 {}</span>".format(dicto['to'])
+ body = """ddg_spice_currency(
+ {
+ "conversion":{
+ "converted-amount": "0.5"
+ },
+ "topConversions":[
+ {
+ },
+ {
+ }
+ ]
+ }
+ );
+ """
response = mock.Mock(text=body, search_params=dicto)
results = currency_convert.response(response)
self.assertEqual(type(results), list)
@@ -39,6 +51,6 @@ class TestCurrencyConvertEngine(SearxTestCase):
self.assertEqual(results[0]['answer'], '10.0 GBP = 5.0 USD, 1 GBP (pound sterling)' +
' = 0.5 USD (United States dollar)')
- target_url = 'https://finance.google.com/finance?q={}{}'.format(
+ target_url = 'https://duckduckgo.com/js/spice/currency/1/{}/{}'.format(
dicto['from'], dicto['to'])
self.assertEqual(results[0]['url'], target_url)
diff --git a/tests/unit/engines/test_dailymotion.py b/tests/unit/engines/test_dailymotion.py
index 2009c0e..803b5c4 100644
--- a/tests/unit/engines/test_dailymotion.py
+++ b/tests/unit/engines/test_dailymotion.py
@@ -8,10 +8,11 @@ from searx.testing import SearxTestCase
class TestDailymotionEngine(SearxTestCase):
def test_request(self):
+ dailymotion.supported_languages = ['en', 'fr']
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 0
- dicto['language'] = 'fr_FR'
+ dicto['language'] = 'fr-FR'
params = dailymotion.request(query, dicto)
self.assertTrue('url' in params)
self.assertTrue(query in params['url'])
diff --git a/tests/unit/engines/test_duckduckgo.py b/tests/unit/engines/test_duckduckgo.py
index eea4789..eb316a4 100644
--- a/tests/unit/engines/test_duckduckgo.py
+++ b/tests/unit/engines/test_duckduckgo.py
@@ -1,18 +1,21 @@
# -*- coding: utf-8 -*-
from collections import defaultdict
import mock
-from searx.engines import duckduckgo
+from searx.engines import load_engine, duckduckgo
from searx.testing import SearxTestCase
class TestDuckduckgoEngine(SearxTestCase):
def test_request(self):
+ duckduckgo = load_engine({'engine': 'duckduckgo', 'name': 'duckduckgo'})
+
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
- dicto['language'] = 'de-CH'
dicto['time_range'] = ''
+
+ dicto['language'] = 'de-CH'
params = duckduckgo.request(query, dicto)
self.assertIn('url', params)
self.assertIn(query, params['url'])
@@ -20,16 +23,19 @@ class TestDuckduckgoEngine(SearxTestCase):
self.assertIn('ch-de', params['url'])
self.assertIn('s=0', params['url'])
- # when ddg uses non standard code
+ # when ddg uses non standard codes
+ dicto['language'] = 'zh-HK'
+ params = duckduckgo.request(query, dicto)
+ self.assertIn('hk-tzh', params['url'])
+
dicto['language'] = 'en-GB'
params = duckduckgo.request(query, dicto)
self.assertIn('uk-en', params['url'])
# no country given
- duckduckgo.supported_languages = ['de-CH', 'en-US']
- dicto['language'] = 'de'
+ dicto['language'] = 'en'
params = duckduckgo.request(query, dicto)
- self.assertIn('ch-de', params['url'])
+ self.assertIn('us-en', params['url'])
def test_no_url_in_request_year_time_range(self):
dicto = defaultdict(dict)
diff --git a/tests/unit/engines/test_duckduckgo_definitions.py b/tests/unit/engines/test_duckduckgo_definitions.py
index feafe47..37587ed 100644
--- a/tests/unit/engines/test_duckduckgo_definitions.py
+++ b/tests/unit/engines/test_duckduckgo_definitions.py
@@ -18,6 +18,7 @@ class TestDDGDefinitionsEngine(SearxTestCase):
self.assertEqual(result, 'Text in link')
def test_request(self):
+ duckduckgo_definitions.supported_languages = ['en-US', 'es-ES']
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
diff --git a/tests/unit/engines/test_duckduckgo_images.py b/tests/unit/engines/test_duckduckgo_images.py
index 5821631..5301057 100644
--- a/tests/unit/engines/test_duckduckgo_images.py
+++ b/tests/unit/engines/test_duckduckgo_images.py
@@ -9,7 +9,6 @@ class TestDuckduckgoImagesEngine(SearxTestCase):
def test_request(self):
duckduckgo_images.supported_languages = ['de-CH', 'en-US']
-
query = 'test_query'
dicto = defaultdict(dict)
dicto['is_test'] = True
diff --git a/tests/unit/engines/test_duden.py b/tests/unit/engines/test_duden.py
new file mode 100644
index 0000000..d9bbfef
--- /dev/null
+++ b/tests/unit/engines/test_duden.py
@@ -0,0 +1,41 @@
+from collections import defaultdict
+import mock
+from searx.engines import duden
+from searx.testing import SearxTestCase
+from datetime import datetime
+
+
+class TestDudenEngine(SearxTestCase):
+
+ def test_request(self):
+ query = 'Haus'
+ dic = defaultdict(dict)
+ dic['pageno'] = 1
+ params = duden.request(query, dic)
+ self.assertTrue('url' in params)
+ self.assertTrue(query in params['url'])
+ self.assertTrue('duden.de' in params['url'])
+
+ def test_response(self):
+ resp = mock.Mock(text='<html></html>')
+ self.assertEqual(duden.response(resp), [])
+
+ html = """
+ <section class="wide">
+ <h2><a href="https://this.is.the.url/" class="hidden-link"><strong>This is the title</strong> also here</a></h2>
+ <p>This is the <strong>content</strong></p>
+ <a href="https://this.is.the.url/">Zum vollst&auml;ndigen Artikel</a>
+ </section>
+ """
+
+ resp = mock.Mock(text=html)
+ results = duden.response(resp)
+
+ self.assertEqual(len(results), 1)
+ self.assertEqual(type(results), list)
+
+ # testing result (dictionary entry)
+ r = results[0]
+ self.assertEqual(r['url'], 'https://this.is.the.url/')
+ self.assertEqual(r['title'], 'This is the title also here')
+ self.assertEqual(r['content'], 'This is the content')
diff --git a/tests/unit/engines/test_google.py b/tests/unit/engines/test_google.py
index ecd1ed4..413b677 100644
--- a/tests/unit/engines/test_google.py
+++ b/tests/unit/engines/test_google.py
@@ -15,6 +15,8 @@ class TestGoogleEngine(SearxTestCase):
return response
def test_request(self):
+ google.supported_languages = ['en', 'fr', 'zh-CN']
+
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
@@ -24,13 +26,21 @@ class TestGoogleEngine(SearxTestCase):
self.assertIn('url', params)
self.assertIn(query, params['url'])
self.assertIn('google.fr', params['url'])
+ self.assertIn('fr', params['url'])
self.assertIn('fr', params['headers']['Accept-Language'])
dicto['language'] = 'en-US'
params = google.request(query, dicto)
- self.assertIn('google.co', params['url'])
+ self.assertIn('google.com', params['url'])
+ self.assertIn('en', params['url'])
self.assertIn('en', params['headers']['Accept-Language'])
+ dicto['language'] = 'zh'
+ params = google.request(query, dicto)
+ self.assertIn('google.com', params['url'])
+ self.assertIn('zh-CN', params['url'])
+ self.assertIn('zh-CN', params['headers']['Accept-Language'])
+
def test_response(self):
self.assertRaises(AttributeError, google.response, None)
self.assertRaises(AttributeError, google.response, [])
diff --git a/tests/unit/engines/test_google_images.py b/tests/unit/engines/test_google_images.py
index 493741c..8366e1b 100644
--- a/tests/unit/engines/test_google_images.py
+++ b/tests/unit/engines/test_google_images.py
@@ -25,18 +25,3 @@ class TestGoogleImagesEngine(SearxTestCase):
self.assertRaises(AttributeError, google_images.response, [])
self.assertRaises(AttributeError, google_images.response, '')
self.assertRaises(AttributeError, google_images.response, '[]')
-
- html = r"""
-["rg_s",["dom","\u003Cstyle\u003E.rg_kn,.rg_s{}.rg_bx{display:-moz-inline-box;display:inline-block;margin-top:0;margin-right:12px;margin-bottom:12px;margin-left:0;overflow:hidden;position:relative;vertical-align:top;z-index:1}.rg_meta{display:none}.rg_l{display:inline-block;height:100%;position:absolute;text-decoration:none;width:100%}.rg_l:focus{outline:0}.rg_i{border:0;color:rgba(0,0,0,0);display:block;-webkit-touch-callout:none;}.rg_an,.rg_anbg,.rg_ilm,.rg_ilmbg{right:0;bottom:0;box-sizing:border-box;-moz-box-sizing:border-box;color:#fff;font:normal 11px arial,sans-serif;line-height:100%;white-space:nowrap;width:100%}.rg_anbg,.rg_ilmbg{background:rgba(51,51,51,0.8);margin-left:0;padding:2px 4px;position:absolute}.rg_ilmn{bottom:0;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rg_ilm{display:none}#rg_s.rg_kn .rg_l:focus .rg_ilm{display:block}.rg_kn .rg_bx:hover .rg_ilm,.rg_bx:hover .rg_anbg{display:none}.rg_bx:hover .rg_ilm,.rg_anbg,.rg_kn .rg_bx:hover .rg_anbg{display:block}\u003C\/style\u003E\u003Cdiv eid=\"qlKuV-T3BoqksAHMnaroAw\" id=\"isr_scm_0\" style=\"display:none\"\u003E\u003C\/div\u003E\u003Cdiv data-cei=\"qlKuV-T3BoqksAHMnaroAw\" class=\"rg_add_chunk\"\u003E\u003C!--m--\u003E\u003Cdiv class=\"rg_di rg_bx rg_el ivg-i\" data-ved=\"0ahUKEwjk9PCm-7zOAhUKEiwKHcyOCj0QMwgCKAAwAA\"\u003E\u003Ca jsaction=\"fire.ivg_o;mouseover:str.hmov;mouseout:str.hmou\" class=\"rg_l\" style=\"background:rgb(170,205,240)\"\u003E\u003Cimg data-sz=\"f\" name=\"5eykIeMjmCk7xM:\" src=\"https:\/\/encrypted-tbn0.gstatic.com\/images?q=tbn\" class=\"rg_i rg_ic\" alt=\"Image result for south\" jsaction=\"load:str.tbn\" onload=\"google.aft\u0026\u0026google.aft(this)\"\u003E\u003Cdiv class=\"_aOd rg_ilm\"\u003E\u003Cdiv class=\"rg_ilmbg\"\u003E\u003Cspan class=\"rg_ilmn\"\u003E 566\u0026nbsp;\u0026#215;\u0026nbsp;365 - en.wikipedia.org \u003C\/span\u003E\u003C\/div\u003E\u003C\/div\u003E\u003C\/a\u003E\u003Cdiv class=\"rg_meta\"\u003E{\"id\":\"5eykIeMjmCk7xM:\",\"isu\":\"en.wikipedia.org\",\"itg\":false,\"ity\":\"png\",\"oh\":365,\"ou\":\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/e\/e4\/Us_south_census.png\",\"ow\":566,\"pt\":\"Southern United States - Wikipedia, the free encyclopedia\",\"rid\":\"cErfE02-v-VcAM\",\"ru\":\"https:\/\/en.wikipedia.org\/wiki\/Southern_United_States\",\"s\":\"The Southern United States as defined by the United States Census Bureau.\",\"sc\":1,\"th\":180,\"tu\":\"https:\/\/encrypted-tbn0.gstatic.com\/images?q\\u003dtbn\",\"tw\":280}\u003C\/div\u003E\u003C\/div\u003E\u003C!--n--\u003E\u003C!--m--\u003E\u003Cdiv class=\"rg_di rg_bx rg_el ivg-i\" data-ved=\"0ahUKEwjk9PCm-7zOAhUKEiwKHcyOCj0QMwgDKAEwAQ\"\u003E\u003Ca jsaction=\"fire.ivg_o;mouseover:str.hmov;mouseout:str.hmou\" class=\"rg_l\" style=\"background:rgb(249,252,249)\"\u003E\u003Cimg data-sz=\"f\" name=\"eRjGCc0cFyVkKM:\" src=\"https:\/\/encrypted-tbn2.gstatic.com\/images?q=tbn:ANd9GcSI7SZlbDwdMCgGXzJkpwgdn9uL41xUJ1IiIcKs0qW43_Yp0EhEsg\" class=\"rg_i rg_ic\" alt=\"Image result for south\" jsaction=\"load:str.tbn\" onload=\"google.aft\u0026\u0026google.aft(this)\"\u003E\u003Cdiv class=\"_aOd rg_ilm\"\u003E\u003Cdiv class=\"rg_ilmbg\"\u003E\u003Cspan class=\"rg_ilmn\"\u003E 2000\u0026nbsp;\u0026#215;\u0026nbsp;1002 - commons.wikimedia.org \u003C\/span\u003E\u003C\/div\u003E\u003C\/div\u003E\u003C\/a\u003E\u003Cdiv class=\"rg_meta\"\u003E{\"id\":\"eRjGCc0cFyVkKM:\",\"isu\":\"commons.wikimedia.org\",\"itg\":false,\"ity\":\"png\",\"oh\":1002,\"ou\":\"https:\/\/upload.wikimedia.org\/wikipedia\/commons\/thumb\/8\/84\/South_plate.svg\/2000px-South_plate.svg.png\",\"ow\":2000,\"pt\":\"File:South plate.svg - Wikimedia Commons\",\"rid\":\"F8TVsT2GBLb6RM\",\"ru\":\"https:\/\/commons.wikimedia.org\/wiki\/File:South_plate.svg\",\"s\":\"This image rendered as PNG in other widths: 200px, 500px, 1000px, 2000px.\",\"sc\":1,\"th\":159,\"tu\":\"https:\/\/encrypted-tbn2.gstatic.com\/images?q\\u003dtbn:ANd9GcSI7SZlbDwdMCgGXzJkpwgdn9uL41xUJ1IiIcKs0qW43_Yp0EhEsg\",\"tw\":317}\u003C\/div\u003E\u003C\/div\u003E\u003C!--n--\u003E\u003C\/div\u003E"]]""" # noqa
- response = mock.Mock(text=html)
- results = google_images.response(response)
- self.assertEqual(type(results), list)
- self.assertEqual(len(results), 2)
- self.assertEqual(results[0]['title'], u'Southern United States - Wikipedia, the free encyclopedia')
- self.assertEqual(results[0]['url'], 'https://en.wikipedia.org/wiki/Southern_United_States')
- self.assertEqual(results[0]['img_src'],
- 'https://upload.wikimedia.org/wikipedia/commons/e/e4/Us_south_census.png')
- self.assertEqual(results[0]['content'],
- 'The Southern United States as defined by the United States Census Bureau.')
- self.assertEqual(results[0]['thumbnail_src'],
- 'https://encrypted-tbn0.gstatic.com/images?q=tbn')
diff --git a/tests/unit/engines/test_google_news.py b/tests/unit/engines/test_google_news.py
index 3769e3b..a041a79 100644
--- a/tests/unit/engines/test_google_news.py
+++ b/tests/unit/engines/test_google_news.py
@@ -9,6 +9,7 @@ from searx.testing import SearxTestCase
class TestGoogleNewsEngine(SearxTestCase):
def test_request(self):
+ google_news.supported_languages = ['en-US', 'fr-FR']
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
@@ -41,7 +42,7 @@ class TestGoogleNewsEngine(SearxTestCase):
<div class="ts _JGs _JHs _tJs _KGs _jHs">
<div class="_hJs">
<h3 class="r _gJs">
- <a class="l _PMs" href="https://example.com/" onmousedown="return rwt(this,'','','','11','AFQjCNEyehpzD5cJK1KUfXBx9RmsbqqG9g','','0ahUKEwjB58OR54HWAhWnKJoKHSQhAMY4ChCpAggiKAAwAA','','',event)">Example title</a>
+ <a class="l lLrAF" href="https://example.com/" onmousedown="return rwt(this,'','','','11','AFQjCNEyehpzD5cJK1KUfXBx9RmsbqqG9g','','0ahUKEwjB58OR54HWAhWnKJoKHSQhAMY4ChCpAggiKAAwAA','','',event)">Example title</a>
</h3>
<div class="slp">
<span class="_OHs _PHs">
@@ -62,7 +63,7 @@ class TestGoogleNewsEngine(SearxTestCase):
</a>
<div class="_hJs">
<h3 class="r _gJs">
- <a class="l _PMs" href="https://example2.com/" onmousedown="return rwt(this,'','','','12','AFQjCNHObfH7sYmLWI1SC-YhWXKZFRzRjw','','0ahUKEwjB58OR54HWAhWnKJoKHSQhAMY4ChCpAgglKAAwAQ','','',event)">Example title 2</a>
+ <a class="l lLrAF" href="https://example2.com/" onmousedown="return rwt(this,'','','','12','AFQjCNHObfH7sYmLWI1SC-YhWXKZFRzRjw','','0ahUKEwjB58OR54HWAhWnKJoKHSQhAMY4ChCpAgglKAAwAQ','','',event)">Example title 2</a>
</h3>
<div class="slp">
<span class="_OHs _PHs">
diff --git a/tests/unit/engines/test_google_videos.py b/tests/unit/engines/test_google_videos.py
index a48e9a7..3b7edf3 100644
--- a/tests/unit/engines/test_google_videos.py
+++ b/tests/unit/engines/test_google_videos.py
@@ -30,16 +30,34 @@ class TestGoogleVideosEngine(SearxTestCase):
<div>
<div>
<div class="g">
- <div>
- <h3><a href="url_1">Title 1</h3>
+ <div class="r">
+ <a href="url_1"><h3>Title 1</h3></a>
+ </div>
+ <div class="s">
+ <div>
+ <a>
+ <g-img>
+ <img id="vidthumb1">
+ </g-img>
+ </a>
+ </div>
</div>
<div>
<span class="st">Content 1</span>
</div>
</div>
<div class="g">
- <div>
- <h3><a href="url_2">Title 2</h3>
+ <div class="r">
+ <a href="url_2"><h3>Title 2</h3></a>
+ </div>
+ <div class="s">
+ <div>
+ <a>
+ <g-img>
+ <img id="vidthumb2">
+ </g-img>
+ </a>
+ </div>
</div>
<div>
<span class="st">Content 2</span>
@@ -47,6 +65,7 @@ class TestGoogleVideosEngine(SearxTestCase):
</div>
</div>
</div>
+ <script>function _setImagesSrc(c,d,e){}</script>
"""
response = mock.Mock(text=html)
results = google_videos.response(response)
diff --git a/tests/unit/engines/test_piratebay.py b/tests/unit/engines/test_piratebay.py
index 5699380..89a78e7 100644
--- a/tests/unit/engines/test_piratebay.py
+++ b/tests/unit/engines/test_piratebay.py
@@ -15,7 +15,7 @@ class TestPiratebayEngine(SearxTestCase):
params = piratebay.request(query, dicto)
self.assertIn('url', params)
self.assertIn(query, params['url'])
- self.assertIn('piratebay.se', params['url'])
+ self.assertIn('piratebay.org', params['url'])
self.assertIn('0', params['url'])
dicto['category'] = 'music'
@@ -99,7 +99,7 @@ class TestPiratebayEngine(SearxTestCase):
self.assertEqual(type(results), list)
self.assertEqual(len(results), 2)
self.assertEqual(results[0]['title'], 'This is the title')
- self.assertEqual(results[0]['url'], 'https://thepiratebay.se/this.is.the.link')
+ self.assertEqual(results[0]['url'], 'https://thepiratebay.org/this.is.the.link')
self.assertEqual(results[0]['content'], 'This is the content and should be OK')
self.assertEqual(results[0]['seed'], 13)
self.assertEqual(results[0]['leech'], 334)
@@ -149,7 +149,7 @@ class TestPiratebayEngine(SearxTestCase):
self.assertEqual(type(results), list)
self.assertEqual(len(results), 1)
self.assertEqual(results[0]['title'], 'This is the title')
- self.assertEqual(results[0]['url'], 'https://thepiratebay.se/this.is.the.link')
+ self.assertEqual(results[0]['url'], 'https://thepiratebay.org/this.is.the.link')
self.assertEqual(results[0]['content'], 'This is the content and should be OK')
self.assertEqual(results[0]['seed'], 0)
self.assertEqual(results[0]['leech'], 0)
diff --git a/tests/unit/engines/test_qwant.py b/tests/unit/engines/test_qwant.py
index 4669498..86bfb22 100644
--- a/tests/unit/engines/test_qwant.py
+++ b/tests/unit/engines/test_qwant.py
@@ -7,6 +7,7 @@ from searx.testing import SearxTestCase
class TestQwantEngine(SearxTestCase):
def test_request(self):
+ qwant.supported_languages = ['en-US', 'fr-CA', 'fr-FR']
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 0
@@ -26,7 +27,6 @@ class TestQwantEngine(SearxTestCase):
self.assertIn('en_us', params['url'])
self.assertIn('news', params['url'])
- qwant.supported_languages = ['en', 'fr-FR', 'fr-CA']
dicto['language'] = 'fr'
params = qwant.request(query, dicto)
self.assertIn('fr_fr', params['url'])
diff --git a/tests/unit/engines/test_startpage.py b/tests/unit/engines/test_startpage.py
index bdb3356..4a8a443 100644
--- a/tests/unit/engines/test_startpage.py
+++ b/tests/unit/engines/test_startpage.py
@@ -31,14 +31,14 @@ class TestStartpageEngine(SearxTestCase):
self.assertEqual(startpage.response(response), [])
html = """
- <div class='result' style=' *width : auto; *margin-right : 10%;'>
+ <li class="search-result search-item">
<h3>
<a href='http://this.should.be.the.link/' id='title_2' name='title_2' >
This should be the title
</a>
<span id='title_stars_2' name='title_stars_2'> </span>
</h3>
- <p class='desc clk'>
+ <p class="search-item__body">
This should be the content.
</p>
<p>
@@ -56,7 +56,7 @@ class TestStartpageEngine(SearxTestCase):
Mis en surbrillance
</A>
</p>
- </div>
+ </li>
"""
response = mock.Mock(text=html.encode('utf-8'))
results = startpage.response(response)
@@ -67,14 +67,14 @@ class TestStartpageEngine(SearxTestCase):
self.assertEqual(results[0]['content'], 'This should be the content.')
html = """
- <div class='result' style=' *width : auto; *margin-right : 10%;'>
+ <li class="search-result search-item">
<h3>
<a href='http://www.google.com/aclk?sa=l&ai=C' id='title_2' name='title_2' >
This should be the title
</a>
<span id='title_stars_2' name='title_stars_2'> </span>
</h3>
- <p class='desc clk'>
+ <p class="search-item__body">
This should be the content.
</p>
<p>
@@ -92,20 +92,20 @@ class TestStartpageEngine(SearxTestCase):
Mis en surbrillance
</A>
</p>
- </div>
- <div class='result' style=' *width : auto; *margin-right : 10%;'>
+ </li>
+ <li class="search-result search-item">
<h3>
<span id='title_stars_2' name='title_stars_2'> </span>
</h3>
- <p class='desc clk'>
+ <p class="search-item__body">
This should be the content.
</p>
<p>
<span class='url'>www.speed<b>test</b>.net/fr/
</span>
</p>
- </div>
- <div class='result' style=' *width : auto; *margin-right : 10%;'>
+ </li>
+ <li class="search-result search-item">
<h3>
<a href='http://this.should.be.the.link/' id='title_2' name='title_2' >
This should be the title
@@ -127,7 +127,7 @@ class TestStartpageEngine(SearxTestCase):
Mis en surbrillance
</A>
</p>
- </div>
+ </li>
"""
response = mock.Mock(text=html.encode('utf-8'))
results = startpage.response(response)
diff --git a/tests/unit/engines/test_swisscows.py b/tests/unit/engines/test_swisscows.py
index 2715ef5..133f636 100644
--- a/tests/unit/engines/test_swisscows.py
+++ b/tests/unit/engines/test_swisscows.py
@@ -7,6 +7,7 @@ from searx.testing import SearxTestCase
class TestSwisscowsEngine(SearxTestCase):
def test_request(self):
+ swisscows.supported_languages = ['de-AT', 'de-DE']
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
diff --git a/tests/unit/engines/test_wikidata.py b/tests/unit/engines/test_wikidata.py
index 453133b..62a4097 100644
--- a/tests/unit/engines/test_wikidata.py
+++ b/tests/unit/engines/test_wikidata.py
@@ -11,17 +11,13 @@ class TestWikidataEngine(SearxTestCase):
def test_request(self):
query = 'test_query'
dicto = defaultdict(dict)
- dicto['language'] = 'en-US'
params = wikidata.request(query, dicto)
self.assertIn('url', params)
self.assertIn(query, params['url'])
self.assertIn('wikidata.org', params['url'])
- self.assertIn('en', params['url'])
- dicto['language'] = 'es-ES'
params = wikidata.request(query, dicto)
self.assertIn(query, params['url'])
- self.assertIn('es', params['url'])
# successful cases are not tested here to avoid sending additional requests
def test_response(self):
@@ -30,6 +26,7 @@ class TestWikidataEngine(SearxTestCase):
self.assertRaises(AttributeError, wikidata.response, '')
self.assertRaises(AttributeError, wikidata.response, '[]')
+ wikidata.supported_languages = ['en', 'es']
response = mock.Mock(text='<html></html>', search_params={"language": "en"})
self.assertEqual(wikidata.response(response), [])
@@ -126,9 +123,10 @@ class TestWikidataEngine(SearxTestCase):
<div class="wikibase-statementview-mainsnak">
<div>
<div class="wikibase-snakview-value">
- <a href="https://commons.wikimedia.org/wiki/File:image.png">
- image.png
- </a>
+ <div class="commons-media-caption">
+ <a href="https://commons.wikimedia.org/wiki/File:image.png">image.png</a>
+ <br/>2,687 &#215; 3,356; 1.22 MB
+ </div>
</div>
</div>
</div>
@@ -159,9 +157,10 @@ class TestWikidataEngine(SearxTestCase):
<div class="wikibase-statementview-mainsnak">
<div>
<div class="wikibase-snakview-value">
- <a href="https://commons.wikimedia.org/wiki/File:icon.png">
- icon.png
- </a>
+ <div class="commons-media-caption">
+ <a href="https://commons.wikimedia.org/wiki/File:icon.png">icon.png</a>
+ <br/>671 &#215; 671; 18 KB</div>
+ </div>
</div>
</div>
</div>
@@ -182,9 +181,10 @@ class TestWikidataEngine(SearxTestCase):
<div class="wikibase-statementview-mainsnak">
<div>
<div class="wikibase-snakview-value">
- <a href="https://commons.wikimedia.org/wiki/File:logo.png">
- logo.png
- </a>
+ <div class="commons-media-caption">
+ <a href="https://commons.wikimedia.org/wiki/File:logo.png">logo.png</a>
+ <br/>170 &#215; 170; 1 KB
+ </div>
</div>
</div>
</div>
diff --git a/tests/unit/engines/test_www500px.py b/tests/unit/engines/test_www500px.py
deleted file mode 100644
index e50601d..0000000
--- a/tests/unit/engines/test_www500px.py
+++ /dev/null
@@ -1,34 +0,0 @@
-# -*- coding: utf-8 -*-
-from collections import defaultdict
-import mock
-from searx.engines import www500px
-from searx.testing import SearxTestCase
-
-
-class TestWww500pxImagesEngine(SearxTestCase):
-
- def test_request(self):
- query = 'test_query'
- dicto = defaultdict(dict)
- dicto['pageno'] = 1
- params = www500px.request(query, dicto)
- self.assertTrue('url' in params)
- self.assertTrue(query in params['url'])
- self.assertTrue('500px.com' in params['url'])
-
- def test_response(self):
- self.assertRaises(AttributeError, www500px.response, None)
- self.assertRaises(AttributeError, www500px.response, [])
- self.assertRaises(AttributeError, www500px.response, '')
- self.assertRaises(AttributeError, www500px.response, '[]')
-
- json = """
-{"current_page":1,"total_pages":1000,"total_items":862178,"photos":[{"id":64531569,"user_id":111147,"name":"Grand Canyon Afternoon","description":"Looking west on a very windy winter afternoon.","camera":"Canon EOS 5D Mark II","lens":"EF24-105mm f/4L IS USM","focal_length":"28","iso":"200","shutter_speed":"1/1250","aperture":"6.3","times_viewed":4809,"rating":48.5,"status":1,"created_at":"2014-03-22T03:44:46-04:00","category":8,"location":null,"latitude":36.0323916666667,"longitude":-111.85273,"taken_at":"2014-02-27T14:10:43-05:00","hi_res_uploaded":2,"for_sale":true,"width":5476,"height":3651,"votes_count":108,"favorites_count":35,"comments_count":5,"nsfw":false,"sales_count":0,"for_sale_date":null,"highest_rating":91.9,"highest_rating_date":"2014-03-22T22:34:54-04:00","license_type":0,"converted":31,"collections_count":10,"crop_version":0,"privacy":false,"profile":true,"image_url":["https://drscdn.500px.org/photo/64531569/w%3D70_h%3D70/449d50817f28d85395e23bbb415b3cdb?v=0","https://drscdn.500px.org/photo/64531569/q%3D50_w%3D140_h%3D140/3e3e123734a596644ede78105268bdb2?v=0","https://drscdn.500px.org/photo/64531569/q%3D80_h%3D300/2ce2f61714aebdca710967dfdc3efb04","https://drscdn.500px.org/photo/64531569/q%3D80_h%3D450/c8ec030441f2c68b9bd40a114903348a","https://drscdn.500px.org/photo/64531569/q%3D80_h%3D600/ab6562d0581b359679ecc8ef2e939396","https://drscdn.500px.org/photo/64531569/q%3D80_m%3D1000/bd7dbc54a505e041a8c9a70dfa434272","https://drscdn.500px.org/photo/64531569/q%3D80_m%3D1500/eb4d7f8f6a32d3e5c168c2cb55d29c12","https://drscdn.500px.org/photo/64531569/q%3D80_m%3D2000/d519f91b8a568e7357a8a7fa1aabbe74","https://drscdn.500px.org/photo/64531569/m%3D2048/4c52fb18cc2b2b6f91a0d04609786507","https://drscdn.500px.org/photo/64531569/m%3D900/fb620ae39569ab4a421e9170a94b1a0f","https://drscdn.500px.org/photo/64531569/m%3D900_s%3D1_k%3D1_a%3D1/02b95ce64db090c1f94f890960974612?v=0"],"images":[{"size":1,"url":"https://drscdn.500px.org/photo/64531569/w%3D70_h%3D70/449d50817f28d85395e23bbb415b3cdb?v=0","https_url":"https://drscdn.500px.org/photo/64531569/w%3D70_h%3D70/449d50817f28d85395e23bbb415b3cdb?v=0","format":"jpeg"},{"size":2,"url":"https://drscdn.500px.org/photo/64531569/q%3D50_w%3D140_h%3D140/3e3e123734a596644ede78105268bdb2?v=0","https_url":"https://drscdn.500px.org/photo/64531569/q%3D50_w%3D140_h%3D140/3e3e123734a596644ede78105268bdb2?v=0","format":"jpeg"},{"size":4,"url":"https://drscdn.500px.org/photo/64531569/m%3D900/fb620ae39569ab4a421e9170a94b1a0f","https_url":"https://drscdn.500px.org/photo/64531569/m%3D900/fb620ae39569ab4a421e9170a94b1a0f","format":"jpeg"},{"size":14,"url":"https://drscdn.500px.org/photo/64531569/m%3D900_s%3D1_k%3D1_a%3D1/02b95ce64db090c1f94f890960974612?v=0","https_url":"https://drscdn.500px.org/photo/64531569/m%3D900_s%3D1_k%3D1_a%3D1/02b95ce64db090c1f94f890960974612?v=0","format":"jpeg"},{"size":31,"url":"https://drscdn.500px.org/photo/64531569/q%3D80_h%3D450/c8ec030441f2c68b9bd40a114903348a","https_url":"https://drscdn.500px.org/photo/64531569/q%3D80_h%3D450/c8ec030441f2c68b9bd40a114903348a","format":"jpeg"},{"size":32,"url":"https://drscdn.500px.org/photo/64531569/q%3D80_h%3D300/2ce2f61714aebdca710967dfdc3efb04","https_url":"https://drscdn.500px.org/photo/64531569/q%3D80_h%3D300/2ce2f61714aebdca710967dfdc3efb04","format":"jpeg"},{"size":33,"url":"https://drscdn.500px.org/photo/64531569/q%3D80_h%3D600/ab6562d0581b359679ecc8ef2e939396","https_url":"https://drscdn.500px.org/photo/64531569/q%3D80_h%3D600/ab6562d0581b359679ecc8ef2e939396","format":"jpeg"},{"size":34,"url":"https://drscdn.500px.org/photo/64531569/q%3D80_m%3D1000/bd7dbc54a505e041a8c9a70dfa434272","https_url":"https://drscdn.500px.org/photo/64531569/q%3D80_m%3D1000/bd7dbc54a505e041a8c9a70dfa434272","format":"jpeg"},{"size":35,"url":"https://drscdn.500px.org/photo/64531569/q%3D80_m%3D1500/eb4d7f8f6a32d3e5c168c2cb55d29c12","https_url":"https://drscdn.500px.org/photo/64531569/q%3D80_m%3D1500/eb4d7f8f6a32d3e5c168c2cb55d29c12","format":"jpeg"},{"size":36,"url":"https://drscdn.500px.org/photo/64531569/q%3D80_m%3D2000/d519f91b8a568e7357a8a7fa1aabbe74","https_url":"https://drscdn.500px.org/photo/64531569/q%3D80_m%3D2000/d519f91b8a568e7357a8a7fa1aabbe74","format":"jpeg"},{"size":2048,"url":"https://drscdn.500px.org/photo/64531569/m%3D2048/4c52fb18cc2b2b6f91a0d04609786507","https_url":"https://drscdn.500px.org/photo/64531569/m%3D2048/4c52fb18cc2b2b6f91a0d04609786507","format":"jpeg"}],"url":"/photo/64531569/grand-canyon-afternoon-by-todd-hakala","positive_votes_count":108,"converted_bits":31,"tags":["landscape","river","arizona","canyon","grand","colorado","south","southwest","az","west","rim","CanonGetaway"],"watermark":false,"image_format":"jpeg","licensing_requested":false,"licensing_suggested":false,"is_free_photo":false,"user":{"id":111147,"username":"ToddHakala","firstname":"Todd","lastname":"Hakala","city":"Albuquerque","country":"US","usertype":0,"fullname":"Todd Hakala","userpic_url":"https://pacdn.500px.org/111147/ea167926a64ce9b32e44cbec61e3af4f75b762cb/1.jpg?2","userpic_https_url":"https://pacdn.500px.org/111147/ea167926a64ce9b32e44cbec61e3af4f75b762cb/1.jpg?2","cover_url":"https://pacdn.500px.org/111147/ea167926a64ce9b32e44cbec61e3af4f75b762cb/cover_2048.jpg?8","upgrade_status":1,"store_on":true,"affection":5217,"avatars":{"default":{"https":"https://pacdn.500px.org/111147/ea167926a64ce9b32e44cbec61e3af4f75b762cb/1.jpg?2"},"large":{"https":"https://pacdn.500px.org/111147/ea167926a64ce9b32e44cbec61e3af4f75b762cb/2.jpg?2"},"small":{"https":"https://pacdn.500px.org/111147/ea167926a64ce9b32e44cbec61e3af4f75b762cb/3.jpg?2"},"tiny":{"https":"https://pacdn.500px.org/111147/ea167926a64ce9b32e44cbec61e3af4f75b762cb/4.jpg?2"}},"followers_count":171}}]}
- """ # noqa
- response = mock.Mock(text=json)
- results = www500px.response(response)
- self.assertEqual(type(results), list)
- self.assertEqual(len(results), 1)
- self.assertEqual(results[0]['title'], u'Grand Canyon Afternoon')
- self.assertEqual(results[0]['url'], 'https://500px.com/photo/64531569/grand-canyon-afternoon-by-todd-hakala')
- self.assertEqual(results[0]['content'], u'Looking west on a very windy winter afternoon.')
diff --git a/tests/unit/engines/test_yahoo.py b/tests/unit/engines/test_yahoo.py
index 921d3e8..5037bfc 100644
--- a/tests/unit/engines/test_yahoo.py
+++ b/tests/unit/engines/test_yahoo.py
@@ -25,11 +25,12 @@ class TestYahooEngine(SearxTestCase):
self.assertEqual('https://this.is.the.url/', url)
def test_request(self):
+ yahoo.supported_languages = ['en', 'fr', 'zh-CHT', 'zh-CHS']
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
dicto['time_range'] = ''
- dicto['language'] = 'fr_FR'
+ dicto['language'] = 'fr-FR'
params = yahoo.request(query, dicto)
self.assertIn('url', params)
self.assertIn(query, params['url'])
@@ -39,6 +40,16 @@ class TestYahooEngine(SearxTestCase):
self.assertIn('sB', params['cookies'])
self.assertIn('fr', params['cookies']['sB'])
+ dicto['language'] = 'zh'
+ params = yahoo.request(query, dicto)
+ self.assertIn('zh_chs', params['url'])
+ self.assertIn('zh_chs', params['cookies']['sB'])
+
+ dicto['language'] = 'zh-TW'
+ params = yahoo.request(query, dicto)
+ self.assertIn('zh_cht', params['url'])
+ self.assertIn('zh_cht', params['cookies']['sB'])
+
def test_no_url_in_request_year_time_range(self):
dicto = defaultdict(dict)
query = 'test_query'
@@ -168,5 +179,5 @@ class TestYahooEngine(SearxTestCase):
self.assertEqual(type(languages), list)
self.assertEqual(len(languages), 3)
self.assertIn('ar', languages)
- self.assertIn('zh-chs', languages)
- self.assertIn('zh-cht', languages)
+ self.assertIn('zh-CHS', languages)
+ self.assertIn('zh-CHT', languages)
diff --git a/tests/unit/engines/test_yahoo_news.py b/tests/unit/engines/test_yahoo_news.py
index bc87ec0..c3297da 100644
--- a/tests/unit/engines/test_yahoo_news.py
+++ b/tests/unit/engines/test_yahoo_news.py
@@ -9,10 +9,11 @@ from searx.testing import SearxTestCase
class TestYahooNewsEngine(SearxTestCase):
def test_request(self):
+ yahoo_news.supported_languages = ['en', 'fr']
query = 'test_query'
dicto = defaultdict(dict)
dicto['pageno'] = 1
- dicto['language'] = 'fr_FR'
+ dicto['language'] = 'fr-FR'
params = yahoo_news.request(query, dicto)
self.assertIn('url', params)
self.assertIn(query, params['url'])
diff --git a/tests/unit/test_utils.py b/tests/unit/test_utils.py
index eb40e62..4854636 100644
--- a/tests/unit/test_utils.py
+++ b/tests/unit/test_utils.py
@@ -65,6 +65,31 @@ class TestUtils(SearxTestCase):
for test_url, expected in data:
self.assertEqual(utils.prettify_url(test_url, max_length=32), expected)
+ def test_match_language(self):
+ self.assertEqual(utils.match_language('es', ['es']), 'es')
+ self.assertEqual(utils.match_language('es', [], fallback='fallback'), 'fallback')
+ self.assertEqual(utils.match_language('ja', ['jp'], {'ja': 'jp'}), 'jp')
+
+ aliases = {'en-GB': 'en-UK', 'he': 'iw'}
+
+ # guess country
+ self.assertEqual(utils.match_language('de-DE', ['de']), 'de')
+ self.assertEqual(utils.match_language('de', ['de-DE']), 'de-DE')
+ self.assertEqual(utils.match_language('es-CO', ['es-AR', 'es-ES', 'es-MX']), 'es-ES')
+ self.assertEqual(utils.match_language('es-CO', ['es-MX']), 'es-MX')
+ self.assertEqual(utils.match_language('en-UK', ['en-AU', 'en-GB', 'en-US']), 'en-GB')
+ self.assertEqual(utils.match_language('en-GB', ['en-AU', 'en-UK', 'en-US'], aliases), 'en-UK')
+
+ # language aliases
+ self.assertEqual(utils.match_language('iw', ['he']), 'he')
+ self.assertEqual(utils.match_language('he', ['iw'], aliases), 'iw')
+ self.assertEqual(utils.match_language('iw-IL', ['he']), 'he')
+ self.assertEqual(utils.match_language('he-IL', ['iw'], aliases), 'iw')
+ self.assertEqual(utils.match_language('iw', ['he-IL']), 'he-IL')
+ self.assertEqual(utils.match_language('he', ['iw-IL'], aliases), 'iw-IL')
+ self.assertEqual(utils.match_language('iw-IL', ['he-IL']), 'he-IL')
+ self.assertEqual(utils.match_language('he-IL', ['iw-IL'], aliases), 'iw-IL')
+
class TestHTMLTextExtractor(SearxTestCase):
diff --git a/utils/fetch_firefox_version.py b/utils/fetch_firefox_version.py
new file mode 100755
index 0000000..ed17958
--- /dev/null
+++ b/utils/fetch_firefox_version.py
@@ -0,0 +1,73 @@
+#!/usr/bin/env python
+
+# set path
+from sys import path
+from os.path import realpath, dirname, join
+path.append(realpath(dirname(realpath(__file__)) + '/../'))
+
+#
+import json
+import requests
+import re
+from distutils.version import LooseVersion, StrictVersion
+from lxml import html
+from searx.url_utils import urlparse, urljoin
+from searx import searx_dir
+
+URL = 'https://ftp.mozilla.org/pub/firefox/releases/'
+RELEASE_PATH = '/pub/firefox/releases/'
+
+NORMAL_REGEX = re.compile('^[0-9]+\.[0-9](\.[0-9])?$')
+# BETA_REGEX = re.compile('.*[0-9]b([0-9\-a-z]+)$')
+# ESR_REGEX = re.compile('^[0-9]+\.[0-9](\.[0-9])?esr$')
+
+#
+useragents = {
+ "versions": (),
+ "os": ('Windows NT 10; WOW64',
+ 'X11; Linux x86_64'),
+ "ua": "Mozilla/5.0 ({os}; rv:{version}) Gecko/20100101 Firefox/{version}"
+}
+
+
+def fetch_firefox_versions():
+ resp = requests.get(URL, timeout=2.0)
+ if resp.status_code != 200:
+ raise Exception("Error fetching firefox versions, HTTP code " + resp.status_code)
+ else:
+ dom = html.fromstring(resp.text)
+ versions = []
+
+ for link in dom.xpath('//a/@href'):
+ url = urlparse(urljoin(URL, link))
+ path = url.path
+ if path.startswith(RELEASE_PATH):
+ version = path[len(RELEASE_PATH):-1]
+ if NORMAL_REGEX.match(version):
+ versions.append(LooseVersion(version))
+
+ list.sort(versions, reverse=True)
+ return versions
+
+
+def fetch_firefox_last_versions():
+ versions = fetch_firefox_versions()
+
+ result = []
+ major_last = versions[0].version[0]
+ major_list = (major_last, major_last - 1)
+ for version in versions:
+ major_current = version.version[0]
+ if major_current in major_list:
+ result.append(version.vstring)
+
+ return result
+
+
+def get_useragents_filename():
+ return join(join(searx_dir, "data"), "useragents.json")
+
+
+useragents["versions"] = fetch_firefox_last_versions()
+with open(get_useragents_filename(), "w") as f:
+ json.dump(useragents, f, indent=4, ensure_ascii=False)
diff --git a/utils/fetch_languages.py b/utils/fetch_languages.py
index 424f400..a6af073 100644
--- a/utils/fetch_languages.py
+++ b/utils/fetch_languages.py
@@ -2,169 +2,169 @@
# This script generates languages.py from intersecting each engine's supported languages.
#
-# The country names are obtained from http://api.geonames.org which requires registering as a user.
-#
# Output files (engines_languages.json and languages.py)
# are written in current directory to avoid overwriting in case something goes wrong.
-from requests import get
-from lxml.html import fromstring
-from json import loads, dump
+from json import dump
import io
from sys import path
+from babel import Locale, UnknownLocaleError
+from babel.languages import get_global
+
path.append('../searx') # noqa
from searx import settings
-from searx.url_utils import urlencode
from searx.engines import initialize_engines, engines
-# Geonames API for country names.
-geonames_user = '' # ADD USER NAME HERE
-country_names_url = 'http://api.geonames.org/countryInfoJSON?{parameters}'
-
# Output files.
engines_languages_file = 'engines_languages.json'
languages_file = 'languages.py'
-engines_languages = {}
-
-
-# To filter out invalid codes and dialects.
-def valid_code(lang_code):
- # filter invalid codes
- # sl-SL is technically not invalid, but still a mistake
- invalid_codes = ['sl-SL', 'wt-WT', 'jw']
- invalid_countries = ['UK', 'XA', 'XL']
- if lang_code[:2] == 'xx'\
- or lang_code in invalid_codes\
- or lang_code[-2:] in invalid_countries\
- or is_dialect(lang_code):
- return False
-
- return True
-
-
-# Language codes with any additional tags other than language and country.
-def is_dialect(lang_code):
- lang_code = lang_code.split('-')
- if len(lang_code) > 2 or len(lang_code[0]) > 3:
- return True
- if len(lang_code) == 2 and len(lang_code[1]) > 2:
- return True
-
- return False
-
-
-# Get country name in specified language.
-def get_country_name(locale):
- if geonames_user is '':
- return ''
-
- locale = locale.split('-')
- if len(locale) != 2:
- return ''
-
- url = country_names_url.format(parameters=urlencode({'lang': locale[0],
- 'country': locale[1],
- 'username': geonames_user}))
- response = get(url)
- json = loads(response.text)
- content = json.get('geonames', None)
- if content is None or len(content) != 1:
- print("No country name found for " + locale[0] + "-" + locale[1])
- return ''
-
- return content[0].get('countryName', '')
-
# Fetchs supported languages for each engine and writes json file with those.
def fetch_supported_languages():
- initialize_engines(settings['engines'])
+ engines_languages = {}
for engine_name in engines:
if hasattr(engines[engine_name], 'fetch_supported_languages'):
try:
engines_languages[engine_name] = engines[engine_name].fetch_supported_languages()
+ if type(engines_languages[engine_name]) == list:
+ engines_languages[engine_name] = sorted(engines_languages[engine_name])
except Exception as e:
print(e)
# write json file
with io.open(engines_languages_file, "w", encoding="utf-8") as f:
- dump(engines_languages, f, ensure_ascii=False)
+ dump(engines_languages, f, ensure_ascii=False, indent=4, separators=(',', ': '))
+ return engines_languages
+
+
+# Get babel Locale object from lang_code if possible.
+def get_locale(lang_code):
+ try:
+ locale = Locale.parse(lang_code, sep='-')
+ return locale
+ except (UnknownLocaleError, ValueError):
+ return None
+
+
+# Append engine_name to list of engines that support locale.
+def add_engine_counter(lang_code, engine_name, languages):
+ if lang_code in languages:
+ if 'counter' not in languages[lang_code]:
+ languages[lang_code]['counter'] = [engine_name]
+ elif engine_name not in languages[lang_code]['counter']:
+ languages[lang_code]['counter'].append(engine_name)
-# Join all language lists.
-# Iterate all languages supported by each engine.
-def join_language_lists():
- global languages
- # include wikipedia first for more accurate language names
- languages = {code: lang for code, lang
- in engines_languages['wikipedia'].items()
- if valid_code(code)}
+# Join all language lists.
+# TODO: Add language names from engine's language list if name not known by babel.
+def join_language_lists(engines_languages):
+ language_list = {}
for engine_name in engines_languages:
- for locale in engines_languages[engine_name]:
- if valid_code(locale):
- # if language is not on list or if it has no name yet
- if locale not in languages or not languages[locale].get('name'):
- if isinstance(engines_languages[engine_name], dict):
- languages[locale] = engines_languages[engine_name][locale]
- else:
- languages[locale] = {}
-
- # add to counter of engines that support given language
- lang = locale.split('-')[0]
- if lang in languages:
- if 'counter' not in languages[lang]:
- languages[lang]['counter'] = [engine_name]
- elif engine_name not in languages[lang]['counter']:
- languages[lang]['counter'].append(engine_name)
-
- # filter list to include only languages supported by most engines
- min_supported_engines = int(0.70 * len(engines_languages))
- languages = {code: lang for code, lang
- in languages.items()
- if len(lang.get('counter', [])) >= min_supported_engines or
- len(languages.get(code.split('-')[0], {}).get('counter', [])) >= min_supported_engines}
-
- # get locales that have no name or country yet
- for locale in languages.keys():
- # try to get language names
- if not languages[locale].get('name'):
- name = languages.get(locale.split('-')[0], {}).get('name', None)
- if name:
- languages[locale]['name'] = name
- else:
- # filter out locales with no name
- del languages[locale]
- continue
-
- # try to get language name in english
- if not languages[locale].get('english_name'):
- languages[locale]['english_name'] = languages.get(locale.split('-')[0], {}).get('english_name', '')
-
- # try to get country name
- if locale.find('-') > 0 and not languages[locale].get('country'):
- languages[locale]['country'] = get_country_name(locale) or ''
-
-
-# Remove countryless language if language is featured in only one country.
-def filter_single_country_languages():
- prev_lang = None
- prev_code = None
- for code in sorted(languages):
- lang = code.split('-')[0]
- if lang == prev_lang:
+ for lang_code in engines_languages[engine_name]:
+
+ # apply custom fixes if necessary
+ if lang_code in getattr(engines[engine_name], 'language_aliases', {}).values():
+ lang_code = next(lc for lc, alias in engines[engine_name].language_aliases.items()
+ if lang_code == alias)
+
+ locale = get_locale(lang_code)
+
+ # ensure that lang_code uses standard language and country codes
+ if locale and locale.territory:
+ lang_code = locale.language + '-' + locale.territory
+
+ # add locale if it's not in list
+ if lang_code not in language_list:
+ if locale:
+ language_list[lang_code] = {'name': locale.get_language_name().title(),
+ 'english_name': locale.english_name,
+ 'country': locale.get_territory_name() or ''}
+
+ # also add language without country
+ if locale.language not in language_list:
+ language_list[locale.language] = {'name': locale.get_language_name().title(),
+ 'english_name': locale.english_name}
+ else:
+ language_list[lang_code] = {}
+
+ # count engine for both language_country combination and language alone
+ add_engine_counter(lang_code, engine_name, language_list)
+ add_engine_counter(lang_code.split('-')[0], engine_name, language_list)
+
+ return language_list
+
+
+# Filter language list so it only includes the most supported languages and countries.
+def filter_language_list(all_languages):
+ min_supported_engines = 10
+ main_engines = [engine_name for engine_name in engines.keys()
+ if 'general' in engines[engine_name].categories and
+ engines[engine_name].supported_languages and
+ not engines[engine_name].disabled]
+
+ # filter list to include only languages supported by most engines or all default general engines
+ filtered_languages = {code: lang for code, lang
+ in all_languages.items()
+ if (len(lang.get('counter', [])) >= min_supported_engines or
+ all(main_engine in lang.get('counter', [])
+ for main_engine in main_engines))}
+
+ return filtered_languages
+
+
+# Add country codes to languages without one and filter out language codes.
+def assign_country_codes(filtered_languages, all_languages):
+ sorted_languages = sorted(all_languages,
+ key=lambda lang: len(all_languages[lang].get('counter', [])),
+ reverse=True)
+ previous_lang = None
+ previous_code = None
+ countries = 0
+ for current_code in sorted(filtered_languages):
+ current_lang = current_code.split('-')[0]
+
+ # count country codes per language
+ if current_lang == previous_lang:
countries += 1
+
else:
- if prev_lang is not None and countries == 1:
- del languages[prev_lang]
- languages[prev_code]['country'] = ''
+ if previous_lang is not None:
+ # if language has no single country code
+ if countries == 0:
+ # try to get country code with most supported engines
+ for l in sorted_languages:
+ l_parts = l.split('-')
+ if len(l_parts) == 2 and l_parts[0] == previous_lang:
+ filtered_languages[l] = all_languages[l]
+ filtered_languages[l]['country'] = ''
+ countries = 1
+ break
+
+ if countries == 0:
+ # get most likely country code from babel
+ subtags = get_global('likely_subtags').get(previous_lang)
+ if subtags:
+ subtag_parts = subtags.split('_')
+ new_code = subtag_parts[0] + '-' + subtag_parts[-1]
+ filtered_languages[new_code] = all_languages[previous_lang]
+ countries = 1
+
+ if countries == 1:
+ # remove countryless version of language if there's only one country
+ del filtered_languages[previous_lang]
+ if previous_code in filtered_languages:
+ filtered_languages[previous_code]['country'] = ''
+
countries = 0
- prev_lang = lang
- prev_code = code
+ previous_lang = current_lang
+
+ previous_code = current_code
# Write languages.py.
-def write_languages_file():
+def write_languages_file(languages):
new_file = open(languages_file, 'wb')
file_content = '# -*- coding: utf-8 -*-\n'\
+ '# list of language codes\n'\
@@ -183,7 +183,9 @@ def write_languages_file():
if __name__ == "__main__":
- fetch_supported_languages()
- join_language_lists()
- filter_single_country_languages()
- write_languages_file()
+ initialize_engines(settings['engines'])
+ engines_languages = fetch_supported_languages()
+ all_languages = join_language_lists(engines_languages)
+ filtered_languages = filter_language_list(all_languages)
+ assign_country_codes(filtered_languages, all_languages)
+ write_languages_file(filtered_languages)