Computers themselves, and software yet to be developed,
will revolutionize the way we learn.—Steve Jobs

Kombinált elválasztás

A nemrég közzétett – Elválasztás CSS-sel című – weboldalon agyba-főbe dicsértem a böngészők fejlődését, de rögtön az is kiderült, hogy a programozók még nem dőlhetnek hátra: rengeteg feladat áll előttük. A Google Chrome, az Internet Explorer meg a többi böngésző szoftveresei és ütemterveinek készítői mostohagyerekként kezelik a magyar szövegelválasztás kérdését. Úgy tűnik, idáig csupán a számítógépen futó Fire­fox- és Safarifejlesztők foglalkoztak érdemben e feladattal.

Létezik egy fantasztikus ember, a svájci Mathias Nater, aki igazán a szívén viseli ezt az ügyet: jó pár évvel ezelőtt mutatta be – az azóta a forgalomból is kivont – Hyphenator JavaScript-alkalmazásának első változatát, amiről fél évtizede önfeledten lelkendeztem. Most, hogy a nagy böngészőfejlesztők is rámozdultak a feladatra, finomította az eljárást. A tavaly útjára bocsátott Hyphenopoly előzékenyen és tisztelettudóan meghúzódik a háttérben, és csak akkor aktiválódik, ha a webböngésző nem szolgáltatja természetes módon az elválasztást, vagy megteszi ugyan, de nem ren­del­ke­zik a weboldalon szereplő nyelv elválasztási szabályrendszerével.

Ízelítő

Ez az alkalmazás néhány olyan opciót is tartogat, ami hiányzik a böngészők natív változatából. A fejlesztő itt írja le, hogy mit, honnan kell letölteni, hol kell tárolni és mik a beállítási lehetőségek. Érdekességképpen nézzünk párat:

és továbbiak is vannak – úgy egy tucatnyian… Lassan kezdem sajnálni, hogy mindezt csak a Hyphenopoly tudja.

Ha a kis programcsomag annyira megtetszett, hogy a használata kedvéért lemondanál a böngésző természetes szolgáltatásáról (vagy csak így akarod tesztelni – például Fire­fox­ban – az alkalmazást), azt is megteheted. Erre való a konfigurációs blokkban e célra kiadott különleges kulcsszó. Szokásos esetben a használt nyelvet a következő módon kell az alkalmazás tudomására hozni:

const Hyphenopoly = {
    require: {
        "hu": "tizenkétkarakteres",
    },
ahol a nyelv egy hosszú, legalább 12-karakteres szavát kell megadni (a program ennek segítségével vizsgálja meg, hogy a böngésző ren­del­ke­zik-e az adott nyelv elválasztási szabályrendszerével). A webböngésző természetes szolgáltatását pedig így lehet leváltani:
const Hyphenopoly = {
    require: {
        "hu": "FORCEHYPHENOPOLY",
    },
de ilyenkor hatástalanítani kell a CSS-elválasztást.
A siker

Lám-lám, nincsenek tényleges vesztesek. Ezzel a kis programcsomaggal a korábban mutatott példák szavait nemcsak a Fire­fox és a Safari algoritmusa, de a többi böngésző, így a Google Chrome is képes helyesen elválasztani:

Magyar elválasztás: <div>
Angol elválasztás: <div lang="en">
Megállapította: 1999. évi XLIV. törvény 31. §. Hatályos: 1999. VIII. 1-től. Az ezt követően elkövetett fegyelmi vétségek miatt indult eljárásokban kell alkalmazni.
Megállapította: 1999. évi XLIV. törvény 31. §. Hatályos: 1999. VIII. 1-től. Az ezt követően elkövetett fegyelmi vétségek miatt indult eljárásokban kell alkalmazni.
Példa: 1991. évi XLI. törvény a közjegyzőkről; pár előfordulás: 70. § *; 71. § (4) *; 72. § (2) *
A 2012. évi CCXXIII. törvény 318. § (1) szerinti szöveggel lép hatályba.
A 2012. évi CCXXIII. törvény 318. § (1) szerinti szöveggel lép hatályba.
Példa: 2012. évi C. törvény a Büntető Törvénykönyvről; pár előfordulás: 6. § (2) *; 403. § (4) *
Bevallom, a Google Chrome-ban a minta néhány elemének nagyságát módosítani kellett, mert a Chrome alapbeállításban is másként méretez, mint a Fire­fox. Azt csak remélni tudom, hogy más böngészők nem hazudtolnak meg. A biztonság kedvéért azért megmutatom egy képen, hogyan kellene kinéznie:
Készült:
Utolsó módosítás:
2019. 03. 03.
© Tuna András, 2006–2019