DIALOG(1)

NÉV
dialog - párbeszéddobozokat jelenít meg shell-scriptekben

ÁTTEKINTÉS
dialog --clear
dialog --create-rc fájl
dialog [ --title cím ] [ --backtitle háttércím ] [ --clear ] [ --separate-output ] doboz-opciók

LEÍRÁS
A dialog olyan program, aminek segítségével sokféle kérdést vagy képernyőüzenetet lehet megjeleníteni, párbeszéddobozok segítségével, egy shell-scriptből. Jelenleg a következő típusú párbeszéddobozok alkalmazhatók:

igen/nem doboz, menü doboz, bevitel doboz, üzenet doboz, szöveg doboz, infó doboz, választólista doboz, rádiólista doboz és mérték doboz.

OPCIÓK

--clear
    A képernyő a képernyő-attribútumnak megfelelően törlődik kilépéskor.

--create-rc fájl
    Mivel a dialog lehetővé teszi a futás közbeni konfigurálást, ezt felhasználhatjuk egy minta konfigurációs fájl létrehozására, ennek neve fájl.

--separate-output
    A választólista-képernyőelemeknél a kimenet csak egy sort szolgáltat egyszerre, idézőjelek nélkül. Ez megkönnyíti más programok számára a továbbfeldolgozást.

--title cím
    Beállítja a cím szövegét, ami a párbeszéddoboz tetején jelenik meg.

--backtitle háttércím
    Beállítja a háttércím szövegét, ami a képernyő tetején, a háttérben fog megjelenni.

Doboz-opciók

