mirror of
https://github.com/explosion/spaCy.git
synced 2025-01-12 10:16:27 +03:00
Add Romanian and Croatian skeletons (experimental)
Add language data templates to make it easier for others to contribute to the language support
This commit is contained in:
parent
18c859500b
commit
c6fea3e5f6
27
spacy/lang/hr/__init__.py
Normal file
27
spacy/lang/hr/__init__.py
Normal file
|
@ -0,0 +1,27 @@
|
||||||
|
# coding: utf8
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from .stop_words import STOP_WORDS
|
||||||
|
|
||||||
|
from ..tokenizer_exceptions import BASE_EXCEPTIONS
|
||||||
|
from ..norm_exceptions import BASE_NORMS
|
||||||
|
from ...language import Language
|
||||||
|
from ...attrs import LANG, NORM
|
||||||
|
from ...util import update_exc, add_lookups
|
||||||
|
|
||||||
|
|
||||||
|
class CroatianDefaults(Language.Defaults):
|
||||||
|
lex_attr_getters = dict(Language.Defaults.lex_attr_getters)
|
||||||
|
lex_attr_getters[LANG] = lambda text: 'hr'
|
||||||
|
lex_attr_getters[NORM] = add_lookups(Language.Defaults.lex_attr_getters[NORM], BASE_NORMS)
|
||||||
|
tokenizer_exceptions = update_exc(BASE_EXCEPTIONS)
|
||||||
|
stop_words = STOP_WORDS
|
||||||
|
|
||||||
|
|
||||||
|
class Croatian(Language):
|
||||||
|
lang = 'hr'
|
||||||
|
Defaults = CroatianDefaults
|
||||||
|
|
||||||
|
|
||||||
|
__all__ = ['Croatian']
|
||||||
|
|
187
spacy/lang/hr/stop_words.py
Normal file
187
spacy/lang/hr/stop_words.py
Normal file
|
@ -0,0 +1,187 @@
|
||||||
|
# encoding: utf8
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
|
||||||
|
# Source: https://github.com/stopwords-iso/stopwords-hr
|
||||||
|
|
||||||
|
STOP_WORDS = set("""
|
||||||
|
a
|
||||||
|
ako
|
||||||
|
ali
|
||||||
|
bi
|
||||||
|
bih
|
||||||
|
bila
|
||||||
|
bili
|
||||||
|
bilo
|
||||||
|
bio
|
||||||
|
bismo
|
||||||
|
biste
|
||||||
|
biti
|
||||||
|
bumo
|
||||||
|
da
|
||||||
|
do
|
||||||
|
duž
|
||||||
|
ga
|
||||||
|
hoće
|
||||||
|
hoćemo
|
||||||
|
hoćete
|
||||||
|
hoćeš
|
||||||
|
hoću
|
||||||
|
i
|
||||||
|
iako
|
||||||
|
ih
|
||||||
|
ili
|
||||||
|
iz
|
||||||
|
ja
|
||||||
|
je
|
||||||
|
jedna
|
||||||
|
jedne
|
||||||
|
jedno
|
||||||
|
jer
|
||||||
|
jesam
|
||||||
|
jesi
|
||||||
|
jesmo
|
||||||
|
jest
|
||||||
|
jeste
|
||||||
|
jesu
|
||||||
|
jim
|
||||||
|
joj
|
||||||
|
još
|
||||||
|
ju
|
||||||
|
kada
|
||||||
|
kako
|
||||||
|
kao
|
||||||
|
koja
|
||||||
|
koje
|
||||||
|
koji
|
||||||
|
kojima
|
||||||
|
koju
|
||||||
|
kroz
|
||||||
|
li
|
||||||
|
me
|
||||||
|
mene
|
||||||
|
meni
|
||||||
|
mi
|
||||||
|
mimo
|
||||||
|
moj
|
||||||
|
moja
|
||||||
|
moje
|
||||||
|
mu
|
||||||
|
na
|
||||||
|
nad
|
||||||
|
nakon
|
||||||
|
nam
|
||||||
|
nama
|
||||||
|
nas
|
||||||
|
naš
|
||||||
|
naša
|
||||||
|
naše
|
||||||
|
našeg
|
||||||
|
ne
|
||||||
|
nego
|
||||||
|
neka
|
||||||
|
neki
|
||||||
|
nekog
|
||||||
|
neku
|
||||||
|
nema
|
||||||
|
netko
|
||||||
|
neće
|
||||||
|
nećemo
|
||||||
|
nećete
|
||||||
|
nećeš
|
||||||
|
neću
|
||||||
|
nešto
|
||||||
|
ni
|
||||||
|
nije
|
||||||
|
nikoga
|
||||||
|
nikoje
|
||||||
|
nikoju
|
||||||
|
nisam
|
||||||
|
nisi
|
||||||
|
nismo
|
||||||
|
niste
|
||||||
|
nisu
|
||||||
|
njega
|
||||||
|
njegov
|
||||||
|
njegova
|
||||||
|
njegovo
|
||||||
|
njemu
|
||||||
|
njezin
|
||||||
|
njezina
|
||||||
|
njezino
|
||||||
|
njih
|
||||||
|
njihov
|
||||||
|
njihova
|
||||||
|
njihovo
|
||||||
|
njim
|
||||||
|
njima
|
||||||
|
njoj
|
||||||
|
nju
|
||||||
|
no
|
||||||
|
o
|
||||||
|
od
|
||||||
|
odmah
|
||||||
|
on
|
||||||
|
ona
|
||||||
|
oni
|
||||||
|
ono
|
||||||
|
ova
|
||||||
|
pa
|
||||||
|
pak
|
||||||
|
po
|
||||||
|
pod
|
||||||
|
pored
|
||||||
|
prije
|
||||||
|
s
|
||||||
|
sa
|
||||||
|
sam
|
||||||
|
samo
|
||||||
|
se
|
||||||
|
sebe
|
||||||
|
sebi
|
||||||
|
si
|
||||||
|
smo
|
||||||
|
ste
|
||||||
|
su
|
||||||
|
sve
|
||||||
|
svi
|
||||||
|
svog
|
||||||
|
svoj
|
||||||
|
svoja
|
||||||
|
svoje
|
||||||
|
svom
|
||||||
|
ta
|
||||||
|
tada
|
||||||
|
taj
|
||||||
|
tako
|
||||||
|
te
|
||||||
|
tebe
|
||||||
|
tebi
|
||||||
|
ti
|
||||||
|
to
|
||||||
|
toj
|
||||||
|
tome
|
||||||
|
tu
|
||||||
|
tvoj
|
||||||
|
tvoja
|
||||||
|
tvoje
|
||||||
|
u
|
||||||
|
uz
|
||||||
|
vam
|
||||||
|
vama
|
||||||
|
vas
|
||||||
|
vaš
|
||||||
|
vaša
|
||||||
|
vaše
|
||||||
|
već
|
||||||
|
vi
|
||||||
|
vrlo
|
||||||
|
za
|
||||||
|
zar
|
||||||
|
će
|
||||||
|
ćemo
|
||||||
|
ćete
|
||||||
|
ćeš
|
||||||
|
ću
|
||||||
|
što
|
||||||
|
""".split())
|
28
spacy/lang/ro/__init__.py
Normal file
28
spacy/lang/ro/__init__.py
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
# coding: utf8
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from .tokenizer_exceptions import TOKENIZER_EXCEPTIONS
|
||||||
|
from .stop_words import STOP_WORDS
|
||||||
|
|
||||||
|
from ..tokenizer_exceptions import BASE_EXCEPTIONS
|
||||||
|
from ..norm_exceptions import BASE_NORMS
|
||||||
|
from ...language import Language
|
||||||
|
from ...attrs import LANG, NORM
|
||||||
|
from ...util import update_exc, add_lookups
|
||||||
|
|
||||||
|
|
||||||
|
class RomanianDefaults(Language.Defaults):
|
||||||
|
lex_attr_getters = dict(Language.Defaults.lex_attr_getters)
|
||||||
|
lex_attr_getters[LANG] = lambda text: 'ro'
|
||||||
|
lex_attr_getters[NORM] = add_lookups(Language.Defaults.lex_attr_getters[NORM], BASE_NORMS)
|
||||||
|
tokenizer_exceptions = update_exc(BASE_EXCEPTIONS, TOKENIZER_EXCEPTIONS)
|
||||||
|
stop_words = STOP_WORDS
|
||||||
|
|
||||||
|
|
||||||
|
class Romanian(Language):
|
||||||
|
lang = 'ro'
|
||||||
|
Defaults = RomanianDefaults
|
||||||
|
|
||||||
|
|
||||||
|
__all__ = ['Romanian']
|
||||||
|
|
442
spacy/lang/ro/stop_words.py
Normal file
442
spacy/lang/ro/stop_words.py
Normal file
|
@ -0,0 +1,442 @@
|
||||||
|
# encoding: utf8
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
|
||||||
|
# Source: https://github.com/stopwords-iso/stopwords-ro
|
||||||
|
|
||||||
|
STOP_WORDS = set("""
|
||||||
|
a
|
||||||
|
abia
|
||||||
|
acea
|
||||||
|
aceasta
|
||||||
|
această
|
||||||
|
aceea
|
||||||
|
aceeasi
|
||||||
|
acei
|
||||||
|
aceia
|
||||||
|
acel
|
||||||
|
acela
|
||||||
|
acelasi
|
||||||
|
acele
|
||||||
|
acelea
|
||||||
|
acest
|
||||||
|
acesta
|
||||||
|
aceste
|
||||||
|
acestea
|
||||||
|
acestei
|
||||||
|
acestia
|
||||||
|
acestui
|
||||||
|
aceşti
|
||||||
|
aceştia
|
||||||
|
acolo
|
||||||
|
acord
|
||||||
|
acum
|
||||||
|
adica
|
||||||
|
ai
|
||||||
|
aia
|
||||||
|
aibă
|
||||||
|
aici
|
||||||
|
aiurea
|
||||||
|
al
|
||||||
|
ala
|
||||||
|
alaturi
|
||||||
|
ale
|
||||||
|
alea
|
||||||
|
alt
|
||||||
|
alta
|
||||||
|
altceva
|
||||||
|
altcineva
|
||||||
|
alte
|
||||||
|
altfel
|
||||||
|
alti
|
||||||
|
altii
|
||||||
|
altul
|
||||||
|
am
|
||||||
|
anume
|
||||||
|
apoi
|
||||||
|
ar
|
||||||
|
are
|
||||||
|
as
|
||||||
|
asa
|
||||||
|
asemenea
|
||||||
|
asta
|
||||||
|
astazi
|
||||||
|
astea
|
||||||
|
astfel
|
||||||
|
astăzi
|
||||||
|
asupra
|
||||||
|
atare
|
||||||
|
atat
|
||||||
|
atata
|
||||||
|
atatea
|
||||||
|
atatia
|
||||||
|
ati
|
||||||
|
atit
|
||||||
|
atita
|
||||||
|
atitea
|
||||||
|
atitia
|
||||||
|
atunci
|
||||||
|
au
|
||||||
|
avea
|
||||||
|
avem
|
||||||
|
aveţi
|
||||||
|
avut
|
||||||
|
azi
|
||||||
|
aş
|
||||||
|
aşadar
|
||||||
|
aţi
|
||||||
|
b
|
||||||
|
ba
|
||||||
|
bine
|
||||||
|
bucur
|
||||||
|
bună
|
||||||
|
c
|
||||||
|
ca
|
||||||
|
cam
|
||||||
|
cand
|
||||||
|
capat
|
||||||
|
care
|
||||||
|
careia
|
||||||
|
carora
|
||||||
|
caruia
|
||||||
|
cat
|
||||||
|
catre
|
||||||
|
caut
|
||||||
|
ce
|
||||||
|
cea
|
||||||
|
ceea
|
||||||
|
cei
|
||||||
|
ceilalti
|
||||||
|
cel
|
||||||
|
cele
|
||||||
|
celor
|
||||||
|
ceva
|
||||||
|
chiar
|
||||||
|
ci
|
||||||
|
cinci
|
||||||
|
cind
|
||||||
|
cine
|
||||||
|
cineva
|
||||||
|
cit
|
||||||
|
cita
|
||||||
|
cite
|
||||||
|
citeva
|
||||||
|
citi
|
||||||
|
citiva
|
||||||
|
conform
|
||||||
|
contra
|
||||||
|
cu
|
||||||
|
cui
|
||||||
|
cum
|
||||||
|
cumva
|
||||||
|
curând
|
||||||
|
curînd
|
||||||
|
când
|
||||||
|
cât
|
||||||
|
câte
|
||||||
|
câtva
|
||||||
|
câţi
|
||||||
|
cînd
|
||||||
|
cît
|
||||||
|
cîte
|
||||||
|
cîtva
|
||||||
|
cîţi
|
||||||
|
că
|
||||||
|
căci
|
||||||
|
cărei
|
||||||
|
căror
|
||||||
|
cărui
|
||||||
|
către
|
||||||
|
d
|
||||||
|
da
|
||||||
|
daca
|
||||||
|
dacă
|
||||||
|
dar
|
||||||
|
dat
|
||||||
|
datorită
|
||||||
|
dată
|
||||||
|
dau
|
||||||
|
de
|
||||||
|
deasupra
|
||||||
|
deci
|
||||||
|
decit
|
||||||
|
degraba
|
||||||
|
deja
|
||||||
|
deoarece
|
||||||
|
departe
|
||||||
|
desi
|
||||||
|
despre
|
||||||
|
deşi
|
||||||
|
din
|
||||||
|
dinaintea
|
||||||
|
dintr
|
||||||
|
dintr-
|
||||||
|
dintre
|
||||||
|
doar
|
||||||
|
doi
|
||||||
|
doilea
|
||||||
|
două
|
||||||
|
drept
|
||||||
|
dupa
|
||||||
|
după
|
||||||
|
dă
|
||||||
|
e
|
||||||
|
ea
|
||||||
|
ei
|
||||||
|
el
|
||||||
|
ele
|
||||||
|
era
|
||||||
|
eram
|
||||||
|
este
|
||||||
|
eu
|
||||||
|
exact
|
||||||
|
eşti
|
||||||
|
f
|
||||||
|
face
|
||||||
|
fara
|
||||||
|
fata
|
||||||
|
fel
|
||||||
|
fi
|
||||||
|
fie
|
||||||
|
fiecare
|
||||||
|
fii
|
||||||
|
fim
|
||||||
|
fiu
|
||||||
|
fiţi
|
||||||
|
foarte
|
||||||
|
fost
|
||||||
|
frumos
|
||||||
|
fără
|
||||||
|
g
|
||||||
|
geaba
|
||||||
|
graţie
|
||||||
|
h
|
||||||
|
halbă
|
||||||
|
i
|
||||||
|
ia
|
||||||
|
iar
|
||||||
|
ieri
|
||||||
|
ii
|
||||||
|
il
|
||||||
|
imi
|
||||||
|
in
|
||||||
|
inainte
|
||||||
|
inapoi
|
||||||
|
inca
|
||||||
|
incit
|
||||||
|
insa
|
||||||
|
intr
|
||||||
|
intre
|
||||||
|
isi
|
||||||
|
iti
|
||||||
|
j
|
||||||
|
k
|
||||||
|
l
|
||||||
|
la
|
||||||
|
le
|
||||||
|
li
|
||||||
|
lor
|
||||||
|
lui
|
||||||
|
lângă
|
||||||
|
lîngă
|
||||||
|
m
|
||||||
|
ma
|
||||||
|
mai
|
||||||
|
mare
|
||||||
|
mea
|
||||||
|
mei
|
||||||
|
mele
|
||||||
|
mereu
|
||||||
|
meu
|
||||||
|
mi
|
||||||
|
mie
|
||||||
|
mine
|
||||||
|
mod
|
||||||
|
mult
|
||||||
|
multa
|
||||||
|
multe
|
||||||
|
multi
|
||||||
|
multă
|
||||||
|
mulţi
|
||||||
|
mulţumesc
|
||||||
|
mâine
|
||||||
|
mîine
|
||||||
|
mă
|
||||||
|
n
|
||||||
|
ne
|
||||||
|
nevoie
|
||||||
|
ni
|
||||||
|
nici
|
||||||
|
niciodata
|
||||||
|
nicăieri
|
||||||
|
nimeni
|
||||||
|
nimeri
|
||||||
|
nimic
|
||||||
|
niste
|
||||||
|
nişte
|
||||||
|
noastre
|
||||||
|
noastră
|
||||||
|
noi
|
||||||
|
noroc
|
||||||
|
nostri
|
||||||
|
nostru
|
||||||
|
nou
|
||||||
|
noua
|
||||||
|
nouă
|
||||||
|
noştri
|
||||||
|
nu
|
||||||
|
numai
|
||||||
|
o
|
||||||
|
opt
|
||||||
|
or
|
||||||
|
ori
|
||||||
|
oricare
|
||||||
|
orice
|
||||||
|
oricine
|
||||||
|
oricum
|
||||||
|
oricând
|
||||||
|
oricât
|
||||||
|
oricînd
|
||||||
|
oricît
|
||||||
|
oriunde
|
||||||
|
p
|
||||||
|
pai
|
||||||
|
parca
|
||||||
|
patra
|
||||||
|
patru
|
||||||
|
patrulea
|
||||||
|
pe
|
||||||
|
pentru
|
||||||
|
peste
|
||||||
|
pic
|
||||||
|
pina
|
||||||
|
plus
|
||||||
|
poate
|
||||||
|
pot
|
||||||
|
prea
|
||||||
|
prima
|
||||||
|
primul
|
||||||
|
prin
|
||||||
|
printr-
|
||||||
|
putini
|
||||||
|
puţin
|
||||||
|
puţina
|
||||||
|
puţină
|
||||||
|
până
|
||||||
|
pînă
|
||||||
|
r
|
||||||
|
rog
|
||||||
|
s
|
||||||
|
sa
|
||||||
|
sa-mi
|
||||||
|
sa-ti
|
||||||
|
sai
|
||||||
|
sale
|
||||||
|
sau
|
||||||
|
se
|
||||||
|
si
|
||||||
|
sint
|
||||||
|
sintem
|
||||||
|
spate
|
||||||
|
spre
|
||||||
|
sub
|
||||||
|
sunt
|
||||||
|
suntem
|
||||||
|
sunteţi
|
||||||
|
sus
|
||||||
|
sută
|
||||||
|
sînt
|
||||||
|
sîntem
|
||||||
|
sînteţi
|
||||||
|
să
|
||||||
|
săi
|
||||||
|
său
|
||||||
|
t
|
||||||
|
ta
|
||||||
|
tale
|
||||||
|
te
|
||||||
|
ti
|
||||||
|
timp
|
||||||
|
tine
|
||||||
|
toata
|
||||||
|
toate
|
||||||
|
toată
|
||||||
|
tocmai
|
||||||
|
tot
|
||||||
|
toti
|
||||||
|
totul
|
||||||
|
totusi
|
||||||
|
totuşi
|
||||||
|
toţi
|
||||||
|
trei
|
||||||
|
treia
|
||||||
|
treilea
|
||||||
|
tu
|
||||||
|
tuturor
|
||||||
|
tăi
|
||||||
|
tău
|
||||||
|
u
|
||||||
|
ul
|
||||||
|
ului
|
||||||
|
un
|
||||||
|
una
|
||||||
|
unde
|
||||||
|
undeva
|
||||||
|
unei
|
||||||
|
uneia
|
||||||
|
unele
|
||||||
|
uneori
|
||||||
|
unii
|
||||||
|
unor
|
||||||
|
unora
|
||||||
|
unu
|
||||||
|
unui
|
||||||
|
unuia
|
||||||
|
unul
|
||||||
|
v
|
||||||
|
va
|
||||||
|
vi
|
||||||
|
voastre
|
||||||
|
voastră
|
||||||
|
voi
|
||||||
|
vom
|
||||||
|
vor
|
||||||
|
vostru
|
||||||
|
vouă
|
||||||
|
voştri
|
||||||
|
vreme
|
||||||
|
vreo
|
||||||
|
vreun
|
||||||
|
vă
|
||||||
|
x
|
||||||
|
z
|
||||||
|
zece
|
||||||
|
zero
|
||||||
|
zi
|
||||||
|
zice
|
||||||
|
îi
|
||||||
|
îl
|
||||||
|
îmi
|
||||||
|
împotriva
|
||||||
|
în
|
||||||
|
înainte
|
||||||
|
înaintea
|
||||||
|
încotro
|
||||||
|
încât
|
||||||
|
încît
|
||||||
|
între
|
||||||
|
întrucât
|
||||||
|
întrucît
|
||||||
|
îţi
|
||||||
|
ăla
|
||||||
|
ălea
|
||||||
|
ăsta
|
||||||
|
ăstea
|
||||||
|
ăştia
|
||||||
|
şapte
|
||||||
|
şase
|
||||||
|
şi
|
||||||
|
ştiu
|
||||||
|
ţi
|
||||||
|
ţie
|
||||||
|
""".split())
|
17
spacy/lang/ro/tokenizer_exceptions.py
Normal file
17
spacy/lang/ro/tokenizer_exceptions.py
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
# coding: utf8
|
||||||
|
from __future__ import unicode_literals
|
||||||
|
|
||||||
|
from ...symbols import ORTH
|
||||||
|
|
||||||
|
|
||||||
|
_exc = {}
|
||||||
|
|
||||||
|
|
||||||
|
# Source: https://en.wiktionary.org/wiki/Category:Romanian_abbreviations
|
||||||
|
for orth in [
|
||||||
|
"1-a", "1-ul", "10-a", "10-lea", "2-a", "3-a", "3-lea", "6-lea",
|
||||||
|
"d-voastră", "dvs.", "Rom.", "str."]:
|
||||||
|
_exc[orth] = [{ORTH: orth}]
|
||||||
|
|
||||||
|
|
||||||
|
TOKENIZER_EXCEPTIONS = _exc
|
|
@ -100,6 +100,8 @@
|
||||||
"da": "Danish",
|
"da": "Danish",
|
||||||
"hu": "Hungarian",
|
"hu": "Hungarian",
|
||||||
"pl": "Polish",
|
"pl": "Polish",
|
||||||
|
"ro": "Romanian",
|
||||||
|
"hr": "Croatian",
|
||||||
"he": "Hebrew",
|
"he": "Hebrew",
|
||||||
"ga": "Irish",
|
"ga": "Irish",
|
||||||
"bn": "Bengali",
|
"bn": "Bengali",
|
||||||
|
|
Loading…
Reference in New Issue
Block a user