Új magyar dátumformátumok, gyorsabb helyesírási javaslatok

Az FSF.hu Alapítvány által támogatott ez évi szabad szoftveres magyar nyelvi fejlesztések méltó lezárásaként új magyar dátumformátumokkal bővül a LibreOffice, és villámgyorssá válik a hosszú hibás szavakra is a helyesírási javaslattevés (hibajegy: tdf#118162).

A következő videó az új toldalékolt, névelős, illetve számneves dátumformátumok használatát mutatja be, a több mint 30 formátum közül a „2018. július 27-én”, „szerdán”, „2017 júniusában” és a „kétezertizennyolcadik” dátumokon keresztül:

A „kétezertizennyolcadik” az új magyar helyesírásnak megfelelően az évszámok esetében kivételként kötőjel nélkül írandó, a számok esetében továbbra is a kötőjeles „kétezer-tizennyolcadik” a helyes forma. A LibreOffice mindkét formát helyesen kezeli, köszönhetően a libnumbertext programkönyvtárnak és az új NatNum12 számformátumkódnak. Hibajegy: tdf#115007.

Magyar szótövezés LibreOffice makróprogramozással

Az FSF.hu Alapítványon keresztül keresett meg Simonyi Béla egy érdekes feladattal: hogyan lehet szótöveket előállítani egy magyar szólistából? A Linux terjesztések részeként is elérhető Hunspell programmal egyszerűen:

echo "szótöveket előállítani szólistából" | hunspell -d hu_HU -s
szótöveket szótő

előállítani előállít

szólistából szólista

De mi van, ha éppen nem áll rendelkezésre Linux? Használhatjuk a Windows alá elérhető Cygwin keretrendszer, vagy a macOS parancssorát, ahol ingyenesen is elérhető szabad szoftverekkel fordíthatjuk le a Hunspell programot.

A következő LibreOffice makróval még erre sincsen szükség, elég egy magyar LibreOffice, és annak beépített, tövezésre is alkalmassá tett magyar szótára:

“Magyar szótövezés LibreOffice makróprogramozással” bővebben

„10 Ft, azaz tíz forint” automatikusan

A szerződésekben, okiratokban szereplő számok automatikusan alakíthatók át számnevekké a LibreOffice fejlesztői változatában:

Mike Kaganski, a Collabora fejlesztője által bevezetett új NatNum12, (ideiglenesen még NatNum13 és NatNum14 is) natív számnévformátummal nemcsak a fejezet, oldal, ábra- és táblázatszámozásban, hanem az egyéni számformátumokban, dátumokban stb. is elérhetővé válnak a tőszámnévvé, sorszámnévvé és sorszámrövidítéssé való átalakítások. Sőt, tesztelés alatt áll a minden egyéb libnumbertext által biztosított függvényt elérhetővé tévő folt is, amely a tervek szerint a magyar esetében még a számok toldalékolását is magába foglalhatja a jövőben, automatizálva például a képletekre való automatikus hivatkozást egy készülő tankönyvben, pl. (5)-ben, (6)-ban, (7)-tel, (8)-cal stb.

A funkció jelenleg még fejlesztés alatt áll, például a nem végleges formátum mentése csak most vált elérhetővé a tesztelés számára, de a LibreOffice 6.1 előzetes változatában már kipróbálható lesz az új lehetőség.

Szabad magyar szótár 1.7, Zsort 1.0

A 2018. május 12-i Szabad szoftver konferencián került bejelentésre, és most megjelent az utóbbi évek legnagyobb magyar nyelvi vonatkozású szabad szoftveres fejlesztésének eredménye, a Szabad magyar szótár 1.7-es változata. A magyar szóalaktan leírását is tartalmazó szótár minden eddiginél pontosabb magyar helyesírás-ellenőrzést nyújt a LibreOffice, a Google Chrome, Mozilla Firefox, Scribus vagy akár az olyan kereskedelmi programok, mint a Google Dokumentumok, Adobe InDesign és macOS felhasználói számára.

A béta kiadások sokezres javításaihoz és szókincsbővítéséhez képest a végleges kiadás további 13 ezer szó-, morféma- és betűhatárra vonatkozó szótári bejegyzéssel bővült, amely lehetővé tette az első helyesen működő magyar betűrendbe soroló szabad szoftver, a Zsort elkészítését is.

A nyelvi fejlesztések a nyomdai minőségű automatikus magyar elválasztás megvalósításával folytatódhatnak a jövő évben. Kérjük, hogy ehhez adója 1%-ának felajánlásával segítse az FSF.hu Alapítványt, a magyar nyelvi fejlesztések fő támogatóját! A fejlesztések részletei:

Zsort 1.0

A Zsort (ejtsd zé-szort vagy zsort) a Szabad magyar szótár 1.7-es változatán és a Hunspell helyesírás-ellenőrzőn és morfológiai elemzőn, valamint a GNU sorton alapuló gAWK program, amely a következő előnyös tulajdonságokkal rendelkezik a helyesiras.MTA.hu akhsort webes betűrendbe soroló szolgáltatásához képest: (1) a felbontandó „ál-többjegyű” mássalhangzókat minden szótári szó (pl. más|szor) és heurisztikusan felismert összetett szó (pl. adás|szünet|kérés) esetében felismeri (2) 50 szónál több szó is rendezhető vele, akár több millió is (3) nem fagy le több szóból álló kifejezésekre, címekre, hanem helyesen képes azokat is rendezni (4) szabad program, így működése megismerhető, a kód módosítható és szabadon terjeszthető. További előnyei: (5) működése bár a GNU C Library-n (glibc) alapul, nem függ annak legújabb javításaitól (Koblinger Egmont javításaival a glibc 2.26 végre az IBM ICU/Unicode CLDR adatbázisához hasonlóan rendezi a kettőzött többjegyű mássalhangzók egyszerűsített alakjait). (6) A kifejezésekre vonatkozó rendezési szabályok mellett javítja a glibc különleges hibáját is, a zsanér, zsáner és a hasonlóan azonos alakú, csak a hosszú magánhangzók helyében eltérő szóalakok sorrendjének felcserélését is.

A Zsortot 4 millió különböző szóalakon összehasonlítva az IBM ICU/Unicode CLDR magyar rendezési algoritmusával, azonnal nyilvánvalóvá válik a különbség: 25 ezer szónak változik meg a pozíciója, amennyiben nem tekintünk minden cs, dz, dzs, gy, ly, ny, sz, ty, zs, ccs, ddzs, ggy, lly, nny, ssz, tty és zzs jelsorozatot automatikusan (kettőzött) többjegyű mássalhangzónak, hanem megvizsgáljuk a szavak tövét és toldalékolását, és annak megfelelően döntünk a szavak sorrendjéről, például a község, tizennyolc stb. szavak nem zs, vagy kettőzött ny betűt tartalmaznak. 5 további szó a 25 ezerből (sorkezdő mínuszjel jelöli a régi, és pluszjel jelöli a javított pozíciót):

--- szavak.icu 2018-05-17 15:36:53.958051037 +0200
+++ szavak.zsort 2018-05-17 15:37:07.209816339 +0200
@@ -1331,8 +1331,8 @@
 ablakmélyedéseknél
 ablakmélyedési
 ablakmélyedésig
-ablakmélyedést
 ablakmélyedésszerű
+ablakmélyedést
 ablakmenedzserek
 ablakmenü
 ablakméret
...
 zsoldosseregre
 zsoldosseregünk
 zsoldosseregünkkel
+zsoldosszellem
+Zsoldosszerenádot
+Zsoldosszerenádra
 zsoldost
 Zsoldost
 Zsoldostáborban
@@ -4039942,9 +4039945,6 @@
 zsoldosvezérről
 zsoldosvezért
 zsoldosvilág
-zsoldosszellem
-Zsoldosszerenádot
-Zsoldosszerenádra
 zsoldosztás
 zsoldosztásra
 zsoldot
@@ -4040806,11 +4040806,11 @@
 zsongásról
 zsongássá
 zsongással
+zsongásszerű
 zsongást
 zsongású
 zsongásuk
 zsongásunkat
-zsongásszerű
 zsongat
 zsongatja
 zsongatják

A teljes lista itt tekinthető meg, a program félezer soros, a teszteseteket is tartalmazó forráskódja pedig itt.

Szabad magyar szótár 1.7.

A szótárfejlesztés kiemelt célja a legnépszerűbb, a magyar nyelv támogatásában is élen járó szabad irodai programcsomag, a LibreOffice, ahol a szótár az alapja a magyar szinonimaszótárban és a nyelvhelyesség-ellenőrzőben használt szótövezésnek, toldalékolásnak és morfológiai elemzésnek is, valamint az új toldalékoló felhasználói szótárnak. A legújabb szótár is úton van a LibreOffice 6.1 és 6.0-s változatába.  A bevezetőben is felsorolt, Hunspell helyesírás-ellenőrzőt tartalmazó programok is a Szabad magyar szótár felhasználói, ahogy ez a szótár az alapja a Magyar Tudományos Akadémia helyesiras.mta.hu Helyes-e így? néven futó szolgáltatásának is. A Szabad magyar szótár bár nem helyesírási tanácsadó szolgáltatások üzemeltetésére készült, a legutóbbi fejlesztésekkel közelebb került ehhez: szótára, valamint a Hunspell program több ezer szótári szó esetében támogatja már a kiejtés alapú javaslattevést, pl. Niccse  → Nietzsche, valamint a tipikus egybeírási hibák felismerését és pontos javítását: idegenszavakat → idegen szavakat, rákövetkező → rá következő, csirkefarhát → csirke far-hát stb.

Az új magyar helyesírási reform és a magyar szókincs változásainak követéséről, illetve a kapcsolódó fejlesztésekről részletesen szólnak a béta kiadások hírei.

A szótár- és programhibák a LibreOffice és a magyar fordítók OpenScope felületének hibabejelentője mellett most már a Szabad magyar szótár GitHub projektoldalán is bejelenthetők.

„Első fejezet” – új számozási stílusok

A LibreOffice 6.1 újdonságaként a fejezetcímekben és felsorolásokban magyar számneves számozási stílust is választhatunk már, ahogy ezt a következő videó bemutatja:

A fejlesztés az előző hírben már szereplő Numbertext programkönyvtáron alapul, amelynek LibreOffice integrációja az FSF.hu Alapítvány támogatásával valósult meg.

Angol, francia és német példa:

Kapcsolódó hibajegy: tdf#117171

Soros 2.0, Numbertext 1.0 béta

Új kiadás jelent meg a Soros programozási nyelvből, és a rá épülő LibreOffice-kiegészítőből a megújult Numbertext.org honlapon. A magyar fejlesztéssel több mint 30 nyelvre, és olyan különleges – az arab számok előtt használt – számrendszerekre alakíthatunk át számokat, mint a magyar számrovás és a kínai Szucsou számrendszer.

A reguláris kifejezéseken alapuló Soros nyelv a számok gyors és egyszerű számnévvé alakítására készült 2009-ben, illetve a BAHTTEXT (BAHTSZÖVEG) thai számnévre és pénznemre alakító ECMA/(MSZ) ISO OOXML (eredetileg MS Excel) táblázatkezelő függvény általánosítására. A LibreOffice-kiegészítő által telepített NUMBERTEXT() és MONEYTEXT() táblázatkezelő függvények használatát, és az új „de-CH” (svájci helyesírású német: „dreissig” „dreißig” helyett) nyelvi támogatást mutatja be a következő videó.

A nyelvi modulok a tőszámnevek mellett sorszámnevekkel (első, második, harmadik…) és sorszámokkal (az angolban 1st, 2nd, 3rd…, az új maláj modulban 1, ke-2, ke-3… stb.) is bővültek, hogy az OOXML-ből és a MS Wordből már ismerős tőszámneves, sorszámneves és sorszámos számozási stílusok a LibreOffice-ba is bekerüljenek a közeljövőben (pl. „Tizenkettedik fejezet”). A számok átalakítása interaktív módon is kipróbálható a honlapon, együtt az új sorszámneves és egyéb átalakításokkal, köztük az új magyar helyesírásnak megfelelő, kötőjel nélküli évszámokkal (a kétezer-tizennyolc tőszámnév helyett kétezertizennyolcat írunk évszámok esetében kivételesen).

A Soros programnyelv új nyelvi elemei nemcsak a javított specifikációból ismerhetők meg, hanem az új interaktív tananyagból is, amely egyben bevezet a szinte minden modern programnyelvben megtalálható reguláris kifejezések használatába is.

A Java, JavaScript és Python Soros interpreterek mellett az új C++ programkönyvtár is szabadon felhasználható az LGPL/BSD licenc szerint. A Soros programnyelv és a kapcsolódó fejlesztések olyan sikerre számíthatnak a jövőben, mint az FSF.hu Alapítvány által támogatott többi LibreOffice nyelvi eszköz: a Hunspell helyesírás-ellenőrző és a Szabad magyar szótár, amelyek sok más mellett a Magyar Tudományos Akadémia helyesírási tanácsadó oldala, a helyesiras.MTA.hu működésének alapját is biztosítják.

Betűrendbe sorolás javítása

A LibreOffice 6.1 a következő pontokon javítja a szavak, bekezdések és cellák szövegtartalmának magyar betűrendbe sorolását a helyesírási szabályoknak megfelelően:

– a ccs, ddz, ddzs, ggy, lly, nny, tty, ssz, zzs betűsorozatok mostantól kettőzött többjegyű mássalhangzóként kerülnek felbontásra a betűrendbe sorolásnál (kivéve ha az ssz, zzs a cssz, zssz, dzzs, szzs stb. része);

a szóközök és kötőjelek nem számítanak a betűrendbe sorolásnál, pl. kistányér, kis virág. (Bekezdések rendezése esetén ez felülbírálható a szóköz mezőhatároló beállításával az Eszközök→Rendezés… menüponttal előhívható párbeszédablakban);

– homonimák, például csak a nagy kezdőbetűben különböző szavak esetén a kisbetűs alak megelőzi a nagybetűst, pl. tata, Tata.

A fentiek továbbra sem garantálják a helyes magyar betűrendbe sorolást, mivel nemcsak a kettőzött többjegyű mássalhangzók, de a többjegyű mássalhangzók sem egyértelműek: pl. pác|só, híd|zár, hód|zsír, meg|győző, levél|lyukasztó, ion|nyaláb, guvat|tyúk, alvás|zavar, köz|ség.

Mostantól viszont az automatikus besorolás minden esetben egyszerűen javítható: a kérdéses ponton a feltételes elválasztójel beszúrásával (Ctrl-kötőjel a Writerben). Az így javított szavak későbbi automatikus betűrendbe sorolásai már a magyar helyesírásnak felelnek meg, ahogy a következő videóban a meg|győződés szó példáján látható:

Kapcsolódó hibajegy és javítás: tdf#116666, c51973.

Magyar nyelvi fejlesztések V.

Az FSF.hu Alapítvány támogatásával folyó fejlesztések legfrissebb újdonságai:

  • Bővített nyelvhelyességi szabályok és javított szótördelés az automatikus hivatkozások toldalékának és névelőjének ellenőrzésére, pl. *(2)-ban,  *n)-t – helyesen n)-et –, *az b) pontban (videó);
  • új magyar átírások a helyesírási szótárban: pl. sznekk, soppingol, videófilm (már nem videofilm), a vitatott dínó újra helyes dinóként is, valamint számos más javítás és bővítés, részben Tuna András, Pénzes Dávid, Gyuris Gellért, Úr Balázs gyűjtése alapján.