--yesno szöveg magasság szélesség
    Egy igen/nem párbeszéddobozt jelenít meg, a magasság által megadott sor- és a szélesség által megadott oszlopszámmal. A szöveg a párbeszéddoboz belsejében fog megjelenni. Ha a szöveg túl hosszú ahhoz, hogy egy sorban elférjen, akkor automatikusan feldarabolódik a megfelelő helyeken. A szöveg karakterlánc ezen kívül tartalmazhat egy "\n" vagy `\n' újsor al-karakterláncot is a sortörés pontos vezérlésére. Ez a típusú doboz jól használható olyan kérdések feltételére, amelyek a felhasználótól egy egyszerű igen vagy nem választ várnak. A párbeszéddoboz tartalmaz egy Yes és egy No (Igen / Nem) gombot, melyek között a felhasználó a TAB billentyű lenyomásával válthat.

--msgbox szöveg magasság szélesség
    Az üzenet doboz nagyon hasonlít az igen/nem dobozhoz. Az egyetlen eltérés az üzenet doboz és az igen/nem doboz között az, hogy az üzenet doboznak csak egyetlen OK gombja van. Ez a doboz felhasználható bármilyen üzenet kiíratására. Miután elolvasta az üzenetet, a felhasználó lenyomhatja az ENTER billentyűt, ezáltal a dialog kilép és a hívó shell folytathatja a működését.

--infobox szöveg magasság szélesség
    Egy infó doboz alapvetően egy üzenet doboz. Ebben az esetben azonban a dialog az üzenet megjelenítése után azonnal kilép. A képernyőt nem törli le a dialog kilépéskor, így az üzenet addig ott marad, amíg a hívó shell le nem törli azt később. Ez akkor hasznos, ha informálni akarjuk a felhasználót arról, hogy bizonyos még folyó műveletek igényelhetnek kis időt a befejeződésükhöz.

--inputbox szöveg magasság szélesség [alapszöveg]
    Az input doboz akkor hasznos, ha olyan kérdéseket akarunk feltenni, amire a felhasználónak egy szöveggel kell válaszolnia. Ha az alapszöveg is meg van adva, akkor ez lesz az alapértelmezett válasz-karakterlánc. A szöveg bevitelekor a BACKSPACE gombot használhatjuk a gépelési hibák javítására. Ha a beírt szöveg hosszabb annál, hogy beleférjen a beviteli mezőbe, akkor az elgördül. Kilépéskor a bevitt szöveg a stderr hibacsatornára íródik ki.

--textbox fájl magasság szélesség
    A szövegdoboz segítségével egy szövegfájl tartalmát jeleníthetjük meg egy ablakban. Ez olyan, mint egy egyszerű szövegnézőke. A felhasználó mozoghat a fájlban a FEL/LE, PGUP/PGDN és HOME/END billentyűkkel, amelyek a legtöbb billentyűzeten megtalálhatók. Ha a sorok túl hosszúak ahhoz , hogy kiférjenek az ablakban, akkor a BAL/JOBB gombok használhatók a szövegterület vízszintes elmozgatására. A további kényelem szempontjából az előre- és hátrairányú keresési funkciókat is megvalósították.

--menu szöveg magasság szélesség menü-magasság [ címke tétel ] ...
    Ahogy a neve is mondja, a menü doboz egy olyan párbeszéddoboz, amely megjelenít egy választási listát, amelyből a felhasználó választhat. Minden menüpont egy címke karakterláncból és egy tétel karakterláncból áll. A címke egy nevet ad a menüpontnak, ami megkülönbözteti a többi bejegyzéstől. A tétel egy rövid leírása annak az opciónak, amit a menüpont jelent. A felhasználó mozoghat a menüpontok között a FEL/LE nyilak lenyomásával, a címke első betűjének mint forróbillentyűnek a lenyomásával, vagy az 1-9 számbillentyűkkel. Létezik menü-magasság bejegyzés is, ami megadja, hány menüpont legyen egyszerre kiírva, de a menü elgördül, ha ennél több bejegyzés van. Amikor a dialog kilép, a címke a kiválasztott menüpontból kiíródik a stderr hibacsatornára.

--checklist szöveg magasság szélesség lista-magasság [ címke tétel állapot ] ...
    A választólista hasonlít a menü dobozhoz abban, hogy több lehetőség közül választhatunk egy menü formájában. Ahelyett azonban, hogy választanánk egyet a menüpontok közül, minden bejegyzést ki- vagy bekapcsolhat a felhasználó. Az eredeti ki/be állapotot az állapot szabályozza. Kilépéskor azok a címke karakterláncok lesznek kiírva a stderr hibacsatornára, amelyeknek állapota bekapcsolt.

--rádiólista szöveg magasság szélesség lista-magasság  [ címke tétel állapot ] ...
    A rádiólista doboz hasonló a menü dobozhoz. Az egyetlen eltérés az, hogy beállítható, melyik menüpont van jelenleg kiválasztva, az állapot átváltásával on-ra.

--gauge szöveg magasság szélesség százalék
    A mérték doboz egy mértéksávot jelenít meg a doboz alján. A sáv jelzi a százalékértéket. Új értékeket a szabványos bemenetről lehet beolvasni, egy egész számot soronként. A sáv frissítődik, hogy jelezze az új százalékértéket. Ha a bemenet XXX, a következő sorokat egészen a következő XXX-ig egy új prompt-hoz használja fel a program. A bemeneten érkező EOF jelre fejeződik be a sáv működése.

FUTÁS KÖZBENI KONFIGURÁCIÓ

1.  Készítsünk egy példa konfigurációs fájlt a következők begépelésével:

"dialog --create-rc <fájl>"

2.  Induláskor a dialog a következőképpen határozza meg a beállításokat:

    a)  ha a DIALOGRC környezeti változó be van állítva, ennek értéke adja meg a konfigurációs fájl nevét.

    b)  ha az (a) alatti fájl nem található, a $HOME/.dialogrc fájl-t használja fel mint konfigurációs fájlt.

    c)  ha a (b) alatti fájl sem található, akkor a fordításkori alapértékeket használja.

3.  Szerkesszük a minta konfigurációs fájlt és másoljuk olyan helyre, amit a dialog megtalál, a 2. lépésben leírtak szerint.

KÖRNYEZET

DIALOGRC
    Állítsuk be ezt a változót, ha meg kívánjuk adni a használandó konfigurációs fájl helyét.

FÁJLOK

$HOME/.dialogrc
    alapértelmezett konfigurációs fájl

DIAGNOSZTIKA
A kilépési kód 0, ha a dialog a Yes-el vagy az OK gomb lenyomásával ért véget, és 1, ha a No vagy a Cancel gomb volt lenyomva. Egyébként, ha hiba fordul elő a dialog -on belül vagy a dialog az ESC billentyű lenyomására lépett ki, a kilépési kód -1.

HIBÁK
A tab karaktereket tartalmazó szövegfájl-ok problémát okozhatnak a szöveg dobozban. A tab karaktereket előzőleg szóközzé kell alakítani, ha meg akarjuk jeleníteni egy szöveg dobozban.

A képernyőfrissítés túl lassú.

SZERZŐ
Savio Lam (lam836@cs.cuhk.hk) - 0.3 verzió

Stuart Herbert (S.Herbert@sheffield.ac.uk) - patch a 0.4 verzióhoz

MAGYAR FORDÍTÁS
Szijjártó László <laca@janus.gimsz.sulinet.hu>