Kiel fari TTT-paĝojn

Specialaj signoj

Kiam oni skribas XHTML-kodon kaj uzas la signokodon Unikodo, oni principe povas skribi ĉiajn ajn signojn rekte per Unikodo, kaj la TTT-legiloj principe devas ilin montri ĝuste (se la signokodo estas ĝuste anoncita - alie la TTT-legilo ne povas scii, kiu signokodo estas uzata en la paĝo). Sed praktike povas tamen esti problemoj vere entajpi iujn specialajn signojn. Eble la tekstoredaktilo, kiun oni uzas, ne plene regas Unikodon. Eble la klavaro, kiun oni uzas, ne havas klavojn por ĉiuj bezonataj signoj.

Numeraj signoreferencoj

Se oni havas problemon rekte skribi iun signon, oni povas helpi sin per XHTML-aj signoreferencoj, kiuj indikas la celitan signon per numero. Ekz.:

Δ = la Greka litero “delto” (Δ)
∞ = infinito-signo (∞)
♥ = kero-signo (♥)
€ = eŭro-signo (€)

Tiaj signoreferencoj ĉiam komenciĝas per kaj-signo (&) kaj numersigno (#), kaj finiĝas per punktokomo (;). Inter la numersigno kaj la punktokomo oni skribas la Unikodan numeron de la celita signo.

Tiajn signoreferencojn oni povas enmiksi en ordinaran tekston, ekzemple jene:

<p>La Greka litero &#916;, estas tre bela, sed
pli bela estas la signo &#8734;. Plej belas tamen
la kartluda signo &#9829;.</p>

Provu tion en testa XHTML-paĝo. Espereble via TTT-legilo sukcesos montri ĉiujn tri specialajn signojn.

Dekume aŭ deksesume

En la ĉi-antaŭaj ekzemploj la numeroj estas skribitaj dekume (kiel normalaj numeroj), kaj tio estas la rekomendinda skribomaniero. Sed principe oni ankaŭ rajtas skribi la numerojn deksesume (per sistemo, kiu uzas 16 ciferojn anstataŭ la kutimaj 10 ciferoj). Tiam oni aldonu “x” (nepre minuskle) post la numersigno, ekzemple: &#x394;, &#x221E;, &#x2665; kaj &#x20AC; (tiuj estas la deksesumaj respondaĵoj al la kvar ekzemplaj signoj). Sed iuj TTT-legiloj ne komprenas la deksesumajn numerojn.

Se oni ne scias la Unikodan numeron de iu signo, kiun oni bezonas uzi, oni devas serĉi la numeron ekzemple en ia listo de Unikodaj signoj aŭ en manlibro pri Unikodo. Tiam tre ofte oni trovas nur la deksesumajn numerojn, kaj devas mem rekalkuli ilin kiel dekumajn numerojn (en multaj komputiloj estas kalkulilprogramo, per kiu oni povas tion tre facile fari). Se oni skribas deksesume en la XHTML-kodo, oni riskas, ke iuj legiloj ne komprenas, kiun signon oni celas.

Simbolaj nomoj «

Numeraj signoreferencoj estas sufiĉe fidindaj (la TTT-legiloj ilin komprenas sufiĉe bone), sed ili povas esti maloportunaj por la paĝoverkanto. Ne estas facile memori tiajn numerojn, kaj se oni akcidente skribas ekzemple “8363” anstataŭ “8364”, oni ne tuj facile rimarkas la eraron.

Tiam oni povas anstataŭe uzi simbolajn signonomojn, ankaŭ nomatajn entoj. En tiaj kodaĵoj uziĝas mallonga kodvorto anstataŭ numero:

&Delta; = &#916;, la Greka majuskla litero “delto” (Δ)
&infin; = &#8734;, infinito-signo (∞)
&hearts; = &#9829;, kero-signo (♥)
&euro; = &#8364;, eŭro-signo (€)

Tiam oni skribas kaj-signon (&) antaŭ la simbola nomo, kaj punktokomon (;) poste.

Jen la ĉi-antaŭa ekzemplo kun simbolaj signonomoj anstataŭ numeraj signoreferencoj:

<p>La Greka litero &Delta;, estas tre bela, sed
pli bela estas la signo &infin;. Plej belas tamen
la kartluda signo &hearts;.</p>

La prezento en TTT-legilo estu tute la sama. &Delta; estas tute sinonima kun &#916;.

Ne por ĉiuj Unikodaj signoj ekzistas tia simbola nomo. Tiujn simbolajn nomojn, kiuj ja ekzistas, vi povas trovi en miaj paĝoj pri signokodoj, precipe en la paĝoj “Latino 1” kaj “Kiel skribi signojn en HTML”.

Aliaj signokodoj

Nuntempe estas forte konsilinde ĉiam uzi Unikodon por ĉia teksto, sed oni ankaŭ povas uzi aliajn signokodojn.

Tre ofta signokodo estas Latino 1 (Latin 1, ISO-8859-1). Iuj malnovaj tekstoredaktiloj komprenas nur Latinon 1, kaj tute ne povas skribi Unikode.

Latino 1 enhavas multe malpli da signoj ol Unikodo, kaj se oni uzas Latinon 1 por la normalaj signoj (tiuj, kiujn oni skribas rekte), oni devas uzi signoreferencojn aŭ simbolajn signonomojn pli ofte. Sed rimarku, ke numerajn referencojn oni ĉiam skribas kun la Unikodaj numeroj de la signoj. Numeraj signoreferencoj estas tute sendependaj de la signokodo, kiun oni uzas por rekte skribi signojn.

Ekzemple en la signokodo “windows-1252” la eŭro-signo havas la numeron “128”. Se oni uzas “windows-1252” kiel signokodon en XHTML-paĝo, oni povas rekte skribi eŭrosignon per bitoko kun la numero 128 (la tekstoredaktilo tiam simple montras eŭro-signon - oni skribas la signon rekte). Sed se oni tiam volas skribi eŭro-signon per signoreferenco, oni ne povas skribi “&#128;”. En Unikodo tute ne ekzistas signo kun la numero “128”. Oni devas tiam uzi la Unikodan numeron de la eŭro-signo, “8364”, skribante &#8364;.

Noto: Se oni tamen provas uzi “&#128;”, povas esti, ke la TTT-legilo montras la celitan eŭro-signon, sed principe ĝi povas montri ĉion ajn. En Unikodo ne estas difinita ia signo por kodpozicio 128, kaj ĉio ajn povas okazi. Eble hazarde la afero funkcias en tiu legilo, per kiu oni kontrolas, sed oni ne povas scii, ĉu aliaj legiloj kondutos same. Se oni nepre volas uzi la kodon “windows-1252” por eŭro-signo, oni skribu la eŭro-signon rekte laŭ tiu kodo. Tiam ĉio estas ĝusta. Se oni uzas Latinon 1, oni devas skribi eŭro-signon per numera referenco aŭ per simbola nomo, ĉar en Latino 1 la eŭro-signo tute ne ekzistas.

Indiko de signokodo

Jam en la komenca leciono pri Formalaĵoj vi lernis, kiel indiki per meta-elemento, kiu signokodo estas uzata en la paĝo. Ene de la head-elemento, prefere kiel unua elemento ene de head estu la jena indiko:

<meta http-equiv="Content-Type"
content="text/html; charset=utf-8" />

Kompreneble, se oni uzas alian signokodon ol “utf-8” (unu speco de Unikodo), oni devas indiki tiun signokodon anstataŭ “utf-8”. Se oni uzas Latinon 1, oni skribu jene:

<meta http-equiv="Content-Type"
content="text/html; charset=iso-8859-1" />

Tamen ne ĉiam funkcias

Se oni uzas “ekzotikajn” signojn, kaj skribas ĉion tute ĝuste, laŭ ĉiuj reguloj, povas tamen esti, ke la signoj ne ĝuste aperas por ĉiuj legantoj. Ne ĉiuj komputiloj havas tiparojn kun ĉiuj strangaj signoj, kaj ne ĉiuj TTT-legiloj estas agorditaj por uzi tiparojn kun la bezonataj signoj.

Ĝenerale tiuj signoj, kiuj enestas en la signokodo “Latino 1” estas sekuraj. Pri ili oni tute ne bezonas timi. Sed aliaj signoj povas esti iom riskaj. Ĝenerala konsilo estas uzi nur tiajn specialajn signojn, kiujn oni vere bezonas. Se oni skribas tekston en la Rusa, oni ja devas uzi Rusajn literojn, kaj se oni skribas tekston en la Araba, oni devas uzi Arabajn literojn. Tiam la specialaj signoj estas neeviteblaj.

Helpi per tiparindikoj

Per stilfolioj eblas indiki (proponi) al TTT-legilo, kiun tiparon ĝi uzu por montri tekston. Estas do pripenseble provi eviti problemojn pri specialaj signoj per indikado de tiparo, kiu supozeble enhavas la bezonatajn signojn. Tio estas nuntempe apenaŭ bezonata, ĉar la hodiaŭaj TTT-legiloj (aŭ la hodiaŭaj operacisistemoj) scias ĉerpi la bezonatajn signojn el alia tiparo, se ili mankas en la ordinara tiparo uzata en la paĝo. Legu plu pri tiu temo en miaj paĝoj pri Esperantaj literoj.

Esperantaj literoj kun supersignoj

La Esperantaj literoj kun supersignoj (ĉ, ĝ, ĥ, ĵ, ŝ kaj ŭ) klare estas ekzemploj de specialaj signoj. Sed se oni faras XHTML-paĝojn en Esperanto, oni ja bezonas ilin uzi.

Se oni uzas Unikodon, kaj se la tekstoredaktilo, per kiu oni kreas la paĝojn, regas Unikodon, kaj se oni aranĝis tiel, ke oni povas ĝuste tajpi tiujn literojn per la klavaro, oni povas rekte skribi tiujn signojn en la XHTML-kodo, kaj ĉio devas bone funkcii.

Alie oni povas uzi numerajn signoreferencojn. Jen la numeraj referencoj de la supersignaj Esperantaj literoj:

Litero Priskribo Numera referenco
Ĉ Majuskla C kun cirkumflekso &#264;
ĉ Minuskla c kun cirkumflekso &#265;
Ĝ Majuskla G kun cirkumflekso &#284;
ĝ Minuskla g kun cirkumflekso &#285;
Ĥ Majuskla H kun cirkumflekso &#292;
ĥ Minuskla h kun cirkumflekso &#293;
Ĵ Majuskla J kun cirkumflekso &#308;
ĵ Minuskla j kun cirkumflekso &#309;
Ŝ Majuskla S kun cirkumflekso &#348;
ŝ Minuskla s kun cirkumflekso &#349;
Ŭ Majuskla U kun hoketo &#364;
ŭ Minuskla u kun hoketo &#365;

Jen ekzemplo, kiun vi povas aldoni al testa XHTML-paĝo, kaj provi en TTT-legilo:

<p>
E&#293;o&#349;an&#285;o &#265;iu&#309;a&#365;de.
E&#292;O&#348;AN&#284;O &#264;IU&#308;A&#364;DE.
</p>

Se oni volas skribi pli longajn tekstojn, estas tamen preferinde uzi tekstoredaktilon, kiu regas Unikodon, kaj aranĝi taŭgan manieron rekte tajpi tiujn signojn.

Kiel lasta elturniĝo, oni povas skribi surogate, ekzemple per la H-skribo (“ehhoshangho chiujhaude”) aŭ per la X-skribo (“ehxosxangxo cxiujxauxde”), sed tiam uzu surogatan sistemon, kiun plej multaj jam bone konas (ne eksperimentu per malmute konataj sistemoj, nek kreu propran flikaĵon).

Pli detalajn klarigojn vi povas trovi en miaj paĝoj pri Esperantaj literoj en TTT.

Klarigojn, kiel aranĝi klavaron, per kiu eblas rekte tajpi Esperante laŭ Unikodo, vi povas trovi en miaj paĝoj pri “Esperanto en Linukso” kaj “Esperanto en Vindozo”. Tie estas ankaŭ kelkaj konsiloj pri taŭgaj programoj, ekzemple tekstoredaktiloj, kiuj bone komprenas Unikodon. Se vi uzas alispecan komputilon, mi bedaŭrinde ne povas konsili.

Al la sekva leciono