“Magyar nyelvi fejlesztések V.” bővebben

Okos(abb) magyar helyesírás-ellenőrzés

Jó hír az írással napi szinten foglalkozók számára, hogy a LibreOffice április elején megjelenő 6.0.3-as hibajavító kiadása már nem jelez helyesírási hibát a különleges, de amúgy helyesírásilag tökéletes szóalakokra.

Ilyen a fenti címben szereplő „okos(abb)”, ahol az „abb”-ot a program (hasonlóan pl. a Microsoft Office-hoz) idáig aláhúzta. Mostantól csak akkor, ha a zárójelek nélküli szóalak (itt: „okosabb”) valóban hibás.

A magyar szótördelési algoritmus és a helyesírási szótár javítása (felhasználva az eredetileg az arab és a héber számára kifejlesztett Hunspell-tulajdonságot, a nem kívánt karakterek törlését az ellenőrizendő szóból) a következő alakok helyes kezelését tette lehetővé:

– a ragozott zárójeles hivatkozások: (1)-nek, [2]-ben, a)-ról, b)-hez;

– a szavakon belüli zárójelezés: „oldal(ak)”, kell(ene);

– a megváltozott méretet jelölő kapcsos zárójeles kezdőbetű az idézetekben: „[A]zt” és „[a]mazt”;

– idézőjeles címek toldalékolása: „A Jedi visszatér”-ben, a „Tisza”-ban (a helyes toldalékot jelezte hibásnak a program);

– kérdőjeles és felkiáltójeles nevekben: Yahoo!-ról, Ki nevet a végén?-ből.

Kapcsolódó hibajegy: tdf#116072.

L. még magyar nyelvi fejlesztések az FSF.hu Alapítvány támogatásával.