-
Notifications
You must be signed in to change notification settings - Fork 3
Literoj kaj ordigo
Por redaktado kaj kreado de indeksoj necesas informi la programojn pri la apartaĵoj de la lingvoj.
La redaktiloj permesas aldoni kaj redakti lingvojn kun nelatina alfabeto aŭ specialaj literoj ankaŭ per ordinara angleca klavaro uzante simbolajn nomojn de literoj, vd. Literoj kaj ordigo
Ĝis 2020 ni uzis ankoraŭ la versi-administran programon CVS, kiu ne subtenas unikodon. Ankaŭ retpoŝt-serviloj kaj redaktiloj en pli fruaj jaroj ofte havis problemojn pri ĝi. Kun la transiro al versisistemo Git nun ne plu estas deviga motivo teni la fonto-tekstojn askiaj krom la supre menciita subteno de redaktado per ordinara klavaro.
Tiuj liternomoj estas difinitaj en dtd/vokosgn.dtd kaj cfg/literoj.xml
. Sed ili estas ankaŭ parto de la kodo de
redaktiloj voko-cetonio/pro/voko_entities.pl
- kreita per pro/loaddtd.pl:dtd2pl_entities
kaj voko-grundo/jsc/voko_entities.js
- kreita per la sama Porologprogramo, sed predikato dtd2json_entities
.
La supre menciita dokumento Literoj kaj ordigo estas kreita el cfg/ordigo2.xml
per XSL-transformo, vd. voko-formiko/ant/medio.xml:med-dok
.
Por aranĝi la indeksojn laŭ literoj necesas difini kiuj vortoj apartenas al kiuj literoj. Multaj lingvoj evoluis specialajn regulojn por tio. Ekz-e en la kimra la vortoj kun "ch" en la komenco aperas en aparta ĉapitro, en la germana vortoj kun "ä" estas enordigitaj sub la litero "a", dum en Esperanto "ĉ" formas apartan ĉapitron de "c".
En la dosiero cfg/ordigo2.xml
estas reguloj por tiuj lingvoj, kiuj devias de ordinara angla/latina/askia ĉapitrigo. Por ĉiu speciale agordita lingvo estas la listo de ĉapitraj literoj kaj por ĉiu ĉapitro litero la listo de vortaj literoj, kiu apartenas tien - aŭ litergrupoj kiel la supre meniccita "ch". Por informi, kiom da literoj en la vortkomenco necesas kompari aldoniĝas jen n="2"
aŭ n="3"
al la grupo. Krome ni devas informi pri la escepto de "ch" en la ĉapitro "c" per minus="ch"
.
Kelkaj lingvoj havas specialajn literojn/signojn, kiuj ne validas kiel literoj. Tiujn ni donas ekze per ignorendaj="เแโใไ"
en la taja. La nomo
de ĉiu ĉapitro estas mallonga latinlitera identigilo, kiu aperas en la dosiernomo de la indekso, do la dosiero lx_bg_b
enhavas la vortoj de la cirila б
. Ĉar ni komparas la vortkomencon kun la tuta grupo, sen atenti poiziciojn, por literkombinoj de n>1 necesas divida signo, ni uzas kutime komon, se tio ne uziĝas kiel litero en tiu lingvo.
Aziaj lingvoj kun silaba strukturo ofte havas konsiderinde pli komplikajn regulojn. Ni ne povas komplete realigi ilin momente, sed helpas nin per elturnoj kiom eble - vd. ekz-e la tibetan. Iam poste necesos aldoni algoritmon taŭgan por silabe organizitaj lingvoj.
La ordo de vortoj ene de indeksa ĉapitro uzas laŭeble la enkonstruitajn regulojn de Javo resp. Saxon-transformilo. Sed por kelkaj lingvoj ni difinis proprajn Javo-klasojn por aldoni mankantajn regulojn. Ili estas en la dosierujo voko-formiko/jav/de/steloj/respiro/
.
Se oni ŝanĝas resp. aldonas por iu lingvo ordigajn regulojn, tio okazas en voko-grundo
. Por ke la ŝanĝoj aperu ankaŭ en la publika servo ĉe reta-vortaro.de
necesas pluraj pliaj paŝoj:
- post aktualigo de voko-grundo ĉe Github oni devas rekrei novan procezujon
voko-formiko
. Plej facile oni atingas tion per puŝo de ŝanĝeto. Oni ekz-e povas aldoni spaceton enDockerfile
kaĵ pusi tion al Github. Rekreiĝas novadocker
-procezujo voko-formiko sed kun la etikedolatest
. Por ke ĝi uziĝu por la nokta aktualigo oni devas ŝanĝi la uzatan etikedon enrevo-fonto/.github/workflows/nightly-revo-update.yml
destabila
allatest
. - nur ŝanĝoj kaŭzitaj de diferencoj en la dosieroj (artikoloj kaj agordoj) sub revo-fonto kaŭzas ankaŭ aktualigojn ĉe
reta-vortaro.de
. Do plej bone oni fari ŝanĝetojn enrevo-fonto/cfg/enhavo.xml
ĉe la indeks-paĝoj_lng.html
kaj_plena.html
- ekz-e aldonante spaceton en iu titolo - por aktualigi la centran indekspaĝon dum la nokta kuro. - por aktualigi ankaŭ la indeksĉaptirojn de la unuopaj literoj necesas aldono aŭ ŝanĝoj en tradukoj sub tiuj ĉaptiroj. Alternative en la komenco oni devas rekalkuli la indeksojn loke, ekz-e per
revo-medioj/formikujo
rulante tieformiko inx-tuto
kaj kopii la rezultajn indeksojn de la ŝanĝita lingvo mane al la pulbika servilo. - kiam aldonoj de tradukoj aŭtomate aktualiĝas en la indeksoj kaj ĉio funkciadas glate nokton post nokto, oni movu la Git-markon
stabila
ĉe voko-formiko al la lasta stato, t.e.master/HEAD
kaj reŝanĝu en la skriptonightly-revo-update.yml
la etikedon alstabila
.