Magyarul-HOGYAN

avagy tippek és trükkök magyarul beszélő Linux-felhasználóknak

Verzió: 0.5.6
1999. július 19.

Ha valaki olyan böngészővel rendelkezik, amelyikben ez a lap nem jól olvasható, kérem írja meg.

Ez a lap a Linux operációs rendszercsalád magyarosításával foglalkozik. Főbb témái: magyar betűk, billentyűzet használata; magyar nyelvű dokumentumok az Interneten, különféle programok beállítása. A felsorolt megoldások, beállítások általában RedHat változat használatát feltételezik, ez azonban csak azt jelenti, hogy a szerző ilyet használ, és nem azt hogy más Linux változatok (pl. Debian, SuSe, Slackware, stb.) ne lennének ugyanolyan jók a magyar felhasználók számára, és a közölt megoldások némi változtatással ne lennének használhatóak az utóbb említett változatokban. A szerző örömmel venné a nem RedHat Linux-hoz készült leírásokat, megoldásokat melyeket közzé is tenne ezen a helyen.

vbzoli@vbzo.li

TARTALOM


0. Hol érhető el a Magyarul-HOGYAN?


1. Magyar billentyűkiosztás és latin-2 (ISO-8859-2) betűk használata

1.1. A latin-1 és latin-2 kódkiosztás

A UNIX világában elterjedt 8-bites kódkiosztás amely tartalmazza a magyar ékezetes betűket is az ISO-8859-2, azaz a latin-2 kiosztás. Ez a kódkiosztás tartalmazza a latin betűs szláv nyelvek (horvát, szlovén, szlovák, cseh, lengyel), és a magyar, román, német nyelv ékezetes betűit.

A Nyugat-Európai országok az ISO-8859-1 kódkiosztást használják (latin-1). A latin-1 kiosztás tartalmazza a magyar ékezetes betűket is (ugyanazon kóddal) az ő (o") és ű (u") kivételével. Az ő (o") és ű (u") betűk helyén a latin-1-es kiosztásban az o~ és az u^ szerepel (o tetején hullámvonal, u tetején kalap); így a latin-2-ben kódolt magyar szövegek olvashatóak latin-1-es kiosztás használatával is (jobb híján).

1.2. A Linuxon használt kódkiosztások

A Linux két legjobban elterjedt felhasználói felülete a konzol és az X-Window grafikus rendszer. Konzol alatt a szöveges üzemmódú képernyőt (általában VGA-monitor) és billetyűzetet értjük. Az esetleges külső terminálok beállításaival (egyelőre még) nem foglalkozunk.

A linux rendszermag alapesetben a konzolon a latin-1-es kiosztást használja úgy, hogy a latin-1-es kódokat leképezi a PC-s 437-es kódlapra. (A 437-es kódlapot egyébként a monitorvezérlő-kártya tartalmazza PC-n.) Ezzel a módszerrel csak olyan latin-1 betűket tud megjeleníteni, melyek szerepelnek a 437-es lapon.

Az X-Window rendszer alapesetben a latin-1 (ISO-8859-1) kódolást használja, de rendelkezésre állnak latin-2 és egyéb kódú betűkészletek is már szép számban. Pl. az 5.2-es RedHat-ben már az alap-telepítőkészlet része néhány latin-2-es betűcsomag.

1.3. Latin-2 kiosztás használata konzolon

Latin-2-es betűk használatát legcélszerűbben (hasonlóan az alapeset 437-es kódlapjához) 852-es kódlap szerint kódolt betűkészlettel valósíthatjuk meg. A 852-es kódlapot csak a képrnyőfontok kódolására használjuk, és a latin-2 (ISO8859-2) kódokat leképezzük a 852-es kódokra.

Két ok miatt célszerű a 852 kódlap használata a latin-2-ben kódolt betűkészlethez képest:

Újabb console-tools csomag (konzol-eszközök) használatánál

A megfelelő betűkiosztást tartalmazó állományt (pl. classic-852-16.psf.gz) a /usr/lib/kbd/consolefonts könyvtárba, míg a képernyő-leképezést (pl. iso02_cp852.trans) tartalmazó állományt a /usr/lib/kbd/consoletrans könyvtárba másoljuk.

A következő paranccsal lehet a betűkészletet és a képernyő-kiosztást betölteni (célszerűen rendszerindításkor):
consolechars -f classic-852-16.psf.gz --acm iso02_cp852.trans
A leképezés használatát a következő paranccsal adhatjuk meg:
echo -ne '\033(K'
Régebbi változatoknál a beállítások:

A 852-es betűk betöltése:
setfont classic-852-16
Ekkor a képernyő-leképezést át kell állítani latin2->852-re:
mapscrn map-lat2-852
Eddig ezeket a parancsokat el lehet végezni indításkor (boot-oláskor). Még a konzolon meg kell adni, hogy a mapscrn-nel beállított leképezést használja a konzol-meghajtó:
echo -ne '\033(K'
Ezt a parancsot minden bejelentkezéskor célszerű kiadni például a /etc/profile-ból (a RedHat 6.0 már automatikusan kezeli):
export TTY=`/usr/bin/tty`
echo "Terminal device: $TTY"
if [ x"$TERM" = x"linux" ] && echo $TTY | grep tty[0-9] >/dev/null; then
        echo -ne '\033(K'
fi

