mirror of
https://github.com/searxng/searxng.git
synced 2024-11-19 02:40:11 +01:00
Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
ac8759cd3f
@ -1,3 +1,9 @@
|
||||
sudo: false
|
||||
cache:
|
||||
- pip
|
||||
- npm
|
||||
- directories:
|
||||
- $HOME/.cache/pip
|
||||
language: python
|
||||
python:
|
||||
- "2.7"
|
||||
|
@ -34,3 +34,7 @@ generally made searx better:
|
||||
- @opi
|
||||
- @dimqua
|
||||
- Giorgos Logiotatidis
|
||||
- Luc Didry
|
||||
- Niklas Haas
|
||||
- @underr
|
||||
- Emmanuel Benazera
|
||||
|
@ -1,3 +1,49 @@
|
||||
0.8.0 2015.09.08
|
||||
================
|
||||
|
||||
- New engines
|
||||
|
||||
- Blekko (image)
|
||||
- Gigablast (general)
|
||||
- Spotify (music)
|
||||
- Swisscows (general, images)
|
||||
- Qwant (general, images, news, social media)
|
||||
- Plugin system
|
||||
- New plugins
|
||||
|
||||
- HTTPS rewrite
|
||||
- Search on cagetory select
|
||||
- User information
|
||||
- Tracker url part remover
|
||||
- Multiple outgoing IP and HTTP/HTTPS proxy support
|
||||
- New autocompleter: startpage
|
||||
- New theme: pix-art
|
||||
- Settings file structure change
|
||||
- Fabfile, docker deployment
|
||||
- Optional safesearch result filter
|
||||
- Force HTTPS in engines if possible
|
||||
- Disabled HTTP referrer on outgoing links
|
||||
- Display cookie information
|
||||
- Prettier search URLs
|
||||
- Right-to-left text handling in themes
|
||||
- Translation updates (New locales: Chinese, Hebrew, Portuguese, Romanian)
|
||||
|
||||
|
||||
New dependencies
|
||||
~~~~~~~~~~~~~~~~
|
||||
|
||||
- pyopenssl
|
||||
- ndg-httpsclient
|
||||
- pyasn1
|
||||
- pyasn1-modules
|
||||
- certifi
|
||||
|
||||
|
||||
News
|
||||
~~~~
|
||||
|
||||
@dalf joined the maintainer "team"
|
||||
|
||||
0.7.0 2015.02.03
|
||||
================
|
||||
|
||||
|
@ -96,7 +96,7 @@ remember 'untested code is broken code'.
|
||||
Runs robot (Selenium) tests, you must have ``firefox`` installed because
|
||||
this functional tests actually run the browser and perform operations on
|
||||
it. Also searx is executed with
|
||||
`settings\_robot <https://github.com/asciimoo/searx/blob/master/searx/settings_robot.py>`__.
|
||||
`settings\_robot <https://github.com/asciimoo/searx/blob/master/searx/settings_robot.yml>`__.
|
||||
|
||||
``make flake8``
|
||||
'''''''''''''''
|
||||
|
@ -40,7 +40,7 @@ else:
|
||||
with open(settings_path) as settings_yaml:
|
||||
settings = load(settings_yaml)
|
||||
|
||||
if settings.get('server', {}).get('debug'):
|
||||
if settings.get('general', {}).get('debug'):
|
||||
logging.basicConfig(level=logging.DEBUG)
|
||||
else:
|
||||
logging.basicConfig(level=logging.WARNING)
|
||||
|
@ -29,7 +29,7 @@ from searx.poolrequests import get as http_get
|
||||
|
||||
def get(*args, **kwargs):
|
||||
if 'timeout' not in kwargs:
|
||||
kwargs['timeout'] = settings['server']['request_timeout']
|
||||
kwargs['timeout'] = settings['outgoing']['request_timeout']
|
||||
|
||||
return http_get(*args, **kwargs)
|
||||
|
||||
|
@ -75,7 +75,7 @@ def load_engine(engine_data):
|
||||
engine.safesearch = False
|
||||
|
||||
if not hasattr(engine, 'timeout'):
|
||||
engine.timeout = settings['server']['request_timeout']
|
||||
engine.timeout = settings['outgoing']['request_timeout']
|
||||
|
||||
if not hasattr(engine, 'shortcut'):
|
||||
engine.shortcut = ''
|
||||
|
@ -52,7 +52,7 @@ def request(query, params):
|
||||
def response(resp):
|
||||
results = []
|
||||
|
||||
dom = html.fromstring(resp.content)
|
||||
dom = html.fromstring(resp.text)
|
||||
|
||||
# parse results
|
||||
for result in dom.xpath('//div[@class="sa_cc"]'):
|
||||
|
@ -63,7 +63,7 @@ def request(query, params):
|
||||
def response(resp):
|
||||
results = []
|
||||
|
||||
dom = html.fromstring(resp.content)
|
||||
dom = html.fromstring(resp.text)
|
||||
|
||||
# init regex for yaml-parsing
|
||||
p = re.compile('({|,)([a-z]+):(")')
|
||||
|
@ -13,6 +13,8 @@
|
||||
from urllib import urlencode
|
||||
from cgi import escape
|
||||
from lxml import etree
|
||||
from random import randint
|
||||
from time import time
|
||||
|
||||
# engine dependent config
|
||||
categories = ['general']
|
||||
@ -21,7 +23,7 @@ number_of_results = 5
|
||||
|
||||
# search-url, invalid HTTPS certificate
|
||||
base_url = 'http://gigablast.com/'
|
||||
search_string = 'search?{query}&n={number_of_results}&s={offset}&xml=1&qh=0'
|
||||
search_string = 'search?{query}&n={number_of_results}&s={offset}&xml=1&qh=0&uxid={uxid}&rand={rand}'
|
||||
|
||||
# specific xpath variables
|
||||
results_xpath = '//response//result'
|
||||
@ -37,7 +39,9 @@ def request(query, params):
|
||||
search_path = search_string.format(
|
||||
query=urlencode({'q': query}),
|
||||
offset=offset,
|
||||
number_of_results=number_of_results)
|
||||
number_of_results=number_of_results,
|
||||
uxid=randint(10000, 10000000),
|
||||
rand=int(time()))
|
||||
|
||||
params['url'] = base_url + search_path
|
||||
|
||||
|
@ -9,11 +9,15 @@
|
||||
# @parse url, title, content, suggestion
|
||||
|
||||
import re
|
||||
from cgi import escape
|
||||
from urllib import urlencode
|
||||
from urlparse import urlparse, parse_qsl
|
||||
from lxml import html
|
||||
from lxml import html, etree
|
||||
from searx.poolrequests import get
|
||||
from searx.engines.xpath import extract_text, extract_url
|
||||
from searx.search import logger
|
||||
|
||||
logger = logger.getChild('google engine')
|
||||
|
||||
|
||||
# engine dependent config
|
||||
@ -167,7 +171,7 @@ def parse_url(url_string, google_hostname):
|
||||
def extract_text_from_dom(result, xpath):
|
||||
r = result.xpath(xpath)
|
||||
if len(r) > 0:
|
||||
return extract_text(r[0])
|
||||
return escape(extract_text(r[0]))
|
||||
return None
|
||||
|
||||
|
||||
@ -224,8 +228,8 @@ def response(resp):
|
||||
|
||||
# parse results
|
||||
for result in dom.xpath(results_xpath):
|
||||
title = extract_text(result.xpath(title_xpath)[0])
|
||||
try:
|
||||
title = extract_text(result.xpath(title_xpath)[0])
|
||||
url = parse_url(extract_url(result.xpath(url_xpath), google_url), google_hostname)
|
||||
parsed_url = urlparse(url, google_hostname)
|
||||
|
||||
@ -268,12 +272,13 @@ def response(resp):
|
||||
'content': content
|
||||
})
|
||||
except:
|
||||
logger.debug('result parse error in:\n%s', etree.tostring(result, pretty_print=True))
|
||||
continue
|
||||
|
||||
# parse suggestion
|
||||
for suggestion in dom.xpath(suggestion_xpath):
|
||||
# append suggestion
|
||||
results.append({'suggestion': extract_text(suggestion)})
|
||||
results.append({'suggestion': escape(extract_text(suggestion))})
|
||||
|
||||
# return results
|
||||
return results
|
||||
|
@ -20,7 +20,7 @@ categories = ['videos', 'music', 'files']
|
||||
paging = True
|
||||
|
||||
# search-url
|
||||
url = 'https://thepiratebay.am/'
|
||||
url = 'https://thepiratebay.se/'
|
||||
search_url = url + 'search/{search_term}/{pageno}/99/{search_type}'
|
||||
|
||||
# piratebay specific type-definitions
|
||||
|
@ -34,6 +34,11 @@ def request(query, params):
|
||||
params['url'] = search_url.format(query=urlencode({'q': query}),
|
||||
pageno=params['pageno']-1)
|
||||
|
||||
# Disable SSL verification
|
||||
# error: (60) SSL certificate problem: unable to get local issuer
|
||||
# certificate
|
||||
params['verify'] = False
|
||||
|
||||
return params
|
||||
|
||||
|
||||
|
@ -27,6 +27,11 @@ def request(query, params):
|
||||
params['url'] = search_url.format(query=urlencode({'q': query}),
|
||||
pageno=params['pageno']-1)
|
||||
|
||||
# Disable SSL verification
|
||||
# error: (60) SSL certificate problem: unable to get local issuer
|
||||
# certificate
|
||||
params['verify'] = False
|
||||
|
||||
return params
|
||||
|
||||
|
||||
|
@ -12,6 +12,8 @@
|
||||
|
||||
from lxml import html
|
||||
from cgi import escape
|
||||
from dateutil import parser
|
||||
from datetime import datetime, timedelta
|
||||
import re
|
||||
from searx.engines.xpath import extract_text
|
||||
|
||||
@ -66,16 +68,53 @@ def response(resp):
|
||||
url = link.attrib.get('href')
|
||||
|
||||
# block google-ad url's
|
||||
if re.match("^http(s|)://www.google.[a-z]+/aclk.*$", url):
|
||||
if re.match("^http(s|)://(www\.)?google\.[a-z]+/aclk.*$", url):
|
||||
continue
|
||||
|
||||
# block startpage search url's
|
||||
if re.match("^http(s|)://(www\.)?startpage\.com/do/search\?.*$", url):
|
||||
continue
|
||||
|
||||
# block ixquick search url's
|
||||
if re.match("^http(s|)://(www\.)?ixquick\.com/do/search\?.*$", url):
|
||||
continue
|
||||
|
||||
title = escape(extract_text(link))
|
||||
|
||||
if result.xpath('./p[@class="desc"]'):
|
||||
content = escape(extract_text(result.xpath('./p[@class="desc"]')))
|
||||
if result.xpath('./p[@class="desc clk"]'):
|
||||
content = escape(extract_text(result.xpath('./p[@class="desc clk"]')))
|
||||
else:
|
||||
content = ''
|
||||
|
||||
published_date = None
|
||||
|
||||
# check if search result starts with something like: "2 Sep 2014 ... "
|
||||
if re.match("^([1-9]|[1-2][0-9]|3[0-1]) [A-Z][a-z]{2} [0-9]{4} \.\.\. ", content):
|
||||
date_pos = content.find('...')+4
|
||||
date_string = content[0:date_pos-5]
|
||||
published_date = parser.parse(date_string, dayfirst=True)
|
||||
|
||||
# fix content string
|
||||
content = content[date_pos:]
|
||||
|
||||
# check if search result starts with something like: "5 days ago ... "
|
||||
elif re.match("^[0-9]+ days? ago \.\.\. ", content):
|
||||
date_pos = content.find('...')+4
|
||||
date_string = content[0:date_pos-5]
|
||||
|
||||
# calculate datetime
|
||||
published_date = datetime.now() - timedelta(days=int(re.match(r'\d+', date_string).group()))
|
||||
|
||||
# fix content string
|
||||
content = content[date_pos:]
|
||||
|
||||
if published_date:
|
||||
# append result
|
||||
results.append({'url': url,
|
||||
'title': title,
|
||||
'content': content,
|
||||
'publishedDate': published_date})
|
||||
else:
|
||||
# append result
|
||||
results.append({'url': url,
|
||||
'title': title,
|
||||
|
@ -55,10 +55,14 @@ def response(resp):
|
||||
|
||||
# parse results
|
||||
for tweet in dom.xpath(results_xpath):
|
||||
try:
|
||||
link = tweet.xpath(link_xpath)[0]
|
||||
content = extract_text(tweet.xpath(content_xpath)[0])
|
||||
except Exception:
|
||||
continue
|
||||
|
||||
url = urljoin(base_url, link.attrib.get('href'))
|
||||
title = extract_text(tweet.xpath(title_xpath))
|
||||
content = extract_text(tweet.xpath(content_xpath)[0])
|
||||
|
||||
pubdate = tweet.xpath(timestamp_xpath)
|
||||
if len(pubdate) > 0:
|
||||
|
@ -1,8 +1,15 @@
|
||||
import json
|
||||
from urllib import urlencode
|
||||
|
||||
from searx import logger
|
||||
from searx.poolrequests import get
|
||||
from searx.utils import format_date_by_locale
|
||||
|
||||
from datetime import datetime
|
||||
from dateutil.parser import parse as dateutil_parse
|
||||
from urllib import urlencode
|
||||
|
||||
|
||||
logger = logger.getChild('wikidata')
|
||||
result_count = 1
|
||||
wikidata_host = 'https://www.wikidata.org'
|
||||
wikidata_api = wikidata_host + '/w/api.php'
|
||||
@ -164,14 +171,12 @@ def getDetail(jsonresponse, wikidata_id, language, locale):
|
||||
if postal_code is not None:
|
||||
attributes.append({'label': 'Postal code(s)', 'value': postal_code})
|
||||
|
||||
date_of_birth = get_time(claims, 'P569', None)
|
||||
date_of_birth = get_time(claims, 'P569', locale, None)
|
||||
if date_of_birth is not None:
|
||||
date_of_birth = format_date_by_locale(date_of_birth[8:], locale)
|
||||
attributes.append({'label': 'Date of birth', 'value': date_of_birth})
|
||||
|
||||
date_of_death = get_time(claims, 'P570', None)
|
||||
date_of_death = get_time(claims, 'P570', locale, None)
|
||||
if date_of_death is not None:
|
||||
date_of_death = format_date_by_locale(date_of_death[8:], locale)
|
||||
attributes.append({'label': 'Date of death', 'value': date_of_death})
|
||||
|
||||
if len(attributes) == 0 and len(urls) == 2 and len(description) == 0:
|
||||
@ -229,7 +234,7 @@ def get_string(claims, propertyName, defaultValue=None):
|
||||
return result[0]
|
||||
|
||||
|
||||
def get_time(claims, propertyName, defaultValue=None):
|
||||
def get_time(claims, propertyName, locale, defaultValue=None):
|
||||
propValue = claims.get(propertyName, {})
|
||||
if len(propValue) == 0:
|
||||
return defaultValue
|
||||
@ -244,9 +249,22 @@ def get_time(claims, propertyName, defaultValue=None):
|
||||
result.append(value.get('time', ''))
|
||||
|
||||
if len(result) == 0:
|
||||
return defaultValue
|
||||
date_string = defaultValue
|
||||
else:
|
||||
return ', '.join(result)
|
||||
date_string = ', '.join(result)
|
||||
|
||||
try:
|
||||
parsed_date = datetime.strptime(date_string, "+%Y-%m-%dT%H:%M:%SZ")
|
||||
except:
|
||||
if date_string.startswith('-'):
|
||||
return date_string.split('T')[0]
|
||||
try:
|
||||
parsed_date = dateutil_parse(date_string, fuzzy=False, default=False)
|
||||
except:
|
||||
logger.debug('could not parse date %s', date_string)
|
||||
return date_string.split('T')[0]
|
||||
|
||||
return format_date_by_locale(parsed_date, locale)
|
||||
|
||||
|
||||
def get_geolink(claims, propertyName, defaultValue=''):
|
||||
|
62
searx/engines/yandex.py
Normal file
62
searx/engines/yandex.py
Normal file
@ -0,0 +1,62 @@
|
||||
"""
|
||||
Yahoo (Web)
|
||||
|
||||
@website https://yandex.ru/
|
||||
@provide-api ?
|
||||
@using-api no
|
||||
@results HTML (using search portal)
|
||||
@stable no (HTML can change)
|
||||
@parse url, title, content
|
||||
"""
|
||||
|
||||
from urllib import urlencode
|
||||
from lxml import html
|
||||
from searx.search import logger
|
||||
|
||||
logger = logger.getChild('yandex engine')
|
||||
|
||||
# engine dependent config
|
||||
categories = ['general']
|
||||
paging = True
|
||||
language_support = True # TODO
|
||||
|
||||
default_tld = 'com'
|
||||
language_map = {'ru': 'ru',
|
||||
'ua': 'uk',
|
||||
'tr': 'com.tr'}
|
||||
|
||||
# search-url
|
||||
base_url = 'https://yandex.{tld}/'
|
||||
search_url = 'search/?{query}&p={page}'
|
||||
|
||||
results_xpath = '//div[@class="serp-item serp-item_plain_yes clearfix i-bem"]'
|
||||
url_xpath = './/h2/a/@href'
|
||||
title_xpath = './/h2/a//text()'
|
||||
content_xpath = './/div[@class="serp-item__text"]//text()'
|
||||
|
||||
|
||||
def request(query, params):
|
||||
lang = params['language'].split('_')[0]
|
||||
host = base_url.format(tld=language_map.get(lang) or default_tld)
|
||||
params['url'] = host + search_url.format(page=params['pageno']-1,
|
||||
query=urlencode({'text': query}))
|
||||
return params
|
||||
|
||||
|
||||
# get response from search-request
|
||||
def response(resp):
|
||||
dom = html.fromstring(resp.text)
|
||||
results = []
|
||||
|
||||
for result in dom.xpath(results_xpath):
|
||||
try:
|
||||
res = {'url': result.xpath(url_xpath)[0],
|
||||
'title': ''.join(result.xpath(title_xpath)),
|
||||
'content': ''.join(result.xpath(content_xpath))}
|
||||
except:
|
||||
logger.exception('yandex parse crash')
|
||||
continue
|
||||
|
||||
results.append(res)
|
||||
|
||||
return results
|
@ -1,93 +0,0 @@
|
||||
# Youtube (Videos)
|
||||
#
|
||||
# @website https://www.youtube.com/
|
||||
# @provide-api yes (http://gdata-samples-youtube-search-py.appspot.com/)
|
||||
#
|
||||
# @using-api yes
|
||||
# @results JSON
|
||||
# @stable yes
|
||||
# @parse url, title, content, publishedDate, thumbnail, embedded
|
||||
|
||||
from json import loads
|
||||
from urllib import urlencode
|
||||
from dateutil import parser
|
||||
|
||||
# engine dependent config
|
||||
categories = ['videos', 'music']
|
||||
paging = True
|
||||
language_support = True
|
||||
|
||||
# search-url
|
||||
base_url = 'https://gdata.youtube.com/feeds/api/videos'
|
||||
search_url = base_url + '?alt=json&{query}&start-index={index}&max-results=5'
|
||||
|
||||
embedded_url = '<iframe width="540" height="304" ' +\
|
||||
'data-src="//www.youtube-nocookie.com/embed/{videoid}" ' +\
|
||||
'frameborder="0" allowfullscreen></iframe>'
|
||||
|
||||
|
||||
# do search-request
|
||||
def request(query, params):
|
||||
index = (params['pageno'] - 1) * 5 + 1
|
||||
|
||||
params['url'] = search_url.format(query=urlencode({'q': query}),
|
||||
index=index)
|
||||
|
||||
# add language tag if specified
|
||||
if params['language'] != 'all':
|
||||
params['url'] += '&lr=' + params['language'].split('_')[0]
|
||||
|
||||
return params
|
||||
|
||||
|
||||
# get response from search-request
|
||||
def response(resp):
|
||||
results = []
|
||||
|
||||
search_results = loads(resp.text)
|
||||
|
||||
# return empty array if there are no results
|
||||
if 'feed' not in search_results:
|
||||
return []
|
||||
|
||||
feed = search_results['feed']
|
||||
|
||||
# parse results
|
||||
for result in feed['entry']:
|
||||
url = [x['href'] for x in result['link'] if x['type'] == 'text/html']
|
||||
|
||||
if not url:
|
||||
continue
|
||||
|
||||
# remove tracking
|
||||
url = url[0].replace('feature=youtube_gdata', '')
|
||||
if url.endswith('&'):
|
||||
url = url[:-1]
|
||||
|
||||
videoid = url[32:]
|
||||
|
||||
title = result['title']['$t']
|
||||
content = ''
|
||||
thumbnail = ''
|
||||
|
||||
pubdate = result['published']['$t']
|
||||
publishedDate = parser.parse(pubdate)
|
||||
|
||||
if 'media$thumbnail' in result['media$group']:
|
||||
thumbnail = result['media$group']['media$thumbnail'][0]['url']
|
||||
|
||||
content = result['content']['$t']
|
||||
|
||||
embedded = embedded_url.format(videoid=videoid)
|
||||
|
||||
# append result
|
||||
results.append({'url': url,
|
||||
'title': title,
|
||||
'content': content,
|
||||
'template': 'videos.html',
|
||||
'publishedDate': publishedDate,
|
||||
'embedded': embedded,
|
||||
'thumbnail': thumbnail})
|
||||
|
||||
# return results
|
||||
return results
|
@ -35,10 +35,10 @@ def post_search(request, ctx):
|
||||
ip = x_forwarded_for[0]
|
||||
else:
|
||||
ip = request.remote_addr
|
||||
ctx['search'].answers.clear()
|
||||
ctx['search'].answers.add(ip)
|
||||
ctx['search'].result_container.answers.clear()
|
||||
ctx['search'].result_container.answers.add(ip)
|
||||
elif p.match(ctx['search'].query):
|
||||
ua = request.user_agent
|
||||
ctx['search'].answers.clear()
|
||||
ctx['search'].answers.add(ua)
|
||||
ctx['search'].result_container.answers.clear()
|
||||
ctx['search'].result_container.answers.add(ua)
|
||||
return True
|
||||
|
@ -1,5 +1,7 @@
|
||||
import requests
|
||||
|
||||
from itertools import cycle
|
||||
from threading import RLock
|
||||
from searx import settings
|
||||
|
||||
|
||||
@ -39,11 +41,11 @@ class HTTPAdapterWithConnParams(requests.adapters.HTTPAdapter):
|
||||
block=self._pool_block, **self._conn_params)
|
||||
|
||||
|
||||
if settings.get('source_ips'):
|
||||
if settings['outgoing'].get('source_ips'):
|
||||
http_adapters = cycle(HTTPAdapterWithConnParams(pool_connections=100, source_address=(source_ip, 0))
|
||||
for source_ip in settings['source_ips'])
|
||||
for source_ip in settings['outgoing']['source_ips'])
|
||||
https_adapters = cycle(HTTPAdapterWithConnParams(pool_connections=100, source_address=(source_ip, 0))
|
||||
for source_ip in settings['source_ips'])
|
||||
for source_ip in settings['outgoing']['source_ips'])
|
||||
else:
|
||||
http_adapters = cycle((HTTPAdapterWithConnParams(pool_connections=100), ))
|
||||
https_adapters = cycle((HTTPAdapterWithConnParams(pool_connections=100), ))
|
||||
@ -55,6 +57,7 @@ class SessionSinglePool(requests.Session):
|
||||
super(SessionSinglePool, self).__init__()
|
||||
|
||||
# reuse the same adapters
|
||||
with RLock():
|
||||
self.adapters.clear()
|
||||
self.mount('https://', next(https_adapters))
|
||||
self.mount('http://', next(http_adapters))
|
||||
@ -67,9 +70,8 @@ class SessionSinglePool(requests.Session):
|
||||
|
||||
def request(method, url, **kwargs):
|
||||
"""same as requests/requests/api.py request(...) except it use SessionSinglePool and force proxies"""
|
||||
global settings
|
||||
session = SessionSinglePool()
|
||||
kwargs['proxies'] = settings.get('outgoing_proxies', None)
|
||||
kwargs['proxies'] = settings['outgoing'].get('proxies', None)
|
||||
response = session.request(method=method, url=url, **kwargs)
|
||||
session.close()
|
||||
return response
|
||||
|
239
searx/results.py
Normal file
239
searx/results.py
Normal file
@ -0,0 +1,239 @@
|
||||
import re
|
||||
from collections import defaultdict
|
||||
from operator import itemgetter
|
||||
from threading import RLock
|
||||
from urlparse import urlparse, unquote
|
||||
from searx.engines import engines
|
||||
|
||||
CONTENT_LEN_IGNORED_CHARS_REGEX = re.compile('[,;:!?\./\\\\ ()-_]', re.M | re.U)
|
||||
WHITESPACE_REGEX = re.compile('( |\t|\n)+', re.M | re.U)
|
||||
|
||||
|
||||
# return the meaningful length of the content for a result
|
||||
def result_content_len(content):
|
||||
if isinstance(content, basestring):
|
||||
return len(CONTENT_LEN_IGNORED_CHARS_REGEX.sub('', content))
|
||||
else:
|
||||
return 0
|
||||
|
||||
|
||||
def compare_urls(url_a, url_b):
|
||||
if url_a.netloc != url_b.netloc or url_a.query != url_b.query:
|
||||
return False
|
||||
|
||||
# remove / from the end of the url if required
|
||||
path_a = url_a.path[:-1]\
|
||||
if url_a.path.endswith('/')\
|
||||
else url_a.path
|
||||
path_b = url_b.path[:-1]\
|
||||
if url_b.path.endswith('/')\
|
||||
else url_b.path
|
||||
|
||||
return unquote(path_a) == unquote(path_b)
|
||||
|
||||
|
||||
def merge_two_infoboxes(infobox1, infobox2):
|
||||
if 'urls' in infobox2:
|
||||
urls1 = infobox1.get('urls', None)
|
||||
if urls1 is None:
|
||||
urls1 = []
|
||||
infobox1.set('urls', urls1)
|
||||
|
||||
urlSet = set()
|
||||
for url in infobox1.get('urls', []):
|
||||
urlSet.add(url.get('url', None))
|
||||
|
||||
for url in infobox2.get('urls', []):
|
||||
if url.get('url', None) not in urlSet:
|
||||
urls1.append(url)
|
||||
|
||||
if 'attributes' in infobox2:
|
||||
attributes1 = infobox1.get('attributes', None)
|
||||
if attributes1 is None:
|
||||
attributes1 = []
|
||||
infobox1.set('attributes', attributes1)
|
||||
|
||||
attributeSet = set()
|
||||
for attribute in infobox1.get('attributes', []):
|
||||
if attribute.get('label', None) not in attributeSet:
|
||||
attributeSet.add(attribute.get('label', None))
|
||||
|
||||
for attribute in infobox2.get('attributes', []):
|
||||
attributes1.append(attribute)
|
||||
|
||||
if 'content' in infobox2:
|
||||
content1 = infobox1.get('content', None)
|
||||
content2 = infobox2.get('content', '')
|
||||
if content1 is not None:
|
||||
if result_content_len(content2) > result_content_len(content1):
|
||||
infobox1['content'] = content2
|
||||
else:
|
||||
infobox1.set('content', content2)
|
||||
|
||||
|
||||
def result_score(result):
|
||||
weight = 1.0
|
||||
|
||||
for result_engine in result['engines']:
|
||||
if hasattr(engines[result_engine], 'weight'):
|
||||
weight *= float(engines[result_engine].weight)
|
||||
|
||||
occurences = len(result['positions'])
|
||||
|
||||
return sum((occurences * weight) / position for position in result['positions'])
|
||||
|
||||
|
||||
class ResultContainer(object):
|
||||
"""docstring for ResultContainer"""
|
||||
def __init__(self):
|
||||
super(ResultContainer, self).__init__()
|
||||
self.results = defaultdict(list)
|
||||
self._merged_results = []
|
||||
self.infoboxes = []
|
||||
self._infobox_ids = {}
|
||||
self.suggestions = set()
|
||||
self.answers = set()
|
||||
|
||||
def extend(self, engine_name, results):
|
||||
for result in list(results):
|
||||
if 'suggestion' in result:
|
||||
self.suggestions.add(result['suggestion'])
|
||||
results.remove(result)
|
||||
elif 'answer' in result:
|
||||
self.answers.add(result['answer'])
|
||||
results.remove(result)
|
||||
elif 'infobox' in result:
|
||||
self._merge_infobox(result)
|
||||
results.remove(result)
|
||||
|
||||
with RLock():
|
||||
engines[engine_name].stats['search_count'] += 1
|
||||
engines[engine_name].stats['result_count'] += len(results)
|
||||
|
||||
if not results:
|
||||
return
|
||||
|
||||
self.results[engine_name].extend(results)
|
||||
|
||||
for i, result in enumerate(results):
|
||||
position = i + 1
|
||||
self._merge_result(result, position)
|
||||
|
||||
def _merge_infobox(self, infobox):
|
||||
add_infobox = True
|
||||
infobox_id = infobox.get('id', None)
|
||||
if infobox_id is not None:
|
||||
existingIndex = self._infobox_ids.get(infobox_id, None)
|
||||
if existingIndex is not None:
|
||||
merge_two_infoboxes(self.infoboxes[existingIndex], infobox)
|
||||
add_infobox = False
|
||||
|
||||
if add_infobox:
|
||||
self.infoboxes.append(infobox)
|
||||
self._infobox_ids[infobox_id] = len(self.infoboxes) - 1
|
||||
|
||||
def _merge_result(self, result, position):
|
||||
result['parsed_url'] = urlparse(result['url'])
|
||||
|
||||
# if the result has no scheme, use http as default
|
||||
if not result['parsed_url'].scheme:
|
||||
result['parsed_url'] = result['parsed_url']._replace(scheme="http")
|
||||
|
||||
result['host'] = result['parsed_url'].netloc
|
||||
|
||||
if result['host'].startswith('www.'):
|
||||
result['host'] = result['host'].replace('www.', '', 1)
|
||||
|
||||
result['engines'] = [result['engine']]
|
||||
|
||||
# strip multiple spaces and cariage returns from content
|
||||
if result.get('content'):
|
||||
result['content'] = WHITESPACE_REGEX.sub(' ', result['content'])
|
||||
|
||||
# check for duplicates
|
||||
duplicated = False
|
||||
for merged_result in self._merged_results:
|
||||
if compare_urls(result['parsed_url'], merged_result['parsed_url'])\
|
||||
and result.get('template') == merged_result.get('template'):
|
||||
duplicated = merged_result
|
||||
break
|
||||
|
||||
# merge duplicates together
|
||||
if duplicated:
|
||||
# using content with more text
|
||||
if result_content_len(result.get('content', '')) >\
|
||||
result_content_len(duplicated.get('content', '')):
|
||||
duplicated['content'] = result['content']
|
||||
|
||||
# add the new position
|
||||
duplicated['positions'].append(position)
|
||||
|
||||
# add engine to list of result-engines
|
||||
duplicated['engines'].append(result['engine'])
|
||||
|
||||
# using https if possible
|
||||
if duplicated['parsed_url'].scheme != 'https' and result['parsed_url'].scheme == 'https':
|
||||
duplicated['url'] = result['parsed_url'].geturl()
|
||||
duplicated['parsed_url'] = result['parsed_url']
|
||||
|
||||
# if there is no duplicate found, append result
|
||||
else:
|
||||
result['positions'] = [position]
|
||||
with RLock():
|
||||
self._merged_results.append(result)
|
||||
|
||||
def get_ordered_results(self):
|
||||
for result in self._merged_results:
|
||||
score = result_score(result)
|
||||
result['score'] = score
|
||||
with RLock():
|
||||
for result_engine in result['engines']:
|
||||
engines[result_engine].stats['score_count'] += score
|
||||
|
||||
results = sorted(self._merged_results, key=itemgetter('score'), reverse=True)
|
||||
|
||||
# pass 2 : group results by category and template
|
||||
gresults = []
|
||||
categoryPositions = {}
|
||||
|
||||
for i, res in enumerate(results):
|
||||
# FIXME : handle more than one category per engine
|
||||
category = engines[res['engine']].categories[0] + ':' + ''\
|
||||
if 'template' not in res\
|
||||
else res['template']
|
||||
|
||||
current = None if category not in categoryPositions\
|
||||
else categoryPositions[category]
|
||||
|
||||
# group with previous results using the same category
|
||||
# if the group can accept more result and is not too far
|
||||
# from the current position
|
||||
if current is not None and (current['count'] > 0)\
|
||||
and (len(gresults) - current['index'] < 20):
|
||||
# group with the previous results using
|
||||
# the same category with this one
|
||||
index = current['index']
|
||||
gresults.insert(index, res)
|
||||
|
||||
# update every index after the current one
|
||||
# (including the current one)
|
||||
for k in categoryPositions:
|
||||
v = categoryPositions[k]['index']
|
||||
if v >= index:
|
||||
categoryPositions[k]['index'] = v + 1
|
||||
|
||||
# update this category
|
||||
current['count'] -= 1
|
||||
|
||||
else:
|
||||
# same category
|
||||
gresults.append(res)
|
||||
|
||||
# update categoryIndex
|
||||
categoryPositions[category] = {'index': len(gresults), 'count': 8}
|
||||
|
||||
# return gresults
|
||||
return gresults
|
||||
|
||||
def results_length(self):
|
||||
return len(self._merged_results)
|
280
searx/search.py
280
searx/search.py
@ -16,19 +16,16 @@ along with searx. If not, see < http://www.gnu.org/licenses/ >.
|
||||
'''
|
||||
|
||||
import threading
|
||||
import re
|
||||
import searx.poolrequests as requests_lib
|
||||
from itertools import izip_longest, chain
|
||||
from operator import itemgetter
|
||||
from Queue import Queue
|
||||
from time import time
|
||||
from urlparse import urlparse, unquote
|
||||
from searx import settings
|
||||
from searx.engines import (
|
||||
categories, engines
|
||||
)
|
||||
from searx.languages import language_codes
|
||||
from searx.utils import gen_useragent, get_blocked_engines
|
||||
from searx.query import Query
|
||||
from searx.results import ResultContainer
|
||||
from searx import logger
|
||||
|
||||
logger = logger.getChild('search')
|
||||
@ -41,6 +38,7 @@ def search_request_wrapper(fn, url, engine_name, **kwargs):
|
||||
return fn(url, **kwargs)
|
||||
except:
|
||||
# increase errors stats
|
||||
with threading.RLock():
|
||||
engines[engine_name].stats['errors'] += 1
|
||||
|
||||
# print engine name and specific error message
|
||||
@ -83,7 +81,7 @@ def default_request_params():
|
||||
|
||||
|
||||
# create a callback wrapper for the search engine results
|
||||
def make_callback(engine_name, results_queue, callback, params):
|
||||
def make_callback(engine_name, callback, params, result_container):
|
||||
|
||||
# creating a callback wrapper for the search engine results
|
||||
def process_callback(response, **kwargs):
|
||||
@ -95,11 +93,16 @@ def make_callback(engine_name, results_queue, callback, params):
|
||||
|
||||
response.search_params = params
|
||||
|
||||
timeout_overhead = 0.2 # seconds
|
||||
search_duration = time() - params['started']
|
||||
# update stats with current page-load-time
|
||||
with threading.RLock():
|
||||
engines[engine_name].stats['page_load_time'] += search_duration
|
||||
|
||||
timeout_overhead = 0.2 # seconds
|
||||
timeout_limit = engines[engine_name].timeout + timeout_overhead
|
||||
|
||||
if search_duration > timeout_limit:
|
||||
engines[engine_name].stats['page_load_time'] += timeout_limit
|
||||
with threading.RLock():
|
||||
engines[engine_name].stats['errors'] += 1
|
||||
return
|
||||
|
||||
@ -110,207 +113,11 @@ def make_callback(engine_name, results_queue, callback, params):
|
||||
for result in search_results:
|
||||
result['engine'] = engine_name
|
||||
|
||||
results_queue.put_nowait((engine_name, search_results))
|
||||
|
||||
# update stats with current page-load-time
|
||||
engines[engine_name].stats['page_load_time'] += search_duration
|
||||
result_container.extend(engine_name, search_results)
|
||||
|
||||
return process_callback
|
||||
|
||||
|
||||
# return the meaningful length of the content for a result
|
||||
def content_result_len(content):
|
||||
if isinstance(content, basestring):
|
||||
content = re.sub('[,;:!?\./\\\\ ()-_]', '', content)
|
||||
return len(content)
|
||||
else:
|
||||
return 0
|
||||
|
||||
|
||||
# score results and remove duplications
|
||||
def score_results(results):
|
||||
# calculate scoring parameters
|
||||
flat_res = filter(
|
||||
None, chain.from_iterable(izip_longest(*results.values())))
|
||||
flat_len = len(flat_res)
|
||||
engines_len = len(results)
|
||||
|
||||
results = []
|
||||
|
||||
# pass 1: deduplication + scoring
|
||||
for i, res in enumerate(flat_res):
|
||||
|
||||
res['parsed_url'] = urlparse(res['url'])
|
||||
|
||||
res['host'] = res['parsed_url'].netloc
|
||||
|
||||
if res['host'].startswith('www.'):
|
||||
res['host'] = res['host'].replace('www.', '', 1)
|
||||
|
||||
res['engines'] = [res['engine']]
|
||||
|
||||
weight = 1.0
|
||||
|
||||
# strip multiple spaces and cariage returns from content
|
||||
if res.get('content'):
|
||||
res['content'] = re.sub(' +', ' ',
|
||||
res['content'].strip().replace('\n', ''))
|
||||
|
||||
# get weight of this engine if possible
|
||||
if hasattr(engines[res['engine']], 'weight'):
|
||||
weight = float(engines[res['engine']].weight)
|
||||
|
||||
# calculate score for that engine
|
||||
score = int((flat_len - i) / engines_len) * weight + 1
|
||||
|
||||
# check for duplicates
|
||||
duplicated = False
|
||||
for new_res in results:
|
||||
# remove / from the end of the url if required
|
||||
p1 = res['parsed_url'].path[:-1]\
|
||||
if res['parsed_url'].path.endswith('/')\
|
||||
else res['parsed_url'].path
|
||||
p2 = new_res['parsed_url'].path[:-1]\
|
||||
if new_res['parsed_url'].path.endswith('/')\
|
||||
else new_res['parsed_url'].path
|
||||
|
||||
# check if that result is a duplicate
|
||||
if res['host'] == new_res['host'] and\
|
||||
unquote(p1) == unquote(p2) and\
|
||||
res['parsed_url'].query == new_res['parsed_url'].query and\
|
||||
res.get('template') == new_res.get('template'):
|
||||
duplicated = new_res
|
||||
break
|
||||
|
||||
# merge duplicates together
|
||||
if duplicated:
|
||||
# using content with more text
|
||||
if content_result_len(res.get('content', '')) >\
|
||||
content_result_len(duplicated.get('content', '')):
|
||||
duplicated['content'] = res['content']
|
||||
|
||||
# increase result-score
|
||||
duplicated['score'] += score
|
||||
|
||||
# add engine to list of result-engines
|
||||
duplicated['engines'].append(res['engine'])
|
||||
|
||||
# using https if possible
|
||||
if duplicated['parsed_url'].scheme == 'https':
|
||||
continue
|
||||
elif res['parsed_url'].scheme == 'https':
|
||||
duplicated['url'] = res['parsed_url'].geturl()
|
||||
duplicated['parsed_url'] = res['parsed_url']
|
||||
|
||||
# if there is no duplicate found, append result
|
||||
else:
|
||||
res['score'] = score
|
||||
results.append(res)
|
||||
|
||||
results = sorted(results, key=itemgetter('score'), reverse=True)
|
||||
|
||||
# pass 2 : group results by category and template
|
||||
gresults = []
|
||||
categoryPositions = {}
|
||||
|
||||
for i, res in enumerate(results):
|
||||
# FIXME : handle more than one category per engine
|
||||
category = engines[res['engine']].categories[0] + ':' + ''\
|
||||
if 'template' not in res\
|
||||
else res['template']
|
||||
|
||||
current = None if category not in categoryPositions\
|
||||
else categoryPositions[category]
|
||||
|
||||
# group with previous results using the same category
|
||||
# if the group can accept more result and is not too far
|
||||
# from the current position
|
||||
if current is not None and (current['count'] > 0)\
|
||||
and (len(gresults) - current['index'] < 20):
|
||||
# group with the previous results using
|
||||
# the same category with this one
|
||||
index = current['index']
|
||||
gresults.insert(index, res)
|
||||
|
||||
# update every index after the current one
|
||||
# (including the current one)
|
||||
for k in categoryPositions:
|
||||
v = categoryPositions[k]['index']
|
||||
if v >= index:
|
||||
categoryPositions[k]['index'] = v + 1
|
||||
|
||||
# update this category
|
||||
current['count'] -= 1
|
||||
|
||||
else:
|
||||
# same category
|
||||
gresults.append(res)
|
||||
|
||||
# update categoryIndex
|
||||
categoryPositions[category] = {'index': len(gresults), 'count': 8}
|
||||
|
||||
# return gresults
|
||||
return gresults
|
||||
|
||||
|
||||
def merge_two_infoboxes(infobox1, infobox2):
|
||||
if 'urls' in infobox2:
|
||||
urls1 = infobox1.get('urls', None)
|
||||
if urls1 is None:
|
||||
urls1 = []
|
||||
infobox1.set('urls', urls1)
|
||||
|
||||
urlSet = set()
|
||||
for url in infobox1.get('urls', []):
|
||||
urlSet.add(url.get('url', None))
|
||||
|
||||
for url in infobox2.get('urls', []):
|
||||
if url.get('url', None) not in urlSet:
|
||||
urls1.append(url)
|
||||
|
||||
if 'attributes' in infobox2:
|
||||
attributes1 = infobox1.get('attributes', None)
|
||||
if attributes1 is None:
|
||||
attributes1 = []
|
||||
infobox1.set('attributes', attributes1)
|
||||
|
||||
attributeSet = set()
|
||||
for attribute in infobox1.get('attributes', []):
|
||||
if attribute.get('label', None) not in attributeSet:
|
||||
attributeSet.add(attribute.get('label', None))
|
||||
|
||||
for attribute in infobox2.get('attributes', []):
|
||||
attributes1.append(attribute)
|
||||
|
||||
if 'content' in infobox2:
|
||||
content1 = infobox1.get('content', None)
|
||||
content2 = infobox2.get('content', '')
|
||||
if content1 is not None:
|
||||
if content_result_len(content2) > content_result_len(content1):
|
||||
infobox1['content'] = content2
|
||||
else:
|
||||
infobox1.set('content', content2)
|
||||
|
||||
|
||||
def merge_infoboxes(infoboxes):
|
||||
results = []
|
||||
infoboxes_id = {}
|
||||
for infobox in infoboxes:
|
||||
add_infobox = True
|
||||
infobox_id = infobox.get('id', None)
|
||||
if infobox_id is not None:
|
||||
existingIndex = infoboxes_id.get(infobox_id, None)
|
||||
if existingIndex is not None:
|
||||
merge_two_infoboxes(results[existingIndex], infobox)
|
||||
add_infobox = False
|
||||
|
||||
if add_infobox:
|
||||
results.append(infobox)
|
||||
infoboxes_id[infobox_id] = len(results) - 1
|
||||
|
||||
return results
|
||||
|
||||
|
||||
class Search(object):
|
||||
|
||||
"""Search information container"""
|
||||
@ -328,10 +135,7 @@ class Search(object):
|
||||
# set blocked engines
|
||||
self.blocked_engines = get_blocked_engines(engines, request.cookies)
|
||||
|
||||
self.results = []
|
||||
self.suggestions = set()
|
||||
self.answers = set()
|
||||
self.infoboxes = []
|
||||
self.result_container = ResultContainer()
|
||||
self.request_data = {}
|
||||
|
||||
# set specific language if set
|
||||
@ -386,11 +190,11 @@ class Search(object):
|
||||
load_default_categories = True
|
||||
for pd_name, pd in self.request_data.items():
|
||||
if pd_name == 'categories':
|
||||
self.categories.extend(categ.strip() for categ in pd.split(',') if categ in categories)
|
||||
self.categories.extend(categ for categ in map(unicode.strip, pd.split(',')) if categ in categories)
|
||||
elif pd_name == 'engines':
|
||||
pd_engines = [{'category': engines[engine].categories[0],
|
||||
'name': engine}
|
||||
for engine in map(str.strip, pd.split(',')) if engine in engines]
|
||||
for engine in map(unicode.strip, pd.split(',')) if engine in engines]
|
||||
if pd_engines:
|
||||
self.engines.extend(pd_engines)
|
||||
load_default_categories = False
|
||||
@ -409,6 +213,9 @@ class Search(object):
|
||||
self.categories.remove(category)
|
||||
|
||||
if not load_default_categories:
|
||||
if not self.categories:
|
||||
self.categories = list(set(engine['category']
|
||||
for engine in self.engines))
|
||||
return
|
||||
|
||||
# if no category is specified for this search,
|
||||
@ -440,8 +247,6 @@ class Search(object):
|
||||
|
||||
# init vars
|
||||
requests = []
|
||||
results_queue = Queue()
|
||||
results = {}
|
||||
|
||||
# increase number of searches
|
||||
number_of_searches += 1
|
||||
@ -473,16 +278,16 @@ class Search(object):
|
||||
request_params['started'] = time()
|
||||
request_params['pageno'] = self.pageno
|
||||
|
||||
if hasattr(engine, 'language'):
|
||||
if hasattr(engine, 'language') and engine.language:
|
||||
request_params['language'] = engine.language
|
||||
else:
|
||||
request_params['language'] = self.lang
|
||||
|
||||
try:
|
||||
# 0 = None, 1 = Moderate, 2 = Strict
|
||||
request_params['safesearch'] = int(request.cookies.get('safesearch', 1))
|
||||
except ValueError:
|
||||
request_params['safesearch'] = 1
|
||||
request_params['safesearch'] = int(request.cookies.get('safesearch'))
|
||||
except Exception:
|
||||
request_params['safesearch'] = settings['search']['safe_search']
|
||||
|
||||
# update request parameters dependent on
|
||||
# search-engine (contained in engines folder)
|
||||
@ -495,9 +300,9 @@ class Search(object):
|
||||
# create a callback wrapper for the search engine results
|
||||
callback = make_callback(
|
||||
selected_engine['name'],
|
||||
results_queue,
|
||||
engine.response,
|
||||
request_params)
|
||||
request_params,
|
||||
self.result_container)
|
||||
|
||||
# create dictionary which contain all
|
||||
# informations about the request
|
||||
@ -530,42 +335,5 @@ class Search(object):
|
||||
# send all search-request
|
||||
threaded_requests(requests)
|
||||
|
||||
while not results_queue.empty():
|
||||
engine_name, engine_results = results_queue.get_nowait()
|
||||
|
||||
# TODO type checks
|
||||
[self.suggestions.add(x['suggestion'])
|
||||
for x in list(engine_results)
|
||||
if 'suggestion' in x
|
||||
and engine_results.remove(x) is None]
|
||||
|
||||
[self.answers.add(x['answer'])
|
||||
for x in list(engine_results)
|
||||
if 'answer' in x
|
||||
and engine_results.remove(x) is None]
|
||||
|
||||
self.infoboxes.extend(x for x in list(engine_results)
|
||||
if 'infobox' in x
|
||||
and engine_results.remove(x) is None)
|
||||
|
||||
results[engine_name] = engine_results
|
||||
|
||||
# update engine-specific stats
|
||||
for engine_name, engine_results in results.items():
|
||||
engines[engine_name].stats['search_count'] += 1
|
||||
engines[engine_name].stats['result_count'] += len(engine_results)
|
||||
|
||||
# score results and remove duplications
|
||||
self.results = score_results(results)
|
||||
|
||||
# merge infoboxes according to their ids
|
||||
self.infoboxes = merge_infoboxes(self.infoboxes)
|
||||
|
||||
# update engine stats, using calculated score
|
||||
for result in self.results:
|
||||
for res_engine in result['engines']:
|
||||
engines[result['engine']]\
|
||||
.stats['score_count'] += result['score']
|
||||
|
||||
# return results, suggestions, answers and infoboxes
|
||||
return self
|
||||
|
@ -1,25 +1,34 @@
|
||||
general:
|
||||
debug : False # Debug mode, only for development
|
||||
|
||||
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
|
||||
|
||||
server:
|
||||
port : 8888
|
||||
bind_address : "127.0.0.1" # address to listen on
|
||||
secret_key : "ultrasecretkey" # change this!
|
||||
debug : False # Debug mode, only for development
|
||||
request_timeout : 2.0 # seconds
|
||||
base_url : False # Set custom base_url. Possible values: False or "https://your.custom.host/location/"
|
||||
image_proxy : False # Proxying image results through searx
|
||||
|
||||
ui:
|
||||
themes_path : "" # Custom ui themes path - leave it blank if you didn't change
|
||||
default_theme : oscar # ui theme
|
||||
useragent_suffix : "" # suffix of searx_useragent, could contain informations like an email address to the administrator
|
||||
image_proxy : False # Proxying image results through searx
|
||||
default_locale : "" # Default interface locale - leave blank to detect from browser information or use codes from the 'locales' config section
|
||||
|
||||
outgoing: # communication with search engines
|
||||
request_timeout : 2.0 # seconds
|
||||
useragent_suffix : "" # suffix of searx_useragent, could contain informations like an email address to the administrator
|
||||
# uncomment below section if you want to use a proxy
|
||||
# see http://docs.python-requests.org/en/latest/user/advanced/#proxies
|
||||
# SOCKS proxies are not supported : see https://github.com/kennethreitz/requests/pull/478
|
||||
#outgoing_proxies :
|
||||
# proxies :
|
||||
# http : http://127.0.0.1:8080
|
||||
# https: http://127.0.0.1:8080
|
||||
|
||||
# uncomment below section only if you have more than one network interface
|
||||
# which can be the source of outgoing search requests
|
||||
#source_ips:
|
||||
# source_ips:
|
||||
# - 1.1.1.1
|
||||
# - 1.1.1.2
|
||||
|
||||
@ -265,6 +274,11 @@ engines:
|
||||
engine : yahoo
|
||||
shortcut : yh
|
||||
|
||||
- name : yandex
|
||||
engine : yandex
|
||||
shortcut : yn
|
||||
disabled : True
|
||||
|
||||
- name : yahoo news
|
||||
engine : yahoo_news
|
||||
shortcut : yhn
|
||||
@ -310,6 +324,7 @@ locales:
|
||||
nl : Nederlands
|
||||
ja : 日本語 (Japanese)
|
||||
tr : Türkçe
|
||||
pt: Português
|
||||
pt : Português
|
||||
ru : Russian
|
||||
ro : Romanian
|
||||
zh : 中文 (Chinese)
|
||||
|
@ -1,13 +1,25 @@
|
||||
general:
|
||||
debug : False
|
||||
|
||||
search:
|
||||
safe_search : 0
|
||||
autocomplete : 0
|
||||
|
||||
server:
|
||||
port : 11111
|
||||
bind_address : 127.0.0.1
|
||||
secret_key : "ultrasecretkey" # change this!
|
||||
debug : False
|
||||
request_timeout : 3.0 # seconds
|
||||
base_url: False
|
||||
base_url : False
|
||||
image_proxy : False
|
||||
|
||||
ui:
|
||||
themes_path : ""
|
||||
default_theme : default
|
||||
https_rewrite : True
|
||||
image_proxy : False
|
||||
default_locale : ""
|
||||
|
||||
outgoing:
|
||||
request_timeout : 1.0 # seconds
|
||||
useragent_suffix : ""
|
||||
|
||||
engines:
|
||||
- name : general_dummy
|
||||
|
89
searx/static/themes/oscar/css/oscar.min.css
vendored
89
searx/static/themes/oscar/css/oscar.min.css
vendored
@ -1 +1,88 @@
|
||||
html{position:relative;min-height:100%}body{margin-bottom:80px}.footer{position:absolute;bottom:0;width:100%;height:60px}input[type=checkbox]:checked+.label_hide_if_checked,input[type=checkbox]:checked+.label_hide_if_not_checked+.label_hide_if_checked{display:none}input[type=checkbox]:not(:checked)+.label_hide_if_not_checked,input[type=checkbox]:not(:checked)+.label_hide_if_checked+.label_hide_if_not_checked{display:none}.result_header{margin-bottom:5px;margin-top:20px}.result_header .favicon{margin-bottom:-3px}.result_header a{vertical-align:bottom}.result_header a .highlight{font-weight:bold}.result-content{margin-top:5px;word-wrap:break-word}.result-content .highlight{font-weight:bold}.result-default{clear:both}.result-images{float:left !important}.img-thumbnail{margin:5px;max-height:128px;min-height:128px}.result-videos{clear:both}.result-torrents{clear:both}.result-map{clear:both}.result-code{clear:both}.suggestion_item{margin:2px 5px}.result_download{margin-right:5px}#pagination{margin-top:30px;padding-bottom:50px}.infobox .infobox_part{margin-bottom:20px;word-wrap:break-word}.infobox .infobox_part:last-child{margin-bottom:0}.search_categories{margin:10px 0;text-transform:capitalize}.cursor-text{cursor:text !important}.cursor-pointer{cursor:pointer !important}.highlight .hll{background-color:#ffc}.highlight{background:#f8f8f8}.highlight .c{color:#408080;font-style:italic}.highlight .err{border:1px solid #f00}.highlight .k{color:#008000;font-weight:bold}.highlight .o{color:#666}.highlight .cm{color:#408080;font-style:italic}.highlight .cp{color:#bc7a00}.highlight .c1{color:#408080;font-style:italic}.highlight .cs{color:#408080;font-style:italic}.highlight .gd{color:#a00000}.highlight .ge{font-style:italic}.highlight .gr{color:#f00}.highlight .gh{color:#000080;font-weight:bold}.highlight .gi{color:#00a000}.highlight .go{color:#888}.highlight .gp{color:#000080;font-weight:bold}.highlight .gs{font-weight:bold}.highlight .gu{color:#800080;font-weight:bold}.highlight .gt{color:#04d}.highlight .kc{color:#008000;font-weight:bold}.highlight .kd{color:#008000;font-weight:bold}.highlight .kn{color:#008000;font-weight:bold}.highlight .kp{color:#008000}.highlight .kr{color:#008000;font-weight:bold}.highlight .kt{color:#b00040}.highlight .m{color:#666}.highlight .s{color:#ba2121}.highlight .na{color:#7d9029}.highlight .nb{color:#008000}.highlight .nc{color:#00f;font-weight:bold}.highlight .no{color:#800}.highlight .nd{color:#a2f}.highlight .ni{color:#999;font-weight:bold}.highlight .ne{color:#d2413a;font-weight:bold}.highlight .nf{color:#00f}.highlight .nl{color:#a0a000}.highlight .nn{color:#00f;font-weight:bold}.highlight .nt{color:#008000;font-weight:bold}.highlight .nv{color:#19177c}.highlight .ow{color:#a2f;font-weight:bold}.highlight .w{color:#bbb}.highlight .mf{color:#666}.highlight .mh{color:#666}.highlight .mi{color:#666}.highlight .mo{color:#666}.highlight .sb{color:#ba2121}.highlight .sc{color:#ba2121}.highlight .sd{color:#ba2121;font-style:italic}.highlight .s2{color:#ba2121}.highlight .se{color:#b62;font-weight:bold}.highlight .sh{color:#ba2121}.highlight .si{color:#b68;font-weight:bold}.highlight .sx{color:#008000}.highlight .sr{color:#b68}.highlight .s1{color:#ba2121}.highlight .ss{color:#19177c}.highlight .bp{color:#008000}.highlight .vc{color:#19177c}.highlight .vg{color:#19177c}.highlight .vi{color:#19177c}.highlight .il{color:#666}.highlight .lineno{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.highlight .lineno::selection{background:transparent}.highlight .lineno::-moz-selection{background:transparent}
|
||||
html{position:relative;min-height:100%}
|
||||
body{margin-bottom:80px}
|
||||
.footer{position:absolute;bottom:0;width:100%;height:60px}
|
||||
input[type=checkbox]:checked+.label_hide_if_checked,input[type=checkbox]:checked+.label_hide_if_not_checked+.label_hide_if_checked{display:none}
|
||||
input[type=checkbox]:not(:checked)+.label_hide_if_not_checked,input[type=checkbox]:not(:checked)+.label_hide_if_checked+.label_hide_if_not_checked{display:none}
|
||||
.result_header{margin-bottom:5px;margin-top:20px}.result_header .favicon{margin-bottom:-3px}
|
||||
.result_header a{vertical-align:bottom}.result_header a .highlight{font-weight:bold}
|
||||
.result-content{margin-top:5px;word-wrap:break-word}.result-content .highlight{font-weight:bold}
|
||||
.result-default{clear:both}
|
||||
.result-images{float:left !important}
|
||||
.img-thumbnail{margin:5px;max-height:128px;min-height:128px}
|
||||
.result-videos{clear:both}
|
||||
.result-torrents{clear:both}
|
||||
.result-map{clear:both}
|
||||
.result-code{clear:both}
|
||||
.suggestion_item{margin:2px 5px}
|
||||
.result_download{margin-right:5px}
|
||||
#pagination{margin-top:30px;padding-bottom:50px}
|
||||
.label-default{color:#aaa;background:#fff}
|
||||
.infobox .infobox_part{margin-bottom:20px;word-wrap:break-word}
|
||||
.infobox .infobox_part:last-child{margin-bottom:0}
|
||||
.search_categories{margin:10px 0;text-transform:capitalize}
|
||||
.cursor-text{cursor:text !important}
|
||||
.cursor-pointer{cursor:pointer !important}
|
||||
.highlight .hll{background-color:#ffc}
|
||||
.highlight{background:#f8f8f8}
|
||||
.highlight .c{color:#408080;font-style:italic}
|
||||
.highlight .err{border:1px solid #f00}
|
||||
.highlight .k{color:#008000;font-weight:bold}
|
||||
.highlight .o{color:#666}
|
||||
.highlight .cm{color:#408080;font-style:italic}
|
||||
.highlight .cp{color:#bc7a00}
|
||||
.highlight .c1{color:#408080;font-style:italic}
|
||||
.highlight .cs{color:#408080;font-style:italic}
|
||||
.highlight .gd{color:#a00000}
|
||||
.highlight .ge{font-style:italic}
|
||||
.highlight .gr{color:#f00}
|
||||
.highlight .gh{color:#000080;font-weight:bold}
|
||||
.highlight .gi{color:#00a000}
|
||||
.highlight .go{color:#888}
|
||||
.highlight .gp{color:#000080;font-weight:bold}
|
||||
.highlight .gs{font-weight:bold}
|
||||
.highlight .gu{color:#800080;font-weight:bold}
|
||||
.highlight .gt{color:#04d}
|
||||
.highlight .kc{color:#008000;font-weight:bold}
|
||||
.highlight .kd{color:#008000;font-weight:bold}
|
||||
.highlight .kn{color:#008000;font-weight:bold}
|
||||
.highlight .kp{color:#008000}
|
||||
.highlight .kr{color:#008000;font-weight:bold}
|
||||
.highlight .kt{color:#b00040}
|
||||
.highlight .m{color:#666}
|
||||
.highlight .s{color:#ba2121}
|
||||
.highlight .na{color:#7d9029}
|
||||
.highlight .nb{color:#008000}
|
||||
.highlight .nc{color:#00f;font-weight:bold}
|
||||
.highlight .no{color:#800}
|
||||
.highlight .nd{color:#a2f}
|
||||
.highlight .ni{color:#999;font-weight:bold}
|
||||
.highlight .ne{color:#d2413a;font-weight:bold}
|
||||
.highlight .nf{color:#00f}
|
||||
.highlight .nl{color:#a0a000}
|
||||
.highlight .nn{color:#00f;font-weight:bold}
|
||||
.highlight .nt{color:#008000;font-weight:bold}
|
||||
.highlight .nv{color:#19177c}
|
||||
.highlight .ow{color:#a2f;font-weight:bold}
|
||||
.highlight .w{color:#bbb}
|
||||
.highlight .mf{color:#666}
|
||||
.highlight .mh{color:#666}
|
||||
.highlight .mi{color:#666}
|
||||
.highlight .mo{color:#666}
|
||||
.highlight .sb{color:#ba2121}
|
||||
.highlight .sc{color:#ba2121}
|
||||
.highlight .sd{color:#ba2121;font-style:italic}
|
||||
.highlight .s2{color:#ba2121}
|
||||
.highlight .se{color:#b62;font-weight:bold}
|
||||
.highlight .sh{color:#ba2121}
|
||||
.highlight .si{color:#b68;font-weight:bold}
|
||||
.highlight .sx{color:#008000}
|
||||
.highlight .sr{color:#b68}
|
||||
.highlight .s1{color:#ba2121}
|
||||
.highlight .ss{color:#19177c}
|
||||
.highlight .bp{color:#008000}
|
||||
.highlight .vc{color:#19177c}
|
||||
.highlight .vg{color:#19177c}
|
||||
.highlight .vi{color:#19177c}
|
||||
.highlight .il{color:#666}
|
||||
.highlight .lineno{-webkit-touch-callout:none;-webkit-user-select:none;-khtml-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;cursor:default}.highlight .lineno::selection{background:transparent;}
|
||||
.highlight .lineno::-moz-selection{background:transparent;}
|
||||
|
@ -76,3 +76,8 @@
|
||||
margin-top: 30px;
|
||||
padding-bottom: 50px;
|
||||
}
|
||||
|
||||
.label-default {
|
||||
color: #AAA;
|
||||
background: #FFF;
|
||||
}
|
||||
|
@ -3,6 +3,7 @@
|
||||
<ShortName>searx</ShortName>
|
||||
<Description>Search searx</Description>
|
||||
<InputEncoding>UTF-8</InputEncoding>
|
||||
<Image>{{ host }}{{ url_for('static', filename='img/favicon.png') | replace("/", "", 1) }}</Image>
|
||||
<LongName>searx metasearch</LongName>
|
||||
{% if opensearch_method == 'get' %}
|
||||
<Url type="text/html" method="get" template="{{ host }}search?q={searchTerms}"/>
|
||||
|
@ -3,6 +3,7 @@
|
||||
<ShortName>searx</ShortName>
|
||||
<Description>Search searx</Description>
|
||||
<InputEncoding>UTF-8</InputEncoding>
|
||||
<Image>{{ host }}{{ url_for('static', filename='img/favicon.png') | replace("/", "", 1) }}</Image>
|
||||
<LongName>searx metasearch</LongName>
|
||||
{% if opensearch_method == 'get' %}
|
||||
<Url type="text/html" method="get" template="{{ host }}search?q={searchTerms}"/>
|
||||
|
@ -25,7 +25,11 @@
|
||||
<!-- Draw result footer -->
|
||||
{% macro result_footer(result) -%}
|
||||
<div class="clearfix"></div>
|
||||
<span class="label label-default pull-right">{{ result.engine }}</span>
|
||||
<div class="pull-right">
|
||||
{% for engine in result.engines %}
|
||||
<span class="label label-default">{{ engine }}</span>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<p class="text-muted">{{ result.pretty_url }}</p>
|
||||
{%- endmacro %}
|
||||
|
||||
|
@ -3,6 +3,7 @@
|
||||
<ShortName>searx</ShortName>
|
||||
<Description>Search searx</Description>
|
||||
<InputEncoding>UTF-8</InputEncoding>
|
||||
<Image>{{ host }}{{ url_for('static', filename='img/favicon.png') | replace("/", "", 1) }}</Image>
|
||||
<LongName>searx metasearch</LongName>
|
||||
{% if opensearch_method == 'get' %}
|
||||
<Url type="text/html" method="get" template="{{ host }}search?q={searchTerms}"/>
|
||||
|
@ -53,8 +53,8 @@
|
||||
<th>{{ _('Engine name') }}</th>
|
||||
<th>{{ _('Allow') }} / {{ _('Block') }}</th>
|
||||
</tr>
|
||||
{% for (categ,search_engines) in categs %}
|
||||
{% for search_engine in search_engines %}
|
||||
{% for categ in all_categories %}
|
||||
{% for search_engine in engines_by_category[categ] %}
|
||||
|
||||
{% if not search_engine.private %}
|
||||
<tr>
|
||||
|
@ -29,10 +29,10 @@ class TestBingEngine(SearxTestCase):
|
||||
self.assertRaises(AttributeError, bing.response, '')
|
||||
self.assertRaises(AttributeError, bing.response, '[]')
|
||||
|
||||
response = mock.Mock(content='<html></html>')
|
||||
response = mock.Mock(text='<html></html>')
|
||||
self.assertEqual(bing.response(response), [])
|
||||
|
||||
response = mock.Mock(content='<html></html>')
|
||||
response = mock.Mock(text='<html></html>')
|
||||
self.assertEqual(bing.response(response), [])
|
||||
|
||||
html = """
|
||||
@ -54,7 +54,7 @@ class TestBingEngine(SearxTestCase):
|
||||
</div>
|
||||
</div>
|
||||
"""
|
||||
response = mock.Mock(content=html)
|
||||
response = mock.Mock(text=html)
|
||||
results = bing.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 1)
|
||||
@ -81,7 +81,7 @@ class TestBingEngine(SearxTestCase):
|
||||
</div>
|
||||
</li>
|
||||
"""
|
||||
response = mock.Mock(content=html)
|
||||
response = mock.Mock(text=html)
|
||||
results = bing.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 1)
|
||||
|
@ -31,10 +31,10 @@ class TestBingImagesEngine(SearxTestCase):
|
||||
self.assertRaises(AttributeError, bing_images.response, '')
|
||||
self.assertRaises(AttributeError, bing_images.response, '[]')
|
||||
|
||||
response = mock.Mock(content='<html></html>')
|
||||
response = mock.Mock(text='<html></html>')
|
||||
self.assertEqual(bing_images.response(response), [])
|
||||
|
||||
response = mock.Mock(content='<html></html>')
|
||||
response = mock.Mock(text='<html></html>')
|
||||
self.assertEqual(bing_images.response(response), [])
|
||||
|
||||
html = """
|
||||
@ -52,7 +52,7 @@ oh:"238",tft:"0",oi:"http://www.image.url/Images/Test%2
|
||||
</div>
|
||||
"""
|
||||
html = html.replace('\r\n', '').replace('\n', '').replace('\r', '')
|
||||
response = mock.Mock(content=html)
|
||||
response = mock.Mock(text=html)
|
||||
results = bing_images.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 1)
|
||||
@ -75,7 +75,7 @@ oh:"238",tft:"0",oi:"http://www.image.url/Images/Test%2
|
||||
style="height:144px;" width="178" height="144"/>
|
||||
</a>
|
||||
"""
|
||||
response = mock.Mock(content=html)
|
||||
response = mock.Mock(text=html)
|
||||
results = bing_images.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 0)
|
||||
@ -263,7 +263,7 @@ oh:"238",tft:"0",oi:"http://www.image.url/Images/Test%2
|
||||
</div>
|
||||
"""
|
||||
html = html.replace('\r\n', '').replace('\n', '').replace('\r', '')
|
||||
response = mock.Mock(content=html)
|
||||
response = mock.Mock(text=html)
|
||||
results = bing_images.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 10)
|
||||
|
@ -1,3 +1,4 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
from collections import defaultdict
|
||||
import mock
|
||||
from searx.engines import duckduckgo
|
||||
@ -30,7 +31,7 @@ class TestDuckduckgoEngine(SearxTestCase):
|
||||
response = mock.Mock(text='<html></html>')
|
||||
self.assertEqual(duckduckgo.response(response), [])
|
||||
|
||||
html = """
|
||||
html = u"""
|
||||
<div class="results_links results_links_deep web-result">
|
||||
<div class="icon_fav" style="display: block;">
|
||||
<a rel="nofollow" href="https://www.test.com/">
|
||||
@ -39,7 +40,7 @@ class TestDuckduckgoEngine(SearxTestCase):
|
||||
</a>
|
||||
</div>
|
||||
<div class="links_main links_deep"> <!-- This is the visible part -->
|
||||
<a rel="nofollow" class="large" href="http://this.should.be.the.link/">
|
||||
<a rel="nofollow" class="large" href="http://this.should.be.the.link/ű">
|
||||
This <b>is</b> <b>the</b> title
|
||||
</a>
|
||||
<div class="snippet"><b>This</b> should be the content.</div>
|
||||
@ -54,7 +55,7 @@ class TestDuckduckgoEngine(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'], 'http://this.should.be.the.link/')
|
||||
self.assertEqual(results[0]['url'], u'http://this.should.be.the.link/ű')
|
||||
self.assertEqual(results[0]['content'], 'This should be the content.')
|
||||
|
||||
html = """
|
||||
|
@ -15,7 +15,7 @@ class TestPiratebayEngine(SearxTestCase):
|
||||
params = piratebay.request(query, dicto)
|
||||
self.assertIn('url', params)
|
||||
self.assertIn(query, params['url'])
|
||||
self.assertIn('piratebay.am', params['url'])
|
||||
self.assertIn('piratebay.se', 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.am/this.is.the.link')
|
||||
self.assertEqual(results[0]['url'], 'https://thepiratebay.se/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.am/this.is.the.link')
|
||||
self.assertEqual(results[0]['url'], 'https://thepiratebay.se/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)
|
||||
|
@ -42,7 +42,7 @@ class TestStartpageEngine(SearxTestCase):
|
||||
</a>
|
||||
<span id='title_stars_2' name='title_stars_2'> </span>
|
||||
</h3>
|
||||
<p class='desc'>
|
||||
<p class='desc clk'>
|
||||
This should be the content.
|
||||
</p>
|
||||
<p>
|
||||
@ -78,7 +78,7 @@ class TestStartpageEngine(SearxTestCase):
|
||||
</a>
|
||||
<span id='title_stars_2' name='title_stars_2'> </span>
|
||||
</h3>
|
||||
<p class='desc'>
|
||||
<p class='desc clk'>
|
||||
This should be the content.
|
||||
</p>
|
||||
<p>
|
||||
@ -101,7 +101,7 @@ class TestStartpageEngine(SearxTestCase):
|
||||
<h3>
|
||||
<span id='title_stars_2' name='title_stars_2'> </span>
|
||||
</h3>
|
||||
<p class='desc'>
|
||||
<p class='desc clk'>
|
||||
This should be the content.
|
||||
</p>
|
||||
<p>
|
||||
|
@ -1,204 +0,0 @@
|
||||
from collections import defaultdict
|
||||
import mock
|
||||
from searx.engines import youtube
|
||||
from searx.testing import SearxTestCase
|
||||
|
||||
|
||||
class TestYoutubeEngine(SearxTestCase):
|
||||
|
||||
def test_request(self):
|
||||
query = 'test_query'
|
||||
dicto = defaultdict(dict)
|
||||
dicto['pageno'] = 0
|
||||
dicto['language'] = 'fr_FR'
|
||||
params = youtube.request(query, dicto)
|
||||
self.assertTrue('url' in params)
|
||||
self.assertTrue(query in params['url'])
|
||||
self.assertTrue('youtube.com' in params['url'])
|
||||
self.assertTrue('fr' in params['url'])
|
||||
|
||||
dicto['language'] = 'all'
|
||||
params = youtube.request(query, dicto)
|
||||
self.assertFalse('fr' in params['url'])
|
||||
|
||||
def test_response(self):
|
||||
self.assertRaises(AttributeError, youtube.response, None)
|
||||
self.assertRaises(AttributeError, youtube.response, [])
|
||||
self.assertRaises(AttributeError, youtube.response, '')
|
||||
self.assertRaises(AttributeError, youtube.response, '[]')
|
||||
|
||||
response = mock.Mock(text='{}')
|
||||
self.assertEqual(youtube.response(response), [])
|
||||
|
||||
response = mock.Mock(text='{"data": []}')
|
||||
self.assertEqual(youtube.response(response), [])
|
||||
|
||||
json = """
|
||||
{"feed":{"entry":[{
|
||||
"id":{"$t":"http://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM"},
|
||||
"published":{"$t":"2015-01-23T21:25:00.000Z"},
|
||||
"updated":{"$t":"2015-01-26T14:38:15.000Z"},
|
||||
"title":{"$t":"Title",
|
||||
"type":"text"},"content":{"$t":"Description","type":"text"},
|
||||
"link":[{"rel":"alternate","type":"text/html",
|
||||
"href":"https://www.youtube.com/watch?v=DIVZCPfAOeM&feature=youtube_gdata"},
|
||||
{"rel":"http://gdata.youtube.com/schemas/2007#video.related",
|
||||
"type":"application/atom+xml",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM/related"},
|
||||
{"rel":"http://gdata.youtube.com/schemas/2007#mobile","type":"text/html",
|
||||
"href":"https://m.youtube.com/details?v=DIVZCPfAOeM"},
|
||||
{"rel":"self","type":"application/atom+xml",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM"}],
|
||||
"author":[{"name":{"$t":"Cauet"},
|
||||
"uri":{"$t":"https://gdata.youtube.com/feeds/api/users/cauetofficiel"} }],
|
||||
"gd$comments":{"gd$feedLink":{"rel":"http://gdata.youtube.com/schemas/2007#comments",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM/comments",
|
||||
"countHint":8} },
|
||||
"media$group":{"media$category":[{"$t":"Comedy","label":"Comedy",
|
||||
"scheme":"http://gdata.youtube.com/schemas/2007/categories.cat"}],
|
||||
"media$content":[{"url":"https://www.youtube.com/v/DIVZCPfAOeM?version=3&f=videos&app=youtube_gdata",
|
||||
"type":"application/x-shockwave-flash","medium":"video",
|
||||
"isDefault":"true","expression":"full","duration":354,"yt$format":5},
|
||||
{"url":"rtsp://r1---sn-cg07luel.c.youtube.com/CiILENy73wIaGQnjOcD3CFmFDBMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp",
|
||||
"type":"video/3gpp","medium":"video","expression":"full","duration":354,
|
||||
"yt$format":1},
|
||||
{"url":"rtsp://r1---sn-cg07luel.c.youtube.com/CiILENy73wIaGQnjOcD3CFmFDBMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp",
|
||||
"type":"video/3gpp","medium":"video","expression":"full","duration":354,"yt$format":6}],
|
||||
"media$description":{"$t":"Desc","type":"plain"},
|
||||
"media$keywords":{},
|
||||
"media$player":[{"url":"https://www.youtube.com/watch?v=DIVZCPfAOeM&feature=youtube_gdata_player"}],
|
||||
"media$thumbnail":[{"url":"https://i.ytimg.com/vi/DIVZCPfAOeM/0.jpg",
|
||||
"height":360,"width":480,"time":"00:02:57"},
|
||||
{"url":"https://i.ytimg.com/vi/DIVZCPfAOeM/1.jpg","height":90,"width":120,"time":"00:01:28.500"},
|
||||
{"url":"https://i.ytimg.com/vi/DIVZCPfAOeM/2.jpg","height":90,"width":120,"time":"00:02:57"},
|
||||
{"url":"https://i.ytimg.com/vi/DIVZCPfAOeM/3.jpg","height":90,"width":120,"time":"00:04:25.500"}],
|
||||
"media$title":{"$t":"Title","type":"plain"},
|
||||
"yt$duration":{"seconds":"354"} },
|
||||
"gd$rating":{"average":4.932159,"max":5,"min":1,"numRaters":1533,
|
||||
"rel":"http://schemas.google.com/g/2005#overall"},
|
||||
"yt$statistics":{"favoriteCount":"0","viewCount":"92464"} }
|
||||
]
|
||||
}
|
||||
}
|
||||
"""
|
||||
response = mock.Mock(text=json)
|
||||
results = youtube.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 1)
|
||||
self.assertEqual(results[0]['title'], 'Title')
|
||||
self.assertEqual(results[0]['url'], 'https://www.youtube.com/watch?v=DIVZCPfAOeM')
|
||||
self.assertEqual(results[0]['content'], 'Description')
|
||||
self.assertEqual(results[0]['thumbnail'], 'https://i.ytimg.com/vi/DIVZCPfAOeM/0.jpg')
|
||||
self.assertTrue('DIVZCPfAOeM' in results[0]['embedded'])
|
||||
|
||||
json = """
|
||||
{"feed":{"entry":[{
|
||||
"id":{"$t":"http://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM"},
|
||||
"published":{"$t":"2015-01-23T21:25:00.000Z"},
|
||||
"updated":{"$t":"2015-01-26T14:38:15.000Z"},
|
||||
"title":{"$t":"Title",
|
||||
"type":"text"},"content":{"$t":"Description","type":"text"},
|
||||
"link":[{"rel":"http://gdata.youtube.com/schemas/2007#video.related",
|
||||
"type":"application/atom+xml",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM/related"},
|
||||
{"rel":"self","type":"application/atom+xml",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM"}],
|
||||
"author":[{"name":{"$t":"Cauet"},
|
||||
"uri":{"$t":"https://gdata.youtube.com/feeds/api/users/cauetofficiel"} }],
|
||||
"gd$comments":{"gd$feedLink":{"rel":"http://gdata.youtube.com/schemas/2007#comments",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM/comments",
|
||||
"countHint":8} },
|
||||
"media$group":{"media$category":[{"$t":"Comedy","label":"Comedy",
|
||||
"scheme":"http://gdata.youtube.com/schemas/2007/categories.cat"}],
|
||||
"media$content":[{"url":"https://www.youtube.com/v/DIVZCPfAOeM?version=3&f=videos&app=youtube_gdata",
|
||||
"type":"application/x-shockwave-flash","medium":"video",
|
||||
"isDefault":"true","expression":"full","duration":354,"yt$format":5},
|
||||
{"url":"rtsp://r1---sn-cg07luel.c.youtube.com/CiILENy73wIaGQnjOcD3CFmFDBMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp",
|
||||
"type":"video/3gpp","medium":"video","expression":"full","duration":354,
|
||||
"yt$format":1},
|
||||
{"url":"rtsp://r1---sn-cg07luel.c.youtube.com/CiILENy73wIaGQnjOcD3CFmFDBMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp",
|
||||
"type":"video/3gpp","medium":"video","expression":"full","duration":354,"yt$format":6}],
|
||||
"media$description":{"$t":"Desc","type":"plain"},
|
||||
"media$keywords":{},
|
||||
"media$player":[{"url":"https://www.youtube.com/watch?v=DIVZCPfAOeM&feature=youtube_gdata_player"}],
|
||||
"media$thumbnail":[{"url":"https://i.ytimg.com/vi/DIVZCPfAOeM/0.jpg",
|
||||
"height":360,"width":480,"time":"00:02:57"},
|
||||
{"url":"https://i.ytimg.com/vi/DIVZCPfAOeM/1.jpg","height":90,"width":120,"time":"00:01:28.500"},
|
||||
{"url":"https://i.ytimg.com/vi/DIVZCPfAOeM/2.jpg","height":90,"width":120,"time":"00:02:57"},
|
||||
{"url":"https://i.ytimg.com/vi/DIVZCPfAOeM/3.jpg","height":90,"width":120,"time":"00:04:25.500"}],
|
||||
"media$title":{"$t":"Title","type":"plain"},
|
||||
"yt$duration":{"seconds":"354"} },
|
||||
"gd$rating":{"average":4.932159,"max":5,"min":1,"numRaters":1533,
|
||||
"rel":"http://schemas.google.com/g/2005#overall"},
|
||||
"yt$statistics":{"favoriteCount":"0","viewCount":"92464"} }
|
||||
]
|
||||
}
|
||||
}
|
||||
"""
|
||||
response = mock.Mock(text=json)
|
||||
results = youtube.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 0)
|
||||
|
||||
json = """
|
||||
{"feed":{"entry":[{
|
||||
"id":{"$t":"http://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM"},
|
||||
"published":{"$t":"2015-01-23T21:25:00.000Z"},
|
||||
"updated":{"$t":"2015-01-26T14:38:15.000Z"},
|
||||
"title":{"$t":"Title",
|
||||
"type":"text"},"content":{"$t":"Description","type":"text"},
|
||||
"link":[{"rel":"alternate","type":"text/html",
|
||||
"href":"https://www.youtube.com/watch?v=DIVZCPfAOeM"},
|
||||
{"rel":"http://gdata.youtube.com/schemas/2007#video.related",
|
||||
"type":"application/atom+xml",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM/related"},
|
||||
{"rel":"http://gdata.youtube.com/schemas/2007#mobile","type":"text/html",
|
||||
"href":"https://m.youtube.com/details?v=DIVZCPfAOeM"},
|
||||
{"rel":"self","type":"application/atom+xml",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM"}],
|
||||
"author":[{"name":{"$t":"Cauet"},
|
||||
"uri":{"$t":"https://gdata.youtube.com/feeds/api/users/cauetofficiel"} }],
|
||||
"gd$comments":{"gd$feedLink":{"rel":"http://gdata.youtube.com/schemas/2007#comments",
|
||||
"href":"https://gdata.youtube.com/feeds/api/videos/DIVZCPfAOeM/comments",
|
||||
"countHint":8} },
|
||||
"media$group":{"media$category":[{"$t":"Comedy","label":"Comedy",
|
||||
"scheme":"http://gdata.youtube.com/schemas/2007/categories.cat"}],
|
||||
"media$content":[{"url":"https://www.youtube.com/v/DIVZCPfAOeM?version=3&f=videos&app=youtube_gdata",
|
||||
"type":"application/x-shockwave-flash","medium":"video",
|
||||
"isDefault":"true","expression":"full","duration":354,"yt$format":5},
|
||||
{"url":"rtsp://r1---sn-cg07luel.c.youtube.com/CiILENy73wIaGQnjOcD3CFmFDBMYDSANFEgGUgZ2aWRlb3MM/0/0/0/video.3gp",
|
||||
"type":"video/3gpp","medium":"video","expression":"full","duration":354,
|
||||
"yt$format":1},
|
||||
{"url":"rtsp://r1---sn-cg07luel.c.youtube.com/CiILENy73wIaGQnjOcD3CFmFDBMYESARFEgGUgZ2aWRlb3MM/0/0/0/video.3gp",
|
||||
"type":"video/3gpp","medium":"video","expression":"full","duration":354,"yt$format":6}],
|
||||
"media$description":{"$t":"Desc","type":"plain"},
|
||||
"media$keywords":{},
|
||||
"media$player":[{"url":"https://www.youtube.com/watch?v=DIVZCPfAOeM&feature=youtube_gdata_player"}],
|
||||
"media$title":{"$t":"Title","type":"plain"},
|
||||
"yt$duration":{"seconds":"354"} },
|
||||
"gd$rating":{"average":4.932159,"max":5,"min":1,"numRaters":1533,
|
||||
"rel":"http://schemas.google.com/g/2005#overall"},
|
||||
"yt$statistics":{"favoriteCount":"0","viewCount":"92464"} }
|
||||
]
|
||||
}
|
||||
}
|
||||
"""
|
||||
response = mock.Mock(text=json)
|
||||
results = youtube.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 1)
|
||||
self.assertEqual(results[0]['title'], 'Title')
|
||||
self.assertEqual(results[0]['url'], 'https://www.youtube.com/watch?v=DIVZCPfAOeM')
|
||||
self.assertEqual(results[0]['content'], 'Description')
|
||||
self.assertEqual(results[0]['thumbnail'], '')
|
||||
self.assertTrue('DIVZCPfAOeM' in results[0]['embedded'])
|
||||
|
||||
json = """
|
||||
{"toto":{"entry":[]
|
||||
}
|
||||
}
|
||||
"""
|
||||
response = mock.Mock(text=json)
|
||||
results = youtube.response(response)
|
||||
self.assertEqual(type(results), list)
|
||||
self.assertEqual(len(results), 0)
|
@ -40,7 +40,6 @@ from searx.tests.engines.test_www1x import * # noqa
|
||||
from searx.tests.engines.test_www500px import * # noqa
|
||||
from searx.tests.engines.test_yacy import * # noqa
|
||||
from searx.tests.engines.test_yahoo import * # noqa
|
||||
from searx.tests.engines.test_youtube import * # noqa
|
||||
from searx.tests.engines.test_youtube_api import * # noqa
|
||||
from searx.tests.engines.test_youtube_noapi import * # noqa
|
||||
from searx.tests.engines.test_yahoo_news import * # noqa
|
||||
|
@ -5,6 +5,12 @@ from searx import plugins
|
||||
from mock import Mock
|
||||
|
||||
|
||||
def get_search_mock(query, **kwargs):
|
||||
return {'search': Mock(query=query,
|
||||
result_container=Mock(answers=set()),
|
||||
**kwargs)}
|
||||
|
||||
|
||||
class PluginStoreTest(SearxTestCase):
|
||||
|
||||
def test_PluginStore_init(self):
|
||||
@ -46,23 +52,23 @@ class SelfIPTest(SearxTestCase):
|
||||
request = Mock(user_plugins=store.plugins,
|
||||
remote_addr='127.0.0.1')
|
||||
request.headers.getlist.return_value = []
|
||||
ctx = {'search': Mock(answers=set(),
|
||||
query='ip')}
|
||||
ctx = get_search_mock(query='ip')
|
||||
store.call('post_search', request, ctx)
|
||||
self.assertTrue('127.0.0.1' in ctx['search'].answers)
|
||||
self.assertTrue('127.0.0.1' in ctx['search'].result_container.answers)
|
||||
|
||||
# User agent test
|
||||
request = Mock(user_plugins=store.plugins,
|
||||
user_agent='Mock')
|
||||
request.headers.getlist.return_value = []
|
||||
ctx = {'search': Mock(answers=set(),
|
||||
query='user-agent')}
|
||||
|
||||
ctx = get_search_mock(query='user-agent')
|
||||
store.call('post_search', request, ctx)
|
||||
self.assertTrue('Mock' in ctx['search'].answers)
|
||||
ctx = {'search': Mock(answers=set(),
|
||||
query='user agent')}
|
||||
self.assertTrue('Mock' in ctx['search'].result_container.answers)
|
||||
|
||||
ctx = get_search_mock(query='user-agent')
|
||||
store.call('post_search', request, ctx)
|
||||
self.assertTrue('Mock' in ctx['search'].answers)
|
||||
ctx = {'search': Mock(answers=set(),
|
||||
query='What is my User-Agent?')}
|
||||
self.assertTrue('Mock' in ctx['search'].result_container.answers)
|
||||
|
||||
ctx = get_search_mock(query='What is my User-Agent?')
|
||||
store.call('post_search', request, ctx)
|
||||
self.assertTrue('Mock' in ctx['search'].result_container.answers)
|
||||
|
41
searx/tests/test_results.py
Normal file
41
searx/tests/test_results.py
Normal file
@ -0,0 +1,41 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from searx.results import ResultContainer
|
||||
from searx.testing import SearxTestCase
|
||||
|
||||
|
||||
def fake_result(url='https://aa.bb/cc?dd=ee#ff',
|
||||
title='aaa',
|
||||
content='bbb',
|
||||
engine='wikipedia', **kwargs):
|
||||
result = {'url': url,
|
||||
'title': title,
|
||||
'content': content,
|
||||
'engine': engine}
|
||||
result.update(kwargs)
|
||||
return result
|
||||
|
||||
|
||||
# TODO
|
||||
class ResultContainerTestCase(SearxTestCase):
|
||||
|
||||
def test_empty(self):
|
||||
c = ResultContainer()
|
||||
self.assertEqual(c.get_ordered_results(), [])
|
||||
|
||||
def test_one_result(self):
|
||||
c = ResultContainer()
|
||||
c.extend('wikipedia', [fake_result()])
|
||||
self.assertEqual(c.results_length(), 1)
|
||||
|
||||
def test_one_suggestion(self):
|
||||
c = ResultContainer()
|
||||
c.extend('wikipedia', [fake_result(suggestion=True)])
|
||||
self.assertEqual(len(c.suggestions), 1)
|
||||
self.assertEqual(c.results_length(), 0)
|
||||
|
||||
def test_result_merge(self):
|
||||
c = ResultContainer()
|
||||
c.extend('wikipedia', [fake_result()])
|
||||
c.extend('wikidata', [fake_result(), fake_result(url='https://example.com/')])
|
||||
self.assertEqual(c.results_length(), 2)
|
@ -1,25 +1,10 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
from searx.search import score_results
|
||||
from searx.testing import SearxTestCase
|
||||
|
||||
|
||||
def fake_result(url='https://aa.bb/cc?dd=ee#ff',
|
||||
title='aaa',
|
||||
content='bbb',
|
||||
engine='wikipedia'):
|
||||
return {'url': url,
|
||||
'title': title,
|
||||
'content': content,
|
||||
'engine': engine}
|
||||
# TODO
|
||||
class SearchTestCase(SearxTestCase):
|
||||
|
||||
|
||||
class ScoreResultsTestCase(SearxTestCase):
|
||||
|
||||
def test_empty(self):
|
||||
self.assertEqual(score_results(dict()), [])
|
||||
|
||||
def test_urlparse(self):
|
||||
results = score_results(dict(a=[fake_result(url='https://aa.bb/cc?dd=ee#ff')]))
|
||||
parsed_url = results[0]['parsed_url']
|
||||
self.assertEqual(parsed_url.query, 'dd=ee')
|
||||
def test_(self):
|
||||
pass
|
||||
|
@ -1,3 +1,4 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
import mock
|
||||
from searx.testing import SearxTestCase
|
||||
from searx import utils
|
||||
@ -51,6 +52,15 @@ class TestUtils(SearxTestCase):
|
||||
self.assertIsNotNone(utils.html_to_text(html))
|
||||
self.assertEqual(utils.html_to_text(html), "Test text")
|
||||
|
||||
def test_prettify_url(self):
|
||||
data = (('https://searx.me/', 'https://searx.me/'),
|
||||
(u'https://searx.me/ű', u'https://searx.me/ű'),
|
||||
('https://searx.me/' + (100 * 'a'), 'https://searx.me/[...]aaaaaaaaaaaaaaaaa'),
|
||||
(u'https://searx.me/' + (100 * u'ű'), u'https://searx.me/[...]űűűűűűűűűűűűűűűűű'))
|
||||
|
||||
for test_url, expected in data:
|
||||
self.assertEqual(utils.prettify_url(test_url, max_length=32), expected)
|
||||
|
||||
|
||||
class TestHTMLTextExtractor(SearxTestCase):
|
||||
|
||||
|
@ -1,6 +1,7 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
|
||||
import json
|
||||
from mock import Mock
|
||||
from urlparse import ParseResult
|
||||
from searx import webapp
|
||||
from searx.testing import SearxTestCase
|
||||
@ -33,7 +34,12 @@ class ViewsTestCase(SearxTestCase):
|
||||
]
|
||||
|
||||
def search_mock(search_self, *args):
|
||||
search_self.results = self.test_results
|
||||
search_self.result_container = Mock(get_ordered_results=lambda: self.test_results,
|
||||
answers=set(),
|
||||
suggestions=set(),
|
||||
infoboxes=[],
|
||||
results=self.test_results,
|
||||
results_length=lambda: len(self.test_results))
|
||||
|
||||
webapp.Search.search = search_mock
|
||||
|
||||
|
Binary file not shown.
@ -14,10 +14,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-26 19:24+0000\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-24 10:00+0000\n"
|
||||
"Last-Translator: pointhi\n"
|
||||
"Language-Team: German (http://www.transifex.com/projects/p/searx/language/de/)\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"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -25,67 +25,67 @@ msgstr ""
|
||||
"Language: de\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "Dateien"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "Allgemein"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "Musik"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "Soziale Medien"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "Bilder"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "Videos"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "IT"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "Neuigkeiten"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "Karte"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "vor {minutes} Minute(n)"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "vor {hours} Stunde(n), {minutes} Minute(n)"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "Ladezeit (sek)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Trefferanzahl"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "Punkte"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "Punkte pro Treffer"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Fehler"
|
||||
|
||||
@ -100,12 +100,22 @@ msgstr "Starte Suche wenn Kategorie angeklickt wird"
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
msgstr "Startet eine Suche sofort, wenn eine Kategorie angeklickt wird. Deaktiviere dieses Plugin um mehrere Kategorien anzuwählen."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr "Starte die Suche sofort wenn eine Kategorie ausgewählt wird. Es ist nicht mehr möglich mehrere Kategorien auszuwählen. (JavaScript benötigt)"
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
msgstr "Zeigt deine IP-Adresse an wenn die Suchanfrage \"ip\" lautet"
|
||||
#: 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 "Zeigt deine IP-Adresse wenn die Suche \"ip\" lautet, und deinen User-Agent wenn deine Suche \"user agent\" beinhaltet."
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:26
|
||||
msgid "Tracker URL remover"
|
||||
msgstr "Tracker-URL entferner"
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:27
|
||||
msgid "Remove trackers arguments from the returned URL"
|
||||
msgstr "Entferne Tracker Argumente von den URLs"
|
||||
|
||||
#: searx/templates/courgette/index.html:9
|
||||
#: searx/templates/courgette/index.html:13
|
||||
@ -133,90 +143,92 @@ msgstr "Einstellungen"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Standardkategorien"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Suchsprache"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Automatisch"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Oberflächensprache"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Autovervollständigung"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "Bilder Proxy"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "Aktiviert"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "Deaktiviert"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Methode"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "Sichere Suche (SafeSearch)"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "Streng"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "Moderat"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "Keine"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Designs"
|
||||
@ -257,6 +269,8 @@ msgstr "Aktuell benutzte Suchmaschinen"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Suchmaschinenname"
|
||||
@ -271,6 +285,8 @@ msgstr "Kategorie"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -288,7 +304,7 @@ msgstr "Blockieren"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -297,7 +313,7 @@ msgstr "Diese Informationen werden in Cookies auf Ihrem Rechner gespeichert, dam
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -306,20 +322,20 @@ msgstr "Diese Cookies dienen einzig Ihrem Komfort. Wir verwenden sie nicht, um S
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "Speichern"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr "Zurücksetzen"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "Zurück"
|
||||
@ -429,51 +445,89 @@ msgid "Toggle navigation"
|
||||
msgstr "Navigation umschalten"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "Allgemein"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "Suchmaschinen"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "Erweiterungen"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr "Cookies"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "welche Sprache bevorzugst du für die Suche?"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "ändere die Sprache des Layouts"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "zeige Vorschläge während der Eingabe an"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "tunnel Bilder durch searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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 "ändere wie Formulare übertragen werden, <a href=\"https://de.wikipedia.org/wiki/Hypertext_Transfer_Protocol#HTTP-Anfragemethoden\" rel=\"external\">lerne mehr über Anfragemethoden</a>"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "Inhalte filtern"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "ändere das Aussehen von searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr "Abkürzung"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr "mittlere Zeit"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr "max. Zeit"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr "Diese Liste zeigt alle Daten welche searx auf deinem Computer speichert."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr "Mit dieser Liste können Sie die Transparenz von searx bewerten"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr "Cookie Name"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr "Wert"
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "Suchergebnisse"
|
||||
@ -523,6 +577,14 @@ msgstr "Warnung!"
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "Bitte aktiviere JavaScript, um alle Funktionen dieser Seite zu nutzen. "
|
||||
|
||||
#: searx/templates/oscar/messages/no_cookies.html:3
|
||||
msgid "Information!"
|
||||
msgstr "Information!"
|
||||
|
||||
#: searx/templates/oscar/messages/no_cookies.html:4
|
||||
msgid "currently, there are no cookies defined."
|
||||
msgstr "derzeit sind keine Cookies gesetzt."
|
||||
|
||||
#: searx/templates/oscar/messages/no_data_available.html:4
|
||||
msgid "There is currently no data available. "
|
||||
msgstr "Es sind derzeit keine Daten vorhanden."
|
||||
|
Binary file not shown.
Binary file not shown.
@ -3,16 +3,18 @@
|
||||
# This file is distributed under the same license as the PROJECT project.
|
||||
#
|
||||
# Translators:
|
||||
# Adam Tauber <asciimoo@gmail.com>, 2015
|
||||
# Alejandro León Aznar, 2014
|
||||
# Alejandro León Aznar, 2014-2015
|
||||
# Oscar Carrero <holaoscar@protonmail.ch>, 2015
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-27 23:48+0000\n"
|
||||
"Last-Translator: Alejandro León Aznar\n"
|
||||
"Language-Team: Spanish (http://www.transifex.com/projects/p/searx/language/es/)\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-09-05 20:46+0000\n"
|
||||
"Last-Translator: Oscar Carrero <holaoscar@protonmail.ch>\n"
|
||||
"Language-Team: Spanish (http://www.transifex.com/asciimoo/searx/language/es/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -20,67 +22,67 @@ msgstr ""
|
||||
"Language: es\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "Archivos"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "General"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "Música"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "Medios sociales"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "Imágenes"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "Vídeos"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "TIC"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "noticias"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "mapa"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "hace {minutes} minuto(s)"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "hace {hours} hora(s) y {minutes} minuto(s)"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "Tiempo de carga (segundos)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Número de resultados"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "Puntuaciones"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "Puntuaciones por resultado"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Errores"
|
||||
|
||||
@ -95,12 +97,22 @@ msgstr "Buscar en la categoría seleccionada"
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
msgstr "Realizar la búsqueda inmediatamente si se ha seleccionado una categoría. Desactivar la selección simultánea de varias categorías."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr "Realizar una búsqueda inmediatamente si se ha seleccionado una categoría. Desactivar para seleccionar varias categorías. (Se requiere JavaScript)"
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
msgstr "Mostrar tu dirección IP si el término de búsqueda es «ip»"
|
||||
#: 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 "Muestra tu dirección IP si la consulta es \"ip\" y tu Agente de Usuario si la consulta contiene \"agente de usuario\"."
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:26
|
||||
msgid "Tracker URL remover"
|
||||
msgstr "Eliminador de URL rastreadora"
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:27
|
||||
msgid "Remove trackers arguments from the returned URL"
|
||||
msgstr "Eliminar los argumentos de los rastreadores en la URL devuelta"
|
||||
|
||||
#: searx/templates/courgette/index.html:9
|
||||
#: searx/templates/courgette/index.html:13
|
||||
@ -128,90 +140,92 @@ msgstr "Preferencias"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Categorías predeterminadas"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Buscar idioma"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Automático"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Idioma de la interfaz"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Autocompletar"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "Imagen proxy"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "Activado"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "Desactivado"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Método"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "Búsqueda segura"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "Riguroso"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "Moderado"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "Ninguno"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Temas"
|
||||
@ -252,6 +266,8 @@ msgstr "Motores de búsqueda actualmente en uso"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Nombre del motor de búsqueda"
|
||||
@ -266,6 +282,8 @@ msgstr "Categoría"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -283,7 +301,7 @@ msgstr "Bloquear"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -292,7 +310,7 @@ msgstr "Esta configuración se guarda en sus cookies, lo que nos permite no alma
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -301,20 +319,20 @@ msgstr "Estas cookies son para su propia comodidad, no las utilizamos para rastr
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "Guardar"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr "Restablecer configuración por defecto"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "Atrás"
|
||||
@ -323,7 +341,7 @@ msgstr "Atrás"
|
||||
#: searx/templates/default/results.html:13
|
||||
#: searx/templates/oscar/results.html:110
|
||||
msgid "Search URL"
|
||||
msgstr "Buscar URL"
|
||||
msgstr "URL de la búsqueda"
|
||||
|
||||
#: searx/templates/courgette/results.html:16
|
||||
#: searx/templates/default/results.html:17
|
||||
@ -413,7 +431,7 @@ msgstr "Creado por"
|
||||
|
||||
#: searx/templates/oscar/base.html:78
|
||||
msgid "a privacy-respecting, hackable metasearch engine"
|
||||
msgstr "un metabuscador hackeable que respeta la privacidad"
|
||||
msgstr "un metabuscador hackable que respeta la privacidad"
|
||||
|
||||
#: searx/templates/oscar/navbar.html:9 searx/templates/oscar/navbar.html:33
|
||||
msgid "home"
|
||||
@ -424,51 +442,89 @@ msgid "Toggle navigation"
|
||||
msgstr "Cambiar navegación"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "General"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "Motores"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "Plugins"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr "Cookies"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "¿Qué idioma prefieres para la búsqueda?"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "Cambiar idioma de la interfaz"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "Buscar mientras escribes"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "Filtrando resultados de imágenes en searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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 "Modifica cómo se envian los formularios <a href=\"http://es.wikipedia.org/wiki/Hypertext_Transfer_Protocol#M.C3.A9todos_de_petici.C3.B3n\" rel=\"external\">más información sobre métodos de peticiones</a>"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "Filtro de contenido"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "Cambiar aspecto de searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr "Atajo"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr "Tiempo promedio"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr "Tiempo máximo"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr "Esta es la lista de cookies y sus valores que searx está almacenando en tu ordenador."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr "Con esa lista puedes valorar la transparencia de searx."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr "Nombre de la cookie"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr "Valor"
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "Buscar"
|
||||
@ -516,7 +572,15 @@ msgstr "¡Cuidado!"
|
||||
|
||||
#: searx/templates/oscar/messages/js_disabled.html:3
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "Por favor, activa JavaScript para poder usar esta página al 100%."
|
||||
msgstr "Por favor, activa JavaScript para poder usar esta página al 100%%."
|
||||
|
||||
#: 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 "No existen cookies definidas actualmente."
|
||||
|
||||
#: searx/templates/oscar/messages/no_data_available.html:4
|
||||
msgid "There is currently no data available. "
|
||||
|
Binary file not shown.
@ -13,10 +13,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-05-14 00:01+0000\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-24 15:35+0000\n"
|
||||
"Last-Translator: Cqoicebordel <david.barouh@wanadoo.fr>\n"
|
||||
"Language-Team: French (http://www.transifex.com/projects/p/searx/language/fr/)\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"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -24,67 +24,67 @@ msgstr ""
|
||||
"Language: fr\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "fichiers"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "général"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "musique"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "réseaux sociaux"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "images"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "vidéos"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "informatique"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "actus"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "carte"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "il y a {minutes} minute(s)"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "il y a {hours} heure(s), {minutes} minute(s)"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "Chargement de la page (sec)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Nombre de résultats"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "Score"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "Score par résultat"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Erreurs"
|
||||
|
||||
@ -99,12 +99,22 @@ msgstr "Lancer la recherche lors du choix d'une catégorie"
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
msgstr "Exécute la recherche immédiatement si une catégorie est sélectionnée. Désactiver pour sélectionner plusieurs catégories."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr "Exécute la recherche immédiatement si une catégorie est sélectionnée. Désactiver pour sélectionner plusieurs catégories (nécessite JavaScript)."
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
msgstr "Afficher votre adresse IP si la requête contient \"ip\"."
|
||||
#: 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 "Affiche votre adresse IP si la requête est \"ip\", et affiche votre user-agent si la requete contient \"user agent\"."
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:26
|
||||
msgid "Tracker URL remover"
|
||||
msgstr "Nettoyeur d'URL de suivis"
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:27
|
||||
msgid "Remove trackers arguments from the returned URL"
|
||||
msgstr "Retire les arguments utilisés pour vous pister des URL retournées"
|
||||
|
||||
#: searx/templates/courgette/index.html:9
|
||||
#: searx/templates/courgette/index.html:13
|
||||
@ -132,90 +142,92 @@ msgstr "Préférences"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Catégories par défaut"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Langue de recherche"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Automatique"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Langue de l'interface"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Complétion automatique"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "Proxy d'images"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "Activé"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "Désactivé"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Méthode"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "Recherche sécurisée"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "Stricte"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "Moyen"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "Pas du tout"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Thème"
|
||||
@ -256,6 +268,8 @@ msgstr "Moteurs de recherche actuellement utilisés"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Nom du moteur"
|
||||
@ -270,6 +284,8 @@ msgstr "Catégorie"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -287,7 +303,7 @@ msgstr "Bloquer"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -296,7 +312,7 @@ msgstr "Ces paramètres sont stockés dans vos cookies ; ceci nous permet de ne
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -305,20 +321,20 @@ msgstr "Ces cookies existent pour votre confort d'utilisation, nous ne les utili
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "enregistrer"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr "Remettre les valeurs par défaut"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "retour"
|
||||
@ -428,51 +444,89 @@ msgid "Toggle navigation"
|
||||
msgstr "Afficher/Masquer la navigation"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "Général"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "Moteurs"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "Plugins"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr "Cookies"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "Dans quelle langue préférez-vous effectuer la recherche ?"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "Changer la langue d'affichage"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "Chercher au fil de la saisie"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "Proxifier les images de résultats à travers searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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 "Permet de choisir comment la recherche est envoyée, <a href=\"https://fr.wikipedia.org/wiki/Hypertext_Transfer_Protocol#M.C3.A9thodes\" rel=\"external\">en savoir plus sur les méthodes HTTP</a>"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "Filtrer le contenu"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "Modifier l'affichage de searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr "Raccourcis"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr "Temps moy."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr "Temps max"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr "C'est une liste de cookies et de leurs valeurs que searx enregistre sur votre ordinateur."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr "Avec cette liste, vous pouvez juger de la transparence de searx."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr "Nom du cookie"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr "Valeur"
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "Résultats de recherche"
|
||||
@ -522,6 +576,14 @@ msgstr "Attention !"
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "Merci d'activer JavaScript pour utiliser toutes les fonctionnalités de ce site."
|
||||
|
||||
#: searx/templates/oscar/messages/no_cookies.html:3
|
||||
msgid "Information!"
|
||||
msgstr "Information !"
|
||||
|
||||
#: searx/templates/oscar/messages/no_cookies.html:4
|
||||
msgid "currently, there are no cookies defined."
|
||||
msgstr "il n'y a pas de cookies définit pour le moment."
|
||||
|
||||
#: searx/templates/oscar/messages/no_data_available.html:4
|
||||
msgid "There is currently no data available. "
|
||||
msgstr "Aucune donnée disponible pour l'instant. "
|
||||
|
Binary file not shown.
@ -12,10 +12,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-27 06:42+0000\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-24 11:19+0000\n"
|
||||
"Last-Translator: GenghisKhan <genghiskhan@gmx.ca>\n"
|
||||
"Language-Team: Hebrew (http://www.transifex.com/projects/p/searx/language/he/)\n"
|
||||
"Language-Team: Hebrew (http://www.transifex.com/asciimoo/searx/language/he/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -23,67 +23,67 @@ msgstr ""
|
||||
"Language: he\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "קבצים"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "כללי"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "מוזיקה"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "מדיה חברתית"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "תמונות"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "סרטונים"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "IT"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "חדשות"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "מפה"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "לפני {minutes} דקות"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "לפני {hours} שעות, {minutes} דקות"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "עומס עמוד (שניות)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "מספר תוצאות"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "דירוג"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "דירוג לכל תוצאה"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "שגיאות"
|
||||
|
||||
@ -98,12 +98,22 @@ msgstr "חפש בעת בחירת קטגוריה"
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
msgstr "בצע חיפוש מיד לאחר שקטגוריה נבחרת. נטרל כדי לבחור מספר קטגוריות."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr "בצע חיפוש לאלתר כאשר קטגוריה נבחרת. נטרל כדי לבחור קטגוריות מרובות. (מצריך JavaScript)"
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
msgstr "הצג מקור כתובת IP כאשר מילת שאילתא היא \"ip\""
|
||||
#: 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/templates/courgette/index.html:9
|
||||
#: searx/templates/courgette/index.html:13
|
||||
@ -131,90 +141,92 @@ msgstr "העדפות"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "קטגוריות ברירת מחדל"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "שפת חיפוש"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "אוטומטי"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "שפת ממשק"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "השלמה אוטומטית"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "proxy תמונה"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "מאופשר"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "מנוטרל"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "שיטה"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "חיפוש בטוח"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "מחמיר"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "מתון"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "בלי"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "מוטיבים"
|
||||
@ -251,10 +263,12 @@ msgstr "אדום"
|
||||
#: searx/templates/default/preferences.html:84
|
||||
#: searx/templates/pix-art/preferences.html:49
|
||||
msgid "Currently used search engines"
|
||||
msgstr "מנועי חיפוש שבשימוש עתה"
|
||||
msgstr "מנועי חיפוש בשימוש עתה"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "שם מנוע"
|
||||
@ -269,6 +283,8 @@ msgstr "קטגוריה"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -286,7 +302,7 @@ msgstr "חסום"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -295,7 +311,7 @@ msgstr "הגדרות אלו מאוחסנות בתוך העוגיות שלך, א
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -304,20 +320,20 @@ msgstr "עוגיות אלו משרתות את נוחותך הבלעדית, אנ
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "שמור"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr "אפס ברירות מחדל"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "חזור"
|
||||
@ -412,7 +428,7 @@ msgstr "מוטמן"
|
||||
|
||||
#: searx/templates/oscar/base.html:78
|
||||
msgid "Powered by"
|
||||
msgstr "ממונע באמצעות"
|
||||
msgstr "מופעל באמצעות"
|
||||
|
||||
#: searx/templates/oscar/base.html:78
|
||||
msgid "a privacy-respecting, hackable metasearch engine"
|
||||
@ -427,51 +443,89 @@ msgid "Toggle navigation"
|
||||
msgstr "Toggle ניווט"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "כללי"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "מנועים"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "תוספים"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr "עוגיות"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "איזו שפה אתם מעדיפים לצורך חיפוש?"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "שינוי שפת הממשק"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "מציאת דברים בזמן הקלדה"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "Proxying תוצאות תמונה מבעד searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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://he.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">למדו עוד אודות שיטות בקשה (request methods)</a>"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "סנן תוכן"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "שינוי ממשק searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr "קיצור דרך"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr "זמן ממוצע"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr "זמן מירבי"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr "זוהי רשימה של עוגיות וערכיהן אשר searx מאחסנת על המחשב שלך."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr "בעזרת רשימה זו, באפשרותך לגשת אל searx transparency."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr "שם עוגייה"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr "ערך"
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "תוצאות חיפוש"
|
||||
@ -521,6 +575,14 @@ msgstr "אזהרה!"
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "אנא אפשרו JavaScript כדי לנצל תפקודיות מלאה של אתר זה."
|
||||
|
||||
#: 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 "אין כעת מידע זמין. "
|
||||
|
Binary file not shown.
@ -9,10 +9,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-26 17:13+0000\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-25 16:29+0000\n"
|
||||
"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
|
||||
"Language-Team: Hungarian (http://www.transifex.com/projects/p/searx/language/hu/)\n"
|
||||
"Language-Team: Hungarian (http://www.transifex.com/asciimoo/searx/language/hu/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -20,67 +20,67 @@ msgstr ""
|
||||
"Language: hu\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "fájlok"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "általános"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "zene"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "közösségi média"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "képek"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "videók"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "it"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "hírek"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "térkép"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "{minutes} perce"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "{hours} óra, {minutes} perce"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "Válaszidők (sec)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Találatok száma"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "Pontszámok"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "Pontszámok találatonként"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Hibák"
|
||||
|
||||
@ -95,12 +95,22 @@ msgstr "Azonnal keresés kategória választással"
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
msgstr "Keresés megkezdése kategória kiválasztáskor. Több kategória kiválasztásához deaktiválás szükséges"
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr "Keresés megkezdése kategória kiválasztáskor. Több kategória kiválasztásához deaktiválás szükséges. (Javascript szükséges)"
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
msgstr "Saját IP cím megjelenítése az \"ip\" kulcsszóra keresve"
|
||||
#: 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 "Saját IP cím, user agent megjelenítés az \"ip\", \"user agent\" szavakra keresve."
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:26
|
||||
msgid "Tracker URL remover"
|
||||
msgstr "Tracker URL eltávolítás"
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:27
|
||||
msgid "Remove trackers arguments from the returned URL"
|
||||
msgstr "Felhasználó követéshez használt találati URL paraméterek eltávolítása"
|
||||
|
||||
#: searx/templates/courgette/index.html:9
|
||||
#: searx/templates/courgette/index.html:13
|
||||
@ -128,90 +138,92 @@ msgstr "Beállítások"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Alapértelmezett kategóriák"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Keresés nyelve"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Automatikus"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Felület nyelve"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Automatikus kiegészítés"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "Kép proxy"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "Engedélyez"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "Inaktivál"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Method"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "Felnőtt tartalom szűrés"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "Erős"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "Enyhe"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "Nincs"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Megjelenés"
|
||||
@ -252,6 +264,8 @@ msgstr "Jelenleg használt keresők"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Kereső neve"
|
||||
@ -266,6 +280,8 @@ msgstr "Kategória"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -283,7 +299,7 @@ msgstr "Tiltás"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -292,7 +308,7 @@ msgstr "Ezek a beállítások csak a böngésző cookie-jaiban tárolódnak."
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -301,20 +317,20 @@ msgstr "Ezek a cookie-k csak kényelmi funkciókat látnak el, nem használjuk a
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "mentés"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr "Alapbeállítások visszaállítása"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "vissza"
|
||||
@ -424,51 +440,89 @@ msgid "Toggle navigation"
|
||||
msgstr "Navigáció megjelenítés"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "Általános"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "Kereső motorok"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "Pluginek"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr "Sütik"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "Preferált keresési nyelv"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "Felület nyelve"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "Autómatikus kereső kifejezés kiegészítés"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "Kép találatok betöltése searx-ön keresztül"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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 "Keresés metódusa (<a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">bővebben</a>)"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "Tartalom szűrés"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "Megjelenés"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr "Rövidítés"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr "Átlag idő"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr "Maximális idő"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr "Searx által használt sütik listája."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr "Ez a lista a kereső transzparenciáját hivatott megmutatni."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr "Süti név"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr "Érték"
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "Keresési eredmények"
|
||||
@ -518,6 +572,14 @@ msgstr "Figyelem!"
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "Engedélyezze a javascript-et a teljes funkcionalitás használathoz"
|
||||
|
||||
#: searx/templates/oscar/messages/no_cookies.html:3
|
||||
msgid "Information!"
|
||||
msgstr "Figyelem!"
|
||||
|
||||
#: searx/templates/oscar/messages/no_cookies.html:4
|
||||
msgid "currently, there are no cookies defined."
|
||||
msgstr "jelenleg nincs süti definiálva"
|
||||
|
||||
#: searx/templates/oscar/messages/no_data_available.html:4
|
||||
msgid "There is currently no data available. "
|
||||
msgstr "Nincs megjeleníthető adat."
|
||||
|
Binary file not shown.
@ -9,10 +9,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-26 17:02+0000\n"
|
||||
"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
|
||||
"Language-Team: Italian (http://www.transifex.com/projects/p/searx/language/it/)\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-24 09:45+0000\n"
|
||||
"Last-Translator: pointhi\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"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -20,67 +20,67 @@ msgstr ""
|
||||
"Language: it\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "documenti"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "generale"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "musica"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "social media"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "immagini"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "video"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "it"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "notizie"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "mappe"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "di {minutes} minuti fa"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "di {ore} h e {minutes} minuti fa"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr " Caricamento della pagina (secondi)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Risultati ottenuti"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "Punteggio"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "Punteggio per risultato"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Errori"
|
||||
|
||||
@ -95,11 +95,21 @@ msgstr ""
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr ""
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
#: 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/templates/courgette/index.html:9
|
||||
@ -128,90 +138,92 @@ msgstr "Preferenze"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Categorie predefinite"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Lingua di ricerca"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Automatico"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Linguaggio dell'interfaccia"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Completamento automatico"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Metodo"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Grafica"
|
||||
@ -252,6 +264,8 @@ msgstr "Motori di ricerca attualmente in uso"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Nome del motore"
|
||||
@ -266,6 +280,8 @@ msgstr "Categoria"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -283,7 +299,7 @@ msgstr "Blocca"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -292,7 +308,7 @@ msgstr "Queste impostazioni sono salvate nei tuoi cookie, consentendoci di non c
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -301,20 +317,20 @@ msgstr "I cookie sono funzionali ad un servizio migliore. Non usiamo i cookie pe
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "salva"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "indietro"
|
||||
@ -424,51 +440,89 @@ msgid "Toggle navigation"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr ""
|
||||
@ -518,6 +572,14 @@ msgstr ""
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
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 ""
|
||||
|
Binary file not shown.
@ -12,10 +12,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-26 17:02+0000\n"
|
||||
"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
|
||||
"Language-Team: Japanese (http://www.transifex.com/projects/p/searx/language/ja/)\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-09-03 07:37+0000\n"
|
||||
"Last-Translator: pointhi\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"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -23,67 +23,67 @@ msgstr ""
|
||||
"Language: ja\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "ファイル"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "一般的な"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "音楽"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "社会的ネットワーク"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "画像"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "動画"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "情報技術"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "お知らせ"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "地図"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "{minutes}分前"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "{hours}時間と{minutes}分前"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr ""
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "通知の数"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr ""
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr ""
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "エラー"
|
||||
|
||||
@ -98,11 +98,21 @@ msgstr ""
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr ""
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
#: 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/templates/courgette/index.html:9
|
||||
@ -131,93 +141,95 @@ msgstr "設定"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "検索の言語"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "界面の言語"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr ""
|
||||
msgstr "活性化する"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr ""
|
||||
msgstr "使用不可能にする"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "安全な検索"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "たくさん。"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "少し"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "なし"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr ""
|
||||
msgstr "図様"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:83
|
||||
msgid "Color"
|
||||
@ -255,6 +267,8 @@ msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr ""
|
||||
@ -269,6 +283,8 @@ msgstr "カテゴリー"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -282,11 +298,11 @@ msgstr "許可する"
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:65
|
||||
msgid "Block"
|
||||
msgstr ""
|
||||
msgstr "封鎖する"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -295,7 +311,7 @@ msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -304,20 +320,20 @@ msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "保存"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "バック"
|
||||
@ -427,51 +443,89 @@ msgid "Toggle navigation"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "レイアウトのsearxの変更"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "検索結果"
|
||||
@ -515,12 +569,20 @@ msgstr ""
|
||||
|
||||
#: searx/templates/oscar/messages/js_disabled.html:2
|
||||
msgid "Warning!"
|
||||
msgstr ""
|
||||
msgstr "意見"
|
||||
|
||||
#: searx/templates/oscar/messages/js_disabled.html:3
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
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 ""
|
||||
@ -537,7 +599,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."
|
||||
@ -545,7 +607,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."
|
||||
@ -585,7 +647,7 @@ msgstr ""
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:7
|
||||
msgid "Filesize"
|
||||
msgstr ""
|
||||
msgstr "ファイル・サイズ"
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:9
|
||||
msgid "Bytes"
|
||||
@ -609,7 +671,7 @@ msgstr ""
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:15
|
||||
msgid "Number of Files"
|
||||
msgstr ""
|
||||
msgstr "ファイル数"
|
||||
|
||||
#: searx/templates/oscar/result_templates/videos.html:7
|
||||
msgid "show video"
|
||||
|
Binary file not shown.
@ -9,10 +9,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-27 07:45+0000\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-24 14:41+0000\n"
|
||||
"Last-Translator: Nathan Follens\n"
|
||||
"Language-Team: Dutch (http://www.transifex.com/projects/p/searx/language/nl/)\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"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -20,67 +20,67 @@ msgstr ""
|
||||
"Language: nl\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n != 1);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "bestanden"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "algemeen"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "muziek"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "social media"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "afbeeldingen"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "video's"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "it"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "nieuws"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "kaart"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "{minutes} min geleden"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "{hours} uur, {minutes} min geleden"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "Pagina laadt (sec)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Aantal zoekresultaten"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "Scores"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "Scores per zoekresultaat"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Fouten"
|
||||
|
||||
@ -95,12 +95,22 @@ 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."
|
||||
msgstr "Zoekopdracht onmiddellijk uitvoeren wanneer een categorie geselecteerd wordt. Zet dit uit om meerdere categorieën te selecteren."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr "Zoekopdracht onmiddellijk uitvoeren wanneer een categorie geselecteerd wordt. Zet dit uit om meerdere categorieën te selecteren. (JavaScript vereist)"
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
msgstr "Geef je IP-adres weer wanneer de zoekopdracht \"ip\" is"
|
||||
#: 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 je IP-adres weer als de zoekopdracht \"ip\" is en je 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/templates/courgette/index.html:9
|
||||
#: searx/templates/courgette/index.html:13
|
||||
@ -128,90 +138,92 @@ msgstr "Voorkeuren"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Standaardcategorieën"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Zoektaal"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Automatisch"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Interfacetaal"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Auto-aanvullen"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "Afbeeldingen proxy"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "Ingeschakeld"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "Uitgeschakeld"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Methode"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "SafeSearch"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "Strikt"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "Gemiddeld"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "Geen"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Thema's"
|
||||
@ -252,6 +264,8 @@ msgstr "Momenteel gebruikte zoekmachines"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Naam zoekmachine"
|
||||
@ -266,6 +280,8 @@ msgstr "Categorie"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -283,7 +299,7 @@ msgstr "Blokkeren"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -292,7 +308,7 @@ msgstr "Deze instellingen worden bewaard in je cookies. Hierdoor hoeven wij niet
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -301,20 +317,20 @@ msgstr "Deze cookies zijn alleen voor je eigen gemak, we gebruiken deze cookies
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "bewaren"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr "Standaardinstellingen herstellen"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "terug"
|
||||
@ -424,51 +440,89 @@ msgid "Toggle navigation"
|
||||
msgstr "Omschakelen navigatie"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "Algemeen"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "Zoekmachines"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "Plugins"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr "Cookies"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "Welke taal wil je gebruiken voor het zoeken?"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "Wijzig de taal van de layout"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "Zoek tijdens het typen"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "Proxyen afbeeldingen resultaat via searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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 "Bepaal hoe de formulieren worden ingestuurd, <a href=\"http://nl.wikipedia.org/wiki/Hypertext_Transfer_Protocol#HTTP-requests\" rel=\"external\">lees meer over request methodes</a>"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "Filteren content"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "Wijzig searx layout"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr "Snelkoppeling"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr "Gem. duur"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr "Max. duur"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
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 je computer opslaat."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr "Met deze lijst kan je de openheid van searx beoordelen."
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr "Cookienaam"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr "Waarde"
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "Zoekresultaten"
|
||||
@ -518,6 +572,14 @@ msgstr "Waarschuwing!"
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "Activeer JavaScript om alle functionaliteit van deze site te gebruiken."
|
||||
|
||||
#: 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 "er zijn momenteel geen cookies gedefinieerd."
|
||||
|
||||
#: searx/templates/oscar/messages/no_data_available.html:4
|
||||
msgid "There is currently no data available. "
|
||||
msgstr "Er zijn momenteel geen gegevens beschikbaar."
|
||||
|
Binary file not shown.
Binary file not shown.
@ -8,10 +8,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-05-02 22:23+0000\n"
|
||||
"Last-Translator: adrian.fita <adrian.fita@gmail.com>\n"
|
||||
"Language-Team: Romanian (http://www.transifex.com/projects/p/searx/language/ro/)\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-24 09:45+0000\n"
|
||||
"Last-Translator: pointhi\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"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -19,67 +19,67 @@ msgstr ""
|
||||
"Language: ro\n"
|
||||
"Plural-Forms: nplurals=3; plural=(n==1?0:(((n%100>19)||((n%100==0)&&(n!=0)))?2:1));\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "fișiere"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "general"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "muzică"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "rețele sociale"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "imagini"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "videouri"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "el(ea)"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "știri"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "hartă"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "{minutes} minut(e) în urmă"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "{hours} oră(e), {minutes} minut(e) în urmă"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "Încărcarea paginilor (sec)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Numărul de rezultate"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "Scoruri"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "Scoruri per rezultat"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Erori"
|
||||
|
||||
@ -94,12 +94,22 @@ msgstr "Căutare în categoria selectată"
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
msgstr "Realizează căutarea imediat dacă s-a selectat o categorie. Dezactivați pentru a selecta mai multe categorii."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr ""
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
msgstr "Afișează adresa voastră IP sursă dacă expresia interogării este „ip”"
|
||||
#: 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/templates/courgette/index.html:9
|
||||
#: searx/templates/courgette/index.html:13
|
||||
@ -127,90 +137,92 @@ msgstr "Preferințe"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Categorii implicite"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Limba de căutare"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Automat"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Limba interfeței"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Completare automată"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "Proxy de imagini"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "Activat"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "Dezactivat"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Metodă"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "CăutareSigură"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "Strict"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "Moderat"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "Nimic"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Teme"
|
||||
@ -251,6 +263,8 @@ msgstr "Motoarele de căutare folosite curent"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Numele motorului"
|
||||
@ -265,6 +279,8 @@ msgstr "Categorie"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -282,7 +298,7 @@ msgstr "Blochează"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -291,7 +307,7 @@ msgstr "Aceste setări sunt stocate în cookie-urile d-voastră, aceasta ne perm
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -300,20 +316,20 @@ msgstr "Aceste cookie-uri servesc doar pentru confortul d-voastră, noi nu stoc
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "salvează"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr "Resetează valorile implicite"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "înapoi"
|
||||
@ -423,51 +439,89 @@ msgid "Toggle navigation"
|
||||
msgstr "Comută navigarea"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "General"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "Motoare"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "Module"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "Ce limbă preferați pentru căutare?"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "Schimbă limba aspectului"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "Găsește lucruri în timp ce tastezi"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "Transferă rezultatele cu imagini prin searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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 "Modificați cum sunt trimise formularele, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">învățați mai multe despre metodele de transfer</a>"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "Filtrează conținutul"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "Schimbă aspectul lui searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "Rezultatele căutării"
|
||||
@ -517,6 +571,14 @@ msgstr "Avertizare!"
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "Vă rog activați JavaScript pentru a utiliza funcționalitatea completă a acestui site."
|
||||
|
||||
#: 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 "Deocamdată nu există date disponibile."
|
||||
|
Binary file not shown.
@ -9,10 +9,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-26 17:02+0000\n"
|
||||
"Last-Translator: Adam Tauber <asciimoo@gmail.com>\n"
|
||||
"Language-Team: Russian (http://www.transifex.com/projects/p/searx/language/ru/)\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-24 09:45+0000\n"
|
||||
"Last-Translator: pointhi\n"
|
||||
"Language-Team: Russian (http://www.transifex.com/asciimoo/searx/language/ru/)\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -20,67 +20,67 @@ msgstr ""
|
||||
"Language: ru\n"
|
||||
"Plural-Forms: nplurals=4; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<12 || n%100>14) ? 1 : n%10==0 || (n%10>=5 && n%10<=9) || (n%100>=11 && n%100<=14)? 2 : 3);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "файлы"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "общие"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "музыка"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "соцсети"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "картинки"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "видео"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "IT"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "новости"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "карты"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "{minutes} минут назад"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "{hours} час, {minutes} минут назад"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "Время загрузки (сек)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Число результатов"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "Попаданий"
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "Попаданий за результат"
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Ошибок"
|
||||
|
||||
@ -95,11 +95,21 @@ msgstr ""
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr ""
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
#: 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/templates/courgette/index.html:9
|
||||
@ -128,90 +138,92 @@ msgstr "Опции"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Категории по-умолчанию"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Язык поиска"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Выбирать автоматически"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Язык интерфейса"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Авто-подсказки"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "Прокси для картинок"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "Включен"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "Выключен"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Метод"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "Безопасный поиск"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "Строгий"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "Умеренный"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "Выключен"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Темы"
|
||||
@ -252,6 +264,8 @@ msgstr "Используемые поисковые движки"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Имя движка"
|
||||
@ -266,6 +280,8 @@ msgstr "Категория"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -283,7 +299,7 @@ msgstr "Блокировать"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -292,7 +308,7 @@ msgstr "Настройки хранятся в ваших cookies-файлах,
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -301,20 +317,20 @@ msgstr "Данные cookies применяются для вашего удоб
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "сохранить"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "назад"
|
||||
@ -424,51 +440,89 @@ msgid "Toggle navigation"
|
||||
msgstr "Переключить навигацию"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "Общие"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "Движки"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "На каком языке вы предпочитаете искать?"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "Изменить язык сайта"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "Поисковые предложения при наборе"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "Проксировать найденные изображения с помощью searx"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "Использовать ли фильтр контента"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "Изменить тему сайта"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "Результаты поиска"
|
||||
@ -518,6 +572,14 @@ msgstr "Внимание!"
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "Пожалуйста включите JavaScript, чтобы использовать все функции сайта."
|
||||
|
||||
#: 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 "На данный момент данные недоступны."
|
||||
|
Binary file not shown.
@ -9,10 +9,10 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-04-26 18:57+0200\n"
|
||||
"PO-Revision-Date: 2015-04-28 17:33+0000\n"
|
||||
"Last-Translator: Caner Başaran <basaran.caner@gmail.com>\n"
|
||||
"Language-Team: Turkish (http://www.transifex.com/projects/p/searx/language/tr/)\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-24 09:45+0000\n"
|
||||
"Last-Translator: pointhi\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"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
@ -20,67 +20,67 @@ msgstr ""
|
||||
"Language: tr\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
#: searx/webapp.py:104
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "dosyalar"
|
||||
|
||||
#: searx/webapp.py:105
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "genel"
|
||||
|
||||
#: searx/webapp.py:106
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "müzik"
|
||||
|
||||
#: searx/webapp.py:107
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "sosyal medya"
|
||||
|
||||
#: searx/webapp.py:108
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "görseller"
|
||||
|
||||
#: searx/webapp.py:109
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "videolar"
|
||||
|
||||
#: searx/webapp.py:110
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "bilişim"
|
||||
|
||||
#: searx/webapp.py:111
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "haberler"
|
||||
|
||||
#: searx/webapp.py:112
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "harita"
|
||||
|
||||
#: searx/webapp.py:396
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "{minutes} dakika() önce"
|
||||
|
||||
#: searx/webapp.py:398
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "{hours} saat(), {minutes} dakika() önce"
|
||||
|
||||
#: searx/engines/__init__.py:182
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "Yüklenen sayfa (sn)"
|
||||
|
||||
#: searx/engines/__init__.py:186
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "Sonuç sayısı"
|
||||
|
||||
#: searx/engines/__init__.py:190
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr ""
|
||||
|
||||
#: searx/engines/__init__.py:194
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr ""
|
||||
|
||||
#: searx/engines/__init__.py:198
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "Hatalar"
|
||||
|
||||
@ -95,11 +95,21 @@ msgstr ""
|
||||
#: searx/plugins/search_on_category_select.py:19
|
||||
msgid ""
|
||||
"Perform search immediately if a category selected. Disable to select "
|
||||
"multiple categories."
|
||||
"multiple categories. (JavaScript required)"
|
||||
msgstr ""
|
||||
|
||||
#: searx/plugins/self_ip.py:19
|
||||
msgid "Display your source IP address if the query expression is \"ip\""
|
||||
#: 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/templates/courgette/index.html:9
|
||||
@ -128,90 +138,92 @@ msgstr "Tercihler"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:37
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "Öntanımlı kategoriler"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:43
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "Arama dili"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:47
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "Otomatik"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:54
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "Arayüz dili"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "Otomatik tamamlama"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:75
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "Görsel vekil sunucu"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:79
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "Etkin"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "Devre dışı"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:84
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "Sorgu gönderim yöntemi"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:93
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "Güvenli Arama"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:97
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "Sıkı"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "Orta"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "Yok"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:103
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
msgid "Themes"
|
||||
msgstr "Temalar"
|
||||
@ -252,6 +264,8 @@ msgstr "Şu anda kullanılan arama motorları"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "Motor adı"
|
||||
@ -266,6 +280,8 @@ msgstr "Türü"
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
@ -283,7 +299,7 @@ msgstr "Engelle"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:122
|
||||
#: searx/templates/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:180
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
msgid ""
|
||||
"These settings are stored in your cookies, this allows us not to store this "
|
||||
@ -292,7 +308,7 @@ msgstr "Ayarlar çerezlerinizde saklanır. Verdiğiniz izinler, sizin hakkınız
|
||||
|
||||
#: searx/templates/courgette/preferences.html:124
|
||||
#: searx/templates/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:182
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
msgid ""
|
||||
"These cookies serve your sole convenience, we don't use these cookies to "
|
||||
@ -301,20 +317,20 @@ msgstr "Bu çerezler size kolaylık sağlar. Sizi takip etmek için kullanılmaz
|
||||
|
||||
#: searx/templates/courgette/preferences.html:127
|
||||
#: searx/templates/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:185
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "kaydet"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr ""
|
||||
msgstr "Varsayılanları sıfırla"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:186
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "geri"
|
||||
@ -424,51 +440,89 @@ msgid "Toggle navigation"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:24
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "Genel"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:125
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "Motorlar"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:159
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "Eklentiler"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "Tercih ettiğiniz arama sonuçları dili"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "Site dilini değiştir"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "Leb demeden leblebiyi anlasın"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "Görsel arama sonuçlarını, searx vekil sunucusu üzerinden geçir"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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 "Aramaların nasıl gönderildiğini değiştir, <a href=\"http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods\" rel=\"external\">istek yöntemleri hakkında daha fazla bilgi</a>"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "İçeriyi süz"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "searx yerleşim düzenini değiştir"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "Arama sonuçları"
|
||||
@ -518,6 +572,14 @@ msgstr "Uyarı!"
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "Lütfen, bu sitenin tüm işlevlerini kullanmak için JavaScript'i etkinleştirin."
|
||||
|
||||
#: 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 "Şuan uygun veri yok."
|
||||
|
BIN
searx/translations/zh_CN/LC_MESSAGES/messages.mo
Normal file
BIN
searx/translations/zh_CN/LC_MESSAGES/messages.mo
Normal file
Binary file not shown.
682
searx/translations/zh_CN/LC_MESSAGES/messages.po
Normal file
682
searx/translations/zh_CN/LC_MESSAGES/messages.po
Normal file
@ -0,0 +1,682 @@
|
||||
# Translations template for PROJECT.
|
||||
# Copyright (C) 2015 ORGANIZATION
|
||||
# This file is distributed under the same license as the PROJECT project.
|
||||
#
|
||||
# Translators:
|
||||
# 文科, 2015
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: searx\n"
|
||||
"Report-Msgid-Bugs-To: EMAIL@ADDRESS\n"
|
||||
"POT-Creation-Date: 2015-08-24 11:44+0200\n"
|
||||
"PO-Revision-Date: 2015-08-29 07:35+0000\n"
|
||||
"Last-Translator: 文科\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"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Generated-By: Babel 1.3\n"
|
||||
"Language: zh_CN\n"
|
||||
"Plural-Forms: nplurals=1; plural=0;\n"
|
||||
|
||||
#: searx/webapp.py:114
|
||||
msgid "files"
|
||||
msgstr "文件"
|
||||
|
||||
#: searx/webapp.py:115
|
||||
msgid "general"
|
||||
msgstr "一般"
|
||||
|
||||
#: searx/webapp.py:116
|
||||
msgid "music"
|
||||
msgstr "音乐"
|
||||
|
||||
#: searx/webapp.py:117
|
||||
msgid "social media"
|
||||
msgstr "社交媒体"
|
||||
|
||||
#: searx/webapp.py:118
|
||||
msgid "images"
|
||||
msgstr "图片"
|
||||
|
||||
#: searx/webapp.py:119
|
||||
msgid "videos"
|
||||
msgstr "视频"
|
||||
|
||||
#: searx/webapp.py:120
|
||||
msgid "it"
|
||||
msgstr "it"
|
||||
|
||||
#: searx/webapp.py:121
|
||||
msgid "news"
|
||||
msgstr "新闻"
|
||||
|
||||
#: searx/webapp.py:122
|
||||
msgid "map"
|
||||
msgstr "地图"
|
||||
|
||||
#: searx/webapp.py:414
|
||||
msgid "{minutes} minute(s) ago"
|
||||
msgstr "{minutes}分钟之前"
|
||||
|
||||
#: searx/webapp.py:416
|
||||
msgid "{hours} hour(s), {minutes} minute(s) ago"
|
||||
msgstr "{hours}小时{minutes}分钟之前"
|
||||
|
||||
#: searx/engines/__init__.py:185
|
||||
msgid "Page loads (sec)"
|
||||
msgstr "页面加载 (秒)"
|
||||
|
||||
#: searx/engines/__init__.py:189
|
||||
msgid "Number of results"
|
||||
msgstr "结果数"
|
||||
|
||||
#: searx/engines/__init__.py:193
|
||||
msgid "Scores"
|
||||
msgstr "得分"
|
||||
|
||||
#: searx/engines/__init__.py:197
|
||||
msgid "Scores per result"
|
||||
msgstr "每个结果等分"
|
||||
|
||||
#: searx/engines/__init__.py:201
|
||||
msgid "Errors"
|
||||
msgstr "错误"
|
||||
|
||||
#: searx/plugins/https_rewrite.py:29
|
||||
msgid "Rewrite HTTP links to HTTPS if possible"
|
||||
msgstr "如果可能的话重定向HTTP链接到HTTPS"
|
||||
|
||||
#: 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 "移除跟踪链接"
|
||||
|
||||
#: searx/plugins/tracker_url_remover.py:27
|
||||
msgid "Remove trackers arguments from the returned URL"
|
||||
msgstr "从返回的链接中移除跟踪参数"
|
||||
|
||||
#: searx/templates/courgette/index.html:9
|
||||
#: searx/templates/courgette/index.html:13
|
||||
#: searx/templates/courgette/results.html:5
|
||||
#: searx/templates/default/index.html:8 searx/templates/default/index.html:12
|
||||
#: searx/templates/oscar/navbar.html:7 searx/templates/oscar/navbar.html:35
|
||||
#: searx/templates/oscar/preferences.html:3
|
||||
#: searx/templates/pix-art/index.html:8
|
||||
msgid "preferences"
|
||||
msgstr "首选项"
|
||||
|
||||
#: searx/templates/courgette/index.html:11
|
||||
#: searx/templates/default/index.html:10 searx/templates/oscar/about.html:3
|
||||
#: searx/templates/oscar/navbar.html:8 searx/templates/oscar/navbar.html:34
|
||||
#: searx/templates/pix-art/index.html:7
|
||||
msgid "about"
|
||||
msgstr "关于"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:5
|
||||
#: searx/templates/default/preferences.html:5
|
||||
#: searx/templates/oscar/preferences.html:12
|
||||
#: searx/templates/pix-art/preferences.html:5
|
||||
msgid "Preferences"
|
||||
msgstr "首选项"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:9
|
||||
#: searx/templates/default/preferences.html:9
|
||||
#: searx/templates/oscar/preferences.html:36
|
||||
#: searx/templates/oscar/preferences.html:38
|
||||
msgid "Default categories"
|
||||
msgstr "默认类别"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:13
|
||||
#: searx/templates/default/preferences.html:14
|
||||
#: searx/templates/oscar/preferences.html:44
|
||||
#: searx/templates/pix-art/preferences.html:9
|
||||
msgid "Search language"
|
||||
msgstr "搜索语言"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:16
|
||||
#: searx/templates/default/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:48
|
||||
#: searx/templates/pix-art/preferences.html:12
|
||||
msgid "Automatic"
|
||||
msgstr "自动"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:24
|
||||
#: searx/templates/default/preferences.html:25
|
||||
#: searx/templates/oscar/preferences.html:55
|
||||
#: searx/templates/pix-art/preferences.html:20
|
||||
msgid "Interface language"
|
||||
msgstr "界面语言"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:34
|
||||
#: searx/templates/default/preferences.html:35
|
||||
#: searx/templates/oscar/preferences.html:65
|
||||
msgid "Autocomplete"
|
||||
msgstr "自动完成"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:45
|
||||
#: searx/templates/default/preferences.html:46
|
||||
#: searx/templates/oscar/preferences.html:76
|
||||
msgid "Image proxy"
|
||||
msgstr "代理图片"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:48
|
||||
#: searx/templates/default/preferences.html:49
|
||||
#: searx/templates/oscar/preferences.html:80
|
||||
msgid "Enabled"
|
||||
msgstr "启用"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:49
|
||||
#: searx/templates/default/preferences.html:50
|
||||
#: searx/templates/oscar/preferences.html:81
|
||||
msgid "Disabled"
|
||||
msgstr "禁用"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:54
|
||||
#: searx/templates/default/preferences.html:55
|
||||
#: searx/templates/oscar/preferences.html:85
|
||||
#: searx/templates/pix-art/preferences.html:30
|
||||
msgid "Method"
|
||||
msgstr "方法"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:63
|
||||
#: searx/templates/default/preferences.html:64
|
||||
#: searx/templates/oscar/preferences.html:94
|
||||
#: searx/templates/oscar/preferences.html:144
|
||||
#: searx/templates/oscar/preferences.html:150
|
||||
msgid "SafeSearch"
|
||||
msgstr "安全搜索"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:66
|
||||
#: searx/templates/default/preferences.html:67
|
||||
#: searx/templates/oscar/preferences.html:98
|
||||
msgid "Strict"
|
||||
msgstr "严格模式"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:67
|
||||
#: searx/templates/default/preferences.html:68
|
||||
#: searx/templates/oscar/preferences.html:99
|
||||
msgid "Moderate"
|
||||
msgstr "中等"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:68
|
||||
#: searx/templates/default/preferences.html:69
|
||||
#: searx/templates/oscar/preferences.html:100
|
||||
msgid "None"
|
||||
msgstr "不过滤"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:73
|
||||
#: searx/templates/default/preferences.html:74
|
||||
#: searx/templates/oscar/preferences.html:104
|
||||
#: searx/templates/pix-art/preferences.html:39
|
||||
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/default/preferences.html:84
|
||||
#: searx/templates/pix-art/preferences.html:49
|
||||
msgid "Currently used search engines"
|
||||
msgstr "目前使用的搜索引擎"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:100
|
||||
#: searx/templates/default/preferences.html:88
|
||||
#: searx/templates/oscar/preferences.html:142
|
||||
#: searx/templates/oscar/preferences.html:152
|
||||
#: searx/templates/pix-art/preferences.html:53
|
||||
msgid "Engine name"
|
||||
msgstr "搜索引擎名字"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:101
|
||||
#: searx/templates/default/preferences.html:89
|
||||
msgid "Category"
|
||||
msgstr "类别"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:102
|
||||
#: searx/templates/courgette/preferences.html:113
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:101
|
||||
#: searx/templates/oscar/macros.html:67
|
||||
#: searx/templates/oscar/preferences.html:141
|
||||
#: searx/templates/oscar/preferences.html:153
|
||||
#: searx/templates/pix-art/preferences.html:54
|
||||
#: searx/templates/pix-art/preferences.html:64
|
||||
msgid "Allow"
|
||||
msgstr "允许"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:102
|
||||
#: searx/templates/courgette/preferences.html:114
|
||||
#: searx/templates/default/preferences.html:90
|
||||
#: searx/templates/default/preferences.html:102
|
||||
#: searx/templates/oscar/macros.html:66
|
||||
#: 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/default/preferences.html:110
|
||||
#: searx/templates/oscar/preferences.html:235
|
||||
#: searx/templates/pix-art/preferences.html:73
|
||||
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/default/preferences.html:112
|
||||
#: searx/templates/oscar/preferences.html:237
|
||||
#: searx/templates/pix-art/preferences.html:75
|
||||
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/default/preferences.html:115
|
||||
#: searx/templates/oscar/preferences.html:240
|
||||
#: searx/templates/pix-art/preferences.html:78
|
||||
msgid "save"
|
||||
msgstr "保存"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:128
|
||||
#: searx/templates/default/preferences.html:116
|
||||
#: searx/templates/oscar/preferences.html:242
|
||||
msgid "Reset defaults"
|
||||
msgstr "恢复默认"
|
||||
|
||||
#: searx/templates/courgette/preferences.html:129
|
||||
#: searx/templates/default/preferences.html:117
|
||||
#: searx/templates/oscar/preferences.html:241
|
||||
#: searx/templates/pix-art/preferences.html:79
|
||||
msgid "back"
|
||||
msgstr "后"
|
||||
|
||||
#: searx/templates/courgette/results.html:12
|
||||
#: searx/templates/default/results.html:13
|
||||
#: searx/templates/oscar/results.html:110
|
||||
msgid "Search URL"
|
||||
msgstr "搜索链接"
|
||||
|
||||
#: searx/templates/courgette/results.html:16
|
||||
#: searx/templates/default/results.html:17
|
||||
#: searx/templates/oscar/results.html:115
|
||||
msgid "Download results"
|
||||
msgstr "下载结果"
|
||||
|
||||
#: searx/templates/courgette/results.html:34
|
||||
#: searx/templates/default/results.html:35
|
||||
msgid "Answers"
|
||||
msgstr "回答"
|
||||
|
||||
#: searx/templates/courgette/results.html:42
|
||||
#: searx/templates/default/results.html:43
|
||||
#: searx/templates/oscar/results.html:90
|
||||
msgid "Suggestions"
|
||||
msgstr "搜索建议"
|
||||
|
||||
#: searx/templates/courgette/results.html:70
|
||||
#: searx/templates/default/results.html:81
|
||||
#: searx/templates/oscar/results.html:51 searx/templates/oscar/results.html:63
|
||||
msgid "previous page"
|
||||
msgstr "上一页"
|
||||
|
||||
#: searx/templates/courgette/results.html:81
|
||||
#: searx/templates/default/results.html:92
|
||||
#: searx/templates/oscar/results.html:44 searx/templates/oscar/results.html:71
|
||||
msgid "next page"
|
||||
msgstr "下一页"
|
||||
|
||||
#: searx/templates/courgette/search.html:3
|
||||
#: searx/templates/default/search.html:3 searx/templates/oscar/search.html:4
|
||||
#: searx/templates/oscar/search_full.html:9
|
||||
#: searx/templates/pix-art/search.html:3
|
||||
msgid "Search for..."
|
||||
msgstr "搜索..."
|
||||
|
||||
#: searx/templates/courgette/stats.html:4 searx/templates/default/stats.html:4
|
||||
#: searx/templates/oscar/stats.html:5 searx/templates/pix-art/stats.html:4
|
||||
msgid "Engine stats"
|
||||
msgstr "搜索引擎统计"
|
||||
|
||||
#: searx/templates/courgette/result_templates/images.html:4
|
||||
#: searx/templates/default/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/default/result_templates/torrent.html:11
|
||||
#: searx/templates/oscar/result_templates/torrent.html:6
|
||||
msgid "Seeder"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/result_templates/torrent.html:7
|
||||
#: searx/templates/default/result_templates/torrent.html:11
|
||||
#: searx/templates/oscar/result_templates/torrent.html:6
|
||||
msgid "Leecher"
|
||||
msgstr ""
|
||||
|
||||
#: searx/templates/courgette/result_templates/torrent.html:9
|
||||
#: searx/templates/default/result_templates/torrent.html:9
|
||||
#: searx/templates/oscar/macros.html:21
|
||||
msgid "magnet link"
|
||||
msgstr "磁力链接"
|
||||
|
||||
#: searx/templates/courgette/result_templates/torrent.html:10
|
||||
#: searx/templates/default/result_templates/torrent.html:10
|
||||
#: searx/templates/oscar/macros.html:22
|
||||
msgid "torrent file"
|
||||
msgstr "种子文件"
|
||||
|
||||
#: searx/templates/default/categories.html:8
|
||||
msgid "Click on the magnifier to perform search"
|
||||
msgstr "点击放大镜执行搜索"
|
||||
|
||||
#: searx/templates/default/result_templates/code.html:3
|
||||
#: searx/templates/default/result_templates/default.html:3
|
||||
#: searx/templates/default/result_templates/map.html:9
|
||||
#: searx/templates/oscar/macros.html:20
|
||||
msgid "cached"
|
||||
msgstr "缓存"
|
||||
|
||||
#: searx/templates/oscar/base.html:78
|
||||
msgid "Powered by"
|
||||
msgstr "Powered by"
|
||||
|
||||
#: searx/templates/oscar/base.html:78
|
||||
msgid "a privacy-respecting, hackable metasearch engine"
|
||||
msgstr "一个尊重隐私,可再开发的元搜索引擎"
|
||||
|
||||
#: searx/templates/oscar/navbar.html:9 searx/templates/oscar/navbar.html:33
|
||||
msgid "home"
|
||||
msgstr "主页"
|
||||
|
||||
#: searx/templates/oscar/navbar.html:14 searx/templates/oscar/navbar.html:24
|
||||
msgid "Toggle navigation"
|
||||
msgstr "切换导航"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:17
|
||||
#: searx/templates/oscar/preferences.html:25
|
||||
msgid "General"
|
||||
msgstr "常规"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:18
|
||||
#: searx/templates/oscar/preferences.html:126
|
||||
msgid "Engines"
|
||||
msgstr "搜索引擎"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:19
|
||||
#: searx/templates/oscar/preferences.html:187
|
||||
msgid "Plugins"
|
||||
msgstr "插件"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:20
|
||||
#: searx/templates/oscar/preferences.html:210
|
||||
msgid "Cookies"
|
||||
msgstr "Cookie"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:45
|
||||
msgid "What language do you prefer for search?"
|
||||
msgstr "你更喜欢搜索什么语言?"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:56
|
||||
msgid "Change the language of the layout"
|
||||
msgstr "改变界面语言"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:66
|
||||
msgid "Find stuff as you type"
|
||||
msgstr "找到你的搜索的东西"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:77
|
||||
msgid "Proxying image results through searx"
|
||||
msgstr "通过searx代理图片"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:86
|
||||
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>"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:95
|
||||
msgid "Filter content"
|
||||
msgstr "过滤内容"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:105
|
||||
msgid "Change searx layout"
|
||||
msgstr "改变searx布局"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:143
|
||||
#: searx/templates/oscar/preferences.html:151
|
||||
msgid "Shortcut"
|
||||
msgstr "快捷键"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:145
|
||||
#: searx/templates/oscar/preferences.html:149
|
||||
msgid "Avg. time"
|
||||
msgstr "平均时间"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:146
|
||||
#: searx/templates/oscar/preferences.html:148
|
||||
msgid "Max time"
|
||||
msgstr "最大时间"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:213
|
||||
msgid ""
|
||||
"This is the list of cookies and their values searx is storing on your "
|
||||
"computer."
|
||||
msgstr "这是searx保存在你的电脑上的cookie列表。"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:214
|
||||
msgid "With that list, you can assess searx transparency."
|
||||
msgstr "有了这个列表,你可以评价searx透明度。"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:219
|
||||
msgid "Cookie name"
|
||||
msgstr "cookie名称"
|
||||
|
||||
#: searx/templates/oscar/preferences.html:220
|
||||
msgid "Value"
|
||||
msgstr "值"
|
||||
|
||||
#: searx/templates/oscar/results.html:7
|
||||
msgid "Search results"
|
||||
msgstr "搜索结果"
|
||||
|
||||
#: searx/templates/oscar/results.html:105
|
||||
msgid "Links"
|
||||
msgstr "链接"
|
||||
|
||||
#: searx/templates/oscar/search.html:6
|
||||
#: searx/templates/oscar/search_full.html:11
|
||||
msgid "Start search"
|
||||
msgstr "开始搜索"
|
||||
|
||||
#: searx/templates/oscar/search_full.html:15
|
||||
msgid "Show search filters"
|
||||
msgstr "显示搜索过滤器"
|
||||
|
||||
#: searx/templates/oscar/search_full.html:15
|
||||
msgid "Hide search filters"
|
||||
msgstr "隐藏搜索过滤器"
|
||||
|
||||
#: searx/templates/oscar/stats.html:2
|
||||
msgid "stats"
|
||||
msgstr "统计"
|
||||
|
||||
#: searx/templates/oscar/messages/first_time.html:4
|
||||
#: searx/templates/oscar/messages/no_results.html:5
|
||||
#: searx/templates/oscar/messages/save_settings_successfull.html:5
|
||||
#: searx/templates/oscar/messages/unknow_error.html:5
|
||||
msgid "Close"
|
||||
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/js_disabled.html:2
|
||||
msgid "Warning!"
|
||||
msgstr "警告!"
|
||||
|
||||
#: searx/templates/oscar/messages/js_disabled.html:3
|
||||
msgid "Please enable JavaScript to use full functionality of this site."
|
||||
msgstr "请启用JavaScript来使用本网站全部功能。"
|
||||
|
||||
#: 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:7
|
||||
msgid "Sorry!"
|
||||
msgstr "抱歉!"
|
||||
|
||||
#: searx/templates/oscar/messages/no_results.html:8
|
||||
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
|
||||
msgid "show media"
|
||||
msgstr "显示媒体"
|
||||
|
||||
#: searx/templates/oscar/result_templates/default.html:7
|
||||
msgid "hide media"
|
||||
msgstr "隐藏媒体"
|
||||
|
||||
#: searx/templates/oscar/result_templates/images.html:23
|
||||
msgid "Get image"
|
||||
msgstr "获取图片"
|
||||
|
||||
#: searx/templates/oscar/result_templates/images.html:24
|
||||
msgid "View source"
|
||||
msgstr "查看来源"
|
||||
|
||||
#: searx/templates/oscar/result_templates/map.html:7
|
||||
msgid "show map"
|
||||
msgstr "显示地图"
|
||||
|
||||
#: searx/templates/oscar/result_templates/map.html:7
|
||||
msgid "hide map"
|
||||
msgstr "隐藏地图"
|
||||
|
||||
#: searx/templates/oscar/result_templates/map.html:11
|
||||
msgid "show details"
|
||||
msgstr "显示详细信息"
|
||||
|
||||
#: searx/templates/oscar/result_templates/map.html:11
|
||||
msgid "hide details"
|
||||
msgstr "隐藏详细信息"
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:7
|
||||
msgid "Filesize"
|
||||
msgstr "文件大小"
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:9
|
||||
msgid "Bytes"
|
||||
msgstr "B"
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:10
|
||||
msgid "kiB"
|
||||
msgstr "KB"
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:11
|
||||
msgid "MiB"
|
||||
msgstr "MB"
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:12
|
||||
msgid "GiB"
|
||||
msgstr "GB"
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:13
|
||||
msgid "TiB"
|
||||
msgstr "TB"
|
||||
|
||||
#: searx/templates/oscar/result_templates/torrent.html:15
|
||||
msgid "Number of Files"
|
||||
msgstr "文件数"
|
||||
|
||||
#: searx/templates/oscar/result_templates/videos.html:7
|
||||
msgid "show video"
|
||||
msgstr "显示视频"
|
||||
|
||||
#: searx/templates/oscar/result_templates/videos.html:7
|
||||
msgid "hide video"
|
||||
msgstr "隐藏视频"
|
||||
|
||||
#: searx/templates/pix-art/results.html:28
|
||||
msgid "Load more..."
|
||||
msgstr "载入更多..."
|
@ -1,11 +1,9 @@
|
||||
# import htmlentitydefs
|
||||
import locale
|
||||
import dateutil.parser
|
||||
import cStringIO
|
||||
import csv
|
||||
import os
|
||||
import re
|
||||
|
||||
from babel.dates import format_date
|
||||
from codecs import getincrementalencoder
|
||||
from HTMLParser import HTMLParser
|
||||
from random import choice
|
||||
@ -21,11 +19,15 @@ ua_versions = ('33.0',
|
||||
'34.0',
|
||||
'35.0',
|
||||
'36.0',
|
||||
'37.0')
|
||||
'37.0',
|
||||
'38.0',
|
||||
'39.0',
|
||||
'40.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',
|
||||
@ -40,7 +42,7 @@ def gen_useragent():
|
||||
def searx_useragent():
|
||||
return 'searx/{searx_version} {suffix}'.format(
|
||||
searx_version=VERSION_STRING,
|
||||
suffix=settings['server'].get('useragent_suffix', ''))
|
||||
suffix=settings['outgoing'].get('useragent_suffix', ''))
|
||||
|
||||
|
||||
def highlight_content(content, query):
|
||||
@ -194,23 +196,16 @@ def get_result_templates(base_path):
|
||||
return result_templates
|
||||
|
||||
|
||||
def format_date_by_locale(date_string, locale_string):
|
||||
def format_date_by_locale(date, locale_string):
|
||||
# strftime works only on dates after 1900
|
||||
parsed_date = dateutil.parser.parse(date_string)
|
||||
if parsed_date.year <= 1900:
|
||||
return parsed_date.isoformat().split('T')[0]
|
||||
|
||||
orig_locale = locale.getlocale()[0]
|
||||
try:
|
||||
locale.setlocale(locale.LC_ALL, locale_string)
|
||||
except:
|
||||
logger.warning('cannot set locale: {0}'.format(locale_string))
|
||||
formatted_date = parsed_date.strftime(locale.nl_langinfo(locale.D_FMT))
|
||||
try:
|
||||
locale.setlocale(locale.LC_ALL, orig_locale)
|
||||
except:
|
||||
logger.warning('cannot set original locale: {0}'.format(orig_locale))
|
||||
return formatted_date
|
||||
if date.year <= 1900:
|
||||
return date.isoformat().split('T')[0]
|
||||
|
||||
if locale_string == 'all':
|
||||
locale_string = settings['ui']['default_locale'] or 'en_US'
|
||||
|
||||
return format_date(date, locale=locale_string)
|
||||
|
||||
|
||||
def dict_subset(d, properties):
|
||||
@ -221,9 +216,10 @@ def dict_subset(d, properties):
|
||||
return result
|
||||
|
||||
|
||||
def prettify_url(url):
|
||||
if len(url) > 74:
|
||||
return u'{0}[...]{1}'.format(url[:35], url[-35:])
|
||||
def prettify_url(url, max_length=74):
|
||||
if len(url) > max_length:
|
||||
chunk_len = max_length / 2 + 1
|
||||
return u'{0}[...]{1}'.format(url[:chunk_len], url[-chunk_len:])
|
||||
else:
|
||||
return url
|
||||
|
||||
|
@ -18,7 +18,7 @@ along with searx. If not, see < http://www.gnu.org/licenses/ >.
|
||||
|
||||
# version of searx
|
||||
VERSION_MAJOR = 0
|
||||
VERSION_MINOR = 7
|
||||
VERSION_MINOR = 8
|
||||
VERSION_BUILD = 0
|
||||
|
||||
VERSION_STRING = "{0}.{1}.{2}".format(VERSION_MAJOR,
|
||||
|
@ -42,7 +42,7 @@ except:
|
||||
|
||||
from datetime import datetime, timedelta
|
||||
from urllib import urlencode
|
||||
from urlparse import urlparse
|
||||
from urlparse import urlparse, urljoin
|
||||
from werkzeug.contrib.fixers import ProxyFix
|
||||
from flask import (
|
||||
Flask, request, render_template, url_for, Response, make_response,
|
||||
@ -77,11 +77,11 @@ except ImportError:
|
||||
|
||||
|
||||
static_path, templates_path, themes =\
|
||||
get_themes(settings['themes_path']
|
||||
if settings.get('themes_path')
|
||||
get_themes(settings['ui']['themes_path']
|
||||
if settings['ui']['themes_path']
|
||||
else searx_dir)
|
||||
|
||||
default_theme = settings['server'].get('default_theme', 'default')
|
||||
default_theme = settings['ui']['default_theme']
|
||||
|
||||
static_files = get_static_files(searx_dir)
|
||||
|
||||
@ -121,15 +121,15 @@ _category_names = (gettext('files'),
|
||||
gettext('news'),
|
||||
gettext('map'))
|
||||
|
||||
outgoing_proxies = settings.get('outgoing_proxies', None)
|
||||
outgoing_proxies = settings['outgoing'].get('proxies', None)
|
||||
|
||||
|
||||
@babel.localeselector
|
||||
def get_locale():
|
||||
locale = request.accept_languages.best_match(settings['locales'].keys())
|
||||
|
||||
if settings['server'].get('default_locale'):
|
||||
locale = settings['server']['default_locale']
|
||||
if settings['ui'].get('default_locale'):
|
||||
locale = settings['ui']['default_locale']
|
||||
|
||||
if request.cookies.get('locale', '') in settings['locales']:
|
||||
locale = request.cookies.get('locale', '')
|
||||
@ -263,7 +263,7 @@ def image_proxify(url):
|
||||
def render(template_name, override_theme=None, **kwargs):
|
||||
blocked_engines = get_blocked_engines(engines, request.cookies)
|
||||
|
||||
autocomplete = request.cookies.get('autocomplete')
|
||||
autocomplete = request.cookies.get('autocomplete', settings['search']['autocomplete'])
|
||||
|
||||
if autocomplete not in autocomplete_backends:
|
||||
autocomplete = None
|
||||
@ -312,7 +312,7 @@ def render(template_name, override_theme=None, **kwargs):
|
||||
|
||||
kwargs['method'] = request.cookies.get('method', 'POST')
|
||||
|
||||
kwargs['safesearch'] = request.cookies.get('safesearch', '1')
|
||||
kwargs['safesearch'] = request.cookies.get('safesearch', str(settings['search']['safe_search']))
|
||||
|
||||
# override url_for function in templates
|
||||
kwargs['url_for'] = url_for_theme
|
||||
@ -383,7 +383,7 @@ def index():
|
||||
|
||||
plugins.call('post_search', request, locals())
|
||||
|
||||
for result in search.results:
|
||||
for result in search.result_container.get_ordered_results():
|
||||
|
||||
plugins.call('on_result', request, locals())
|
||||
if not search.paging and engines[result['engine']].paging:
|
||||
@ -411,7 +411,7 @@ def index():
|
||||
minutes = int((timedifference.seconds / 60) % 60)
|
||||
hours = int(timedifference.seconds / 60 / 60)
|
||||
if hours == 0:
|
||||
result['publishedDate'] = gettext(u'{minutes} minute(s) ago').format(minutes=minutes) # noqa
|
||||
result['publishedDate'] = gettext(u'{minutes} minute(s) ago').format(minutes=minutes)
|
||||
else:
|
||||
result['publishedDate'] = gettext(u'{hours} hour(s), {minutes} minute(s) ago').format(hours=hours, minutes=minutes) # noqa
|
||||
else:
|
||||
@ -419,14 +419,13 @@ def index():
|
||||
|
||||
if search.request_data.get('format') == 'json':
|
||||
return Response(json.dumps({'query': search.query,
|
||||
'results': search.results}),
|
||||
'results': search.result_container.get_ordered_results()}),
|
||||
mimetype='application/json')
|
||||
elif search.request_data.get('format') == 'csv':
|
||||
csv = UnicodeWriter(cStringIO.StringIO())
|
||||
keys = ('title', 'url', 'content', 'host', 'engine', 'score')
|
||||
if search.results:
|
||||
csv.writerow(keys)
|
||||
for row in search.results:
|
||||
for row in search.result_container.get_ordered_results():
|
||||
row['host'] = row['parsed_url'].netloc
|
||||
csv.writerow([row.get(key, '') for key in keys])
|
||||
csv.stream.seek(0)
|
||||
@ -437,24 +436,24 @@ def index():
|
||||
elif search.request_data.get('format') == 'rss':
|
||||
response_rss = render(
|
||||
'opensearch_response_rss.xml',
|
||||
results=search.results,
|
||||
results=search.result_container.get_ordered_results(),
|
||||
q=search.request_data['q'],
|
||||
number_of_results=len(search.results),
|
||||
number_of_results=search.result_container.results_length(),
|
||||
base_url=get_base_url()
|
||||
)
|
||||
return Response(response_rss, mimetype='text/xml')
|
||||
|
||||
return render(
|
||||
'results.html',
|
||||
results=search.results,
|
||||
results=search.result_container.get_ordered_results(),
|
||||
q=search.request_data['q'],
|
||||
selected_categories=search.categories,
|
||||
paging=search.paging,
|
||||
pageno=search.pageno,
|
||||
base_url=get_base_url(),
|
||||
suggestions=search.suggestions,
|
||||
answers=search.answers,
|
||||
infoboxes=search.infoboxes,
|
||||
suggestions=search.result_container.suggestions,
|
||||
answers=search.result_container.answers,
|
||||
infoboxes=search.result_container.infoboxes,
|
||||
theme=get_current_theme_name(),
|
||||
favicons=global_favicons[themes.index(get_current_theme_name())]
|
||||
)
|
||||
@ -491,7 +490,7 @@ def autocompleter():
|
||||
return '', 400
|
||||
|
||||
# run autocompleter
|
||||
completer = autocomplete_backends.get(request.cookies.get('autocomplete'))
|
||||
completer = autocomplete_backends.get(request.cookies.get('autocomplete', settings['search']['autocomplete']))
|
||||
|
||||
# parse searx specific autocompleter results like !bang
|
||||
raw_results = searx_bang(query)
|
||||
@ -532,7 +531,7 @@ def preferences():
|
||||
|
||||
blocked_engines = []
|
||||
|
||||
resp = make_response(redirect(url_for('index')))
|
||||
resp = make_response(redirect(urljoin(settings['server']['base_url'], url_for('index'))))
|
||||
|
||||
if request.method == 'GET':
|
||||
blocked_engines = get_blocked_engines(engines, request.cookies)
|
||||
@ -542,7 +541,7 @@ def preferences():
|
||||
locale = None
|
||||
autocomplete = ''
|
||||
method = 'POST'
|
||||
safesearch = '1'
|
||||
safesearch = settings['search']['safe_search']
|
||||
for pd_name, pd in request.form.items():
|
||||
if pd_name.startswith('category_'):
|
||||
category = pd_name[9:]
|
||||
@ -624,7 +623,7 @@ def preferences():
|
||||
|
||||
resp.set_cookie('method', method, max_age=cookie_max_age)
|
||||
|
||||
resp.set_cookie('safesearch', safesearch, max_age=cookie_max_age)
|
||||
resp.set_cookie('safesearch', str(safesearch), max_age=cookie_max_age)
|
||||
|
||||
resp.set_cookie('image_proxy', image_proxy, max_age=cookie_max_age)
|
||||
|
||||
@ -640,12 +639,12 @@ def preferences():
|
||||
stats[e.name] = {'time': None,
|
||||
'warn_timeout': False,
|
||||
'warn_time': False}
|
||||
if e.timeout > settings['server']['request_timeout']:
|
||||
if e.timeout > settings['outgoing']['request_timeout']:
|
||||
stats[e.name]['warn_timeout'] = True
|
||||
|
||||
for engine_stat in get_engines_stats()[0][1]:
|
||||
stats[engine_stat.get('name')]['time'] = round(engine_stat.get('avg'), 3)
|
||||
if engine_stat.get('avg') > settings['server']['request_timeout']:
|
||||
if engine_stat.get('avg') > settings['outgoing']['request_timeout']:
|
||||
stats[engine_stat.get('name')]['warn_time'] = True
|
||||
# end of stats
|
||||
|
||||
@ -683,7 +682,7 @@ def image_proxy():
|
||||
|
||||
resp = requests.get(url,
|
||||
stream=True,
|
||||
timeout=settings['server'].get('request_timeout', 2),
|
||||
timeout=settings['outgoing']['request_timeout'],
|
||||
headers=headers,
|
||||
proxies=outgoing_proxies)
|
||||
|
||||
@ -767,7 +766,7 @@ def favicon():
|
||||
|
||||
@app.route('/clear_cookies')
|
||||
def clear_cookies():
|
||||
resp = make_response(redirect(url_for('index')))
|
||||
resp = make_response(redirect(urljoin(settings['server']['base_url'], url_for('index'))))
|
||||
for cookie_name in request.cookies:
|
||||
resp.delete_cookie(cookie_name)
|
||||
return resp
|
||||
@ -775,9 +774,10 @@ def clear_cookies():
|
||||
|
||||
def run():
|
||||
app.run(
|
||||
debug=settings['server']['debug'],
|
||||
use_debugger=settings['server']['debug'],
|
||||
port=settings['server']['port']
|
||||
debug=settings['general']['debug'],
|
||||
use_debugger=settings['general']['debug'],
|
||||
port=settings['server']['port'],
|
||||
host=settings['server']['bind_address']
|
||||
)
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user