# Interface

# Corrigés des exercices sur la config conscrits

&icone.note; Les paragraphes signalés par cette icône sont des explications plus techniques pour donner une réponse exacte à certaines questions. Si vous êtes débutant, ce n'est pas nécessaire de les lire maintenant.

## Exercice 1 : menus du fond

1. Ouvrir une nouvelle fenêtre
   Vous pouvez par exemple cliquer sur le bouton «Fenetre».
2. Ouvrir une nouvelle fenêtre par un autre moyen
   En cliquant avec le bouton gauche ou le bouton de droite de la souris sur le fond d'écran, vous faites apparaître un menu, sur lequel vous sélectionnez «Fenêtre».

   &icone.note; Vous pouvez aussi lancer des fenêtres au clavier. Vous voulez une nouvelle fenêtre terminal, gérée par l'interface graphique «X» : vous tapez

       xterm

   Bien sûr, il faut mettre une esperluette (`&`) après `xterm` pour récupérer la main dans le terminal où l'on a lancé la commande.

3. Fermer ces deux fenêtres.

   Une fenêtre est un support pour le programme qui tourne dedans. Quand vous quittez le programme, la fenêtre disparaît. En général, quand vous voulez quitter quelque chose, essayez «`q`» ou «`Q`», «`^C`» et «`^D`». Les commandes pour quitter les programmes les plus courants sont les suivantes :

   `mutt` | `q` (quit)
   `pine` | `q` (quit)
   `joe` | `^KX` (quitter en sauvant)
   `vi(m)` | `:wq` (write quit)
   `(x)emacs` | `^X^S` `^X^C` (save et cancel)
   `mozilla` | `^Q` ou sélectionner `Exit` dans le menu `File`
   `forum` | `q` (quit)
   `less`, `more` | `q` (quit)
   `xdvi` | Taper `q` ou cliquer sur `Quit`
   `gv` (GhostView) | `^Q` ou sélectionner `Quit` dans le menu `File`

   Et pour fermer une simple fenêtre terminal ? Il y a aussi un programme qui tourne dedans, appelé le shell : c'est lui qui interprète les lignes de commandes et les exécute. Il se quitte en tapant `exit` ou `^D`.

   Par opposition avec les autres programmes, le shell peut aussi se quitter en cliquant avec n'importe quel bouton sur le bouton dans le coin en haut à gauche de la fenêtre et en choisissant `Fermeture`, puis `Je veux vraiment quitter`, dans le menu qui se déroule. Ceci revient à exécuter la commande `exit`.

   Si vous fermez la fenêtre sans quitter le programme qui tournait dedans, vous ôtez d'un seul coup son support à ce programme, qui est obligé de se suicider en urgence ; inutile de dire qu'il ne l'apprécie guère.

   # &icone.attention; Attention &icone.attention;

   Les choses se passent particulièrement mal avec `pine` : c'est pendant la seconde qui s'écoule entre le moment où vous tapez `q` et le moment où `pine` finit effectivement, que tous les rangements s'effectuent réellement et sont inscrits sur le disque : copies de sauvegardes des courriers envoyés, destructions, etc. Si vous le tuez au lieu de le quitter, vous vous exposez à diverses représailles : copie de votre mail-box en lecture publique sur votre compte, disparition de courrier, second Pine tournant en parallèle et vous empêchant de lire votre courrier la fois suivante, etc. Ce ne sont pas des inventions : tous ces cas ont été constatés.

## Exercice 2 : souris et menus des fenêtres

1. Ouvrir une fenêtre `gamma`

   Utilisez le menu du bouton «Menu», ou faites-le apparaître en cliquant sur le fond de l'écran. Sélectionnez `Terminaux` et cliquez sur `Nouvelle fenêtre Gamma`.

   &icone.note; Vous pouvez aussi l'appeler au clavier en tapant :

       xterm -name gamma &

2. La déplacer dans le coin supérieur gauche de l'écran
   Cliquez avec le bouton de gauche sur la barre de titre de la fenêtre et déplacez-là à l'endroit voulu. Vous pouvez aussi cliquer dans le menu du bouton gauche de la fenêtre, sélectionner `Déplacement` et mettre la fenêtre où bon vous semble.
