83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
// returns raw informations about sVerb
if (!_dVerb.hasOwnProperty(sVerb)) {
return null;
}
return _lVtyp[_dVerb[sVerb][0]];
}
function getSimil (sWord, sMorph) {
if (!sMorph.includes(":V")) {
return new Set();
}
let sInfi = sMorph.slice(1, sMorph.indexOf(" "));
let tTags = _getTags(sInfi);
let aSugg = new Set();
if (sMorph.includes(":Q")) {
// we suggest conjugated forms
if (sMorph.includes(":V1")) {
aSugg.add(sInfi);
aSugg.add(_getConjWithTags(sInfi, tTags, ":Ip", ":3s"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":Ip", ":2p"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":Iq", ":1s"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":Iq", ":3s"));
|
|
|
|
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
|
// returns raw informations about sVerb
if (!_dVerb.hasOwnProperty(sVerb)) {
return null;
}
return _lVtyp[_dVerb[sVerb][0]];
}
function getSimil (sWord, sMorph, sFilter=null) {
if (!sMorph.includes(":V")) {
return new Set();
}
let sInfi = sMorph.slice(1, sMorph.indexOf(" "));
let tTags = _getTags(sInfi);
let aSugg = new Set();
if (sMorph.includes(":Q") || sMorph.includes(":Y")) {
// we suggest conjugated forms
if (sMorph.includes(":V1")) {
aSugg.add(sInfi);
aSugg.add(_getConjWithTags(sInfi, tTags, ":Ip", ":3s"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":Ip", ":2p"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":Iq", ":1s"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":Iq", ":3s"));
|
125
126
127
128
129
130
131
132
133
134
135
136
137
138
|
aSugg.add(_getConjWithTags(sInfi, tTags, ":PQ", ":Q2"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":PQ", ":Q3"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":PQ", ":Q4"));
aSugg.delete("");
// if there is only one past participle (epi inv), unreliable.
if (aSugg.size === 1) {
aSugg.clear();
}
}
return aSugg;
}
function _getTags (sVerb) {
|
>
>
>
|
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
|
aSugg.add(_getConjWithTags(sInfi, tTags, ":PQ", ":Q2"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":PQ", ":Q3"));
aSugg.add(_getConjWithTags(sInfi, tTags, ":PQ", ":Q4"));
aSugg.delete("");
// if there is only one past participle (epi inv), unreliable.
if (aSugg.size === 1) {
aSugg.clear();
}
if (sMorph.includes(":V1")) {
aSugg.add(sInfi);
}
}
return aSugg;
}
function _getTags (sVerb) {
|