35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
if (sVerb.endsWith("re")) {
return "3";
}
return "4";
},
getConjRules: function (sVerb, bVarPpas=true, nGroup=2) {
let lConj = null;
let sVarPpas = (bVarPpas) ? "true" : "false";
if (sVerb.endsWith("er")) {
// premier groupe, conjugaison en fonction de la terminaison du lemme
// 5 lettres
if (sVerb.slice(-5) in this.oConj["V1"]) {
lConj = this.oConj["V1"][sVerb.slice(-5)];
}
// 4 lettres
else if (sVerb.slice(-4) in this.oConj["V1"]) {
if (sVerb.endsWith("eler") || sVerb.endsWith("eter")) {
lConj = this.oConj["V1"][sVerb.slice(-4)]["1"];
} else {
lConj = this.oConj["V1"][sVerb.slice(-4)];
}
}
// 3 lettres
else if (sVerb.slice(-3) in this.oConj["V1"]) {
lConj = this.oConj["V1"][sVerb.slice(-3)];
}
// 2 lettres
else {
lConj = this.oConj["V1"]["er"];
}
//console.log(lConj);
//console.log(this.oConj["V1_ppas"][sVarPpas]);
lConj.push(...this.oConj["V1_ppas"][sVarPpas]);
} else if (sVerb.endsWith("ir") && nGroup <= 2) {
// deuxième groupe
lConj = this.oConj["V2"];
lConj.push(...this.oConj["V2_ppas"][sVarPpas]);
} else {
// TODO: troisième groupe
lConj = [ [0, "", ":Y/*", false] ];
}
return lConj;
},
oConj: {
|
>
|
|
|
|
|
<
<
>
|
|
>
|
|
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
|
if (sVerb.endsWith("re")) {
return "3";
}
return "4";
},
getConjRules: function (sVerb, bVarPpas=true, nGroup=2) {
// .slice(0): clone an Array
let lConj = null;
let sVarPpas = (bVarPpas) ? "true" : "false";
if (sVerb.endsWith("er")) {
// premier groupe, conjugaison en fonction de la terminaison du lemme
// 5 lettres
if (sVerb.slice(-5) in this.oConj["V1"]) {
lConj = this.oConj["V1"][sVerb.slice(-5)].slice(0);
}
// 4 lettres
else if (sVerb.slice(-4) in this.oConj["V1"]) {
if (sVerb.endsWith("eler") || sVerb.endsWith("eter")) {
lConj = this.oConj["V1"][sVerb.slice(-4)]["1"].slice(0);
} else {
lConj = this.oConj["V1"][sVerb.slice(-4)].slice(0);
}
}
// 3 lettres
else if (sVerb.slice(-3) in this.oConj["V1"]) {
lConj = this.oConj["V1"][sVerb.slice(-3)].slice(0);
}
// 2 lettres
else {
lConj = this.oConj["V1"]["er"].slice(0);
}
lConj.push(...this.oConj["V1_ppas"][sVarPpas]);
}
else if (sVerb.endsWith("ir") && nGroup <= 2) {
// deuxième groupe
lConj = this.oConj["V2"].slice(0);
lConj.push(...this.oConj["V2_ppas"][sVarPpas]);
}
else {
// TODO: troisième groupe
lConj = [ [0, "", ":Y/*", false] ];
}
return lConj;
},
oConj: {
|