Strukturo de Espvortaroj

v2.0 (2014-08-01)
Tiu ĉi dosiero klarigas agordojn en "js/init.js", lingvajn dosierojn, kaj vortaran formaton.
Ĉiuj dosieroj devas esti koditaj per la signaro UTF-8.

1. Agordoj de vortaroj

Vortaroj uzataj devas esti difinitaj kun la variablo dictionaries en js/init.js. Jen estas unu elemento de dictionaries:
    NAME_ID: {
        name:"○○○○", edition:"△△△△",
        dict_js:"□□□.js", text:"xxx", color:"***",
        dict:null, conv1:null, conv2:null, makeEntry:null, makeDef:null
        },
Atributoj de la elemento
NAME_ID : Identigilo por referenci la vortaron.
name : Montra nomo
edition : Redaktoro, Versio, Jaro de eldono, ktp.
dict_js : Dosiernomo de vortaro. (Ref. 3. Vortaraj dosieroj malsupre)
text : Tipo de vortarteksto: plainhtml  (Ĉi tiu atributo ne estas uzata en la programo. Okaze de html, uzu la funkcion makeDef_html por makeDef)
color : Fona koloro. Uzu formojn de CSS: [Ekz. "silver" kolornomo, "#rrggbb" RGB en deksesuma sistemo, "rgb(r,g,b)" RGB en dekuma/%] (v2.0 aŭ poste. Se nedifinita, la defaŭlta koloro estas uzata)
dict, conv1, conv2, makeEntry, makeDef : Datumoj de vortaro kaj funkcioj. Referencu la difinojn de vortaro. Ĉi tie atribuu null al ĉiuj.

* Vortaroj estos ŝarĝitaj dinamike (nur necesaj vortaroj, kiuj estis elektitaj sur la dialogujo "Elekti vortarojn", estos ŝarĝitaj en la memoron).

2. Komenca(j) vortaro(j)

Atribuu "NAME_ID" (menciita supre; duoblaj citiloj necesas) al la variablo defaultDicts en js/init.js, por komenci la aplikaĵon kun la vortaro(j), kiu(j) estos ŝarĝita(j) en la momento de startigo.
(metu NAME_IDoj en [...]; se pluraj, apartigu ilin per komoj.)
Se defaultDicts=[], la dialogujo "Elekti vortarojn" aperos en la momento de startigo.

3. Vortaraj dosieroj

Metu vortarajn dosierojn en la dosierujon "vortaroj". Oni devas atribui dosiernomon al la atributo dict_js menciita en 1. Agordoj de vortaroj.
En la vortara dosiero, oni difinas vortarajn datumojn kaj funkciojn:

[ Vortaraj datumoj ]

var DICT_DATA = [
	[...], (Interna Tabelo por unu kapvorto)
    ...
    ];
Tiu ĉi estas la tabelo de vortaraj datumoj, kiuj devas esti ordigitaj laŭ alfabeto. Uzu unikan nomon por DICT_DATA. La tabelo konsistas el Internaj Tabeloj en la sekvanta formo:
[Serĉato, Kapvorto, Enhavo (, alia datumo, ...)]
La elementoj [0], [1], [2] estas devigaj en tiu ordo. Serĉato estas signovico kiu estos serĉita per Kapvorto-serĉado. Kapvorto estas uzata por montrado. Kiam Serĉato kaj Kapvorto estas egalaj, Kapvorto povas esti "". La sekvantaj literoj en Enhavo devas esti transformitaj jene:
  \ (deklivo) → \\
  " (citilo) → \"
Okaze de HTML-teksto, la literoj sekvantaj devas esti transformitaj:
  & → &
  < → &lt;
  > → &lgt;
* linifino estas \n. Sed defaŭlte, ili ne aperos. Se vi volas aperigi linifinojn, skribu vian propran funkcion makeDef. Alternative, transformu la tekston al HTML-formaton (linifinon al <br>, kaj ankaŭ transformu signojn: & < >), kaj uzu makeDef_html.

Aliajn datumojn oni povas difini por klasigo, rilataj imagoj, ktp., kiuj estos montritaj per la funkcio makeDef klarigata en la sekvanta sekcio.

[ Funkcioj ]

var FUNCS = {
    conv1: function(schstr) { .... },
    conv2: function(schstr) { .... },
    makeEntry: function(entry, params, klass) { .... }
    makeDef: function(entry) { .... }
};
Tiuj estas funkciaj difinoj. Uzu unikan nomon por FUNCS.
[NOTO 1] Vi povas uzi la transformajn funkciojn jam difinitajn en js/regilo.js . Por speciala transformo oni devas skribi funkcion per si mem.
Jen la funkcioj pretaj:
* chapeligu(s) : Transformas s laŭ X-sistemo.
* romajiToHiragana(s) : Transformas latinajn literojn al hiragana.
* longToVowel(s) : Transformas signojn de japanaj longaj silaboj al vokalaj literoj.
* makeDef_html(entry) : Montras enhavon de entry en HTML-teksto.

