mirror of
https://github.com/sphinx-doc/sphinx.git
synced 2025-02-25 18:55:22 -06:00
add 14 languages search support
This commit is contained in:
parent
e5f58d686e
commit
a01e56fde9
2
setup.py
2
setup.py
@ -44,7 +44,7 @@ A development egg can be found `here
|
|||||||
<http://bitbucket.org/birkenfeld/sphinx/get/tip.gz#egg=Sphinx-dev>`_.
|
<http://bitbucket.org/birkenfeld/sphinx/get/tip.gz#egg=Sphinx-dev>`_.
|
||||||
'''
|
'''
|
||||||
|
|
||||||
requires = ['Pygments>=1.2', 'docutils>=0.7']
|
requires = ['Pygments>=1.2', 'docutils>=0.7', 'snowballstemmer>=1.1']
|
||||||
|
|
||||||
if sys.version_info[:3] >= (3, 3, 0):
|
if sys.version_info[:3] >= (3, 3, 0):
|
||||||
requires[1] = 'docutils>=0.10'
|
requires[1] = 'docutils>=0.10'
|
||||||
|
31
sphinx/search/da.py
Normal file
31
sphinx/search/da.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/de.py
Normal file
31
sphinx/search/de.py
Normal file
File diff suppressed because one or more lines are too long
@ -15,10 +15,15 @@ try:
|
|||||||
# http://bitbucket.org/methane/porterstemmer/
|
# http://bitbucket.org/methane/porterstemmer/
|
||||||
from porterstemmer import Stemmer as CStemmer
|
from porterstemmer import Stemmer as CStemmer
|
||||||
CSTEMMER = True
|
CSTEMMER = True
|
||||||
|
PYSTEMMER = False
|
||||||
|
except ImportError:
|
||||||
|
CSTEMMER = False
|
||||||
|
try:
|
||||||
|
from Stemmer import Stemmer as PyStemmer
|
||||||
|
PYSTEMMER = True
|
||||||
except ImportError:
|
except ImportError:
|
||||||
from sphinx.util.stemmer import PorterStemmer
|
from sphinx.util.stemmer import PorterStemmer
|
||||||
CSTEMMER = False
|
PYSTEMMER = False
|
||||||
|
|
||||||
|
|
||||||
english_stopwords = set("""
|
english_stopwords = set("""
|
||||||
a and are as at
|
a and are as at
|
||||||
@ -229,6 +234,13 @@ class SearchEnglish(SearchLanguage):
|
|||||||
class Stemmer(CStemmer):
|
class Stemmer(CStemmer):
|
||||||
def stem(self, word):
|
def stem(self, word):
|
||||||
return self(word.lower())
|
return self(word.lower())
|
||||||
|
elif PYSTEMMER:
|
||||||
|
class Stemmer(object):
|
||||||
|
def __init__(self):
|
||||||
|
self.stemmer = PyStemmer('porter')
|
||||||
|
|
||||||
|
def stem(self, word):
|
||||||
|
return self.stemmer.stemWord(word)
|
||||||
else:
|
else:
|
||||||
class Stemmer(PorterStemmer):
|
class Stemmer(PorterStemmer):
|
||||||
"""All those porter stemmer implementations look hideous;
|
"""All those porter stemmer implementations look hideous;
|
||||||
|
31
sphinx/search/es.py
Normal file
31
sphinx/search/es.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/fi.py
Normal file
31
sphinx/search/fi.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/fr.py
Normal file
31
sphinx/search/fr.py
Normal file
File diff suppressed because one or more lines are too long
32
sphinx/search/hu.py
Normal file
32
sphinx/search/hu.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/it.py
Normal file
31
sphinx/search/it.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/nl.py
Normal file
31
sphinx/search/nl.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/no.py
Normal file
31
sphinx/search/no.py
Normal file
File diff suppressed because one or more lines are too long
32
sphinx/search/pt.py
Normal file
32
sphinx/search/pt.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/ro.py
Normal file
31
sphinx/search/ro.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/ru.py
Normal file
31
sphinx/search/ru.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/sv.py
Normal file
31
sphinx/search/sv.py
Normal file
File diff suppressed because one or more lines are too long
31
sphinx/search/tr.py
Normal file
31
sphinx/search/tr.py
Normal file
File diff suppressed because one or more lines are too long
Loading…
Reference in New Issue
Block a user