Systém X Window


Spuštění systému X Window

     Systém  X  Window  můžete  spustit  i  v případě,  kdy  se  automaticky
nenastartuje  ihned po  zavedení operačního  systému. Existují  dva příkazy,
kterými  lze   nastartovat  systém  X  Window:   startx  a  xinit.  

Ukončení systému X Window

Volbou z nabídky, případně v případě problémů pomocí CTRL+ALT+BSPACE.

Co je systém X Window?

    Systém X Window  je distribuované grafické uživatelské prostředí původně
vyvinuté  v  akademické  instituci  Massachusetts Institute  of  Technology.
Později byl předán skupině  distributorů s názvem The X Consortium. Zde se
dodnes udržuje a nadále vyvíjí.

     V souvislosti  se  systémem X  Window existují  dva důležité  pojmy, se
kterými byste se měli seznámit. Program, jenž běží pod systémem X Window, se
nazývá klient. Například xterm je klient, který se spustí v okamžiku, kdy se
přihlašujete do systému. Program,  který poskytuje služby ostatním programům
typu  klient, se  nazývá server.  Server například  kreslí okno  pro program
xterm a zajišťuje komunikaci s uživatelem.

    Protože  jsou server a  klient dva odlišné programy,  je možné zajistit,
aby server  běžel na jednom počítači a klient na  jiném. Vzhledem k tomu, že
grafické uživatelské  rozhraní dodržuje  jistý standard, můžete  v systému X
Window spustit program na vzdáleném počítači (třeba na druhém konci světa) a
přitom  můžete grafické  rozhraní  tohoto programu  vidět na  svém počítači.

    Dalším důležitým termínem,  se kterým byste se měli seznámit, je správce
oken  (window manager).  Jedná  se o  speciální program  typu  klient, který
určuje pozici  jednotlivých oken na  pracovní ploše systému X  Window a řídí
způsoby, kterými uživatel například přemisťuje okna.
Existuje několik desítek správců oken.
 
Ve druhé polovině devadesátých let se začala vyvíjet ucelená grafická
uživatelská rozhraní směřující k jednotnému vzhledu a chování aplikací. Pro
Linux existují dva základní systémy KDE a GNOME.

Co se nachází na pracovní ploše X Window

     Když poprvé nastartujete  systém X  Window, zároveň se  nastartuje řada
dalších  programů.  Jako  první  se nastartuje  server.  Další  v pořadí  se
nastartují  některé programy  typu klient, jejich  pořadí a typ  závisí na
distribuci  a není  standardizován.  Je však  pravděpodobné, že  mezi těmito
klienty je správce oken.


Aktivní okno

    Správce oken řídí spoustu důležitých nastavení. Vás bude určitě zajímat,
jak nastavit dané okno  (například terminálové okno) tak, abyste v něm mohli
zadávat  příkazy. 
Musíte na dané okno (chcete-li, aby bylo aktivní) klepnout myší. 

Přemisťování oken

    V systému X  Window lze rovněž konfigurovat způsob, kterým mají být okna
přemisťována. 
Nejznámější způsob  spočívá v tom,  že se
kurzor  myši  umístí  na titulní  (hlavní)  lištu  okna, stiskne levé
tlačítko, a pak se okno přesune na novou pozici.

    Jiný způsob přemisťování oken může spočívat v tom, že se využívá některé
klávesy na klávesnici. Stiskněte
klávesu Alt, nastavte kurzor  myši kamkoliv do rámce okna a pak po stisknutí
levého tlačítka okno přesuňte na novou pozici.

    I zde platí, že si konfiguraci správce oken můžete měnit metodou pokusů
a omylů,  nebo si prostudujte příslušnou  dokumentaci. 

Překrývání oken

    Protože  v systému X Window může být  otevřeno několik oken najednou, má
smysl  hovořit o překrývání  oken. Přestože  okna a samotná  pracovní plocha
systému X  Window jsou dvourozměrné, mohou  se okna navzájem překrývat, jako
by představovaly  třírozměrné útvary.  To znamená, že vybrané  okno může být
zobrazeno  v popředí  a  částečně nebo  úplně  překrývat okna  na pozadí.  V
souvislosti s překrýváním oken existuje několik operací:

     Vyzvednutí  (raising)  okna do  popředí. Toho  lze dosáhnout