Mégegyszer felhívjuk a figyelmet, hogy ehhez a megoldáshoz 852-es kiosztású betűkészletet kell használni.

1.4. Latin-2 kiosztás használata konzolon (régi megoldás, nem ajánlott)

A latin-2-es kódkiosztás használatához két dolog szükségeltetik: A leképezés megváltoztatását a következő parancs végzi el:
echo -ne '\033(K'
A mapscrn paranccsal lehet egyébként a leképezést átállítani. A latin-2-es karakterkészlet betöltése (slackware linux esetén):
setfont /usr/lib/kbd/consolefonts/lat2-16.psf
A fenti két sort célszerűen a /etc/rc.d/rc.local állományba kell bemásolni.

Latin-2 betűkészletek:

A /usr/lib/kbd/consolefonts könyvtárba kell másolni az állományokat.

1.5. Magyar billentyűkiosztás használata konzolon

A linux konzolon a loadkeys használható a billentyűzetkiosztás beállítására; paraméterként egy definíciós állományt vár, melyben tetszőleges kódot rendelhetünk a billentyűkhöz. A loadkeys programot célszerűen a rendszer indításakor érdemes futtatni. A Slackware kiadásban a /etc/rc.d/rc.local állományba érdemes tenni.
/usr/bin/loadkeys /usr/lib/kbd/keytables/magyar.map
A következő kiosztások (vagy csomagokban található kiosztások) használhatók a fenti magyar.map helyén (ezeket kell bemásolni a /usr/lib/kbd/keytables/ könyvtárba):

Teljes konzol-beállításokra (magyar billentyűzet és latin-2 betűk) példát találhatunk az alábbi pontokban Debian és RedHat kiadásokra.

1.6. Konzol-beállítás Debian 1.2 alatt

  1. Bemásoltam a mapscrn és setfont binárisokat a /bin könyvtárba (hogy rendszer-indításkor, amikor még nincs a /usr feltéve, akkor is elérhetőek legyenek).
  2. Létrehoztam a /etc/console könyvtárat, és ide másoltam a következő állományokat: classic-852-16 (betűkészlet), magyar.map (billentyűzet-kiosztás), map-lat2-852 (font-leképezés definíciója).
  3. Létrehoztam a /etc/rc.console könyvtárat, amelyben létrehoztam egy setup-console nevű állományt. Ennek tartalma:
    #!/bin/sh
    PATH=/bin
    CONSOLEPATH=/etc/console
    setfont $CONSOLEPATH/classic-852-16
    mapscrn $CONSOLEPATH/map-lat2-852
    loadkeys $CONSOLEPATH/magyar.map
    echo -ne '\033(K'
    
  4. A /etc/init.d/boot állományba behelyeztem a következő sorokat:
    #
    # Setup console fonts, keymaps, translation tables
    #
    if [ -d /etc/rc.console ]
    then
            if [ "$VERBOSE" != "no" ]
            then
                    echo "Setting up console..."
            fi
            run-parts /etc/rc.console
    fi
    
  5. Végül a /etc/profile állományba a következőt írtam:
    export TTY=`/usr/bin/tty`
    if [ x"$TERM" = x"linux" ] && echo $TTY | grep tty[0-9] >/dev/null; then
            echo -ne '\033(K'
    fi
    

A szükséges állományokat a következő helyről lehet letölteni:
ftp://ftp.honlap.net/pub/linux/console/852/

1.7. Konzol-beállítás RedHat 6.0 alatt

A szükséges fontokat, beállításokat tartalmazó csomag: ISO-8859-2-console-1.0-1.i386.rpm; RPM forrás: ISO-8859-2-console-1.0-1.src.rpm, tar forrás: ISO-8859-2-console-1.0.tar.gz.

A /etc/sysconfig/i18n állomány tartalmazza a megfelelő beállításokat:
SYSFONT=classic-852-16.psf.gz
SYSFONTACM=iso02_cp852.trans
A beállításokat a /sbin/setsysfont paranccsal érvényesíthetjük, ez a parancs minden indításkor is lefut.

A /etc/profile.d/lang.sh script gondoskodik az echo -n -e '\033(K' parancs kiadásáról.

1.8. Konzol-beállítás RedHat 5.x alatt

  1. A mapscrn, setfont és loadkeys programokat bemásoltam a /bin könyvtárba
    cp -p /usr/bin/mapscrn /bin
    cp -p /usr/bin/setfont /bin
    cp -p /usr/bin/loadkeys /bin
    
  2. Létrehoztam a /etc/console könyvtárat, és ide másoltam a következő állományokat: classic-852-16 (betűkészlet), magyar.map (billentyűzet-kiosztás), map-lat2-852 (font-leképezés definíciója).
  3. Létrehoztam a /etc/rc.d/rc.console állományt, amelynek tartalma:
    #!/bin/bash
    #
    #       /etc/rc.d/rc.console
    #
    #       Non-standard console setup.  It is run by /etc/rc.d/rc.sysinit.
    #
    #       It must be run as early as possible to set up keyboard and
    #       console fonts.
    #
    #       NOTE: mapscrn, setfont and loadkeys moved to /bin
    #
    PATH=/bin
    CONSOLEPATH=/etc/console
    setfont $CONSOLEPATH/classic-852-16
    mapscrn $CONSOLEPATH/map-lat2-852
    loadkeys $CONSOLEPATH/magyar.map
    echo -ne '\033(K'
    
    Ezután beállítottam a végrahajtás engedélyező bitet az rc.console állományon:
    chmod a+x /etc/rc.d/rc.console
    
  4. Módosítottam a /etc/rc.d/rc.sysinit állományt. Az export PATH tartalmú sor után beírtam a következő szöveget (hogy a konzol beállítás minél előbb megtörténjen):
    # Set up the console as early as possible.
    if [ -x /etc/rc.d/rc.console ]; then
            /etc/rc.d/rc.console
    fi
    
    és, 5.2-es RedHat esetén a következő sorok elé beszúrtam a # jelet hogy ne hajtódjon végre a setsysfont parancs (ez a módosított szöveg):
    # set the console font
    #if [ -x /sbin/setsysfont ]; then
    #    /sbin/setsysfont
    #fi
    
  5. Végül a /etc/profile állományba a következőt írtam:
    export TTY=`/usr/bin/tty`
    if [ x"$TERM" = x"linux" ] && echo $TTY | grep tty[0-9] >/dev/null; then
            echo -ne '\033(K'
    fi
    

