mirror of
https://github.com/explosion/spaCy.git
synced 2024-12-24 17:06:29 +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",
|
||||
"hu": "Hungarian",
|
||||
"pl": "Polish",
|
||||
"ro": "Romanian",
|
||||
"hr": "Croatian",
|
||||
"he": "Hebrew",
|
||||
"ga": "Irish",
|
||||
"bn": "Bengali",
|
||||
|
|
Loading…
Reference in New Issue
Block a user