klepnutím  levým  tlačítkem myši  na  titulní lištu  vybraného okna.  

    Zasunutí (lowering) okna do pozadí. Toho lze obvykle dosáhnout klepnutím
pravého  tlačítka  myši na  titulní  lištu okna.  Dokonce lze  nakonfigurovat
správce oken tak, že  k vyzvednutí i zasunutí okna se použije totéž tlačítko
myši  - je-li  okno v  popředí, pak se  zasune do  pozadí a je-li  v pozadí,
vyzvedne se do popředí.

    Cyklické procházení  všech oken. Správce oken může být konfigurován tak,
že  po stisknutí  jisté klávesy  se postupně  objevuje ve  stanoveném pořadí
každé otevřené okno v popředí.

Transformace okna do ikony

Ikona s tečkou v levém rohu lišty slouží k minimalizaci okna. De facto zmizí
z obrazovky a zůstane po něm jen tlačítko v řádku aktivních aplikací. To
také představuje nejpohodlnější možnost, jak je znovu otevřít. Ikona se
čtverečkem zajistí roztažení okna na maximum - okno pokryje celou pracovní
plochu. Klepnete -li na ni znovu, vrátí s ke své velikosti před maximalizací.

Křížek v pravém horním rohu okna umožňuje jeho uzavření. Příslušná aplikace
tak bude ukončena. 

Jak měnit velikost oken

Klepnete  na rámeček ohraničující
okno levým  tlačítkem myši, držíte  je stisknuté a rozměr  okna nastavíte na
požadovanou  velikost  (tento  způsob  je  běžný i  u  ostatních  operačních
systémů, jako je Microsoft Windows nebo OS/2).

Virtuální pracovní plochy

Přepínač se nachází ve spodní liště. Chcete-li se přepnout na jinou plochu,
stačí nastavit její tlačítko. Přemisťování mezi plochami:
Klepněte levým tlačítkem myši na ikonu v levém horním horu okna. Otevře se
jeho menu. Z něj vyberte Send window to a následně cílovou plochu. Jakmile
ji odešlete, okno zmizí, protože přeskočilo na zadanou plochu.
(Přesuny je možno realizovat i prostředním tlačítkem myši okně virtuální
pracovní plocha ve spodní liště.)

Kopírování textu

Nejprve myší vyznačíte kopírovaný text - stiskněte levé tlačítko na jeho
začátku, táhněte na konec a tam tlačítko uvolněte. V okamžiku, kdy pustíte
levé tlačítko, označený text se automaticky loží do schránky, odtud jej pak
můžete vložit kam potřebujete. Přesuňte kurzor na cílové místo - například
klepněte do editovaného textu. Nyní stiskněte prostřední tlačítko myši. text
ze schránky se vloží na aktuální pozici kurzoru.

Spouštění aplikací (programů)
Chcete-li spustit některý program, klepněte levým tlačítkem na ikonu
hlavního menu v levém dolním menu obrazovky. Objeví se nabídka základních
aplikačních kategorií. Většina z nich pod sebou skrývá další menu, což
naznačuje šipka na pravém okraji položky. Nově spuštěná aplikace si otevře
okno (okna) na pracovní ploše. Jeho prostřednictvím s ní budete komunikovat.

Program xclock

xclock    [-digital]    [-analog]   [-update    seconds]   [-hands    color]

Program  xclock (hodiny)  funguje přesně  tak, jak asi  očekáváte. Zobrazuje
ciferník  s vteřinovou  ručičkou  a malou  i velkou  ručičkou v  malém okně.

     Prostřednictvím  myši  nemůžete   vlastnosti  okna  s  hodinami  příliš