A szükséges állományokat a következő helyről lehet letölteni:
ftp://ftp.honlap.net/pub/linux/console/852/

1.9. Magyar Slackware csomag (régi megoldás, nem ajánlott)

A hufont-0.2.tgz csomag a Slackware Linux kiadás támogatására készült. Megtalálható az alábbi helyen:

ftp://ftp.honlap.net/pub/linux/console/hufont-0.2.tgz

Részlet a README-ből:

  1. ez Slackware package. Más disztribúciókból indítsd el a /etc/rc.d/rc.font-ot valahonnan (pl /etc/rc.d/rc.local )
  2. lehet hogy a tic nincs a PATH-ban, akkor azt a sort csináld meg kézzel a /install/doinst.sh-ból
  3. Lesz egy új terminál definíciód, console-lat2 néven. Ez a lat2-*.psf fontokkal megy, az iso02.*-al nem. Nem tudom, melyik a szabvány.
  4. a /etc/skel-ben van .inputrc, meg .joerc, de nincs .bashrc vagy ilyesmi. Az alábbi sorokat érdemes beletenni:
    export LESSCHARSET=latin1
    if [ $TERM="console" -o $TERM="linux" ]
    then
            export TERM="console-lat2"
    fi
    
  5. A shell scriptet meg a kbd map-et Szilike írta. És megigérte, hogy egyszer a .joerc-t megmagyarítja.

1.10. Latin-2 kiosztás használata X-Window felületen

Az X-Window grafikus felület is a latin-1-es kódkiosztást használja alapesetben. Mostanában (1998 végén) már sok latin-2 kódolású betűkészletet lehet találni X-Window-hoz:

A betűkészleteket a /usr/X11R6/lib/X11/fonts könyvtárban találhatjuk meg. Ezeknek a könyvtáraknak szerepelni kell a /usr/X11R6/lib/X11/XF86Config konfigurációs állományban.

A RedHat 5.2 telepítőkészlet tartalmaz latin-2 betűket (a Biznet és az ulT1mo Type1 betűket) RPM csomag formájában. A következő csomagokat kell feltenni:
XFree86-ISO8859-2-1.0-1
XFree86-ISO8859-2-100dpi-fonts-1.0-1
XFree86-ISO8859-2-75dpi-fonts-1.0-1
XFree86-ISO8859-2-Type1-fonts-1.0-1
Ezek a csomagok használhatóak az előző RedHat verziókban is.

A /etc/X11/XF86Config ,,files'' szekcióját az előbbi csomagok telepítése után átírhatjuk a következőre:
Section "Files"

# The location of the RGB database.  Note, this is the name of the
# file minus the extension (like ".txt" or ".db").  There is normally
# no need to change the default.

    RgbPath	"/usr/X11R6/lib/X11/rgb"

# Multiple FontPath entries are allowed (they are concatenated together)

    FontPath    "/usr/X11R6/lib/X11/fonts/ISO8859-2/misc:unscaled"
    FontPath	"/usr/X11R6/lib/X11/fonts/ISO8859-2/75dpi:unscaled"
    FontPath	"/usr/X11R6/lib/X11/fonts/ISO8859-2/100dpi:unscaled"
    FontPath	"/usr/X11R6/lib/X11/fonts/misc:unscaled"
    FontPath	"/usr/X11R6/lib/X11/fonts/75dpi:unscaled"
    FontPath	"/usr/X11R6/lib/X11/fonts/100dpi:unscaled"
    FontPath    "/usr/X11R6/lib/X11/fonts/ISO8859-2/Type1"
    FontPath	"/usr/X11R6/lib/X11/fonts/URW"
    FontPath	"/usr/X11R6/lib/X11/fonts/Type1/"
    FontPath	"/usr/X11R6/lib/X11/fonts/Speedo/"
    FontPath    "/usr/X11R6/lib/X11/fonts/ISO8859-2/misc"
    FontPath    "/usr/X11R6/lib/X11/fonts/ISO8859-2/75dpi"
    FontPath    "/usr/X11R6/lib/X11/fonts/ISO8859-2/100dpi"
    FontPath	"/usr/X11R6/lib/X11/fonts/misc"
    FontPath	"/usr/X11R6/lib/X11/fonts/75dpi/"
    FontPath	"/usr/X11R6/lib/X11/fonts/100dpi/"

