DOKK / manpages / debian 10 / manpages-hu / dialog.1.hu
DIALOG(1) General Commands Manual DIALOG(1)

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

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.

A képernyő a képernyő-attribútumnak megfelelően törlődik kilépéskor.
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.
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.
Beállítja a cím szövegét, ami a párbeszéddoboz tetején jelenik meg.
Beállítja a háttércím szövegét, ami a képernyő tetején, a háttérben fog megjelenni.
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.
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.
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.
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.
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.
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.
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.
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.

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.

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:
ha a DIALOGRC környezeti változó be van állítva, ennek értéke adja meg a konfigurációs fájl nevét.
ha az (a) alatti fájl nem található, a $HOME/.dialogrc fájl-t használja fel mint konfigurációs fájlt.
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.

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

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

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.

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.

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

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

Szijjártó László <laca@janus.gimsz.sulinet.hu>

1994. Június 10. Dialog Verzió 0.4