modifikovat. Nanejvši můžete měnit  jeho velikost. Pokud však program xclock
spustíte  z příkazového  řádku,  pak můžete  prostřednictvím jeho  parametrů
nastavit různé  vlastnosti. Když  zadáte příkaz xclock  -digital, zobrazí se
digitální  hodiny.  Pomocí  parametru -update  můžete  nastavit,  zda se  má
vteřinová  ručička aktualizovat  každou sekundu  (-update 1)  nebo například
každých pět sekund (update -5).

    Chcete-li vědět více  o programu xclock a jeho parametrech, podívejte se
do manuálových stránek. Stačí v příkazovém řádku zadat man xclock.

Jestliže  máte program  xclock  spuštěn na  popředí (což  je běžný  způsob v
provozování  programů)  a chcete  jej  ukončit,  stiskněte kombinaci  kláves
Ctrl-C.

Program xterm

     Okno s  příkazovým řádkem uvnitř je  řízeno programem, jenž se nazývá  
xterm. Což je zvláštní a přitom komplikovaný program.

    Na první pohled  se zdá, že toho moc neumí, ale jeho prostřednictvím lze
vykonat spoustu užitečné práce. Emuluje terminál, a proto v něm lze spouštět
všechny textově orientované aplikace  operačního systému Unix.

Chcete-li
něco zadávat  v okně tohoto programu  xterm, musí být toto  okno aktivní. To
znamená, že  musíte do okna terminálu  přesunout kurzor myši. Způsob, kterým
se   nastavuje    aktivní   okno    obecně,   závisí   na    správci   oken.

     Program xterm  představuje  jednu z  možností, jak  v systému  X Window
spouštět  více programů současně.  Programy běžící  v systému X  Window jsou
standardními programy  operačního systému  Unix, proto mohou  být spuštěny z
terminálového  okna. Protože  dlouhodobé programy spouštěné  z terminálového
okna zablokují  program xterm  po celou dobu  svého běhu, spouští  se takové
programy zpravidla na pozadí. 

gv - prohlížeč postscriptu a PDF
$ gv [ filename ]

PostScript Jazyk pro komplexní popis tiskové
strany, nezávislý na výstupním zařízení.

acroread - prohlížeč PDF dokumentů

$ acroread [ filename] 

Adobe Portable Document Format (PDF) je otevřený de facto standard pro
distribuci elektronických dokumentů "bez hranic". PDF je
univerzální formát, který
zachovává všechna použitá písma, layout, barvy a obsažené
obrázky dokumentu, bez
ohledu na to, v jaké aplikaci a na jaké platformě byl
vytvořen. Soubory PDF jsou
kompaktní (neskládají se z desítek propojených souborů) a
prohlížet či tisknout je
může skutečně každý pomocí volně šířeného (freeware) Adobe
Acrobat Readeru.

Prace s dokumenty ve formatech typu Microsoft Office (Open Office):

$ OOo (na bartovi) (Open Office)

Grafika - např xv, kreslení - xfig, kalkulačka - xcalc, tabulkový procesor -
gnumeric, ......

Atributy systému X Window

    Existuje  spousta programů,  jež využívají vlastností  systému X Window.
Některé  programy, jako  je editor  emacs, mohou  být spuštěny  jako textově
orientované  aplikace a  zároveň mohou  být spuštěny  v prostředí  systému X
Window. Existuje  však řada programů, které mohou  běžet pouze v prostředí X
Window.

Geometrie

     Existuje několik  aspektů, které  mají programy  běžící pod  systémem X