EndSection

Aki nem RedHat-et használ, annak is érdemes letölteni ezeket a csomagokat, és a rpm2cpio programmal kicsomagolni.

1.11. Magyar billentyűzet használata X-Window felületen

Az újabb (talán 3.3-tól kezdve?) X-rendszereken már beépített támogatást találunk a különféle billentyűzetekhez (XKEYBOARD extension). A /etx/X11/XF86Config állományban kell beírni a Keyboard szekcióba a következőt:
XkbLayout       "hu"
Ez a megoldás ,,szabványos'' magyar billentyűkiosztásra működik.

A régi megoldás, ami még most is működik:

Az újabb X-rendszereknél be kell írni a /etx/X11/XF86Config állomány Keyboard szekciójába a következő sort:
XkbDisable

A billentyűzetet tetszés szerint át lehet definiálni akármilyen magyar kiosztás megvalósítására, akár átválthatóra is. A billentyűzet kiosztása az xmodmap programmal történik, amely bemenetéül egy szöveges definíciós állományt vár. Ezt bármikor lefuttathatjuk, de a rendszer indulásakor a HOME/.Xmodmap-ból vagy ha ez nem létezik akkor a /usr/X11R6/lib/X11/xinit/.Xmodmap-ból állítódik be a kiosztás. (Ez valószínűleg nem mindegyik Linux kiadásra vonatkozik.)

Ilyen definíciós állományokat találsz a következő helyeken:

Az xmodmap állományt .Xmodmap néven a HOME könyvtárba, vagy a /usr/X11R6/lib/X11/xinit könyvtárba kell másolni. Az első esetben az adott felhasználónál érvényesül a kódkiosztás, míg a másodikban mindenkinél (lásd a /usr/X11R6/lib/X11/xinit/xinitrc-t ).

Ha a fenti szabványos xmodmap-ot (xmodmap.hu) akarod használni, akkor az XF86Config file-ban a
# To set the LeftAlt to Meta, RightAlt key to ModeShift,
# RightCtl key to Compose, and ScrollLock key to ModeLock:

#    LeftAlt     Meta
#    RightAlt    ModeShift
#    RightCtl    Compose
#    ScrollLock  ModeLock
részben a
#    RightAlt    ModeShift
sor elől el kell távolítani a # jelet, engedélyezve ezzel az AltGr funkciót.


2. Egyes programok beállításai

2.1. bash, tcsh

A következő sorokat kell beírni a felhasználó saját (HOME) bejelentkezési könyvtárába elhelyezett .inputrc nevű állományba:

bash használata esetén:
set meta-flag on
set convert-meta off
set output-meta on

tcsh használata esetén (/etc/csh.login, vagy .tcshrc):
setenv LC_CTYPE ISO-8859-1
stty pass8

2.2. less

Ez nagyon egyszerű. A megoldás:
LESSCHARSET=latin1
export LESSCHARSET

Ezt a két sort kell behelyezni a /etc/profile állományba. (Vagy a .profile-ba).

2.3. TeX, LaTeX (Németh László)

A magyar elválasztási szabályokat tartalmazó huhyph.tex állományt másoljuk a tetex rendszer tex/generic/hyphen alkönyvtárába, majd bővítsük ki a tex/generic/config/language.dat állományt a következő sorral:
magyar huhyph.tex
(Persze ehhez rendszergazdaként kell bejelentkeznünk.) Futtassuk le a texhash programot. Fordítsuk le az initex 'lplain \dump' hívással a LaTeX forrását a gyorsabban betöltődő lplain.fmt állományra, melyet helyezzünk el latex.fmt néven a web2c alkönyvtárban. Ha 3.6-os babel-lel rendelkezünk, a tex/generic/babel könyvtárban lévő magyar.ldf állományt cseréljük le a Bérces József által módosított magyar.ldf-re.

