La retservo por Reta Vortaro, baziĝanta sur Apache httpd.
Pri la nomo: Reta Vortaro teksas reton inter la vortoj kaj fiksas ĝin ekstere per citaĵoj ĉe esperantaj verkoj simile kiel araneo konstruas araneaĵon.
La retservo por Reta Vortaro, baziĝanta sur Apache httpd
License: GNU General Public License v2.0
upviki.pl
ne fidinde funkcias kaj multobligas kelkajn kap-linojn (ekz. viv/, vespert/)
Pli bone reverki ĝin:
libxml2
por eviti problemojn kun sintakso/regex - (kp. voko-grundo/perl/merge_trd_xml.pl)Permesu helan kaj malhelan kolorskemon. Tion oni atingas difinante du diversajn kolorarojn den CSS :root elemento unu kiel @media (prefers-color-scheme: dark)
Vd. jamajn provojn en n1 / n1a.
Rearanĝu la retformularan redaktilon iom:
Permesu alnoti artikolojn - ekz-e markante ilin por posta redaktado. Ni povus utiligi tiucele tabelon: redaktanto-id, marko, noto. La notojn ni povus listigi apud "viaj submetoj".
Kiam oni redaktis la koncernan artikolon, ĝin ni marko per progres-vinjeto kaj semajnon post la lasta tuŝo ni povus forigi ĝin, lrom se ĝi estos denove alnotita intertempe. (do du statoj: tuŝenda, tuŝata (kaj for))
Ni esploru eblecojn subteni la tradukadon per uzo de vortaroj. Pluraj estas konektitaj al kono.be/ViVo kiun Bart rekonstruas tiel, ke estonte ni povos pridemandi ĝin per JSON.
Aliaj vortaroj en la reto ebligas aŭtomatan pridemandadon, ekz-e vortret-bazitaj: https://chinese.english-dictionary.help/english-to-chinese-meaning-time (do uzante anglan vorton kiel sufikso)
kaj por Vikipedio (per "en")
https://commons.wikimedia.org/w/api.php?action=query&&titles=Category:London&prop=langlinks&lllimit=500&format=xml&rawcontinue
resp. per "eo":
https://eo.wikipedia.org/w/api.php?action=query&&titles=Londono&prop=langlinks&lllimit=500&format=json&rawcontinue
UWN:
En la nova fasono estas problemo kun la traŝovado de la paĝo en iOS Webkit (ekz-e iPad). Post kiam oni elektis iom longan artikolon ofte la malsupra parto de indekso kaj artikoloj ne plu estas atingeblaj. Oni povas tiri la paĝon, ĝis vidi ekz. la piedlinion - sed ĝi resaltetas poste kaj oni ne povas tuŝi do la ligilojn en la piedlinio. Same la navig-trabo kun la serĉilo supre malaperas super la supro de la videbla paĝo kaj nur per trifingra malgrandigo kaj iom da provado reaperas.
Mi ĝis nun ne komprenas, kial Webkit faras tion - eble por pli bone montri la centran parton de la paĝo (<article>
)...?
Kelkajn similajn problemojn traktas la sekvaj paĝoj, eble ili povus helpi:
En la redaktilo la x^-butono foje aperas premita, sed estas malŝaltita, t.e. ne funkcias cx->ĉ
Retaplikaĵetoj (PWA) permesas uzo-sperton de retpaĝoj similantan tiun de apoj. Vd. ekz. (iom malnovan) enkondukon.
Aŭ tie ĉi pli nova enkonduko.
Ankaŭ tiu klarigo de bazaj konceptoj estas interesa.
Antaŭkondiĉoj:
Bazaj funkcioj instalendaj:
==> Mi ne tute certas, kiel la serĉilo devus integriĝi en la tuton
Paŝo-post-paŝo-klrigo, vd jen:
Kontrolo de referencoj plendas pri ja kezistanta subart-mrk, ekz. "for.0.prefikso".
checkversioj.pl en sia nuna formo ne plu utilas, ĉar ĝi komparas la ekziston kaj versiojn de XML- kaj HTML-dosieroj al la CVS-dosieroj, sed la aktualaj fontoj nun estas en git (revo-fontoj) - ne plu en CVS.
Ĉar la git-fontoj mem ne estas en la TTT-servilo, ni devos elpensi alian manieron. Plu ni povus
curl -m HEAD
aŭ simile...Kelkaj eraroj ŝajne okazas nur en iOS Webkit kaj tiel ne estas troveblaj per tetado en FF, Chrome kaj Epiphany. Por trovi tiujn sen havi kompletan instalaĵon de macOS+XCode+Safari estus bone montri la enhavon de la ret-konzolo ie en la retpaĝo.
Kelkaj tiucele anstataŭigas la console.log-funkcion ktp. per iu, kiuj sendas la tekston al DOM-objekto/iFrame: https://stackoverflow.com/questions/6508313/javascript-console-log-in-an-ios-uiwebview
(Tio eble tamen ne inkluzivas esceptojn? - necesas elprovi)
Estas kelkaj ideoj por modernigo de la vortaro:
1. Interfaco: ne plu uzu kadrojn, anst. uzu centran serĉpaĝon kaj ŝargu ĉiujn enhavojn fone per Ajax
2. Simpligu la datumbazon: ĝi estiĝis iam kun la ideo dinamike krei la paĝojn, sed tio neniam realiĝis tiel. Pli bone havi nur tre platan strukturon de unu aŭ du tabeloj kun la kampoj "serĉvorto", "indekso", "referenco", "simpligo"
3. Anstataŭ la tradiciaj kvar indekspaĝoj Esperanto|Lingvoj|Fakoj|ktp. uzu aldonajn cirklajn butonojn ie kadre kun la literoj REVO, ekz.
La frazo „Nenio trovita“ restas, se la retkonekto/CGI che sercho lamas, shajnigante ke vorto ne ekzistas. Ni malplenigu la rezultopaghon au montru „serchante…“ dum ni serchas. Tiel pli klarus, ke sercho dauras au havas problemon.
(Simile dum Submeto montru ion dum atendo de rezulto)
FF ne kopias al "clipboard" en la refeerenco-funkcio. Sciante tion, eble oni ne montru la kopio-butonon aŭ iel avertu.
Iu(j) robotoj ne respektas la regulojn en robots.txt kaj aliras skriptojn en cgi-bin/
Por protekti eble ni apliku ion kiel: https://haacked.com/archive/2007/09/11/honeypot-captcha.aspx/
Daŭre robotoj legas en Revo, kio estas akceptebla por serĉmaŝinoj rilate la dosierujojn art/, /inx. Sed ne necesas ke ili legu tez/, hst/ kaj per CGI-skriptoj. Provu per rbots.txt kaj eble aliaj rimedoj pli reguligi tion.
La renovigita redaktilo ŝajne ne bonorde sendas novajn artikolojn, la unua linio ne estas
aldono: <dosiernomo>
<?xml...?>
sed iel tiel:
redakto: kreo
<?xml...?>
Mi trovis la jenajn, kiuj ne aldoniĝis:
Se oni navigas en la retaplikaĵo (PWA) al shanghitaj artikoloj poste rulas sufiche malsupren kaj renavigas al la chefindekso tiu aperas malplena.
(chu eble tio povas esti problemo de y-pozicio?)
Ĵeromo rekomendas rigardi... du ekzemplojn de vortaroj en intereto, kiuj prezentas interesan fasadon:
la unua havas sub la serĉilo rubrikojn "uzoj" "temoj" kun indikitaj vortnombroj:
[fr] https://www.linternaute.fr/dictionnaire/fr/
la dua havas langetojn "specialaj temoj" "mallongigoj" kaj ceteraj super la serĉilo:
[de] https://dict.tu-chemnitz.de/
eble tio helpos al la pripensado.
En la tezaŭro ni ne montras listerojn el kategoriaj listoj (ekz. urboj ĉe la vorto urbo), sed tie referencas la kategorian indekson. Tamen ni multloke ni ankaŭ referencas ekz. al fizikisto (Avogadro k.a.) sed listigas sub "historiaj_personoj". Do ĉe la vorto fizikisto aperas nek listoreferenco "historiaj personoj" nek Avogadro. Verŝajne ni montru unu aŭ la alian.
parseart2 plenigas la tabelojn r2_*, i.a. de la tezaŭro. Ĝi ankoraŭ baziĝas inx_eltiro, inx_kategorioj, tez_retigo kaj poste uzas regulesprimojn por ekstrakti valorojn por la datumbazo. Sur la servilo ni ne havas XML::LibXML por pura ekstraktado, sed ni povus uzi JSON simile al vikiref, por pli fidinda programado.
Ni havas XML-dosierojn laŭ XML-normo OpenSearchDescritpion, kaj deklaron kiel meta type="search". Sed estas ne plu klare, kiel aldoni ilin en la diversaj retumiloj. Nur ĉe Fajrovulpo tio funkcias senprobleme en la URL-trabo per "..." -> "Aldonu Sercilon".
Iam oni povis ankaŭ aldoni per JS-funkcio, sed ne plu. Vd.:
https://www.fxsitecompat.dev/en-CA/docs/2020/window-external-addsearchprovider-is-now-a-dummy-function/
Estus bone sistematikigi stildifinojn (CSS), tiel ke oni povas kombini stilojn per klasoj kaj uzi samajn tra la tuta aplikaĵo (artikoloj, indeksoj, redaktilo). Estus ankaŭ preparlaboro, por uzi kolorojn laŭ variabloj, adapti la tekstaranĝon pli bone al diversgrandaj ekranoj...
Ekideoj:
Aldonante tradukojn el serĉo en universala vortreto ne plu montriĝas hoketo ĉe la lingvoj, kiuj jam havas tradukon ( en la naviga kadro ĉe la trovlisto )
La redaktobutonoj estas nek kompletaj nek la aranĝo ĉiam aperas optimala - depende de ekrangrandeco.
Ni trovu eblecon kompletigi ilin sed samtempe kaŝi malpli gravajn depende de la disponebla spaco. Krome kelkaj (citiloj, klarigoj) estus utilaj plurkuntekste (dif, ekz...):
Ideoj:
Ni devas flegi la retumilon historion mem, uzante Ajax. Jen unu biblioteko, kiu povus helpi:
https://github.com/browserstate/history.js
Jen informoj pri JS-Api:
Se ni havus aldone al simpla serĉo tabelecan filtreblan trovtabelon, ni povus uzi tion kiel flekseblan indekson kaj eble povus rezigni pri (kelkaj) statikaj indeksoj. Ĉu la fakindeksoj estas multe uzataj? -- ni povus realigi ilin per tia tabelo, same oni povus oferti filtradon je oficialeco, vortspeco ktp. tiel havante pli flekseblan eblecon por listigi serĉrezultojn. Krome oni povus oferti eksportadon de la specifaj rezultoj al CVS aŭ JSON...
Ĝis nun la referencoj de la kapvortoj al Vikipedio estas kreataj per skripto upviki.pl kiu devas ĉiutage vokiĝi kaj manipulas la HTML de la artikolo.
Tio havas iomajn malavantaĝojn:
Pli pura solvo estus unu el la sekvaj:
La dua ebleco estas pli simpla ĉar momente ni havas la Viki-informojn en la datumbazo. Kiam ne rearanĝas la tezaŭron por krei la referencojn dinamike ni povus aldoni al tiu renovigita aliro ankaŭ la trakdtadon de Viki-referencoj.
Aktuale ni havas tri paĝojn por la bibliografio pro tri ordigoj (mallongigo, aŭtro, titolo). Pli bone estus provizi ĝin kiel JSON kaj ordigi tion laŭplaĉe - tiel ni povas redukti al unuopa paĝo.
Aŭ ni uzu la XML-formation, kiu jam estas uzata de Cetonio, sed en tiu aŭtoro kaj titolo estas kunfanditaj.
Nuna stato:
Ideo estas reverki la procedon simile / paralele al la tezaŭro: enlistigi ĉiujn tradukojn en JSON-dosierojn, ekstrakti de tie en la servilo kaj ŝovi en tabelon trd, laŭbezone kreante rigardon trd-kap...
Se ni metus komencon de difino en la datumbazon ĝi povus servi kiel antaŭraigardo ekz-e en la tezaŭro, (simile kiel en Vikipedio). Montrante per la muso oni vidas la difinon, sed nur se oni volas vidi la tutan artikolon oni devas musklaki.
Simile tio povus helpi elekti la taŭgan sencon de referencota kapvorto. Tiam oni devus montri tion en la serĉrezultoj ekz-e.
Necesas distingi la difinojn de sencoj, derivaĵoj ktp. - do ni metus en la tabelon r3mrk...
Iru al izolita artikolo, premu redakti post antaŭrigardu - la tradukoj estas forkaŝitaj...
Por tradukado de lingvoj (mx_trd...) ni prezentu la tradukendajn vortojn laŭ konvena prioritato:
Ni aldone povus uzi oftecoliston kiel tiun: https://en.wiktionary.org/wiki/Wiktionary:Frequency_lists/Esperanto
Alia "facila" vortlisto: https://uea.facila.org/uploads/pages_media/1_vortlisto-de-uea-facila-versio-dupagha.pdf
Donu iom da helpo titolpaĝe(?) kiel serĉi, ekz-e per ĵokersignoj:
La serĉskripto respondas per HTTP-200, sed nevalida JSON, kiam la datumbazo ne funkcias. La fiŝeto ne finas turniĝi tiam. Ni certigu validan JSON-respondon, kvankam kun erarmesaĝo kaj montru la erarmesaĝon kiel rezulto.
Ekz-e serĉante "ajar" oni trovas plurajn vortojn, kiu fakte devuse enhavi "ajar", sed la indoneziaj vortoj estas derviĵoj de "ajar". Do pli ĝuste oni devus montri la tutan tradukon kaj ne nur la parton inter <ind>...</ind>
.
sw.js:104 Uncaught (in promise) TypeError: Failed to execute 'fetch' on 'WorkerGlobalScope': Cannot construct a Request with a Request object that has already been used.
okazanta en la linio return fetch...
(supozeble ligita al tre malrapida respondo aŭ rompo de tempolimo de la peto al servilo)
var addToCache = function(request){
return caches.open("offline").then(function (cache) {
return fetch(request).then(function (response) {
console.log(response.url + " estas konservita");
return cache.put(request, response);
});
});
};
La serĉo estas limigita momente al la kvin unuaj preferataj lingvoj. Ne sciante tion ĝi povas surprizi. Do eble permesu eĉ 7 lingvoj kaj resendu informojn laŭ kiuj lingvoj okazis la serĉo kaj montru tion kun la rezultoj
(kaj evtl. referencu informojn, kiel eble ŝanĝi tion per preferoj... aŭ permesu serĉi pli da lingvoj kun averto...?)
Ĉar komencantoj redaktantoj ofte estas pli entuziasmaj ol spertaj eble ni bezonos mentoran sistemon. Prepare:
[ ] donu al redaktantoj rolon (sperto: 0=lernanto, 2=mentoro) - ignorenda en la komenco de cgi/redaktantoj.pl
[ ] permesu ricevi la rolon al cetonio- kaj araneo-redaktiloj kaj marku redaktojn de lernantoj
[ ] permesu al afido ricevi la rolon kaj prokrasti redaktojn de lernantoj post sintakskontrolo, donu al lernanto informon pri sintaksa kontrolo kaj evtl-a prokrasto ĝis mentorado
[ ] montru atendantajn redaktojn de lernantoj ĉe mentoroj sub "(viaj) submetoj"
[ ] montru atendantajn redaktojn de lernantoj ankaŭ en Cetonio, renomu la menueron kohere "submetoj" aŭ simile
[ ] permesu al mentoroj akcepti aŭ rifuzi redaktojn de lernantoj
[ ] permesu al mentoroj pluredakti submeton de lernanto kaj submeti sub nomoj de lernanto aŭ ambaŭ depende de la ŝanĝbezono
De tempo al tempo malnovaj submetoj estu forigitaj, ekz-e pli malnovajn ol 6 monatoj en stato 'arkiv'.
submeto.pl jam enhavas eblecon forigi ĉiujn pli malnovajn ol 200 tagoj. Eble iuj kun stato 'erar' aŭ 'trakt' restu pli longe por analizi eblajn misfunkciojn?
Kiu kiam voku la funkcion 'forigo'? Plej bone aldonu en voko-afido/bin/processsubm.pl...
Uzante Revon kiel retapo (tra ServiceWorker) vokinta la serĉon mi ricevis netatenditan respondon "undefined":
Fehler beim Laden von 'https://reta-vortaro.de/cgi-bin/sercxu-json-2h.pl'. Ein ServiceWorker hat eine Promise an FetchEvent.respondWith() übergeben, welche den Nicht-Response-Wert 'undefined' zurückgab.
Sed simila rezulto okazis ankaŭ en la redaktilo, kiam serĉo je ekzemploj ne ricevis respondon dum certa tempo kaj mi tiam reŝargis la tutan paĝon. Do verŝajne tiu rezulto okazas ĝuste kiam oni interrompas senrespondan peton.
La tradicia aranĝo de navigpaĝoj: Esperanto | lingvoj | fakoj | ktp. estis adaptita al la porciumado de informoj sur statikaj paĝoj, kaj ne plu estas tute konvena, kiam ni bezonas kunpremi ĉion bezonatan sur malgranda ekrano de poŝtelefono. La dinamikeco de fona ŝargado donas la eblecon pli logike rearanĝi ĉion:
Kiam oni elektis kaj troviĝas ene de unu el la kvar navig-spacoj, eblas montri la kvar aŭ komplete sur granda ekrano aŭ kondensigite en la malgranda navigtrabo kiel vinjetoj:
🔍 | ☰ | ⓘ | ✎
Laŭ iom da ricevitaj reagoj, la nuntempa tezaŭro estas ne tro vaste uzata - eble tro kaŝita, eble pro la dissplitigo en multaj malgrandaj dosieroj estas tro malfacile navigebla. Krome la preparado de la multaj malgrandaj dosieroj estas sufiĉe da ŝargo por la aktualiga procedo komparante kun la marĝena uzado.
Jen kelkaj ideo por rekonceptado:
<tezrad/>
Grafika prezento bezonus aŭ SVG aŭ JS Canvas. Jen du bibliotekoj, kiuj subtenas tion:
Eble ankaŭ konsideru la argumentojn en https://medium.com/@PepsRyuu/why-i-no-longer-use-d3-js-b8288f306c9a
En la artikolo "ĉirkaŭ", la referencoj de III aperas en la tezaŭro sub I. Ili montriĝus fakte sub III, sed tie ne estas derivaĵo. Prefere tute ne montru ilin do en la tezaŭro. Ne necesas!
Estus bone havi ankaŭ en la simpla redaktilo tradukdialogon por vidi kaj redakti ĉiujn tradukojn de unu lingvo en unu superrigardo.
Por pli komforta aldono de tradukoj necesus krei liston de tradukeblaj partoj: drv, snc, subsnc, ekz kune kun resumo, kiu permesas kompreni, kion traduki (frazo de la difino aŭ ekz. ks)
Trairante la liston oni povus aldoni unu aŭ plurajn tradukojn de antaŭelektita lingvo kaj poste aldoni ĉion per helpo de skripto en la XML-tekston.
Parto de tia funkciado estis jam realigita en revaj.steloj.de, sed mankas sen-markaj sencoj kaj ekzemploj. Kaj en la simpla redaktilo ni eble ne volas uzi surmetitajn dialogojn...?
estas certe dezirinde simpligi la abundan paĝaron de revo, interalie rearanĝi la aferojn kiuj restas kaŝitaj en la ne tre alloga "ktp"-ĉapitro.
por la serĉilo mi volis rekomendi ideojn de "simpla vortaro" http://www.simplavortaro.org, sed via propono jam proksimas al ĝi sen la pli analizaj funkcioj. kiel nun la serĉo-kadro inkluzivu la funkcion "iu ajn artikolo". ĉu ĝi ne povus iel inkluzivi ankaŭ la listigon de list- kaj fak-enhavoj, tiel ke apartaj fak-menuoj ne plu estus bezonataj? do kiel vi diras "rezigni pri (parto de) indeksoj kaj anstataŭigi ilin per pli detalaj eblecoj de serĉado". mi pripensos, kiel ĝi povus aspekti. eble simple malplena serĉofako kaj hokado de fak-nomo listigus la enhavon de fako?
lasante flanke la demandon de la redaktilo, kelkaj aliaj sugestoj...
post serĉado en la listoj de respondoj, estus bone indiki la nombrojn de trovoj en ĉiu lingvo.
en la akcepto-paĝo mi volonte trovus jenajn elementojn:
"statistiko": prefere frazo indikus la tri ĉefajn nombrojn, ekzemple "hodiaŭ revo enhavas xx artikolojn, xx derivaĵojn, xx sencojn, kaj ligilo ebligus malfermon de la plena statistiko-paĝo, kun ankaŭ la ĝisdata listo de redaktoj.
"ni uzas kelkajn mallongigojn...": miaopinie en tiu loko estu pli ĝenerala frazo kun ligilo al plena helpopaĝo kun la enhavo de nunaj "vortaraj mallongigoj" "bibliografio" kaj aliaj klarigoj pri la strangaj vinjetoj de la vortaro, kaj ankaŭ pri la serĉmetodoj. ankaŭ tie: "kiel uzi en diversaj sistemoj", "elŝuti pakaĵojn", "permeso de uzado".
"se vi pretas helpi...": ĉi tie estu ligilo al plena paĝo responda al la enhavo de nuna "ktp > por redaktantoj".
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.