3. Icônifier (on dit aussi "minimiser") cette fenêtre
   Cliquez sur le troisième bouton à partir de la droite (triangle vers le bas) pour minimiser la fenêtre (on n'en garde que la barre de titre). Pour la faire revenir à sa taille normale, cliquer à nouveau sur ce bouton. Vous pouvez aussi sélectionner `Minimiser` dans le menu de la première case à gauche.
4. La faire réapparaître

   Cliquez à nouveau sur le bouton de l'exercice précédent (troisième bouton à partir de la droite, reconnaissable à un triangle vers le bas) pour faire réapparaître la fenêtre. Vous pouvez également sélectionner `Restauration` après avoir cliqué dans le menu de la première case à gauche.

   Pour faire consulter la liste des fenêtres que vous avez ouvertes, vous pouvez cliquer avec le bouton de gauche sur le fond de l'écran.

   Quelle différence y a-t-il entre fermer une fenêtre et icônifier une fenêtre? Quand vous fermez une fenêtre, vous mettez fin au programme qui tourne dedans (ou plus exactement, comme on l'a vu plus haut, mettre fin au programme ferme la fenêtre). Quand vous icônifiez une fenêtre, vous ne faites que suspendre temporairement l'affichage; une fois la fenêtre revenue, vous reprenez là où vous en étiez.

5. Agrandir la fenêtre
   Trois possibilités.
   1. La plus simple : cliquer sur le bouton avec une flèche vers le haut à droite : il fait passer la fenêtre en plein écran (cliquez-le à nouveau pour revenir à la taille normale). Vous pouvez également cliquer sur le bouton avec une flèche vers le haut pour agrandir au maximum la fenêtre juste verticalement (cliquez à nouveau sur ce bouton pour redonner à la fenêtre sa taille normale).
   2. Attraper le bord ou le coin de la fenêtre (attention, passage technique !), cliquer avec le bouton gauche et modifier la taille de la fenêtre.
   3. Cliquer sur le menu du coin, sélectionnez `Dimensionner` et donner à la fenêtre la taille souhaitée.

   &icone.note;Les programmes en mode texte (comme `pine` ou l'ensemble des éditeurs) sont prévus pour fonctionner en 80 colonnes. Élargir la fenêtre ne sert donc à rien, la fonte ne sera pas plus grande pour autant.

6. Fermer la fenêtre `gamma`
   Tapez `exit` ou `^D`. Ou encore, dans le menu du bouton de la fenêtre en haut à gauche, sélectionner `Fermeture` et confirmez. Si vous n'êtes pas dans un xterm, il suffit de cliquer sur le bouton avec un éclair (en haut à droite de la fenêtre). Dans tous les cas, n'oubliez pas de quitter convenablement tous les programmes (`pine`, etc.) que vous aviez lancés dans ladite fenêtre (chaque programme a sa manière propre d'être quitté).

## Exercice 3 : manipuler plusieurs fenêtres

1. Ouvrir deux fenêtres quelconques
   Voir dans l'exercice 1 toutes les manières d'ouvrir des fenêtres...
2. Placer l'une des fenêtres au dessus de l'autre
   Cliquez avec le bouton de gauche la barre de titre de l'une des fenêtres pour la déplacer, et placez-la au dessus de l'autre. Autre possibilité : cliquer sur le bouton de gauche la barre de titre avec le bouton gauche de la souris et choisissez «devant». Ou encore : cliquez sur le fond d'écran avec le bouton gauche de la souris et sélectionnez la fenêtre qui vous intéresse dans la liste, toujours avec le bouton de gauche.
3. Faire passer au-dessus celle qui se trouve en-dessous. De quels moyens différents disposez-vous à cet effet ?

   Beaucoup ! Par exemple :

   1. Si on peut en atteindre un bout, cliquez avec le bouton de gauche de la souris sur la barre de titre de la fenêtre de dessous ;
   2. Si on peut placer la souris sur un endroit quelconque de la fenêtre, le faire, et appuyer sur la touche `Front` (disponible uniquement sur les claviers des stations Sun) ;
   3. Cliquez avec le bouton de droite de la souris sur la barre de titre de la fenêtre de dessus pour la faire passer derrière ;
   4. Cliquez sur le fond d'écran avec le bouton gauche de la souris pour faire apparaître la liste qui affiche le nom de vos fenêtres, cliquez sur le nom de la fenêtre à faire passer devant ;
   5. Utilisez le pager (voir exercice suivant) : cliquez avec le bouton du milieu sur l'image de votre fenêtre pour la faire passer devant.

## Exercice 4 : écrans virtuels

1. Lancer Mozilla
   Cliquez sur le bouton Web ou sélectionnez Mozilla dans le menu du fond.
2. Déplacer la fenêtre de Mozilla dans un autre écran pour libérer celui où vous vous trouvez

   En haut à gauche de l'écran, vous avez une sorte de petit tableau partagé en six cases; dans l'une d'entre elles se trouvent plusieurs autres petites cases. Ce tableau représente en fait l'ensemble de votre bureau; par exemple :

   | Les petites cases représentent chacune un bureau virtuel, et les petites cases de couleur qui sont dedans sont des modèles des fenêtres que vous avez ouvertes; la fenêtre dans laquelle vous vous trouvez est de la couleur des fenêtres activées. La case représentant le bureau où vous vous trouvez est d'une autre couleur que les autres.
   | Cliquez maintenant sur une des cases : votre écran est soudain très vide, vos fenêtres ont disparu, restent l'horloge, quelques boutons et ce tableau appelé pager.

   Pour y déplacer le Mozilla que vous venez de lancer, utilisez la souris : cliquez avec le bouton du milieu sur la petite case qui représente le fenêtre de Mozilla et faites-là glisser sur la case où vous vous trouvez; la fenêtre Mozilla va alors apparaître.

   Pour vous déplacer d'écran virtuel en écran virtuel, vous avez deux solutions : cliquer sur la case correspondante du pager, ou utiliser les flèches du pavé central, associées à la touche `méta` (les touches avec un losange noir ou blanc à côté de la barre d'espace).

3. Dans un troisième écran, ouvrez une fenêtre quelconque

   Allez dans un autre écran virtuel et ouvrez une nouvelle fenêtre. Si vous jetez un coup d'oeil au pager, vous voyez que trois des bureaux sont occupés : l'un par la fenêtre de départ, l'autre par Mozilla, l'autre par la toute dernière fenêtre ouverte.

   L'intérêt des écrans virtuels vient de ce qu'ils permettent de ne pas empiler dans un même espace plusieurs fenêtres (un texte que l'on tape, un dvi, un Mozilla, un jeu, du mail, etc).

4. Cliquez sur le second bouton à gauche d'un xterm, et déplacez-vous dans les écrans virtuels; que se passe-t-il?

   Le xterm se déplace «avec vous» : il ne reste pas dans l'écran virtuel où il se trouvait. En fait, le second bouton rend la fenêtre «sticky», comme le sont les boutons ou la console; ils sont affichés en permanence, quel que soit l'écran virtuel dans lequel vous vous trouvez. Les fenêtres sticky ont leur barre de titre rayée, et non pas lisse.

## Exercice 5 : Mozilla

1. Allez dans l'écran où se trouve Mozilla
   Cliquez sur la petite fenêtre Mozilla dans le pager, ou utilisez `méta-flèche` pour vous déplacer dans les écrans virtuels.
2. Quelles sont les différentes façons de lancer Mozilla ?

   Avec la config conscrits, vous disposez d'un bouton «Web» dans la barre des boutons. Vous pouvez aussi appeler Mozilla au clavier, en tapant

       drakkar ~ $ mozilla &

   L'esperluette (`&`) demande à ce que le nouveau programme que vous lancez (ici Mozilla) soit mis en tâche de fond : vous récuperez donc le prompt immédiatement, et votre fenêtre terminal est à nouveau disponible pour d'autres commandes.

   Cette façon de lancer un navigateur est très utile, car vous pouvez lui donner une URL en argument.

       drakkar ~ $ mozilla http://www.eleves.ens.fr/tuteurs/ &

3. Que se passe-t-il quand vous cherchez à lancer deux Mozilla en même temps ?

   Une fenêtre apparaît pour vous demander de créer un nouveau profil. En effet, chaque profil ne peut correspondre qu'à un seul Mozilla. Cliquez sur Exit et trouvez un autre moyen de lancer un second navigateur...

4. Trouvez le moyen d'ouvrir un second navigateur à partir du premier. Comment fait-on pour refermer cette fenêtre sans quitter Mozilla ?

   Regardez dans les menus de Mozilla : dans le menu `File`, vous trouvez `Navigator Window` dans le sous-menu `New>`. C'est ce qui vous intéresse. Sélectionnez ce choix pour obtenir un second navigateur; vous pouvez aussi utiliser un raccourci clavier : `Ctrl-N`.

   Pour fermer un nouveau navigateur sans quitter Mozilla, il faut sélectionner `Close` (`Ctrl-W`) dans le menu `File`.

   Quelle différence y a-t-il entre lancer deux Mozilla à la fois et ouvrir une seconde fenêtre Mozilla à partir de la première ? Dans le premier cas, vous lancez deux fois le même programme en prenant donc ainsi deux fois plus de ressources machine; de plus, vous perdez la possibilité d'utiliser les données (historique, marque-pages...) de la première session.

   Si par contre vous lancez une seconde fenêtre à partir du premier Mozilla, c'est le même programme et vous disposez des mêmes ressources dans les deux fenêtres.

   Un des avantages de Mozilla est la possibilité d'utiliser des onglets : si vous faites `Ctrl-T` ou sélectionnez `Navigator Tab` dans le sous-menu `New` du menu `File`, vous ouvrez une fenêtre de navigation à l'intérieur de votre navigateur qui se superpose à la précédente. Vous pouvez passer de l'une à l'autre en cliquant sur les différents onglets.
5. Quitter Mozilla

   Mozilla se quitte en cliquant sur `Quit` dans le menu `File` ou en cliquant sur le bouton éclair (le deuxième à gauche dans la barre de titre).

   Vous pouvez aussi utiliser les raccourcis claviers pour quitter : `Ctrl-Q` (quitter).

## Question subsidiaire : que faut-il impérativement quitter ou fermer avant de se déloguer ?

Tout les programmes qui font des accès en écriture sur le disque, c'est-à-dire qui ne se contentent pas de lire mais ont besoin d'écrire des informations :

- Les éditeurs bien sûr, avec lesquels on écrit du texte, que l'on veuille ou non le conserver (`joe`, `pico`, (`x`)`emacs`, (`x`)`vi`(`m`)...).
- Les lecteurs de courrier : `pine`, `mutt`, `elm`...), qui écrivent sur le disque puisqu'ils stockent des copies de mails envoyés, permettent de détruire des courriers, de faire des rangements, etc.
- Les lecteurs de news : `forum`, `rn`, `trn`, `slrn`, `knews`... ; dans les fichiers de configuration de ces programmes sont écrites les mises à jour : messages lus, groupes auxquels on est abonné, etc.
- Les navigateurs (Mozilla, Lynx...), qui modifient leurs fichiers de configuration pour conserver vos marque-pages, garder une trace des dernières pages visitées, etc.
- les jeux (scores et parties en cours).
- Les outils divers (`xpaint`, `xv`, `xfig`...), dont on conserve les données.

En pratique, il faut donc quitter tout ce qu'on a ouvert; les exceptions sont les visioneurs DVI et PostScript (`xdvi` et `gv` se contentent de lire un fichier et de l'afficher, sans rien écrire) et les fenêtres terminal : vous n'avez pas besoin de fermer les fenêtres qui affichent pacifiquement un prompt.

Auteur : Émilia Robin, Yann Tholoniat, Joël Riou.