Ha nekiállunk egy LaTeX forrás szerkesztésének, a következőket helyezzük el a preambulumban, tehát a \begin{document} előtt még:
\usepackage[latin2]{inputenc}   % írhatunk ékezetes (latin2-es) forrást
\usepackage[T1]{fontenc}        % európai fontkészlet, ,, >> << is működik
\usepackage[magyar]{babel}      % magyar számozás, \aref, \apageref stb, to`ccsan
\usepackage{indentfirst}      % fejezetek első bekezdésének behúzása (nem köt.)
\frenchspacing                % mondatok közti normális szóköz (ez kötelező)
Megtehetjük azt is, hogy ezt külön állományban helyezzük el, s nem kell mindig beírni, csak az \input{fájlnév} paranccsal betölteni.

A pontban említett állományok hozzáférhetők a http://www.math.bme.hu/latex oldalon. Tanulmányozzuk át ,,A nem olyan rövid bevezető a LaTeX2e használatába'' c. jegyzetet, amit szintén itt találunk meg.

Későbbi megjegyzés:

Sajnos a LaTeX honlapon még mindig nem található meg az általam fordított LaTeX jegyzet, illetve a már bővitett magyar tárgymutató generátor, a mami. Ezek a következő címről érhetők el, még másfél évig biztosan: http://www.jate.u-szeged.hu/~nemethl/

Megjegyzés

Magyarorszagon a rendszergazdáknak már alapvető feladata, hogy beállítsák a magyar elválasztást is a plain TeX-hez, és a LaTeX-hez.

Az itt következő preprocesszorként működő elvalásztó programok speciális esetben jöhetnek szóba ma már, pl. valaki külföldön tartózkodva a helyi gépen akar magyar nyelvű TeX fájlokat fordítani.

HiOn

Létezik egy magyar elválasztó-program TeX/LaTeX alá, a HiOn. Az új változat már szabad szoftver! A programot Verhás Péter írta.

Soós Péter (sp@osb.hu) kiegészítése ezzel kapcsolatban:

Átnéztem a HiOn doksiját, és meglepve tapasztaltam, hogy a HiOn nem csak egy elvalasztóprogram a TeX-hez, hanem egyben egy kódkonverziós program is. Képes mindenféle kódolásról (CWI, 852, latin-2, 123) mindenfélére konvertálni (CWI, latin-2, 123, TeX) szövegfájlokat.
Elérhető a http://www.isys.hu/c/verhas/progs/c/hion címen.

jellem (Petrovay Kristóf)

Egy másik lehetőség magyar LaTeX állományok preprocesszálására a jellem, ami szabad szoftver. Az URL: http://innin.elte.hu/~kris/jellem.html

Sima szövegekben a jellem valamivel több elválasztási hibát csinál, mint a HiOn, így használata inkább olyan esetekben ajánlott, amikor a LaTeX fájlunk bonyolult (pl. sok matek vagy táblázat van benne), ha saját makrókat definiálunk, vagy speciális makrócsomagokat (psfig stb.) használunk.

etex (Tóth Gábor)

A HION-nál korábban írtam az etex (elválasztós TeX) programot. [...] Most az új Perl változat teljesen ingyenes és letölthető a honlapomról. Legnagyobb előnye az, hogy egyszerű, semmiféle installációt nem igényel, és bármilyen ékezetjelölés könnyen beleírható. Perlben egyébként ékezet-konverziós programot írni annyira egyszerű, hogy csak na!

A program letölthető innen: http://hermes.elte.hu/~gtoth/etex.

Aki nem preprocesszorral akar elválasztani, az LaTeX alá felteheti a Babel magyar részét. Ez az elválasztáson kívül sok egyéb módon is magyarít. Ehhez persze rendszergazdának kell lenni.

2.4. LyX

Soós Péterttől:

Magyar karaktereket sokféleképpen elő lehet csalogatni a LyX-ből. Az egyik lehetséges megoldás (feltételezve, hogy latin-2 kiosztású .Xmodmap file-t használunk):

Állítsuk be a lyxrc (.lyxrc vagy system.lyxrc) file-ban a következőt:
  \fontencoding T1
Ezek után, ha a Layout -> Document -> Encoding értékét latin-2-re állítjuk, vagy a lyxrc-be beírjuk, hogy
  \inputencoding latin2
akkor a LyX helyesen fogja nyomtatni a magyar ékezetes karaktereket. Célszerű latin-2 kiosztású képernyőfontokat használni a fenti esetben, hogy már ott is jól jelenjenek meg a magyar betűk. Ehhez be kell állítani az Options -> Screen Fonts párbeszédpanelben a megfelelő fontokat, és a Font Norm értékét iso8859-2-re állítani, vagy a lyxrc-be beírni a
  \roman_font
  \sans_font
  \typewriter_font
sorokba a megfelelő fontok neveit, és a következő sort:
  \font_norm iso8859-2
Latin-2 fontok találhatók a kovetkező helyeken:

Célszerű még a magyar helyesírásnak megfelelő idézőjelekhez a Layout -> Quotes párbeszédpanelben a idézőjelek típusát German Double értékre állítani, vagy a lyxrc file-ba a következő sorokat beírni:
  \quotes_language german
  \quotes_times 2
Célszerű még a Layout -> Document -> Language értékét "magyar"-ra állítani, vagy a lyxrc-be a
  \language magyar
sort beírni. Ez engedélyez bizonyos, a magyar nyelvre jellemző beállításokat (pl. dátumformátum) a TeX számára. A magyar nyelv implementálása sajnos még nem teljes a TeX rendszerben. Ha magyar elválasztást is akarunk, akkor be kell szereznünk a TeX Babel csomagjához egy magyar elválasztás file-t amely elérhető a következő címen: A fentieket a LyX 0.10.7 és a teTeX TeX disztribució 0.3.4 változatával teszteltem.

A LyX program magyar beállításai (Németh László)

A LaTeX csekély kényelmetlensége, hogy kisebb dokumentumokat nehezebben lehet benne elkezdeni, mint a WYSIWYG rendszerekkel. A megoldás a LyX beszerzése. (A LyX ma már együtt kering a KDE ablakkezelő rendszerrel, de letölthetjük külön is a ftp://ftp.jate.u-szeged.hu/pub/linux/RedHat/ címről. Ebben az esetben az xforms csomagra is szükség van a telepítéshez!) A LyX gazdag dokumentációval és példagyűjteménnyel rendelkezik. A WYSIWYG rendszerekből megszokott kényelmi funkciók mellett lehetőség van LaTeX parancsok kiadására, új parancsok írására is szerkesztés közben.

A magyarítás a következő módon történik: Írjuk be a Layout/LaTeX Preamble... menüpont kiválasztása után megjelenő ablakba a következőket: (Ha a magyar nyelvet külön beállítottuk a Layout/Document menüben, a babel-es sort hagyjuk ki.)
\usepackage[latin2]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[magyar]{babel}
\usepackage{indentfirst}
\frenchspacing
Végül mentsük el alapbeállításnak a beírtakat a Layout/Save layout as default menüponttal.

2.5. joe

A joe-nak a .joerc ill /usr/lib/joe/joerc file-jában be lehet állítani a -asis opciót, illetve ^T és Meta-chars-as-is menüpont alatt lehet futás közben megadni, hogy rendesen kijelezze az ékezetes betűket. Ez csak az újabb joe-val megy így, de szerintem nagyon ritka az olyan Linux, ahol régi joe van. (Magossányi Árpád, mag@tas.vein.hu)

2.6. emacs

A következőkkel kell kiegészíteni a .emacs, vagy a /usr/lib/emacs/site-lisp/default.el állományt:
(standard-display-european t)
(set-input-mode (car (current-input-mode))
                (nth 1 (current-input-mode))
                0)

További hasznos adalékok a .emacs file-hoz (Markó István, mi@bgytf.hu):
(require 'iso-syntax)
az iso-syntax segítségével helyesen fog működni a kis és nagy betűk közötti konverzió.
(require 'iso-transl)
Az iso-transl lehetővé teszi az ékezetes betűk beírását olyan terminálokon is, amelyek nem képesek ékezetes betűkódokat generálni. Használata:

Az iso-accents-mode is hasonló funkciót lát el, de használatakor elhagyhatjuk a C-x 8 prefix-et, valamint ez a mód mindig csak az adott buffer-re aktivizálódik. A M-x iso-accents-mode parancsal kapcsolhatjuk be. További információ az Emacs info file "European Display" szekciójában. Hasznos lehet még az iso-hun package is, amellyel az adott bufferben található repülő ékezetes szöveget konvertálhatjuk ISO-8859-re. Ez letölthető az ftp://ftp.honlap.net/pub/emacs/iso-hun.el címről.

2.7. netscape

Petrovay Kristóftól:

Magyar fontok használata a Netscape-ben a monitoron pofonegyszerű, csak az Options - Document encoding menüben kell kiválasztani a Central European (latin-2) opciót. Nem ilyen egyszerű viszont a magyar karakterek kinyomtatása PostScript nyomtatón. A Netscape HTML/PostScript konvertáló segédprogramja, a Mozilla, tartalmaz egy bugot (bár nem biztos, hogy a Netscape Inc. ezt hivatalosan bugnak tekinti), minek következtében mindent latin-1-ben nyomtat, függetlenül attól, hogy a képernyőn mi van beállítva. Juliusz Chroboczek írt egy ogonkify nevű programot, ami ezt korrigálja. Az URL:
http://www.dcs.ed.ac.uk/home/jec/ogonkify/

Ha az ogonkifyt installáltuk, a Netscape Print menüjében a ¨Print command:" sorba ezt kell írni:
ogonkify -N -AT  $1 | lp

Az ogonkify installálásával egyben a Courier mellé Times és Helvetica PostScript fontokhoz is jutunk, amelyeknek más ingyenes verziója nincsen. Az ogonkify-t tartalmazza az a2ps (az enscripthez hasonló ASCII/PostScript filter) legújabb verziója is. Ennek címe:
http://www-stud.enst.fr/~demaille/a2ps.html

2.8. nedit

Petrovay Kristóftól:

A nedit X-window alapú felhasználóbarát editor, egyfajta civilizált emacs. Honlapja:
http://fnpspa.fnal.gov/nirvana/nedit.html

Magyar fontok használata roppant egyszerű, a Preferences - Text fonts menüben kell egy latin-2 fontot kiválasztani (tehetjük ezt defaulttá is). A Preferences - Default settings - Shell commands menüpontban egy-egy billentyűre "ráakaszthatók" a különböző xmodmap és enscript vagy a2ps parancsok, így egy gombnyomással lehet váltani a magyar és angol billentyűzet közt, illetve nyomtatni.

2.9. lynx

Az opció menüben (,,o'' gombot kell megnyomni a lynx behívása után) állítsuk be a következő értékeket:
 preferred document lan(G)uage: hu
 preferred document c(H)arset : iso-8859-2
 display (C)haracter set      : Eastern European (ISO-8859-2)
 Raw 8-bit or CJK m(O)de      : ON

Ezeket a beállításokat globálisan is elvégezhetjük a lynx.cfg állományban a következő sorok beírásával, illetve a megfelelő értékek módosításával:
CHARACTER_SET:iso-8859-2
ASSUME_CHARSET:iso-8859-2
PREFERRED_LANGUAGE:hu
PREFERRED_CHARSET:iso-8859-2
A CHARACTER_SET változó értéke a terminál betűkészletének megfelelően van beállítva (feltételeztük, hogy a terminál latin-2-es készletre van beállítva). Az ASSUME_CHARSET változóval a kódkészlet nélküli dokumentumok feltételezett kódját állíthatjuk be. Ez azt jelenti, hogy ha magyar nyelvű dokumentumokat olvasunk, és nincs beállítva a kódolás típusa akkor így helyesen jelennek meg az ékezetes betűk. Azonban ha latin-1-es kódolású szöveget nézünk meg (pl. francia, svéd, dán, stb. nyelvű szöveget) akkor helytelenül jelennek meg a szövegek. Ebben az esetben az ASSUME_CHARSET változó értéket iso-8859-1-re állíthatjuk.

2.10. xterm

Alapesetben az xterm latin-1 betűkészletet használ. Parancssorból megadhatjuk azonban a kívánt betűkészletet, pl. nagy betűk használata esetén:
xterm -fn -misc-fixed-medium-r-normal-sans-20-*-*-*-*-*-iso8859-2

Ezen kívül a .Xdefaults állományban, vagy esetleg az /usr/X11R6/lib/X11/app-defaults/XTerm-ben beállíthatjuk az alap-készletet:
*VT100*font: -misc-fixed-medium-r-normal-sans-20-*-*-*-*-*-iso8859-2
Akár át is írhatjuk az összes használt betűkészletet, s egyben magyar menüt kaphatunk a következő beállításokkal (az előző állományok egyikében):
*VT100*font: -misc-fixed-medium-r-normal-sans-20-*-*-*-*-*-iso8859-2
*fontMenu.Label:  VT Betűk
*fontMenu*fontdefault*Label:    Alap
*fontMenu*font1*Label:  Hangya
*VT100*font1:           nil2
*fontMenu*font2*Label:  Piciny
*VT100*font2:           -misc-fixed-medium-r-normal-sans-7-*-*-*-*-*-iso8859-2
*fontMenu*font3*Label:  Kicsi
*VT100*font3:           -misc-fixed-medium-r-normal-sans-12-*-*-*-*-*-iso8859-2
*fontMenu*font4*Label:  Közepes
*VT100*font4:           -misc-fixed-medium-r-normal-sans-13-*-*-*-*-*-iso8859-2
*fontMenu*font5*Label:  Nagy
*VT100*font5:           -misc-fixed-medium-r-normal-sans-15-*-*-*-*-*-iso8859-2
*fontMenu*font6*Label:  Óriás
*VT100*font6:           -misc-fixed-medium-r-normal-sans-20-*-*-*-*-*-iso8859-2
Ehhez természetesen telepítve kell lenniük a latin-2-es be>


Transfer interrupted!

"> 2.11. ls Az ls parancs alapesetben a nem-ASCII betűk helyére ?-et tesz a listában. A -N opcióval vehetjük rá, hogy helyesen írja ki az ékezetes betűket az állománynevekben. Célszerűen a /etc/profile-ba, vagy a .profile-ba (vagy RedHat alatt a /etc/bashrc-be) betehetjük alias-ként:
alias ls="ls -N"

2.11. postgresql

A PostgreSQL adatbáziskezelő rendszer, melyben tetszőleges betűket tárolhatunk alapesetben szöveges mezőkben, de a karakter-füzérek sorbarendezésénél nem veszi figyelembe az ékezetes betűk helyét (pl. hogy az ,,é'' betű az ,,e'' után és az ,,f'' előtt van). Ezt az apró hiányosságot orvosolhatjuk a postmaster programnak átadott környezeti változók segítségével. A következő apró kiegészítést kell eszközölni a postmaster-t indító script-ben (a /etc/rc.d/init.d/postgresql RedHat esetén):
LC_COLLATE=hu_HU
LC_CTYPE=hu_HU
PGDATESTYLE=ISO
export LC_COLLATE LC_CTYPE PGDATESTYLE
Ezt a sort a postmaster hívása elé kell beszúrni. Ez a hívás pl. így nézhet ki:
su postgres -c '/usr/bin/postmaster -S -D/var/lib/pgsql -B 512'
A psql program a GNU readline könyvtárat használja a parancssor kezelésére, ugyanúgy mint a bash, ezért az ott leírtak érvényesek erre a programra is.


3. Tippek

3.1. Hogyan nyomtassunk latin-2 kódolású szövegállományokat bármilyen - Ghostscript által támogatott, vagy postscript - nyomtatón?

(A megoldás nem Linux specifikus, elvileg bármilyen Unix alatt működik.)

Először postscript formátumra kell hozni a szöveget. Erre számos program létezik, ezek közül a GNU enscript ismeri a latin-2 kódrendszert. Be kell tehát szereznünk a GNU enscript programot, továbbá, mivel az Adobe fontjai nem tartalmazzák a latin-2 karaktereket, egy olyan fontot, amely tartalmazza őket. Ilyen pl. az IBM Courier , amely benne van az XFree86 disztribúcióban: a file-ok neve cour.afm és cour.pfa, courb.afm és courb.pfa stb.

Telepítsük az enscript programot, majd helyezzük el egy alkönyvtárba a cour*.afm és cour*.pfa fájlokat, majd adjuk ki a következő parancsot ebben az alkönyvtárban:

mkafmmap *.afm

Ezután az enscript tudomására kell hozni, hogy létezik a fenti alkönyvtár. Ehhez módosítanunk kell az enscript lokális, vagy globális konfigurációs állományában az AFMPath opciót valahogy így:

AFMPath: /usr/local/lib/psfonts/ibmcour:/usr/local/lib/enscript

Természetesen a fenti elérési útvonalak attól függenek, hogy hová telepítettük az enscriptet ill. az IBM Courier fontokat.

Ezek után egy
enscript -Xlatin2 latin2_kodolasu_szoveg_file.txt

parancsnak a ki kell nyomtatnia az alpértelmezett nyomtatón a latin2_kodolasu_szoveg_file.txt file-t a megfelelő latin-2 karakterekkel.

Használhatjuk filterként is az enscriptet. Ilyenkor az adott nyomtató filtere valahogy így néz(het) ki:

#!/bin/sh 
DEVICE=bj200 
RESOLUTION=360x360 
PAPERSIZE=a4 
SENDEOF=
ENCODING=latin2 

enscript -MA4 -X$ENCODING -Z -B -q -p- | 
if [ "$DEVICE" = "PostScript" ]; then 
     cat - 
else
gs -q -sDEVICE=$DEVICE \
   -r$RESOLUTION \ 
   -sPAPERSIZE=$PAPERSIZE \ 
   -dNOPAUSE \ 
   -dSAFER \ 
   -sOutputFile=- - 
fi 
if [ "$SENDEOF" != "" ]; then 
     printf "\004" 
fi

Részletesebb információk az enscript és a Ghostscript dokumentációjában találhatók.

3.2. Hogyan készítsünk magyar (latin-2-ben kódolt) WWW (HTML) oldalakat?

A HTML oldalak ékezethelyes megjelenítése mindig gondot okozott (és okoz ma is) a magyar lapok olvasóinak és íróinak. A HTML 2.0 és 3.2 szabványban a latin-1 kódot írták elő, így elvileg nem lehetett helyes magyar ékezetes betűket előcsalogatni. A 4.0 szabvány már megengedi hogy az UCS (Universal Character Set, ISO10646 szabvány) készlet bármelyik betűjét használhassuk. (Az UCS ugyanazt a több ezer betűt tartalmazza, mint az UNICODE, amely több mint 30000 betűt tartalmaz a világ gyakrabban használt írásmódjaiból). A használt betűkészlet azonban nem határozza meg a kódolást, amely a mi esetünkben az iso-8859-2 (latin-2) lehet.

A karakterkódokat a HTML ,,fölött'', HTTP szinten adhatjuk meg. Ez azt jelenti, hogy a web-kiszolgálónak kell a következő fejlécet elküldeni a böngészőnek (a kliensnek):
Content-Type: text/html; charset=ISO-8859-2

A HTML dokumentum (web-lap) elejére is betehetjük a kódolásra vonatkozó infomációt a META tag segítségével:
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=ISO-8859-2">
<META HTTP-EQUIV="Content-Language" CONTENT="hu">
<TITLE> ...
Itt a használt nyelvre vonatkozó META tagot is betettük.


4. Rőt Süveg, azaz magyar Linux

A Red Hat nemhivatalos fordítása készül, lásd a http://www.math.bme.hu/rsuveg/ oldalat.
A Rőt Süveg az ftp://ftp.math.bme.hu/pub/linux/rsuveg helyen található. Részletek a Rőt Süveghez mellékelt OLVASS.EL állományból:


Mi az a Rőt Süveg?
------------------

A Rőt Süveg Linux a Red Hat Software által összeállított Red Hat Linux
disztribúció nem hivatalos [részben] magyarított változata. Az, hogy
nem hivatalos azt jelenti, hogy ez nem a Red Hat Software terméke, így
nem is érdemes hozzájuk fordulni segítségért. A változatatásokat a GNU
GPL engedély tette lehetővé.

...

További változtatások
---------------------

A Rőt Süveg-be beletettem néhány gyakran használt programot, ami a Red Hat
Linux-ban nincs benne. Ilyenek például az ssh, ssh-clients és a pgp-i.

A rendszer legnagyobb része azonban a Red Hat Linux disztribúcióval
teljesen megegyezik. Ez azért is jó, mert így egy hiba (például egy
biztonsági rés) feledezésekor a Red Hat által készített csomagokkal
is frissíthetjük a rendszert, nem kell arra várni, hogy a Rőt Süveg-ben is
megjelenjenek a javítások. Így persze elveszíthetünk magyarításokat
a rendszerből, de a magyarított csomagok frissítéséről pár nap
alatt gondoskodom, így utána ezt telepítve visszakapjuk a magyarításokat.

...

Segítség
--------

Az jó lenne. Ha tetszik a dolog, és szívesen segítenél csomagok
magyarításában, javítások készítésében, akkor írj a rsuveg @ math.bme.hu
címre.


5. Magyar vonatkozású Linuxos INTERNET források

5.1. ftp-helyek

5.2. www-helyek

5.3. Levelezőlisták

5.4. Újság


6. Magyar nyelvű Linux (UNIX) leírások


7. Linux tanfolyamok


8. Közreműködők

Külön köszönet illeti Soós Pétert aki a fő közreműködője a doksi fejlesztésének.

Íme a Magyarul-HOGYAN fejlesztésében részt vevők listája:

Természetesen sokat köszönhetek a többi nemzeti HOWTO-k szerzőinek, a Linux fejlesztőinek és másoknak, akiket kifelejtettem.

vbzoli honlapja

Copyright (C) 1995 - 1998 Vörösbaranyi Zoltán (vbzoli@vbzo.li)

Ez a dokumentum szabadon terjeszthető és módosítható mindaddig amíg a Copyright és a közreműködők listája a dokumentum része marad. A módosított változaton a módosítás tényét jól láthatóan közzé kell tenni. A szerző kéri, hogy jelezzék neki a módosított változatok nyilvánosságra hozatalát.