Window společné. První z nich lze označit jako geometrii. Atributy geometrie
popisují   velikost  a   umístění   okna  a   tvoří  je   čtyři  komponenty.

   *  Horizontální rozměr,  zpravidla měřený v  grafických bodech. (Grafický
     bod je nejmenší jednotka na obrazovce, které lze přiřadit barvu. Systém
     X Window běžně pracuje  s rozliýovací schopností 1024 bodů horizontálně
     a  768  bodů  vertikálně.) Některé  aplikace  (xterm  nebo emacs)  měří
     velikost okna ve znacích.  Například šířka okna je dána počtem znaků na
     řádku (nejčastěji osmdesát), který může aplikace zobrazit.

   * Vertikální  rozměr, opět obvykle měřený  v grafických bodech. Rovněž je
     možné stanovit vertikální rozměr ve znacích.

   *  Horizontální  vzdálenost  od  okrajů  obrazovky.  Například  číslo  +35
     znamená, že  levý okraj okna bude vzdálen  35 grafických bodů od levého
     okraje obrazovky. Na druhé     straně číslo -50 bude znamenat, že pravý
     okraj  okna  bude vzdálen  padesát  grafických bodů  od pravého  okraje
     obrazovky. Obecně  platí, že  není možné inicializovat  okno mimo rámec
     obrazovky,  i když je  pak možné  okno mimo rámec  obrazovky přesunout.

   * Vertikální vzdálenost od  horního nebo dolního okraje obrazovky. Kladná
     vertikální vzdálenost  je měřena od horního  okraje obrazovky a záporná
     je  měřena  od  spodního  okraje obrazovky.  Všechny  čtyři  komponenty
     definující geometrii okna  se uvádějí prostřednictvím jediného řetězce.
     Například  503x73-78Ctrl+0   znamená,  že  okno  bude   mít  šířku  503
     grafických  bodů, výšku 73  grafických bodů  a že bude  umístěno vpravo
     bezprostředně  pod horním  okrajem obrazovky.  Obecný tvar  řetězce pro
     specifikaci   geometrie   okna   je  tedy:   hsizexvsize+hplace+vplace.

Display

    Každé aplikaci v systému X Window je přiřazen tzv. display, což je jméno
obrazovky, kterou  řídí server  systému X Window.  Displej se skládá  ze tří
komponent:

   *  Jméno  počítače,  na  kterém  server  běží.  Při  samostatné  instalaci
     operačního  systému  Linux běží  server  vždy na  stejném systému  jako
     klient.  Ve   většině  případů  může  být   jméno  počítače  vynecháno.

   *  Číslo serveru,  který  na daném  počítači běží.  Na každém  jednotlivém
     počítači  může  běžet  několik serverů  systému  X  Window současně  (v
     případě operačního systému Unix to není příliš častý případ). Pak každý
     z nich musí mít unikátní číslo.

   *  Číslo  obrazovky. Systém  X  Window podporuje  servery řídící  v  daném
     okamžiku  více   než  jednu  obrazovku.  Některé   aplikace  je  účelné
     provozovat na více než jednom monitoru a pak je nutné, aby server řídil
     více monitorů. Není totiž  efektivní, aby byl pro každý monitor spuštěn
     zvláštní server.

Uvedené  tři atributy  lze specifikovat  prostřednictvím jediného  řetězce v
následujícím          formátu:          machine:server-number.screen-number.

    Například moje aplikace mají nastavenu hodnotu pro display jako :0.0. To
znamená, že systém pracuje  s první obrazovkou, řídí jej první server a běží
na  lokálním  počítači. Kdybych  však  používal vzdálený  počítač, pak  bude
display  nastaven  jako  krusty.math.muni.cz:0.0.  Implicitně se  řetězec  
definující hodnotu display  čte ze systémové proměnné DISPLAY a může
být předefinován  parametry příkazového řádku pro  spuštění systému X Window. 
Chcete-li  se  přesvědčit, zda  je systémová  proměnná
nastavena, zadejte příkaz echo $DISPLAY.

Společné vlastnosti

     Systém X  Window představuje  uživatelské grafické rozhraní,  které lze
prakticky ve  všech aspektech konfigurovat. Je  téměř nemožné říci, jak jeho
jednotlivé komponenty  fungují, protože to především  závisí na konfiguraci.

jméno    následováno čím                         příklad
geometry geometrií okna                          xterm -geometry 60x24+0+90

display  display, ve kterém se má program        xterm -display lionsden:0.0
         objevit
fg       primární barva popředí                  xterm -fg yellow
bg       primární barva pozadí                   xterm -bg blue

  Každá  vlastnost může  být překonfigurována, změněna  nebo úplně nahrazena
jinou.  Proto  je  obtížné  jednoznačně popsat  chování  jednotlivých  prvků
tvořících toto rozhraní. Zatím jsme popsali to, co popsat lze: různé správce
oken a možnosti jejich konfigurace.