[NOTO 2] Atribuu null al tiuj funkcioj por voki la defaŭltajn funkciojn:
Laste, nepre metu la jenan linion ĉe la plej malsupre.
callback("NAME_ID", DICT_DATA, FUNCS);

4. Agordoj de lingvo

La var lang_file en js/init.js havas la dosiernomon de lingvo kiun Espvortaroj uzas. La formo de la dosiernomo estas "lang_LL.js", kie LL estas la du-litera nomo difinita de ISO 639.1. Lingvaj dosieroj estas metita en la dosierujo "js".
Kiam lang_file=null, la lingvo estas elektita aŭtomate; se la rezulta lingvo (la du-litera nomo) troviĝas en var available_langs, tiu lingvo estos uzata; se ne troviĝas, Esperanto estos uzata. Kiam vi almetas lingvon, ne forgesu almeti la nomon ankaŭ en available_langs.
Vidu la enhavojn de ekzemplaj lingvaj dosieroj (lang_eo.js, lang_en.js, lang_ja.js).
Jen nur malneta klarigo de ĉefaj variabloj:
var lang_href_help : la nomo de Help-dosiero
var lang_button : nomoj de butonoj (identigiloj kaj atributaj valoroj de butonoj)
var lang_lbl : fiksitaj tekstoj (HTML-etikedaj identigiloj kaj siaj tekstoj)
var lang_str : uzata en javascript regilo.js
var lang_tips : aperos kiam la musmontrilo estas metita sur butonoj
Ĉe la plej malsupre, nepre skribu la jenan linion:
callback_lang();

5. Agordoj de opcioj

La komencaj valoroj de opcioj estas difinitaj en js/init.js .
var defaultOpts= {
    //search options (Serĉaj opcioj)
    maxSearchHistory: 20,  (Makximuma nombro de enigaj signovicoj en serĉhistorio)
    searchRange: "range_entries"(Kapvortoj) aŭ, "range_entiretext"(Tuta teksto)
    entrySearch: "match_prefix",(antaŭkongrua) aŭ, "match_partial"(partkongrua),
                  "match_complete"(tutkongrua)
    entiretext_wordSearch: false, aŭ, true (Vortserĉado en la tuta teksto)
	
    //display options (Montraj opcioj)
    showAfterSearch: true, aŭ, false (Montri enhavojn post serĉo)
    retain: false, aŭ true (Teni la montritaĵojn)
    usePool: false, aŭ true (Uzi la Akumulejon)
    colorize: false, aŭ true (Kolorigi laŭ vortaroj)
    howDisplayDefs: "prepend"(almeti supre),	aŭ "append"(almeti malsupre),
                 "showone" (montri nur la elektita)
    maxDefs: 100 (maksimuma nombro de montritaĵoj)

    //others
    font_family: "Tahoma, Times New Roman, sans-serif" (Tipara familio)
    font_size: "12pt"  (Tipara grando)
    list_width:150     (Larĝeco de la maldekstra rubriko [px])
    sort: "sort_esp" aŭ "sort_none", "sort_local"  (Ordigo)
    use_cookie: false aŭ true            ((Ne uzata nuntempe))
};

6. Defaŭltaj koloroj por vortaroj

Kiam var dictionaries ne havas la difinon de atributo color: , la sekvantaj koloroj estas uzataj laŭ la ordo de vortaroj.
Koloroj estas difinitaj en la CSS formoj: [Ekz. "silver" kolornomo, "#RRGGBB" RGB en desesuma sistemo, "rgb(R,G,B)" RGB en dekuma sistemo aŭ procentoj]

var bgcolors= [
  1 2 3 4 5 6 7 8 9 10

  11 12 13 14 15 16 17 18 19 20
];

Pri Espvortaroj

* Vi povas libere elŝuti kaj uzi la softvaron Espvortarojn senpage se la celo estas nekomerca (por komercaj uzadoj, kontaktu nin).
* Observu la licencon por ĉiu vortaro; vortaroj povas esti pagendaj.
* Ni transformos la formatojn de aliaj vortaroj por ebligi ilin uzi kun Espvortaroj, se la sekvantaj kondiĉoj plenumiĝas:
  1. La vortaro devas esti publika kaj senpaga.
  2. Ne troviĝas neniuj problemoj kun aŭtorrajto, licenco, ktp.
  3. La vortaro devas rilati al Esperanto.
(Ni donos konsilojn eĉ en aliaj kondiĉoj se ni trovis neceson.)
* Ŝanĝo-historio de Espvortaroj
* Kontaktu .
* La retpaĝo: esperanto.mond.jp - Verda Monteto
(2014-08-01)