diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 4c3f7f3..0000000 --- a/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*~ -*.html diff --git a/src/00INDEX b/src/00INDEX new file mode 100644 index 0000000..af52041 --- /dev/null +++ b/src/00INDEX @@ -0,0 +1,35 @@ + +L'arborescence + +unix +unix/config # aide sur la config. en particulier fvwm +unix/editeurs # les éditeurs, une doc sur vim, une doc + # sur emacs +unix/exercices # les exercices de shell +unix/exercices/solutions + +internet +internet/courrier # le courrier électronique +internet/forum # le forum des élèves, les news +internet/loin # transférer des fichiers, putty,... +internet/web # le www, comparaison mozilla-w3m... +internet/web/html # le langage html proprement dit + +theorie # théorie : formats de fichiers, qu'est-ce + # qu'un compte, sécurité, + +logiciels # doc sur d'autres logiciels +logiciels/cvs # doc sur cvs +logiciels/rcs # doc sur rcs +logiciels/latex # LaTeX + +meta # charte, jargon, ... +meta/faq # faq + +docs # les docs papiers utiles +docs/bocal # la rubrique tuteurs dans le bocal +docs/guides-de-survie # guides de survie +docs/hublot # les numéros 1-12 du hublot + +icones # icônes apparaissant sur plusieurs pages +icones/boutons # boutons de la config' conscrits diff --git a/www/404.tml b/src/404.tml similarity index 100% rename from www/404.tml rename to src/404.tml diff --git a/src/Makefile b/src/Makefile new file mode 100644 index 0000000..7fd0374 --- /dev/null +++ b/src/Makefile @@ -0,0 +1,29 @@ +# Ce Makefile est là purement par commodité : la vraie fonctionnalité +# est dans les scripts TML et les hooks du dépôt git ; rien dans la +# procédure de mise à jour du site web ne devrait exiger de passer par +# make. + + +.PHONY: rebuild install + + +gitdir = /users/staffs/tuteurs/www.git +originurl = $(shell git config --get remote.origin.url) + + +rebuild: + /users/staffs/tuteurs/share/tml/bin/rebuild . + + +# C'est un hook déclenché par git push qui fait l'installation du site +# web. Ici, on essaie juste de voir si on est en local sur clipper +# (auquel cas on n'a peut-être pas le droit d'écrire chez tuteurs, mais +# sg-tuteurs nous le donnera). Sinon c'est probablement qu'on a cloné +# par ssh (de chez soi ou de clipper), et on devrait savoir pousser. + +install: + case ${originurl} in \ + ${gitdir} ) /users/staffs/tuteurs/bin/sg-tuteurs git push ;; \ + * ) git push ;; \ + esac + diff --git a/www/actualite.tml b/src/actualite.tml similarity index 100% rename from www/actualite.tml rename to src/actualite.tml diff --git a/www/aide.tml b/src/aide.tml similarity index 100% rename from www/aide.tml rename to src/aide.tml diff --git a/www/debutants.tml b/src/debutants.tml similarity index 100% rename from www/debutants.tml rename to src/debutants.tml diff --git a/www/doc-interne.tml b/src/doc-interne.tml similarity index 100% rename from www/doc-interne.tml rename to src/doc-interne.tml diff --git a/src/doc_rentree-booklet.pdf b/src/doc_rentree-booklet.pdf new file mode 100644 index 0000000..71512a0 Binary files /dev/null and b/src/doc_rentree-booklet.pdf differ diff --git a/src/docs/Forum_pour_les_nuls.pdf b/src/docs/Forum_pour_les_nuls.pdf new file mode 100644 index 0000000..b48a539 Binary files /dev/null and b/src/docs/Forum_pour_les_nuls.pdf differ diff --git a/src/docs/bocal/bocal422.tml b/src/docs/bocal/bocal422.tml new file mode 100644 index 0000000..5da9310 --- /dev/null +++ b/src/docs/bocal/bocal422.tml @@ -0,0 +1,58 @@ + + + +
++Il y a à droite de la barre d'espace de votre clavier une touche intitulée +« Compose » (touche Menu sur les claviers Azerty). Pour taper un accent, par +exemple un e accent aigu, appuyez successivement sur Compose, sur l'accent que +vous voulez mettre, puis sur la lettre que vous souhaitez accentuer. Il n'est +pas nécessaire de maintenir Compose enfoncée. Les accents sont : l'apostrophe +pour l'accent aigu, l'apostrophe inverse (en haut à gauche du clavier) pour +l'accent grave, le guillement double pour le tréma ; l'accent circonflexe, +lui, est accessible via Shilt+6. Ainsi par exemple : +
+ ++Compose " e donne ë +Compose ` A donne À +Compose ^ u donne û ++ +
+Vous le voyez, il est ainsi possible de mettre les accents sur les capitales. +Rappelons qu'en français les capitales prennent les accents ; ceci permet +d'éviter « SALLE DES CONGRES » et autres « LARDONS SALES ». +
++Il est également possible d'utiliser Compose pour taper d'autres caractères +spéciaux. De façon générale, la combinaison évidente marche : ainsi +
++Compose , c donne ç +Compose < < donne « ++
+En cas de question, n'hésitez pas à nous contacter par mail :
+tuteurs@clipper
,
+
+Les tuteurs informatique +
+ + + + + + diff --git a/src/docs/bocal/bocal423.tml b/src/docs/bocal/bocal423.tml new file mode 100644 index 0000000..7c1d634 --- /dev/null +++ b/src/docs/bocal/bocal423.tml @@ -0,0 +1,72 @@ + + + + +L'impression est hélas une des manœuvres les plus compliquées +sur les stations Unix. En fait, tout dépend du type de document que +vous voulez imprimer.
+ +%
, puis
+choisissez l'imprimante) ou Mozilla (menu Fichier).lpr
: par exemple, si votre fichier s'appelle
+rapport.ps
, tapez dans
+un terminal la commande suivante : lpr rapport.ps
lpr -Zdouble rapport.ps
dvips rapport.dvi -o+
+la rédac', pour les tuteurs informatique +
+ + + + + + diff --git a/src/docs/bocal/bocal424.tml b/src/docs/bocal/bocal424.tml new file mode 100644 index 0000000..f7460d9 --- /dev/null +++ b/src/docs/bocal/bocal424.tml @@ -0,0 +1,77 @@ + + + + ++Ça a l'air bête, mais la chose la plus utile à savoir dans une salle +info, c'est comment trouver de l'aide en cas de pépin. Car les pépins, +ça arrive, ne serait-ce qu'un câble débranché ou un problème +d'impression... +
+ ++Les tuteurs sont là pour vous aider ; il s'agit donc de dénicher l'un +d'entre eux. Il existe une commande qui vous permet de savoir qui sont vos +voisins en salle informatique, c'est la commande qui. Son usage est +simple : vous tapez simplement qui, suivi d'un espace, suivi du nom +d'une salle informatique. Les noms sont : +
+ ++ s pour la salle S + t pour la salle T + i pour l'infirmatique + 46 pour la salle du 46 + j pour la salle de Jourdan + m pour la salle de Montrouge ++ +
+Dès que vous appuyez sur entrée, magie, apparaît un plan de la salle, +agrémenté de quelques noms en bleu. (Là, vous avez déjà appris en +bonus : « comment trouver le nom de la jolie brune/du beau blond assis +à côté de moi »). Parmi ces noms, si vous avez de la chance, certains +pouvez aller leur poser votre question. +
+ ++Si par malheur il n'y a pas de tuteur dans votre salle, vous pouvez +toujours : +
+ Enfin, avant d'en venir à la troisième solution, essayez plutôt de
+contacter les tuteurs par mail. L'adresse est simplement tuteurs@clipper
, et
+vous êtes à peu près sûr de recevoir une réponse assez vite.
+Jérôme, pour la rédac et les tuteurs +
+ ++La salle T est la salle des informatheux, à côté de la salle S. Mais les +tuteurs qui y vivent sont gentils quand même. +
+ + + + + diff --git a/src/docs/bocal/bocal425.tml b/src/docs/bocal/bocal425.tml new file mode 100644 index 0000000..5896b95 --- /dev/null +++ b/src/docs/bocal/bocal425.tml @@ -0,0 +1,58 @@ + + + + +
+À votre entrée à l'École, on vous a attribué une magnifique adresse de la
+forme prenom.nom@ens.fr
, totalement équivalente à
+login@clipper.ens.fr
.
+Beaucoup d'entre vous possédent déjà une adresse
+trululu23@hotmail.com
.
+Alors, pourquoi changer ?
+
+Alors, comment lire son mail ? +
++Si vous êtes à l'École, le programme par défaut s'appele pine : pour le +lancer, vous pouvez cliquer sur l'icône boîte aux lettres. Les commandes sont +rappelées en bas de l'écran, mais n'hésitez pas à demander de l'aide. +
+
+Si vous êtes loin, vous pouvez soit vous connecter à clipper par un protocole
+sécurisé comme ssh, soit le lire par le Webmail : il s'agit d'une interface
+comparable à celle de yahoo, accessible à l'adresse
+www.ens.fr/mail/clipper
.
+
Les tuteurs informatique
+ + + + + + diff --git a/src/docs/bocal/bocal426.tml b/src/docs/bocal/bocal426.tml new file mode 100644 index 0000000..74fad9a --- /dev/null +++ b/src/docs/bocal/bocal426.tml @@ -0,0 +1,59 @@ + + + + +
+Il est très utile de classer son courrier électronique, pour les mêmes raisons
+que pour le courrier traditionnel : les risques de perte de courriers
+importants sont moindres, et on retrouve ceux-ci plus rapidement.
+Ceci est possible avec tous les logiciels de courrier électronique sérieux,
+mais limitons-nous au cas du logiciel pine
.
+
Vos courriers électroniques sont sauvegardés d'une part dans votre
+répertoire Mail
et d'autre part dans le fichier
+/var/mail/login
. Ce dernier fichier est votre boîte de
+réception, c'est le «dossier» que vous consultez probablement le plus
+souvent. Au départ, vous disposez aussi du dossier sent
qui
+contient les mails que vous avez envoyés. On peut afficher la liste des
+dossiers existants à partir de la commande Folder list (touche
+L
). On entre dans un dossier avec la touche
+>
ou avec Enter
et on en ressort avec
+<
.
Quand on est positionné sur un message ou qu'on en lit un, on peut le
+déplacer dans un autre dossier en utilisant la touche S
+(comme Save) puis en indiquant le dossier en question (si on ne
+se souvient plus de tous les noms de dossiers, on peut alors afficher la
+liste en tapant Ctrl-T
). Par ailleurs, on peut aussi effacer
+un message en appuyant sur la touche D
.
Notons que tous ces dossiers sont stockés dans le sous-répertoire
+Mail
de votre compte personnel (sur clipper
+a priori) à l'exception de votre boîte de réception qui se
+trouve sur un disque dur (au doux nom de /var/mail
) qui est
+partagé par tous les utilisateurs, ainsi il est importantissime de
+réduire autant que faire se peut la taille de vos boîtes de réceptions,
+puisque si le disque dur qui les contient venait à être plein
+(actuellement, il est plein à 85%), les conséquences pourraient être très
+désagréables : plus aucun élève ne pourrait recevoir de courrier
+électronique, de même qu'un agent de la Poste aurait des difficultés à
+déposer une lettre dans une boîte pleine !
+
Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal428.tml b/src/docs/bocal/bocal428.tml new file mode 100644 index 0000000..025f764 --- /dev/null +++ b/src/docs/bocal/bocal428.tml @@ -0,0 +1,119 @@ + + + + ++D'abord, des préliminaires théoriques, pénibles mais utiles. Il +existe plusieurs types de fichiers sur les machines Unix : +
+latex
) ;
+ Ceci donne une structure d'arborescence aux fichiers, ce qui permet
+de s'y retrouver plus facilement. Ainsi, tous vos fichiers sur les
+machines Unix de l'École sont rassemblés à l'intérieur d'un même
+répertoire, qui est votre compte personnel. Vous n'aurez probablement pas
+besoin de le savoir, mais le nom complet de ce répertoire est de la forme
+/users/02/pataphysique/vian
; vous pourrez aussi le désigner
+plus simplement par un tilde (~
) dans lescommandes
+ci-dessous. La barre oblique /
(et non \
)
+marque les sous-répertoires : ans l'exemple ci-dessus, vian
+est un sous-répertoire de pataphysique
, lui-même un
+sous-répertoire de 02
.
Maintenant, la pratique. Le moyen le plus simple de manipuler les +fichiers est de cliquer sur le bouton « Fichiers » en haut à gauche de +votre écran ; il lance unprogramme qui vous permet de tout manipuler à la +souris. Ce programme est facile à utiliser, on n'en parlera pas ici. Il +est également possible de manipuler vos fichiers en tapant des commandes +dans un terminal. Pourquoi, me direz-vous ? Parce que cette méthode +marche aussi quand vous vous connectez depuis chez vous, ou depuis le +labo dans lequel vous êtes en stage, et que vous ne disposez donc pas du +bouton « Fichiers ». La machine garde en permanence un répertoire qui est +le « répertoire courant », c'est-à-dire celui dans lequel sont +normalement effectuées les opérations sur les fichiers. Ce répertoire est +affiché avant chaque commande que vous tapez : ainsi,
clipper ~ $
signifie que vous êtes dans votre
+répertoire personnel ~
, alors que
clipper ~/prive $
signifie que vous êtes dans le
+sous-répertoire prive de votre répertoire personnel. Enfin, deux points
+(..
) désignent l'opération « remonter d'un niveau dans
+l'arborescence ». Ainsi, si votre répertoire courant est
+~/prive
, alors ../rapport.tex
désigne le
+fichier rapport.tex
de votre répertoire personnel ; dans ce
+cas, c'est donc un synonyme de ~/rapport.tex
.
+Les commandes décrites ci-dessous,comme beaucoup de commandes Unix, +prennent plusieurs paramètres qui leur disent sur quels fichiers +travailler. Pour entrer la commande, entrez le nom de la commande, puis +les paramètres, le tout séparé par des espaces (pensez : verbe,complément +d'objet).
+ ++cp maitrise.tex dea.tex ++Exception : si le deuxième paramètre est le nom d'un répertoire qui +existe déjà, une copie du fichier sera créée dans ce répertoire, avec le +même nom de fichier quel'original. Par exemple, si dea est un +sous-répertoire de votre répertoire personnel, +
cp maitrise/intro.tex dea+ne clonera que la première partie de votre travail. +
mv
permet aussi de renommer un fichier. Par exemple,
+mv houba hoprenomme le fichier houba. +
+rm these.tex. ++
+Si cet exposé (quelque peu succinct) vous laisse sur votre faim,
+n'hésitez pas à poser vos questions par mail à
+tuteurs@clipper
, ou par
+agression verbale en salle S.
+
Jérôme, pour les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal430.tml b/src/docs/bocal/bocal430.tml new file mode 100644 index 0000000..e14b44d --- /dev/null +++ b/src/docs/bocal/bocal430.tml @@ -0,0 +1,56 @@ + + + + ++Vous pouvez accéder à votre compte depuis votre ordinateur. Cela peut +être utile pour lire son courrier, par exemple. Beaucoup d'entre vous +font cela avec telnet, mais ce protocole n'est pas sécurisé, et votre mot +de passe est accessible à tous ceux qui « écoutent » le réseau, de plus +comme vous avez dû le constater, l'affichage est laid (les couleurs et +les accents s'affichent mal). Pour sécuriser votre connection il suffit +d'utiliser un logiciel gratuit et téléchargeable facilement sur le net : +PuTTY sous windows +(http://www.chiark.greenend.org.uk/~sgtatham/putty/) et MacSSH sur mac +(http://www.macssh.com/).
+ + Une fois le logiciel téléchargé il suffit de le lancer et de préciser
+comme hote « clipper.ens.fr
». Attention, PuTTY utilise par
+défaut le protocole telnet
,
+pour avoir une connection sécurisée, il faut donc sélectionner « SSH »
+dans la liste en dessous de l'hote. Le logiciel vous donne donc accès à
+votre compte à l'École. Une fois que vous avez fini, ne coupez pas le
+logiciel en cliquant sur la croix en haut à droite de la fenêtre : il
+faut dire à clipper que vous avez fini, sinon il continue à attendre des
+instructions de votre part. Il suffit donc de tapper exit
et
+le logiciel se coupe automatiquement :
+clipper ~ $ exit
+
+
+Ajoutons que préférer une connexion sécurisée ne relève pas (forcément) de la +paranoïa : les actes de piratages sont nombreux ; un outil d'écoute réseau +avait par exemple été installé clandestinement l'année dernière à la sortie du +réseau de Montrouge, pendant plusieurs mois. Les pirates avaient eu la +connaissance d'une centaine de mots de passe, et auraient très bien pu les +utiliser pour s'attaquer au réseau de l'École.
+ +Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal431.tml b/src/docs/bocal/bocal431.tml new file mode 100644 index 0000000..13e15a7 --- /dev/null +++ b/src/docs/bocal/bocal431.tml @@ -0,0 +1,88 @@ + + + + +Nombre d'entre vous, devant un problème informatique, ne savent pas à qui +s'adresser. Voici donc un petit carnet d'adresses qui vous aidera à contacter +directement le bon service. Notons que si vous envoyer un courrier à la +mauvaise adresse, cela n'est pas très grave, il sera généralement redirigé +vers les personnes concernées ; mais cela ajoute des délais.
+ +Dans tous les cas, il est préférable d'être précis. +« Je n'arrive pas à imprimer ! » n'aide guère -- en effet, cela peut +recouvrir une quantité impressionnante de problèmes possibles (par +exemple : quelqu'un a débranché l'imprimante pour brancher son +portable). Il est bien plus efficace de dire : « J'ai voulu imprimer +avec StarOffice vers l'imprimante de la salle S, mais celle-ci avait tous +ses voyants qui clignotaient et indiquait 'Bourrage papier' ». Vous +remarquez au passage qu'une observation attentive du phénomène met déjà +sur la piste et suggère une réparation (ici, ouvrir l'imprimante et +sortir le papier coincé -- à réserver aux presonnes adroites et +soigneuses).
+ +Ajoutons que si, par exemple, le réseau des salles machine de Jourdan ou +Montrouge est en panne, il est inutile d'envoyer un courrier électronique pour +le signaler ; celui-ci, devant passer par le dit réseau pour arriver à son +destinataire, ne parviendra pas. Aux heures ouvrables, appeler le SPI au +téléphone (Catherine Le Bihan est sur Ulm au 01 44 32 37 96). Si vous voyez +quelque chose de vraiment inquiétant matériellement (fuite d'eau, +court-circuits), il faut appeler la loge.
+ +Enfin, terminons par le fait que tuteurs n'est pas forcément à même de +répondre à des questions très techniques. Si vous avez des questions +comme « je veux taper en LaTeX un commentaire bilingue d'un +document théologique en moldo-valaque occidental » ou « je +cherche à faire des fits non linéaires », il est probable +que le forum des élèves (ens.forum.informatique) est un meilleur +endroit.
+ + +Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal432.tml b/src/docs/bocal/bocal432.tml new file mode 100644 index 0000000..73143e6 --- /dev/null +++ b/src/docs/bocal/bocal432.tml @@ -0,0 +1,56 @@ + + + + ++Pour transférer des fichiers entre un ordinateur d'une salle informatique de +École et un autre, il est très commode d'utiliser le réseau. Cependant, il est +également possible d'utiliser les lecteurs de disquettes pour transférer des +fichiers. +
+ + Pour cela, insérez une disquette dans le lecteur et utilisez les
+commandes suivantes qui rappelleront des souvenirs aux utilisateurs de
+MS-DOS (à la différence près qu'il faut rajouter un « m
»
+au début de la commande) :
mdir
pour afficher la liste des fichiers présents sur la
+disquette ;mcopy rapport.tex A:
pour copier par exemple le fichier
+rapport.tex
du répertoire courant sur la disquette ;mcopy A:these.tex .
pour copier le fichier
+these.tex
présent sur la disquette dans le répertoire
+courant ;mcd A:rep
pour se placer dans le répertoire
+rep
sur la disquette. Vous pouvez aussi utiliser la commande mformat A:
pour
+formater la disquette, mren source but
pour renommer le
+fichier source
en but
ou encore
+mmd A:rep
pour créer un répertoire rep
sur la
+disquette.
Notez que vous pouvez effectuer ces opérations sur les stations Sun ainsi que +sur les PC Dell (noirs). Nous vous recommandons même d'utiliser ces derniers +(en effet, les lecteurs de disquettes des stations Sun n'ont plus leur +jeunesse originelle).
+ +Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal433.tml b/src/docs/bocal/bocal433.tml new file mode 100644 index 0000000..ed46ea1 --- /dev/null +++ b/src/docs/bocal/bocal433.tml @@ -0,0 +1,58 @@ + + + + ++Voici un certain nombre de choses à faire et ne pas faire en salle +informatique : +
+ +/var/mail
qui contient ces courriers a atteint un taux
+d'occupation de 99%. Si jamais le vase débordait, nul ne sait précisément
+ce qui pourrait arriver (perte de mails...), donc essayez de classer vos
+courriers dès que possible (surtout s'ils contiennent autre chose que du
+texte brut). Nous rappelons que pour déplacer un mail dans un autre
+dossier, dans pine, il suffit d'appuyer sur S et d'entrer le nom d'un
+dossier (ou de faire ^T
pour sélectionner le dossier avec
+les flèches) ;Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal434.tml b/src/docs/bocal/bocal434.tml new file mode 100644 index 0000000..2ad311b --- /dev/null +++ b/src/docs/bocal/bocal434.tml @@ -0,0 +1,33 @@ + + + + +L'année avançant, il est de plus en plus probable que vous ayez besoin de +rédiger des rapports ou des notes d'exposés... Les tuteurs informatique ont +pensé à vous : nous allons organiser un week-end de stages sur LaTeX dans +cette optique entre le 24 et le 26 janvier 2003.
+ +Pour que nous préparions les séances le plus efficacement possible, nous +aimerions recueillir toutes vos suggestions. Vous pouvez utiliser le +formulaire Web (en cliquant sur le bouton vert en forme de point +d'interrogation si vous avez la config' conscrits) pour nous en faire part et +préciser votre niveau (débutant, confirmé, ...). Vous pouvez également nous +contacter par courrier électronique.
+ +Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal437.tml b/src/docs/bocal/bocal437.tml new file mode 100644 index 0000000..6b22f62 --- /dev/null +++ b/src/docs/bocal/bocal437.tml @@ -0,0 +1,60 @@ + + + + ++Sur Internet, il existe un certain nombre de règles élémentaires de +courtoisie faisant partie de ce que l'on appelle la Netiquette. Nous allons +voir quelques unes des règles s'appliquant au courrier électronique. +
+ ++Tout d'abord, quand on rédige un courrier électronique, il est indispensable +de mettre un titre et de bien le choisir, car cela permet au destinataire +d'avoir une idée assez précise de ce dont il est question et de retrouver +plus facilement le message. +
+ +
+Pour ce qui est du corps du texte, faites très attention quand vous citez le
+message auquel vous répondez : pour ne pas augmenter la taille du votre
+inutilement, ne citez que les passages auxquels vous répondez effectivement ;
+souvenez-vous que vous pouvez effacer les autres lignes en utilisant
+^K
si
+vous utilisez l'éditeur de pine
. De plus, il est extrêmement important de
+toujours mettre la citation avant la réponse.
+
Enfin, faites attention au ton que vous voudriez employer quand vous écrivez +des messages, car un lecteur inattentif pourrait mal l'interprêter et vous en +vouloir après. En cas de doute, vous pouvez rajouter en fin de phrase des +smileys avec parcimonie pour le préciser : +
+ +vous êtes content | :-) |
vous êtes mécontent | :-( |
vous faites un clin d'oeil | ;-) |
vous tirez la langue | :-p |
Pour plus d'informations, http://www.eleves.ens.fr/tuteurs/docs/hublot/hublot02.html#netiquette. +
+ +Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal439.tml b/src/docs/bocal/bocal439.tml new file mode 100644 index 0000000..e52cb75 --- /dev/null +++ b/src/docs/bocal/bocal439.tml @@ -0,0 +1,43 @@ + + + + ++ La vénérable Armoire de la salle S s'est récemment enrichie de +plusieurs livres d'introduction à divers domaines de l'informatique, en +français : manuel de LaTeX, Unix pour les nuls (et les moins nuls), et +quelques autres. La liste en est disponible sur la porte de l'armoire +elle-même. Cette dernière étant fermée à clé, vous devez vous la faire +ouvrir par un porteur de clé, dont les noms sont également affichés +sur l'armoire.
+ ++ Cette précaution fasciste a pour but de conserver les livres le plus +longtemps possible à la salle S, mais les porteurs de clés étant +nombreux et (surtout) glauques, vous en trouverez forcément un ou deux à +portée de main de l'Armoire, ou presque. Vous êtes évidemment encouragés +à les harceler et à consulter les livres de l'Armoire à votre guise, +mais ce, sans les sortir de la salle S, pour les mêmes raisons +évidentes.
+ +Vous trouverez, par ailleurs, dans la même Armoire, plusieurs CD : +l'un comporte une installation de Linux, une autre une distribution très +complète de LaTeX ; une troisième, enfin, contient divers logiciels libres +pour Windows.
+ +Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal440.tml b/src/docs/bocal/bocal440.tml new file mode 100644 index 0000000..eab83f2 --- /dev/null +++ b/src/docs/bocal/bocal440.tml @@ -0,0 +1,72 @@ + + + + +Il faut entrer l'incantation magique « op mount
+cdrom
». Elle a pour effet de « monter » le
+système de fichier contenu sur le CD dans le répertoire
+« /cdrom
». Cela veut dire que le contenu du
+CD apparaît désormais dans le répertoire
+« /cdrom
». Par exemple, si le CD contient un
+fichier nommé « bouh
», vous pourrez accéder à
+ce fichier sous le nom « /cdrom/bouh
».
A priori, vous voudrez commencer par voir ce qu'il y a sur le CD. Le
+plus simple pour cela est de vous placer dans le répertoire
+« /cdrom
» à l'aide de la commande
+« cd /cdrom
». Vous pouvez alors faire un
+« ls
» pour voir la liste des fichiers
+disponibles. Enfin quand vous avez trouvé les fichiers qui vous
+intéressent, vous pouvez lancer dessus la commande qui vous intéresse.
+Par exemple, pour rapatrier « bouh
» dans
+votre répertoire personnel, vous pouvez taper « cp bouh
+~
».
Une fois que vous aurez terminé, vous allez certainement vouloir
+récupérer votre CD. Si vous appuyez tout de suite sur le bouton, le
+système ne vous laissera pas faire, car le CD est toujours monté. Il faut
+donc commencer par le démonter, ce qui se fait avec la commande
+« op umount cdrom
».
Sur les stations Sun, il faut brancher vos écouteurs sur la prise
+adéquate du lecteur de CD, puis lancer le programme
+« workman
», qui ouvre une fenêtre dans
+laquelle vous pouvez cliquer sur des boutons... Pour les PCs sous
+freebsd, en revanche, il semblerait que l'on ne puisse pas lire des CDs
+audios.
+
Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/bocal441.tml b/src/docs/bocal/bocal441.tml new file mode 100644 index 0000000..5452dfa --- /dev/null +++ b/src/docs/bocal/bocal441.tml @@ -0,0 +1,58 @@ + + + + +Un virus informatique, c'est un machin qui va sur les ordinateurs, fait des +dégâts, et fait régulièrement la une des journaux. Mais à part ça, qu'est-ce +que c'est, comment ça peut agir ?
+ +Un ordinateur n'est pas un être vivant, c'est une machine, qui exécute des +instructions. Si un ordinateur fait quelque chose, c'est que celui qui l'a +programmé lui a dit de le faire, il n'y a pas d'autre possibilité. Pour +agir, les virus utilisent des erreurs des programmeurs ou des utilisateurs. +L'exemple le plus simple est celui d'un courrier électronique, qui disait en +substance « attention, il y a un virus qui circule, si vous avez tel +fichier (au nom barbare), c'est que vous êtes infecté, supprimez-le et +prévenez tous vos amis » ; le fichier en question était un fichier +nécessaire à windows, qui est le système d'exploitation le plus fréquent sur +les ordinateurs personnels. Évidemment, beaucoup de gens se sont laissés +prendre.
+ +Bien sûr, tous les virus ne sont pas aussi simples à comprendre : la +plupart utilisent des erreurs dans les programmes que les gens utilisent, +qui les conduisent à exécuter des instructions qu'ils ne devraient pas. Les +logiciels de microsoft, word et excel, et surtout le logiciel de courrier +outlook, sont spécialistes du fait : ils sont amenés à manipuler des +documents provenant de sources peu fiables (courriers électroniques reçus, +documents téléchargés sur le web...), ces documents peuvent contenir des +instructions, qui peuvent se retrouver exécutées imprudemment.
+ +Les virus ne sont donc pas une fatalité, au moins du point de vue +informatique : une programmation soigneuse et un minimum d'attention de +la part des utilisateurs les contreront bien plus efficacement que tous +les « anti-virus » du monde. Utiliser des logiciels mieux +conçus est bien sûr une mesure extrêmement profitable ; les logiciels +libres, en particulier, conçus souvent par des gens pour leur propre +usage et pas dans un but de marketing, sont en général bien moins sujets +aux virus.
+ +Au sujet des virus, voir aussi l'article de David +Monniaux dans le numéro 7 du Hublot.
+ +Les tuteurs informatique
+ + + + + diff --git a/src/docs/bocal/index.tml b/src/docs/bocal/index.tml new file mode 100644 index 0000000..f410950 --- /dev/null +++ b/src/docs/bocal/index.tml @@ -0,0 +1,59 @@ + + + + +Vous trouverez ici les articles que nous avons publié dans le BOcal, l'hebdomadaire des élèves +de l'ENS.
+ ++
+ +Voici le premier numéro du Hublot, le journal mensuel des tuteurs +informatiques. On va y parler de différentes choses : l'utilisation des +machines Unix, mais aussi la typographie, Internet, des astuces sur les +machines Unix... et de tout ce que vous nous proposerez! N'hésitez surtout pas +à nous écrire pour poser des questions, demander des compléments +d'information, proposer des sujets d'articles : tuteurs@clipper.ens.fr.
+ +Vous pouvez aussi consulter notre page +Web : vous y trouverez des cours (commandes Unix, courrier +électronique, faire sa page Web, etc), ainsi que des exercices corrigés +(utilisation de l'interface, commandes, rudiments de programmation). Certaines +pages de notre site sont indiquées dans les articles; suivez les liens pour +vous y reporter. Enfin, allez voir les anciens numéros du Hublot.
+ +Les systèmes Unix disposent d'interfaces graphiques, qui permettent d'exécuter +toutes ses opérations à la souris. Sous Linux (un Unix pour PC) existent ainsi +KDE et Gnome, pour les plus connues. À l'École, pour des raisons de +«gourmandise» de ces interfaces (il vaut mieux utiliser la puissance des +machines pour des calculs), elles ne sont pas installées. En revanche, il +existe des gestionnaires de fichiers qui s'utilisent avec la souris (voir Hublot, +n° 3).
+ + ++Il est néanmoins très utile de connaître les commandes clavier élémentaires +qui permettent de déplacer, effacer, renommer ses fichiers : si vous êtes +connectés depuis un Minitel ou un système distant via Telnet, vous ne disposez +pas de souris pour effectuer ces opérations. En outre, il est souvent bien +plus rapide de taper deux lettres que de déplacer la main.
+ + +On tape ses commandes +dans une fenêtre (ou terminal) affichant une invite (ou prompt) comme +ceci :
+ +
+jonque ~ $
+
+
+On tape sa commande, et on valide par un retour chariot; par exemple, la
+commande pot
affiche le menu du pot (ENTER
désigne la touche
+«Entrée») :
+jonque ~ $ pot ENTER
+
+
+
+Unix est un système d'exploitation «multi-utilisateurs» : différentes +personnes peuvent utiliser simultanénement l'ordinateur, de telle sorte que +personne ne peut modifier ou déplacer les fichiers d'un autre utilisateur, ou +usurper son identité.
+ + ++Chaque utilisateur est identifié individuellement par un nom de +login. L'accès à l'ordinateur est protégé par un mot de passe. Le nom de +login est le plus souvent une forme abrégée du nom de famille, avec +éventuellement des initiales du prénom au cas où plusieurs personnes auraient +le même nom de famille.
+ +Taper son login et son mot de passe donne accès à un «compte», c'est-à-dire un +«lieu» et des «droits» associés à ce lieu (créer des fichiers, lire le +courrier à son nom, etc). Est propriétaire d'un fichier celui qui l'a +créé : tous les fichiers que vous créez vous appartiennent, ce qui +signifie que par défaut vous êtes le seul à pouvoir les modifier ou les +effacer.
+ + +Vous pouvez vous représenter votre compte comme un bureau aux murs et aux +meubles transparents. Vous laissez vos affaires sur la table, ou bien rangées +dans des armoires. Tout le monde peut jeter un coup d'oeil et voir ce qu'il y +a chez vous, mais vous seul pouvez entrer. Votre courrier est naturellement +dans une armoire opaque, si bien que personne, sauf vous, ne peut le lire. +Vous pouvez à volonté rendre opaque n'importe quel élément de votre bureau, +mais ne devenez pas paranoïaque : vos petits camarades ne passent pas +leur temps à espionner les comptes pour savoir ce qu'on y trouve...
+ ++Tous les utilisateurs d'un système Unix ont les mêmes droits sur leurs +fichiers respectifs : ils ne peuvent modifier que leurs fichiers, et pas +ceux des autres. Ils ne peuvent pas non plus toucher aux fichiers «système», +c'est-à-dire aux programmes et à tout ce qui fait fonctionner l'ordinateur. +
+ + +Il existe aussi un «super-utilisateur», appelé root
, qui a
+strictement tous les droits; lui seul peut modifier les fichiers dont il n'est
+pas propriétaire (fichiers des utilisateurs) et installer les programmes, par
+exemple. Seul l'administrateur-système a le droit de se loguer sous root.
+
Par sécurité, il vaut mieux changer régulièrement de mot de passe. Pour cela,
+vous avez la commande passwd
(ou yppasswd
). Tapez cette
+commande : la machine vous demande de taper votre mot de passe actuel,
+puis le nouveau, puis encore une fois le nouveau mot de passe, pour
+confirmation. Par exemple :
+corvette ~ $ yppasswd +yppasswd: changing password for toto +enter login(NIS) password: +new password: +re-enter new password: +NIS(YP) passwd/attributes changed on clipper +corvette ~ $ ++ +
Bien évidemment, les mots de passe entrés n'apparaissent pas à l'écran. +
+ +La modification est à peu près immédiate en salle S; elle prend un peu +plus de temps pour atteindre l'Infirmatique, la salle du 46, la salle T15 et +Jourdan (la mise à jour se fait toutes les heures). Elle ne s'opère que le +lendemain à Montrouge.
+ + +Tout d'abord, sachez que seuls les 8 premiers caractères de votre mot de +passe sont pris en compte. Ensuite, il y a des mots de passe à éviter +absolument :
+ +12345678
+ou qwertyui
.Un bon mot de passe doit contenir des majuscules et des minuscules, des +chiffres, des lettres, des ponctuations. Sachez que le SPI teste les mots de +passe des utilisateurs et prévient ceux qui en ont un trop simple.
+ + +Il peut vous arriver d'oublier +votre mot de passe. Dans ce cas, il faut aller voir le SPI (passage bleu, au +rez-de-chaussée du bâtiment Rataud) qui vous en donnera un nouveau.
+ ++Pour plus de renseignements : Guide des +premières fois : changer son mot de passe
+ + +Votre nom de login et votre mot de passe vous donnent accès à votre compte, +qui contient vos fichiers personnels, votre travail, mais aussi votre +identité. Si quelqu'un vous pirate, il peut modifier vos données, mais surtout +faire des choses à votre nom, comme envoyer du courrier. C'est pourquoi il +est impératif de toujours veiller à se déloguer correctement. Pour cela, vous +avez plusieurs moyens (on suppose que vous utilisez la configuration des +conscrits) :
+ + +Control
, Meta
et Backspace
. La touche Meta
+c'est le petit losange noir de part et d'autre de la barre d'espace.Il ne suffit pas de fermer toutes ses fenêtres pour être délogué : +n'importe qui peut ouvrir une nouvelle fenêtre et faire ce qu'il veut avec +votre compte.
+ + +Quel que soit le moyen utilisé, vérifiez avant de quitter la salle que
+la machine affiche à nouveau Console login:
et une image.
+
Quelqu'un finira
+bien par s'en rendre compte et vous déloguera. S'il est gentil, il vous
+enverra un courrier électronique en votre nom pour vous avertir qu'il vous a
+trouvé non délogué. S'il est joueur, il mettra, en votre nom, un message dans
+le forum des élèves,
+dans un groupe de discussion appelé alt.pirates
. Dans ce cas,
+vous recevrez un message automatiquement envoyé par les tuteurs à la lecture
+de forum. Il vaut quand même mieux penser à se déloguer...
+Pour plus de renseignements : Prélude à Unix : +comment se loguer et se déloguer
+ + +Cette rubrique a pour objectif d'exposer les normes de la typographie
+française telles qu'elles sont en usage dans l'Imprimerie Nationale. Pour plus
+de renseignements, voir le Lexique des règles typographiques en usage à
+l'Imprimerie nationale, Imprimerie nationale, 1990 (ISBN
+2-11-081075-0
). Ce premier article rappelle les grandes généralités sur
+les accents et la ponctuation.
Sachez que les majuscules prennent des +accents en français : nous sommes à l'École Normale, on dit +«À bientôt», etc. Il y a eu tolérance sur ce point tant que les +machines à écrire ne permettaient pas de taper ces accents. Depuis que les +ordinateurs le permettent, il est obligatoire d'accentuer les majuscules. +N'oubliez pas non plus les ligatures : «Lætitia».
+ ++Le Hublot est +édité à l'origine avec LaTeX, et il n'y a pas de problème pour faire des «oe» +ligaturés majuscule et minuscule. Mais avec le passage au HTML et au codage des +accents en isolatin, on ne dispose plus de ce caractère...
+Les guillemets français sont des +guillemets carrés, «comme ça». Les guillemets de ce genre : "ça" ou +``ça'' sont des guillemets anglais, américains, ce que vous voudrez, mais ils +ne sont pas corrects en français, et donc à proscrire dans tous vos +documents... On abordera dans un article ultérieur la question des citations +et des guillemets de second niveau (voir Hublot, +n° 5).
+ + +On rappelle au passage que, lorsque +l'on parle de typographie, le mot «espace» est féminin; par habitude, on ne +garde le féminin que pour l'espace fine (demi-espace)... Les ponctuations sont +toutes suivies d'un espace. Les ponctuations doubles (deux-points, +point-virgule, points d'interrogation et d'exclamation) sont précédées d'une +espace fine, sauf le deux-points qui est précédé d'un espace complet. À moins +que votre logiciel ne vous donne accès à des demi-espaces, mettez toujours un +espace, de préférence insécable, avant vos ponctuations doubles.
+ ++Vous trouverez sur la page des tuteurs un tableau récapitulant la façon de +taper les accents sur les stations Sun : Taper les accents sur +les stations Sun.
+ + +On nous demande souvent comment lire un fichier PostScript : pour cela,
+il faut utiliser le programme GhostView, que l'on appelle avec la commande
+gv
. Il faut donc taper, par exemple :
+gv rapport.ps ++ +
La commande qui
vous affiche un plan de la salle S, avec le nom
+de login des utilisateurs qui sont connectés physiquement aux machines
+(stations Sun et PC sous Linux). Les tuteurs ont leur nom souligné. Cette
+commande a différentes options :
qui -real
vous donne les noms complets des personnes
+connectées;qui -infi
vous donne le plan de l'Infirmatique; qui -46
donne le plan de la salle du 46;qui -t15
donne le plan de la salle T15 (en
+physique);qui -sallet
donne le plan de la salle T;qui -jourdan
donne la salle de Jourdan);qui -montrouge
affiche la salle de Montrouge).Ce cours, en plusieurs parties, va expliquer ce qu'est un réseau, et comment +les ordinateurs communiquent entre eux. En un mot, il explique ce qu'est +Internet... Ce premier article traite des données que les ordinateurs +échangent.
+ ++Les ordinateurs n'ont que deux doigts, contrairement aux humains. Ils comptent +et manipulent l'information uniquement sous la forme de 0 et de 1; c'est le +choix fondamental, l'information minimale, qui s'exprime ainsi (vrai/faux, +ouvert/fermé, oui/non, etc). Une telle information est appelée un +bit. Comme un bit ne contient pas grand'chose, on groupe plusieurs +bits pour qu'ils forment, ensemble, une information plus complexe.
+ + ++Huit bits ensemble forment un octet. Chaque bit a une place +particulière dans l'octet, ce qui permet de faire 256 combinaisons +(28). Un octet est adapté pour coder un +caractère occidental (il y a suffisamment de place pour les 26 lettres, avec +les minuscules, les caractères accentués, les chiffres et quelques autres +signes typographiques).
+ + + Les quantités de données
+traitables par les ordinateurs se chiffrent désormais en millions et milliards
+d'octets. Les informaticiens ont donc conçu des unités adaptées. Le
+kilo-octet (Ko
) comporte 1024 octets
+(210). (et non 1000 : 1000 est un nombre rond en
+base 10, mais pas en base 2; en revanche, 1024 s'écrit 10000000000
+en base 2).
+Le méga-octet (Mo
) est constitué de 1024 Ko (plus d'un
+million de caractères), et le giga-octet (Go
) vaut
+1024 Mo. On commence à parler de téra-octet (To
) mais
+c'est encore un peu trop cher.
+Une image plein écran «pèse» environ 1 Mo, voire plus si on veut une +grande palette de couleurs. Une simple disquette contient environ +1.44 Mo, et un CD-ROM 660 Mo. Un DVD-ROM pèse jusqu'à 17 Go +(plus de 17 milliards de caractères). Pour donner une échelle de valeur, +disons que la Bible, correctement encodée, tient en 1 Mo (un peu moins +d'une disquette), et que l'Encyclopedia Universalis, avec schémas, photos et +quelques animations, rentre dans un CD-ROM.
+ ++-- Thomas Pornin +
+ + +Pour reprendre Corinne Gacon : la Netiquette est un ensemble de règles de +comportement et de conseils concernant la façon de s'exprimer par les moyens +informatiques (courrier électronique, groupes de discussion, etc). Il s'agit +donc surtout de bons sens et de courtoisie...
+ + ++Cette rubrique va, tout au long de l'année, détailler certains aspects de la +Nétiquette. Ce mois-ci, on parle des courriers collectifs et de la façon de +contacter plusieurs personnes à la fois.
+ + +Tout d'abord, + +La Netiquette : premiers éléments, par +Corinne Gacon. Ensuite, la RFC 1855. +
+ +Les RFCs (Requests for comments) sont des textes plus ou moins +techniques maintenus par l'IETF (Internet Engineering Task Force) +visant à définir les standards et les protocoles utilisés sur Internet. Il +existe des RFCs aussi bien sur le protocole IP (Internet Protocol) ou +le protocole HTTP (HyperText Transfert Protocol : Web) que sur +la Netiquette. Vous pouvez consulter la liste des +RFCs.
+ + +Imaginez la scène suivante : vous rentrez de +deux semaines de vacances, et votre boîte aux lettres déborde de prospectus en +tous genres, au milieu desquels se trouve votre convocation à l'agrégation. +Malheureusement, un tri trop hâtif de tout ce courrier envoie cette lettre au +panier. Si tout le monde pouvait envoyer des courriers collectifs, à l'ENS, ce +genre de situations deviendrait monnaie courante, et ceci pour deux +raisons :
+ + +À ce problème pratique s'ajoute un problème technique : supposons qu'une
+personne envoie un courrier de 1 Ko à eleves@ens.fr
, soit plus
+de 1300 personnes en comptant les CST, SNA et archicubes ayant un compte. Cela
+nous fait donc 1 Mo (soit 1 million de caractères) de données
+redondantes qui encombrent l'unique disque qui contient le courrier de tous
+les élèves. pour une annonce qui va intéresser seulement 10 personnes, cela
+fait beaucoup.
+Si la place vient à manquer, plus personne ne reçoit de courrier électronique, +plus personne ne peut en envoyer (car les courriers en partance passent par +cette même place...). En outre, les courriers ainsi refusés (ceux en partance +ou ceux qui devaient arriver) ont une probabilité assez élevée de disparaître +silencieusement
+ + + C'est pourquoi les courriers
+collectifs sont «modérés» à l'ENS : les courriers autres que ceux de
+l'administration sont la plupart du temps redirigés dans le forum des élèves,
+dans le groupe de discussion annonces
, où ils seront accessibles à
+tous à moindre coût de ressources et sans imposer à tout le monde de les lire.
+Dans des cas plus rares, il arrive qu'un courrier mérite un envoi collectif et
+que le modérateur décide de le laisser passer.
+Pour ceux qui trouvent cette pratique abusive, je répondrai que cette +disposition est prévue par la Netiquette :
+ + ++Souvenez-vous que le courrier et les News consomment tous deux des +ressources. Tenez compte des règles particulières qui régissent leur usage +dans votre institution. (RFC 1855, paragraphe 3.1.1, alinéa 5.)
+ Vous
+pouvez d'abord utiliser le forum des élèves, en demandant la création d'un groupe de
+discussion spécifique, comme lettres.latin
par exemple. Si vous
+vous occupez d'une petite communauté de personnes (section du COF, club
+sportif, etc) désirant être tenues informées de ce qui se passe, vous pouvez
+aussi utiliser les listes de diffusion (mailing-list) qui permettent
+d'envoyer des courriers collectifs.
À la difference des alias tous@ens.fr
ou
+eleves@ens.fr
, l'on est libre de s'abonner et de se désabonner de
+ces listes, et elles ont toutes un sujet précis; cela permet à l'expéditeur de
+cibler ses lecteurs, et aux lecteurs de cibler les informations reçues. Pour
+créer une liste de diffusion, adressez-vous aux tuteurs.
+-- Pierre Corbineau +
+ + +Si vous utilisez Pine, lorsque vous
+repondez a un courrier qui a plusieurs destinataires, Pine vous demande
+«Reply to all recipients?
», ce qui signifie : «dois-je
+envoyer la réponse à tous les destinataires ou seulement à l'expéditeur?». Si
+vous appuyez sur ENTER
, la réponse sera oui; mais il est rare que
+ce soit l'effet désiré... alors faites attention lorsque vous répondez à des
+courriers collectifs.
L'équipe «Réseaux, Savoirs, Territoires», dans le prolongement des activités +de l'Atelier Internet, organise un colloque les 3 et 4 décembre +1999 :
+ + + ++ + | + +
+ Colloque
+ + + + Comprendre +les usages d'Internet Vendredi 3 décembre 1999 de 9h30 à +18h30 + +Samedi 4 décembre 1999 de 9h30 à 18h30 + +En salle Dussane + |
+
Ce colloque a pour objet l'état des +lieux des recherches réalisées sur le thème des usages d'Internet par diverses +équipes (Université, CNRS, entreprises).
+ + ++Si ces journées sont centrées sur la mesure concrète des pratiques, étudiées +par le biais de questionnaires, d'enquêtes ethnographiques, de traces +informatiques et de témoignages, nous proposons aussi deux axes qui permettent +de vérifier la pertinence de ces mesures et de proposer quelques hypothèses +théoriques sous-jacentes :
+ + ++ +A- Comprendre l'aspect proprement intellectuel de ces usages : relation à +l'écriture et à la lecture, pratiques éditoriales, et plus généralement +apports cognitifs de l'ordinateur vu comme «bibliothèque-laboratoire» +(organisation des savoirs). En effet, une intuition largement partagée est que +les transformations liées à Internet et à l'informatique sont essentiellement +d'ordre intellectuel, ou encore cognitif.
+ + ++B- Étudier les contraintes (au sens neutre du terme) sociales et économiques +qui favorisent le développement de certains usages. Nous entendons par +là :
+ + + Le Service de Prestations Informatiques
+(spi@ens.fr
) a été créé en 1989. Ses fonctions officielles
+sont :
Il est composé de Jacques Beigbeder, responsable, Bertrand Goimard, +ingénieur, Catherine Le Bihan, technicienne, Jean-Claude Lovato, +technicien, Marc-Antoine Rey, technicien, Philippe Prat (sites de Jourdan +et de Montrouge).
+ + +Voir le tableau vitré +dans le couloir à droite de l'Aquarium pour tous les renseignements sur les +activités des caïmans d'informatique littéraire.
+ +dbeguin@ens.fr
). Eric.Guichard@ens.fr
).+
+ +Dans ce numéro, vous trouverez les rubriques du mois précédent (Unix, +Internet, typographie, etc), et une nouveauté : un dossier, consacré ce +mois-ci aux claviers américains. Pour toutes questions, demandes +d'explications, idées d'articles, etc, n'hésitez pas surtout pas à nous +écrire : tuteurs@clipper.ens.fr Vous pouvez +aussi mettre un mot dans le casier d'Émilia Robin.
+ ++Certaines pages de notre site sont +indiquées dans les articles; suivez les liens pour vous y reporter. Vous +pouvez aussi consulter les anciens +numéros du Hublot.
+ ++Un stage informatique est organisé en décembre. +Inscriptions par courrier électronique.
+ + +Stage informatique | +|
---|---|
Netscape | +(vendredi 10 décembre, 20h30, en salle S). On y +apprendra l'utilisation «intelligente» de Netscape (récupérer des fichiers, +gérer ses marques-page, configuration...). On verra aussi l'utilisation des +moteurs de recherche. | +
Recyclage en +LATEX | +(lundi 13 décembre, +20h30, en salle S). En vous inscrivant, merci de préciser ce que vous +voulez apprendre exactement. + | +
Vous avez deux moyens pour taper les accents sur les claviers américains des +stations Sun.
+ + + +méta
La touche méta
+(le losange noir de part et d'autre de la barre d'espace), associée à une
+lettre; par exemple méta-i
pour un «é». On tient le méta en même
+temps qu'on tape la lettre (comme avec Shift et Control). C'est rapide,
+pratique, un peu ésotérique et incompatible avec emacs
, LyX
,
+Netscape
et quelques autres logiciels.
Compose
Nous vous
+conseillons la touche Compose
, à droite de la barre d'espace. Elle
+sert à associer un signe de ponctuation figurant un accent, à une lettre. Par
+exemple : «compose ' e
» donne «é». Il ne faut pas
+maintenir la touche Compose
appuyée. Appuyer une fois dessus (il ne
+se passe rien, c'est normal), puis taper tranquillement l'accent puis la
+lettre. Les principaux accents sont les suivants :
' |
+(apostrophe) | +accent aigu | +
` |
+(apostrophe à l'envers) | +accent grave | +
^ |
+(chapeau) | +circonflexe | +
" |
+(guillemets anglais) | +tréma | +
, |
+(virgule) | +cédille | +
Par exemple : +
+ + +compose |
+` |
+a |
+donne | +à |
+
compose |
+, |
+c |
+donne | +ç |
+
compose |
+^ |
+I |
+donne | +Î |
+
compose |
+~ |
+n |
+donne | +ñ |
+
compose |
+" |
+u |
+donne | +ü |
+
compose |
+< |
+< |
+donne | +« |
+
compose |
+> |
+> |
+donne | +» |
+
+etc. À votre avis, comment fait-on le æ ligaturé ?! +
+ + +Ce système vous donne donc accès à toutes les combinaisons d'accents, +françaises et étrangères (europe de l'Ouest), sauf (pour de sombres raisons +historiques) le oe ligaturé minuscule et majuscule, et le Y tréma majuscule; +cette restriction n'est pas vraie avec LATEX.
+ + Les deux systèmes vous permettent de taper des espaces insécables :
+M-SPC
(méta-barre-d'espace) ou C-SPC-SPC
+(Compose-barre d'espace-barre d'espace).
+
Dans vos pages Web, dans +vos écrits... Dans vos courriers également, après vous être éventuellement +entendu avec votre correspondant (surtout à l'étranger), pour vérifier que les +accents passent. N'en mettez jamais par contre dans les titres des courriers. +
+ +Enfin, rappelez-vous que les règles typographiques françaises +imposent les accents sur les majuscules. « Évidemment!» +«Ô temps suspend ton vol...», «À bientôt!», +«Ça va bien?», «Moyen Âge», etc.
+ +
+Vous retrouverez sur le site des tuteurs tous les renseignements concernant
+les accents, ainsi qu'un tableau des accents avec méta
,
+compose
, en HTML et en LATEX: Les accents sur les
+stations Sun.
+La méthode la plus simple est toujours la meilleure : c'est en tapant +qu'on apprend à taper! Si vous trouvez pour 10 francs chez un bouquiniste un +manuel de dactylographie des années 1950, il fera très bien l'affaire... même +s'il fait moins «branché» qu'un logiciel de dactylographie. Cela dit, il y a +des choses simples à appliquer pour gagner de la vitesse :
+ +Le jeu xletters
, développé à l'ENS par votre dévoué serviteur, est un
+cousin de tetris
destiné à vous aider à améliorer votre vitesse de
+frappe. Le jeu représente des mots (anglais) en train de tomber du haut d'une
+fenêtre, et qu'il faut taper (dans l'ordre qu'on voudra) avant qu'ils
+atteignent le bas, sans quoi vous perdrez une vie. Les mots les plus petits
+tombent le plus vite. Au bout d'un certain temps, vous passerez au niveau
+suivant, où les mots tombent plus vite, et ainsi de suite indéfiniment.
+Entre deux niveaux il y a des «niveaux bonus» dans lesquels les choses qui
+tombent ne sont plus des mots mais des suites aléatoires de caractères,
+beaucoup plus dures à taper ---heureusement, on ne peut pas perdre de vie dans
+ces niveaux bonus. Par ailleurs, vous pouvez faire une pause à tout moment en
+appuyant sur TAB
. Le jeu garde une table des high scores, ce
+qui vous permettra de vous mesurer aux meilleurs dactylographes de l'École.
+
Si tout cela vous semble trop stressant, vous pouvez lancer
+xletters
avec l'option -train
(entraînement),
+qui vous proposera simplement de taper des mots les uns après les autres
+sans contrainte de temps.
Enfin, pour ceux qui ne craignent vraiment rien, il y a
+le mode duel, que nous devons à Péter Horvai et Jean Marot, et qui se
+joue à plusieurs : cette fois, les mots ne seront plus envoyés par
+l'ordinateur mais par vos adversaires (l'ordinateur vérifiera toutefois
+qu'ils sont bien dans le dictionnaire), et vous avez le choix entre
+entrer un mot à envoyer à vos adversaires ou bien taper un mot qui tombe
+sur votre écran (on passe de l'une à l'autre possibilité avec la touche
+Backspace
, et la touche Entrée
permet d'envoyer
+à vos adversaires le mot que vous avez saisi). Pour jouer à
+xletters
dans ce mode, on commence par lancer un serveur
+avec «xletters-server
» sur une certaine machine, puis chaque
+jouer lance «xletters-wrapper
» avec comme argument le nom de
+la machine sur laquelle le serveur a été lancé.
-- David Madore
+ + + ++Le cours Unix se divise en trois parties : «Concept», «Commande», +«Usage». La partie «Concept» est, comme son nom l'indique, conceptuelle... +c'est-à-dire pas très simple au premier abord. Si vous n'êtes pas familiers +avec les ordinateurs, ce n'est pas la peine de la lire pour le moment. La +partie «Usage» n'intéressera que ceux qui sont déjà un peu familiers des +machines Unix. + + +
+On peut voir un +fichier comme une chemise avec une étiquette, et contenant des notes de cours, +ou des partitions de musique, ou encore des gravures. Dans le cas des fichiers +informatiques, cela correspondra respectivement à des textes, des sons et des +images.
+ + ++Ces informations sont écrites sur un support informatique (disquettes, +CD-ROMs, disques durs...) et sont rangées de façon ordonnée. L'idée consiste à +mettre à chaque morceau d'information une étiquette, disant à quoi il sert, de +quand il date, quelle taille il fait, etc. Un fichier est un «bloc» de données +doté d'une étiquette.
+ + ++En pratique, sur un ordinateur, chacun des objets que vous manipulez (courrier +électronique, image, musique, texte...) correspond à un fichier. Quand vous +écrivez du texte, dessinez avec un programme quelconque, etc, vous créez un +fichier.
+ + +Un disque dur +contient souvent beaucoup de fichiers. Et mettre toutes ses chemises +en un seul énorme tas, même par ordre alphabétique, n'est pas vraiment la +meilleure façon de s'y retrouver. Quand on range ses papiers, on range ceux +qui se rapportent aux études dans un tiroir, ceux qui qui se rapportent aux +loisirs dans un autre tiroir, etc.
+ + ++Un ordinateur permet la même chose avec les répertoires (ou +dossiers sous Windows et sur les Macs). Les répertoires sont des +tiroirs qui contiennent des fichiers, mais aussi d'autres répertoires. Par +exemple, vous pouvez créer un répertoire «DEA», qui contiendrait votre +mémoire, et des sous-répertoires : «Documents», «Annexes», «Divers», ou +d'autres encore.
+ + ++Les répertoires servent à organiser ses documents, en rangeant par exemple +séparément les textes et les images, ou les différentes matières. +
+ ++-- Nicolas George
+ + +ls
La commande ls
vous permet d'afficher le contenu du répertoire où
+vous vous trouvez. Les fichiers apparaissent sous leur nom simple, les
+sous-répertoires ont leur nom suivi d'un slash (/
). Voici un
+exemple :
+corvette ~ $ ls
+Mail/ dead.letter vocab vocab~
+
+
+Les fichiers et les répertoires sont rangés par ordre alphabétique, les
+majuscules avant les minuscules. Ici, il y a un répertoire, appelé
+Mail/
, qui contient les courriers que vous avez rangés. Ensuite, il y
+a trois fichiers :
dead.letter
est un courrier électronique que vous avez commencé
+puis annulé, avec pine
; vocab
est un fichier, qui, vu son nom, contient des mots de
+vocabulaire, ou un lexique; vocab~
est une copie de sauvegarde du précédent, créée
+automatiquement par la plupart des éditeurs de textes (joe
,
+emacs
, vi
...).On peut représenter sous cette forme le répertoire que l'on vient +d'afficher :
+ ++ +
+ +Le tilde, au sommet du schéma, représente le répertoire dans lequel vous vous +trouvez : il s'agit de votre répertoire personnel, de votre compte.
+ + La commande ls
a différentes options, par exemple pour
+classer les fichiers par date, ou taille, etc. Une option très utile est
+l'option -l
(taper «ls -l
»). Elle affiche,
+entre autres choses, la date de dernière modification du fichier et sa
+taille.
Pour en savoir plus, vous pouvez consulter le cours sur
+ls
, et faire les exercices sur ls
.
Pour désigner un fichier, on utilise son nom. Cependant, il y a des cas où +l'on voudrait pouvoir généraliser le nom. Par exemple, pour afficher tous les +fichiers LaTeX d'un répertoire donné, on voudrait ne pas taper successivement +les noms, mais pouvoir dire «tout ce qui est un fichier LateX».
+ ++Pour cela, on utilise les jokers. Il y en a beaucoup, mais on n'en abordera +que trois ici.
+ + +*
»L'étoile veut dire
+«n'importe quelle suite de caractères» (qui ne commence pas par un point). Par
+exemple, pour afficher le nom de tous les fichiers LATEX
+(identifiés par leur suffixe .tex
), on écrit *.tex
:
+
+brick ~ $ ls +MEMO annexes.dvi annexes.tex divers/ +essai.tex rapport.tex tp1.tex +brick ~ $ ls *.tex +annexes.tex essai.tex rapport.tex tp1.tex ++ + +
?
»Le point
+d'interrogation signifie «un et un seul caractère quelconque». Par exemple,
+sur le compte des tuteurs, il y a un répertoire exercices/
avec
+dedans 6 fichiers, pour les 6 premiers chapitres de Germinal. Leurs
+noms sont zola1.txt
, zola2.txt
, etc, jusqu'à
+zola6.txt
. Leur nom est donc identique, à l'exception d'un seul
+caractère, le chiffre. On peut donc taper, pour afficher le nom de tous ces
+fichiers :
+brick ~ $ ls zola?.txt
+zola1.txt zola2.txt zola3.txt
+zola4.txt zola5.txt zola6.txt
+
+
+
+On aurait aussi pu taper «ls zola*
».
[ ]
»Les crochets
+encadrent plusieurs caractères et veulent dire «l'un de ces caractères». Par
+exemple, pour afficher le nom des fichiers zola1.txt
,
+zola3.txt
et zola5.txt
, on tape :
+brick ~ $ ls zola[135].txt
+zola1.txt zola3.txt zola5.txt
+
+
+
+
+
++Le mois dernier, nous avons fait un rappel des généralités sur les caractères +accentués et la ponctuation. À partir de ce numéro, nous allons aborder divers +points de typographie et de composition de textes. Toutes ces informations +proviennent du Lexique des règles typographiques en usage à l'Imprimerie +nationale, Imprimerie nationale, 1990.
+ + +Viennent, dans l'ordre : +le titre, éventuellement une dédicace, l'avant-propos, l'introduction, la +préface, éventuellement une notice.
+ ++Après le texte proprement dit, viennent, dans l'ordre : la postface, les +notes si elles sont regroupées à la fin, la bibliographie, le ou les index, la +table des illustrations. Le sommaire peut être placé après le titre ou tout à +la fin de l'ouvrage.
+ ++Même si les mémoires de recherche ne comportent pas nécessairement tous ces +éléments, il vaut mieux s'efforcer de respecter cet ordre conventionnel.
++On supprime le point dans les titres, mais pas les points d'exclamation et +d'interrogation.
+ + +Un ouvrage long se +décompose successivement en : tome ou volume, livre, partie, (titre), +(sous-titre), chapitre, (sous-chapitre), section, sous-section, (article), +paragraphe, alinéa, tiret (dans une liste). Les subdivisions plus rares sont +indiquées entre parenthèses.
+ +Dans le titre, les +chapitres sont numérotés en chiffres romains grandes capitales : +«Chapitre III: le congrès de 1956». Dans le texte, on écrit les numéros +des chapitres en petites capitales. +
+ +Les livres, tomes, sections, fascicules, annexes sont numérotés en chiffres +romains grandes capitales : l'annexe IV, dans le titre comme dans le +texte.
+ ++Les figures sont numérotées en chiffres arabes : la figure 12.
+ + +Nous citons ici le +Lexique, p. 153 : «Lors de la mise en page, on s'interdira +de placer une ligne creuse en haut de page, de laisser en bas de page la +première ligne seule d'un alinéa, de terminer une page (ou du moins une page +impaire) sur un deux-points, ou une page impaire sur une coupure de mot. On +proscrira également la présence d'un titre en bas de page s'il n'est pas suivi +d'au moins trois lignes de texte. De même, la dernière page d'un chapitre, +d'un livre, etc., devra comporter au minimum six lignes de texte».
+ + +
+Une question revient souvent : comment fait-on pour regarder une image
+sur les stations Sun? Pour cela, il faut utiliser le logiciel xv
, qui
+connaît la majorité des formats standards. Il faut taper, par exemple :
+
+corvette ~ $ xv photo.jpg
+
+
+
+
+Pour quitter xv
, il suffit de placer le pointeur de la souris sur
+l'image et de taper q
. En cliquant sur l'image avec le bouton droit
+de la souris, vous faites apparaître un panneau de contrôle. Pour tout
+quitter, cliquer sur Quit
.
+Si jamais xv
n'arrive pas à afficher l'image, vous pouvez utiliser le
+logiciel de retouche d'images gimp
, de la même façon que xv
.
+Pour quitter gimp
, sélectionner Quit
dans le menu
+File
.
+La commande date
affiche la date et l'heure précise. Il est rare,
+mais possible, que la machine sur laquelle vous êtes ne soit pas à l'heure; si
+vous avez un doute, connectez-vous sur clipper
, qui est toujours à
+l'heure.
+La commande cal
affiche le calendrier du mois en cours. Vous pouvez
+aussi lui indiquer un mois (de 1 à 12) et une année (de 1 à 9999); par
+exemple :
+corvette ~ $ cal 2 2000
+ February 2000
+ S M Tu W Th F S
+ 1 2 3 4 5
+ 6 7 8 9 10 11 12
+13 14 15 16 17 18 19
+20 21 22 23 24 25 26
+27 28 29
+
+
+
+
+
+La dernière fois, on a expliqué que les ordinateurs échangeaient des 0 et des
+1, groupés en octets qui représentent chacun un caractère. Les unités de
+mesure principales sont le kilo-octet (Ko
, un peu plus de 1 000
+caractères), le méga-octet (Mo
, environ un million de caractères) et
+le giga-octet (Go
, environ un milliard de caractères).
+Dans ce numéro, on explique pourquoi les ordinateurs gagnent à être en réseau +pour échanger des informations, et sur quel modèle l'Internet est conçu. +
+ ++Stocker des informations est bel et bon; mais il est tentant de pouvoir en +échanger, sans quoi la sclérose guette. On peut transporter des disquettes, +des CD-ROMs ou d'autres supports du même genre; c'est assez efficace en termes +de débit (exercice : calculer la quantité d'informations transportable +dans une camionnette qui serait pleine de CD-ROMs--- c'est tout simplement +colossal); mais le temps de réponse est long, très long. Et puis, +l'informaticien n'aime pas se lever de sa chaise s'il n'y est pas poussé par +une nécessité impérieuse (aller prendre sa dose de Coca-Cola par exemple). +
+ ++Donc, il s'agit de doter les ordinateurs de moyens de communication. Pour +coder des 0 et des 1, certains protocoles adaptés sautent aux yeux : le +code Morse par exemple. On transmet des «longs» et des «brefs». Le seul +problème est que le débit n'est pas très satisfaisant : deux bons +opérateurs peuvent s'échanger 3 bits par seconde, et une visio-conférence +(de mauvaise qualité) en exige au moins 60 000. Même un téléphone +portable, à la qualité de son douteuse, doit échanger 9 600 bits par +seconde.
+ ++Néanmoins l'analogie est riche. En effet, en regardant de plus près, quand un +message est envoyé en Morse par télégraphe, son texte est précédé du nom du +destinataire : au XIXe siècle, il n'y avait pas +de ligne directe de New-York à Los Angeles; le message devait passer par +différents opérateurs qui recevaient le message et le réexpédiaient +immédiatement dans la bonne direction. Un message pour San Francisco prenait +au début le même chemin. Ce principe de message, sautant de poste en poste, +redirigé à chaque poste en fonction de sa destination, est le fondement +d'Internet. C'est ce qu'on appelle un réseau par paquets, par opposition au +téléphone, qui est un réseau par circuits. On verra plus précisément la +différence dans le prochain numéro.
+ + +-- Thomas Pornin
+ + +Les textes de référence sur la Netiquette («communiquer avec courtoisie sur +Internet») sont La Netiquette : premiers éléments, par +Corinne Gacon, et la +RFC 1855. +
+ +Ce mois-ci, on va parler de la façon de communiquer par écrit par le courrier +électronique, et des conventions «graphiques» en usage.
+ + +Il faut toujours donner un titre à ses
+courriers. Outre des raisons techniques, c'est une politesse envers son
+correspondant : un titre explicite permet de savoir immédiatement de quoi
+traite le courrier, et permet de le retrouver plus facilement dans sa boîte
+aux lettres. Si tous les courriers ont comme titre «No title
»,
+«<>
» ou une ligne blanche, rechercher un courrier précis est
+tout de suite plus fastidieux...
Il existe certaines règles
+formelles, dont la plus importante concerne les citations. Quand vous répondez
+à un courrier, vous avez la possibilité de reprendre dans la réponse le texte
+du courrier auquel vous répondez. Si vous le faites, il ne faut garder que les
+passages auxquels vous répondez effectivement. Le reste (formules de
+politesse, passages sans rapport) doit être supprimé (avec pine
et
+pico
, la commande ^K
permet de détruire la ligne sur
+laquelle vous vous trouvez).
+Pourquoi faut-il effacer les lignes inutiles? Des lignes supplémentaires +accroissent la taille du fichier, et donc contribuent à encombrer le réseau +pour rien. C'est aussi une question de politesse envers votre correspondant. +La connexion dont vous disposez à l'ENS est de bonne qualité, mais un +correspondant connecté par modem doit attendre plus longtemps pour récupérer +tout le courrier, et sa connexion lui coûte davantage. Pour la même raison, il +vaut mieux éviter les signatures trop longues; 4 ou 5 lignes sont +largement suffisantes.
+ + ++Par souci de clarté, il vaut mieux aussi laisser des lignes blanches entre les +paragraphes. Cela aère le texte et rend la lecture plus facile.
+ + +Certaines conventions +graphiques permettent de nuancer visuellement ses propos. Il est utile de les +connaître pour ne pas commettre d'impair, et aussi pour interpréter +correctement les courriers qui les utilisent. Nous indiquons ici les +principales conventions en usage.
+ +Les majuscules servent à CRIER; il faut donc en +faire un usage discret et réfléchi.
+ +
+Pour insister sur un mot précis, vous pouvez le mettre entre étoiles («Tu
+veux *vraiment* que je te donne mon avis?
»), ou entre
+underscores («Oui, je veux _vraiment_ avoir ton avis.
»).
+Comme les underscores figurent un soulignement, ils servent aussi à
+délimiter un titre : «J'ai lu _Madame Bovary_ récemment.
».
Je cite ici Corinne +Gacon :
+ +:-)
(penchez la tête
+sur la gauche et vous verrez un visage qui vous sourit). Elles servent
+généralement à indiquer que le passage qui suit ou qui précède doit être pris
+au second degré ou, au moins, avec un peu de recul.
++Les smileys («emoticon» en français de l'Académie, +«souriards» ou «trombines» en français du Québec) sont donc des petits signes +qui servent à traduire une émotion. Les plus courants sont :
+ + +Le bonhomme heureux | +:-) |
+
Le bonhomme triste | +:-( |
+
Le clin d'oeil | +;-) |
+
Tirer la langue | +:-p |
+
Il arrive que le tiret du nez soit omis. On vous en cite ici quatre, +mais il y en a des centaines... Pour un aperçu, vous pouvez aller voir ce +site : Quelques +smileys.
+ + + ++Si vous avez un problème, commencez par demander de l'aide dans la +salle : il s'y trouve sans doute un tuteur (volontaire pour dépanner) ou +un gourou (administrateur élève). Dans la moitié des cas, quelqu'un pourra +vous aider. Si personne ne peut vous dépanner, vous avez à disposition les +interlocuteurs suivants :
+ + +gourous@clipper
.tuteurs@clipper
. spi@ens.fr
), sauf les Macs de l'Infirmatique qui dépense de
+l'Informatique littéraire (écrire à Élisabeth Labrousse :
+elisa@elias.ens.fr
).Donnez une description précise du problème, et indiquez clairement la machine +et la salle. Le cas échéant, laissez un papier sur la machine pour signaler la +panne, cela évitera aux autres utilisateurs de rencontrer le même problème et +de surcharger le SPI ou les gourous de messages d'erreur.
+ + + + + + + diff --git a/src/docs/hublot/hublot02/arborescence.png b/src/docs/hublot/hublot02/arborescence.png new file mode 100644 index 0000000..a46da86 Binary files /dev/null and b/src/docs/hublot/hublot02/arborescence.png differ diff --git a/src/docs/hublot/hublot02/hublot2.ps.gz b/src/docs/hublot/hublot02/hublot2.ps.gz new file mode 100644 index 0000000..b41ba94 Binary files /dev/null and b/src/docs/hublot/hublot02/hublot2.ps.gz differ diff --git a/src/docs/hublot/hublot03.tml b/src/docs/hublot/hublot03.tml new file mode 100644 index 0000000..6ff63e0 --- /dev/null +++ b/src/docs/hublot/hublot03.tml @@ -0,0 +1,827 @@ + + + + + ++
+ +Jouez hautbois, résonnez musettes, jour de fête aujourd'hui sur Terre. +Enfin, un peu en retard, Noël est passé. Mais l'est-il vraiment ? Les +Orthodoxes suivent encore le calendrier de ce cher Jules, aussi ont-ils plus +de deux semaines de décalage avec nous autres, qui sommes en pays grégorien. +Le calendrier musulman est encore à six siècles de l'an 2000, le calendrier +juif nous met plus de trois millénaires dans la vue. Et il se trouve encore +des gens pour pinailler entre l'année 2000 et la deux-millième année, et le +compte des siècles et millénaires, tout ça en référence à un événement +religieux placé pifométriquement afin de remplacer des festivités païennes +liées au solstice d'hiver, qui, lui, arrive avec une précision de coucou +suisse.
+ ++Car c'est ce que rate tout le monde : nous arrivons dans cette joyeuse +période de l'année où la température devient enfin acceptable. Le givre pare +les arbres d'une robe blanche (enfin, en banlieue; à Paris, les arbres restent +moches), le ciel redevient sobre et abandonne son bleu tapageur, le monde +s'endort tel l'ours pantouflard. L'ordinateur, et ses avatars (le sacro-saint +Web notamment), restent parfaitement insensibles à cette poésie naturelle, et +le mieux qu'on attende d'eux, c'est justement de continuer comme si de rien +n'était. Ce n'est donc pas un ordinateur, mais un humain (moi-même) qui vous +souhaite un joyeux Noël et une bonne année 2000.
+ + +Thomas Pornin
+ ++Pour toutes questions, idées d'articles, etc, n'hésitez pas à nous +écrire : tuteurs@clipper. +Vous pouvez aussi mettre un mot dans le casier d'Émilia Robin. Certains mots +sont suivis d'un astérisque*; ils renvoient au lexique +en fin de numéro.
+ +Certaines pages de notre site sont indiquées dans les articles; n'hésitez pas +à vous y reporter. Vous pouvez aussi consulter les anciens numéros du +Hublot : Le Hublot +Online.
+ + + +Vers 1990, des élèves avaient trop fait +les pitres sur Internet : deux gros incidents en quelques semaines. +C'était un problème nouveau : en 1990, l'ENS était relié depuis peu à +Internet par une liaison à... 9 600 bauds*, le tiers +d'un modem* actuel. On a craint que l'ENS soit interdite +d'Internet, cela est bien arrivé à une autre École en 1993.
+ + ++Après réflexion de la Direction, est donc parue une première version d'une +charte d'utilisation des machines et du réseau. Cette charte a été révisée en +1995, puis en 1999. Elle a aussi servi de modèle à d'autres établissements, et +c'est maintenant un mode de fonctionnement plus que répandu : toutes les +Universités, le CNRS ont leur charte. Voir les informations légales du +SPI.
+ ++Est-ce à dire que l'informatique, se passant devant un écran, laisse croire à +un jeu vidéo, où tous les coups sont permis? Parfois on se le demande, en +voyant que ce qui ne se ferait pas dans la vie réelle devient normal +devant un écran? Arguer que les défenses de certaines machines sont faibles +n'est pas un argument : ma voiture aussi a un pare-brise faible, simple à +casser d'un bon coup de masse!
+ + +La charte est donc un moyen de sensibilisation, rappelant ce qui devrait être +des évidences de vie en société : on partage des machines, on partage un +réseau, tout cela a son code de la route.
+ +Faut-il la +signer? Le secrétaire général explique que la charte est un acte +réglementaire, annexe du règlement intérieur de l'École approuvé par le +Conseil d'administration; cet acte s'applique à tout utilisateur des +ressources informatiques, dès lors qu'il demande un compte et se connecte, et +qu'il le veuille ou non. De ce fait, qu'une personne n'ait pas signé la +charte, par négligence ou refus délibéré, ne la libère pas des obligations et +devoirs prévus dans ce document : Règlement +d'utilisation des moyens informatiques de l'École normale supérieure +
+ ++La charte est en fait applicable dès lors qu'elle a été publiée, elle l'est +sur le panneau d'affichage du secrétariat général, elle vient de fleurir au +DMA et au DI. La signer est un engagement moral de bonne conduite et de +confiance envers les responsables qui ont élaboré ces règles, elle rappelle en +outre de vrais points légaux, eux non spécifiques de l'ENS!
+ +Jacques Beigbeder
+ + + +Le mois dernier, on a vu comment se structurait un document long. Ce mois-ci, +on aborde les numérotations. Comme d'habitude, ces informations proviennent du +Lexique des règles typographiques en usage à l'Imprimerie nationale, +Imprimerie nationale, 1990.
+ + +On ne colle jamais un numéro au nom qui +le suit : il faut laisser un espace, de préférence insécable*. De façon générale, un nombre ne doit jamais +être séparé du nom qu'il accompagne; il ne doit pas non plus être coupé en +deux, mais il vaut mieux détacher les centaines des milliers («285 000 +habitants», par exemple).
+ + ++Les numéros de téléphone se composent par groupes de deux chiffres séparés par +un blanc insécable*, sans points ni tirets; +l'abréviation correcte de «téléphone» est «Tél.». Par exemple :
++Tél. : 01 44 32 30 00 +
+ +Les abréviations sont les +suivantes : 1er, 1re, 2e, ce qui donne, +si on ne peut pas surélever la partie abrégée, 1er, 1re, 2e.
+ + + ++On peut rencontrer des formes latines, comme Legio Septima Gemina, +que l'on abrège en Legio VIIa Gemina (ou +VIIa).
+ + +On peut rencontrer parfois primo, secundo, tertio. Cela se lit primo, +secundo, tertio; le caractère surélevé est un petit «o» et +non un zéro; c'est la même chose pour n° (numéro).
+ + ++Les listes sont habituellement numérotées avec un chiffre suivi d'un point ou +d'un tiret : (1. ou 1-). Les bibliographies sont numérotées avec un +chiffre entre crochets ([1]).
+ + +Les actes se numérotent en chiffres +romains grandes capitales; les scènes se numérotent en chiffres romains +petites capitales.
+ +On écrit les mois en toutes lettres («Le 14 +juillet 1789»), et sans majuscules, sauf dans les expressions consacrées («la +nuit du 4 Août»). On écrit les années sans abréger : «la guerre de +1939-1945», «les années 1940». On n'écrit jamais : «En 33, Hitler arrive +au pouvoir»; en 33, c'est Tibère qui est empereur.
+ + ++Les millénaires sont numérotés en chiffres romains grandes capitales : «le +IIIe millénaire commence en 2001.». Les siècles se composent en +chiffres romains petites capitales.
+ +Les armées, les calibres, les +arrondissements, sont numérotés en chiffres arabes. Les numéros des livres de +la Bible se composent en chiffres romains, grandes capitales. Les numéros de +manifestations (IVe concile du Latran, IIIe Salon du chocolat) sont +également numérotés en romain grandes capitales. Les régions militaires se +composent en chiffres romains.
+ + + +On nous demande régulièrement comment se connecter à l'École depuis le Grand
+Extérieur, par exemple pour lire son courrier. Pour cela, il faut utiliser le
+programme telnet
. Si vous êtes sur une machine Unix, il suffit de
+taper :
+telnet galion.ens.fr
+
+
+ Vous pouvez vous connecter sur n'importe quelle machine de l'École
+(galion
, bireme
, brick
, etc.); il
+vaut mieux éviter de se connecter sur clipper
, pour ne pas
+le surcharger.
Si vous êtes sur un Mac, cherchez le telnet dans le lanceur. S'il n'y +est pas, allez dans le menu Pomme et utiliser «Recherche de fichiers» +pour le trouver.
+ +Si vous êtes sur un PC sous Windows, vous devriez trouver le telnet
+dans le menu «Démarrer». S'il n'y est pas, vous pouvez choisir «Exécuter»
+dans le menu «Démarrer», et taper telnet
. Vous pouvez aussi
+utiliser «Rechercher» dans le menu «Démarrer» pour trouver le programme.
+
Ensuite, vous indiquez le nom de la machine comme indiqué ci-dessus.
+ +La commande anniversaire
vous permet de connaître la date
+d'anniversaire d'une personne. Si vous tapez anniversaire
tout court,
+la commande affiche la liste des gens donc c'est l'anniversaire aujourd'hui.
+Vous pouvez aussi préciser votre demande avec des options pré-établies :
+
+anniversaire demain +anniversaire hier +anniversaire avant-hier +anniversaire apres-demain ++ +
+Vous aussi pouvez indiquer une date, sous la forme jj/mm
; par
+exemple, pour la liste des élèves nés un 12 avril, vous tapez :
+anniversaire 12/04
+
+
+
++Enfin, vous pouvez indiquer explicitement le nom ou le prénom d'une personne. +
+ + La base de données de anniversaire
est constituée à
+partir des fiches annuaires. Certaines personnes ont deux dates
+d'anniversaire : c'est que, d'une fiche à l'autre, elles ont donné des
+dates de naissance différentes...
+Le cours Unix se divise en trois parties : «Concept», «Commande», +«Usage». Ce mois-ci, on achève l'étude des fichiers et des répertoires avec le +concept d'arborescence. La partie «Commande» concerne les répertoires (les +créer, les détruire, et se déplacer). Enfin, la partie «Usage» intéressera +ceux qui veulent utiliser la souris pour gérer leurs fichiers.
+ + +Une arborescence est une structure en +arbre, avec une racine, des noeuds, des branches et des feuilles. En première +approximation, le système de fichiers d'un ordinateur est organisé sur ce +modèle : les noeuds correspondent aux répertoires, et les feuilles aux +fichiers; par exemple :
+ ++ +
+ ++C'est sur ce modèle que l'on organise habituellement les données sur un +ordinateur : un répertoire pour ranger le courrier, un répertoire pour sa +page Web, un répertoire pour son DEA; ces répertoires contiennent à leur tour +des fichiers, et des sous-répertoires; par exemple, le répertoire «DEA» peut +contenir des sous-répertoires «bibliographie» et «Annexes».
+ + +
+Il y a un seul chemin pour aller de la racine à un fichier recherché, si bien
+qu'on peut lui donner une «adresse», un «chemin d'accès».
+DEA/bibliographie/ref-BNF
désigne le fichier ref-BNF
placé
+dans le sous-répertoire bibliographie/
du répertoire DEA/
.
+
Sur un système Unix, les
+fichiers sont globalement organisés sur le modèle qui précède. La racine
+s'appelle /
(slash). Elle contient divers répertoires où
+sont répartis conventionnellement l'ensemble des fichiers. Ainsi, il existe un
+répertoire /users/
(à prononcer slash users) où se trouvent
+les comptes des utilisateurs; le répertoire /usr/
contient la plupart
+des programmes, le répertoire /tmp/
contient des fichiers
+temporaires, etc.
+ +
+ +
+Bien entendu, chacun de ces répertoires se subdivise en plusieurs répertoires.
+/users/
contient un répertoire pour chaque promotion
+(/users/92/
, /users/93/
, etc. Chacun de ces répertoires est
+ensuite divisés en maths/
, litt/
, bio/
, etc. Enfin
+viennent les comptes des utilisateurs, c'est-à-dire un répertoire par
+personne. Par exemple, Thomas Pornin est un informaticien de la promotion
+1994. Son compte se trouve à l'adresse suivante :
+/users/94/maths/pornin/
.
Quand vous vous loguez, vous
+vous retrouvez dans votre répertoire personnel (home directory), que
+l'on appelle «~
» (tilde). Pour Thomas, ~
c'est
+/users/94/maths/pornin/
, pour votre servante c'est
+/users/95/litt/robin/
.
+Ensuite, quand vous travaillez, vous vous déplacez dans vos sous-répertoires.
+On appelle «répertoire courant» ou «répertoire de travail» le répertoire dans
+lequel vous vous trouvez. Quand un membre du compte tuteurs
se logue,
+son répertoire courant est /users/staffs/tuteurs/
, ou ~
;
+quand il rédige Le Hublot, le répertoire courant est
+/users/staffs/tuteurs/hublot/
ou ~
/hublot/
.
+À partir de là, vous pouvez jouer avec les commandes qui donnent des
+renseignements sur l'adresse (ou chemin d'accès) des fichiers. La commande
+pwd
(print working directory) vous donne l'adresse complète,
+ou absolue, du répertoire dans lequel vous vous trouvez. La commande
+which
suivie d'un nom de commande vous indique où se trouve le
+programme en question; par exemple :
+bireme ~ $ which pine /usr/local/util/bin/pine
+
+
+cd
La dernière fois, nous avons vu la commande ls
, qui
+permet d'afficher le contenu d'un répertoire (fichiers et
+sous-répertoires). Ce mois-ci, on va voir plus précisément comment
+manipuler les répertoires.
Pour créer un
+répertoire, on utilise la commande mkdir
(make directory).
+Si par exemple vous voulez créer un répertoire appelé «Images», vous tapez
+mkdir Images
:
+bireme ~ $> ls +Mail/ vocab vocab~ +bireme ~ $> mkdir Images +bireme ~ $> ls +Images/ Mail/ vocab vocab~ ++ +
Pour détruire un répertoire, il faut que celui-ci soit vide. Vous
+pouvez ensuite utiliser la commande rmdir
(remove
+directory) suivie du nom du répertoire à détruire :
+bireme ~ $> ls +Images/ Mail/ vocab vocab~ +bireme ~ $> ls Images/ +bireme ~ $> rmdir Images +bireme ~ $> ls +Mail/ vocab vocab~ ++ +
On suppose que +vous avez l'arborescence suivante sur votre compte :
+ ++ +
+ +
+C'est la commande cd
(change directory) qui permet de se
+déplacer dans les répertoires. Si vous voulez aller dans votre répertoire
+DEA/
, il suffit de taper «cd DEA/
». Par exemple :
+
+bireme ~ $> ls +DEA/ Mail/ vocab vocab~ +bireme ~ $> cd DEA +bireme ~/DEA $> ls +notes rapport ++ +
Pour remonter, il faut savoir que le niveau au dessus (ou «répertoire
+père») s'appelle «..
» (point point). Si donc vous tapez
+cd ..
(avec un espace), vous remontez d'un niveau. Si vous
+tapez cd
tout court, vous revenez à l'origine de votre
+arborescence, c'est-à-dire dans ~
. Par exemple :
+bireme ~/DEA $> cd +DEA/ Mail/ vocab vocab~ +bireme ~ $> ls +DEA/ Mail/ vocab vocab~ ++ + +
+Exercice : pourquoi est-ce équivalent, dans cet exemple, de taper
+«cd
» tout court et «cd ..
» ?
+Pour en savoir plus, vous pouvez consulter le cours des tuteurs +sur les répertoires, et faire les exercices consacrés à ces commandes.
+ + +Il est souvent plus rapide et plus efficace de connaître les commandes Unix
+qui servent à déplacer, renommer, copier, effacer, etc., les fichiers et les
+répertoires; mais certains utilisateurs sont habitués à effectuer ces
+opérations à la souris, avec une interface graphique*. Nous
+vous indiquons donc deux gestionnaires de fichiers à la souris, xfm
+et kfm
.
Pour lancer ces logiciels, il suffit de taper leur nom dans une
+fenêtre, en validant avec la touche Entrée
, bien sûr! Et
+veillez, comme avec tous les programmes, à les quitter correctement avec
+leur commande respective.
xfm
(X file
+manager)Il est efficace et rustique (avec un choix de +couleurs déplorable). Contrairement à l'habitude sous Unix, il faut +double-cliquer sur les icônes.
+ ++ +
+ + +Quand vous cliquez avec le bouton gauche sur un fichier, xfm
lance un
+éditeur dessus; le bouton droit vous permet d'effectuer certaines opérations
+sur le fichier.
Quand vous double-cliquez sur un répertoire, ce répertoire s'affiche. Pour
+remonter dans l'arborescence, cliquez sur le répertoire spécial appelé
+«point-point». Pour créer un nouveau répertoire, sélectionner New
+dans le menu Folder
.
Pour déplacer un fichier, il faut le sélectionner avec la souris (un
+cadre apparaît autour de l'icône) et le faire glisser dans le répertoire
+où on veut le mettre. Pour détruire un fichier, cliquez sur son icône
+avec le bouton droit, et choisissez Delete
(confirmation
+sera demandée). Vous pouvez aussi sélectionner le fichier avec le bouton
+gauche et sélectionner Delete
dans le menu
+File
. Le principe est le même pour renommer un fichier.
+
+xfm
est gênant pour une raison: par défaut, sans configuration
+préalable, il ne sait qu'éditer un fichier; il ne sait donc pas lancer un visualisateur d'images*, par exemple, quand il a affaire à
+une image. En revanche, une fois configuré, il s'en sort très bien.
Pour quitter xfm
, cliquer sur File
,
+sélectionner Quit
et confirmer dans le cadre qui
+apparaît.
kfm
(KDE file manager)Il est très
+agréable et bien plus efficace. kfm
est un des éléments de
+l'interface graphique* KDE, qui donne à un PC sous
+Linux l'aspect d'un PC sous Windows (bouton «Commencer», gestion à la
+souris...).
+ +
+ +
+À la différence de xfm
, kfm
s'utilise avec un simple
+clic. Soyez patients! KDE est gourmand en mémoire, et il encombre le réseau,
+si bien que l'opération peut ne pas être instantanée; quand vous cliquez dans
+un menu ou sur une icône, surtout pas de double-clic, vous lanceriez deux fois
+la même opération/le même programme.
+Comme avec xfm
, on clique avec le bouton gauche de la souris,
+tandis que le bouton droit donne accès à d'autres fonctions. On déplace les
+fichiers et les répertoires de la même façon, en les sélectionnant avec la
+souris et en les faisant glisser. Vous pouvez de plus en sélectionner
+plusieurs à la fois avec la souris.
+Pour aller dans un répertoire, cliquez sur son icône. Pour remonter d'un
+niveau, cliquez sur la flèche vers le haut. Pour créer un répertoire, choisir
+New folder
en cliquant dans le menu File
ou dans le
+fond blanc.
+Pour toutes les opérations sur les fichiers, cliquez avec le bouton de droite +sur l'icône du fichier et choisir ce que l'on désire (copier, détruire, +déplacer). Vous pouvez aussi éditer les propriétés du fichier pour changer son +nom et ses permissions.
+ +
+kfm
lance les programmes correspondant à chacun des types de
+fichiers (un éditeur pour un fichier de texte, un visualisateur d'images* pour une image, etc). Il affiche
+lui-même les fichiers HTML.
+Si vous voulez utiliser un programme spécial (par exemple : écrire avec
+xemacs
plutôt que kedit
, regarder les images avec
+xv
plutôt que kview
), il suffit de cliquer avec le bouton
+droit sur l'icône du fichier, sélectionner Open with
et indiquer le
+nom du programme à utiliser.
Pour quitter kfm
, cliquer sur Close
+dans le menu File
. Attention, kfm
est
+un gestionnaire de fichiers intégré : Close
ferme la
+fenêtre du gestionnaire, mais les icônes cliquables
+Templates
, AutoStart
, etc. (en haut à gauche de
+l'écran), ne disparaissent pas. Pour terminer, tapez ^C
+(Control-C) dans la fenêtre où vous avez lancé le programme.
+La dernière fois, on a vu que les ordinateurs gagnaient à être mis en réseau +pour échanger plus rapidement et plus efficacement les données, à la façon du +télégraphe au XIXe siècle.
+ + + ++Il existe deux types de réseaux : les réseaux par paquets et les réseaux +par circuits. Le premier type est celui du Morse décrit dans le numéro +précédent : chaque information est un message qui transite de centre de +tri en centre de tri, suivant l'adresse du destinataire; personne ne s'occupe +de l'intégralité de la transmission, et tout problème est par essence local. +
+ +Le deuxième type de réseau est celui du téléphone : un rendez-vous est +pris entre les deux parties, une communication physique est établie jusqu'à ce +que l'un des deux raccroche.
+ ++Ces deux types de réseaux ont des avantages et des inconvénients opposés. +Essentiellement :
+ +Actuellement, France Telecom +utilise des réseaux par paquets pour toutes les communications nationales. En +effet, les possibilités de réutilisation de la bande passante et de résistance +aux pannes sont très appréciables; les caractéristiques habituelles en +téléphonie (conversation continue, pas de perte de son) sont assurées par des +protocoles de plus haut niveau, qui tentent de rétablir des garanties de +débit, de corriger les erreurs, enfin bref de faire au mieux. C'est une +émulation de réseau par circuits, par dessus un réseau par paquets (et, +bizarrement, ça marche).
+ +Thomas Pornin
+ +
+
+Figure 1 : Réseau par paquets reliant A à B
+Les textes de référence sur la Netiquette («communiquer avec courtoisie sur +Internet») sont La Netiquette : premiers éléments, par Corinne Gacon, et la RFC 1855. +
+ ++Ce mois-ci, on va voir un aspect technique de la Nétiquette, concernant les +pages Web.
+ ++Lors de l'écriture d'une page Web, la Netiquette peut se résumer à un principe +très simple. On veut une page qui soit :
+ ++Quand on regarde plus en +détail, il y a trois points auxquels il faut faire attention.
+ + +Oui, d'accord, +c'est beau de mettre des couleurs, que ce soit du rose et du vert fluo pour +une page vivante, ou des couleurs sombres pour donner à votre page un look +d'enfer. Mais avez-vous déja essayé de lire un texte un peu long écrit en +rouge sur fond noir? Cela donne en général assez vite des envies de meurtre +contre l'auteur de la page en question. LE principe de base est d'avoir un bon +contraste entre la couleur de fond et la couleur du texte. Texte clair sur +fond sombre ou l'inverse, à vous de choisir... Les couleurs intermédiaires +comme le rouge ne sont donc en pratique jamais vraiment utilisables, car trop +proches du noir et du blanc.
+ + ++Ensuite, quand vous redéfinissez une couleur, par exemple la couleur du texte, +redéfinissez les TOUTES, y compris les couleurs pour afficher les liens. Comme +chaque utilisateur peut configurer à sa guise les couleurs par défaut, si vous +changez juste le fond d'écran pour le mettre blanc au lieu de gris clair, +quelqu'un qui a pris comme couleurs par défaut blanc sur noir se retrouvera +avec un joli texte blanc sur blanc...
+ ++Cela s'applique aux fonds d'écran, mais avec quelques détails en plus. En +premier lieu, un fond d'écran peut être dans l'ensemble assez clair, mais avec +des zones sombres qui rendront illisibles les bouts de texte qui se retrouvent +dessus. Et comme les images ne sont pas forcément affichées avec assez de +couleurs, les fonds d'écran peuvent subir un tramage qui va introduire des +points noirs qui deviennent à la longue assez désagréables. Pensez aussi, +quand vous mettez une image de fond, à spécifier comme couleur de fond la +couleur dominante de l'image en question, afin que ceux qui ne chargent pas +les images dans leur navigateur aient quand même les bonnes couleurs.
+ + +
+Un dernier point : évitez à tout prix la balise <BLINK>ça
+clignote</BLINK>
, que je soupçonne d'avoir été créé sous la
+pression du lobby des opticiens...
Quand quelqu'un regarde une page Web, +il ne télécharge pas toujours les images qui sont présentes dessus, +principalement pour deux raisons :
+ + +links
par exemple).Dans ce cas, le lecteur appréciera de
+savoir ce que représentent les images sans avoir à les charger : c'est là
+le but du champ ALT
dans la déclaration d'une image en HTML. Ce
+champ est trop souvent ignoré, alors que les spécifications du language HTML
+précisent bien qu'il est obligatoire.
+Évitez également de mettre des grosses images sur les pages qui ne sont pas
+explicitement désignées comme pages d'images. Si vous voulez inclure des
+images de taille importante, mieux vaut les regrouper dans une page sur
+laquelle n'iront que les personnes spécifiquement intéressées par les images
+en question; ou mieux, mettez dans votre page des versions réduites des images
+en question, très faciles à créer avec xv
ou gimp
,
+sur lesquelles vous placerez des liens vres les images en question.
En plus des balises +spécifiées dans le standard HTML, il en existe d'autres, qui ont été en +général introduites par Netscape ou Internet Explorer, et qui ne sont +reconnues que par le navigateur en question. Ces balises sont bien sûr à +éviter, parce qu'elles rendent la page prévue pour un navigateur particulier. +
+ ++C'est ce qui se passe dans les pages affichant un logo comme «Optimisé pour +Netscape» ou «Best viewed with I.E.», et leur structure a aussi été étudiée en +tenant compte des particularités du navigateur pour obtenir un affichage bien +précis. Cela est totalement contraire au principe du HTML, qui veut qu'un +document soit parfaitement lisible quel que soit le navigateur utilisé.
+ ++En réaction à cela, il est apparu sur le Web en 1996 la campage «Best viewed +with any browser», «Visible avec n'importe quel navigateur», à laquelle je ne +peux que vous recommander de participer... La page de la campagne, avec tous +les détails, se trouve sur : Viewable With Any +Browser. Campaign for a Non-Browser Specific WWW.
+ +Gilles Radenne
+ +
+
+Figure 3 : Exemples de logos de la campagne «anybrowser»
On mesure en bauds le +débit des modems. Grosso-modo, 1 baud équivaut à 1 bit par seconde. +Les modems actuels peuvent monter à 57 600 bauds, mais c'est rare (il +faut des lignes téléphoniques de très bonne qualité). Couramment, on fait du +28 800 bauds. Comme 8 bits font un octet (c'est-à-dire un +caractère), un modem courant fait du 3 600 caractères à la seconde, soit +environ 3,5 Ko.
C'est un +espace spécial qui, placé entre une ponctuation et un mot, empêche le mot et +la ponctuation d'être séparés par un retour à la ligne.
+L'interface est ce qui permet la communication entre l'ordinateur et +l'utilisateur. Avec une interface graphique, un «geste» informatique +(déplacer un fichier, lancer un logiciel) correspond à un «geste» +physique (faire glisser une icône, cliquer sur un bouton qui représente +le logiciel).
+ ++On utilise les ressources du graphisme pour ordonner le travail, par +exemple : une fenêtre pour chaque logiciel, une couleur pour ce qui est +activé et une autre pour ce qui n'est pas activé, une thématique pour chaque +icône, permettant de retrouver rapidement la fonction du logiciel (comme +papier et crayon pour un traitement de texte, palette pour un logiciel de +dessin, etc.).
C'est un système électronique qui permet de +connecter un ordinateur au réseau téléphonique, pour lui donner accès à +l'Internet.
Un visualisateur d'images est un
+logiciel capable d'afficher des images. Sur les stations Sun, nous
+utilisons xv
. Un visualisateur d'images inclut le plus
+souvent des fonctions de retouche (agrandir, convertir en un autre
+format, etc.).
+
+ +Stage informatique les 3, 4 et 5 mars 2000 | +|
---|---|
Stage pratique | +Les sessions suivantes sont prévues : introduction +aux stations (pour ceux qui n'ont pas pu suivre le stage de rentrée), faire sa +page Web (débutants et habitués), LATEX, +création graphique sur les stations, utilisation courante d'Unix (enchaîner +des commandes, chercher des mots, etc). |
Conférence | +Une conférence aura lieu le samedi 4 mars sur le +thème suivant : qui décide des standards sur Internet, comment est-il +régulé. |
Pour s'inscrire : des formulaires seront +déposés dans les salles informatiques et près des casiers. Pour tous les +détails, voir en dernière page du Hublot. | + +
Pour toutes questions, idées d'articles, etc, n'hésitez pas à nous +écrire : tuteurs@clipper. +Vous pouvez aussi mettre un mot dans le casier d'Émilia Robin. Certaines +pages de notre site sont +indiquées dans les articles; suivez les liens pour vous y reporter. Vous +pouvez aussi consulter les anciens numéros du +Hublot.
+ + + + ++Le mois dernier, on a vu les conventions pour les numérotations. Ce mois-ci, +on va aborder en détail la ponctuation. Comme d'habitude, ces informations +proviennent du Lexique des règles typographiques en usage à l'Imprimerie +nationale, Imprimerie nationale, 1990.
+ + +Il n'est pas +inutile de rappeler le nom de certaines ponctuations qui figurent sur les +claviers d'ordinateur, même si pour la plupart elles n'ont pas à figurer dans +un document sérieux comme un mémoire.
+ + +/ |
+Slash ou «barre oblique vers la droite». Il arrive qu'on le +recontre, par exemple dans «et/ou». | +
\ |
+Backslash, ou antislash, ou «barre oblique vers la +gauche». | +
_ |
+Underscore ou «trait de soulignement», ou «souligné» tout +court. | +
@ |
+Arobase. | +
| |
+Pipe (prononcer à l'anglaise), ou «barre verticale». | +
+Ces caractères n'ont rien à faire dans un mémoire, hors contexte informatique +(URL, adresses, etc). +
+ +
+Le &
(E commercial ou esperluette; ampersand en
+anglais) est n'est utilisé que pour les raisons sociales, comme
+«Marius & Fils». Il est à proscrire hors de ce contexte.
On met un espace après toutes les ponctuations. Les +ponctuations sont précédées, selon le cas, d'une espace complète, d'une +espace fine ou d'aucune espace. Dans tous les cas, l'espace qui précède +la ponctuation est insécable (voir le n° 2 du +Hublot pour savoir comment les taper).
+ ++Dans la version en LaTeX +du Hublot, il n'y a aucun problème pour afficher des espaces fines... +Mais dans la version HTML, on ne peut pas.
++Au passage, signalons qu'en typographie, le mot «espace» est théoriquement +féminin; la plupart du temps, on ne féminise que «espace fine».
+Le point et la virgule ne sont précédés d'aucun espace. +
+ ++Le point-virgule, le point d'exclamation et le point d'interrogation sont +précédés d'une espace fine (demi-espace); si le traitement de texte n'en est +pas capable, il faut choisir entre pas d'espace ou un espace complet +(insécable), et adopter la même disposition dans tout le texte.
+ ++Le deux-points et le guillemet fermant sont précédés d'un espace complet. Le +guillemet ouvrant est suivi d'un espace. Le trait d'incise est précédé et +suivi d'un espace complet. On ne met pas d'espace à l'intérieur des +parenthèses et des crochets.
+ ++On rappelle les guillemets français sont « et » (et non " ou `` et ''); pour +savoir comment taper les guillemets français sur un clavier américain, voir le +n° 2 du +Hublot. D'autre part, il ne faut pas confondre le trait d'union, le +tiret (dans un intervalle) et le trait d'incise.
+ ++Encore une fois, dans la version en LaTeX du Hublot, on peut +montrer la différence. En HTML, non.
Les listes sont +un recours visuel pour présenter de façon claire une énumération. La plupart +du temps, les termes énumérés font partie d'une même phrase : «Nous avons +invité ma mère, ma cousine et mon grand-oncle.»; c'est pour respecter cette +unité grammaticale que les éléments d'une liste sont terminés par une virgule +et que seul le dernier élément se termine par un point :
+ ++Si les éléments sont un peu longs, on remplace les virgules par des +points-virgules :
+ ++Quand les éléments deviennent trop longs et que l'on perd de vue l'unité +sous-jacente, les points sont autorisés pour conclure chaque élément. On met +des majuscules au début des éléments quand les listes sont numérotées. La +minuscule n'est de règle qu'avec les listes à tirets.
+ + ++On nous demande très souvent comment lire un fichier Word reçu par courrier +électronique. Vous pouvez le transférer sur un Mac ou un PC sous Windows +(via FTP ou disquette) pour le lire avec Word; cela a l'inconvénient +de devoir changer de machine voire de salle.
+ + + Il existe une autre
+solution, la suite bureautique ApplixWare, installée sur les stations Sun, qui
+comporte un traitement de texte. Elle se lance par la commande
+asterix
. Après l'avoir tapée (Cela peut prendre quelque temps,
+surtout si vous êtes dans une autre salle que la salle S), vous devriez
+voir apparaître une petite fenêtre, avec le logo ApplixWare, quelques menus,
+et surtout cinq boutons.
+
+ +
+ ++Ces boutons permettent de lancer les divers logiciels de la suite, dans +l'ordre : le traitement de texte (ce qui nous intéresse ici), le logiciel +de dessin, le tableur, l'outil de courrier (à ne jamais utiliser), et +l'interface pour base de données. Pour lancer le traitement de texte, cliquer +(une seule fois!) sur le bouton de gauche.
+ + +
+Pour quitter le logiciel, sélectionner Exit
dans le menu
+File
; n'oubliez pas, après avoir quitté le traitement de texte,
+de quitter également le lanceur.
On se retrouve avec
+une fenêtre de traitement de texte, très similaire à celle de Word, avec un
+fonctionnement similaire et une interface assez proche. Asterix utilise un
+format de fichier qui lui est propre, avec comme extension .aw
+(comme ApplixWare). La
+commande Open
du menu File
sert à ouvrir des
+fichiers au format .aw
.
+Pour lire un fichier d'un autre format, utilisez la commande
+Import
du menu File
.Une fenêtre s'ouvre, vous
+montrant le contenu de votre répertoire; cliquez sur le fichier à ouvrir. Si
+tout va bien, ApplixWare reconnaîtra le format du fichier, affichera
+éventuellement quelques informations sur ce qu'il fait et sur le fichier qu'il
+traite, et pour finir vous pourrez admirer votre superbe document...
ApplixWare connaît +divers formats, dont le HTML, le RTF, divers formats texte, WordPerfect +(jusque WordPerfect 7) et Word (jusque Word 97). Mais il ne connaît +que des formats propres : un format à moitié corrompu pour cause +de «sauvegarde rapide» est illisible... et vous ne pourrez pas ouvrir le +document.
+ ++Mettez-vous donc d'accord avec votre correspondant pour qu'il vous envoie un +format propre, sans sauvegarde rapide, et de préférence un format standard, +comme le RTF.
+ +
+Asterix sait également «exporter» un fichier dans un autre format que le sien;
+pour cela, utilisez la commande Export
dans le menu File.
Des changements peuvent +survenir par rapport à l'original, pour des raisons complexes et souvent +obscures. Les accents peuvent avoir été remplacés par des points +d'interrogation, surtout si le fichier provient d'un Mac. Si le document +comporte des fontes que Asterix ne connaît pas, il les remplace par une fonte +standard.
+ ++Le gras, l'italique et le souligné sur de telles fontes peuvent parfois +disparaître, vu que ces attributs sont considérés par Word ou Asterix comme +des variations sur les fontes. En revanche, tous les attributs de mise en page +(justification, centrage, marges variables, taille de caractère) sont +conservés.
+ + Pour imprimer, sélectionnez
+Print
dans le menu File
. Le nom de l'imprimante
+sélectionnée est indiqué en vidéo inverse. Vous pouvez aussi cliquer sur le
+bouton en forme d'imprimante.
+Vous pouvez aussi vouloir créer un fichier PostScript, sans imprimer
+immédiatement. Pour cela, sélectionnez PostScript
dans la liste
+des imprimantes. Vérifiez le nom du fichier et son emplacement dans le cadre
+File Name
; par défaut, ApplixWare range les fichiers qu'il crée
+dans un répertoire axhome
, installé sur votre compte la première
+fois que vous lancez le logiciel.
+Vous obtenez un fichier PostScript, reconnaissable à son suffixe
+.ps
. Pour regarder un fichier PostScript, utilisez la commande
+gv
(voir le numéro 1 du Hublot). Pour l'imprimer,
+utilisez la commande lpr
.
Maintenant vous savez ouvrir
+un fichier Word... mais on vient de vous envoyer un fichier Excel. Hé bien, La
+marche à suivre pour l'ouvrir est exactement la même, sauf qu'il faut cliquer
+sur le bouton du tableur dans le lanceur de départ (bouton du milieu du
+lanceur). Le tableur est capable d'importer des fichiers .xls
.
+Mais n'ayant pas fait d'essais là-dessus, je ne sais pas ce qui passe
+correctement.
Gilles Radenne
+ + +
+Deux commandes donnent accès à des dictionnaires en ligne. La première est
+webster
; elle interroge un dictionnaire anglais (disponible à
+l'adresse suivante : www.m-w.com/; Merriam-Webster Online):
+vedette ~ $ webster eyebrow
+eye-brow [0xF5]^--,brau. n
+(15c)
+:the ridge over the eye or hair growing on it
+
+
+
+La commande hachette
interroge un dictionnaire français :
+vedette-~ $ hachette anticonstitutionnellement
+anticonstitutionnel, elle adj. Contraire à la Constitution.
+
+anticonstitutionnellement adv. De manière contraire à la constitution, à
+ses principes. [Ce mot passe pour être le plus long de la langue
+française.]
+
+© Hachette Multimédia / Hachette Livre
+
+
++Le cours Unix se divise en trois parties : «Concept», «Commande», +«Usage». Ce mois-ci, on va parler des droits, c'est-à-dire de ce que les +utilisateurs ont le droit de faire avec leurs fichiers et ceux des autres. La +partie «Commande» explique comment on modifie les droits, et la partie «Usage» +parle de déontologie...
+ + +Nous avons vu dans le numéro 1 du Hublot qu'Unix est un système +multi-utilisateurs : +les utilisateurs sont individualisés, ils ont chacun un compte auquel ils +accèdent par un mot de passe. Chacun a le droit de faire ce qu'il veut sur son +compte, mais il n'a pas le droit de modifier les fichiers des autres +utilisateurs. C'est cette question des droits (ou permissions) que l'on va +aborder dans ce numéro.
+ +Sous Unix, on distingue +trois sortes de droits : le droit de lecture, le droit d'écriture, et le +droit d'exécution. Lire un fichier, c'est en prendre connaissance. Écrire dans +un fichier, c'est pouvoir le modifier. Le droit d'exécution ne concerne que +les programmes (aussi appelés, de ce fait, «exécutables»).
+ ++Un fichier a toujours un propriétaire, qui est, en règle +générale, la personne qui l'a créé. Le propriétaire d'un fichier est le seul à +pouvoir tout faire avec ce fichier. Lui seul peut l'effacer, et lui seul +choisit qui a le droit de lire le fichier, de l'exécuter ou de le modifier. +
+ ++On distingue donc différentes catégories d'utilisateurs, qui sont :
+ + +litt95
,
+bio99
, math94
...);+Les autres utilisateurs n'ont le droit de faire que ce que le propriétaire +autorise. Un seul utilisateur a le droit de tout faire, et d'accéder à tous +les fichiers : c'est root, le super-utilisateur, +l'administrateur du système.
+ + Pour savoir quels sont
+les droits d'un fichier, on utilise la commande ls
(voir
+numéro 2) avec l'option -l
. Les lignes affichées commencent
+toutes par quelque chose comme :
+-rw-r--r--
+
+
+
++Ce sont ces caractères qui renseignent sur les droits. Le premier caractère +donne le type du fichier; ici, comme rien n'est dit, c'est un fichier normal +(donc pas un répertoire par exemple).
+ +
+Ensuite, vous avez trois séries de lettres : rwxrwxrwx
. Si
+on lit la lettre, c'est que le droit est donné, si on voit un tiret à la
+place, c'est que le droit n'est pas attribué :
r
c'est read
+(droit de lecture), w
c'est write (droit d'écriture),
+x
c'est execute (droit d'exécution). rwx
+indique les droits du propriétaire du fichier, le deuxième les droits de son
+groupe, le troisième les droits de tous les autres
+utilisateurs.
+On apprend donc que le propriétaire de ce fichier a le droit de le lire et de
+le modifier (rw-
); quand à tous les autres utilisateurs, groupe
+inclus, ils ne peuvent que lire le fichier (r--r--
). Ce sont là
+les droits d'un fichier normal. Voici comment ils sont affichés avec
+kfm
(voir n° 3 du
+Hublot) :
+ +
+ ++Les droits habituels d'un répertoire sont les suivants : +
+ +
+drwxr-xr-x
+
+
+
+
+Le d
indique qu'il s'agit d'un répertoire (directory).
+Lire un répertoire, c'est pouvoir afficher son contenu; exécuter un
+répertoire, c'est pouvoir aller dedans.
chmod
+La commande chmod
(change mode) sert à modifier les
+droits d'un fichier, de la manière suivante :
+chmod droits fichier
+
+
++Elle a deux syntaxes différentes, le mode symbolique et le mode octal. On ne +va parler ici que du mode symbolique.
+ ++Des caractères désignent successivement l'utilisateur, l'opération à effectuer +et le droit considéré, suivant ce tableau :
+ + +Utilisateur | +Action | +Droit | +
---|---|---|
u (user) |
++ (ajouter) |
+r (read) |
+
g (group) |
+- (retirer) |
+w (write) |
+
o (others) |
++ | x (execute) |
+
+Ainsi, la commande suivante sert à rendre exécutable le fichier
+boprogramme
, pour son propriétaire :
+chmod u+x boprogramme
+
+
+
+
+Ses droits étaient -rw-r--r--
, ils sont désormais
+-rwxr--r--
.
+Ou encore, celle-ci sert à interdire la lecture du fichier secret
+à tous les autres utilisateurs, groupe inclus :
+chmod go-r secret
+
+
+
+Ses droits étaient -rw--r--r--
, ils sont maintenant les
+suivants : -rw-----
.
+Nous avons dit que, par défaut, tous les fichiers étaient lisibles par tout le +monde, à l'exception du courrier électronique et de quelques autres. Autrement +dit, tout le monde peut aller lire votre maîtrise ou vos programmes. +Cependant, cette possibilité technique ne doit pas être considérée comme un +incitation aux indiscrétions. La charte signée en début d'année est claire sur +ce point (paragraphe 2.4) :
+ +++ ++Tout utilisateur est responsable, pour ses fichiers et répertoires, des droits +de lecture et de modification qu'il donne aux autres utilisateurs. En outre, +il est interdit de prendre connaissance d'informations détenues par d'autres +utilisateurs, quand bien même ceux-ci ne les auraient pas explicitement +protégées. +
+
+Le débat est toujours ouvert : faut-il être complètement paranoïaque, et +interdire complètement l'accès à son compte, y compris pour des données non +confidentielles? Ou alors faut-il conserver une certaine transparence et +n'interdire en lecture que ce qui est strictement privé, comme le courrier +électronique?
+ ++C'est une question de responsabilité personnelle. Si vous préférez interdire +tout regard extérieur sur votre compte, vous êtes libre de le faire; la +commande est la suivante (en mode octal) :
+ +
+chmod 700 ~
+
+
+
+
+~
(tilde) c'est votre compte, 700
équivaut en gros à
+go-rwx
. Aucun de vos fichiers ne sera visible pour qui que ce
+soit, sauf vous; cela inclut votre page Web... Il faut cependant savoir que,
+en cas de problème, les tuteurs et les gourous ne vous seront d'aucune aide.
+Il faudra aller voir l'administrateur-système.
+Il vaut donc mieux ranger dans un répertoire spécial tout ce qui est
+confidentiel, et interdire l'accès à ce répertoire. Vous pouvez aussi réunir
+dans un répertoire tout ce que vous considérez comme public (texte d'une
+pétition, oeuvre commune, etc). Ce répertoire est ordinairement appelé
+Public/
, ou pub/
. Ou encore, vous vous contentez
+d'interdire en lecture tout ce que vous considérez comme personnel, en
+laissant le reste ouvert.
+Dans cette section, vous trouverez la suite du cours de Thomas sur les +réseaux. La section Nétiquette est désormais remplacée par un cours progressif +sur l'utilisation de Netscape. Ce mois-ci, on parle de choses très +simples : lancer et quitter Netscape. Dans les numéros suivants, on +abordera la navigation, la gestion des marque-pages, le téléchargement de +documents et l'utilisation des moteurs de recherche.
+ +
+
+Figure 1 : Réseau ethernet par câble coaxial
+Le mois dernier, on a vu comment on pouvait transmettre les données : +soit à la façon d'une communication téléphonique (réseau par circuits), soit à +la façon d'un télégramme (réseau par paquets). Ce mois-ci, on va voir comment +un réseau s'organise physiquement entre les ordinateurs.
+ +Pour +connecter deux ordinateurs, il faut tout d'abord pouvoir représenter +les 0 et les 1 sur un médium adapté. Actuellement, on utilise +principalement les méthodes suivantes :
+ +Le cas d'un modem +ne pose pas de problème, car c'est une communication point à point sur une +ligne réservée (aucun encombrement). En revanche, dans un réseau local, on +veut connecter plusieurs machines, éventuellement beaucoup, et on ne désire +pas tendre un câble pour chaque paire de machines. L'idée est donc de se +partager un conducteur commun, ce qu'on appelle d'habitude un bus. +Ensuite, il faut décider comment partager ce bus entre les différents +ordinateurs connectés dessus.
+ + ++En token-ring, un jeton (token) est transmis de station à +station; c'est le droit de parole. Chaque station ne peut conserver le jeton +que pendant un temps maximal donné, mais peut le relâcher immédiatement si +elle n'a rien à dire.
+ + +En ethernet, +la méthode est plus simple qu'en token-ring : quand une station veut +émettre un message, elle espionne le bus jusqu'au moment où il se libère (plus +personne ne parle pendant un très court instant); elle prend alors la parole, +d'autorité. Ce faisant, elle continue d'espionner le bus, pour voir si la +communication passe bien; si elle est brouillée, c'est qu'une autre station a +eu la même idée en même temps. Dans ce cas, la station (et l'autre aussi, car +elle est également brouillée) s'arrête, attend un temps aléatoire, et +recommence. Avec une bonne probabilité, l'autre station a attendu un temps +aléatoire différent, et les deux messages partent sans brouillage. Après un +certain nombre d'essais infructueux, avec des délais de plus en plus grands, +le message est considéré comme n'ayant pas pu passer, c'est ce qu'on appelle +une collision.
+ ++Bizarrement, l'ethernet est très efficace, et partage très correctement la +bande passante, même quand le bus est chargé. Il a l'avantage d'être très +décentralisé : aucune station n'a besoin de savoir qui, au juste, est +présent sur le bus, et une station éteinte n'empêche pas la communication. Son +défaut principal est l'absence de garantie de débit, chaque station se +contentant de faire au mieux, au lieu de faire bien.
+ ++L'ethernet se pratiquait sur des câbles coaxiaux (façon câble d'antenne de +télévision), passant par toutes les stations et terminés aux deux bouts par +des résistances, avec une longueur maximale de 185 mètres (ou +550 mètres si on emploie du gros câble blindé, traditionnellement jaune). +Cette méthode a l'inconvénient d'occasionner une coupure du câble quand on +rajoute une nouvelle prise; et il n'est pas toujours facile de faire passer le +même câble par toutes les stations, suivant leur disposition.
+ ++Maintenant, on établit des structures arborescentes : chaque station est +reliée, par un câble personnel, à un hub, une sorte de multiprise +amplifiée. Les hubs sont reliés entre eux via des câbles similaires; chaque +hub reproduit sur toutes les autres prises ce qu'il reçoit sur chacune +d'elles. On peut brancher une nouvelle machine sans perturber le +fonctionnement, et on peut plus facilement relier des machines distantes.
+ + +Thomas Pornin
+ ++ +Figure 2 : +Réseau ethernet arborescent (RJ45)
+ ++Netscape est un logiciel qui sert à regarder les pages Web, codées dans un +langage appelé HTML (hypertext markup language). C'est ce qu'on +appelle un browser en anglais; en français, on dit le plus souvent +«navigateur», mais on rencontre aussi brouteur, fureteur, butineur... Par +pitié, ne confondez pas «Internet» et un logiciel donné! Le Web est un aspect +de l'Internet, mais Internet c'est aussi le courrier électronique, les +connexions à distance, le transfert de fichiers, etc. Et Netscape est un +logiciel particulier utilisé pour un aspect particulier d'Internet. Donc pas +de «Tiens, je ne connais pas cette version d'Internet»...
+ + ++J'ai utilisé Netscape 3 pour ce cours; Netscape 4 est également +installé sur les stations; les menus diffèrent légèrement.
+ + +Avec la configuration +des conscrits, il suffit de cliquer sur le bouton «Web» (qui porte d'ailleurs +le logo de Netscape). Vous pouvez aussi choisir «Netscape» dans le sous-menu +«Utilitaires» du menu du fond d'écran (cliquer avec le bouton droit dans le +fond de l'écran). Attention, pas de double-clic...
+ +
+Netscape peut aussi se lancer au clavier : tapez netscape
+dans une fenêtre. Cette méthode est plus rapide quand vous voulez aller à une
+adresse précise; par exemple :
+vedette ~ $ netscape www.bnf.fr
+
+
++Netscape se lance et affiche immédiatement la page d'accueil de la BNF.
+ ++C'est le même principe quand vous voulez regarder un fichier HTML sur votre +compte. Il suffit de taper Netscape suivi du nom du fichier à afficher : +
+ +
+vedette ~ $ netscape cv.html
+
+
+
+ Il y a une seule et
+unique façon de quitter Netscape, c'est de sélectionner Exit
dans
+le menu File
, ou d'utiliser le raccourci clavier indiqué. Vous ne
+devez donc pas utiliser le menu de la fenêtre, ou vous déloguer sans avoir
+quitté le logiciel.
+ +
+ ++Si cela vous arrive, vous ne pourrez pas lancer Netscape la fois +suivante : il vous dira qu'un fichier de lock existe; tant que ce fichier +n'aura pas été détruit, le message réapparaîtra. Si vous cliquez sur «OK», +vous passez outre l'avertissement, mais c'est tout.
+ +
+Le fichier à détruire se trouve avec tous les fichiers de configuration de
+Netscape, dans un répertoire caché appelé .netscape/
. Pour
+détruire le fichier, tapez la commande suivante :
+vedette ~ $ rm .netscape/lock
+
+
++C'est quand même plus simple de prendre de bonnes habitudes...
+ +File
Explorons un
+peu mieux ce menu File
. Disons-le d'emblée : nous vous
+déconseillons fortement de lire votre courrier avec Netscape; en effet, il va
+déplacer votre courrier, et vous ne pourrez plus le lire qu'avec Netscape, à
+l'exclusion de pine
ou mutt
. D'autre part, Netscape
+envoie le courrier en un double format, un format texte simple lisible, et un
+format en HTML parfaitement illisible, ce qui encombre le réseau pour rien et
+gêne votre correspondant. Oubliez donc tout de suite les lignes New Mail
+message
et Mail document
...
+En revanche, New Web Browser
est très intéressant : c'est
+lui qui vous permet de lancer autant de fois Netscape que vous le voulez. Si
+vous lancez deux fois Netscape, par exemple en double-cliquant, vous
+rencontrez des problèmes de lock; le premier Netscape est le seul à pouvoir
+accéder à vos marque-pages, à l'historique des pages visitées, etc. En outre,
+cela lance deux fois le même programme, qui consomme donc deux fois plus de
+puissance sur la machine.
+Par contre, New Web Browser
vous permet de lancer plusieurs
+fenêtres Netscape, tout en lançant une seule fois le programme. Vous partagez
+également les marque-pages et autres. Petite astuce : quand vous avez
+plusieurs fenêtres Netscape à la fois, il faut sélectionner Close
+pour fermer une fenêtre, et non pas Exit
: Exit
ferme
+le programme, donc toutes les fenêtres...
+ +
+ +
+Open Location
affiche un petit cadre dans lequel vous pouvez
+taper l'adresse d'une page. Open File
vous permet d'afficher un
+fichier HTML présent sur votre compte. Save As
permet de
+récupérer sur votre compte le document que vous êtes en train de regarder.
+Print
permet d'imprimer la page.
Un stage informatique est organisé du vendredi 3 mars au dimanche +5 mars 2000. sur le site d'Ulm. Le stage se déroulera majoritairement en +salle S. Pour les images, il se peut que le groupe aille en salle +du 46, à cause du scanner.
+ +Horaire | +Thème | +Public | +
---|---|---|
+ +3 mars, 20h00 | +Utiliser les stations | +Tous ceux qui n'ont pas suivi de stage de +rentrée, ou ont besoin de réviser les bases de l'utilisation (souris, +fenêtres, menus, commandes élémentaires, programmes courants...). |
4 mars, 9h00 | +Faire sa page Web | +Introduction au langage HTML pour ceux qui ne +le connaissent pas. |
4 mars, 17h00 | +Faire sa page Web | +Suite du matin; perfectionnement (images, +couleurs, liens internes, tableaux...). |
5 mars, 9h00 | +Images | +Retouche et création d'images avec le logiciel
+gimp . |
5 mars, 14h00 | +LATEX | +Deux niveaux différents : grands +débutants, et recyclage. Préciser votre niveau et vos attentes. |
5 mars, 20h00 | +Unix | +Pour ceux qui connaissent les commandes de base +(créer, déplacer, détruire, renommer) et savent se servir d'un éditeur, et qui +veulent en savoir davantage (commandes de recherche, enchaîner des commandes, +scripts élémentaires, etc). | + +
+Pour s'inscrire, envoyer un courrier aux tuteurs
+(tuteurs@clipper
), ou mettre un mot dans le casier d'Émilia
+Robin. Merci de préciser à quelles sessions vous voulez participer, et
+d'indiquer votre niveau.
Une conférence sera également prononcée par David Madore le samedi +après-midi (salle et heure à fixer), sur le sujet suivant :
+ + +++ +Internet est un immense réseau d'ordinateurs, qui communiquent entre eux, et +qui communiquent avec des humains. Or pour communiquer, il faut une langue +commune : ces langages de l'Internet s'appellent les «protocoles», et ils +sont définis dans des «standards» qui en déterminent la grammaire et l'usage. +
+ ++À travers un exemple simple (téléchargement d'une page en HTML sur le World +Wide Web), nous tenterons d'expliquer, pour chacun des protocoles mis en jeu, +comment il s'est élaboré historiquement, quels organismes ont autorité +normative dessus, et en somme «qui a décidé qu'on parlerait ainsi et pas +autrement».
+
+C'est une conférence tout public, qui ne demande pas de connaissance +particulière en informatique (si ce n'est d'avoir déjà utilisé Netscape!). +
+ + + + diff --git a/src/docs/hublot/hublot04/applix.png b/src/docs/hublot/hublot04/applix.png new file mode 100644 index 0000000..5ca2ad1 Binary files /dev/null and b/src/docs/hublot/hublot04/applix.png differ diff --git a/src/docs/hublot/hublot04/droits.png b/src/docs/hublot/hublot04/droits.png new file mode 100644 index 0000000..ee80b91 Binary files /dev/null and b/src/docs/hublot/hublot04/droits.png differ diff --git a/src/docs/hublot/hublot04/hublot4.ps.gz b/src/docs/hublot/hublot04/hublot4.ps.gz new file mode 100644 index 0000000..dc0f74a Binary files /dev/null and b/src/docs/hublot/hublot04/hublot4.ps.gz differ diff --git a/src/docs/hublot/hublot04/netscape-lock.png b/src/docs/hublot/hublot04/netscape-lock.png new file mode 100644 index 0000000..4b1ec1c Binary files /dev/null and b/src/docs/hublot/hublot04/netscape-lock.png differ diff --git a/src/docs/hublot/hublot04/netscape-menu.png b/src/docs/hublot/hublot04/netscape-menu.png new file mode 100644 index 0000000..e174a11 Binary files /dev/null and b/src/docs/hublot/hublot04/netscape-menu.png differ diff --git a/src/docs/hublot/hublot04/reseau1.png b/src/docs/hublot/hublot04/reseau1.png new file mode 100644 index 0000000..f835063 Binary files /dev/null and b/src/docs/hublot/hublot04/reseau1.png differ diff --git a/src/docs/hublot/hublot04/reseau2.png b/src/docs/hublot/hublot04/reseau2.png new file mode 100644 index 0000000..69b4c52 Binary files /dev/null and b/src/docs/hublot/hublot04/reseau2.png differ diff --git a/src/docs/hublot/hublot05.tml b/src/docs/hublot/hublot05.tml new file mode 100644 index 0000000..e59f231 --- /dev/null +++ b/src/docs/hublot/hublot05.tml @@ -0,0 +1,946 @@ + + + + ++
+ +Pour toutes questions, idées d'articles, etc, n'hésitez pas à nous +écrire : tuteurs@clipper.ens.fr. Vous pouvez +aussi mettre un mot dans le casier d'Émilia Robin. Certaines pages de notre site sont indiquées dans les +articles; suivez les liens pour vous y reporter. Certains mots sont suivis +d'un astérisque*; ils renvoient au lexique en fin de numéro. Vous pouvez +retrouver les anciens numéros du Hublot sur notre site : Le Hublot Online. +Dans ce numéro :
+ + + ++Le mois dernier, on a étudié l'espacement à laisser autour des ponctuations. +Ce mois-ci, on va aborder la façon de faire les citations. Comme d'habitude, +ces informations proviennent du Lexique des règles typographiques en usage +à l'Imprimerie nationale, Imprimerie nationale, 1990.
+ ++Il existe des usages en matière de citations, mais aucune règle précise, +associant une façon de procéder à un type de citations. On peut en effet citer +du texte en le mettant entre guillemets, en le détachant du reste du texte, ou +en le mettant en italique.
+ ++Tout dépend de l'équilibre général de la page, de la présence ou non de +citations dans la citation elle-même (citation de second niveau), de la +présence d'italique dans la citation, etc. Comme toujours, le plus important +est d'adopter une présentation uniformisée dans le document.
+ +Une citation +courte apparaît le plus souvent entre guillemets. La référence est donnée +après la citation, entre parenthèses, en dehors des guillemets.
+ ++Ainsi, dans le dernier BOcal, il est écrit qu'«une dizaine de tickets +de cocktail» récompenseront les meilleurs déguisements (BOcal, +n° 327).
+ +Les passages longs +sont composés en romain d'un corps inférieur à celui du texte, sans +guillemets, et sont isolés du texte par des blancs :
+ +++ + ++Dans la plaine rase, sous la nuit sans étoiles, d'une +obscurité et d'une épaisseur d'encre, un homme suivait seul la grande route de +Marchiennes à Montsou, dix kilomètres de pavé coupant tout droit, à travers +les champs de betteraves. Devant lui, il ne voyait même pas le sol noir, et il +n'avait la sensation de l'immense horizon plat que par les souffles du vent de +mars, des rafales larges comme sur une mer, glacées d'avoir balayé des lieues +de marais et de terres nues. Aucune ombre d'arbre ne tachait le ciel, le pavé +se déroulait avec la rectitude d'une jetée, au milieu de l'embrun aveuglant +des ténèbres. (Émile Zola, Germinal.)
+
+Les vers sont cités de la même façon : pas de guillemets, caractères plus +petits, blancs avant et après la citation.
+ +Reproduits in extenso, +les textes épistolaires sont composés le plus souvent en italique; on +rencontre parfois aussi des lettres citées en romain d'un corps (taille) +inférieur. Ils sont séparés du texte par des blancs.
+ +Les citations en +latin ou en langue étrangère sont citées en italique. A fortiori, +l'italique s'emploie ad libitum pour toutes les locutions latines, +id est non francisées.
+ + +Le +Lexique ne dit rien de bien clair sur ce sujet... Le cas ne se pose +évidemment que pour les citations guillemetées; dans le cas de l'italique ou +d'un texte détaché, on met des guillemets normaux.
+ +Dans le cas des citations entre guillemets, il est interdit de mettre des +guillemets à l'envers, »comme ça«, pour figurer une citation dans la citation. +On tolère des guillemets anglais, ``comme ceci'', dans ce cas précis. Il +semble que l'usage est de mettre des guillemets normaux : «Il dit +«J'arrive» et ouvrit la porte». Si les deux niveaux de guillemets se referment +à la fin de la citation, on n'en referme qu'un seul : «En arrivant, il +déclara: «Je suis là».
+ + +Comment fait-on pour rediriger son courrier électronique vers une autre
+adresse? Cette opération s'appelle «forwarder» son courrier. Pour cela, il
+suffit de créer chez soi un fichier appelé .forward
qui contient
+la nouvelle adresse. Par exemple :
+corvette ~ $ cat .forward
+toto_g@mit.edu
+
+
+
+C'est tout! Avec ça, le courrier sera automatiquement renvoyé à l'adresse
+toto_g@mit.edu
.
+Ce n'est pas la première fois qu'on vous parle de fichiers dont le nom
+commence par un point. Ce sont des fichiers «cachés», qui n'apparaissent pas
+naturellement quand on tape ls
. Pour les voir, il faut taper
+ls -a
(all). Ce sont des fichiers de configuration,
+qui personnalisent un certain nombre de programmes. Ils se trouvent dans
+~
(votre répertoire d'accueil). Surtout ne les effacez
+pas!
+La commande finger
vous donne des informations sur les
+utilisateurs du réseau. Elle peut aussi s'utiliser avec un nom d'ordinateur,
+mais on n'en parlera pas ici. Suivi d'un nom de login,
+finger
vous donne des informations sur la personne
+correspondante :
+corvette ~ $ finger tuteurs
+Login name: tuteurs In real life: Comptes tuteurs
+Directory: /users/staffs/tuteurs
+Last login Thu Feb 24 15:46 on pts/12 from jonque
+New mail received Mon Mar 6 17:14:25 2000;
+unread since Sat Mar 4 11:31:38 2000
+No Plan.
+
+
++Vous avez donc le nom de login, le nom complet, le répertoire de cette +personne (ce qui vous donne sa promotion et sa branche), et des renseignements +techniques (dernier login sur la machine où vous vous trouvez, dernière fois +que le courrier a été lu).
+ +
+Attention avec la question du courrier : s'il est redirigé ailleurs, la
+personne peut avoir lu son courrier très récemment sans que cela apparaisse...
+Ainsi, un biologiste dont le courrier est redirigé sur horus
peut
+donner l'impression de n'avoir pas lu son courrier depuis six mois; c'est vrai
+sur clipper, la machine que vous interrogez, mais pas sur
+horus
.
+D'autre part, certains comptes sont un peu spéciaux, parce qu'une copie du
+courrier reçu est envoyé à un certain nombre de personnes. C'est le cas pour
+les tuteurs; aucun tuteur ne se logue tuteurs
pour lire le
+courrier, car il le reçoit directement. Le courrier est donc lu, mais ça
+n'apparaît pas sur le finger
.
+Vous voyez enfin l'indication No Plan
. Cela signifie que cet
+utilisateur n'a pas de fichier .plan
sur son compte; ce fichier
+sert à personnaliser les renseignements donnés par finger
+(coordonnées, etc). Attention, ne mettez pas d'accent dans ce fichier. On peut
+aussi créer un fichier .project
. Celui-ci ne contient qu'une
+seule ligne, par exemple pour une devise. Là encore, il ne faut pas mettre
+d'accents.
+finger
s'utilise aussi avec des noms ou des prénoms. Pour savoir
+le nom de famille de toutes les Nathalie qui ont un compte, tapez
+finger Nathalie
.
+Le cours Unix se divise en trois parties : «Concept», «Commande», +«Usage». Ce mois-ci, on va expliquer ce que signifie «multitâches». La partie +«Commande» explique comment on obtient des renseignements sur les processus; +la partie «Usage» indique comment gérer, en pratique, les processus que l'on +lance.
+ + ++Deux personnes qui se promènent en bavardant sont en train de faire plusieurs +choses à la fois : leur attention est tournée principalement vers la +conversation, mais aussi sur les expressions de l'interlocuteur, sur l'heure +qui tourne, etc. De façon presque automatique, elles évitent les obstacles +courants (marche, racine d'arbre...). Quant à la marche elle-même (lever le +pied, lancer la jambe, déporter le poids d'une jambe à l'autre...), c'est un +geste purement mécanique.
+ ++Un ordinateur est conçu globalement sur le même principe : plusieurs +programmes s'effectuent simultanément, à des niveaux différents : sur +votre ordinateur, vous pouvez lancer à la fois Netscape, un logiciel de +courrier, un éditeur de textes, une compilation... Tout cela est analogue au +niveau «conscient» de nos deux personnages.
+ ++Mais il se passe autre chose, sur le modèle automatique ou végétatif d'un être +humain : afficher des fenêtres, réagir quand on déplace la souris, +maintenir l'horloge à l'heure, vérifier si un nouveau courrier est arrivé, +répondre si quelqu'un veut se connecter...
+ +
+Chacune de ces opérations s'appelle un processus : un processus est une
+tâche donnée, individualisée, identifiée, qui appartient à un utilisateur bien
+précis et qui doit accéder à des données bien précises. Le pine
+que vous avez lancé n'interfère pas avec le rapport que, d'autre part, vous
+êtes en train d'écrire. Ou encore, s'il arrive que l'horloge ne se lance pas,
+cela n'abîme pas votre boîte aux lettres.
+Unix est un système multitâche et multi-utilisateurs (voir Hublot, +n° 1), ce qui signifie que plusieurs tâches différentes et +appartenant à des personnes différentes, peuvent cohabiter. C'est possible +parce que le noyau* veille : si une tâche tente de +manipuler les données d'une autre tâche (ce que Windows appelle «effectuer une +opération non conforme»), la contrevenante se fait promptement éliminer. Sous +Unix, cela ne plante pas la machine.
+ + +ps
, top
et
+prioritésps
La commande
+ps
affiche la liste des processus lancés à votre nom sur votre
+machine, sous la forme d'un tableau.
+corvette ~ $ ps
+ PID TT S TIME COMMAND
+29503 pts/6 S 0:01 /usr/local/util/bin/zsh
+29523 pts/6 S 0:14 xdvi hublot5.dvi
+29601 pts/6 S 0:04 vim5.new hublot5.tex
+29752 pts/7 S 0:01 /usr/local/util/bin/zsh
+
+
+
+Décrivons les principaux champs de ce tableau : le PID
est
+le numéro du processus (process identifier). La colonne
+TT
(teletype) indique à quel terminal est rattaché le
+procesus. La colonne S
indique l'état du processus : ici
+c'est S
(sleeping), car les processus attendent que
+quelque chose se passe. La dernière colonne indique la commande qui a lancé
+le processus. Ici, il y a un éditeur de textes (vim
), un DVI, et
+deux shells*.
top
top
+affiche un petit tableau remis à jour régulièrement, qui montre les processus
+qui consomme le plus de ressources; le plus gourmand figure en haut du
+tableau. Sont indiqués entre autres le numéro du processus (PID
),
+le login de son propriétaire (username
), les ressources
+consommées (CPU
), et enfin le nom de la commande qui a lancé le
+processus. Par exemple :
+
+corvette ~ $ top
+(...)
+ PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
+13102 robin 27 0 1376K 1304K cpu 0:00 1.15% 0.92% top.5.5.sun4u
+11894 robin 33 0 8120K 6160K sleep 0:35 0.63% 0.66% Xsun
+12491 tuteurs 33 0 1592K 1360K sleep 0:04 0.64% 0.50% vim-5.4
+11895 robin 33 0 2288K 1720K sleep 0:01 0.06% 0.12% fvwm2
+(...)
+
+
+
+Dans cet exemple, c'est la commande top
elle-même, de numéro
+13102, qui consomme le plus de ressources (0,92%). L'état (STATE
)
+indique qu'elle est en cours d'exécution.
+
+Viennent ensuite le serveur X (pour l'interface graphique), l'éditeur
+vim
avec lequel je tape le Hublot au nom de
+tuteurs
, et le gestionnaire de fenêtres fvwm2
. Leur
+état dit qu'ils «dorment», c'est-à-dire qu'ils sont en attente.
+
nice
Deux colonnes sont
+intéressantes dans ce tableau : PRI
(priorité) et
+NICE
. La priorité est l'importance donnée au processus dans la
+répartition du temps du processeur. Pour pinailler : le
+nice
est statique, fixé par le propriétaire. La priorité est
+dynamique et calculée par le noyau en fonction des processus lancés et de
+leurs nices respectifs.
+
+C'est un aspect essentiel du partage des ressources des ordinateurs lorsque
+l'on est dans un environnement multi-utilisateurs : un calcul lancé en
+tâche de fond sur un ordinateur ne doit pas monopoliser le processeur au point
+d'empêcher l'utilisation de la machine par quelqu'un d'autre. Quand on lance
+une tâche de longue haleine, comme un calcul, on dispose de la commande
+nice
, pour fixer la priorité du processus. Plus le nice
+est élevé, moins le processus sera prioritaire.
kill
La commande
+kill
sert à envoyer un signal à un processus. Un de ses usages
+consiste à ordonner au processus de prendre fin. Mais ce serait une très
+mauvaise idée d'utiliser systématiquement kill
pour quitter un
+programme! Cette commande sert quand plus rien d'autre n'est possible.
+Un programme lancé dans un terminal peut être en mode texte, comme
+pine
, auquel cas il s'affiche dans la fenêtre où il a été lancé.
+Il peut aussi être en mode graphique, comme un jeu, Netscape, un DVI, et se
+lancer dans une nouvelle fenêtre. Dans ce cas, il se passe quelque chose comme
+ceci quand vous essayez de taper des commandes :
+corvette ~ $ netscape www.bnf.fr
+ls
+toto
+
+
++Votre Netscape s'est lancé, et il immobilise la fenêtre dans laquelle vous +l'avez lancé; vous ne pouvez rien taper.
+ +
+Dans ce cas, tapez ^Z
. Cette commande suspend le processus qui
+est en cours d'exécution (ici, Netscape). Vous récupérez la main, c'est-à-dire
+que vous pouvez de nouveau taper des commandes. En l'occurence, tapez
+immédiatement bg
(background), pour mettre votre
+Netscape en arrière-plan (car pour le moment, il est toujours suspendu, et ne
+fonctionne pas). Ça donne, au total :
+corvette ~ $ netscape www.bnf.fr +^Z +zsh: suspended netscape www.bnf.fr +corvette ~ $ bg +[1] + continued netscape www.bnf.fr ++ +
+Le plus simple est encore d'utiliser l'esperluette (&
), qui
+met le programme lancé en arrière-plan :
+corvette ~ $ netscape www.bnf.fr &
+[1] 11321
+
+
+
+Le premier numéro indiqué est le job ID (numéro de tâche), le second
+est le PID, c'est-à-dire le numéro du processus. Vous pouvez ainsi lancer
+plusieurs processus qui tourneront en tâche de fond. La commande
+jobs
vous permet de savoir ce qui tourne en tâche de fond dans un
+terminal. Pour mettre au premier plan un processus donné, vous avez la
+commande fg
(foreground), en indiquant, le cas échéant,
+le numéro de tâche, précédé d'un pour-cent :
+corvette ~ $ jobs +[1] - running xdvi hublot5.dvi +[2] + running netscape www.bnf.fr +corvette ~ $ fg %2 +[2] - running netscape www.bnf.fr ++ + + +
+Dans cette section, vous trouverez la suite du cours de Thomas sur les +réseaux; ce mois-ci, il explique comme est organisé Internet. Dans la section +Netscape, on va parler de la navigation sur le Web.
+ + ++Dans les numéros précédents, nous avons vu comment deux ordinateurs peuvent +s'échanger des données, puis les principes de l'organisation des couches +basses d'un réseau plus étendu : couche physique, transport de paquets ou +par circuit («couches basses» : voir niveau*). Dans +ce numéro, nous abordons le routage : suivre de bout en bout un paquet de +données de la machine origine à la machine destination.
+ ++On a vu, dans la section précédente, comment relier ensemble deux stations +pour qu'elles puissent s'échanger des données, pas forcément de façon fiable, +et sans garantie de débit. Ces méthodes sont locales, et il convenait de +passer à un réseau global. Ceci a été effectué grâce au réseau Internet, +dérivé de l'Arpanet au cours des années 1970 (Arpanet était le réseau des +militaires américains).
+ ++Le principe est le suivant : quand une station veut envoyer un message à +une consoeur, elle commence par examiner ses branchements, pour voir si la +destinatrice ne serait pas, par hasard, accessible directement. Dans ce cas, +elle lui envoie le message par le moyen physique présent. Dans le cas +contraire, elle envoie le message à une station dont elle sait qu'elle est +plus qualifiée qu'elle pour résoudre ce problème. La station qualifiée est +nommée routeur, ou aussi passerelle.
+ +
+Pour savoir qui est contactable et comment, chaque station est munie d'une
+adresse de 4 octets (chaque octet contenant un nombre entre 0 et 255).
+Ainsi, la station galion
, en salle S, est dotée de l'adresse
+129.199.129.10. Ces adresses sont mondiales, et toutes les adresses
+commençant par 129.199 sont réservées à l'ENS.
Prenons l'exemple
+de galion
, tentant d'envoyer un message (sous la forme d'un
+paquet IP, comme Internet Protocol) à aviso
, en salle
+Infirmatique.
+galion
, d'adresse 129.199.129.10, sait qu'elle est reliée
+directement à toutes les stations dont l'adresse commence par 129.199.129. Or,
+aviso
a l'adresse 129.199.128.1; galion
, constatant
+cela, décide de transmettre le paquet à sa passerelle, à savoir
+clipper
(129.199.129.1, contactable par un lien ethernet direct
+depuis galion
). Puis galion
se lave les mains de ce
+qui se passe ensuite, ce n'est plus son affaire.
+clipper
ne peut pas non plus contacter aviso
+directement, mais il peut parler sur un deuxième lien depuis son deuxième
+visage, clipper-gw
(129.199.1.22). Sur ce lien, il peut contacter
+finn
(129.199.1.128), qui est responsable des adresses en
+129.199.128. clipper
transmet donc le paquet à finn
,
+et se désintéresse lui aussi de la question.
+finn
possède aussi deux visages, le second étant
+finn128
(129.199.128.254), relié directement aux stations de
+l'Infirmatique. finn
peut donc communiquer directement avec
+aviso
, et lui envoie le paquet.
Donc, pour que tout
+se passe bien, il suffit que chaque station sache reconnaître les adresses
+contactables directement, et une passerelle pour les autres cas. Les routeurs,
+eux, doivent avoir une notion locale de la hiérarchie (clipper
+doit connaître finn
, mais ce que finn
doit faire
+pour contacter aviso
ne le regarde pas).
+Il est même possible de reconstruire ces informations à la volée :
+clipper
peut tout envoyer sur la machine par défaut
+(renater
), qui lui signalera à chaque fois qu'il existe une route
+plus directe ne passant pas par lui; clipper
s'en rappellera
+pendant quelques minutes. Ce mécanisme, dit de routage dynamique, est un peu
+délicat à mettre en place, aussi on s'en sert avec parcimonie (il est aisé
+d'obtenir, à la suite d'un malentendu, une partie de ping-pong, où deux
+stations considèrent, pour un paquet donné, que l'autre station est la
+passerelle à utiliser).
+Et voilà, ceci est Internet : des stations qui s'échangent des paquets +(d'une taille maximale de 65 536 octets, mais souvent plus petits, +de l'ordre de 1 500 octets). Normalement, un paquet n'a pas à +effectuer plus de 30 sauts pour faire le trajet d'une station à une +autre. Les paquets peuvent être fractionnés et recombinés au gré des routeurs, +afin de s'adapter aux spécificités locales de la liaison.
+ ++Le chemin entre deux stations n'est pas forcément unique; ceci permet une +tolérance aux pannes ou une adaptation aux embouteillages. Notamment, les +communications à grande échelle sont alors résistantes aux attaques nucléaires +(c'est ce qui plaisait aux militaires américains). Une conséquence de ce fait +est que deux paquets successifs ne suivent pas forcément le même chemin; ils +peuvent notamment arriver dans le désordre, et certains peuvent être dupliqués +(quand une passerelle cherche à savoir, via un protocole approprié, +si un paquet est arrivé, et, ne voyant rien venir, en émet un autre, alors que +le premier était simplement parti par un chemin détourné).
+ + +Thomas Pornin
+ +
+Figure 1 : Une partie du routage à l'ENS
Le mois dernier, on a vu comment lancer et quitter proprement Netscape. Ce +mois-ci, on va envisager la navigation sur le Web. Comme d'habitude, j'utilise +la version 3 de Netscape.
+ + + Vous savez que
+le principe du Web est de mettre en relation des informations dispersées à
+travers le monde : par exemple, on crée un lien entre une page Web située
+en France vers une page située au Brésil, et suivre le lien vous emmène
+automatiquement sur la page brésilienne. C'est ce que l'on appelle
+l'hypertexte, et c'est ce que veut dire le http
placé au début
+des adresses Web : HyperText Transfer Protocol.
Sur le Web, une adresse
+s'appelle une URL (Uniform Resource Locator). Prenons pour exemple
+l'adresse du serveur
+des élèves de l'ENS : http://www.eleves.ens.fr:8080/
. Le
+http
au début indique le protocole à utiliser, et signale qu'il
+s'agit d'une page Web (cependant, toutes les pages Web ne sont pas servies par
+HTTP). Le .fr
est un nom de domaine, qui indique ici que la page
+se trouve en droit en France (mais il se pourrait que le serveur, en tant que
+machine physique, matérielle, soit aux États-Unis).
+www.eleves.ens
désigne en réalité une machine qui héberge le site
+des élèves de l'institution ENS. Le 8080
désigne un numéro de port*.
+Enfin, le /
(slash) qui termine l'adresse indique qu'on
+se rend au point de départ de l'arborescence du site, en pratique la page
+d'accueil.
+Tout ceci indique la machine à contacter pour rejoindre la page Web. Ensuite,
+il peut y avoir d'autres informations quelle page précisément on demande à
+voir. Par exemple, http://www.cof.ens.fr/cineclub/
+correspond la page d'accueil du Ciné-Club de
+l'ENS, elle-même un sous-ensemble logique de COF/
.
+Quand vous sélectionnez un lien, votre ordinateur envoie une requête sur le +serveur désigné par l'URL. Ce serveur renvoie la page demandée par votre +navigateur («client» du serveur).
+ +
+L'ensemble de ces données circulent sur des liens physiques, les câbles, qui
+ont un débit maximal. La réponse d'un serveur physiquement très éloigné mettra
+un peu plus de temps à arriver; une grosse quantité de données mettra plus de
+temps à arriver qu'une petite quantité; enfin, à certaines heures, le réseau
+est encombré par l'ensemble des données transférées par tous les utilisateurs
+connectés à ce moment-là. C'est ce qui explique que parfois, une page soit
+longue à charger. Vous pouvez toujours interrompre le transfert en cliquant
+sur le bouton «Stop
».
Il y a un certain
+nombre de noms de domaine. Une partie indique un pays, dont dépend en droit le
+serveur : .fr
pour les serveurs français, .es
+pour l'Espagne, .ru
pour la Russie, .jp
pour le
+Japon, etc.
+Il en existe d'autres, comme .edu
pour les universités
+américaines, .org
pour les institutions à but non lucratif,
+.gov
pour le gouvernement américain. .int
est
+utilisé en particulier par les organisations établies par traités
+internationaux, par exemple l'Union européenne.
+De nouveaux noms de domaines sont apparus avec l'engouement pour le Web. Par
+exemple, .com
désignait à l'origine des sites d'entreprises, et
+.net
des fournisseurs d'accès au réseau. Mais AOL, fournisseur
+d'accès, a comme adresse aol.com
(pour des raisons
+historiques, certes). D'autre part, des entreprises peuvent avoir un site avec
+un suffixe .net
, à cause de leur fournisseur d'accès.
+Un autre exemple : le suffixe .tv
est théoriquement réservé
+aux îles Tuvalu; mais le Web est quelque chose de rentable, et elles ont vendu
+quelques noms de domaines à des chaînes de télévision qui voulaient une
+adresse en .tv
...
Que faire quand vous
+voulez aller à une adresse précise, par exemple le site de l'UNESCO (
+http://www.unesco.org/
)? Cliquez dans le cadre rose
+«Location:
», effacez l'adresse de la page sur laquelle vous vous
+trouvez, et écrivez à la place l'adresse souhaitée.
+Vous pouvez aussi sélectionner Open Location
dans le menu
+File
(ou taper Alt-L
), et taper votre adresse dans
+le petit cadre qui s'affiche.
Netscape offre deux
+possibilités pour revenir sur des pages déjà visitées. Il s'agit d'abord des
+trois boutons Back
, Forward
et Home
.
+
+ +
+Back
vous ramène en arrière, vers la dernière page que vous avez
+visitée; Forward
vous ramène vers les pages visitées en dernier.
+Enfin, Home
vous replace sur votre page d'acceuil par défaut, qui
+est la page du serveur des élèves de l'ENS.
+Vous disposez aussi du menu Go
. Celui-ci reprend les fonctions
+Back
, Forward
et Home
, en indiquant les
+raccourcis claviers correspondants.
+
+ ++Il propose ensuite la liste des pages visitées; les pages vues récemment sont +en haut de la liste, tandis que la toute première page visitée se trouve tout +en bas. Un petit carré indique sur laquelle de ces pages on se trouve. Il +suffit de cliquer sur le nom d'une page pour y revenir immédiatemment.
+ + + + +Le Centre d'Études +Anciennes dispose de trois CD-ROM.
+ + ++Le TLG (Thesaurus Linguae Graecae) comporte les +textes de la littérature grecque depuis Homère jusqu'en 600 ap. J.-C., +plus des textes littéraires et techniques, ainsi que des recueils de scholies +de l'an 600 à 1453, soit 3 366 auteurs et 10 823 oeuvres.
+ + ++Le PHI n° 5.3, du Packard Humanities Institute, embrasse +la littérature latine depuis l'époque archaïque jusqu'aux environs de 200 +ap. J.-C. Il comporte 362 références d'auteurs, dont les grands textes +classiques, mais présente des lacunes pour la période postclassique. Quiconque +travaille sur la poésie latine aura intérêt à consulter plutôt le CD-ROM +Poesis (de l'éditeur italien Zanichelli) à la section latine +de l'Institut de Recherche et d'Histoire des Textes. Outre les textes +littéraires latins, Le PHI comprend la Bible juive (en hébreu), la +Septante et le Nouveau Testament grec (en caractères grecs), +la Vulgate (en latin), la Bible anglaise dans deux traductions, celle +du roi Jacques et la version standard révisée, et le Nouveau +Testament copte (en caractères coptes).
+ + ++Le PHI n° 7 renferme divers corpus +documentaires en caractères grecs et latins. Il s'agit des inscriptions de +l'université Cornell, ainsi que des papyri, ostraca et +tablettes du fonds documentaire Duke (186 références). Les inscriptions +couvrent la période grecque, la période romaine, l'Antiquité tardive jusqu'au +VIIIe siècle et la période byzantine jusqu'en 1453. On y trouve de plus, en +caractères coptes, la Bible sahidique et le fonds Nag Hammadi (64 +références d'apocryphes bibliques).
+ + + Ces disques sont
+consultables avec deux logiciels d'interrogation :
+Pandora (une pile HyperCard conçue aux États-Unis) et
+SNS Greek & Latin (une application programmée à la Scuola
+Normale Superiore de Pise), qui tournent sur le PowerMac 8500 de la
+cellule informatique du CEA. Les néophytes préfèrent Pandora pour la
+simplicité de son interface. Mais SNS est incontournable quand il faut définir
+des requêtes très précises, car la syntaxe de son langage d'interrogation est
+héritée du grep
en usage dans le monde Unix, et quand il faut
+extraire des oeuvres complètes (au format RTF) pour les récupérer dans un
+traitement de texte, par exemple si l'on travaille à une édition critique.
+
+Chaque année, en novembre, des stages d'initiation aux CD-ROM sont proposés +aux élèves antiquisants par D. Béguin, l'un des deux caïmans +d'informatique littéraire. On y montre que toute problématique peut se +reformuler sous forme d'une recherche de mots ou de parties de mot dans un +corpus d'oeuvres librement défini par l'utilisateur. Les réponses sont +fournies sous forme de listes d'occurrences où les mots recherchés sont +replacés dans un contexte dont la longueur est, elle aussi, définie par +l'utilisateur. Les CD-ROM font office d'index et de concordances, avec une +rapidité et une exhaustivité que ne sauraient égaler leurs prédécesseurs sur +support papier.
+ ++La page officielle du TLG à +l'Université de Californie
+ +Daniel Béguin
+ + +Est bas +niveau ce qui est proche du matériel. Est haut niveau ce qui est proche de +l'utilisateur.
Le noyau +(kernel) est le coeur du système. C'est lui qui gère le matériel pour +les besoins des applications. Il est la partie principale du système +d'exploitation.
Première +définition, pour expliquer à quoi ça sert : un port est une sous-adresse, +comme une boîte aux lettres dans un immeuble.
+ ++Seconde définition, technique : un port est un numéro qui définit, à +l'intérieur d'une machine donnée, un point sur lequel un programme peut +attendre des connexions de l'extérieur ou depuis lequel il peut en établir. +La donnée du numéro IP de la machine et du port TCP constitue l'analogue d'un +numéro de téléphone vers lequel ou depuis lequel on peut établir des +connexions.
Le shell est
+le programme qui interprète les commandes tapées au clavier. Selon le cas, il
+peut exécuter le programme demandé (pine
, ls
,
+date
...), demander confirmation (avant d'effacer un fichier par
+exemple), corriger la syntaxe (netscape
et pas
+nestcape
), afficher un message d'erreur comme «command not
+found
», etc. On peut aussi écrire des programmes (appelés scripts),
+dans le langage du shell, pour créer de nouvelles commandes, automatiser des
+tâches, ou autres.
+Un shell est lancé dans chacun des terminaux que vous ouvrez. Pour quitter le
+shell, il suffit de taper ^D
, ce qui aboutit en pratique à fermer
+la fenêtre, car plus aucun programme ne tourne dedans.
+Parmi les choses qui m'énervent, et il y en a beaucoup bien que ça ne se voit +pas sur ma figure, car je suis d'un calme proverbial, c'est la confusion entre +le pingouin et le manchot. Le manchot, c'est cette espèce d'oiseau aux ailes +atrophiées et aux pattes encore plus petites, et qui vit là où il fait +vraiment froid, c'est-à-dire en Antarctique (le pôle Sud, pour les ignares). +Le pingouin ressemble un peu au manchot, mais il est plus petit, possède des +ailes bien développées qui lui permettent de voler aussi bien qu'une mouette, +il vit sur les côtes boréales, à des latitudes élevées (en Islande, par +exemple), et, pour tout dire, il n'a avec le manchot qu'un lointain cousinage, +autant qu'avec les canards, pour situer. Autrement dit, pingouin et manchot +n'ont rien de commun, et sont séparés de pas loin de 20 000 kilomètres. +
+ ++Mais quand on montre un manchot à un quidam quelconque, il l'identifie +quasiment à coup sûr comme étant un pingouin, et il en est très content. +C'est terrible comme l'inculture est satisfaisante. La confusion est +certainement d'origine anglo-saxonne, d'abord parce que les Anglais ont +toujours tout fait pour nous pomper l'air, à nous autres Français, et ensuite +parce que chez eux, manchot et pingouin se traduisent tous deux par +penguin.
+ ++J'en vois déjà qui se demandent ce que ces précisions ornithologiques et +linguistiques viennent faire là, il y en a même qui se sentent lésés, après +tout si on lit le Hublot c'est pour s'entendre dire qu'Unix c'est +Bien et que le piratage c'est Mal, pas pour disserter sur les qualités +aérodynamiques de volatiles même pas comestibles. Certes, je vous comprends, +mais rassurez-vous, il y a un rapport avec l'informatique en général et Unix +en particulier, j'y arrive de suite. Ce préambule était nécessaire pour bien +vous faire ressentir l'effort surhumain que je vais produire en parlant de +pingouins dans tout le reste de cet article, alors qu'il s'agit de manchots. +Et puis, vous aurez appris quelque chose, c'est toujours ça de gagné.
+ ++Donc, la translation manchot/pingouin ayant été établie, j'aborde le vif du +sujet : il y a des pingouins partout. Vous ne l'aviez peut-être pas +remarqué, ce serait même tout à votre honneur, ça voudrait dire que dans les +kiosques à journaux, vous consultez des opuscules normaux tels que +Paris-Match ou Le Monde. Mais pour les dépravés qui se +repaissent de ce qu'on nomme vulgairement la «presse informatique», c'est +indubitable. Presque chaque mois apparaît un nouveau périodique dont le nom +est une variation quelconque autour du terme «Linux», et décoré avec un goût +très sûr de diverses effigies d'un pingouin rigolard, qui me filerait des +cauchemars si j'avais encore cinq ans (ah, vieillesse ennemie, etc).
+ ++L'esprit inquisiteur, et je ne doute pas que vous soyez tous avides de +connaissances, aura certainement compulsé quelques unes de ces parutions, en +tout bien tout honneur et dans un but de recherche uniquement, j'en suis +persuadé. À l'intérieur, on trouve des concepts étranges, parlant de logiciel +qu'on donne mais qui rapporte des sous, de businessmen qui filent des ronds +alors qu'il n'y sont en rien obligés, d'un gourou chevelu qui joue du pipeau, +d'un esprit démoniaque américain qui serait autant mauvais programmeur qu'il +est bon vendeur, et autres articles constellés d'acronymes au goût étrange +venu d'ailleurs : Linux, BSD, Hurd, FUD, KDE, Tux, X11, etc...
+ ++Qu'est-ce donc que tout cela? Et bien, synthétiquement, c'est la nouvelle +mode : le logiciel libre. Je vais ici tenter de détailler un peu ce qu'il +en est, car si l'honnête homme peut parfaitement se passer de ce genre de +détails, ça peut toujours servir pour briller en société, ou réhausser un peu +le niveau d'une fin de banquet.
+ ++Le logiciel, en bon anglois software, c'est ce qui transforme un +ordinateur complètement crétin en station de travail parfaitement crétine. +L'ordinateur, à la base, c'est un amas savamment agencé de morceaux de +silicium, aluminium, cuivre, plastique, et autres composants. Ça sait exécuter +des ordres; des ordres simples, vraiment très simples, exprimés dans un +langage barbare qui n'a rien à voir avec nos complexes moyens d'expression +humains. Ces ordres, ont les appelle le logiciel.
+ ++Le logiciel, c'est immatériel. Ça coûte très cher à produire, mais, in +fine, ce n'est jamais qu'une suite de 0 et de 1, comme tout ce qui rentre +dans un ordinateur, et on peut le reproduire autant de fois qu'on veut. Le +logiciel se vend bien, et il y en a partout où il y a l'ombre d'un semblant +d'ordinateur, donc dans les voitures, les fours à micro-ondes, les cartes +bleues, les lecteurs de CD, et bien d'autres objets, dont on n'aurait pas +imaginé tant de malice.
+ ++La forme de logiciel compréhensible par les ordinateurs est, disons-le tout +net, immondissime. Alors les développeurs utilisent des outils informatiques +qui traduisent automatiquement en un logiciel utilisable sur un ordinateur, +des descriptions de ce logiciel en un autre langage, plus facilement +appréhensible (par un informaticien, hein, ce n'est quand même pas du +français). La forme compréhensible, c'est ce qu'on appelle le code source, ou +tout simplement le source (oui, au masculin -- même si certains déviants +l'utilisent au féminin). La traduction, on appelle ça la compilation, et le +logiciel tel qu'il est avalé par la machine, c'est le binaire.
+ ++Au passage, évoquons le système d'exploitation : c'est ce logiciel +particulier qui sait parler au matériel; les autres logiciels (on dit +«applications», voire «progiciels» quand on veut faire pro), quand ils veulent +lire un fichier ou afficher un texte sur l'écran, se contentent de faire une +requête au système d'exploitation. L'équivalent sur une voiture, c'est le +tableau de bord : on tourne le volant quand on veut, en fait, tourner les +roues. Et si on change les pneus, qu'importe, c'est toujours le même volant et +ça se manipule pareil. Le conducteur n'a pas à connaître tous les types de +pneus, il peut se contenter d'identifier le truc rond, au milieu du tableau de +bord. Microsoft Windows est un système d'exploitation, Microsoft Word est une +application.
+ ++Il y a 20 ans, quand une boîte quelconque fournissait un logiciel à une autre +boîte ou un particulier, elle vendait le binaire, et le binaire seulement, +pour plein de brouzoufs. Elle amortissait le coût de développement sur les +différentes ventes, et si le logiciel se vendait bien, jackpot, puisque la +reproduction ne coûte rien. D'ailleurs, ce coût nul (en fait presque, un +CD-ROM ça coûte 7 FF) de la copie a entraîné beaucoup de copies faites +par des tiers (tout bénef, pour eux, puisqu'il ont des coûts de développement +nuls), d'où une législation adaptée à base de licences d'utilisation.
+ ++Depuis, un illuminé ricain, issu d'une université spécialisée dans ce genre de +cas, a eu une idée qui peut sembler idiote, mais qui doit contenir de vrais +morceaux d'intelligence dedans puisqu'elle se vend bien : le logiciel, on +va le fournir avec les sources. Oui, on file nos petits secrets de fabrication +avec. Et puis, tant qu'à faire, on autorise celui qui a récupéré le logiciel +d'en faire autant de copies qu'il veut. Il peut les donner, ces copies, ou les +vendre au prix qu'il veut à qui il veut. Le susdit amerloque a fait des +émules, fondé une religion (lui, il dit «fondation» mais c'est clairement une +secte), promulgué un dogme, et bien évidemment il y a eu des schismes et des +guerres. J'y reviendrai plus tard.
+ ++Qu'est-ce que c'est que cette utopie, vous demandez-vous. On dirait un délire +communautaire issu tout droit des années 1970. Un poison crypto-communiste, +une pourriture bolchévique qui tente d'empêcher de braves gens de devenir +honnêtement richissimes. En effet, qu'est-ce qui empêche une société d'acheter +un exemplaire du logiciel libre d'une autre société, et de le revendre tel +quel mais moins cher? Plus de coût de développement, juste de la distribution, +et le marché est acquis. On dirait un encouragement au piratage, une +théorisation du masochisme. Ça ne peut pas tourner, une fantasmagorie +pareille.
+ ++Et pourtant, elle tourne. Comment? Pourquoi? Que va faire le pingouin? Vous +le saurez au prochain épisode...
+ +Thomas Pornin
+ + + + diff --git a/src/docs/hublot/hublot05/hublot5.ps.gz b/src/docs/hublot/hublot05/hublot5.ps.gz new file mode 100644 index 0000000..d7c7cea Binary files /dev/null and b/src/docs/hublot/hublot05/hublot5.ps.gz differ diff --git a/src/docs/hublot/hublot05/navigation1.png b/src/docs/hublot/hublot05/navigation1.png new file mode 100644 index 0000000..de66289 Binary files /dev/null and b/src/docs/hublot/hublot05/navigation1.png differ diff --git a/src/docs/hublot/hublot05/navigation2.png b/src/docs/hublot/hublot05/navigation2.png new file mode 100644 index 0000000..dc86a78 Binary files /dev/null and b/src/docs/hublot/hublot05/navigation2.png differ diff --git a/src/docs/hublot/hublot05/reseau-ens.png b/src/docs/hublot/hublot05/reseau-ens.png new file mode 100644 index 0000000..bfe05b9 Binary files /dev/null and b/src/docs/hublot/hublot05/reseau-ens.png differ diff --git a/src/docs/hublot/hublot06.tml b/src/docs/hublot/hublot06.tml new file mode 100644 index 0000000..f169d28 --- /dev/null +++ b/src/docs/hublot/hublot06.tml @@ -0,0 +1,885 @@ + + + + ++
+ ++La place disponible sur les disques durs est une question récurrente quand +on travaille en réseau. Après les problèmes du début du mois, le +Hublot revient sur ces questions, avec d'une part une mise en garde +du SPI, d'autre part un cours Unix consacré à ces questions.
+ ++Vous trouverez en fin de numéro le calendrier des stages du troisième +trimestre. Pour la fin de l'année, on ne fera pas un gros stage d'un week-end, +mais des petites séances hebdomadaires, le vendredi soir. Toutes suggestions +bienvenues! +
+ ++Pour toutes questions, idées d'articles, etc, n'hésitez pas à nous +écrire : tuteurs@clipper. +Vous pouvez aussi mettre un mot dans le casier d'Émilia Robin. Certaines +pages de notre site sont indiquées dans +les articles; suivez les liens pour vous y reporter. Certains mots sont +suivis d'un astérisque*; ils renvoient au lexique en fin de numéro. Vous +pouvez aussi consulter les anciens numéros du Hublot.
+ + + + ++L'espace disque pour l'ensemble des élèves est évidemment limité: sur sa +machine personnelle, on trouve facilement de nos jours 10 Go. Mais quand +vous êtes 1 000, cela ferait 10 To! Certes cela se vend, mais les +prix seraient hors de la petite enveloppe budgétaire du SPI, il faudrait +compter 1 million de francs par To.
+ +++ + ++ En informatique, l'unité de base est l'octet, sur lequel est codé un +caractère. Environ 1 000 octets font 1 kilo-octet (Ko); le méga-octet +représente un peu plus d'un million de caractères, soit un peu moins que la +Bible, mais aussi une petite minute de musique... Le giga-octet (Go) +représente plus d'un milliard de caractères (1 000 fois la Bible). Le +téra-octet pèse 1 000 gigas. (NDLR) +
+Donc il faut économiser. La méthode que j'emploie actuellement est de laisser +4 Go par promotion, puis laisser faire.
+ +++ +Cela représente quand même environ 20 mégas par personne, +sachant que le texte d'une maîtrise dépasse très rarement les 500 Ko, et +que le Hublot fait en moyenne 40 Ko, soit 1/500e de la place +moyenne disponible par élève... (NDLR)
+
+D'abord en essayant de sensibiliser via le message mensuel de démon
+mange-disque; ensuite en intervenant en cas de situation critique. Ce fut le
+cas la semaine du 10 avril dans la partition /users/97/
.
+
+Unix permet une autre méthode, celle des quotas. Un utilisateur se +voit limiter à une taille définie par les administrateurs-système: c'est ce +que pratiquent les vendeurs Internet: volume des pages Web limité à 5 ou +10 Mo, boîte aux lettres limitée à 1 ou 5 Mo. Oui, c'est +vraiment très bas, dès que l'on part 2 semaines en vacances en étant abonné à +quelques mailing-lists... +
+ +
+Hélas, il se trouve que faire du ménage est en général très simple: on tombe
+rapidement sur un répertoire plein de fichiers MP3 (en général fichiers
+piratés) ou images licencieuses. La méthode est alors soit de prévenir le
+quidam, soit de déplacer en urgence des fichiers (cas du 10 avril); il y avait
+urgence car plusieurs d'entre vous ont perdu leurs archives de courrier (merci
+pine
, qui gère très mal ce symptôme). NB: on déplace, on ne
+détruit pas.
+
Néanmoins il m'est difficilement admissible de voir les disques +remplis de fichiers MP3 ou X! Stop! Les enquêtes judiciaires de la +gendarmerie, de la DST, cela existe: il serait temps +que les normaliens (élite de la nation?) soient responsables, et non +responsabilisés trop tard en justice après une maladresse.
+ +-- Jacques Beigbeder
+ +++ + + + ++ Depuis 1984, l'École a été impliquée au moins à 6 reprises dans des +affaires de piratage, soit comme victime, soit comme responsable (et là, il +s'agissait d'élèves); les cinq derniers incidents se sont produits depuis +1993. La DST s'est intéressée à l'École 5 fois... (NDLR) +
+
+Le mois dernier, on a abordé la typographie des citations. Ce mois-ci, on va +voir l'emploi des diverse fontes: italique, gras, etc. Comme d'habitude, ces +informations proviennent du Lexique des règles typographiques en usage à +l'Imprimerie nationale, Imprimerie nationale, 1990.
+ ++Tout d'abord, une précision de vocabulaire. Une police de caractères +est la liste de tous les caractères d'imprimerie qui constituent un +assortiment. Une fonte est un «assortiment complet de caractères +d'une même type» (même corps ---«hauteur»---, même graisse, même style). Une +police de caractères regroupe donc diverses fontes (italique, gras, +12 points, etc). La police de caractères utilisée dans le Hublot +est la police standard de LATEX, New Computer Roman, +fonte romaine 10 points.
+ +L'italique sert à mettre +en valeur une portion du texte, afin d'attirer l'attention du lecteur. On +l'emploie dans les cas suivants:
+ +On utilise les +petites majuscules dans divers cas (oui, en HTML, on ne sait pas les +afficher):
+ + +Le gras est un moyen pour insister +sur une phrase, ou un concept. C'est un recours graphique, pour mettre en +valeur la phrase qui résume le paragraphe, l'idée-clé, etc, un peu comme un +surligneur fluorescent. Tout ça pour dire que ce n'est pas une fonte à +employer systématiquement dans une maîtrise... On l'utilise pour les titres, +détachés du reste du texte. En revanche, dans le développement, il devrait +rester exceptionnel.
+ +Dans un document +dactylographié avec un logiciel disposant de l'italique et du gras, l'usage du +soulignement est interdit. On ne souligne que dans un document écrit à la +main, ou tapé à la machine. Dans un document tapé à l'ordinateur, on se sert +de l'italique, ou du gras. Le soulignement ne sert que dans un contexte +grammatical, linguistique, épigraphique, etc; par exemple: «Les deux formes +amaran et amasen sont +équivalentes».
+ + +
+La commande pot
affiche le menu du pot. Par exemple:
+
+steamer ~ $ pot
+ Menu du Lundi 17 avril 2000 (Ulm)
+
+Midi :
+ Artichaut vinaigrette
+ Bavette au poivre
+ Epinards
+ Salade - Edam
+ Glace
+
+Soir :
+ Concombres a la creme
+ Tomates farcies
+ Salade - Rondele
+ Tarte aux poires
+
+
+
+Vous pouvez taper «pot demain
», «pot hier
»,
+«pot
jour
», en remplaçant
+«jour» par un jour de la semaine (par exemple, «lundi»). Si vous êtes
+à Jourdan, la commande affiche le menu du pot de Jourdan. Vous pouvez aussi
+taper
+pot Jourdan
+
+
+
+Comment se déloguer quand la souris ne fonctionne pas? Vous
+avez un raccourci clavier pour vous déloguer: appuyez en même temps sur les
+touches Control
, Meta
et Backspace
(la
+touche Meta
est le losange noir de part et d'autre de la barre
+d'espace). Sur les PC sous Linux, c'est la touche Alt
et non la
+touche Meta
.
+Le résultat est le même qu'en cliquant sur le bouton «Quitter» ou qu'en +sélectionnant «Sortie» dans le menu du fond.
+ + ++Le cours Unix se divise en trois parties: «Concept», «Commande», «Usage». +La partie «Concept» explique ce que signifie «place disque». Elle aborde +ensuite la notion de «partition», pour ceux qui connaissent déjà un peu Unix. +Ce passage est un peu ardu pour les débutants. Enfin, on donne quelques +renseignements techniques sur l'ensemble de la place disque à l'École. Dans +«Commande» et «Usage», on explique comment effacer des fichiers, et comment +les compresser pour gagner de la place.
+ +N'oubliez pas que le man* offre une documentation complète sur les +commandes Unix, en particulier leurs options; car dans ce résumé, on ne peut +pas tout dire sur les commandes indiquées...
+ ++Vos fichiers sont tous écrits sur un disque dur, dont la taille est limitée. +L'espace disponible est donc partagé entre tous les élèves. C'est la même +chose pour le courrier électronique, entièrement stocké sur un disque commun à +tous les utilisateurs (1 462 en ce moment). On ne se comporte donc pas +sur son compte comme on le ferait sur sa machine personnelle: le jour où il +n'y a plus de place, on ne peut plus rien écrire du tout, pas même +les scores d'un jeu, ou l'historique des messages lus dans les news. Pour +éviter d'en arriver là, il y a quelques règles de savoir-vivre à respecter: +
+ +du
(disk
+usage) affiche la taille prise par le répertoire et tous ses
+sous-répertoires. Pour être certain que le résultat est affiché en
+kilo-octets, taper du -k
;.aux
,
+.dvi
, .log
, .toc
...); voir la commande
+plus bas;On accède à tous les +fichiers des ordinateurs de l'École de manière semble-t-il identique, quelle +que soit la machine sur laquelle on est, ou le répertoire où ils se trouvent. +
+ ++Mais physiquement, ils ne sont pas tous enregistrés dans la même structure de +données. D'une part, ils sont répartis sur différents disques durs, branchés +dans différents ordinateurs, et accessibles par le réseau. D'autre part, les +disques durs eux-mêmes sont découpés en morceaux, appelés partitions. +
+ ++À quoi ça sert? Il est souvent pratique de pouvoir utiliser plusieurs disques +durs sur un même ordinateur: par exemple un disque pour Linux, un autre pour +Windows, ou encore un disque pour les fichiers systèmes et un autre pour les +données, ce qui simplifie la gestion au quotidien (sauvegardes, déplacements, +attribution de la place...) et les (ré)installations. +
+ +
+Il y a toutefois une astuce qui permet d'éviter d'acheter plusieurs disques,
+c'est de faire en sorte qu'un seul et même disque se comporte comme plusieurs
+disques distincts. À cette fin, on «découpe» le disque en morceaux disjoints,
+appelés partitions. Chaque partition peut être vue comme un disque distinct.
+Effacer le contenu d'une partition n'efface pas le contenu des autres, ce qui
+permet par exemple de réinstaller /users/97/
en douceur...
+
Une partition est «montée»
+dans un certain répertoire. Ainsi, clipper a 9 disques durs, à leur tour
+partitionnés. L'une des partitions de l'un des disques durs répond au doux nom
+de c1t1d0s1
, et contient tous les fichiers présents dans
+/users/98/
.
+ +
+ ++Ce shéma explique la notion de montage: l'arborescence est divisée en +répertoires, comme on l'avait vu dans le numéro 3 du Hublot; ces +répertoires sont sur des disques (ou des partitions) différents, comme le +montrent les boîtes. «Monter» des partitions consiste à associer un lieu +physique (un bout du disque dur) à un lieu logique (un +emplacement dans l'arborescence).
+ +
+Chaque promotion a une partition séparée, ce qui évite que les anciens
+n'étouffent les nouveaux; les gourous ont leur propre partition, dans laquelle
+ils installent tous les merveilleux logiciels qui nous font tant plaisir; le
+courrier électronique est également sur sa propre partition, etc... Pour avoir
+une liste de toutes les partitions montées, tapez df
(disk
+file system). df
donne les informations sur chacune des
+partitions, en particulier leur remplissage. C'est utile à surveiller...
+
+steamer ~ $ df
+(...)
+clipper:/var/mail 3595704 1465400 2094344 42% /var/mail
+clipper:/opt/gourous 2012384 1762136 189872 91% /opt/gourous
+clipper:/users/91 2569472 1740328 777752 70% /users/91
+clipper:/users/92 2569472 1740328 777752 70% /users/92
+clipper:/users/93 2056208 1558344 436176 79% /users/93
+clipper:/users/94 2010952 1792920 157704 92% /users/94
+clipper:/users/95 4352736 3155488 1153720 74% /users/95
+clipper:/users/96 4351720 3330544 977664 78% /users/96
+clipper:/users/97 4352736 2562800 1746408 60% /users/97
+clipper:/users/98 4352736 2627696 1681512 61% /users/98
+clipper:/users/99 4351720 2928128 1380080 68% /users/99
+(...)
+
+
+
+ Clipper a
+9 disques durs, qui totalisent 57 Go. 10 Go sont actuellement
+inutilisés, donc 4 Go prévus pour /users/2000
, et le reste
+pouvant remplacer en castastrophe un disque qui casse. 32 Go servent aux
+utilisateurs (/users/
, courrier électronique, forum des élèves);
+12 Go sont dévolus au système (système d'exploitation,
+/opt/local/
, /usr/local/util/
---les programmes,
+swap*, postgres
---base de données).
+
+À Jourdan, il y a 3 Go pour les utilisateurs, à Montrouge 4 Go, en +salle T15 9 Go. +
+ ++Au total, l'ensemble des salles élèves comportent environ 70 disques durs, +soit 200 Go. On constate que sur ces 200 Go, 48 seulement sont +laissés aux utilisateurs. Le reste sert aux logiciels. +
+ + +rm
+Vous disposez en revanche La commande rm
(remove) sert à
+effacer les fichiers; par exemple:
+
+steamer ~ $ ls +Mail/ blo vocab vocab~ +steamer ~ $ rm vocab~ +rm: remove vocab~ (y/n)? y +steamer ~ $ ls +Mail/ blo vocab ++ +
+Comme vous le voyez, avec la configuration des conscrits, rm
+demande confirmation avant d'effacer un fichier, parce que rm
est
+en fait un alias (raccourci, si on veut) pour rm -i
+(interactif); la commande rm
tout court efface sans
+poser de questions; l'option -i
demande confirmation. Soyez donc
+prudents quand vous êtes ailleurs qu'à l'École, il n'y aura pas forcément
+d'alias pour rm
. Vous pouvez allez lire le cours des tuteurs
+sur cette commande
+
+L'interface proposée par la configuration des conscrits ne propose pas de
+«corbeille», c'est-à-dire de zone de transit où stocker les fichiers avant de
+les effacer définitivement. rm
efface définitivement le fichier.
+En cas de fausse manoeuvre, si vous effacez par mégarde un fichier,
+adressez-vous au SPI pour qu'on vous remette en place la dernière version
+sauvegardée du fichier.
+
+La commande qui sert à effacer un répertoire est rmdir
+(remove directory; voir le numéro 3 du Hublot). Un
+répertoire doit être complètement vide pour pouvoir être détruit.
+rm
a des options qui permettent de détruire récursivement un
+répertoire et son contenu; je vous renvoie aux pages du manuel (voir man*).
+
Les données informatiques +sont souvent volumineuses; par exemple, 30 secondes de son qualité CD +remplissent une disquette, soit 1,4 millions de caractères. Mais ces +données ont en général un sens, et ne sont pas des nombres tirés au hasard. +Ainsi, un texte français contiendra plus souvent les caractères « », «e» +ou «.» que les caractères «ø» ou «¶». De même, pour une image, il y a souvent +des zones relativement uniformes, et il n'est pas nécessaire de garder la +possibilité de coder toutes les couleurs, puisqu'elles ne sont pas utilisées. +On peut donc essayer de leur faire prendre moins de place. +
+ ++Faire ceci, c'est comprimer les données. Il y a des méthodes plus ou moins +générales, plus ou moins efficaces selon le type de données sur lesquelles +elles sont utilisées (une image se comprime souvent nettement mieux qu'un +programme exécutable). Dans le cas où la donnée finale doit être interprétée +uniquement par un humain, on peut même s'autoriser à perdre certaines +informations pour mieux réduire la taille, à condition que ces informations +soient imperceptibles. Il s'agit là du son ou des images; si vous compressez +un fichier de texte, il sera identique avant et après compression. +
+ +-- Nicolas George
+ +gzip
et gunzip
Pour compresser un fichier,
+utilisez la commande gzip
:
+steamer ~ $ ls +Mail/ blo rapport.ps vocab vocab~ +steamer ~ $ gzip image.ps +steamer ~ $ ls +Mail/ blo rapport.ps.gz vocab vocab~ ++ +
+Le suffixe .gz
a été ajouté, et indique que le fichier est
+compressé; sa taille a au moins diminué de moitié, sinon plus. Pour
+décompresser un fichier, utilisez la commande gunzip
. Il est
+inutile de chercher à compresser des images (formats GIF ou JPEG), car elle
+sont déjà compressées.
+
+Il y a aussi les commandes zip
et unzip
qui
+manipulent les fichiers Zip du monde Windows; ceux-ci peuvent être
+multi-fichiers (archives). Il y a aussi d'autres commandes pour compresser un
+fichier (comme bzip2
/bunzip2
). Pour toutes
+questions, n'hésitez pas à nous écrire.
+
+Dans cette section, vous trouverez la suite du cours de Thomas sur les +réseaux; ce mois-ci, il explique les protocoles utilisés sur Internet. +Dans la section Netscape, on va parler de la gestion des +marques-pages.
+ ++Dans le dernier cours, on a vu comment Internet était organisé, et comment les +ordinateurs étaient capables d'envoyer une information à l'autre bout du monde +par le moyen de routeurs. Ce mois-ci, on va voir quels protocoles servent à +garantir que les informations arrivent à destination. Un protocole est aux +données ce que le langage est à une conversation: c'est le «règlement». +
+ ++Nous voilà en position d'envoyer des paquets à travers le monde. Mais avec une +fiabilité douteuse. On a principalement deux problèmes: +
+ ++Deux protocoles ont donc été créés. Le premier, UDP (User +Datagram Protocol) est une surcouche triviale d'IP: on envoie des +paquets, sans garantie, d'une taille maximale de 8 192 octets (pour +les données; il y a aussi un entête donnant entre autres l'adresse et le port +de destination).
+ ++ ++Surcouche triviale: couche supplémentaire reproduisant la structure +sous-jacente.
TCP (Transmission Control Protocol) est une +mécanique complexe qui assure une sémantique de connexion: un tuyau +bidirectionnel, fiable, au flux contrôlé afin de ne pas provoquer +d'embouteillage, est établi entre deux stations, sur un certain port.
+ ++TCP est le plus utilisé. UDP est utilisé pour certains protocoles où l'ordre +d'arrivée des données n'est pas important, ou quand les données sont +rapidement obsolètes. Par exemple, dans le cas de NFS (partage de disques par +réseau), l'ordre des requêtes n'est pas primordial; quand on fait du téléphone +par Internet, si un paquet se perd, autant l'oublier: sa doublure arriverait +trop tard pour s'intégrer dans le flux sonore.
+ ++La face visible d'Internet est formée par les applications. Nous allons en +détailler quelques unes.
+ + +
+Cette application est chargée de faire la correspondance entre les adresses
+numériques, et les noms de stations, noms qui sont destinés aux humains.
+Ainsi, c'est le système des DNS qui permet à toute station dans le monde de
+savoir que clipper.ens.fr
répond à l'adresse 129.199.129.1.
+Chaque site doit disposer d'un DNS, connaissant les machines locales, et
+pouvant interroger les autres DNS. Les DNS communiquent par paquets UDP sur le
+port 53.
Par connexion TCP sur le port 25,
+ce protocole permet d'échanger des courriers électroniques. De façon
+similaire au transport des paquets IP, un courrier peut effectuer quelques
+sauts (à chaque fois sous la forme d'une connexion TCP) entre serveurs de
+mails avant d'arriver à destination. Par exemple, à l'ENS, tout courrier
+sortant passe par nef.ens.fr
.
+Ce protocole de transfert de fichiers utilise deux connexions TCP, sur les +ports 20 et 21 (celle sur le port 20 sert aux données, celle +sur le port 21 transporte les commandes).
+ ++Créé par Sun Microsystems, ce protocole de partage de disques permet, à l'ENS, +de pouvoir manipuler ses fichiers quelle que soit la station qu'on utilise. +Souvent décrié, ses versions modernes sont fort acceptables, pourvu que le +réseau sous-jacent soit rapide. Il utilise des paquets UDP, sur le port +2049.
+ +C'est le coeur du World Wide Web, qui
+n'est qu'une application d'Internet, récente de surcroît (1990). Par
+connexion TCP sur le port 80 du serveur Web, le client obtient le contenu
+d'une page (normalement en langage HTML) et divers autres types de fichiers
+(notamment les images). Une adresse Web (URL) commence par le mot-clé
+http
, indiquant le protocole utilisé, puis contient le nom du
+serveur Web, puis enfin le nom du fichier (avec éventuellement des répertoires
+et des sous-répertoires) sur ce serveur.
+
+
+Figure 1 : Consultation de
+http://www.ens.fr/index.html
-- Thomas Pornin
+ ++Le mois dernier, on a vu la navigation sur le Web. Ce mois-ci, on va voir +comment créer des raccourcis vers une adresse (marques-pages). Comme +d'habitude, j'utilise la version 3 de Netscape. +
+ + Les
+marques-pages sont des raccourcis vers des adresses fréquemment visitées, ou
+particulièrement intéressantes; plutôt que de noter l'adresse à la main dans
+un carnet ou un fichier, ou de suivre à chaque fois une série de liens sur des
+pages Web, ou de recourir à un moteur de recherche, on crée un raccourci vers
+la page. Il suffira alors de cliquer sur le nom de la page pour s'y rendre.
+Voici à quoi ressemble le menu Bookmarks
:
+ +
+ + +
+Pour ajouter un marque-page pointant vers la page sur laquelle on se trouve,
+il suffit de sélectionner Add Bookmark
. Pour aller sur une page
+référencée, on clique sur son nom dans le menu.
À force d'ajouter des marque-pages,
+on finit par se retrouver avec une liste interminable. Il est possible
+d'éditer les marque-pages pour en détruire certains, les regrouper dans
+des sous-menus, les renommer, etc. Pour cela, sélectionnez
+Bookmarks
dans le menu Window
. Une fenêtre
+comme celle-ci s'affiche:
+ +
+ + +
+Vous pouvez sélectionner une ligne avec la souris, puis la copier-coller, ou
+la détruire (sélectionner Cut
, Paste
ou Delete
dans
+le menu Edit
).
+
+Dans le menu Item
, vous trouverez deux lignes intéressantes:
+Insert Folder
permet de créer des sous-menus (comme le sous-menu
+ENS
dans la copie d'écran); Properties
permet d'éditer les
+propriétés d'un marque-page, par exemple pour changer son nom (sélectionner le
+marque-page avec la souris, puis cliquer sur Properties
).
+
+Pour quitter cette fenêtre: sélectionner Close
dans le menu
+File
.
+
+La Bibliothèque des Lettres dispose, dans la salle des périodiques, de quatre +postes de travail (1 Mac, 3 PC sous Windows) dédiés à la consultation des +CD-ROM. +
+ + +Certains d'entre eux constituent +le prolongement des collections en «texte intégral » conservées au CEA (cf. le +précédent numéro du Hublot). Le CETEDOC permet d'interroger +les Pères de l'Église latins et plusieurs auteurs du Haut Moyen-Âge sur PC +(Windows). Les textes, présentés sans apparat critique, ni notes, ni +commentaires, sont issus, chaque fois que possible, du Corpus +Christianorum, et à défaut, de la vénérable édition de Migne. La +Database of Classical Bibliography, consultable sur Mac, renferme, dans +sa version actuelle, les volumes 45 à 60 (années 1974--1989) de L'Année +Philologique. Plus souple que le répertoire imprimé, la base électronique +donne accès aux références bibliographiques par l'intermédiaire de 19 index +(auteur, oeuvre, mot, titre, collection, date, lieu d'édition, rubrique APh, +etc.) qu'on utilise séparément ou en association. Dyabola est +constitué à partir des fichiers matières de l'institut d'archéologie allemand +de Rome: il couvre les domaines de l'archéologie et de l'histoire de l'art +dans l'Antiquité. Le logiciel d'interrogation, conçu pour PC, fournit des +références bibliographiques en fonction de mots-clés de sujets, de noms +d'auteurs, de titres de publications ou de dates. Il convient d'ajouter à +cette liste le LDAB (The Leuven Database of Ancient Books), qui n'est +pas un CD-ROM, mais un fichier FileMaker Pro pour Mac, et qui renferme une +base de références concernant les papyri, tant littéraires que scientifiques, +allant du IVe siècle av. J.-C. jusqu'au IXe siècle de notre ère. +
+ +Mais la politique de la Bibliothèque +consiste surtout à acquérir les outils bibliographiques fondamentaux. C'est +ainsi qu'elle possède le BN-Retrospect, un ensemble de 6 CD-ROM +installés dans une tour, et qui résulte de la fusion de plusieurs catalogues +imprimés ou accessibles en tiroirs à la BNF: le Catalogue général des Auteurs +(avant 1960), celui des Auteurs, Collectivités et Anonymes (1960-1969) et +celui des Périodiques (avant 1960). L'ensemble électronique constitue une +collection de 3 millions de notices répertoriant des ouvrages parus depuis +l'époque des incunables jusqu'à 1970. +
+ ++Si l'on souhaite compléter sa recherche pour la période allant de 1970 jusqu'à +maintenant, il convient de se connecter à la base BN-OPALE PLUS grâce à +Internet (http://catalogue.bnf.fr/). La +description des périodiques et leur localisation dans les bibliothèques +françaises sont assurées, sur PC Windows, par Myriade. Les thèses +soutenues dans les universités françaises depuis 1972 (pour les Lettres et les +Sciences) ou 1983 (pour les professions de la Santé) sont répertoriées dans +les deux disques de DocThèses. Les hispanisants trouveront dans +Hispanam, consultable sur PC Windows, une bibliographie sur la langue +et la littérature espagnole en Europe et en Amérique. +
+ +Le +fonds comprend encore la version électronique des usuels incontournables. +Ainsi en est-il de l'Encyclopædia Universalis et du +Dictionnaire encyclopédique Hachette, interrogeables +tous deux sur Mac. D'autres titres se destinent plutôt à la +vulgarisation. La conquête de l'archéologie moderne +présente, sur Mac, l'histoire de l'École Française d'Athènes de 1846 à +1914, tandis que Délos renferme une base de +photographies numérisées d'après les clichés pris par les membres de +l'EFA sur le site entre la fin du XIXe siècle et 1914. Citons encore +L'Encyclopédie de la musique, ou La leçon +d'anatomie, qui comporte des documents iconographiques et des +textes illustrant les progrès de cette discipline dans les différentes +civilisations depuis l'Antiquité jusqu'à nos jours. L'acquisition de +cette catégorie de CD-ROM n'est pas une priorité pour la Bibliothèque +d'Ulm, en revanche, celle de Jourdan possède une remarquable collection +d'encyclopédies et de dictionnaires électroniques, ainsi que des titres +portant sur la littérature, la musique, l'histoire de l'art, tant sur +CD-ROM que sur vidéodisques.
+ +Bien qu'il ne s'agisse pas de +CD-ROM, il importe de mentionner quelques bases de données, conçues par le +personnel de la Bibliothèque sous forme de fichiers 4D, et consultables dans +la salle 2 (iMac Framboise), la salle 4 (iMac Mandarine) et la salle des +périodiques. Un catalogue mixte Ulm-Jourdan répertorie tous les titres de +périodiques, toutes les collections, ainsi que les ouvrages entrés à Ulm +depuis 1996, et à Jourdan depuis septembre 1998. D'autres bases spécialisées +cataloguent les thèses sur microfiches, les mémoires de maîtrise des élèves, +les tirés à part (en cours de constitution), et même une «bibliographie +normalienne » concernent spécifiquement l'ENS. +
+ ++Les différents titres que possède la Bibliothèques des Lettres sont en nombre +insuffisant pour constituer une véritable section de ressources électroniques, +mais les principales références sont disponibles. Ils ne se positionnent pas +en concurrence, mais en complémentarité des instruments bibliographiques +traditionnels, assurant ainsi à l'usager des lieux un travail efficace et +fructueux. +
+ +-- Daniel Béguin
+ +C'est
+un ensemble de documentations, en anglais, pour chacune des commandes Unix
+existantes. Par exemple, pour la page de man de rm
, tapez
+man rm
. Les commandes de déplacement, recherche, etc, sont
+celles de less
(voir les exercices sur less
). Le man est une référence,
+et pas un guide d'apprentissage. Il est donc souvent difficile à comprendre
+quand on débute...
Zone du disque +dur où le système stocke automatiquement la mémoire peu utilisée, afin de +garder la vraie mémoire, rapide, pour ce qui sert vraiment. Par exemple, un +terminal auquel on n'a pas touché depuis longtemps est souvent vidé de la +mémoire, et met quelques secondes à revenir quand on veut s'en +servir.
++Au troisième trimestre, le stage intensif sur tout un week-end est +remplacé par un système de petits stages hebdomadaires, dont le calendrier +suit. Le stage «Introduction aux éditeurs de textes» est indispensable pour +ceux qui ne savent pas ce que c'est, mais qui voudraient suivre le stage +«Mutt» ou les stages de LATEX. Attention: on suppose que +les gens qui viennent à ces derniers stages savent se servir d'un éditeur de +textes, et utiliser plusieurs fenêtres à la fois. Au besoin, si vous ne pouvez +pas venir au stage sur les éditeurs, demandez un petit cours, ou consultez +notre page Web: Les éditeurs de texte.
+ + Pour s'inscrire, envoyez un courrier aux tuteurs
+(tuteurs@clipper
), ou déposez un mot dans
+le casier d'Émilia Robin. Les stages auront lieu le vendredi soir, à
+20h30, en salle S.
+
Vendredi 28 avril | +Introduction aux éditeurs de texte | +Pour ceux qui n'en +connaissent aucun, et qui ne savent pas à quoi ça sert. | +
Vendredi 5 mai | +Mutt/Pine | +Logiciels de courrier. Deux groupes en +parallèle, selon le logiciel choisi. | +
Vendredi 12 mai | +Vim/Emacs | +Apprendre à se servir de ces éditeurs de +texte; deux groupes en parallèle, selon l'éditeur choisi. On suppose que les +participants savent déjà se servir d'un éditeur de texte élémentaire. | +
Vendredi 19 mai | +LATEX pour littéraires | +Gros documents, index, +bibliographie... | +
Vendredi 26 mai | +LATEX pour matheux | +Figures, formules mathématiques, +etc. | +
+
+ ++Voici le dernier numéro du Hublot pour l'année 1999--2000 et +l'épilogue de nos grandes sagas de l'année... On revient encore plus top mieux +en octobre, avec les conscrits, les vendanges, les bonnes résolutions... +D'ici là, on vous proposera au mois de juin les divers cours du Hublot +en fascicules séparés: typographie, cours Unix, réseaux, Netiquette, +Netscape. +
+ + +
+Nous sommes toujours à votre disposition pour toutes questions, et
+surtout pour toutes suggestions pour l'an prochain...
+tuteurs@clipper
. Vous pouvez aussi mettre un mot dans
+le casier d'Émilia Robin. Certaines pages de notre site sont indiquées dans
+les articles: on suppose que toutes les adresses indiquées commencent par
+http://www.eleves.ens.fr:8080/tuteurs/
. Certains mots sont suivis
+d'un astérisque*; ils renvoient au lexique en fin de numéro. Vous pouvez
+retrouver les anciens numéros du Hublot sur notre site:
+http://www.eleves.ens.fr:8080/tuteurs/docs/hublot/
+
+Merci au SPI pour son soutien, à Jacques Beigbeder, Éric Guichard et +Daniel Béguin pour leurs articles, aux divers rédacteurs: Pierre Corbineau, +Nicolas George, David Madore, David Monniaux, Thomas Pornin, Gilles Radenne, +et aussi à tous ceux qui ont contribué, de près ou de loin, par leurs +relectures et/ou leurs conseils, à la rédaction du Hublot: Hélène, +Hélène encore, Marie-Lan, Étienne, Verzi, MXK, Éric, Éric encore, Zpeat, Max, +Isil, P'titboul, Olivier, Yann, Alain, Damien, Seb, Edd, Tmoy, Sbi... Et merci +à tous ceux qui ont pris la peine de nous écrire pour nous donner des conseils +et des encouragements! +
+ + ++On parle beaucoup de virus en ce moment dans la presse, avec le récent +virus I Love You, qui s'attaquait aux machines fonctionnant sous +Windows et utilisant Outlook, par l'intermédiaire d'un fichier attaché. +Un courrier collectif avait été envoyé à ce sujet le 5 mai par Jacques +Beigbeder. Un filtre a été mis en place à l'entrée de l'École pour rejeter les +courriers électroniques ayant comme sujet ILOVEYOU; environ 35 courriers ont +été rejetés (ce qui est peu, sachant que l'ENS reçoit en moyenne 30 000 +courriers électroniques tous les jours...). Nous profitons de l'occasion pour +faire le point sur cette question des virus, et sur ce que la presse en a dit, +également... +
+ + ++Un virus informatique est un programme, de même qu'un traitement de textes ou +un logiciel de calcul scientifique. Sa particularité est qu'il opère en grande +partie à l'insu de l'utilisateur de la machine, et qu'il essaye de se +transmettre à d'autres machines ou d'autres utilisateurs. Il peut n'avoir +aucun comportement à part la réplication, ou créer des troubles plus ou moins +graves (animation non désirée sur l'écran, remplacement de certains mots dans +le texte du document édité, voire destruction complète de certaines données). +
+ + + + +Il y a quelques années, les virus se transmettaient exclusivement par +l'utilisation de programmes déjà infectés, c'est à dire de programmes normaux +(traitement de textes, jeux...) modifiés par un virus afin de contenir une +copie de lui-même. Lors de l'utilisation du logiciel en question, le virus +s'active et essaye de se recopier au sein des logiciels installés sur le +disque dur de la machine, voire du système (p.ex. Windows) lui-même. Le +logiciel est ainsi installé à demeure sur la machine de l'utilisateur, qui ne +soupçonne rien. À chaque fois que l'utilisateur recopie un logiciel (ex: un +jeu) installé chez lui et le donne à un autre utilisateur, il copie le virus +par la même occasion1. +
+ + ++Certains virus récents, dont les très médiatiques Melissa et +I Love You, se reproduisent au travers du courrier électronique. Leur +mode d'action est le suivant: on peut attacher des documents (images, sons, +textes...) au courrier. Lorsque l'utilisateur demande la visualisation du +document, certains visualisateurs (p.ex. Microsoft Word, Microsoft Excel) +exécutent des commandes incluses dans le document. Le virus va ainsi se faire +passer pour un banal texte, et lorsque l'utilisateur va demander à voir ce +texte, il va lancer le virus au passage. Le virus va alors récupérer des +adresses de courrier électronique et se reexpédier et/ou s'installer au sein +du système. +
+ + + + +La plupart des virus transmis par courrier électronique sont essentiellement +ennuyeux à cause du flot de courrier qu'ils génèrent. Le récent I Love +You efface certaines données des utilisateurs, dont les fichiers JPEG (images +photographiques), ce qui explique l'émoi qu'il a suscité auprès des +journalistes. +
+ + ++Il n'existe aucun obstacle technique à ce qu'un virus fasse des choses plus +insidieuses, comme récupérer des données personnelles (numéros de cartes +bancaires, adresses, textes contenant certains mots-clefs) sur le disque dur +et les renvoyer à l'auteur du virus... d'une manière éventuellement +intraçable! +
+ + + + + +Les systèmes d'exploitation Microsoft Windows +95, 98 et Millenium et Apple MacOS permettent à (presque) n'importe quel +programme fonctionnant sur la machine de modifier n'importe quelle partie du +système. Au contraire, Windows NT et 2000 et Unix (dont Linux) ne permettent +pas aux programmes lancés par de simples utilisateurs de changer des +paramètres globaux au système. Il est ainsi impossible (sauf bogues dans le +système) à un simple utilisateur des machines Unix de l'ENS de lancer un virus +qui se mettrait en place dans un traitement de texte utilisé par les autres +utilisateurs2. +
+ + ++En résumé, sous Windows, lancer le moindre programme de source inconnue +(ex: un petit gadget qui affiche une animation sur l'écran, un jeu...) +c'est s'exposer à ce qu'il installe des choses non désirées dans le +système. Il n'est donc pas étonnant que certaines entreprises interdisent +formellement à leurs employés l'installation de logiciels non approuvés! +
+ + +Les logiciels de la société Microsoft +(Outlook, Word, Excel...) offrent souvent la possibilité d'adjoindre à un +document (texte, feuille de tableur...) des petites commandes (macros) +exécutées automatiquement à l'ouverture du document. Cela peut être pratique +par exemple pour offrir à l'utilisateur des options de remplissage automatique +dans un formulaire, des menus... Jusque là, rien que de très normal. Ce qui +l'est moins, c'est qu'une palette très large de commandes, y compris +l'écriture de fichiers sur le disque dur, est permise dans des documents +affichés directement depuis le courrier électronique. +
+ + ++On ne peut qu'être atterré par un tel manque de sérieux de la part d'une +société qui se veut aussi professionnelle que Microsoft. En résumé, +leur système de courrier électronique exécute n'importe quels ordres contenus +dans un courrier électronique de quelque provenance que ce soit lorsque +l'utilisateur demande à voir le contenu du courrier. C'est un peu comme si +dans une entreprise le service chargé du courrier payait n'importe quelle +facture lui arrivant par la poste, sans prendre la peine de vérifier son +bien-fondé! +
+ + + ++Les virus naturels ont la particularité de pouvoir évoluer au cours du +temps, et la sélection naturelle favorise les souches résistantes aux +«contre-mesures». Dans le cas des virus informatiques, dans l'état +actuel des choses, rien de tel: les «mutations» sont en fait des +modifications apportées par des programmeurs au code du virus, afin de +produire leur propre version. Le virus I Love You effaçait les +images Jpeg et les sons MP3, mais des modifications minimes peuvent le +transformer en virus à effacer les documents Word (attention à vos +mémoires!). Comme de telles modifications sont à la portée de n'importe +quel programmeur moyen, le nombre de versions dérivées d'un virus à succès +peut être considérable, et il n'est pas sûr qu'un anti-virus capable de +détecter l'original détecte la version modifiée. +
+ + + + +Comme nous l'avons vu plus haut, le problème des virus dans le courrier +électronique découle d'une faute grossière de conception du système de +courrier électronique de Microsoft. Une première parade est de ne pas utiliser +ce système. Les utilisateurs de machines Unix à l'ENS n'ont donc rien à +craindre. +
+ + ++Si on doit lire son courrier sous Windows avec Outlook, il faut désactiver +l'exécution automatique des attachements, ce qui est l'option par défaut. +
+ + ++Les logiciels anti-virus sont une parade souvent insuffisante. Ils sont +essentiellement faits pour découvrir des virus déjà connus, alors que des +nouveaux virus sont bricolés chaque semaine. De plus, on peut parfois se +demander (en étant vraiment mauvaise langue) s'il n'existe pas un lien entre +les auteurs de virus et les éditeurs de logiciels anti-virus (comment disent +les Dupon{d,t}: chercher à qui profite le crime!). +
+ + ++Il serait faux de dire qu'il est impossible d'écrire un virus pour Unix. +C'est simplement largement plus difficile (il faut trouver des problèmes +de sécurité compliqués à exploiter) et inefficace, notamment en raison des +dispositifs de sécurité empêchant à un utilisateur de modifier les données +d'un autre utilisateur. De plus, la diversité des environnements (Suns, PC +Linux, etc...) rendrait le virus encore plus compliqué à écrire. +
+ + + ++Écrire un virus du type Melissa ou I love you ne nécessite pas +d'être un génie de l'informatique, loin de là. Mais il y a encore plus +simple: écrire un avertissement contre un virus... qui n'existe pas, lui +adjoindre un petit message du style «C'est vraiment très important, avertissez +tous vos amis», et attendre que des utilisateurs pleins de bonnes intentions +propagent le message. Il s'agit pourtant d'une sorte de virus, qui se +dissémine à l'aide de la naïveté de certains, et qui fait partie d'une famille +fort vaste de «lettres en chaînes». Outre les avertissements de virus, citons +aussi les rumeurs du style «des trafiquants de drogues distribuent des bonbons +au LSD aux enfants... avertissez tous les parents que vous connaissez». +
+ + +
+Inutile de dire qu'il convient de ne pas disséminer ce genre d'«informations».
+L'école dispose du Service de Prestations Informatiques, dont les personnels
+se tiennent constamment au courant des problèmes de sécurité informatique.
+C'est à eux, et non pas aux élèves, de diffuser des avertissements concernant
+les virus. C'est eux (spi@ens.fr
) qu'il faut contacter en cas de
+doute.
+-- David Monniaux, Laboratoire d'Informatique +
+ + + ++Dans Le Monde interactif, supplément informatique du journal Le +Monde, daté du mercredi 10 mai 2000, on lit en première page un grand titre +qui proclame: «Le virus I Love You révèle les faiblesses du Web». En un mot, +c'est du n'importe quoi, mais du n'importe quoi en première page d'un journal +réputé... +
++C'est quoi le Web? Le Web, c'est un réseau d'informations, reliées entre elles +par des liens (liens hypertexte si on veut faire branché). Quand on suit un +lien en cliquant dessus, on est amené sur une autre page. Il se peut que la +nouvelle page soit physiquement sur le même ordinateur, ou au contraire à +12 000 kilomètres de là, ça n'a aucune importance. +
+ + ++Le Web est l'un des aspects d'Internet. Internet, c'est la mise en réseau +mondiale d'ordinateurs. Ça implique une infrastructure matérielle (câbles, +routeurs...), et une série de protocoles pour faire transiter les +informations. Par exemple, le Web utilise le protocole HTTP. Mais Internet +c'est aussi le courrier électronique, le transfert de fichiers, la connexion à +distance (telnet), les news... Pour chacune de ces fonctions, on utilise un +logiciel: navigateur pour le Web, logiciel de courrier, etc. Si vous voulez, +Internet c'est comme une route que les gens utilisent pour différentes +fonctions (transport de marchandises, vacances, trajet boulot-dodo, balade à +vélo...), et ces fonctions c'est le courrier, le Web, etc. +
++Tout ça pour dire quoi? I Love You est un virus qui utilise un trou de +sécurité d'un logiciel de courrier électronique, Outlook. Pour +continuer la comparaison routière, imaginons qu'un fabricant de pneus +(appelons-le Pierralu) a commercialisé une série de pneus défectueux, qui +explosent. Les journaux parleraient de la mauvaise qualité des pneus Pierralu, +mais ne titreraient pas «Les pneus qui explosent révèlent les faiblesses de la +route»... +
+ + ++Il faudrait cesser de confondre Internet et le Web, et le réseau avec les +logiciels qui l'utilisent... +
+ + +Le mois dernier, on a +expliqué l'emploi des diverses fontes. Pour clore ce cours de +typographie, on va voir quelles sont les principales règles françaises de +présentation d'une bibliographie. Ces informations proviennent d'une part +du Lexique des règles typographiques en usage à l'Imprimerie +nationale, Imprimerie nationale, 1990, d'autre part d'une mise au +point très claire de J.-M. Burlat et B. Prudhomme3.
+ + +Il existe deux normes internationales de +présentation des références bibliographiques. L'ISO 690 (1987) décrit le +«contenu, la forme et la structure» des références bibliographiques, et +l'ISO 690-2, datant de 1995, traite du référencement des documents +électroniques4. +
+ + ++Ces deux normes de l'International Standard Organisation (ISO) définissent la +nature des informations à présenter et l'ordre dans lequel on les présente. +C'est une description logique. La typographie proprement dite, la mise +en page graphique n'est pas prescrite par la norme, et varie selon les +pays. Il n'existe d'ailleurs pas de norme en la matière, mais des usages, que +voici. +
+ + +La bibliographie est placée le plus souvent en fin d'ouvrage, +avant le ou les index, et les tables (des matières, des figures, etc). Dans +les ouvrages d'érudition, on peut la trouver en début d'ouvrage, après les +introductions. +
+ + +Une bibliographie se présente comme une liste numérotée, avec +les numéros entre crochets. Le classement interne dépend du contexte: ordre +alphabétique (bibliographie courte), classement thématique, classement selon +la nature de l'ouvrage... +
+ +On indique le nom de famille en petites capitales, suivi +d'une virgule et du prénom. Quand on connaît le prénom complet, on l'indique, +sinon on se contente des initiales. N'oubliez pas le tiret des prénoms +composés! +
+ + ++Quand il y a deux auteurs, on met «et» entre les deux noms; quand ils sont +trois, on n'écrit «et» qu'avant le dernier, comme dans une énumération +classique. Si l'ouvrage compte plus de trois auteurs, on n'indique +habituellement que les trois premiers, suivis de «et. al.». +
+ + ++La norme dit qu'il faut séparer les divers champs de la référence (auteurs, +titre, édition...) par des points, ou des points-virgules, en réservant la +virgule pour les distinctions à l'intérieur d'un champ. C'est une question +d'usages. Si on utilise le point comme séparateur, il va de soi que, le cas +échéant, on supprime le point d'abréviation (voir le dernier exemple +ci-dessous): +
+ + +Le titre est écrit en italique. Dans le cas d'un article ou +d'une contribution, le titre du passage est indiqué entre guillemets, puis on +écrit en italique le nom de l'ouvrage ou de la revue dont le texte est +extrait. Faut-il mettre «in» ou «dans» entre le titre de l'article et +l'ouvrage? Ce n'est pas clair... L'important est d'être cohérent, et de s'en +tenir à la méthode choisie (pas comme dans nos exemples, donc).
+ + +Pour citer un ouvrage écrit en caractères non latins (grec, russe, arabe, +chinois...), on a le choix entre utiliser une police exotique, ou recourir à +la translittération en usage. Dans tous les cas, on indique ensuite la +traduction du titre, entre crochets: +
+ + ++Quand on cite juste un chapitre ou un tome, on commence +par donner les références de l'ouvrage, puis on indique la sous-partie. +
+ + +Après le titre, on indique le lieu d'édition, l'éditeur, +l'année. On peut mentionner la collection, mais ce n'est pas obligatoire. +Pour le lieu d'édition, il peut arriver que plusieurs villes soient indiquées; +vous pouvez ne mentionner que la première. +
+ + ++Dans le cas d'un article, on indique dans l'ordre, après le titre du +périodique, l'année, le volume et le numéro. +
+ + + +Pour un ouvrage, on donne le nombre de pages: «579 p.». Pour +un article, une contribution, on indique la pagination sous cette forme: +«p. 123--148»; on met un tiret et non un trait d'union entre les chiffres. +Attention: l'abréviation pour «page» est «p.» et non «pp.»; n'oubliez pas de +mettre un espace insécable entre l'abréviation et le numéro. +
+ + +ispell
et
+gospell
+Le correcteur orthographique le plus répandu dans le monde Unix
+s'appelle ispell
. Il se manipule de manière très simple. Dans un
+terminal, il suffit de taper ispell fichier
, et la correction
+commence... En anglais, qui est la langue par défaut. Pour obtenir une
+correction en français, il faut préciser sur la ligne de commande:
+
+bireme ~ $ ispell -d francais orthographe.txt
+
+
+On a alors droit aux commandes de correction en plein écran: +
+ + ++Une grose faute d'orthographe. + + 0: glose 4: grouse + 1: grise 5: prose + 2: gros 6: rose + 3: grosse + +[SP] <number> R)epl A)ccept I)nsert L)ookup U)ncap +Q)uit e(X)it or ? for help ++ +
Le programme nous montre les mots mal orthographiés, et propose des +orthographes approchantes. Il va aussi souvent demander confirmation pour la +décomposition d'un mot, en particulier quand il y a des apostrophes. Les +options offertes sont alors: +
+ +espace
: ignorer la faute;numéro
: remplacer par un des mots
+proposés;R
: remplacer manuellement; le(s) mot(s) alors saisis seront
+corrigés à leur tour;A
: accepter ce mot pour le reste du texte;I
: insérer le mot dans le dictionnaire personnel; il sera
+alors accepté pour tous les autres textes;L
: chercher un mot dans un dictionnaire (hélas, toujours
+dans un dictionnaire anglais);U
: comme I
, mais en considérant le mot en
+minuscules;Q
: abandonner la correction;X
: arrêter là et sauver les corrections faites.gospell
Comme les accents posent des problèmes,
+on utilise un script* local à l'École, gospell
, qui lance
+ispell
avec les bonnes options. Il suffit de taper
+gospell -f
pour le français, ou gospell -e
+pour l'anglais.
Pour finir avec les remarques, il faut signaler que le dictionnaire
+français n'est pas installé sur les machines Linux (chaland
+en salle S, tremble
en salle T, buyse
en
+Infi, gondole
à Jourdan, polacre
et
+ponton
à Montrouge).
Emacs fait tout, même le
+café. Il sait notamment utiliser ispell
pour vous permettre
+de corriger confortablement le texte que vous êtes en train de taper.
+Pour cela, vous devrez d'abord probablement changer le dictionnaire à
+utiliser. Pour ce faire, tapez Méta-X
, puis
+ispell-change-dictionary
, et indiquez quel dictionnaire
+utiliser. Ensuite, vous pouvez lancer la correction par
+Méta-X
, puis ispell-buffer
. Avec
+XEmacs, vous pouvez également utiliser le bouton dans la barre
+d'outils.
+Une petite fenêtre s'ouvre alors au-dessus de votre document, dans laquelle
+apparaissent les propositions d'ispell
, qui sont les mêmes que quand on
+l'utilise tout seul.
+
-- Nicolas George
+ +En cette période de rapports, et +bientôt de vacances, voici quelques conseils de bon sens. +
+ ++Les plantages des ordinateurs fonctionnant sous Windows ou MacOS peuvent +entraîner des pertes irréparables de données. Sachez que vous ne pourrez pas +vous retourner contre le fabricant du logiciel, car la licence vous avez +acceptée possède une clause qui exclut toute responsabilité pour les dégâts +que pourrait causer le produit. D'autre part, quel que soit le système, un +disque dur est un dispositif électromécanique pouvant être sujet à des pannes +matérielles. Vous devez donc faire des sauvegardes régulières de vos données, +au moins tous les mois5. Voici +quelques conseils: +
+ +
+Ce mois-ci, on aborde la question des formats de fichiers. «Format»
+est un mot-valise, fourre-tout, bien pratique, et pas clair du tout... Dans la
+partie «Commande», on va voir la commande file
, qui sert à identifier
+un fichier. Enfin, dans la partie «Usage», on passe en revue les principaux
+formats de fichiers, en indiquant quels logiciels utiliser.
+
+Les fichiers stockés sur le disque dur d'un ordinateur contiennent des +informations de nature diverses: textes, images, programmes... Toutes ces +informations sont toutes écrites sous la forme d'une suite de nombres compris +entre 0 et 255. Un format est une façon de décrire un objet informatique de +façon à conserver toutes les informations utiles. Par exemple, pour une image, +on veut la couleur de chaque point, mais aussi la taille de l'image, le nombre +de couleurs, etc. On peut en outre vouloir ajouter une brève description, ou +une notice de copyright. Bref, tout n'est pas si simple. +
+ + ++Au début, quand on écrivait un nouveau logiciel, on inventait une nouvelle +manière de représenter l'information, c'est à dire un nouveau «format de +fichiers». Mais quand il existe déjà un logiciel similaire, pour peu que le +format de fichiers qu'il utilise soit suffisamment général, et qu'on en +connaisse les spécifications, on a tout intérêt a utiliser le même format pour +garder la compatibilité. C'est pourquoi il existe aujourd'hui un certain +nombre de formats de fichiers très répandus, et compris par la plupart des +logiciels concernés. Il existe aussi un grand nombre de formats utilisés +spécifiquement par un logiciel. +
+ ++Un fichier ayant un format donné est généralement découpé en deux parties: +d'une part l'entête, et d'autre part, les données elle-mêmes. L'entête +contient (souvent) un code identifiant le format, et permettant au logiciel de +vérifier qu'il est bien en train de travailler avec un de ses documents, des +indications sur la variante du format utilisée, des paramètres numériques +(taille par exemple), etc... Ensuite viennent les données, écrites selon le +code du format. +
+ + +
+L'usage veut que l'on ajoute au nom des fichiers un suffixe qui identifie son
+format. Par exemple, un fichier de son au format MP3 a un nom qui se termine
+en «.mp3
»
+
Un fichier est dans un +format texte si les données qu'il renferme sont exprimées sous forme de +texte à peu près lisible par une personne avertie, codé en utilisant le +standard ASCII ou une de ses extensions internationales, à l'exclusion +notamment des caractères dits «de contrôle». En conséquence, un format +texte est utilisable dans un éditeur de texte basique et modifiable à la +main tandis qu'un format binaire ne l'est que par des outils spécifiques. +
+ + ++Un fichier est dans un format binaire si au contraire il utilise avant tout +le fait que les fichiers sont des séries de nombres. Il est illisible pour un +oeil humain, et ne peut être lu qu'avec un logiciel spécifique. +
+ + + +file
+La commande file
permet de connaître le format d'un fichier. C'est
+très utile lorsqu'un fichier est renommé par accident, ou quand on tombe
+sur un fichier inconnu dont on ne connaît pas l'extension. Il suffit de taper
+file
suivi du nom du fichier.
+
+bireme ~ $ file hublot6.*
+hublot6.aux: ASCII text
+hublot6.dvi: TeX DVI file (TeX output 2000.04.21:1635 )
+hublot6.html: HTML document text
+hublot6.image.tex: ASCII text
+hublot6.log: TeX transcript text
+hublot6.ps: PostScript document text conforming at level 2.0
+hublot6.tex: data
+
+
+ Une remarque sur le format «data»: c'est ce que file
+répond quand il ne sait rien dire sur le fichier...
Il y a d'abord le format texte le plus élémentaire: juste
+des mots et rien d'autre... Le fichier peut avoir un suffixe «.txt
».
+Dans cette rubrique «textes ASCII» on inclut les fichiers correspondant à un
+langage spécifique, comme:
+
Fichiers LATEX | +: suffixe | +«.tex » |
+
Fichiers HTML | +: suffixe | +«.html » |
+
Langage C | +: suffixe | +«.c » |
+
Langage C++ | +: suffixe | +«.C » ou «.cc » |
+
Langage Perl | +: suffixe | +«.pl » |
+
Langage Fortran | +: suffixe | +«.f » |
+
+Pour un fichier de texte, vous avez deux solutions: soit ouvrir le fichier
+avec un éditeur de textes, et vous pourrez alors modifier le fichier; soit
+vous contenter de le regarder avec le programme less
(que l'on quitte
+en tapant q
):
+
+bireme ~ $ less remarques
+
+
+Les fichiers HTML sont un cas particulier: à moins de vouloir voir le +code, c'est le résultat qui vous intéresse. Dans ce cas, vous ouvrez le +fichier avec Netscape ou un autre navigateur.
+ + + + Le format «.dvi
» (binaire) est le
+résultat de la compilation LATEX.
+Le PostScript («.ps
») est un langage de programmation utilisé pour
+décrire les documents imprimés. Grâce à son caractère généraliste, il s'est
+répandu très vite depuis sa création par Adobe Systems jusqu'à devenir un
+standard de fait.
+
+Le PostSript encapsulé («.eps
») est un fichier Postscript comportant
+en outre des indications, sous la forme de commentaires dans le langage
+Postscript, permettant d'obtenir des informations sur le fichier (telles que
+sa taille) sans avoir recours à la complexité d'un interpréteur Postscript.
+Il sert pour les fichiers PostScript destinés à être inclus dans un document.
+
+Le format PDF (Portable Document Format), de la société Adobe, +sert à diffuser des textes sans qu'il soit possible de les modifier (à moins +d'acheter le logiciel idoine). En revanche, le visionneur est gratuit. +
+ +«.dvi » |
+: | +xdvi |
+
«.ps » |
+: | +gv |
+
«.eps » |
+: | +gv |
+
«.pdf » |
+: | +acroread , xpdf |
+
Les traitements de textes produisent +des formats généralement binaires:
+ +Fichiers Word | +: suffixe | +«.doc » |
+
Fichiers ApplixWare | +: suffixe | +«.aw » |
+
Langage StarOffice | +: suffixe | +«.sdw » |
+
+Pour lancer ApplixWare, tapez asterix
, pour lancer StarOffice, tapez
+soffice
.
+Les traitements de textes créent un fichier dans leur propre format, qui n'est +pas lisible par les autres traitements de textes, à moins que ceux-ci ne +disposent d'un filtre d'importation. Pour que celui-ci fonctionne, il faut que +le fichier importé soit dans un format «propre», c'est-à-dire non corrompu par des +informations annexes. Désactivez donc la «sauvegarde rapide» de Word, qui ne +sauvegarde pas le fichier dans un format Word correct, et insère au passage +des extraits d'autres fichiers sans rapport. +
+ + ++Il existe un format particulier, appelé RTF (Rich Text +Format)6. C'est +un format créé par Microsoft pour servir de pivot entre différents formats de +traitements de textes. Il a en particulier l'avantage de conserver les +accents, d'être compris par tous les traitements de textes. En contrepartie, +il ne conserve pas forcément toutes les informations de mise en page, et n'est +pas toujours compatible avec lui-même. Cependant, nous ne saurions trop vous +conseiller d'envoyer vos documents au format RTF, au lieu d'imposer à votre +correspondant d'avoir telle version de tel traitement de textes. +
+ +Il existe un plusieurs formats de fichiers compressés, +dont: +
+ ++Compresser | +Suffixe | +Décompresser | +
gzip |
+.gz |
+gunzip |
+
compress |
+.Z |
+uncompress |
+
bzip2 |
+.bz2 |
+bunzip2 |
+
+Les archives sont des «paquets» de fichiers rassemblés en un seul fichier: +
+ +«.tar » |
+: | +Archive simple. Désarchiver avec tar xvf . |
+
«.tgz » |
+: | +(ou «.tar.gz »). Archive compressée.
+Désarchiver avec tar zxvf |
+
«.zip » |
+: | +Archive compressée. Se désarchive avec unzip . |
+
Il existe un grand nombre de formats d'images, texte ou
+binaires: XPM, XBM, JPG, GIF, PNG, TGA, BMP, TIFF... Pour visionner une
+image, utilisez le programme xv
. Vous pouvez aussi utiliser le
+logiciel de dessin gimp
, dont le format natif est «.xcf
».
+Les images vectorielles7 ont
+un suffixe «.fig
». On les regarde avec le logiciel de dessin
+xfig
.
+
Il existe différents formats: «.au
»,
+«.wav
», «.mp3
», fichiers pour séquenceur (MIDI), fichier
+modules «.mod
»,
+etc.
+
+Les formats vidéos sont le MPEG (divers suffixes: «.mpe
»,
+«.mpg
», «.mpeg
»), le format AVI («.avi
»), et le
+Quicktime («.mov
», «.qt
».)
+
Fichiers MP3 | +: | +mpg123 |
+
Autres fichiers son | +: | +xplay |
+
Format MPEG | +: | +xplay |
+
Format AVI | +: | +xanim |
+
+Dans cette section, vous trouverez la fin du cours de Thomas sur les +réseaux; ce mois-ci, il présente différents problèmes qui peuvent se produire +sur un réseau informatique. On termine le cours sur Netscape en expliquant +comment télécharger des documents. +
+ + + ++On va clore ce cours avec un exposé des problèmes les plus fréquents sur un +réseau. Lisez au moins le «plantage du serveur NFS», c'est un problème assez +courant chez nous. +
+ ++Bizarrement, tout cet édifice aux proportions bibliques fonctionne la plupart +du temps. Néanmoins, quand une rupture générale de la Force arrive, on peut se +retrouver avec beaucoup de problèmes, tous différents. Voici quelques +spécimens: +
+ + + + Deux routeurs se renvoient des paquets, chacun
+ayant décidé que Le Bon Chemin passe par l'autre. Cela se diagnostique
+avec la commande Unix traceroute
. Solution: maudire Renater
+(le fournisseur d'accès Internet de l'ÉNS, grand spécialiste du tennis de
+table) et attendre que les routeurs oublient d'être stupides.
Les DNS forment une structure hiérarchique qui a
+tendance à s'écrouler d'un coup. Dans ces conditions, tout semble figé, sauf
+si on utilise directement les adresses numériques; mais il est difficile de
+retenir par coeur 4 milliards d'adresses... Le diagnostic: la commande
+host
sur un hôte connu (www.microsoft.com
par exemple)
+bloque et ne répond pas.
+
Votre station est bloquée, des messages
+«NFS server not responding, still trying
» apparaissent. C'est
+typique du serveur NFS (celui qui possède, physiquement, les disques partagés)
+qui a pris des vacances. Il faut attendre le reboot du serveur. NFS étant
+bien fait, cela débloquera les machines sans conséquence funeste pour les
+opérations en cours.
+
NIS, alias les Pages Jaunes, est le +protocole permettant de partager les mots de passe entre les stations. Pour +l'utilisateur final, les conséquences sont semblables à un plantage NFS: il +faut attendre le retour du serveur NIS. Une fois qu'il est revenu, tout +remarche, rien n'a été perdu. +
+ + +Une partie du réseau est à genoux. La plupart des +paquets s'égarent, tout va lentement, c'est horrible. Pas de solution, sinon +espérer que de nouvelles lignes seront bientôt mises en place, pester contre +ces milliers de crétins qui ne pensent qu'à récupérer les dernières photos de +Pamela Anderson, et revenir se connecter à une heure plus adaptée (pour les +États-Unis, la bonne heure est 6 heures du matin: les Américains sont couchés, +les Européens pas encore levés). +
+ + ++Il existe beaucoup d'autres pannes possibles, plus ésotériques. Elles sont la +cause de certaines de ces discussions d'informaticiens, que personne ne +comprend mais qui semblent les amuser follement. +
+ + +Le cours d'Architecture et Systèmes comprend une partie animée par Jacques +Beigbeder, qui décrit, entre autres, le fonctionnement du réseau. +
+ + +
+Les gens motivés se référeront aux RFC (Request For Comments). Ce sont
+les documents de référence; on les trouve là:
+http://www.ietf.org/rfc.html
+
+Le protocole IP est décrit dans la RFC 791. +
+ + ++Thomas Pornin +
+ + ++Le mois dernier, on a vu comment créer des marques-pages. Ce mois-ci, pour +clore cette présentation des fonctionnalités principales de Netscape, on va +voir comment télécharger des documents. Jusqu'ici, j'ai utilisé la version 3 +de Netscape, mais par défaut nous sommes passés à la version 4. J'indique donc +en parallèle les deux versions. +
+ + +Télécharger se dit to download en anglais, et quand on +veut faire pro, on dit «downloader un machin». Ça veut dire récupérer sur sa +machine le fichier que l'on est en train de consulter, et qui se trouve +physiquement sur un disque dur à l'autre bout du monde ou presque. +
+ + ++La page que vous consultez correspond en effet à un ou plusieurs fichiers +(texte, images...). Quand vous vous connectez sur un site, vous demandez au +serveur de vous envoyer telle page, c'est-à-dire tels ou tels fichiers. L'ordinateur +s'exécute et envoie les données qui sont stockées dans un cache* sur votre +machine. Quand on demande à sauvegarder les données, elles sont écrites sur le +disque dur, chez vous. +
+ + + Dans le menu File
de Netscape, vous trouvez
+une entrée Save As
(ou Alt-S
au clavier). Il suffit donc de
+sélectionner Save As
pour récupérer le fichier.
+
+ | ++ | +
Netscape 3 | +Netscape 4 | +
+Netscape 4 fournit une entrée supplémentaire pour récupérer le contenu d'un
+cadre quand on se trouve sur une page avec frames. Pour cela,
+cliquez sur le cadre à télécharger, puis sur Save Frame As
.
+
+Ensuite, une fenêtre apparaît, qui ressemble à celle-ci: +
+ + ++ +
+ + Il y a deux choses importantes dans cette fenêtre. La première, c'est
+le format sous lequel on veut sauvegarder le document. Vous voyez ici
+«Source
». Ça veut dire qu'on va récupérer le fichier source,
+au format HTML, c'est-à-dire encodé pour être une page Web. Ce fichier au
+suffixe .html
pourra être regardé avec un navigateur comme
+Netscape ou Lynx.
+Vous pouvez aussi choisir «Text
» ou «PostScript
». Au format
+texte, vous ne récupérez que le texte, formaté en paragraphes, sans encodage,
+comme un courrier électronique. Ce sera un fichier au suffixe .txt
.
+Vous pouvez modifier à votre guise le HTML et le format texte.
+
+Le format PostScript est le format de fichier spécifique aux imprimantes.
+Vous obtenez un fichier .ps
, que vous pouvez regarder avec
+gv
et imprimer avec lpr
. Vous ne pouvez pas le modifier
+(enfin si, mais il faut le vouloir pour modifier du PostScript à la main!).
+
+Dans le cadre Selection
s'affiche le chemin d'accès du fichier que
+vous allez télécharger. Par défaut, le fichier est placé dans votre répertoire
+d'accueil. Vous pouvez modifier cette ligne pour mettre le fichier dans un
+sous-répertoire; par exemple, pour mettre ce fichier dans mon sous-répertoire
+tuteurs/
, j'écrirais dans le cadre:
+/users/95/litt/robin/tuteurs/hublot3.html
+
Quand une page Web s'affiche, elle est en fait +constituée de plusieurs fichiers: le fichier HTML qui la code, et les fichiers +des images qui ont éventuellement été insérées. À moins de télécharger le +fichier au format PostScript, les images ne sont pas récupérées avec +la page quand vous la sauvegardez chez vous. +
+ + ++Il est cependant possible de récupérer des images. Quand vous cliquez avec le +bouton droit sur une image, ces menus apparaissent (ils peuvent être plus +étoffés si l'image supporte un lien): +
+ ++ + | ++ | +
Netscape 3 | +Netscape 4 | +
+Il suffit de sélectionner «Save (this) Image (as)
» pour récupérer
+l'image elle-même, sans le texte.
+
C'est tout facile de récupérer plein de choses... Et +le principe est le même pour les sons... Donc la correction et la modération +s'imposent, comme le rappelle la charte signée en début d'année: +
+ + + ++ ++Tout utilisateur s'engage à utiliser correctement les ressources mises à sa +disposition: mémoire à ne pas saturer, espace disque, bande passante des +réseaux, imprimantes, etc. (Règlement d'utilisation des moyens informatiques +de l'École normale supérieure, 1ier septembre 1999, article 5.1) +
Comme on l'a vu dans le dernier numéro du Hublot, la place disque est +partagée entre les utilisateurs. Si vous tenez à posséder des séries de photos +intitulées «Pamela» ou «Samantha», ça vous regarde, mais ça n'a rien à faire +sur votre compte. +
+ + ++Il est aussi plus simple de créer un marque-page vers une page intéressante, +plutôt que de récupérer son contenu chez vous, dans la mesure où à l'École +vous disposez d'une connexion permanente. +
+ ++D'autre part, il y a des questions de copyright. Avant de télécharger quelque +chose, vérifiez la nature du document. Certains cours ou articles sur le site +d'universités sont soumis à copyright, l'image des personnages de bandes +dessinées aussi. Le cas échéant, demandez l'autorisation à l'auteur du site +avant de récupérer le résultat de son travail, même pour un usage privé. +Nous ne parlerons pas des fichiers de musique piratée... Relisez les +articles 6.1 à 6.5 de la Charte. +
+ +Le cache est +un espace de stockage où le navigateur garde une copie des pages récemment +visitees, afin d'accélérer leur chargement lors de la consultation suivante +(il suffit alors de vérifier que la page n'a pas changé plutôt que de la +télécharger de nouveau). +
+ ++Il y a en fait deux types de cache: d'une part un cache en mémoire vive, qui +ne conserve les données que durant une session de navigation, et d'autre part +un cache disque (parfois désactivé pour économiser de la place) qui est +conservé d'une session à l'autre. +
Il +existe deux sortes de langages de programmation: les langages compilés et les +langages interprétés. Les langages compilés fonctionnent selon le principe +suivant: le programmeur écrit le code du programme, puis on passe par une +étape de compilation, c'est-à-dire de traduction du code en langage +machine. On dispose alors d'une part du code source du programme, que l'on +peut modifier et recompiler, d'autre part d'un exécutable, illisible par un +humain, mais compréhensible pour l'ordinateur.
++Quand vous achetez un logiciel dans le commerce, vous achetez un exécutable +produit à partir d'un code source, dont vous ne disposez pas. Vous pouvez +utiliser le logiciel, le recopier, mais pas le modifier. Ce n'est pas vrai +pour les logiciels libres.
Un logiciel +libre est un logiciel que l'on peut copier, modifier et distribuer +librement. Le modifier implique de pouvoir disposer du code source du +logiciel, et pas seulement de l'exécutable*. On peut +revendre commercialement un logiciel libre; dans ce cas, c'est un service +que l'on vend (pressage du CD-ROM, documentation, service +après-vente...), et non pas le logiciel lui-même. Un logiciel libre n'est +donc pas obligatoirement gratuit.
+ ++Là-dessus se greffe la notion de copyleft (par opposition à +copyright): en plus d'être libre, le logiciel est sous une licence (telle que +la GPL) qui garantit que les versions dérivées seront également libres. Des +exemples de logiciels libres: pine, mutt, LATEX, +netscape, linux, gimp, xkobo...
Programme +servant à automatiser des tâches répétitives, généralement simple. Principales +caractéristiques: le langage utilisé interprète directement le script, de +manière transparente, sans avoir besoin de passer par un traducteur externe; +les constructions utilisées sont généralement de haut niveau par rapport à un +langage de programmation traditionnel, et collent plus avec la notion de +«faire telle tâche, puis telle autre».
+Un programme lancé dans un terminal peut être en mode texte, auquel cas il +s'affiche dans la fenêtre où il a été lancé. Pour sa mise en page, il utilise +le jeu de caractères disponibles, c'est-à-dire les caractères alphanumériques +et les ponctuations. Il peut être en couleurs ou en noir et blanc. Certains +logiciels en mode texte peuvent s'utiliser avec la souris, possèdent des menus +déroulants, etc. Ils s'utilisent cependant le plus souvent avec le clavier. +Pine est un logiciel de courrier en mode texte.
+ ++Par opposition, un logiciel en mode graphique se lance dans une nouvelle +fenêtre, s'utilise avec la souris, et propose divers moyens graphiques +(fontes, couleurs, icônes) pour son utilisation, comme Netscape. +
+Cette année, les membres de l'Atelier Internet se sont avant tout consacrés à +l'organisation du colloque «comprendre les usages d'Internet», qui s'est tenu +à l'École les 3 et 4 décembre 1999. Cette manifestation a réuni quelques trois +cents experts des sciences humaines et exactes, ainsi que des responsables +d'entreprises, du gouvernement, pour faire le point sur les «usages». Il en +est ressorti, outre un grand nombre de collaborations et de programmes de +recherches, le désir de prolonger nos travaux suivant trois axes: +
+ + ++La convergence pressentie il y a deux ans entre sciences humaines et sciences +exactes nous apparaît aujourd'hui évidente après avoir rencontré à Toronto des +personnes comme:
+ ++Tous sont persuadés que les sciences exactes ont développé des méthodes et des +outils, aujourd'hui suffisamment affinés pour permettre une étude intelligente +de ce qui était encore hier exclu de leur champ d'investigation: le langage, +l'écriture, la pensée. +
+ ++Bon, nous n'allons pas racheter M$ demain! Mais dans quelques mois, nous +lancerons des recherches communes avec des élèves de plusieurs Grandes Écoles +(les normaliens sont bien sûr toujours bienvenus) pour développer tout d'abord +des systèmes d'aide à la navigation sur Internet (visualisation de +l'architecture de sites Web visités), des (petits) moteurs de recherche, des +mesures de la proximité sémantique entre serveurs, tout en prolongeant la +cartographie automatique du Web (lectorat de serveurs, localisation de tous +les serveurs d'une zone donnée, comme le RIPE), et des outils d'analyse +syntaxique (questions posées à un indexeur, analyse de pages Web). +
+ + ++En effet, nous voyons Internet comme un territoire, dont nous ne pouvons +prendre la mesure que si nous l'investissons pleinement: tout comme l'idée +d'un anthropologue qui ne fait pas de terrain se conçoit difficilement (ainsi +que celle de sa neutralité en milieu autochtone), nous ne concevons pas une +analyse des pratiques sociales et intellectuelles d'Internet sans nous +investir en tant qu'auteurs, éditeurs et lecteurs, bref en tant qu'acteurs à +part entière, dans ce nouveau territoire. +
+ ++En attendant, il nous reste à publier les actes du colloque de décembre, ce +qui n'est pas une mince affaire. +
+ + ++Mais nous sommes impressionnés par la façon dont notre réseau national et +international se renforce cette année 2000, par le biais d'échanges solides +avec des acteurs majeurs de l'Internet; ces personnalités hors du commun +naviguent sans encombre entre diverses cultures: économistes, linguistes ou +philosophes, ils manipulent avec aisance les giga-octets et ont une activité +éditoriale de premier plan. Ils redonnent aux termes «information» et «base de +données» leurs lettres de noblesse, puisque l'une et l'autre sont des recueils +de Racine, des cahiers de Valéry, voire des bibliothèques entières, et non pas +des théories «sémiologiquement correctes» qui souvent élèvent au rang de +connaissance des séries télévisuelles ou des publicités crétinisantes. +
+ ++Que dire de plus? Que les amoureux et amoureuses des langues vivantes, +soucieux d'intégrer dans nos dictionnaires des mots comme php3, Java, perl et +Kmel, les passionnés qui voudraient construire eux-mêmes un Littré en ligne, +les aventuriers à la recherche de terrains intellectuels quasi-jamais foulés, +tous peuvent venir nous rejoindre à l'Atelier Internet dès la rentrée +prochaine. +
+ + ++Éric Guichard +
+ + +Entre un NASDAQ hoquetant et une presse spécialisée dithyrambique à défaut +d'être sérieuse, le monde du pingouin est en ébullition. En effet, l'Empire +Maléfique de Redmond tremble sur ses bases, le terrible Bill Gates est poussé +dans ses derniers retranchements par les chevaliers anti-trust, la bataille +finale approche, et elle décidera du sort du monde libre. On n'aurait pas cru, +vu d'ici, que les quelques démêlés d'un délinquant fortuné eussent pu +impliquer autant. Présentons ici les quelques factions qui se disputent le +fameux marché des systèmes d'exploitation, cela permettra de bien illustrer ce +que c'est au juste que ce fameux logiciel libre. +
+ +Rendons à César ce qu'il a dûment OPAté, +commençons par Microsoft. Cette société, ancienne startup des années 70, alors +nommée Traf-o-Data et spécialisée dans la numération des véhicules +individuels, prend son patronyme actuel en 1978. Parmi la dizaine d'associés +chevelus qui composent l'intégralité du personnel de cette société naissante, +un jeune homme probablement brillant, Bill Gates. En ces temps-là, IBM est +bien embêtée: Apple commence à bouffer du marché avec ses nouveaux ordinateurs +(Apple I et Apple II, pas encore le MacIntosh, faut pas rêver, j'évoque des +âges reculés). Les finauds de chez IBM conçoivent un plan machiavélique: +construire une machine pourrie, la lancer sur le marché pour bien jeter la +confusion, et le client hésitant se tournera tout naturellement vers la +tranquille pérennité des ordinateurs chers mais éprouvés d'International +Business Machines. D'où le premier PC. IBM refusera le 68 000, processeur +avancé de Motorola, et choisira Intel, qui fournit le 8086, chimère +monstrueuse, union contre-nature du passé et du futur, un peu comme le serait +un TGV à vapeur. Pour le système d'exploitation, pas question de choisir un +dérivé d'Unix (trop professionnel) ou de CP/M (trop évolutif); Billou arrive +alors avec sous le bras un code d'un pote à lui. Bill a acheté ce code 1 000 +dollars, il le revend pour un million (déjà on voit qu'il est doué). Et +surtout, il ne vend qu'une licence non exclusive, et il se garde le droit de +faire de nouvelles versions et de les vendre lui-même, comme un grand. Ce +code, c'est Ms-Dos. +
+ + ++C'est qu'il est visionnaire, l'ami Gates! Contrairement aux demeurés d'IBM, il +a bien vu ce qui allait se passer: le PC, boosté par son indigence totale en +matière de brevets, est copié, concurrentialisé, guerredesprisé, sur-diffusé, +et enfin conquiert le marché. Et on en est là: 95% des ordinateurs sont des +PC. Et IBM s'est fait enfoncer par Compaq sur le marché des PC, par Sun sur le +marché des stations de travail. Il y a au moins un peu de justice dans cette +affaire. Pendant ce temps, William Gates, IIIe du nom, a vendu diverses +versions de Ms-Dos, et du complément graphique de ce dernier, le bien connu +Windows, qui a connu moult opus, les derniers étant Windows 98 et Windows +2000. +
+ + ++Alors là, maintenant, suivez bien: Bill, c'est le méchant. Il profite +odieusement de sa position monopolistique pour vendre plein de copies de son +Windows, qu'il a truffé de bugs volontairement pour vendre plein de nouvelles +versions, il a fait pression sur les revendeurs10 pour les plier à ses +buts diaboliques de contrôle du monde, il s'est allié avec la mafia, il +soutient le terrorisme mondial, il a vendu son âme au Malin et il mange les +petits enfants. Bon, ok, il est possible que je sacrifie un peu de ma +légendaire objectivité afin de donner un peu d'emphase lyrique au personnage. +Mais quand on s'aventure chez le pingouin, il faut s'y faire, c'est le style +de la maison. Quand on arrive chez la Comtesse, on lui présente ses hommages; +quand on est invité dans l'antre du volatile, on crache sur Billou. C'est +l'usage. +
+ + + +Voyons donc son challenger actuel. En 1991, un +étudiant finlandais, Linus Torvalds, s'achète un PC. Il en est très content. +Mais il aimerait bien savoir comment ça marche. Comme c'est un étudiant, il a +du temps libre; alors il se met à programmer un nouveau système +d'exploitation, juste pour voir. Magie d'un Internet balbutiant, d'autres +oisifs se joignent à ses efforts, et, inconséquents qu'ils sont, décident de +se servir du nouveau joujou pour faire du vrai travail. En quelques mois, +Linux était né (même s'il a failli s'appeler Phreax, en fait). Le pingouin +lui-même sera désigné comme mascotte en 1996, sous l'impulsion du nordique +créateur sus-désigné, qui n'a jamais fourni de raisons sérieuses pour ce choix +pour le moins étrange. Probablement un traumatisme dans sa petite enfance. +
+ + ++Où en est ce Linux, maintenant ? Quelque part entre 2 et 10 millions +d'exemplaires en usage dans la nature. À la grosse louche, 3% du marché +mondial des systèmes d'exploitation sur micro-ordinateurs. C'est peu, face aux +fenêtres bi-millénaires. Mais suffisant pour remuer des capitaux dans un +marché un peu enthousiaste, voire même franchement téméraire, pour tout dire +absolument cinglé et digne de la camisole. Il faut dire que Linux, c'est de +l'informatique, donc c'est aussi une religion, et donc il y a des fanatiques. +Ce sont les Linuxiens. Le Linuxien, il vit pour et par Linux. Il installe +Linux partout où il peut, non pas parce que ça pourrait aider quelqu'un à +bosser (et pourtant, le logiciel du pingouin, il marche plutôt bien, souvent +mieux que les productions de Bill), mais parce que c'est Linux et que Linux +doit être partout, c'est ainsi. Le vrai Linuxien est à la fois attendrissant +et donne une envie irrésistible de taper dessus, c'est un Bisounours hi-tech. +Le Linuxien hait par dessus tout toute forme de production venant de chez +Microsoft, et également tout quidam qui pourrait évoquer, ne serait-ce qu'un +instant, l'idée d'utiliser Windows. Comme quoi rien ne change au cours des +siècles, on est toujours le païen de quelqu'un. +
+ +La secte Linux reconnaît une autorité philosophique supérieure: il +s'agit de GNU. GNU, c'est le mouvement de libération du logiciel. Attention, +c'est très sérieux: le vrai GNUiste peut mordre s'il estime qu'on attaque son +dogme. Le gourou de cette église, c'est Richard M. Stallman; il ressemble à un +hippie qui aurait découvert les bienfaits du courant électrique. C'est lui qui +a inventé le logiciel libre*, dont Linux est un parfait exemple et Windows pas +du tout (parce que Billou fait du logiciel propriétaire; bouh le méchant +Billou). L'idée est simplissime, lumineuse même: un logiciel, ça coûte très +cher à produire et rien du tout à reproduire, alors on va le donner, ce +logiciel, et se faire du fric sur le support technique. Mais, puisque RMS +était investi d'une mission divine, il ne suffisait pas de donner le logiciel, +il fallait encore convertir les égarés. Tel le virus de la variole, la +General Public License arrive à la rescousse: remarquable mécano de +juriste, cette licence d'utilisation d'un logiciel libre stipule qu'une fois +qu'on a mis le doigt dedans, on se fait arracher le bras avec. En gros, si on +intègre un morceau de logiciel GPL dans un autre logiciel, le tout devient +GPL. +
+ + ++Les cieux s'ouvrirent, la terre trembla, le logiciel libre était né. C'est +dingue comme une idée peut être à la fois aussi américaine (distribution +gratuite, pour bien s'emparer du marché) et aussi socialiste (les moyens de +production doivent être gratuits). RMS créa son temple, la Free Software +Fundation, afin de promouvoir le but grandiose de la libération planétaire, +que dis-je, galactique, des hackers. +
+ + ++Le projet de RMS, à l'origine (en 1983), c'était de refaire le monde. Pour un +informatheux, le monde, c'est l'informatique, bien sûr. Donc, RMS avait +constaté qu'il n'y avait pas de système d'exploitation à sa convenance. Alors +il fallait qu'il en fasse un qui serait mieux que tous les autres. Il a donc +commencé à écrire plein d'outils pratiques, notamment ce qu'il faut pour +développer un système d'exploitation11. +Ces outils ont été promptement adoptés et absorbés par le pingouin, et +maintenant, le prototype du système GNU (dénommé Hurd) est en train de +rejoindre le placard, comme tant d'autres projets géniaux avant lui. +
+ ++Un hérétique, Eric S. Raymond, a fondé son propre culte réformiste. Lui, il +utilise le terme «Open-Source», qui veut dire à peu près autant de chose que +«Free Software», c'est-à-dire tout et rien. ESR est plus fourbe que RMS, et, +d'ailleurs, ses idées plaisent plus que celles de RMS dans le milieu des +entreprises (bien que ce soient les mêmes idées, au fond; comme quoi, tout est +affaire de marketing). +
+ + +Pour parfaire ce tableau somptueux, évoquons BSD: dérivé du +travail d'une équipe de l'université de Berkeley, le code BSD se pose comme +une sorte de concurrent à la fois de GNU et de Linux, même si des échanges ont +lieu dans les deux sens. Bien évidemment, les BSDistes ne se privent pas pour +dire que leur code à eux il est bien plus libre que le code GNU. Les GNU-men +rétorquent qu'eux défendent bien plus la Cause que BSD. Querelle de clocher, +finalement. Le code BSD n'a pas le côté viral de la GPL, sinon c'est pareil. +
+ + ++Les systèmes de BSD (car il y en a plusieurs, il ne faudrait quand même pas +imaginer que les schismes n'existent pas) sont souvent décrits comme étant +beaucoup plus professionnels et performants que ceux du pingouin finlandais. +Ce qui est objectivement avéré, c'est qu'ils sont beaucoup plus austères. +C'est vrai que ça fait vraiment professionnel, parce que ça n'a vraiment +aucune chance de conquérir le grand public, un système d'exploitation qui +glorifie le mode texte*. +
+ + + +Quelle est la finalité de tout cela? La justice? L'équité? Le bonheur des +utilisateurs? Non, bien sûr, rien de tout cela. La charité, ça ne remue plus +les foules. Le Bien, le Mal, c'est très suranné. La vraie raison de toute +cette histoire, le moteur, le nerf, c'est le pognon. Le marché du libre est +juteux, dégoulinant même, c'est une terre de miel et de lait, et est arrosé de +fleuves dans lesquels un quelconque Midas a dû plonger les mains. +
+ + ++Et pourquoi cet engouement? L'humanité n'a-t-elle pas vécu plusieurs +millénaires sans logiciel libre (car sans logiciel du tout), et pas si mal que +ça quand on regarde de près? Et bien, ce n'est pas important. Que +l'ordinateur soit indispensable ou superflu, là n'est pas la question. La +seule Vérité, c'est que tout le monde en veut un, et puis c'est tout. Robert +Gropagu, agriculteur dans la Creuse, sait désormais que sans informatique ses +navets ne pousseront jamais, aussi il s'y met, et il consomme. Et comme il se +pique d'être un grand défenseur des libertés individuelles, il fait dans le +logiciel libre, parce que même quand on est paysan on a le droit de faire +smart. +
+ +Le logiciel libre est le symbole de l'esprit +révolutionnaire retrouvé, la Liberté montant à l'assaut des remparts +obscurantistes du logiciel propriétaire, tendance bourgeois. Alors ça fait +bien, de défendre de grands idéaux de formats libres, de logiciels de qualité +développés pour le simple plaisir de les voir tourner, et tout ça dans une +grand messe financière. Car la Liberté guidant le Peuple, c'était il y +a peu sur tous les bons billets de 100 francs. On réconcilie l'humanitaire et +le mercantile, c'est presque l'incarnation du bonheur prolétaire communiste. +Lénine en serait tout ému. +
+ + ++On aurait tort de prendre le marché des «nouvelles technologies» comme preuve +de l'ampleur du phénomène, parce que là-bas ils sont tous fous. Mais +il est vrai que tout ce qui est estampillé «logiciel libre» connaît une +inflation big-banguesque, tellement que la start-up moyenne a pour unique +destin et but d'être introduite en bourse, moment magique où elle rembourse +moult fois l'investissement en quelques jours. En fait, ladite start-up est +souvent vide de sens, et la vente d'actions est en soi une arnaque; citons par +exemple VA-Linux, produit de spéculation pure puisque la société fondée pour +l'occasion n'a pas l'ombre d'un début de commencement d'activité. Il n'empêche +qu'elle a multiplié par huit son cours le premier jour (mais le dit cours est +retombé plus bas que terre depuis, une sorte d'intrusion de la réalité dans +cette belle histoire). +
+ + ++Certes, une légère «correction», comme ils disent, a eu lieu, et un léger coup +de balai subséquent. Et Microsoft a des soucis et risque le démantèlement. +Mais il ne faut pas se leurrer: le fantasme de la conquête de l'Ouest, la ruée +vers l'or, existe encore, et on va continuer à voir fleurir des affiches dans +le métro, vantant des sites web avec beaucoup trop de k et de oo dans leur +nom. D'ailleurs, pour en revenir sur le cas de Microsoft: c'est le délire chez +les Linuxiens, en ce moment. Ça y est, la bête est morte! Bien évidemment, +ils oublient que ça ne va rien changer, Windows continuera d'être partout, le +format des documents Word ne sera pas plus spécifié, et puis, même si Word est +finalement porté sous Linux (hypothèse très probable, en fait: Linux, c'est un +marché aussi important que MacIntosh, maintenant), ça n'empêchera pas Word de +planter. Il est très significatif, dans ces conditions, que le démantèlement +soit prononcé non pas pour cause de fumisterie flagrante des programmeurs de +chez Microsoft, mais en vertu de la loi anti-trust, qui, en l'occurrence, +préfère avoir deux entreprises faisant du code propriétaire qu'une seule. +
+ ++Alors, cette folie du logiciel psychotrope, à qui la faute? J'en vois déjà +qui cherchent des coupables. Cessez votre quête, la réponse est évidente: les +coupables, c'est vous. Oui, vous, lecteurs qui pensez être aussi purs que +l'agneau qui vient de naître et dont les défenses immunitaires ont déjà envoyé +ad Patrem des milliers de microbes innocents. Car c'est vous qui vous +émerveillez devant tous les gadgets qui clignotent, les révolutions des +informations autoroutières, les arbres de Noël virtuels. Panem and +circenses, comme toujours. Et c'est pour vous contenter, vous donner ce +divertissement que vous réclamez, que les banquiers allongent 20 plaques au +premier glandu qui arrive avec une idée en bois (mais c'est une idée +«Internet»). Quand on voit un premier ministre faire des discours sur un +thème, de toutes façons, il faut bien se dire que le thème en question est +démagogiquement porteur +
+ + +C'est là qu'on rigole: les utilisateurs vont +souffrir. Et pourquoi? Mais c'est qu'ils n'intéressent personne! Oui, je sais, +toutes les pubs vous disent que l'informatique, c'est pensé pour +l'utilisateur, pour qu'il puisse s'instruire, s'informer et bosser. Et bien +c'est du pipeau! Et des deux côtés encore bien. +
+ + ++D'abord, du côté des vendeurs: ce qu'ils cherchent, c'est de la chair à canon. +Le grand public, ah, la belle affaire. Non, tous les linuxiens vous le diront +(sans honte et sans fard, c'est assez étonnant pour que ce soit noté), la +cible, c'est le décideur. Le décideur, c'est le gros bourgeois cigarifiant +qui, dans la boîte, décide ce qui sera acheté et ce qui ne le sera pas. Et +lui, le brave homme, il n'utilise pas d'ordinateur (il n'est pas fou). Le +logiciel libre, peu lui chaut. Pour ravir son coeur, il faut lui en mettre +plein la vue; pour cela, des gadgets (lui aussi, il aime ça), et surtout des +troupes. +
+ + ++C'est l'effet pervers du pingouin: se répandre tel le virus, demander à être +installé partout, recruter, entraîner, former des hordes de linuxiens à +envoyer dans la bataille. Qu'importe si Linux n'est pas plus adapté aux +besoins (même fictifs) des utilisateurs que Windows. Non, la Cause est tout ce +qui compte. Le-logiciel-libre, à-mort-le-code-propriétaire. Un mantra vidé de +son sens et scandé selon la grande tradition du martellement idéologique. +D'aucuns auraient invoqué Krishna; mais Linux est un meilleur dieu de nos +jours. Chez Microsoft, ils font pareil, de toutes façons, alors les Linuxiens +(et assimilés) se sentent pardonnés par avance. +
+ + ++Maintenant, les clients: certes, ils se font estamper, mais ils l'ont bien +cherché. Après tout, les pubs leur disent bien qu'un gros ordinateur, ça sert +à s'instruire, à créer et à travailler. Personne ne prétend jamais que ça sert +à jouer! Et, franchement, à quoi ça rime de pleurer sang et eau à cause du +prix d'une licence Windows, quand on allonge sans rechigner 400 balles pour +chaque version de Tomb Raider? Hypocrisie générale. Il n'y a pas +d'autre mot. +
+ ++Les pigeons de l'affaire, ce sont les pauvres gars qui veulent simplement +travailler sur ce damné ordinateur qui n'est même pas le leur. Ils regrettent +la simplicité du temps où on utilisait des machines à écrire, et où on ne +multipliait pas les impressions, faute de photocopieuse (qui restait encore à +inventer). +
+ + ++Mais ceux là sont condamnés, parce que l'époque ne leur est pas favorable. +Faut dire, ah là là, y'a plus de saison, ma bonne dame. +
+ + ++Thomas Pornin +
+ +http://docinsa.insa-lyon.fr/refbibli/
>.http://www.eleves.ens.fr:8080/home/radenne/Docs/images/Images.ps
.emacs
(l'éditeur de textes), gnuchess
(le jeu
+d'échecs), gimp
(logiciel de dessin et de retouche d'images)...+
+ +Voici le premier numéro du Hublot pour l'année 2000--2001. De +nouvelles rubriques remplacent celles de l'an dernier, avec des articles sur +LATEX, Internet, le forum des élèves, la sécurité +informatique, et un grand cours à suivre sur les ordinateurs.
+ +http://www.eleves.ens.fr/tuteurs/
/tuteurs/docs/hublot/
Nous sommes toujours à votre disposition pour toutes questions et
+suggestions: tuteurs@clipper
. Vous pouvez
+aussi mettre un mot dans le casier de Marie-Lan Nguyen. Enfin, n'oubliez pas
+que quand vous tapez qui
, les tuteurs ont leur nom souligné:
+n'hésitez pas à nous solliciter!
Dans cette rubrique, on parle de l'utilisation pratique des machines +Unix et de LATEX. De numéro en numéro, nous indiquerons +diverses commandes Unix, qui avaient été abordées de façon détaillée l'an +dernier, et que l'on se contentera de présenter. La section «Config conscrits» +explique comment se servir de l'interface graphique des stations. Enfin, la +rubrique LATEX va passer en revue divers problèmes +classiques: insérer des figures, macros, réglages, etc.
+ +Dans ce premier numéro de l'année, on revoit les commandes élémentaires +abordées dans les numéros de l'an dernier. Toutes les options possibles des +commandes ne sont pas indiquées; pour cela, reportez-vous soit aux anciens +numéros du Hublot, soit au site des tuteurs.
+ + pot
: affiche le menu du pot. Il existe aussi
+les options -jourdan
, hier
, demain
+(Hublot, n° 6, avril 2000; unix/divers.html
).
+qui
: affiche le plan des salles informatiques.
+Il existe aussi les options -infi
, -46
,
+-jourdan
, etc (Hublot, n° 1, novembre 1999; unix/communiquer.html
).
+
anniversaire
: affiche la liste des gens dont
+c'est l'anniversaire aujourd'hui (Hublot, n° 3, janvier 2000; unix/communiquer.html
).
+
finger
login: donne des
+informations sur l'utilisateur dont on indique le nom de login
+(Hublot, n° 5, mars 2000; unix/communiquer.html
).
+
date
: affiche la date et l'heure exactes.
+(Hublot, n° 2, décembre 1999; unix/divers.html
).
+
+cal
: affiche le calendrier du mois en cours
+(Hublot, n° 2, décembre 1999; unix/divers.html
).
+
+hachette
mot: permet d'interroger un
+dictionnaire français (Hublot, n° 4, février 2000; unix/divers.html
).
+
+webster
mot: permet d'interroger un
+dictionnaire anglais unilingue (Hublot, n° 4, février 2000; unix/divers.html
).
Le mois prochain, on présentera les commandes de base pour manipuler +fichiers et répertoires sous Unix.
+ + +Sous Windows et MacOS, il +existe une seule interface*, identique sur tous les ordinateurs utilisant ce +système. Les utilisateurs peuvent ensuite la personnaliser, dans la limite de +ce que le fabricant a prévu.
+ + ++Sous Unix, il n'existe pas d'interface standard, commune à tous les systèmes, +même si chaque fabricant propose une interface par défaut*. Chaque utilisateur +est libre de choisir ses couleurs, le nombre et l'emplacement des fenêtres, le +contenu de ses menus, les réactions de la souris, les raccourcis claviers, +etc. Une «configuration» est l'ensemble de ces choix techniques.
+ +Comme il est en fait assez difficile de programmer soi-même son interface, +certains gourous ont créé une configuration spéciale que l'on installe sur les +comptes des conscrits: c'est la config conscrits. Elle comporte des choix +graphiques (taille et nombre des fenêtres, boutons disponibles, menus...) et +logiciels (logiciels lancés par défaut*, activation d'options particulières, +et un tas d'autres choses que vous ne voulez pas savoir).
+ + ++Éric Brunet est à l'origine de la config conscrits (rentrée 1997). La mise à +jour de la rentrée 2000 a été faite par Olivier Verzelen. Elle inclut un menu +de fond d'écran enrichi (accessible par un bouton «Menu»), un bouton +«Fichiers» pour gérer à la souris les fichiers, une fenêtre récapitulant +l'actualité de forum, etc.
+ +Il y a deux possibilités: vous n'avez pas du +tout la config conscrits, ou vous avez une version antérieure à la rentrée +2000.
+ + +configuration
dans une fenêtre et suivez les instructions du
+programme. La config conscrits sera installée sur votre compte, et vous
+pourrez l'utiliser la prochaine fois que vous vous loguerez.
+bireme ~ $" configuration --get
+Les
+modifications prendront effet à la session suivante.
+Attention: cette commande installe toute la config
+conscrits. Pour savoir comment en récupérer une partie seulement, allez voir
+sur notre site: unix/config/2002/configure.html
+
Le mois prochain, on parlera des fenêtres: différents types, et +utilisation des boutons.
+ + +Ce mois-ci, on présente brièvement le principe et les avantages de +LATEX, ainsi que des généralités bibliographiques: que +lire sur LATEX, sur le Web ou sur papier.
+ + + ++LATEX1 est un logiciel qui permet de réaliser des documents +de haute qualité typographique, c'est-à-dire couramment des documents +«sérieux»: mémoires de maîtrise, thèses, lettres, CV. etc. Les matheux +l'utilisent abondamment parce qu'il est très fort pour taper des formules. Les +littéraires l'apprécient de plus en plus pour sa qualité et sa puissance, une +fois surmonté le premier contact parfois rebutant...
+ +Dans son principe, LATEX est très différent des +logiciels de traitement de textes grand public comme Word. Un traitement de +textes permet à la fois la saisie du texte, et sa mise en page: vous voyez +directement le résultat (c'est ce qu'on appelle un système WYSIWYG: What +you see is what you get).
+ + ++Au contraire, LATEX est basé sur un balisage du texte: +au milieu du texte proprement dit, vous insérez des commandes qui sont autant +d'indications de mise en page. Ce que vous tapez n'est pas directement mis en +page, il faut passer par une étape intermédiaire de compilation. +C'est très déroutant au début, car on n'a pas l'habitude de travailler avec +deux versions du document, une «brute», et une mise en page.
+ +À quoi bon se compliquer la vie? Un traitement de textes est bien plus +facile à utiliser et à prendre en main, surtout quand il s'agit de faire un CV +de deux pages, ou un petit document de cinq pages. C'est en fait sur la longue +durée (et le grand nombre de pages) que LATEX révèle sa +puissance: gestion intégrale et sans erreur de la mise en page, qualité du +résultat, gestion de tous les espacements, numérotations automatisées, +facilité à créer des macros, simplicité de saisie.
+ + ++On ajoutera à ça le fait que travailler avec LATEX +signifie en pratique travailler sur les machines Unix2, qui sont sauvegardées, +qu'il y a bien plus de personnes compétentes et disponibles pour vous aider +avec LATEX, et que ce logiciel (comme les systèmes Unix +en général) ignore les virus...
+ + +
+Ce tableau récapitule les commandes à utiliser pour faire du
+LATEX (pour les commandes LATEX
+proprement dites, reportez-vous aux lectures indiquées ci-dessous). On a mis
+nedit
comme éditeur, mais vous pouvez prendre n'importe lequel.
+
Écrire | nedit
+bofichier.tex |
Compiler | latex bofichier.tex |
Voir | xdvi
+bofichier.dvi |
Imprimer | dvips bofichier.dvi |
+Vous pouvez aussi utiliser le logiciel xlatex
, qui réunit chacune
+de ces fonctions en une seule interface (cliquer sur la plume pour lancer
+l'éditeur, sur l'oeil pour afficher le DVI, etc). Attention,
+xlatex
ne tourne pas sur les PC Linux.
Il existe de nombreux ouvrages et textes en ligne consacrés à +LATEX. Voici les meilleurs:
+ + +ftp://ftp.lip6.fr/pub/TeX/CTAN/info/lshort/french/flshort-3.20.dvi
+http://www.grappa.univ-lille3.fr/FAQ-LaTeX/
+/tuteurs/logiciels/latex/
Le mois prochain, on parlera de la compilation d'un document en +LATEX: principe, messages d'erreurs, fichiers annexes. +
+ + + +-- Nicolas George, Émilia Robin
+ +Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on va expliquer comment on +«écrit» sur les machines Unix, c'est-à-dire ce que sont les éditeurs de +textes. Le mois prochain, on parlera des traitements de textes disponibles sur +les stations, et de l'interaction avec Word.
+ + +Vous avez sans doute +l'habitude d'utiliser un traitement de textes: ces logiciels permettent à la +fois d'écrire du texte (le modifier, le remplacer, etc), et de faire leur mise +en page (gras, listes, etc).
+ + ++Il existe aussi des traitements de textes sous Unix3, mais leur usage est en +fait assez marginal. On préfère utiliser des éditeurs de textes. Ces +logiciels servent à écrire le texte, uniquement, sans mise en page +particulière. C'est ce qui les différencie des traitements de textes. On se +sert d'un éditeur de textes dès qu'on a besoin d'écrire du texte: taper un +cours, noter des idées au vol, écrire un courrier, faire une page Web...
+ + ++Dans le cas des documents dits «sérieux» (rapports, etc), l'étape de mise en +page se fait avec LATEX.
+ + + Pour lancer un éditeur,
+vous tapez son nom dans une fenêtre, suivi du nom du fichier que vous voulez
+éditer. Par exemple, vous utilisez nedit
pour écrire le fichier
+exercice
:
+bireme ~ $ nedit exercice
+Si le +fichier n'existe pas, il sera créé, si le fichier existe, il est ouvert et +vous pouvez continuer à écrire du texte dedans.
+ + ++Il existe un certain nombre d'éditeurs de textes, qui se distinguent par leur +apparence, leur complexité, leurs performances. Pour ne pas rentrer dans les +guerres de religion entre partisans de tel ou tel éditeur, nous en resterons +ici à des critères esthétiques pour différencier les éditeurs.
+ + +La +première grande différence est celle du «mode texte» et du «mode graphique»: +
+ + +pine
ou de forum
. Les logiciels en mode texte ont généralement un aspect plus austère que les +logiciels en mode graphique; ils s'utilisent le plus souvent avec le clavier. +Leur utilisation est donc moins aisée dans un premier temps. En contre-partie, +ils sont souvent bien plus rapides (à fonctionnalités identiques).
+ + ++Surtout, ce sont les seuls à pouvoir s'utiliser à distance: quand vous vous +connectez par telnet depuis un Mac de l'Infi ou une machine aux États-Unis, +vous pouvez lancer ces programmes et les utiliser comme si vous étiez à +l'École; ce n'est pas possible avec un logiciel en mode graphique.
+ + Il existe un certain nombre d'éditeurs en mode texte: pico
,
+nano
, joe
, vim
, et d'autres en mode
+graphique, plus conviviaux: nedit
, kedit
.
+emacs
et xemacs
sont capables de se lancer en mode
+texte ou en mode graphique, selon les possibilités. xemacs
est
+beaucoup plus joli, et aussi beaucoup plus lourd, qu'emacs
.
La seconde différence +concerne la mise en couleur du texte. Quand on écrit en +LATEX ou en HTML, il y a un certain nombre de commandes +spécifiques, qui ne sont pas du texte proprement dit, mais des commandes de +mise en page. La colorisation syntaxique consiste à mettre ces +commandes en valeur avec des couleurs, pour faciliter la frappe du texte4. C'est dix +fois plus confortable...
+ + +
+Les éditeurs identifient le type de syntaxe en fonction du suffixe du fichier
+(par exemple, un fichier LATEX a un suffixe
+.tex
). N'oubliez donc pas le suffixe dans le nom du fichier.
+Les éditeurs en couleur sont vim
, xemacs
et
+nedit
(si on active l'option).
Tout dépend de vous,
+de vos goûts, de vos habitudes, si vous aimez la souris ou pas, si vous aimez
+la couleur ou pas. Essayez plusieurs éditeurs, et faites votre choix...
+Les éditeurs sont compatibles entre eux: commencer à écrire
+avec joe
n'impose pas de continuer avec joe
. Vous
+pouvez changer en cours de route sans problème, le texte restera identique. Il
+n'y a pas de problèmes de compatibilité entre éditeurs (contrairement aux
+traitements de textes).
+Nous présentons ici deux éditeurs simples: pico
, l'éditeur
+intégré de pine
, et nedit
, un éditeur graphique
+facile à utiliser.
pico
C'est l'éditeur
+intégré de pine
, et l'un des plus simples que l'on puisse
+imaginer; c'est aussi l'éditeur par défaut* de la config conscrits.
+pico
est un éditeur en mode texte, et en noir et blanc. Les
+commandes qui suivent peuvent bien sûr servir aussi dans pine
,
+sauf ^X
(qui sert à envoyer le courrier). On rappelle que
+^X
se lit «Control-X» et signifie «appuyer sur la touche Control
+en même temps que la touche x
».
+^O | WriteOut | +Sauver le texte |
^X | Exit | Sauver et quitter | +
^J | Justify | Reformater le paragraphe |
^K | Cut | Détruire la ligne | +
^U | Uncut | Restaurer la ligne. Si on a détruit plusieurs lignes à la suite, +elles sont toutes restaurées d'un seul coup. |
^W | Word | Chercher un mot | +
nedit
C'est un éditeur +graphique, qui permet d'utiliser la souris (menus déroulants, placement du +curseur, copier-coller, etc). Il existe également des raccourcis clavier. +Voici les deux fonctions les plus importantes:
+ +Sauver | Save dans
+le menu File |
Sauver et +quitter | Exit dans le menu
+File |
+Les autres fonctionnalités se déduisent aisément des menus
+(Search
, Undo
...). Le copier-coller
+se fait de la manière suivante:
Cut
et Copy
, sélectionnez celui qui vous
+intéresse; Paste
.nedit
ne met pas automatiquement la
+couleur. Pour activer la colorisation syntaxique, sélectionnez Syntax
+highlight
dans le menu Preferences
.
+Cette rubrique consacrée à Internet aborde deux grands sujets: d'une part +elle présentera au fil de mois les divers aspects d'Internet, en commençant ce +mois-ci par des généralités (vous pouvez d'ores et déjà vous reporter à notre +site, rubrique Internet). D'autre part, elle expliquera progressivement +comment lire le forum des élèves; ce mois-ci, on essaye de vous montrer que ce +n'est pas qu'un «truc pour informaticiens», et que vous avez tout à gagner à y +jeter régulièrement un coup d'oeil...
+ + +L'Internet n'est pas géré par une entreprise centralisée, comme le +réseau Minitel (Transpac) de France Télécom. C'est une interconnection de +divers réseaux, certains à grande distance, gérés en général par des +compagnies téléphoniques, d'autres locaux... comme le réseau interne de +l'ENS. Le point commun de ces réseaux est qu'ils utilisent tous le même +protocole de communication*, appelé TCP/IP. +Divers services ont été bâtis dessus, qui sont:
+ + + + ++Tous ces services correspondent à des logiciels spécifiques, que nous +citerons. On insistera aussi sur le principe de fonctionnement, les règles de +sécurité et les codes de bonne conduite en usage.
+ +Le mois prochain, on parlera du courrier électronique.
+ + +-- David Monniaux
+ ++Forum est un système de discussions interne à l'ENS: c'est un lieu de +bavardages entre élèves (et anciens élèves, magistériens, pensionnaires +étrangers). On y parle de choses sérieuses et moins sérieuses: de +l'informatique aux problèmes de société, de l'orthographe aux questions de +scolarité, de la théorie de l'Évolution aux derniers ragots entre normaliens. +
+ + + +Forum est +d'abord une source d'informations: par exemple, les messages collectifs y sont +redirigés6, +les annonces de séminaires, de spectacles, de soutenances de thèse, de +soirées, y ont des groupes dédiés.
+ + ++D'autre part, c'est un moyen efficace d'obtenir des renseignements sur nombre +de sujets, informatiques mais pas seulement (ah, les cours de droit de +Marie-Lan...).
+ + +
+C'est également un lieu de discussion sur divers sujets polémiques. Parmi les
+discussions enflammées de cette année, citons «Le calvinisme et la
+prédestination» (conti religion
), «Différence entre gauche et
+droite, libéralisme et progressisme» (conti politique
),
+«L'Académie fait-elle autorité sur le français» (conti
+orthographe
), etc. Belle occasion de confronter des points de
+vue...
Les discussions +de forum se déroulent dans des groupes de discussion, appelés, pour des +raisons historiques, contis (continuum, continua).
+ + +
+Un conti est censé regrouper les messages tournant autour d'un sujet donné.
+Comme forum en possède beaucoup, il sont organisés suivant une hiérarchie
+thématique (ce sera l'objet du prochain numéro). Quand vous lancez forum pour
+la première fois, vous êtes abonnés à trois contis: bienvenue
,
+annonces
(lequel regroupe les annonces importantes) et
+syst.annonces
. Cela signifie que forum vous proposera de lire les
+nouveaux messages de ces groupes au fur et à mesure de leur apparition:
bienvenue
contient dix messages, qui présentent forum.
+annonces
contient les annonces de l'administration. C'est
+aussi là que sont redirigés les courriers collectifs. syst.annonces
contient les annonces concernant les moyens
+informatiques (fermeture et occupation des salles, nouveaux logiciels,
+etc). Quand vous
+vous loguez7,
+vous avez une petite fenêtre appelée Forum
, qui vous indique
+l'état de votre lecture de forum:
+ +
+ +
+Ici, il est indiqué que le groupe de discussion
+divers.traductions
a été créé depuis la dernière fois que vous
+avez lu forum; vous avez 10 messages non lus dans bienvenue
+(ce sont des messages d'aide), et 1 message dans annonces
.
+
+Il se peut qu'il y ait un tas d'autres messages dans d'autres groupes, mais +tant que vous n'y êtes pas abonnés, vous ne les lisez pas automatiquement en +lançant forum, et ces messages ne sont pas annoncés par ce petit logiciel. +Enfin, quand vous lisez forum, vous ne lisez pas les messages vieux de plus +d'une semaine.
+ + Pour lancer forum, il suffit de cliquer sur «Lire forum
», ou
+encore sur l'icône Forum (boutons en haut à gauche), ou bien de taper
+forum
dans une fenêtre.
+Vous vous retrouvez dans un groupe de discussion auquel vous êtes abonné; +appuyez sur la barre d'espace pour lire le message suivant. Vous passez +automatiquement d'un conti où tous les messages sont lus au conti suivant. +
+ + ++Quand il n'y a plus rien à lire dans les contis auxquels vous êtes abonnés, +forum affiche «Rien de nouveau».
+ + +Pour quitter, il suffit de taper q
.
Lancer | Icône «Forum» ou taper
+forum |
Lire | Barre d'espace |
Quitter | Taper q |
+
Outre les Gentils Tuteurs, vous avez diverses +façons de vous renseigner sur le forum des élèves:
+ + +internet/forum/
+?
») contient
+beaucoup de choses, mais est parfois un peu difficile. La section 8 de
+l'aide est la plus lisible. bienvenue
, dont cette série d'articles s'inspire.
+Le mois prochain, on présentera les différents groupes de discussion.
+ + +-- David Madore, Émilia Robin
+ ++Ce cours va s'étendre sur toute l'année. Il va passer en revue les +différentes composantes d'un ordinateur, écran, mémoire, clavier, disques, +etc, pour expliquer à quoi ils servent, quelles sont leurs caractéristiques, à +quoi correspondant les sigles cabalistiques qui leur sont associés, etc. Il +est destiné à des non-spécialistes, qui ont envie d'en savoir un peu plus sur +cette chose qui encombre leur bureau...
+ + ++L'ordinateur, sujet de tant de fantasmes chez les auteurs de science-fiction +des années 1950, est désormais une bestiole mieux connue, maîtrisée, +domestiquée autant que le serait un chat. Tout d'abord, disons-le tout net: +l'ordinateur est partout, et on ne peut plus vivre en l'an 2000 sans savoir ce +que c'est.
+ + ++Oh, bien sûr, on peut subsister sans cette grosse boîte métallique reliée à +une sorte de télévision. Mais avez-vous déjà utilisé un magnétoscope? Conduit +une voiture récente? Payé vos courses avec une carte bleue? Regardé l'heure +sur une montre à quartz? Dans tous ces gestes qui semblent simples, vous avez +fait tourner un ordinateur. Un discret, un insidieux, un fourbe, certes. Mais +un ordinateur quand même.
+ + ++Aussi, cette entité étant aussi répandue que les cafards dans les égoûts, +mieux vaut se renseigner sur cette infection électrotechnique de notre belle +société. Nous allons donc nous approcher de la bête, l'amadouer, puis +l'assommer, lui ouvrir les tripes et regarder dedans.
+ ++En première approche, l'ordinateur est une grosse boîte en métal et plastique; +sur l'avant, des fentes, des lampes, quelques boutons. Sur l'arrière, d'autres +fentes, des prises électriques de formats divers, un fouillis de câbles. Au +bout des câbles, on trouve divers autres appareils: une sorte de télévision +(qu'on appelle écran, ou moniteur), une plaque avec une centaine de touches +couvertes de glyphes (le clavier), un petit boîtier rondouillard tenu en +laisse (ah, ça, c'est le «mulot»!). Des gros câbles relient l'écran et la +boîte centrale à des prises murales: apparemment, ce truc marche à +l'électricité.
+ + +
+On appuie sur le plus gros des boutons de la face avant de la grosse boîte
+(car un sidérant instinct nous apprend que c'est probablement la commande
+d'allumage): gagné, quelque chose bouge. La boîte vrombit, des lumières
+clignotent, de l'air chaud sort par les fentes à l'arrière; soit la bête
+respire, soit il y a un ventilateur dedans. Des lumières vertes s'allument sur
+le clavier. L'écran s'agite, se couvre d'indications cabalistiques; certains
+mots semblent écrits en une langue humaine. Ça bouge. Au bout de quelques
+minutes, l'écran se vide à peu près, et ne contient plus qu'une obscure
+référence, et l'énigmatique mot login
. Plus rien ne semble
+bouger, sauf le ventilateur.
+On touche à la souris: un petit rectangle gris apparaît. Il reproduit sur
+l'écran les mouvements du mulot. Amusant. Mais ça ne semble pas très utile. On
+essaie le clavier; on appuie sur une touche: le glyphe correspondant apparaît
+à l'écran. On appuie sur d'autres touches: d'autres glyphes s'inscrivent à la
+suite. Magique! On rigole bien cinq minutes avec ça. Mais la machine s'entête
+à ne rien faire, sinon déclarer login incorrect
.
On ne progresse pas ainsi; l'heure est venue de passer à une méthode plus +intrusive. On maîtrise l'animal en l'affamant (on débranche la prise +électrique), puis on le ceinture et on l'ouvre avec un tournevis.
+ + ++À l'intérieur, un spectacle grandiôôse apparaît: un enchevêtrement de fils, +des plaques bariolées de traits en couleur, des pustules noires rectangulaires +partout. En regardant de plus près, on commence à entrevoir une structure. On +retrouve une boîte qui doit contenir un des ventilateurs; elle est reliée au +gros bouton d'allumage, et le courant électrique arrive dedans. Au fond de la +boîte, une grande plaque en plastique, sur laquelle sont collés des petits +boîtiers de plastique noirs; d'autres plaques de plastique, semblables mais +plus petites, sont plantées dedans. Au centre se dresse une ziggourat de +tubulures et de petits ventilateurs; elle est encore chaude: c'est le cerveau +du bestiau, certainement.
+ + ++À côté, il y a quelques boîtes annexes, grisâtres, reliées par des nappes de +fils à la plaque centrale, et à la boîte du ventilateur. Elles sont +différentes entre elles, leur usage est obscur; certaines débordent sur la +face avant et correspondent aux fentes étranges qu'on avait précédemment +observées.
+ +Un quidam passe par là, et nous parle. Une chance! C'est un habitué des +lieux. Il nous annonce être le propriétaire de l'animal que nous avons +découpé, et ce meurtre ne l'enchante guère. Mais, après une rapide inspection +du corps, il dit que nous n'avons pas définitivement endommagé la bête. Afin +de calmer son esprit, nous expliquons notre démarche, strictement +scientifique. Alors il maugrée un peu, semble pester contre un asile de fous +où on laisserait rentrer n'importe qui (le Ciel nous préserve d'y aller +nous-mêmes), puis se décide à nous guider dans ce monde merveilleux de +l'informatique.
+ + ++Notre Guide prend la parole d'un ton solennel, et entonne le premier vers du +chant qui changera à jamais notre connaissance du monde: «Au commencement +était le Verbe...»
+ + +-- Thomas Pornin
+ + ++Cette rubrique va traiter de sécurité informatique, sous différents +aspects: protection des données personnelles, sécurité sur le Web, cryptage, +etc. Ce sont des questions importantes, qui ne concernent pas seulement les +informaticiens, ou ceux qui voyagent beaucoup. Même le «simple utilisateur» +qui ne se connecte que pour lire son courrier, éventuellement parfois à +distance, est concerné par la sécurité informatique. Ne faites donc pas +l'impasse sur cette section... Ce mois-ci, on vous parle des mots de +passe.
+ + ++Un mot de passe sert à vous identifier avant de vous donner accès à des +ressources ou à des données. Un certain nombre de règles, qui peuvent paraître +contraignantes ou arbitraires, surtout quand on n'est pas un accro des +ordinateurs, régissent son usage.
+ + + ++D'une part, en signant la charte au début de l'année, vous vous êtes engagés à +la vigilance et à la confidentialité en ce qui concerne votre mot de passe, et +votre droit d'accéder au système informatique:
+ + + ++ +2-1. L'utilisation des ressources informatiques de l'École +est soumise à autorisation préalable. Cette autorisation est concrétisée par +l'ouverture d'un compte.
+ ++4-1. Tout utilisateur doit choisir des mots de passe sûrs respectant les +recommandations de l'administrateur-système. Ces mots de passe doivent être +gardés secrets, ne doivent pas être écrits et en aucun cas être communiqués à +des tiers. À la demande des administrateurs-système, ils doivent être +changés. +
+ + ++4-7. Les utilisateurs doivent s'abstenir de toute tentative de falsification +d'identité.
Mais au delà de ces considérations juridiques, comme dit la RATP, «La +sécurité est l'affaire de tous». Si vous communiquez votre mot de passe, si +vous ne vous déloguez pas, si vous n'utilisez pas les logiciels sécurisés que +l'on vous détaillera au fil de l'année, vous pouvez vous faire pirater, et un +pirate peut faire ce qu'il veut avec la machine, volontairement ou pas.
+ ++Par exemple, écraser par erreur un beau mémoire de maîtrise avec des +programmes qui lui serviront à pirater d'autres machines.
+ + ++Par exemple, envoyer des courriers électroniques embarrassants.
+ ++Par exemple, stocker des logiciels ou des fichiers multimédia piratés qui +risquent d'attirer des ennuis tant du point de vue de la saturation des +ressources de la machine (on ne peut plus travailler) que du point de vue +légal.
+ + ++Par exemple, s'en servir comme «camp de base» pour pirater d'autres machines, +ce qui est toujours gênant lorsqu'on doit convaincre le reste du monde que non +ce n'est pas moi qui ai essayé de pirater le FBI.
+ +On reprend ici un article paru dans le numéro 1 du +Hublot, en novembre 1999.
+ ++Tout d'abord, sachez que seuls les 8 premiers caractères de votre mot de +passe sont pris en compte. Ensuite, il y a des mots de passe à éviter +absolument:
+ + +12345678
ou qwertyui
.Un bon mot de passe doit contenir des majuscules et des minuscules, des +chiffres, des lettres, des ponctuations. Ne mettez pas de caractères accentués +ou bizarres dans votre mot de passe, vous pourriez avoir des problèmes quand +vous passez d'un système à l'autre.
+ + ++Votre mot de passe ne doit pas non plus être trop difficile, sans quoi vous +mettriez trop de temps à le taper, et quelqu'un pourrait le surprendre.
+ + ++Sachez que le SPI teste les mots de passe des utilisateurs et prévient ceux +qui en ont un trop simple. En outre, par sécurité, il désactive les mots de +passe de ceux qui ne se sont pas logués depuis plus de trois mois. Dans ce +cas, il faut se rendre physiquement au SPI pour se faire rouvrir son compte. +
+ + +Il peut vous arriver +d'oublier votre mot de passe. Dans ce cas, il faut aller voir le SPI (passage +bleu, au rez-de-chaussée du bâtiment Rataud) qui vous en donnera un nouveau. +
+ + +C'est un sigle anglais +(Frequently Asked Questions, questions fréquemment posées»), adapté +en français comme «Foire Aux Questions». Comme son nom l'indique, cela désigne +une liste de questions courantes à propos d'un sujet donné.
+ ++Quand vous arrivez quelque part sur Internet (un groupe de discussion, une +page Web, etc), il faut commencer par lire la FAQ: dans 90% des cas, quelqu'un +d'autre a déjà rencontré le même problème que vous, et la réponse existe +déjà...
L'interface est ce qui +permet la communication entre l'ordinateur et l'utilisateur. En pratique, +c'est «ce à quoi ressemble votre écran quand vous vous connectez». +
Se dit d'une option, d'un +comportement, etc, qui est choisi tant que l'utilisateur n'a pas fait +explicitement mention du voeu contraire. Ces choix ont été faits par +l'administrateur (dans le cas de la config conscrits, par des gourous).
+ +
+«Par défaut, le logiciel de courrier de la config conscrits est
+pine
» (c'est lui qui est lancé quand on clique sur «Courrier»).
+«Par défaut, la config conscrits lance une seule grande fenêtre». «Par défaut,
+la fiche annuaire figure aussi dans l'annuaire électronique».
Dialecte commun à des +machines pour permettre leur communication.
+Le Hublot est le journal des tuteurs
+informatiques de l'ENS. Il paraît chaque mois à 300 exemplaires. Il est
+également disponible sur le Web:
+http://www.eleves.ens.fr/tuteurs/docs/hublot/
.
+
+Rédaction: Émilia Robin.
+ ++Ont collaboré à ce numéro: Denis Auroux, Nicolas George, David Madore, David +Monniaux, Thomas Pornin.
+ ++Merci à Laurent Bercot, Hélène Duquennoy, Annick Grandemange, Catherine Le +Bihan, Vincent Nesme, Jérôme Plût pour leurs relectures.
+xforumco
+pour afficher cette petite fenêtre.+
+ ++Tout d'abord, merci à tous les conscrits qui ont répondu au sondage sur le +stage de début d'année; leurs suggestions sont très utiles pour le +Hublot... Les résultats complets seront affichés sous peu, avec nos +commentaires.
+ ++En attendant, un point important mérite réponse dès maintenant : certains +conscrits nous ont dit, dans le sondage de rentrée, qu'on était «lourds» à +force de mettre en garde à propos du piratage : «on n'est pas concernés, +on sait à peine se servir des machines, comment voulez-vous qu'on aille +pirater...». Certes. Mais vous pouvez toujours vous faire pirater... +C'est pour l'éviter autant que possible que nous vous conseillons de lire +attentivement la rubrique «Sécurité».
+ ++Pour suivre vos conseils, nous avons essayé de renvoyer le plus précisément +possible aux documentations déjà existantes, que vous avez parfois du mal à +dénicher. Le reste est classique :
+ +
+Nous sommes toujours à votre disposition pour toutes questions et
+suggestions : tuteurs@clipper
. Vous pouvez
+aussi mettre un mot dans le casier de Marie-Lan Nguyen. Enfin, n'oubliez pas
+que quand vous tapez qui
, les tuteurs ont leur nom
+souligné : n'hésitez pas à nous solliciter!
+Dans cette rubrique, on parle de l'utilisation pratique des machines +Unix et de LATEX. Ce mois-ci, on présente les commandes pour manipuler les +répertoires. La section «Config conscrits» explique comment se servir du +système de fenêtrage. Enfin, la rubrique LATEX parle de la compilation d'un +document. +
+ ++Ce mois-ci, on présente les commandes qui servent à se repérer sur son compte +(afficher le contenu, créer des répertoires, se déplacer). On suppose connue +la différence entre répertoires (ou dossiers dans le monde Mac et Windows) et +fichiers. Pour plus de détails, consultez le numéro 3 du Hublot ou les +cours des tuteurs indiqués pour chaque commande. +
+ + +ls
ls
(list) affiche le contenu d'un
+répertoire. Si vous tapez ls
tout court, vous obtenez une liste des
+fichiers dans le répertoire courant (c'est-à-dire là où vous vous trouvez). Avec la
+config conscrits, les sous-répertoires seront en bleu, et suivis d'un
+/
.
+
+Vous pouvez indiquer à ls
un ou plusieurs noms de répertoires à
+afficher. Dans ces noms, vous pouvez utiliser le caractère *
pour
+remplacer une partie (*
veut dire en gros «n'importe quelle suite de
+lettres»).
+
+Vous pouvez donner diverses options à ls
; en particulier, -l
+fait afficher une liste détaillée, avec date de modification, taille, droits,
+etc... -a
indique à ls
que vous voulez également les
+fichiers dont le nom commence par un point, qu'il vous épargne en général. Ce
+sont des fichiers de configuration*, qu'il ne faut surtout pas effacer.
+
+Vous trouverez sur notre site des cours
+(cours/unix/cours/unix/repertoires.html#ls
) et des exercices corrigés
+(exos/ls.html
) consacrés à ls
. Pour l'utilisation de l'étoile
+et des jokers, consultez le numéro 2 du Hublot
+(hublot/hublot2/hublot2.html#usage
).
+
cd
cd
(change directory) permet de se
+déplacer dans les répertoires. Si vous tapez cd répertoire
, vous
+entrez dans le répertoire indiqué.
+
+On peut utiliser l'abréviation ~
, pour son répertoire personnel, ainsi
+que ~
nom pour celui de la personne dont le login est «nom».
+
+Le répertoire ..
représente celui immédiatement au dessus du
+répertoire dans lequel vous vous trouvez (répertoire père). Avec cd
+tout court, vous revenez directement dans votre répertoire personnel.
+
+Vous trouverez sur notre site des cours (cours/unix/repertoires.html#cd
)
+et des exercices corrigés (exos/mkdir_cd.html
) consacrés à cd
.
+
mkdir
et rmdir
mkdir
(make
+directory) permet de créer un nouveau répertoire vide. Il suffit de la faire
+suivre du nom du répertoire à créer (par exemple : mkdir DEA
).
+
+La commande rmdir
(remove directory) fait l'action inverse :
+elle supprime un répertoire. Il suffit là encore de lui indiquer le nom du
+répertoire. Attention toutefois : rmdir
ne peut supprimer que les
+répertoires vides.
+
+Vous trouverez sur notre site des cours
+(cours/unix/repertoires.html#mkdir
) et des exercices corrigés
+(exos/mkdir_cd.html
) consacrés à ces deux commandes.
+
ls |
+Liste des fichiers du répertoire actuel | +
ls ~ tuteurs |
+Liste des fichiers chez les tuteurs | +
ls -l *.tex |
+Liste détaillée de tous les fichiers LATEX | +
ls -a |
+Liste de vraiment tous les fichiers | +
mkdir DEA |
+Créer un répertoire «DEA/ » |
+
rmdir DEA |
+Supprimer le répertoire DEA/ |
+
cd |
+Retour dans le répertoire-maison | +
cd DEA |
+Entrer dans le répertoire DEA |
+
cd .. |
+Monter d'un niveau dans les répertoires | +
+Le mois prochain, on présentera les commandes qui servent à effacer, déplacer +et renommer les fichiers. +
+ + +-- Nicolas George, Émilia Robin
+ + ++Les fenêtres de la config conscrits ont un aspect et une utilisation un peu +différente de ce que vous connaissez sous Windows ou sous MacOS. Pour vous +aider à vous y retrouver, on présente ici le rôle des différents boutons. +Dans toute cette présentation, on suppose que vous cliquez avec le bouton +gauche de la souris. +
+ + +(tiret en relief) Il donne accès à un menu, avec les +fonctions suivantes : Iconifier, Devant, Derrière, Déplacer, Dimensionner. Il y +a aussi «Fermer», dont nous allons reparler dans un instant. +
(tiret en creux) Il rend la fenêtre sticky. La
+fenêtre ainsi «collée» restera affichée, quel que soit l'écran virtuel dans
+lequel vous vous trouvez; pour savoir ce que c'est, lisez
+premiere-fois/config.html#desk
et faites les exercices sur les écrans
+virtuels (exos/interface.html#virtuels
).
+
(avec le nom de la fenêtre écrit dedans) Cliquez dessus +et faites glisser la souris pour déplacer la fenêtre. +
(rond en relief) Il sert à iconifier la fenêtre, c'est-à-dire +suspendre son affichage; donc la fenêtre disparaît. Mais attention, le +programme tourne toujours, vous ne l'avez pas quitté. +
++Dans la «colonne des tâches» (rectangles verts), le nom de la fenêtre apparaît +désormais en gris et entre parenthèses, et non plus en jaune. Cliquez sur le +bouton correspondant pour faire réapparaître la fenêtre. +
(carré en relief) Donner à la fenêtre sa taille +maximale. C'est une maximisation verticale, et c'est normal : la plupart +des programmes (logiciels de courrier, éditeurs, forum...) sont prévus pour un +affichage 80 colonnes, ce qui est la taille standard des fenêtres. Si vous +élargissez la fenêtre, ça ne change rien à l'affichage en largeur. Mais vous +pouvez augmenter la taille verticale. +
+
+Ceci n'est pas vrai pour les logiciels graphiques : vous pouvez élargir
+Netscape, gimp
(retouche d'images), xv
(affichage d'images),
+xdvi
, par exemple.
Chaque programme possède une commande
+spécifique pour terminer : «Q» pour pine
,
+mutt
, forum
, xv
,
+xdvi
; Exit
ou Quit
dans le menu
+File
pour la plupart des logiciels graphiques (Netscape,
+(x)emacs
, gv
, etc). Le bouton «Fermer» ne doit
+vous servir que si vraiment vous ne parvenez pas à fermer la fenêtre (cas
+de certaines fenêtres lancées par Netscape par exemple).
+Vous aurez remarqué, d'ailleurs, que quand vous cliquez sur «Fermer», une +petite fenêtre se déroule pour vous demander si vous voulez vraiment faire +cela : ce n'est pas pour le plaisir de vous retarder, mais pour vous rappeler, +vraiment, de ne pas le faire... +
+ + +
+Ce n'est pas une coquetterie : certains logiciels, comme pine
,
+supportent mal qu'on les quitte abusivement, sans passer par la procédure
+normale, qui leur laisse le temps de tout ranger (détruire vraiment les
+courriers par exemple). Certains logiciels, comme Netscape, continuent à
+tourner. Vous vous en rendez compte quand, la fois suivante, une petite
+fenêtre apparaît pour vous dire qu'un Netscape tourne toujours en votre nom
+sur telle machine.
+
Vous trouverez un tableau récapitulatif de la façon dont on quitte
+les logiciels courants sur la page «Les trois choses à ne jamais faire»
+(premiere-fois/jamais.html
). Le tableau présentant chaque
+élément du menu du fond d'écran indique également comment quitter chaque
+logiciel (premiere-fois/menu.html
). D'autre part, le message
+d'erreur de Netscape a été abordé dans le numéro 4 du Hublot
+(hublot/hublot4/hublot4.html#netscape
). Enfin, vous
+trouverez sur notre site une présentation de l'interface des conscrits
+(premiere-fois/config.html
), ainsi que des exercices
+corrigés portant sur les fenêtres, les menus, etc
+(exos/interface.html
).
+Le mois prochain, on parlera du copier-coller. +
+ +! Undefined control sequence. |
+La commande que vous tentez d'utiliser n'existe pas. Le plus souvent une +faute de frappe. | +
! LaTeX Error : Missing \begin{document}. |
+Vous avez mis des caractères imprimables avant le début du document
+proprement dit (indiqué par \begin{document} ). |
+
! Paragraph ended before \cmd was complete. |
+Il y a un marque de paragraphe (une ligne blanche)dans
+l'argument de la commande \cmd , ce qui signifie probablement que vous
+avez oublié un } à la fin. |
+
! Too many }'s. |
+Il y a un } qui ne correspond à aucun { . |
+
! LaTeX Error : \begin{quote} on input line 7
++ ended by \end{cite}. |
+Les types d'environnement ouverts et fermés ne se correspondent pas. Vous
+avez probablement oublié de mettre le \end qui va avec un
+\begin , ou bien vous avez changé une extrémité et pas l'autre. |
+
! LaTeX Error : Something's wrong--perhaps
++ a missing \item. |
+C'est un message un peu générique dès qu'il y a des problèmes dans des +environnements structurés, comme des listes ou des tableaux. Bonne chance. | +
Table 1 : Les messages +d'erreur courants de LATEX
+ + +
+Ce mois-ci, nous allons étudier les problèmes liés à la compilation,
+c'est à dire à la transformation du document source LATEX en un fichier
+typographié DVI. On suppose ici que vous savez déjà rédiger un document
+source. Pour les bases de LATEX, nous vous renvoyons aux ouvrages indiqués
+dans le dernier numéro du Hublot, ainsi qu'à notre site
+(cours/latex/latex.html
).
+
Si votre fichier source (appelons le
+bofichier.tex
) est prêt, vous pouvez demander que LATEX calcule la
+mise en page avec la commande :
+
+chaland ~ $ latex bofichier.tex
+
+
+Avec cette ligne, vous demandez au programme latex
+d'interpréter votre fichier. Il va le lire ligne à ligne, interpréter les
+commandes de mise en page, et créer un fichier qui contient le résultat
+de la compilation. Si tout se passe bien, LATEX
+affiche quelque chose qui ressemble à ça :
+This is TeX, Version 3.14159 (C version 6.1) +MLTeX v2.2 enabled +(bofichier.tex +LaTeX2e <1997/06/01> +(/usr/local/lib/texmf/tex/latex/base/article.cls +Document Class : article 1997/06/16 v1.3v Standard + LaTeX document class +(/usr/local/lib/texmf/tex/latex/base/size11.clo)) +(/usr/local/lib/texmf/tex/latex/babel/babel.sty +(/usr/local/lib/texmf/tex/latex/babel/babel.def +(/usr/local/lib/texmf/tex/latex/babel/switch.def)) +(/usr/local/lib/texmf/tex/latex/babel/frenchb.ldf)) +(/usr/local/lib/texmf/tex/latex/base/inputenc.sty beta test version +(/usr/local/lib/texmf/tex/latex/base/latin1.def)) +(/usr/local/lib/texmf/tex/latex/base/fontenc.sty +(/usr/local/lib/texmf/tex/latex/base/t1enc.def)) +No file bofichier.aux. +[1] (bofichier.aux) ) +Output written on bofichier.dvi (1 page, 412 bytes). +Transcript written on bofichier.log. ++ +
Les premières lignes expliquent de quelle version de
+LATEX il s'agit. Ensuite, les lignes
+/usr/local/...
indiquent quels fichiers de base et quels
+packages* sont chargés.
+Les deux dernières lignes sont les plus intéressantes pour nous : le résultat
+(output) de la compilation se trouve dans le fichier
+bofichier.dvi
, et fait une page. Vous pouvez regarder le DVI avec le
+logiciel xdvi
:
+
+chaland ~ $ xdvi fichier.dvi &
+
+
+L'utilisation de xdvi
est exposée sur le site des tuteurs
+(logiciels/latex/xdvi.html
).
+
Il y a deux types de «mise en garde» de +LATEX lors d'une compilation : les erreurs, qui interrompent la compilation, +et les avertissements (warnings), qui ne gênent pas la compilation. +On va d'abord s'intéresser aux erreurs, car elles bloquent tout. Quand ça +arrive, LATEX signale l'erreur et son emplacement; la compilation s'arrête, +avec un point d'interrogation en début de ligne. +
+ + + ++(...) +! Undefined control sequence. +l.15 Du texte... \emhp + {C'est important}. +? ++
Vous pouvez d'abord essayer de passer outre et de continuer la compilation, en +tapant sur Entrée. Si vous tentez d'ignorer les erreurs, ça vous permettra +souvent de voir la suite de votre document (et de faire les corrections en une +seule fois), mais il se peut qu'une erreur ignorée entraîne en cascade une +flopée d'autres. +
+ + +
+Vous pouvez aussi interrompre la compilation : tapez x
(exit)
+ou q
(quit), suivis d'Entrée. Il est aussi utile de taper
+h
(help) pour demander à LATEX davantage de précisions sur
+l'erreur. Dans tous les cas, il va falloir corriger les erreurs signalées.
+
LATEX n'est pas toujours très explicite dans +ses messages d'erreur, c'est le moins qu'on puisse dire. Le +tableau 1 indique comment décrypter les +plus courants. +
+ + + +Les avertissements ne gênent pas la compilation, +mais ils signalent que la mise en page risque d'être ratée par endroits. +
+ + ++Les plus courants sont les overfull hboxes ou les underfull +hboxes (horizontal box). La ligne est considérée comme une boîte qui +dépasse de la marge fixée. En fait, le moteur typographique de LATEX n'a +pas trouvé de manière satisfaisante de couper les mots d'un paragraphes, et +mord un peu sur la marge, ou au contraire n'y arrive pas tout à fait. Il vous +indique le bout de texte incriminé, avec toutes les possibilités de césure. +Dans le cas d'une overfull hbox, il précise aussi de combien ça dépasse +(en points, soit 1/72 pouces, environ un tiers de millimètre). +
+ +
+Le plus souvent, ce sont les mots accentués qui posent un problème, car
+LATEX ne sait pas très bien couper. Vous pouvez l'aider en ajoutant aux
+endroits adéquats la séquence \-
, qui indique un point de césure
+possible; par exemple : or\-di\-nateur
.
+
+Une cause classique de underfull hbox, ce sont les \\
+abusifs, pour changer de paragraphe (alors qu'il suffit de laisser une ligne
+blanche). Cette commande ne sert qu'à l'intérieur d'environnements
+spécifiques, comme tabular
(tableaux), array
(matrices),
+verse
(poèmes), etc.
+
+Il existe aussi des overfull et underfull vboxes («v» pour +vertical) qui signifient que la mise en page des paragraphes sur la page n'est +pas tout à fait satisfaisante. Dans le cas de textes sans trop de fioritures, +c'est nettement plus rare que les autres. +
+ + +Les toutes dernières lignes des messages +d'erreur indiquent précisément l'endroit où on se trouve : +
+ + ++! Undefined control sequence. +l.15 Du texte... \emhp + {C'est important}. +
L'erreur s'est produite à la ligne 15. +
+ +
+Pour les overfull hboxes, une option de classe très utile est l'option
+draft
(«brouillon» en anglais). Cela vous met un trait noir épais
+dans le DVI aux endroits où des boîtes dépassent (n'oubliez pas de l'ôter
+avant l'impression finale!). Pour l'utiliser :
+\documentclass[draft]{article}
+
LATEX crée en fait plusieurs fichiers lors de
+la compilation : le .dvi
contient le résultat graphique, les
+.aux
et .log
contiennent des informations annexes utiles à
+LATEX. En particulier, les lignes affichées lors de la compilation se
+trouvent dans le fichier .log
.
+
+Lors que vous faites une table des matières, LATEX génère un fichier
+.toc
(table of contents); c'est la même chose avec les tables
+des figures (.lof
: list of figures) et les «tables de tables»
+(.lot
: list of tables). D'autres utilisations (BiBTeX,
+Makeindex) génèrent encore d'autres fichiers (.bbl
, .idx
,
+.ind
...).
+
+Le mois prochain, on parlera des packages de LATEX : qu'est-ce que +c'est, quels sont les plus courants et à quoi servent-ils. +
+ + +-- Nicolas George, Émilia Robin
+ + ++Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on va parler des traitements de +textes disponibles sur les stations, et de l'interaction avec Word. +
+ + + ++Le traitement de textes est l'«ensemble des opérations qui permettent de +saisir, mettre en forme, modifier, stocker et imprimer des documents», et le +«logiciel permettant d'effectuer ces opérations» (dictionnaire Hachette). En +anglais ça se dit word processor, en allemand +Textverarbeiterung, en espagnol procesador de textos. +
+ + ++Il en existe plusieurs, qui, selon les cas, tournent sur différentes +plate-formes, ou non : +
+ ++ | Windows | +MacOS | +Unix | +
ApplixWare | +? | +? | +Oui | +
StarOffice | +Oui | +Oui | +Oui | +
Word | +Oui | +Oui | +Non | +
WordPerfect1 | +Oui | +Oui | +Oui | +
+Il existe également Axene, Koffice (la suite bureautique de l'interface +KDE*), +AbiWord. Ceux-là tournent sous Unix. +
+ + +Une suite bureautique est un logiciel intégrant +différents outils de bureautique (traitement de textes, tableur, etc). L'un +des concepts fondamentaux en est les liens dynamiques entre +applications : par exemple, les modifications effectuées sur une feuille de +calcul peuvent se répercuter sur le graphique affiché par le traitement de +texte, par une sorte de «copier-coller» permanent. L'interface similaire et +le partage de certains modules (vérification de l'orthographe, entre autres) +ont contribué au succès commercial de ces suites. +
+ + ++La plus célèbre est le pack Office de Microsoft, avec Word, Excel, Powerpoint +et Access. +
+ + ++Le traitement de textes le plus courant en France est Word. Aux États-Unis, +c'est plutôt WordPerfect, et en Allemagne, StarOffice. +
+ ++Deux traitements de textes sont installés sur les machines Unix, ApplixWare et +StarOffice. ApplixWare est le plus léger, et il est facile à prendre en main. +On vous indique les commandes pour lancer ces logiciels, mais vous pouvez +aussi les retrouver dans le menu de fond d'écran (conscrits 2000). +
+ + + + Il se lance
+avec la commande asterix
. Un lanceur apparaît, avec cinq boutons.
+Pour le traitement de textes, cliquez sur le bouton tout à gauche. Asterix
+crée chez vous un répertoire appelé axhome/
, dans lequel il rangera
+les nouveaux fichiers.
+
+Pour ouvrir un fichier Word, sélectionnez Import
dans le menu
+File
, et choisissez le fichier à ouvrir dans la fenêtre qui s'ouvre;
+le piège diabolique est que Open
ne sert à ouvrir que les fichiers au
+format ApplixWare.
+
+ApplixWare connaît divers formats, dont le HTML, le RTF, divers formats texte, +WordPerfect (jusque WordPerfect 7) et Word (jusque Word 97). Mais il ne +connaît que des formats propres : un format à moitié corrompu pour cause +de «sauvegarde rapide» est illisible... et vous ne pourrez pas ouvrir +correctement le document. +
+ +
+Asterix sait également «exporter» un fichier dans un autre format que le sien;
+pour cela, utilisez la commande Export
dans le menu File
.
+Les fichiers créés seront par défaut dans le répertoire axhome/
.
+
C'est ce qu'on appelle une usine à gaz... On le lance avec
+la commande soffice
. La première fois que vous le lancez, il installe
+chez vous un répertoire Office51/
, qui contient environ 3 Mo de
+choses apparemment indispensables... Il vous demande de confirmer un certain
+nombre de choses, ne remplissez rien et dites «OK» partout. Une fois que tout
+est installé, le logiciel se ferme. Relancez-le pour commencer à travailler.
+
+StarOffice est un logiciel très gros, qui consomme beaucoup de ressources +(processeur et mémoire). Choississez donc une bonne machine : les Sun Ultra, +mais certainement pas les Sparc 4 ou 5. Pour les reconnaître, c'est facile : +c'est écrit dessus...
+Une fois lancé, ça ressemble beaucoup à Microsoft Office. Tout se fait à la
+souris, avec des fonctionnalités comparables. Des études expérimentales
+montrent que StarOffice sait afficher des fichiers Excel et des fichiers
+PowerPoint. Il s'en sort bien avec les formats Word divers, y compris
+corrompus. Les fichiers créés seront placés par défaut dans
+Office51/work/
.
+
Les fichiers Word ont un suffixe .doc
. Quand vous voulez
+en regarder un, commencez par essayer avec ApplixWare, beaucoup moins
+lourd que StarOffice. Si le résultat ne vous satisfait pas (rendu
+incorrect, format non reconnu ou non accepté, etc), essayez avec
+StarOffice.
Soit par paresse, soit par ignorance, vos +correspondants vous envoient le plus souvent des formats Word-n : 95, +97, ou telle version pour tel système. Ça vous arrive aussi... Et c'est Mal. +
+ ++Ne confondez pas l'information et ce qui la véhicule : quand vous communiquez +un document à quelqu'un, c'est pour qu'il prenne connaissance de son contenu, +pas pour se voir obliger de racheter un logiciel pour avoir la même version +que vous. Votre correspondant est libre de choisir le logiciel qui lui +convient le mieux, pour des raisons d'ergonomie, de rapidité, de confort ou +autres, dont il est seul juge. Vous n'avez pas à lui imposer votre +logiciel, en envoyant un fichier que seul votre logiciel peut relire. +Et ce n'est pas parce que votre logiciel est le plus répandu dans +votre pays que c'est le cas ailleurs... +
+ ++De fait, les versions de Word sont conçues pour être globalement, mais +pas totalement compatibles les unes avec les autres. Les échanges de +version à version, et de système à système marchent en gros, mais pas tout à +fait. Les filtres (pour permettre à WordPerfect de relire du Word 97 par +exemple) ne sont pas fiables à 100%, et pas seulement pour des raisons de +difficulté de programmation; c'est aussi un choix des sociétés, pour lier les +gens à leur format. +
+ + ++En pratique, pour être sûr de pouvoir relire les fichiers écrits dans une +version plus récente, vous devez donc racheter régulièrement le logiciel, et +posséder le même logiciel que vos correspondants. +
+ ++Il y a un autre problème, plus grave qu'une question d'économies et de rachats +périodiques : vos documents sont sauvés et transmis dans un format que seul +Microsoft connaît. Il n'existe pas de document public, accessible à n'importe +qui, qui explique comment on reconstitue le contenu et la mise en page d'un +document à partir du fichier lui-même; pourtant, expliquer comment le fichier +est codé ne révèle pas pour autant comment fonctionne Word, et ses secrets de +fabrication... +
+ + ++Les nouvelles versions de Word relisent les fichiers anciens, globalement... +Souvent, les utilisateurs passent un certain temps à transformer leurs +fichiers d'un format à l'autre, pour «être à jour». Mais en fait, rien ne +prouve que Word 2010 sera capable de relire vos données. Et ce n'est pas un +problème technique, c'est un choix délibéré de Microsoft. C'est là toute la +problématique des formats propriétaires* par +opposition aux formats libres*, +ou en tout cas documentés. Ce n'est d'ailleurs pas propre à Microsoft. +
+ ++Tout ceci a pour but de vous faire réfléchir sur la nécessité de choisir des +formats que tout le monde peut relire, y compris dans vos actes courants, +comme communiquer un CV ou une fiche de lecture. +
+ + +Word possède une fonctionnalité de «sauvegarde +rapide», qui pose deux problèmes : +
+ + +Pour ces deux raisons, il vaut mieux désactiver l'option de sauvegarde +rapide, qui cause plus de problèmes qu'elle ne gagne de temps.
+ + +C'est un format créé par Microsoft, +documenté3, pour servir de +pivot entre différents formats de traitements de textes. Il a en particulier +l'avantage de conserver les accents, d'être compris par tous les traitements +de textes. En contrepartie, il ne conserve pas forcément toutes les +informations de mise en page, et n'est pas toujours compatible avec lui-même +d'une version à l'autre. +
+ + ++Cependant, nous ne saurions trop vous conseiller d'envoyer vos documents au +format RTF, qu'il pourra relire quel que soit son logiciel, qui ne posera pas +de problème d'accents, et qui sera bien plus économique en termes de place : +soit un fichier Word, sans mise en page complexe, avec juste du texte et +quelques formules de maths. Il fait 162 Ko. Une fois en RTF, il n'en fait plus +que 46. Une fois en texte simple, il est réduit à 26 Ko (mais c'est aussi que +les formules ont disparu). +
+ + ++Quand il s'agit de transmettre ça par le réseau, cela devient une question de +politesse envers votre correspondant, dont la connexion n'est pas +nécessairement rapide. +
+ + +Vous rencontrerez deux autres formats +courants, le PDF (Portable document format) le PostScript (plus courant +dans le monde Unix). Le PS et le PDF ont été inventés par la société Adobe. Le +PostScript est en fait le langage des imprimantes. +
+ + +
+Ces deux décrivent la mise en page, et les logiciels qui les affichent sont
+gratuits. Ce sont Acrobat Reader pour le PDF (acroread
) et
+GhostScript (gv
) pour le PS.
+
+Leur caractéristique est de pouvoir diffuser un texte sans qu'il soit +modifiable. C'est vrai pour le PostScript (sauf s'il est écrit à la main...). +On peut modifier un fichier PDF, à condition d'acheter le logiciel ad +hoc (Adobe Acrobat Editor). +
+ ++Ce mois-ci, on présente le courrier électronique : vous savez déjà vous +en servir, mais vous ne savez peut-être pas où trouver les renseignements qui +vous manquent... Dans la rubrique «Forum», on détaille les groupes de +discussion (ou «contis») qui existent. +
+ + La plupart des élèves utilisent pine
, montré en
+début d'année et lors des stages. Il a l'avantage d'être très répandu et
+d'usage assez intuitif. Pour ceux que cela intéresse, pine
a été
+traduit en latin (pour les commandes usuelles). Pour une documentation,
+reportez-vous à internet/courrier/mail-pine.html
.
+
+Signalons l'existence de mutt
(à notre avis bien mieux) : il est en
+couleurs, classe les messages en fonction des discussions (enfilade de
+messages se répondant), est plus simple dans la mesure où il gère moins
+d'écrans intermédiaires. Pour l'utiliser, consultez notre site :
+internet/courrier/mail-mutt.html
.
+
Il existe un «bon usage» sur Internet, appelé la +Netiquette; entre autres choses : +
+ + +hublot/hublot2/hublot2.html#netiquette
.
+
+Vous trouverez une présentation de la Netiquette à l'adresse suivante :
+http://www.usenet-fr.net/fr.usenet.reponses/usenet/netiquette.html
+
Il est possible de joindre un ou plusieurs fichiers au
+courrier proprement dit : images, fichiers divers. C'est ce qu'on appelle des
+attachements. On nous demande souvent comment sauvegarder les attachements
+avec Pine; la réponse se trouve sur notre site :
+internet/courrier/mail-pine.html#attachments
+
+Dans forum, les discussions se passent dans des groupes de discussion, appelés +conti (un continuum, des continua), classés thématiquement. Ce mois-ci, on va +présenter les contis existants. Ceux-ci forment une hiérarchie thématique +dont le détail doit beaucoup au hasard des demandes de création et n'est pas +toujours aussi systématique qu'on le voudrait. +
+ + +
+Les noms des contis sont constitués d'éléments séparés par des points (par
+exemple, ens.forum.sciences.biologie
); dans tout ce qui suit, on omet
+systématiquement le ens.forum
du début. Voici donc une présentation
+détaillée des contis existants. Pour lire un conti précis, il suffit de taper
+forum
suivi du nom court du conti; par exemple, pour lire le conti
+ens.forum.loisirs.cinema
:
+
+chaland ~ $ forum cinema
+
+Que faut-il lire? Les contis annonces
et syst.annonces
sont
+indispensables pour vous tenir au courant des annonces adressées à tout le
+monde, et des informations concernant les moyens informatiques ---coupures,
+salles, etc.
+
+Il faut connaître l'existence de annonces.petites-annonces
pour
+annoncer la vente de votre frigo ou la perte de votre stylo. Sinon, une bonne
+partie des questions adressées à tuteurs auraient plutôt leur place dans
+informatique.html
(écrire les pages Web),
+informatique.materiel
(choisir son ordinateur) ou encore
+informatique.tex
(utiliser LATEX).
Je regroupe trois contis dans cette catégorie :
+bienvenue
qui contient les messages d'aide,
+aide
pour poster des demandes d'aide concernant forum, et
+essais
pour faire des essais de postage avant de se lancer
+«en vrai».
+
annonces
Elle regroupe 4 contis :
+annonces
(conti modéré), où sont redirigés entre autres les courriers
+collectifs. Vous pouvez aussi y poster vos annonces; à cause de la modération,
+le message mettra un peu plus de temps à appararaître4.
+
+annonces.petites-annonces
accueille les petites annonces diverses et
+variées, annonces.seminaires
les horaires et dates de séminaires
+(toutes matières confondues), annonces.theses
les soutenances de
+thèse. Il existe un autre conti d'annonces : syst.annonces
, qui
+regroupe les annonces concernant le système informatique (coupures, nouveaux
+programmes, etc).
+
cof
Elle regroupe 8 contis. cof
est
+le plus général, pour discuter du fonctionnement du COF et de ses clubs. Ce
+conti revit régulièrement après les AG... Les autres contis ont des noms
+transparents : cof.annuaire
(élaboration de l'annuaire des élèves),
+cof.as
, cof.bdtheque
, cof.dg
, cof.k-fet
,
+cof.mega
, cof.soirees
.
+
divers
Elle regroupe 6 contis : +
+ + +divers
, «pour parler de tout et de n'importe quoi»;
+divers.aumonerie
traite de pratiques chrétiennes;
+voir aussi societe.religion
; divers.bonnes-adresses
sert à s'échanger de bonnes
+adresses de restaurants entre autres; voir aussi
+loisirs.gourmandises
; divers.news
pour discuter des news Usenet;
+divers.traductions
pour demander comment on dit
+«capillotracté» en slovène; divers.www
a pour but de s'échanger des adresses Web
+intéressantes. Ne le confondez pas avec
+informatique.internet
(aspects techniques du réseau),
+informatique.html
(écriture des pages Web) et
+syst.webmaster
(le fonctionnement du site Web des élèves).
+histoire
se trouve dans cette hiérarchie pour des
+raisons... historiques; on n'avait pas pu se mettre d'accord pour savoir
+si l'Histoire est une branche des lettres ou des sciences.loisirs
Elle regroupe 15 contis pour le moment : +
+ + +loisirs |
+Loisirs en général | +
loisirs.anime |
+Dessins animés | +
loisirs.astro |
+Astronomie | +
loisirs.cinema |
+Septième art | +
loisirs.cirque |
+Cirque | +
loisirs.gourmandises |
+Bonnes recettes | +
loisirs.jeux |
+Jeux de table | +
loisirs.jeux.bridge |
+Bridge | +
loisirs.jeux.jdr |
+Jeux de rôle | +
loisirs.musique |
+Musiques | +
loisirs.robot |
+Club Robot | +
loisirs.sf |
+Science-fiction | +
loisirs.sports |
+Sports variés | +
loisirs.traques |
+La Traque par Tmoy | +
loisirs.tv |
+Programmes télé | +
sciences
Elle regroupe 9 contis :
+sciences
(pour parler des sciences en général), et des sous-groupes
+spécialisés (on sous-entend le préfixe sciences
) : biologie
,
+chimie
, informatique
, maths
, medecine
,
+physique
. Pour des raisons historiques, on y trouve également
+linguistique
et sciences-sociales
.
+
lettres
Elle regroupe 3 contis pour le moment :
+lettres
tout court, lettres.orthographe
et
+lettres.philo
. Il existe d'autres contis concernant des matières
+littéraires, même s'ils ne sont pas des sous-ensembles de lettres
;
+c'est le cas de histoire
, des contis de linguistique et de sciences
+sociales de la hiérarchie sciences
, et d'un certain point de vue de
+divers.traductions
.
+
scolarite
Elle regroupe 3 contis :
+scolarite
pour la scolarité à l'École en général,
+scolarite.agreg
pour les informations sur l'agreg,
+scolarite.debouches
pour échanger des vues sur cette question
+brûlante. Cela dévie souvent vers societe.paperasse
...
+
societe
Elle regroupe 9 contis. S'y déroulent
+de nombreux débats, souvent très vifs, au sujet de la société :
+societe
tout court pour les questions générales,
+societe.culture
pour les questions culturelles,
+societe.droit
, societe.economie
, societe.education
,
+societe.ethique
pour causer de morale et d'éthique,
+societe.paperasse
pour les démarches administratives,
+societe.politique
, societe.religion
.
+
syst
Elle regroupe 13 contis qui traitent des
+prestations informatiques à l'ENS. syst
est le plus général, et est
+lu notamment par le SPI. syst.annonces
accueille les annonces
+concernant les salles, le système, les nouveaux programmes, les incidents,
+etc.
+
syst.config |
+Config conscrit | +
syst.forum |
+Fonctionnement de forum | +
syst.games |
+Jeux installés | +
syst.gourous |
+Activités des gourous | +
syst.rezo |
+Le rezo des élèves | +
syst.salle_46 |
+Problèmes en salle du 46 | +
syst.salle_s |
+Problèmes en salle S | +
syst.salle_s.quatra |
+Le 4a (machine des élèves) | +
syst.salle_t |
+Problèmes en salle T | +
syst.tuteurs |
+Activités des tuteurs | +
syst.webmaster |
+Site Web des élèves | +
informatique
Elle regroupe 27 contis, qui
+traitent de l'informatique pratique (car il existe aussi
+sciences.informatique
pour l'informatique théorique). C'est la
+hiérarchie «sérieuse» la plus développée.
+
informatique |
+Questions générales | +
informatique.crypto |
+Crytpographie | +
informatique.postscript |
+Langage PostScript | +
informatique.shell |
+Le shell | +
informatique.x11 |
+L'interface graphique | +
informatique.libre |
+Les logiciels libres | +
informatique.mail |
+Courrier électronique | +
informatique.html |
+Pages Web | +
informatique.internet |
+Internet... | +
informatique.materiel |
+Matériel informatique | +
informatique.tex |
+LATEX | +
informatique.typo |
+Typographie | +
+informatique.lang
regroupe les contis consacrés à la programmation
+(lang.c
, lang.c++
, lang.caml
, lang.java
,
+lang.perl
, lang.sql
). Les questions concernant des langages
+sans conti spécifique vont dans informatique.lang
tout court.
+
+La hiérarchie informatique.os
regroupe les contis consacrés à des
+systèmes d'exploitation (Operating System en anglais) :
+os.linux
, os.macos
, os.microsoft
, os.unix
.
+
+informatique.editeurs
accueille les discussions sur l'utilisation des
+éditeurs de texte en général; informatique.editeurs.emacs
est
+consacré à l'éditeur (x)emacs, informatique.editeurs.vi
à l'éditeur
+vi(m).
+
alt
Cette hiérarchie «alternative» regroupe 38
+contis à ce jour; ce sont les groupes les moins sérieux de forum, ceux où le
+jargon de salle S et les private jokes d'informaticiens s'en donnent à coeur
+joie, en particulier dans la sous-hiérarchie alt.bavardage
.
+
+alt
est très hétéroclite : alt.alexandrins
(pour cultiver le
+goût du ternaire), alt.disparition
(le «e» est interdit),
+alt.revenentes
(le «e» est la seule voyelle autorisée),
+alt.roman
sont l'occasion d'exprimer ses talents littéraires.
+alt.questionaze
accueille les questions saugrenues (cours en euros du
+franc belge, pourquoi les films sortent-ils le mercredi en France, en dessous
+de quelle température la respiration se condense-t-elle, etc). Dans
+alt.pirates
on trouve les messages de ceux qui se sont fait piratés
+parce qu'ils ont oublié de se déloguer (si ça vous arrive, vous recevrez un
+courrier des tuteurs).
+
+Il y a d'autres contis dans alt
, vous les découvrirez bien assez
+tôt...
+
Vous trouverez aussi la hiérarchie
+ens.forum.archeo-forum.*
, qui contient les groupes de discussion de
+l'ancien forum (avant 1998), ens.mailing-lists.*
(liste de diffusion
+extérieure postées automatiquement dans forum; informatique pour la plupart).
+control
et junk
sont deux groupes spéciaux qu'il ne faut pas
+lire.
+
+Le mois prochain, on expliquera comment aller de groupe en groupe, et comment +s'abonner. +
+ + +-- David Madore, Émilia Robin
+ ++Ce cours va s'étendre sur toute l'année. Il va passer en revue les +différentes composantes d'un ordinateur, écran, mémoire, clavier, disques, +etc, pour expliquer à quoi ils servent, quelles sont leurs caractéristiques, à +quoi correspondent les sigles cabalistiques qui leur sont associés, etc. Il +est destiné à des non-spécialistes, qui ont envie d'en savoir un peu plus sur +cette chose qui encombre leur bureau... +
+ ++Ainsi parle le cyber-patriarche : +
+ ++«Il est certains objets et certaines matières qui possèdent une valeur en +elle-même, que cette valeur soit tangible, comme dans le cas d'un Pomerol +19795, ou symbolique, +ainsi que le serait un lingot d'or. Mais ces choses-là ne nous intéressent pas +ici, car il est une denrée qui est la clé de bien plus de pouvoir, et l'enjeu +de bien des conflits qui ont tiraillé notre monde; cette entité, c'est +l'information. Et l'ordinateur, c'est fondamentalement une machine à +emmagasiner, thésauriser, traiter et diffuser de l'information (d'où le nom : +informatique). Avec lui, on peut enfin réaliser pleinement cet adage +politique : les chiffres, on leur fait dire ce qu'on veut. +
+ + ++ +L'ordinateur, cependant, n'a pas la puissance de compréhension du cerveau d'un +humain, et d'ailleurs il se fait également écraser par le chimpanzé, le +dauphin et le desman des Pyrénées. Contre le cafard, il se défend +correctement. En revanche, la mémoire de l'ordinateur est remarquable, et, +sans être infaillible, on peut la qualifier de fiable. +
+ + ++ +Afin de faire comprendre une information à un ordinateur, il faut d'abord la +présenter sous une forme qu'il peut appréhender. Cette forme, c'est le +binaire. Dans la machine, tout est 0 ou 1, vrai ou faux. Cette information +fondamentale s'appelle un bit. L'ordinateur traite des bits, beaucoup, +et les retient.» +
+ ++«Mais rien n'est binaire dans la vie!», s'exclame l'apprenti. +
+ ++«Certes non, répond le maître. Mais ça peut s'arranger. Plusieurs bits +ensembles permettent de faire beaucoup de combinaisons. Certaines combinaisons +seront des lettres. D'autres représenteront des couleurs. Des sons. Des +images. Avec quelques centaines millions de bits, on peut représenter un clip +entier de Michael Jackson.» +
+ ++«Mais si j'ai ces myriades de bits, que puis-je en faire? Quelle est +l'information?» +
+ ++«L'information, c'est que dans ces mêmes bits, j'aurais pu mettre une +prestation de The Artist (formerly known as Prince). C'est cela, +l'information : une possibilité. L'information est unique, mais sa puissance +réside dans le fait qu'elle aurait pu être autrement. Et à bien des égards, +elle est tout autant manipulable quelle que soit sa forme. On peut la copier, +la transporter, dans les mêmes conditions, car un 0 pèse autant qu'un 1. Et +c'est bien ce que va faire l'ordinateur.» +
+ + + ++«Mais ces 0 et ces 1, où est-ce que l'ordinateur les stocke?» +
+ ++«Là.» Et le sage tend son doigt vers des petites plaquettes grisâtres, +alignées dans la carcasse de la machine éventrée. «C'est dans ces modules que +l'information vit et meurt. Chaque bit est dans un système qui peut prendre +deux états différents; le premier état code un 0, le second code un 1. On +appelle ça un bistable. +
+ + ++Pour bien expliquer ça, prenons le cas du Normalien; il possède deux états +stables : allongé dans son lit, et vautré sur un canapé de la KFêt. Quand il +est dans un des deux états, il y reste, sauf au prix d'un effort (se lever et +marcher); cet effort ne se prolonge jamais indéfiniment, et, rapidement, il +retombe dans un de ses deux états stables. Dans l'ordinateur, c'est pareil : il +y a une circuiterie, qui fait passer un courant, ou pas, et qui +s'auto-entretient : quand il y a du courant, un jeu de transistors s'assure que +le courant continue. Quand il n'y en a pas, les même transistors détruisent +toute velléité de création spontanée d'un tel courant. La circuiterie conserve +la mémoire de son état antérieur, tant qu'on ne la force pas, extérieurement, +à changer d'état. +
+ + ++Une autre méthode est d'utiliser une toute petite batterie, qui a deux états : +pleine, et vide. Elle est trop petite pour être raisonnablement à moitié +pleine; de plus, elle fuit, et un système spécialisé s'occupe de refaire le +plein, régulièrement, dans les batteries partiellement déchargées. +
+ + ++Tout ça revient à des transistors et des condensateurs, qui se fabriquent avec +de fins fils de cuivre et d'aluminum, et du silicium. Le silicium, c'est un +produit très courant : c'est le constituant principal du sable. Dans la puce +que vous voyez là, pas plus large qu'un haricot, il y a un peu plus de +64 millions de bits, de quoi écrire l'intégrale des oeuvres de Balzac.» +
+ ++«Et si on coupe le courant, il se passe quoi?» +
+ ++«La même chose que si Dieu éteint le soleil : ça craint très fort. Dans le cas +de cette mémoire, ça la vide. L'information meurt.» +
+ + ++«Et comment est-ce que les informations rentrent et sortent? Je suis sûr +qu'Honoré, quand bien même il accepterait de le faire, ne pourrait pas rentrer +dans le haricot, ni même dans un ananas.» +
+ ++«Les données font comme tout le monde : elles prennent le bus. Regarde ces +fils, jeune disciple, c'est ça le bus. Dans ces fils vrombissent des +impulsions électriques qui codent les 0 et les 1; car on peut faire plusieurs +sortes d'impulsions. Ces impulsions sont très rapides, et se propagent comme +des vagues à la surface de l'eau. C'est là qu'on voit toute l'intangibilité de +l'information : même agitée, l'eau reste de l'eau. L'information, dans le bus, +est une agitation d'électrons dans du cuivre. +
+ + ++La vitesse, et le débit des informations, sont des éléments cruciaux, vitaux, +fondamentaux et primordiaux de la bonne marche de la machine. C'est ce qui +justifie la mort de Philippidès6. Tout est +fait pour que l'information circule le plus vite possible, et le plus +facilement possible, entre les différents éléments de l'ordinateur, sans pour +autant rentrer en collision avec d'autres informations qui emprunteraient les +mêmes voies. Chaque seconde, ce sont quelques milliards de bits qui parcourent +allègrement ces câbles. Et pas un ne se perd! Un tel peuple en marche est la +réalisation d'une utopie maoïste. +
+ ++Médite bien cela, et après je t'expliquerai où et comment on modifie +l'information.» +
+ + +-- Thomas Pornin
+ + ++Unix est un système multi-utilisateurs : les utilisateurs sont +individualisés, ils ont chacun un compte auquel ils accèdent par un mot de +passe. Chacun a le droit de faire ce qu'il veut sur son compte, mais il n'a +pas le droit de modifier les fichiers des autres utilisateurs. C'est cette +question des droits (ou permissions) que l'on va aborder dans ce numéro. On +reprend ici un article paru dans le numéro 4 du Hublot, février 2000. +
+ + +Sous Unix, on distingue trois sortes de droits : le droit +de lecture, le droit d'écriture, et le droit d'exécution. Lire un fichier, +c'est en prendre connaissance. Écrire dans un fichier, c'est pouvoir le +modifier. Le droit d'exécution ne concerne que les programmes (aussi appelés, +de ce fait, «exécutables»). +
+ ++Un fichier a toujours un propriétaire, qui est, en règle générale, la +personne qui l'a créé. Le propriétaire d'un fichier est le seul à pouvoir +tout faire avec ce fichier. Lui seul peut l'effacer, et lui seul choisit qui +a le droit de lire le fichier, de l'exécuter ou de le modifier. On distingue +donc différentes catégories d'utilisateurs, qui sont : +
+ + +litt95
, bio99
, math94
...);+Les autres utilisateurs n'ont le droit de faire que ce que le propriétaire +autorise. Un seul utilisateur a le droit de tout faire, et d'accéder à tous +les fichiers : c'est root, le super-utilisateur, l'administrateur du +système. +
+ + Pour savoir quels sont les droits d'un fichier, on
+utilise la commande ls
avec l'option -l
.
+Les lignes affichées commencent toutes par quelque chose comme :
+
+-rw-r--r-- ++ +
Ce sont ces caractères qui renseignent sur les droits. Le premier caractère +donne le type du fichier; ici, comme rien n'est dit, c'est un fichier normal +(donc pas un répertoire par exemple). +
+ + +
+Ensuite, vous avez trois fois la même série de lettres : rwxrwxrwx
. Si
+on lit la lettre, c'est que le droit est donné, si on voit un tiret à la
+place, c'est que le droit n'est pas attribué :
+
r
c'est read
+(droit de lecture), w
c'est write (droit
+d'écriture), x
c'est execute (droit d'exécution).
+rwx
indique les
+droits du propriétaire du fichier, le deuxième les droits de son groupe, le
+troisième les droits de tous les autres utilisateurs.
+On apprend donc que le propriétaire de ce fichier a le droit de le lire et de
+le modifier (rw-
); quand à tous les autres utilisateurs, groupe
+inclus, ils ne peuvent que lire le fichier (r--r--
). Ce sont là les
+droits d'un fichier normal.
+
+Les droits habituels d'un répertoire sont les suivants : +
+ + ++drwxr-xr-x ++ +
Le d
indique qu'il s'agit d'un répertoire (directory).
+Lire un répertoire, c'est pouvoir afficher son contenu; exécuter un
+répertoire, c'est pouvoir aller dedans. Votre répertoire Mail/
, qui
+contient les courriers que vous avez sauvegardés, a les droits suivants :
+
+drwx------ ++
+Ça veut dire que vous, et vous seul, pouvez accéder à votre courrier, et le
+lire. Le répertoire prive/
des conscrits a les mêmes droits.
+
+La commande chmod
(change mode) sert à modifier les droits
+d'un fichier, de la manière suivante :
+
+chmod droits fichier ++
Elle a deux syntaxes différentes, le mode symbolique et le mode octal. On ne +va parler ici que du mode symbolique. +
++Des caractères désignent successivement l'utilisateur, l'opération à effectuer +et le droit considéré, suivant ce tableau : +
+ +Utilisateur | +Action | +Droit | +
u (user) |
++ (ajouter) |
+r (read) |
+
g (group) |
+- (retirer) |
+w (write) |
+
o (others) |
++ | x (execute) |
+
+Ainsi, la commande suivante sert à rendre exécutable le fichier
+boprogramme
, pour son propriétaire :
+
+chmod u+x boprogramme ++
Ses droits étaient -rw-r--r--
, ils sont désormais
+-rwxr--r--
.
+
+Ou encore, celle-ci sert à interdire la lecture du fichier secret
à
+tous les autres utilisateurs, groupe inclus :
+
+chmod go-r secret ++
Ses droits étaient -rw--r--r--
, ils sont maintenant les suivants :
+-rw-------
.
+
+Nous avons dit que, par défaut, tous les fichiers étaient lisibles par tout le +monde, à l'exception du courrier électronique et de quelques autres. +Autrement dit, tout le monde peut aller lire votre maîtrise ou vos programmes. +Cependant, cette possibilité technique ne doit pas être considérée comme un +incitation aux indiscrétions. La charte signée en début d'année est claire +sur ce point (paragraphe 2.4) : +
+ ++ ++Tout utilisateur est responsable, pour ses fichiers et répertoires, des droits +de lecture et de modification qu'il donne aux autres utilisateurs. En outre, +il est interdit de prendre connaissance d'informations détenues par d'autres +utilisateurs, quand bien même ceux-ci ne les auraient pas explicitement +protégées. +
Le débat est toujours ouvert : faut-il être complètement paranoïaque, et +interdire complètement l'accès à son compte, y compris pour des données non +confidentielles? Ou alors faut-il conserver une certaine transparence et +n'interdire en lecture que ce qui est strictement privé, comme le courrier +électronique? +
+ ++C'est une question de responsabilité personnelle. Si vous préférez interdire +tout regard extérieur sur votre compte, vous êtes libre de le faire; la +commande est la suivante (en mode octal) : +
+ + ++chmod 700 ~ ++ +
~
(tilde) c'est votre compte, 700
équivaut
+en gros à go-rwx
. Aucun de vos fichiers ne sera visible pour
+qui que ce soit, sauf vous. Il faut cependant savoir que, en cas de
+problème, les tuteurs et les gourous ne vous seront d'aucune aide. Il
+faudra aller voir l'administrateur-système.
+Il vaut donc mieux ranger dans un répertoire spécial tout ce qui est
+confidentiel, et interdire l'accès à ce répertoire. Les conscrits en ont déjà
+un, qui s'appelle prive/
. Mettez-y les documents que vous souhaitez
+protéger, et personne ne pourra les voir.
+
Vous pouvez aussi réunir dans un répertoire tout ce que vous
+considérez comme public (texte d'une pétition, oeuvre commune, etc). Ce
+répertoire est ordinairement appelé Public/
, ou
+pub/
. Ou encore, vous vous contentez d'interdire en lecture
+tout ce que vous considérez comme personnel, en laissant le reste ouvert.
+
Fichier
+définissant et personnalisant le comportement de certains programmes
+(.pinerc
, .ytalkrc
...). Le rc
veut dire
+run command.
+Ce sont aussi les fichiers de configuration qui définissent la taille, la
+couleur et l'emplacement des fenêtres, les menus de fond d'écran, les couleurs
+de ls
, etc. On détaillera ces fichiers de configuration dans le
+numéro 13 du Hublot, en mars 2001.
C'est un environnement graphique +développé pour Unix, et très ressemblant à Windows, tant par l'aspect que par +les ressources qu'il consomme. Il regroupe à la fois un bureau, un certain +nombre d'applications de base (courrier électronique, gestion des fichiers...) +et des applications plus lourdes (traitement de textes...).
+
+L'environnement lui-même n'est pas installé à l'École, mais certaines des
+applications le sont quand même (jeux, utilitaires comme le gestionnaire de
+fichiers kfm
, le générateur de fractales kfract
,
+etc).
+Il y a d'autres projets proposant une interface graphique agréable pour +machines Unix; citons Gnome, Afterstep, WindowMaker.
Appliqué à un logiciel, +signifie que quiconque en possède un exemplaire est autorisé à en user à peu +près comme bon lui semble, en particulier le redistribuer (gratuitement ou +pas) et le modifier. En particulier, ça siginfie que le code source (les +secrets de fabrication) est disponible. Un logiciel libre n'est pas +nécessairement gratuit. D'autre part, diffuser le code source d'un logiciel ne +remet pas en cause les droits d'auteur.
++Il existe un certain nombre de licences sous lesquelles sont +distribuées les logiciels libres; la plus connue est la GPL (General +Private Licence).
+
+netscape
, pine
, Nethack,
+LATEX, gimp
, Linux sont des logiciels
+libres.
Contraire de libre... Le +logiciel et son code source appartiennent à une société. On parle aussi de +«matériel propriétaire» : les ordinateurs TotoTM n'acceptent que du matériel +TotoTM (barrettes de mémoire, cartes, etc).
Ensemble de fonctions qui +peuvent être incorporées à LATEX pour faire une tâche +particulière (police spéciale, colonnes, etc...). Les packages +LATEX seront expliqués dans le prochain numéro. +
Le Hublot est le journal des tuteurs informatique de l'ENS. +Il paraît chaque mois à 350 exemplaires. Il est également disponible sur +le Web :
+ +http://www.eleves.ens.fr/tuteurs/docs/hublot/
+
+Rédaction : Émilia Robin. +
+ +Ont collaboré à ce numéro : Nicolas George, François Kahn, David +Madore, Jérôme Plût, Thomas Pornin, Cédric Ware.
+ +Merci à Hélène Duquennoy, Nadia Feraoun et Gilles Radenne pour leurs +relectures.
Word est un +produit de Microsoft, WordPerfect de Corel, StarOffice est un logiciel libre +maintenu par Sun microsystems (après avoir été racheté à StarDivision), +ApplixWare de Applix, Axene de Axene Inc.
L'utilisation
+d'ApplixWare a été présentée dans le numéro 4 du Hublot, en
+février dernier. Reportez-vous à notre site Web pour cet article :
+hublot/hublot4/hublot4.html#asterix
.
Spécifications
+à l'adresse suivante : http://msdn.microsoft.com/library/en-us/dnrtfspec/html/rtfspec.asp
.
La modération +sera abordée le numéro 11 du Hublot, au mois de +janvier.
Il est temps +de le boire, soit dit en passant.
Euclès, selon +Plutarque.
+
+ ++Dans ce numéro, on achève de présenter les commandes Unix de base, +et on se lance dans les choses sérieuses en matière de sécurité +informatique. On attaque aussi des sujets plus techniques en +LATEX. +
+
+À suivre au mois de janvier, le prochain stage informatique: on y
+parlera de LATEX, de forum, du logiciel de dessin xfig
... et de
+ce que vous nous suggérerez!
+Comme dans chaque numéro, les conseils de lecture et les bonnes +adresses:
+ +http://www.eleves.ens.fr/
http://www.eleves.ens.fr/tuteurs/docs/hublot/
Nous sommes toujours à votre disposition pour toutes questions et
+suggestions: tuteurs@clipper
.
+Vous pouvez aussi mettre un mot dans le casier de Marie-Lan Nguyen.
+Enfin, n'oubliez pas que quand vous tapez qui
, les tuteurs
+ont leur nom souligné: n'hésitez pas à nous solliciter!
Cette rubrique porte sur l'utilisation pratique des machines Unix et de +LATEX. Ce mois-ci, on présente les commandes pour renommer, déplacer copier +et détruire des fichiers. La section «Config conscrits» explique +comment faire du copier-coller. système de fenêtrage. Enfin, la rubrique +LATEX explique ce que sont les packages, et quels sont les plus +courants.
+ +
+On achève ce mois-ci le tour d'horizon des commandes Unix de base, pour la
+gestion quotidienne des fichiers. Les mois suivants, on verra divers petits
+logiciels, ainsi que la façon d'enchaîner des commandes, et les «jokers».
+Si vous êtes allergiques au clavier, n'oubliez pas qu'il existe aussi des
+gestionnaires de fichiers à la souris sur les stations (le spartiate
+xfm
et le plus joli et plus lourd kfm
). Cela dit, si vous
+êtes connectés à distance, vous ne pourrez utiliser que les commandes clavier;
+il est donc utile de les connaître...
Sert à faire une copier d'un fichier, selon la +syntaxe suivante:
+ + + +
+brick ~ $ cp fichier nouveau
+
+fichier
est le nom du fichier existant, nouveau
+est le nom de la copie.
Cette commande sert à la fois à renommer et à +déplacer les fichiers. Pour renommer, la syntaxe est la suivante:
+ + + +
+ brick ~ $ mv fichier nouveau
Le
+premier nom est le nom actuel du fichier, nouveau
est le
+nouveau nom du fichier. Pour déplacer un fichier, on indique le nom du
+fichier, suivi du nom du répertoire où l'on veut placer le fichier:
+brick ~ $ mv commentaires DEA/
+
+
+Cette commande place le fichier commentaires
dans le
+sous-répertoire DEA/
de votre compte.
rm
sert à effacer un fichier, avec la
+syntaxe suivante:
+brick ~ $ rm fichier
+rm: remove fichier (yes/no)? y
+
+À la demande de confirmation, répondez pas yes
ou simplement
+y
. Si vous répondez autre chose, le fichier ne sera pas
+effacé.
mv
et
+rm
. rm
ne fonctionne pas sur le principe de la corbeille des
+Macs ou des PC Windows, il ne déplace pas les fichiers dans un «endroit» de
+stockage avant destruction. Un fichier effacé est vraiment effacé (mais
+le SPI fait des sauvegardes toutes les nuits, adressez-vous à eux si vous
+effacez un fichier par mégarde: spi@clipper
).cp
, mv
et
+rm
sont en fait des alias* sur les commandes cp -i
,
+mv -i
, rm -i
(ou, pour le dire autrement, par défaut,
+l'option -i
est mise). C'est l'option interactive, qui demande
+confirmation avant d'écraser un fichier, ou de l'effacer. C'est donc une
+sécurité.
+Mais cette option n'est pas activée partout: le plus souvent, quand vous vous
+retrouverez sur un système Unix hors de l'ENS, il n'y aura pas cette sécurité,
+et rm
effacera vos fichiers sans demander confirmation. Soyez donc
+prudents...
+
Ces trois commandes sont expliquées sur le site des tuteurs:
+/tuteurs/unix/fichiers.html
. Vous trouverez également des
+exercices corrigés sur mv
et cp
:
+/tuteurs/unix/exercices/cp_mv.html
.
+Le mois prochain, on présentera l'utilitaire less
, qui sert à
+regarder des fichiers texte sans les modifier.
Le copier-coller consiste à recopier un bout de texte pour le +coller ailleurs, soit dans le même document, soit ailleurs. Les logiciels +manipulant du texte comportent des commandes permettant de faire du +copier-coller, avec raccourcis claviers ou menus; on peut aussi utiliser la +souris (ce que la souris sélectionne est gardé en mémoire, le «presse-papier» +des Macs et de Windows).
+ + + +On ne va parler ici que du copier-coller à la souris, sans évoquer les +commandes spécifiques des éditeurs et des traitements de textes. D'autre +part, il ne s'agit que de copier du texte, et rien d'autre.
+ + + +Pour faire du copier-coller, on sélectionne le texte avec +le bouton gauche, et on colle avec le bouton du milieu:
+Un double-clic sur un mot le sélectionne +automatiquement. C'est particulièrement utile pour des noms de fichiers, +des adresses électroniques, ou encore des URL*. Un +triple clic sélectionne toute la ligne. Ça ne sert pas à grand chose, +mais c'est rigolo.
+ +Voici quelques conseils pour utiliser plus +efficacement le copier-coller avec les logiciels courants:
+ + + +pine
, pico
: rien à dire de spécial... N'oubliez pas
+l'existence de la commande ^J
(«justifier») pour reformater un
+paragraphe, quand les lignes sont de longueur inégale. Pour l'utiliser,
+placez-vous au début du paragraphe et tapez ^J
.netscape
: vous pouvez récupérer le texte de pages Web en
+utilisant le copier-coller. Il est cependant souvent plus simple de
+télécharger le document, en sélectionnant Save As
dans le menu
+File
.Location
, commencez par
+effacer l'adresse de la page courante (sélectionnez-là avec le bouton gauche
+et appuyez sur Backspace
). Ensuite, coller la nouvelle adresse dans
+le cadre.nedit
: le principe «sélectionner avec le bouton gauche, coller
+avec le bouton du milieu» fonctionne; le texte sera collé à l'endroit où vous
+cliquez avec le bouton du milieu (comme avec emacs
).Cut
, Copy
et
+Paste
.emacs
: sélectionner le texte avec le bouton gauche. Le texte
+sera collé à l'endroit où vous cliquerez avec le bouton du milieu. Vous n'avez
+donc pas à placer préalablement le curseur à l'endroit voulu.vim
: il faut être en mode insertion pour coller un bout de
+texte avec la souris.Pour les éditeurs en général, n'oubliez pas qu'ils incluent des commandes pour
+insérer des fichiers extérieurs (^R
avec pico
donc
+pine
, ^I
ou Include File
dans le menu File
+pour nedit
, :r
fichier
avec vim
, ^XI
+ou Include File
dans le menu File
de
+emacs
).
+Le mois prochain, on parlera des raccourcis clavier de la config conscrits. +
+ + + + + +
+Les packages sont des ensembles de commandes qui permettent d'étendre
+les fonctionnalités de LATEX ou de changer son comportement. Certains
+s'appliquent automatiquement à l'ensemble du texte, d'autres rendent
+simplement disponibles des commandes particulières. Ils correspondent à des
+fichiers qui ont un suffixe .sty
.
+Note: «package» est un mot anglais, et comme tel, nous devrions le mettre en
+italiques dans tout ce texte... Mais comme l'alternative francophone
+«paquetage» est très rare et guère plus explicite, nous assumons l'usage de
+package en français dans le texte.
+
Pour charger un package, on utilise la
+commande \usepackage{
nom
}
, où nom est le
+nom du package. Cette commande se place dans le préambule du document, avant
+le \begin{document}
.
+Certains packages prennent des options; celles-ci sont écrites entre crochets,
+avant le nom du package lui-même; quand il y a plusieurs options, on les met à
+la suite, séparées par des virgules:
+\usepackage[
option1,option2
]{
package
}
+
Pour garantir que vos accents passent bien +d'une machine à l'autre, et que votre DVI aura des accents, et pour franciser +vos documents (titres prédéfinis, typographie, etc), voici les trois packages +à utiliser dans tous vos fichiers:
+ + + ++\usepackage[francais]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +
inputenc
, c'est l'encodage des accents du fichier source (le fichier
+.tex
). On lui donne l'option latin1
, car l'encodage standard
+des accents occidentaux est l'isolatin1. C'est le même principe pour
+fontenc
(encodage de la fonte dans le DVI).
+babel
est un système qui permet de gérer une ou plusieurs langues
+dans un même document; ici, on lui passe l'option francais
. Il
+connaît un certain nombre de langues (bahasa
, breton
,
+catalan
, croatian
, czech
, danish
,
+dutch
, english
, esperant
, estonian
,
+finnish
, galician
, german
, greek
,
+irish
, italian
, lsorbian
, magyar
,
+norsk
, polish
, portuges
, romanian
,
+russian
, scottish
, slovak
, slovene
,
+spanish
, swedish
, turkish
, usorbian
,
+welsh
, ouf).
+Note importante: c'est bien francais
et pas french
que
+l'on vous conseille; french
n'est pas tout à fait compatible
+avec le reste de Babel, et il redéfinit des choses, comme l'espacement à
+l'intérieur des listes, qui n'ont rien à voir avec la francisation. Les
+Français qui l'ont écrit ont un peu trop intériorisé la notion
+d'«exception culturelle»...
Ce que gère Babel, ce sont les titres des parties et des tables
+générées automatiquement, la date écrite dans la langue choisie (commande
+\today
), et aussi certaines macros spécifiques. Pour le
+français, en voici quelques-unes: 1\ier
: 1er; 2\ieme
: 2e;
+1\iere
: 1re.
+Quand on lui passe plusieurs langues en argument, celle qui domine dans le
+texte est la dernière indiquée. Des commandes spécifiques servent à passer
+dans l'autre langue; par exemple, \textgreek{}
pour mettre des mots en
+grec, ou \cyr{}
pour mettre des mots en cyrillique (en supposant que
+vous avez indiqué greek
ou russian
dans les options de
+babel
).
+
Il en existe un tas, qui font un tas de choses... On +va voir ici les plus courants, et les plus utiles:
+ + + +amsmath,amsfonts,amssymb
Ces trois packages définissent des +commandes vraiment indispensables pour taper des maths avec LATEX. Et +également quelques symboles qui peuvent servir ailleurs. AMS, c'est +l'American Mathematical Society.
epsfig
Pour inclure des images au format EPS (PostScript
+encapsulé), avec la commande \epsfig{}
. On en parlera au mois de
+février.
multicol
Pour faire un document en plusieurs colonnes. Pour
+cela, on utilise l'environnement multicols
(avec un «s», piège
+diabolique). Par exemple, pour un document écrit sur trois colonnes:
+%BEGIN LATEX +\begin{multicols}{3} +%END LATEX +Le texte... +%BEGIN LATEX +\end{multicols} +%END LATEX +
url
Pour afficher correctement des adresses électroniques et +des URL.
vmargin
Pour redéfinir la taille de la page. On le verra plus +précisément dans le prochain numéro.
Bien sûr, il ne s'agit que d'une très petite
+partie de tous les packages existants. En fait, chaque fois que quelqu'un
+écrit une fonctionnalité supplémentaire pour LATEX (par exemple,
+supertabular
pour faire des tableaux sur plusieurs pages), il écrit
+un package.
Le LATEX companion, dont on trouve +normalement un exemplaire (souvent en très mauvais état hélas) dans +toutes les salles informatiques, contient une énumération beaucoup plus +complète, ainsi qu'une description beaucoup plus détaillée des +possibilités.
+ + +
+Notons qu'il y a aussi quelques notices pour les packages les plus utiles
+installés chez gourous, dans le répertoire
+/usr/local/util/tex/doc
.
+Le mois prochain, on expliquera comment régler la taille de la page. +
+ +Nicolas George, Émilia Robin
+ + ++Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on va expliquer ce que sont les +disquettes, et comment on s'en sert sur les stations.
+ + + + + + ++Voyons un peu la longue histoire des disquettes, aussi appelées floppy +disk, c'est-à-dire disques souples. J'en vois déja me dire que les disquettes +que vous utilisez sont en plastique rigide, mais ce terme désigne en fait le +disque magnétique souple qui se trouve à l'intérieur de l'enveloppe rigide. +Il s'oppose aux disques durs (hard disk en anglais), dans lesquels les +disques magnétiques (appelés des plateaux) sont rigides.
+ +Il y a bien longtemps, il n´existait pas de CD-ROM, ni +de disques durs ou même de disquettes. On utilisait des cartes perforées. +C'était un moyen de stockage et de transmission peu efficace et peu pratique, +mais il n'y avait rien d'autre.
+ + ++On a alors eu l'idée d'utiliser le même principe que pour le stockage de +musique, à savoir une surface magnétisée, constituée d'une multitude de +minuscules aimants. Ces aimants peuvent être orientés à volonté, et ils +gardent alors cette orientation, stockant ainsi de l'information. On a +commencé par garder la même forme que pour les cassettes, c'est à dire des +bandes magnétiques enroulées sur des bobines, et qu'on déroule pour lire +l'information dessus. Ça marchait, mais c'était assez lent, et pour lire les +données placées à un endroit précis il fallait dérouler toute la bobine pour +atteindre le bon endroit. +
+ + ++Cela avait quand même quelques bons côtés, comme une capacité assez +importante. D'ailleurs, le principe est encore utilisé aujourd'hui. Par +exemple les sauvegardes des comptes sur clipper sont faites sur des cassettes +DAT (Digital Audio Tape, qui sont à la base des cassettes utilisées pour +l'enregistrement numérique de musique). D'autres systèmes utilisent des +cassettes de caméscope.
+ + + +Pour pallier ces défauts, on a donc pris cette +fois comme surface magnétique un disque souple, qui tournait autour de son +axe, qu'on a inséré dans une pochette en plastique souple, laquelle gardait +des ouvertures pour accéder à la surface magnétique. De cette manière, on +pouvait accéder (presque) instantanément à n'importe quelle partie du disque +en question, simplement en le faisant tourner et en déplaçant la tête de +lecture le long d'un rayon. +
+ ++C'est ainsi qu'est apparue la première disquette, qui était alors un +mastodonte, connu sous le nom de disquette 8" (lire «8 pouces», c'est à dire +un peu plus de 20 centimètres de large, le pouce mesurant exactement 2,54 +centimètres) Ce monstre possédait une capacité absolument délirante pour +l'époque, à savoir 80 Ko.
+ + ++Plus tard sont apparues les disquettes 5"1/4 (cinq pouce un quart), qui +avaient à la base une capacité de 180 Ko par face, et qui furent utilisées par +la majorité des micro-ordinateurs du début des années 1980 (IBM PC, Commodore +64...).
+ + + +En 1982, Sony créa un nouveau type de disquette qui +devait très vite s'imposer, la disquette 3"1/2 (trois pouce et demi), toujours +en usage actuellement, et donc la capacité pouvait alors aller jusqu'à 720 Ko. +Outre sa taille réduite et sa plus grande capacité, elle comportait deux +innovations:
+ + + +Du fait de leur plus grande capacité et fiablité (même si la fiabilité d'une +disquette n'est jamais très élevée), ces disquettes furent rapidement adoptées +par Apple (dont le Macintosh fut la première machine à l'utiliser), puis par +Atari et Commodore (dans les Ataris ST et les Amigas), puis arrivèrent sur les +PC avec le PS/2 d'IBM, et devinrent le standard.
++Les disquettes 5"1/4 et 3"1/2 ont vu par la suite leurs capacités portées à +1,2 Mo et 1,44 Mo (en 1984 et 1987), et ce sont les capacités utilisées +actuellement. Il y a eu une tentative infructueuse pour introduire des +disquettes 3"1/2 à 2,88 Mo, mais devant le peu d'enthousiasme du public, cela +fut abandonné.
++Signalons également le format 3", qui ressemble au format 3"1/2, avec une +capacité de 180 Ko par face. Très peu répandu, il ne fut utilisé que par +quelques machines (Stratos ou Téléstrat, et surtout l'Amstrad CPC), et à cause +du succès soudain de l'Amstrad, ces disquettes connurent des périodes de +pénurie assez mémorables pendant lesquelles les prix s'envolèrent.
+ ++La première chose à savoir quand on utilise des disquettes est leur manque +total de fiabilité: quand on copie un fichier sur une disquette, on n'est +jamais sûr de pouvoir le relire. C'est pourquoi il est fortement déconseillé +d'utiliser les disquettes comme sauvegarde principale ou comme archive; et +quand l'on transfère des fichiers à l'aide de disquettes, il est préferable de +tout transférer en double sur des disquettes séparées pour avoir des chances +raisonnables d'avoir au moins un exemplaire lisible de chaque +fichier.
+ + ++Une disquette est en effet très sensible aux conditions extérieures, à savoir +température, humidité et surtout champs magnétiques. Bon nombre de disquettes +ont succombé à un séjour au soleil, dans une pièce humide, ou simplement à un +passage à côté de haut-parleurs mal isolés... +
+ ++De plus, une capacité de 1,44 Mo peut se réveler insuffisante, et s'il existe +des outils pour répartir un fichier entre plusieurs disquettes, cela n'est +jamais pratique. +
+ ++Aussi les disquettes possèdent maintenant un certain nombre d'alternatives: +
+ + +On reprend ici un article paru dans le numéro 7 du +Hublot, en mai 2000.
+ ++Les plantages des ordinateurs fonctionnant sous Windows ou MacOS peuvent +entraîner des pertes irréparables de données. Sachez que vous ne pourrez pas +vous retourner contre le fabricant du logiciel, car la licence vous avez +acceptée possède une clause qui exclut toute responsabilité pour les dégâts +que pourrait causer le produit. D'autre part, quel que soit le système, un +disque dur est un dispositif électromécanique pouvant être sujet à des pannes +matérielles. Vous devez donc faire des sauvegardes régulières de vos données, +au moins tous les mois1. Voici +quelques conseils:
+ ++Enfin, sachez qu'à l'ENS, le Service de Prestations Informatiques effectue une +sauvegarde des comptes des élèves (sur les Suns et les PC sous Linux) toutes +les nuits, sur des bandes magnétiques. +
+ + + + + +On vous montre ici une façon d'utiliser +les disquettes qui peut paraître barbare et pas simple. Mais des commandes au +clavier sont le seul moyen de partager un lecteur de disquettes entre +plusieurs machines, et de pouvoir l'utiliser à distance. Les Suns, +traditionnellement, n'avaient pas de lecteur, seule une machine dans la salle +en avait un, utilisé par tout le monde.
+ ++En revanche, les interfaces graphiques pour Unix, comme KDE, que vous pouvez +avoir sur votre PC Linux, permettent une gestion à la souris des disquettes, +pour copier des fichiers ou les mettre sur la disquette. Unix ne se réduit pas +à ce que vous en voyez à l'École...
+ + + +Pour utiliser les disquettes au format PC sur les +stations Sun, il existe une ensemble de commande appelées mtools. Il +faut savoir qu'à l'ENS les machines Unix ne sont pas toutes équipées d'un +lecteur de disquettes, mais on peut se servir du lecteur d'une station sans +être physiquement devant. Pour cela, il suffit d'introduire la disquette dans +le lecteur (en essayant de ne pas trop déranger la personne devant le +clavier), et de se connecter à distance sur la machine en question.
+ + + ++Pour indication, voici la liste des machines équipées de lecteurs de +disquettes en salle S (galion, kayak, bireme, brick, jonque, chaland et +drakkar), au 46 (belandre et barge), en Infi (jangada, plate, aviso, allege, +buyse) à Jourdan (vedette, chaloupe, nave, selandre, gondole), montrouge +(ponton, polacre). Cela évolue en fonction des nouvelles machines installées +(les Ultra 5 ont toutes des lecteurs). +
+ + ++Une fois la disquette dans le lecteur, voici quelques commandes utilisables +(il peut y avoir des fichiers et des répertoires sur une disquette): +
+ + + + + +mdir |
+Affiche le contenu de la disquette | +
mcd toto |
+Se déplacer dans le répertoire toto
+de la disquette |
+
mmd toto |
+Crée le répertoire toto |
+
mrd toto |
+Supprime le répertoire toto , à
+ condition que celui-ci soit vide |
+
mcopy a:bla . |
+Copie le fichier bla de
+la disquette vers la station dans le répertoire courant |
+
mcopy bla a: |
+Copie le fichier bla vers la
+disquette |
+
mdel bla |
+Supprime le fichier bla |
+
mdeltree toto |
+Supprime le répertoire toto ,
+ ainsi que tous les sous-répertoires et fichiers qu'il contient (à
+ utiliser avec précaution!) |
+
mformat a: |
+Formate la disquette, donc efface tout. | +
+Ceux qui connaissent les commandes MS-DOS les auront reconnues dans les
+mtools, précédées d'un «m» (pourquoi un «m», personne ne le
+sait). Le lecteur de disquettes est désigné par a:
, et la syntaxe
+pour les répertoires est la syntaxe habituelle, c'est-à-dire que les
+répertoires sont indiqués par /
, et ..
+correspond au répertoire précédent.
+L'utilisation des disquettes est détaillée sur le site des tuteurs,
+avec des exemples: /tuteurs/cours/unix/disquettes.html
.
Gilles Radenne
+ + +Ce mois-ci, nous nous étendons sur le Web, ses principes et ses +fonctionnement, des conseils pour identifier les bons sites, et une +présentation des moteurs de recherche. Dans la rubrique «Forum», on continue +à expliquer comment lire forum, en abordant ce mois-ci la façon d'aller de +conti en conti.
+ + + + + + ++Le Web, c'est le truc dont on parle à la télé: les pages, les machins +multimédia, les «savoirs en ligne», etc. On en parle tellement qu'on dit +«Internet» à la place de «Web» («Je surfe sur Internet», «J'ai trouvé un super +site Internet»). Pire encore, il y a des gens qui confondent le logiciel +utilisé pour naviguer sur le Web, et le réseau lui-même (ce qui donne des +«Tiens, je ne connais pas cette version d'Internet»). +
+ + +Le Web est l'un des aspects d'Internet. +Internet, c'est la mise en réseau mondiale d'ordinateurs. Ça implique une +infrastructure matérielle (câbles, routeurs...), et une série de protocoles +pour faire transiter les informations. Par exemple, le Web utilise le +protocole HTTP (hypertext transfert protocol, protocole de transfert +des fichiers hypertexte). +
+ ++Mais Internet c'est aussi le courrier électronique, le transfert de fichiers, +la connexion à distance (telnet), les news... Pour chacune de ces fonctions, +on utilise un logiciel: navigateur pour le Web, logiciel de courrier, etc. +
+ ++Si vous voulez, Internet c'est comme une route que les gens utilisent pour +différentes fonctions (transport de marchandises, vacances, trajet +boulot-dodo, balade à vélo...), et ces fonctions c'est le courrier, le Web, +etc. +
+ + +Sur le Web2, une
+adresse s'appelle une URL (Uniform Resource Locator). Prenons
+pour exemple l'adresse du serveur des élèves de l'ENS: http://www.eleves.ens.fr/
.
+Le http
au début indique le protocole à utiliser, et signale
+qu'il s'agit d'une page Web (cependant, toutes les pages Web ne sont pas
+servies par HTTP). Le .fr
est un nom de domaine, qui indique
+ici que la page se trouve en droit en France (mais il se pourrait que le
+serveur, en tant que machine physique, matérielle, soit aux États-Unis).
+www.eleves.ens
désigne en réalité une machine qui héberge le
+site des élèves de l'institution ENS. Le 80
désigne un
+numéro de port.
+Enfin, le /
(slash) qui termine l'adresse indique qu'on se
+rend au point de départ de l'arborescence du site, en pratique la page
+d'accueil.
+Tout ceci indique la machine à contacter pour rejoindre la page Web. Ensuite,
+il peut y avoir d'autres informations quelle page précisément on demande à
+voir. Par exemple, http://www.cof.ens.fr/cineclub/
+correspond la page d'accueil du Ciné-Club de l'ENS, elle-même un sous-ensemble
+logique de COF/
.
+Quand vous sélectionnez un lien, votre ordinateur envoie une requête sur le +serveur désigné par l'URL. Ce serveur renvoie la page demandée par votre +navigateur («client» du serveur). +
+ ++L'ensemble de ces données circulent sur des liens physiques, les câbles, qui +ont un débit maximal. La réponse d'un serveur physiquement très éloigné mettra +un peu plus de temps à arriver; une grosse quantité de données mettra plus de +temps à arriver qu'une petite quantité; enfin, à certaines heures, le réseau +est encombré par l'ensemble des données transférées par tous les utilisateurs +connectés à ce moment-là. C'est ce qui explique que parfois, une page soit +longue à charger. +
+ + + Il y a un certain nombre de noms de domaine. Une
+partie indique un pays, dont dépend en droit le serveur: .fr
pour
+les serveurs français, .es
pour l'Espagne, .ru
pour la
+Russie, .jp
pour le Japon, etc.
+
+Il en existe d'autres, comme .edu
pour les universités américaines,
+.org
pour les institutions à but non lucratif, .gov
pour le
+gouvernement américain. .int
est utilisé en particulier par les
+organisations établies par traités internationaux, par exemple l'Union
+européenne.
+
+De nouveaux noms de domaines sont apparus avec l'engouement pour le Web. Par
+exemple, .com
désignait à l'origine des sites d'entreprises, et
+.net
des fournisseurs d'accès au réseau. Mais AOL, fournisseur
+d'accès, a comme adresse aol.
com
(pour des raisons
+historiques, certes). D'autre part, des entreprises peuvent avoir un site avec
+un suffixe .net
, à cause de leur fournisseur d'accès.
+
C'est aussi une question de modes: .com
est à la mode en
+ce moment, donc les sites veulent absolument un suffixe en
+.com
, y compris si c'est aberrant. Je pense ici au Mur pour
+la Paix (au Champ de Mars). Le monument a un site Web, sur lequel on peut
+déposer des messages, qui seront ensuite affichés sur les écrans du
+monument. Et leur adresse est http://www.murpourlapaix.com/
,
+alors que c'est un suffixe .org
, réservé aux organisations à
+but non lucratif, qui s'imposait...
+Un autre exemple: le suffixe .tv
est théoriquement réservé aux îles
+Tuvalu; mais le Web est quelque chose de rentable, et elles ont vendu quelques
+noms de domaines à des chaînes de télévision qui voulaient une adresse en
+.tv
...
+
+Le site des tuteurs propose un certain nombre de cours sur le Web: comment
+écrire les pages Web, y insérer des images, concevoir son site
+(/tuteurs/internet/html/
, comment utiliser Netscape (cours du
+Hublot l'an dernier: /tuteurs/docs/hublot/index.html#annee-1999-2000
).
+
+Qu'est-ce qu'un «bon» site ? En laissant de côté le top site méga cool avec +mes photos de vacances, on peut essayer de dresser une liste de choses qu'un +site sérieux se doit d'avoir. +
++On peut d'emblée résumer la qualité principale d'un tel site sous le +mot: lisibilité. Et dans le monde des pages Web, ce mot contient la +notion d'accessibilité. On en tire les implications suivantes: la page doit +pouvoir être lue par n'importe quel navigateur, les informations doivent être +précises, la mise à jour doit être régulière, et enfin il doit être facile de +circuler non seulement dans le site mais aussi vers l'extérieur. +
+ ++C'est pourquoi les sites qui respectent ces principes sont agréables et +intéressants à consulter. Les «bons» sites possèdent en général 7 traits +distinctifs. +
+ ++1. Le lien permettant de revenir à la page d'accueil, ou +«Home»: en général, il se trouve sous la forme d'une icône avec le logo +du propriétaire du site, et se trouve conventionnellement en haut à gauche de +la page Web; on le trouve parfois en toutes lettres («Home», «Retour à la page +d'accueil») en bas au centre de la page. Un tel lien permet de commencer une +nouvelle recherche dans l'arborescence du site. +
+ ++2. Le plan du site («Site map», «Site index»): +très utile pour se répérer, il permet d'avoir une vue d'ensemble du site, et +d'orienter sa recherche en fonction des catégories (par ex.: météo, loisirs, +arts, sports, info). +
++3. Un moteur de recherche intégré au site +(«searchable») permet un accès rapide à un concept, permet d'être fixé +rapidement sur nos attentes vis-à-vis de ce site. +
++4. La rubrique help/FAQ (frequently asked +questions, «foire aux questions» en français) ou «Présentation»: il peut être +utile de commencer la consultation d'un site par cet endroit. On peut y +trouver le mode d'emploi du site, son fonctionnement, la périodicité de mise à +jour, le nom du propriétaire, les liens. +
+
+5. Quoi de neuf? / «Nouveau» (What's new): indique
+les dernières modifications de la page, notamment les nouveaux services qui
+viennent d'être ajoutés, ou encore une réorganisation du site. Il est possible
+d'être tenu au courant de l'actualité d'un site grâce à une lettre
+d'information («newsletter») par courrier électronique. Pour cela, il
+suffit de s'inscrire en laissant son adresse électronique (voir par exemple le
+site du Monde diplomatique: http://www.monde-diplomatique.fr/
).
+
+6. Les liens (links): si par malheur vous n'avez pas +trouvé ce que vous cherchiez sur un site, allez visiter ses liens, qui +normalement vous dirigeront vers des thèmes similaires à ceux qui vous ont +amené là. +
++7. Contact (feedback): c'est la rubrique qui permet +de prendre contact avec les concepteurs du site. Attention! Adressez-vous à +la bonne personne et à bon escient. La personne qui a rédigé le contenu de la +page (par ex., un article sur les élections présidentielles américaines) n'est +pas (pas forcément en tout cas) la même que celle qui a mis la page en langage +HTML. À la première personne vous poserez des questions concernant l'article, +à la deuxième vous exprimerez vos plaintes ou vos louanges à propos de la mise +en page. Dans ce dernier cas, il est recommandé de lire les FAQ au préalable, +pour ne pas être le 37e à poser la même question. +
+ + +Yann Tholoniat
+ ++NDLR: on peut ajouter un huitième critère:«lisible» veut le plus souvent dire +«sobre»... Pas de débauche de couleurs, pas de trucs qui clignotent, pas de +choses écrites en petit dans tous les sens, pas de publicités dans tous les +coins, pas de «gratuit!» ou «pas cher!» aux quatre coins de la page, etc. +
+ + + + ++Il est presque impossible de trouver une information sur le Web sans utiliser +de moteurs de recherche. Ce sont des sites qui permettent d'interroger +des bases de données constituées par des robots qui +parcourent le Web et référencent les pages visitées. Mais il faut bien être +conscient que les moteurs de recherche ne référencent au mieux que 15% des +pages existantes. +
+
+Voici un exemple d'utilisation du moteur de recherche Altavista
+(http://www.altavista.com/
). Je demande «Iran», sans plus de détails;
+j'obtiens 430 665 réponses. Je demande alors que la recherche se fasse
+uniquement sur des fichiers en français; je n'ai plus que 12 085 réponses.
+Ensuite, je raffine la demande, en la précisant progressivement; voici les
+résultats:
+
Iran |
+ : |
+12 085 | +
+Iran +1979 |
+ : |
+1 722 | +
+Iran +1979 +révolution |
+ : |
+616 | +
+Iran +1979 +révolution +Shah |
+ : |
+48 | +
+Le signe +
veut dire que le mot qu'il précède (sans espace) doit
+obligatoirement figurer dans la page référencée. Vous pouvez également
+utiliser le signe -
, pour exclure impérativement le mot des pages
+recherchées. En règle générale, quoi que l'on recherche, il est utile
+d'ajouter -hotel -restaurant
... Enfin, si vous recherchez une
+expression telle quelle, mettez des guillemets américains autour
+("guerre et paix"
par exemple). Ces signes s'appellent des
+opérateurs booléens.
+
+Raffinez le plus possible vos requêtes: si vous avez plus d'une centaine de +pages à consulter, vous ne vous en sortirez pas. D'autre part, soyez +conscients que votre requête sera nécessairement ambiguê, même si vous ne vous +en rendez pas compte: une recherche sur «cirque» trouvera «arts du cirque» +comme «cirque glaciaire». +
+
+Tous les moteurs de recherche ne s'utilisent pas comme Altavista. Avec Google
+(http://www.google.com/
), il est inutile de mettre des +
.
+Yahoo (http://fr.yahoo.com/
pour le site français) classe ses adresses
+selon une arborescence. Lycos (http://www.lycos.fr/
) utilise les
+opérateurs booléens et aussi une arborescence.
+
+Nous avons présenté le mois dernier les contis (groupes de discussion) +existant dans forum. Ce mois-ci, on va voir comment lire forum, au delà de la +commande de base (barre d'espace) expliquée dans le numéro d'octobre. +
+ + + Pour lancer forum, tapez forum
, cliquez sur
+l'icône forum ou sur le bouton «Lire forum» de la fenêtre d'information
+(xforumco
, conscrits 2000). Si vous voulez lire un conti
+spécifique, par exemple kfet
, il suffit de taper:
+
+brick ~ $ forum kfet
+
+Forum se présente comme ceci: une barre avec le nom du groupe de +discussion, et à droite le numéro du message, suivi du nombre total de +messages, et entre parenthèses le nombre de messages non lus dans le +groupe de discussion.
+ + +
+En bas, vous avez une autre barre avec les commandes les plus courantes:
+barre d'espace pour aller de message en message, «R
» pour
+répondre à un message, «m
» pour en poster un, et «q
»
+pour quitter. Sous cette barre, vous avez un prompt «À vous», où
+s'affichent les commandes que vous tapez.
+
+Le message lui-même ressemble à un courrier électronique, avec le nom de +l'auteur, la date et le sujet du courrier, éventuellement le nom de la +personne à qui l'auteur répond, et parfois d'autres informations: +
+ ++ +
+ + + + + ++Une fois le message lu, appuyez sur la barre d'espace pour aller au prochain +message. Quand tous les messages du conti sont lus, forum affiche «Fin du +newsgroup». Si vous rappuyez sur la barre d'espace, forum vous place sur +le prochain conti auquel vous êtes abonné, et dans lequel il vous reste +des messages non lus. Quand tout est lu, forum affiche «Rien de nouveau». +
+ + +
+Vous n'avez plus qu'à taper «q
» pour quitter forum. Lire forum
+se résume donc à deux touches: la barre d'espace pour lire, et
+«q
» pour quitter.
+
Les messages de forum sont des +discussions: un premier message a des réponses, d'autres répondent à ces +réponses, et cela donne ce que l'on appelle une enfilade (thread +en anglais). Certains messages ont plusieurs réponses, et de fil en +aiguille la conversation dérive souvent sur d'autres sujets. +
+ +
+Le schéma (ou arbre) de la discussion est représenté en haut à droite de
+l'écran: les «O
» majuscules représentent les messages encore à
+lire, les «o
» minuscules ceux qui sont lus; l'arobase
+«@
» représente le message sur lequel vous vous trouvez. On peut
+se déplacer dans l'arbre avec les flèches, et taper sur «Entrée» pour
+lire le message ainsi sélectionné.
+
+Enfin, on peut utiliser la touche «N
» pour avoir une vue plus
+grande de l'arbre de discussion (refaire «N
» pour revenir à la
+vue normale).
+
Quand vous lisez forum à la barre d'espace, vous +lisez les messages dans l'ordre de la discussion. Quand celle-ci est +terminée, vous passez à une autre discussion. +
+ ++À l'inverse, la touche «Entrée» affiche les messages dans l'ordre de leur +publication, indépendamment de leur ordre logique. +
+ + + Pour se rendre dans un conti donné, tapez
+«G
» suivi du nom du conti et de la touche «Entrée». S'il y a
+plusieurs possibilités (par exemple, les contis d'annonces), le programme
+proposera un menu; utilisez les flèches du clavier pour vous déplacer
+dans le menu et appuyez sur «Entrée» pour sélectionner le conti à lire.
+
Une fois dans un conti (ou dans la liste de +ceux-ci) on peut utiliser «A» pour s'abonner et «D» pour se désabonner. +
+ +
+Quand on s'abonne à un nouveau conti, on risque de trouver qu'il y a un
+nombre considérable de messages non encore lus; les conscrits 2000 sont
+chanceux, ils n'auront à lire que les messages vieux de sept jours au
+plus (ne vous laissez pas impressionner par ce qu'affirme
+xforumco
sur les 1 420 messages non lus).
+
+Cela dit, si vous ne voulez pas lire tous les messages en retard (surtout
+si vous n'êtes pas conscrit), utilisez la touche «z
» (comme
+zapper), suivie d'«Entrée», pour marquer tous les messages comme lus.
+
On peut avoir la liste des contis en
+tapant «L
» suivi d'«Entrée». Plusieurs listes s'affichent à la
+suite:
+
Pour quitter ces listes, tapez q
jusqu'à récupérer le
+prompt «À vous» en bas d'écran. S'il y a deux listes, c'est pour avoir
+plus rapidement accès à celle des contis que vous fréquentez
+habituellement.
Vous remarquez des lettres devant les noms de certains contis: un
+«T
» veut dire que vous êtes abonné (vous lisez tout
+ce conti), un «U
» veut dire que vous êtes désabonné
+(unsubscribe)3. Quand il n'y a aucune lettre, c'est que vous n'avez
+jamais mis les pieds dans ce conti. Pour les promotions antérieures, ces
+marqueurs peuvent être différents.
Maintenant que vous connaissez les deux +listes de contis, sachez que vous pouvez les utiliser pour vous rendre +dans un conti donné: sélectionnez-le avec les flèches et tapez «Entrée». +
+ + + +Barre d'espace | +Aller au prochain message | +
N |
+Afficher/cacher l'arbre de la discussion | +
L |
+Afficher les listes de contis | +
G conti |
+Aller dans ce conti | +
z |
+Zapper tous les messages du conti | +
A |
+S'abonner au conti | +
D |
+Se désabonner du conti | +
R |
+Répondre | +
m |
+Poster un message | +
q |
+Quitter | +
+Le mois prochain, on expliquera comment poster dans forum. +
+ + +David Madore, Émilia Robin
+ ++Ce cours explique progressivement ce qu'est un ordinateur. Le mois +dernier, on a vu en quoi consistait la mémoire, et comment l'information +circulait à l'intérieur de la bête. Ce mois-ci, on va voir à quoi sert le +processeur.
+ + + + ++«Grand Maître, maintenant que nous savons où est l'information, et +comment elle voyage, où donc va-t-elle?» +«Elle affronte son destin, jeune apprenti. Le sort de toute information est +d'être répétée, amplifiée, déformée, cuisinée et pressée jusqu'à ce que sa +substantifique moëlle en soit extraite. Et le morceau responsable de cela, +c'est le processeur.»
+ + + ++«Il n'est point de domaine de la pensée qui échappe à la logique militaire. +C'est en vertu de cet adage que l'informatique est universelle et le champ du +manipulable par ordinateur est étendu (et, réciproquement, les choses qui +échappent aux militaires sont aussi celles à propos desquelles l'ordinateur +n'est d'aucun secours). Car le processeur est le vrai tâcheron de l'affaire, +le composant qui sait faire le plus de choses et qui a le moins +d'initiative.
+ + ++Le processeur, souvent dit central, ou encore CPU (Central Processing +Unit), est une puce de format classique (c'est-à-dire un peu de sable dans +une boîte en plastique), et il est caché sous un amoncellement de ventilateurs +et de circonvolutions métalliques (structure destinée à le refroidir, car il +chauffe beaucoup). Son boulot: le règlement, tout le règlement, rien que le +règlement. Il comprend des ordres simples, ordres qui sont codables par des 0 +et 1, et que le processeur va chercher en mémoire. +
+ ++Chaque ordre, il l'exécute à la lettre, sans chercher à comprendre le +sens de cet ordre, si tant est qu'il en ait un. La machine n'a pas +d'objection a afficher que deux et deux font cinq. Elle peut le faire +plusieurs millions de fois par seconde, si on lui demande. Elle peut +aussi calculer que deux et deux font quatre si un tel calcul est ordonné. +Elle n'est ni psychotique, ni névrosée. +Les ordres compréhensibles par le processeur sont de deux types: ceux qui +demandent d'effectuer un vrai travail (additionner deux nombres, par exemple), +et ceux qui servent à faire tourner la machine, c'est-à-dire de +l'administration interne; et, comme sa grande soeur en uniforme, le +processeur passe beaucoup de temps à s'occuper de lui-même. Plus précisément, +voyons au juste quels sont les ordres possibles. +Le processeur peut aller chercher des données en mémoire; c'est-à-dire envoyer +sur un bus en direction de la mémoire une requête disant «envoie-moi le +contenu à l'adresse numéro tant» (car chaque bit de la mémoire a une adresse, +qui l'identifie uniquement). +
+ ++En réponse, la mémoire renvoie la donnée requise, ou un code de protestation +si les données demandées n'existent pas (comme cela peut arriver si le +processeur demande le bit 1 934 675 208 et que la mémoire ne contient que +805 306 368 bits). Dans la pratique, le processeur demande ainsi des suites +de quelques dizaines de bits consécutifs (guère plus, car ils ne tiendraient +pas tous dans le bus). +Le processeur peut envoyer des données à la mémoire, pour stockage. Le +mécanisme est similaire à celui de la lecture. +Le processeur peut additionner, soustraire, multiplier, voire diviser et +trifouiller de quelques autres manières des nombres. Ces nombres sont +représentés par des suites de 0 et de 1, et ne peuvent pas dépasser certaines +valeurs (car le processeur ne peut pas manipuler des suites trop longues d'un +seul coup -- il reste limité). +Le processeur va chercher ses instructions en mémoire, à la suite: il peut +recevoir pour ordre d'aller dorénavant les chercher à une autre adresse. On +appelle ça un saut, c'est comme un renvoi dans un formulaire de la Sécurité +Sociale («Si vous n'êtes pas demandeur d'emploi, ne remplissez pas le cadre +suivant et allez en 11»). +
+ ++Toutes ces fonctions ont des ordres spécifiques, représentés par des suites +bien définies de 0 et de 1. Et une suite d'ordre, c'est un programme. Parfois, +on appelle le programme un logiciel si on veut faire smart, ou +software si on veut faire smart et british à la fois.» +
+ ++«Mais, Guide Suprême, si les données et les ordres sont des suites de 0 +et de 1, comment le processeur distingue-t-il les données des ordres?» +«Et comment fais-tu la différence entre une averse et un crachin +fortement vivifiant?» +«C'est une question de contexte; le crachin n'apparaît qu'en Bretagne et +Normandie. Dans le Midi, là, il pleut.» +«Ben là c'est pareil, petit scarabée. Si le processeur a demandé une +instruction, ce qu'il a obtenu, c'est pour lui une instruction. S'il a demandé +des bits censés coder un nombre, il a obtenu un nombre. D'ailleurs, les +différents ordres exécutés par le processeur passent leur temps à utiliser des +informations pour ce qu'elles ne sont pas; par exemple, un nombre devient +rapidement une adresse d'un bit en mémoire, et vice-versa. +
++Et si un jour le processeur tombe sur quelque chose qu'il ne comprend pas (par +exemple, une donnée qu'il prend pour un ordre, mais ces 0 et 1 ne codent aucun +ordre valide), alors le règlement prévoit des instructions alternatives +d'urgence, à exécuter. +
+ ++Ainsi travaille le processeur, toujours obéissant, sans initiative, il est +l'exécutant irresponsable qui amplifie toute erreur jusqu'à l'absurde, +éventuellement jusqu'au suicide; le processeur n'a pas de capacité propre +d'auto-destruction4 mais peut se stopper et ne plus +fonctionner jusqu'à ce qu'on coupe et remette le courant. Et paf le rapport de +vingt pages. Et c'est la faute du programmeur, qui a conçu une suite d'ordres +absurdes. +
+ ++Une telle erreur de programmeur, ça s'appelle un bug. Tout logiciel un +tant soit peu utile à un quelconque travail comporte des dizaines de +bugs5, voire même beaucoup plus. +Ainsi va le Monde.» +
+ + +Thomas Pornin
+ + + ++Le problème de base du chiffrement, c'est la confiance... De même +qu'on fait confiance à des gens pour envoyer des jolis programmes, et pas +des virus. Ou qu'on fait confiance à son destinataire pour ne pas faire +n'importe quoi avec les messages qu'on lui envoie. Ou qu'on fait +confiance à l'administrateur système pour ne pas regarder n'importe où. +Quand on se rend compte que tout le monde il est pas Beau et tout le +monde il est pas Gentil, on se dit qu'on voudrait bien un peu de +confidentialité... Ça s'appelle le chiffrement. NDLR: ce qui suit est +parfois dit sur un ton ironique; ne vous laissez pas abuser, son auteur +est un spécialiste de cryptographie...
+ + + + + + +rendre inintelligible une donnée à toute personne ne +connaissant pas un certain secret, nommé «clé».
utiliser la clé pour rendre à nouveau intelligible une +donnée chiffrée.
rendre à nouveau intelligible une donnée chiffrée, sans +connaissance préalable de la clé (action normalement impossible si le +protocole de chiffrement est correct).
ce terme n'existe pas ; il est néanmoins souvent employé en +lieu et place de chiffrer. Au bûcher les crypteurs.
art du chiffrement, de la signature, de +l'authentification et de la vérification d'intégrité.
art du décryptage, de la production de faux, de la +tromperie et de la corruption silencieuse des données.
science regroupant la cryptographie, la cryptanalyse et +l'analyse scientifique de ces deux domaines.
On a envie de chiffrer ses données dès que l'on +transfère des choses privées: informations personnelles, mots de passe, +numéro de compte en banque, etc. Sans chiffrement, tout ceci circule +comme des cartes postales, lisible par qui veut s'en donner la peine.
+ + ++Le chiffrement assure un peu de confidentialité aux données sensibles. Il +permet aussi de se la jouer superhéros défenseur de la liberté quand on +n'a pas de données sensibles à protéger.
+ + ++Signer/authentifier/vérifier servent à faire des opérations légales, et +surtout du commerce, sur un support informatique aléatoire, espionnable +et falsifiable à loisir par des hordes de méchants dont on n'imagine pas, +d'habitude, le nombre ni l'acharnement (exemple: Internet).
+ + + +Le chiffrement est utile pour certaines +entités. Un exemple-type est un réseau informatique entre une entreprise +et ses filiales délocalisées. +
+ ++Signature/authentification/vérification: oui. Ça permet de lire son +courrier sereinement depuis l'université de Pétaouchnok-les-oies. +
+ ++Mais la cryptographie ne fait pas tout; par exemple, la meilleure +cryptographie n'empêche personne d'espionner un écran à 200 mètres de +distance avec un télescope.
+ + + +Ça dépend du pays. En France, pour la plupart des +systèmes, oui. Le décret du 17 mars 1999 règle les modalités d'usage, de +fourniture, d'importation et d'exportation des systèmes cryptographiques; il +en ressort qu'un particulier a accès, légalement, à des outils dont la +sécurité est à l'épreuve de l'espèce humaine (dans son intégralité), au regard +du niveau technologique atteint actuellement par ladite espèce.
+ + ++Une loi libéralisant totalement l'usage de la cryptographie a été +promise par Lionel Jospin pour la fin 1999 (là c'est raté) puis +repromise par Laurent Fabius pour «courant 2001».
+ + ++Dans la plupart des pays, l'usage est libre, l'import/export réglementé. Dans +certaines contrées (Chine, Iran, Syrie...), la possession et l'usage sont +sévèrement interdites.
+ + + +En termes de sécurité, on sait fabriquer des +systèmes inviolables. Il existe aussi plein de systèmes parfaitement +nuls. D'autre part, la cryptographie établit des tuyaux sécurisés entre +deux points de l'espace-temps, mais ne protège pas ces points. Si +l'information existe, en clair, quelque part à un moment donné, elle y +est vulnérable. Attention aux gens qui regardent par dessus votre épaule. +N'écrivez pas vos mots de passe sur un post-it collé sous le clavier. +
+ ++En termes de performances, c'est raisonnable pour lire son courrier à +distance via un ssh ou chiffrer un courrier avec +PGP6. C'est encore trop lourd pour faire une sécurité +complète et transparente dans certains cas (chiffrement automatique d'un +disque dur, par exemple).
+ + + +Pour l'utilisateur de base, oui, ce n'est pas +difficile. Sinon, la cryptographie rentre dans le cadre de la sécurité +informatique, ce qui est un métier et ne s'improvise pas.
+ + + +Les deux prochains numéros +détailleront l'utilisation de logiciels sécurisés: en janvier, PGP (pour +encrypter le courrier électronique), et en février ssh (pour sécuriser +les connexions à distance).
+ + + + + +On mélange tout, suivant une méthode précise, un peu +comme une recette de cuisine. La recette, tout le monde la possède, mais +les proportions exactes utilisées, c'est la clé. On peut faire, quand on +est très fort, un chiffrement dit «asymétrique», où la clé pour chiffrer +et celle pour déchiffrer ne sont pas la même (elles sont liées ensemble, +forcément, mais on ne peut pas deviner l'une en fonction de l'autre). Ça +permet de rendre une des clés publiques (on la publie dans un annuaire, +par exemple) tout en gardant l'autre secrète. Ceci permet de réaliser +des opérations intrinsèquement asymétriques: +
+ + +Les méthodes de chiffrement asymétriques demandent des constructions +mathématiques un peu lourdes; dans la pratique, ça va nettement moins +vite que les méthodes de chiffrement symétriques, où la même clé sert +pour le chiffrement et le déchiffrement. Donc des outils tels que PGP +(chiffrement et signature de mails) et SSL (établissement d'une connexion +authentifiée et chiffrée) utilisent une mixture: de l'asymétrique pour +arriver à transmettre de façon sûre un secret commun, utilisation de ce +secret commun pour chiffrer efficacement les données.
+ + + +Thomas Pornin
+ +
+On appelle alias une traduction que vous définissez
+pour un mot que vous tapez en ligne de commande; c'est le plus souvent un
+raccourci. Par exemple, si vous tapez rm
, la machine comprendra
+rm -i
. Les alias qui sont définis de façon permanente le sont
+dans le fichier .zshrc
de votre compte (config conscrits). La
+commande alias
permet d'avoir la liste des alias actuellement
+définis.
Uniform Resource Locator. C'est ce que les médias
+appellent une «adresse Web», C'est un bout de texte, possible à taper au
+clavier, qui indique comment accéder à un document ou une autre donnée.
+Les plus courantes sont en «http://
», ce qui indique le
+protocole (pour ce mot, voir le numéro 9 du Hublot) à utiliser, et
+précisent un ordinateur à contacter et le fichier à lui
+demander.
Le Hublot est le journal des tuteurs informatique de l'ENS. Il paraît +chaque mois à 350 exemplaires. Il est également disponible sur le +Web:
+
+http://www.eleves.ens.fr/tuteurs/docs/hublot/
+Rédaction: Émilia Robin. +
+ ++Ont collaboré à ce numéro: Marc Espie, Nicolas George, David Madore, Thomas +Pornin, Jérôme Plût, Gilles Radenne, Yann Tholoniat. +
+ +Merci à Olivier Verzelen pour ses relectures.
Une sauvegarde tous les mois, ça veut dire que +vous vous autorisez à perdre, éventuellement, un mois de +travail.
On reprend ici un article paru dans le +numéro 5 du Hublot, en mars 2000.
On l'a déjà dit ailleurs, on le redit: il y +a une certaine part d'arbitraire, et aussi d'habitudes antérieures, dans +le choix des commandes de forum, de l'emplacement des contis, ou encore +ici des marqueurs.
Enfin, quelques-uns si, mais on préfère éviter, +parce qu'après ça fait des histoires.
Tous sauf un: car +Knuth est Grand.
Patience, ces termes mystérieux seront expliqués dans les +prochains numéros.
+
+ +Le premier stage info de l'année a lieu les 16, 17 et 18 février 2001.
+Pour tous les détails, voir en
+page ??.
+On avait annoncé un cours sur PGP: en l'absence de rédacteur,
+c'est annulé... Si ça vous intéresse, vous pouvez toujours aller voir
+cette page:
+http://www.madore.org/~david/misc/best_of_GroTeXdieck/PGP
+À part ça, le Hublot est aussi tout fier d'étrenner sa classe de document
+hublot
, écrite par Nicolas George et Florent Hivert, qui automatise
+plein de choses et permet d'écrire «Hublot» comme des pros!
+Comme dans chaque numéro, les conseils de lecture et les bonnes adresses:
+
http://www.eleves.ens.fr/
http://www.eleves.ens.fr/tuteurs/hublot/
Nous
+sommes toujours à votre disposition pour toutes questions et suggestions:
+tuteurs@clipper
. Vous pouvez
+aussi mettre un mot dans le casier de Marie-Lan Nguyen. Enfin, n'oubliez
+pas que quand vous tapez qui
, les tuteurs ont leur nom
+souligné: n'hésitez pas à nous solliciter!
+Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on présente les différentes +sortes de calculs, et les logiciels existants.
+ ++Selon le type de calculs que vous faites, vous aurez recours à des +logiciels différents. Pour des opérations élémentaires, vous avez besoin +de calculatrices, équivalentes aux calculatrices de bureau, dont +elles adoptent d'ailleurs la présentation. Il existe aussi des logiciels +de calcul numérique en mode texte, ainsi que des tableurs pour certains +cas. Enfin, les langages de programmation comme le C ou le Perl +permettent d'écrire des petits programmes pour analyser vos données +(statistiques, etc). +
+ ++Les logiciels de calcul numérique travaillent uniquement sur des +nombres réels ou complexes (par exemple: 45, 1,456), le plus souvent +approchés en machine en virgule flottante. Le calcul numérique est +utilisé pour simuler des phénomènes naturels (ex: météorologie, +résistance d'édifices...).
+ + ++Faire des calculs en virgule flottante veut dire que l'on fait une +approximation des nombres réels en machine en gardant «un certain nombre +de chiffres après la virgule». La virgule est alors rendue flottante, +c'est-à-dire qu'on la place au niveau du premier chiffre significatif et +que l'on ajoute un exposant (ex: 1 milliard équivaut à 1· 109). La perte de +précision est ainsi relative au nombre manipulé. +
++Il existe aussi des logiciels qui savent faire des calculs exacts, et +même se débrouiller avec des variables. Ce sont des logiciels de +calcul formel (ou symbolique). Ceux-ci font des calculs sur des +objets algébriques contenant éventuellement des inconnues (polynômes, +etc...); par exemple: cos(x+y). +
+ + + + +
+ Il y a xcalc
et
+kcalc
. Ce sont de petits programmes qui se présentent comme une
+fenêtre imitant une calculatrice, avec ses touches et son écran. Pour les
+lancer, il suffit de taper leur nom. Les conscrits 2000 trouveront
+kcalc
dans le sous-menu Utilitaires
du menu de fond d'écran.
+Les autres ont xcalc
.
+
xcalc
est installé sur toutes les machines Unix, stations
+Sun et PC Linux. Pour le quitter, mettre le curseur sur la fenêtre de la
+calculatrice et taper q
.kcalc
n'est pas installé sur les PC Linux (c'est en fait un
+lien vers xcalc
). Il est plus joli et plus complet, et aussi plus
+lourd, que xcalc
. Pour le quitter, une fois n'est pas coutume, il
+faut sélectionner Fermer
dans le menu de la fenêtre.Il est possible de faire un copier-coller depuis
+les calculatrices (cliquez avec le bouton gauche pour sélectionner, collez
+avec le bouton du milieu1. Avec kcalc
, on peut aussi faire du
+copier-coller vers la calculatrice (coller le nombre avec le bouton du
+milieu dans l'écran de la calculatrice).
+
Il s'agit ici de bc
, qui se lance dans le terminal, sans
+nouvelle fenêtre (donc y compris quand quand vous êtes connecté depuis
+l'extérieur par telnet ou SSH). C'est un logiciel austère, mais très
+pratique quand on veut faire des opérations rapidement. Lancez-le avec
+l'option -l
pour avoir des chiffres après la virgule, et
+avec l'option -q
pour vous épargner le texte de copyright.
+Pour le quitter, tapez ^D
.
+Ensuite, vous tapez littéralement vos opérations (espaces indifférents), et +vous appuyez sur Entrée pour avoir le résultat :
+ + + +
+brick ~ $ bc -lq
+34 * (2+1)
+102
+
+Pour les nombres décimaux, on met un point et pas une virgule. Les opérateurs +sont les suivants:
+ ++ |
+(addition) | +
- |
+(soustraction) | +
* |
+(multiplication) | +
/ |
+(division) | +
^ |
+(exposant) | +
% |
+(modulo) | +
s( n ) |
+(sinus de n) | +
c( n ) |
+(cosinus de n) | +
a( n ) |
+(arctangente de n) | +
l( n ) |
+(logarithme de n) | +
e( n ) |
+(exponentielle de n) | +
sqrt( n ) |
+(racine carrée de n) | +
+Vous pouvez utiliser des variables pour conserver des résultats en mémoire, et +les réutiliser plus tard:
+ + + +
+brick ~ $ bc -lq
+a = (3+4)/2
+b = 5
+c = a + b
+print a
+3.50000000000000000000
+print b
+5
+print c
+8.50000000000000000000
+
+
+
+ Si vous utilisez régulièrement bc
,
+nous vous conseillons de le lancer avec l'utilitaire ile
(input
+line editor), un petit logiciel qui permet l'édition de la ligne de commande.
+Ça veut dire que vous pouvez utiliser les flèches pour remonter dans les
+opérations que vous avez tapées auparavant, ou pour vous déplacer dans celle
+que vous êtes en train d'écrire. Pour ce faire, tapez:
+brick ~ $ ile bc -lq
+
+
+Le reste est inchangé. Il existe aussi ledit
(line
+editor), qui s'utilise exactement de la même façon, et semble plus
+efficace, mais plus lourd. Ce type de logiciel s'utilise avec des
+logiciels interactifs en mode console, comme civserver
.
+
+Ce sont des logiciels destinés à réaliser simplement des programmes de calcul +numérique: résolution d'équations, manipulation de grosses matrices, +optimisation, résolution de systèmes linéaires ou non linéaires, traitement de +signal. L'utilisateur peut y programmer des applications complètes, avec +éventuellement une interface graphique (cartes, coupes...). +
+ + + +matlab
.scilab
, ou scilab -nw
en mode texte. http://www-rocq.inria.fr/scilab/
Il
+existe aussi GNU Octave (http://www.octave.org/
),
+un autre clone libre de Matlab.
xmaple
, ou maple
en mode texte.
+http://www.maplesoft.com/
mathematica
. Le site Web correspondant est
+http://www.wolfram.com/
xmupad
, ou mupad
en mode texte. http://www.mupad.de/
Il serait très difficile d'en dire plus sans dépasser largement le +cadre de cet article. De toute façon, vous ne risquez absolument rien à +essayer tout et n'importe quoi avec ces logiciels.
+ + + + + + Les tableurs permettent de faire rapidement des
+tableaux de calculs, en mettant en page les résultats. Nous avons deux
+tableurs sur les stations, intégrés à StarOffice (soffice
) et
+ApplixWare (asterix
). Avec StarOffice, on le lance en choisissant
+«Nouveau classeur»; avec ApplixWare, on clique sur le bouton à carreaux
+(bouton du milieu). Ces deux logiciels sont capables d'importer des fichiers
+Excel.
+Ce genre d'applications est censé être facile à utiliser. Tout ce qu'il faut +savoir, c'est que les cases acceptent du texte, des nombres et des formules. +Les formules seront automatiquement tenues à jour quand les cases dont elles +dépendent changent. Il est possible de copier une formule d'une case à une +autre (en particulier dans toute une colonne), et dans ce cas, les références +aux autres cellules sont déplacées également. +
+ + + + +gnuplot
C'est un logiciel libre* pour tracer des graphes, avec des sorties dans
+un tas de formats. Le «gnu» du nom n'est pas une référence au projet GNU*. On le lance en tapant gnuplot
.
+http://www.gnuplot.org/
Ce mois-ci, on papote sur Internet: vous trouverez une présentation des +news (les groupes de discussion mondiaux), une explication de ce +qu'est la «modération», et vous apprendrez comment poster dans le forum +des élèves.
+ + + + + + +
+Il existe divers moyens de papoter sur Internet, soit de manière
+synchrone (ICQ, IRC, les chats divers et variés), soit de manière
+asynchrone (courrier électronique, news). Les news sont des groupes de
+discussion thématiques, exactement comme le forum des élèves, à ceci près
+que forum est interne à l'ENS, tandis que les news sont mondiales... Ce qui
+suit est une présentation succinte, pour les détails, nous vous renvoyons à
+notre site: /tuteurs/internet/news.html
.
+
On va vous parler ici des news Usenet, qui +n'appartiennent pas à des sociétés (il existe aussi des hiérarchies de +news appartenant à des fournisseurs d'accès). +
+ +
+Les newsgroups ont un nom composé de plusieurs mots séparés par
+des points. Ces mots forment des hiérarchies à la fois thématiques et
+nationales. Si le nom ne commence pas par un préfixe «national», le
+groupe est anglophone: comp.os.unix
est un groupe anglophone
+pour parler d'ordinateurs (computers), et plus précisément du
+système d'exploitation* (OS) Unix en anglais; fr.comp.os.unix
+parlera d'Unix en français.
+
+Exemples de préfixes nationaux: es
(espagnol), it
+(italien), de
(allemand). Exemples de hiérarchies thématiques:
+biz
(business), rec
(loisirs), soc
(questions
+de société).
+
+Chaque groupe de discussion a une charte, qui dit précisément de quoi
+parle le groupe: fr.education.divers
parle de pédagogie et
+d'enseignement, fr.education.entraide
est fait pour pleurer
+qu'on ne sait pas faire sa dissert (et aider ceux qui pleurent). Le
+premier n'est donc pas censé accueillir des messages demandant de l'aide
+pour un devoir.
+
Il existe différents logiciels pour lire les news
+à l'ENS, principalement trn
, slrn
, flrn
+(logiciels en mode texte), et knews
(logiciel graphique en
+français).
+Si vous n'avez jamais lu les news, c'est sans doute knews
qui
+vous semblera le plus intuitif. C'est d'ailleurs lui qui se lance quand
+vous cliquez sur le bouton «News» de la config conscrits. Cliquez sur «Tous
+les groupes» pour afficher la liste des groupes auxquels l'École est abonnée.
+Ensuite, pour lire un groupe, sélectionnez son nom avec la souris et cliquez
+sur «Aller groupe». Les titres des différentes enfilades s'affichent dans le
+cadre du haut; sélectionnez-en une et cliquez sur «Voir enfilade» pour voir
+les messages qui se répondent. Ensuite, vous pouvez lire les messages:
+
+ +
+ +Pour quitter, cliquez sur le bouton «Retour», jusqu'à ce qu'il devienne +«Quitter», et cliquez sur «Quitter». +
+ + + + + +Les règles de politesse du courrier électronique +s'appliquent encore plus sur les news: réfléchissez avant de répondre, ne +citez que les parties intéressantes du message auquel vous répondez, en +éliminant les lignes inutiles2, restez courtois, ne faites jamais d'insultes ad hominem, +postez au bon endroit, et comme toujours, «Soyez exigeant pour ce que vous +envoyez et tolérant pour ce que vous recevez». L'ensemble de ces usages +s'appelle la Netiquette. +
+ + En règle générale, avant de vous mettre à poster dans les news,
+commencez par lire le groupe pendant quelques jours, pour vous faire une
+idée du ton et des interlocuteurs habituels. Et lisez les
+documentations et les FAQ disponibles à l'adresse suivante:
+http://www.fdn.fr/aux/doc-misc/
+
Ne rêvez pas: les gens ne sont pas plus polis
+et plus réfléchis parce qu'ils postent «sur Internet». L'orthographe est
+souvent approximative, les discussions dégénèrent souvent, beaucoup de
+gens postent des messages hors-sujet par rapport au groupe, etc. 50% du
+trafic de fr.soc.histoire
est constitué de batailles avec des
+négationnistes ou de débats sur des questions d'actualité sans rapport
+avec le but originel du groupe. Il faut donc apprendre à faire le tri...
+
+Le mois prochain, on verra comment se connecter à distance avec telnet, par +exemple pour lire son courrier. +
+ + + + ++Voilà un mot bien étrange. Prenez quelqu'un au hasard, (non pas celui qui est +en train de lire cet article par dessus votre épaule, ça ne marchera pas), et +demandez ce que le mot modération lui évoque, et il vous parlera à coup sûr +d'alcool. «À consommer avec modération»... +
+ ++Pourtant quand on commence à s'intéresser un peu à Internet, ce mot +réapparaît... Internet serait-il une annexe des Alcooliques anonymes? Non? +(Quoi que...) Alors que doit-on consommer avec modération? C'est pourtant +assez simple, ce que l'on doit consommer avec modération, c'est la liberté qui +nous est offert par ce média de communication. +
++Qui n'a jamais entendu les mots Internet et Liberté mis côte à côte? Les +média ne se gênent pas pour le faire. On a même un fournisseur d'accès qui +s'est nommé Liberty Surf... Mais enfin, c'est bien beau tout ça, mais +«Liberté», ce n'est qu'un mot, très fortement connoté certes, mais ça ne reste +qu'un mot. Or un mot, sans rien de plus, ça n'est pas très lourd. Alors +quelle est cette fameuse liberté? La principale liberté que nous offre +Internet, c'est celle de publier sur un médium et d'avoir la possibilité +d'être lu. Quand vous envoyez un courrier électronique à une liste de +personnes, quand vous écrivez sur Usenet, quand vous mettez une page HTML en +accès public, vous êtes publié. Mais ce faisant, vous court-circuitez toutes +les instances de contrôle qui existent pour les autres média. Il n'y a pas de +comité de relecture, il n'y a pas de CSA... Vous êtes en mesure de publier ce +que vous voulez, c'est là qu'il y a liberté. +
+ ++Maintenant, dans un monde idéal, on n'aurait guère besoin d'aller plus loin. +Tout le monde serait responsable, publierait des informations utiles, et +respecterait son interlocuteur. Je vais vous dire un secret, dans le monde qui +nous entoure cela ne se passe pas comme ça. +
++Les raisons sont multiples. Que ce soit parce qu'une conversation dévie et +sort du cadre dans laquelle elle a commencée, ou parce qu'un individu ne veut +pas respecter les règles en vigueur, l'expérience montre que si on laisse +faire, très rapidement on voit apparaître un nombre important de messages hors +sujet sur le médium utilisé. Si il y a des endroits où l'on décide d'accepter +ces hors-sujets, il y en a d'autres où l'on veut les éviter pour différentes +raisons. +
+ ++La modération sur Internet, c'est la réapparition d'un comité de relecture. +C'est une atteinte à la liberté totale que nous vantent les média, mais c'est +un moyen efficace d'assurer une certaine lisibilité à un médium qui ne l'est +pas toujours sans cela. +
+ + ++ La modération apparaît sous différentes formes.
+ +eleves@clipper
ou
+tous@clipper
sont modérés par le SPI et par les gourous qui le
+souhaitent3. Il n'est pas souhaitable que ces adresses soient utilisées pour
+n'importe quel broutille (on a déjà vu un élève y envoyer des images de plus
+ou moins bon goût). ens.forum.bienvenue
, ens.forum.annonces
et
+ens.forum.syst.annonces
. Ces groupes sont censés être des groupes
+sérieux, sans hors-sujet:
+bienvenue
contient des messages d'aide et n'est accessible qu'en
+lecture (vous ne pouvez pas écrire dedans);annonces
a vocation à être à contenu très
+informatif;syst.annonces
accueille les annonces sur le système
+informatique. Sur le forum, il existe un autre type de modération dans les groupes
+«sérieux» (tous sauf la hiérarchie alt.
); c'est le blast. On
+en parlera au mois de mars dans la rubrique «Forum».
Il existe en dehors de l'école d'autres supports qui +sont modérés:
+ + + +Le but de la modération est toujours le même: augmenter la qualité des +messages échangés en stoppant le hors-sujet.
+ + +Benjamin Lerman
+ + + ++Maintenant que vous savez lire forum, vous avez certainement envie de répondre +à certains messages, de poser des questions, ou de faire vos annonces à votre +tour. Pour cela, voici la marche à suivre: +
+ + +m
» (comme «message»), suivi de
+Entrée;Sujet:
. Tapez le sujet de votre message, puis
+Entrée;pico
). Tapez votre message
+comme vous taperiez un courrier électronique. Pour finir, tapez ^X
,
+puis «y
» pour sauvegarder le texte, et enfin Entrée (c'est
+pico
qui veut ça).P
» (poster), «E
» (éditer: reprendre le texte du message) et
+«A
» (annuler le message).Pour répondre à un message, tapez «R
» (grand R), puis
+Entrée. Forum lance votre éditeur sur le message auquel vous répondez, en
+le citant. N'oubliez pas de détruire les lignes inutiles, avec
+^K
.
+Si vous voulez poster pour vérifier que tout marche bien, donc sans dire
+quelque chose de précis, le conti adapté est ens.forum.essais
, qui
+sert précisément à cela.
+Le mois prochain, on présentera la Netiquette en usage sur forum. +
+ + +David Madore, Émilia Robin
+ + + +
+Cette rubrique porte sur l'utilisation pratique des machines Unix et de
+LATEX. Tout d'abord, on vous donne tous les détails sur la nouvelle
+version du programme qui
, ainsi que sur l'utilisation de
+l'utilitaire less
. On présente ensuite divers raccourcis
+clavier dans la partie «Config conscrits». Enfin, dans la partie LATEX,
+on explique comment régler la taille de la page.
+
qui
+Le programme «qui
» a récemment changé de version. Désormais, il est
+capable d'afficher également le nom de ceux qui sont connectés depuis les Macs
+via telnet, et de ceux qui travaillent sur les PC sous Windows. Le
+changement se traduit aussi par l'apparition de formes courtes pour les
+options (mais les versions longues sont toujours valides):
+
Version longue | +Version courte | +
+
+-salles |
+s |
+
-sallet |
+t |
+
-46 |
+4 |
+
-infi |
+i |
+
-t15 |
+p (physique) |
+
-jourdan |
+j |
+
-montrouge |
+m |
+
+Les nouvelles options s'utilisent sans tiret devant. Vous pouvez aussi
+les omettre devant les options longues.
+qui
sait maintenant afficher la liste des gens du rézo: l'option pour
+cela est r
(ou -rezo
). Si vous avez une machine sur le rézo
+et que vous voulez apparaître sur la liste, ou pouvoir consulter
+«qui
» sur votre machine, récupérez-le ici:
+
+http://www.eleves.ens.fr/home/plut/qui-5.0.tar.gz
Si vous avez une config conscrits 98 ou antérieure, il est possible
+que vous ayez des problèmes d'affichage (affichage en noir et blanc).
+Dans ce cas, réparez votre config, soit en récupérant une config
+conscrits 2000 complète (tapez configuration --get
), soit à
+la main, en remplaçant dans le fichier .Xresource
de votre
+compte la ligne
+XTerm*termName: xterm +
par:
++XTerm*termName: xterm-color ++
+Pour toutes les options de qui
, tapez qui -help
, ou
+consultez la page de man (man qui
). Pour toutes remarques ou
+suggestions, n'hésitez pas à m'écrire: plut@clipper
.
+
Jérôme Plût
+ ++NDLR: ce programme, développé en interne à l'École, a été à l'origine +créé par Marc Espie, et développé par Joël-Yann Fourré. Jérôme Plût l'a +intégralement réécrit, et mis sous licence GPL*. +
+ + + + + +less
+On a présenté les éditeurs de textes dans le numéro 8 du Hublot
+(octobre 2000). Ceux-ci servent à modifier un texte, mais il y a des cas
+où vous voulez juste regarder un fichier, sans le modifier. Pour cela, on
+utilise souvent un visualisateur de textes (pager en
+anglais). Le plus courant est less
. C'est également
+less
qui est utilisé pour regarder les pages de man*.
+
+Pourquoi ce nom? À l'origine il y avait le programme more
, pour
+en savoir davantage sur un fichier. Une version plus évoluée a été
+faite, qu'on a appelée less
par analogie. Dans certains
+endroits, vous n'aurez que more
à disposition. Si vous avez le
+choix, utilisez less
.
+
less
On utilise less
sur un
+fichier de la même façon qu'un éditeur; par exemple, pour regarder le
+contenu du fichier commentaires.txt
, vous taperez:
+
+brick ~ $ less commentaires.txt
+
+
+Un certain nombre de commandes sont disponibles, y compris pour lancer un +éditeur sur le texte, ou manipuler plusieurs fichiers. Voici les +commandes vraiment indispensables:
+ + + +q |
+Quitter | +
SPC |
+Avancer d'une page | +
^F |
+Avancer d'une page (forward) | +
^B |
+Reculer d'une page (backwards) | +
p |
+Revenir à la première ligne | +
/ mot |
+Chercher le mot | +
n |
+Aller à la prochaine occurence de mot | +
N |
+Aller à la précédente occurence de mot | +
+Pour en savoir plus, consultez le cours
+(/tuteurs/unix/fichiers.html#less
) et faites les exercices
+(/tuteurs/unix/exercices/less.html
).
+less
sert à regarder le contenu des fichiers texte, quels qu'ils
+soient (du texte simple, du RTF, du PostScript, des PDF, etc); il vous
+montre ce que contient réellement le fichier, sans rien interpréter ni
+mettre en page. C'est utile pour regarder rapidement ce que contient un
+fichier, sans lancer de gros logiciels, ou bien pour savoir à quoi
+ressemblent du RTF ou du PDF «en dessous» du logiciel.
+En revanche, ne cherchez pas à afficher le contenu de fichiers binaires +(la plupart des fichiers d'images, sons, fichiers compressés par +exemple), ils n'utilisent pas la table de caractères ASCII, en un mot +c'est illisible.
+ + +
+Utilisez un traitement de textes comme ApplixWare (asterix
) pour
+afficher du RTF, Acrobat Reader (acroread
) pour du PDF et
+Ghostview (gv
) pour du PostScript. Pour les images, utilisez
+xv
.
+
+Le mois prochain, on verra comment lancer un long calcul sur une machine
+(screen
).
+
+Dans cette partie, on aborde ce mois-ci les raccourcis claviers utiles de +la config conscrits. Ce sont des exemples d'options très pratiques qui +ont été activées dans cette config pour faciliter la vie aux +utilisateurs; vous ne trouverez pas forcément ces raccourcis sur d'autres +sites. +
+ + + + +Il existe un certain nombre de notations +conventionnelles pour désigner les touches du clavier:
+ + + +TAB |
+La touche de tabulation, au dessus du Shift
+gauche. |
+
SPC |
+La barre d'espace. | +
M-i |
+La touche Méta (losange noir de part et
+d'autre de la barre d'espace), associée à la lettre i minuscule.
+Se lit «méta i». |
+
^C |
+La touche Control (en bas du clavier à gauche
+et à droite), associée à la touche c (par convention, on écrit
+la lettre en majuscule). Se lit «control C». |
+
alt-B |
+La touche Alt (à gauche du Méta ),
+associée à la lettre b (même convention de notation que pour
+Control ). |
+
Les flèches (entre le clavier +proprement dit et le pavé numérique) permettent de remonter dans les +dernières commandes tapées. C'est pratique par exemple quand vous faites +du LATEX, et que vous ne voulez pas retaper la ligne à chaque fois. +
+ + + + + La touche TAB
permet de compléter le
+nom d'un fichier dont vous avez tapé les premières lettres:
+
+brick ~ $ ls +annexes.tex rapport_1999.tex resume.tex +brick ~ $ nedit ra<TAB>pport_1999.tex ++ +
Si plusieurs fichiers commencent par les mêmes lettres, les noms sont +proposés les uns après les autres.
+ + + + + + Pour vous déplacer entre les écrans virtuels à l'aide du clavier,
+utilisez les flèches du pavé numérique en appuyant simultanément sur la
+touche Méta
.
Pour aller de fenêtre en fenêtre, utilisez Méta-TAB
(appuyez sur
+Méta
et TAB
en même temps).
Lorsque les claviers des stations font
+«bip» et que l'écran reste noir, taper ^W
vide le buffer
+du-dit clavier, qui redevient opérationnel.
+Dans d'autres cas, ça ne bippe pas et l'écran reste noir. Il faut alors
+débloquer le clavier à distance, en se loguant sur la machine en
+question, et en tapant kbd_mode -a
(remettre le clavier
+-- KeyBoarD --- dans le bon mode).
+Le mois prochain, on verra comment modifier sa configuration avec le programme
+configuration
.
+Si on ne lui dit rien, LATEX met des marges démesurées: en fait, il centre +sur la page le texte sur un format de l'ordre de celui d'un livre, ce qui en +général ne convient pas du tout. En outre, LATEX est d'origine américaine, +et aux États-Unis le papier n'a pas un format A4 (21 × 29,7 cm), mais +21,6 × 27,9 cm (8,5×11 pouces). C'est le cas aussi au Canada, +mais leur format n'est ni A4 ni américain. +
+ ++En fait, le format A4 est une standardisation de l'ISO (International +Standard Organisation), sous le doux nom de «standard ISO 216». +
+ + + + + Si vous utilisez du papier américain,
+ne précisez rien; si vous voulez être vraiment sûr que c'est cette taille que
+LATEX va prendre en compte, utilisez l'option de classe
+letterpaper
:
+\documentclass[letterpaper]{article}+ + +
+Attention: si vous devez envoyer un PostScript d'un fichier LATEX à un +Américain, imprimez-le avec la ligne suivante, pour que les lignes du haut ne +soient pas coupées4: +
+ + + +
+brick ~ $ dvips -t letter chalala.dvi -o chalala.ps
+
+
++Si vous utilisez du papier A4, vous pouvez l'indiquer comme +option de classe:
+ + ++\documentclass[a4paper]{article} ++ +
+Ou alors, vous pouvez charger le package a4
:
+
+\usepackage{a4} ++ + +
+En fait, ce package redéfinit un certain nombre de dimensions, davantage que +l'option de classe. Il se peut aussi qu'il soit considéré comme obsolète. +
+ + + + +Il y a plus de dimensions dans une page que +n'en rêve votre philosophie:
+ ++
+ ++Voici à quoi correspondent ces lettres:
+a | +Marge de gauche | +
b | +Marge du haut | +
c | +Marge de droite | +
d | +Marge du bas | +
e | +Espace à gauche | +
f | +En-tête | +
g | +Espace à droite | +
h | +Pied de page | +
+Les «espaces à gauche et à droite» sont l'endroit où l'on met les notes de
+marge (commande \marginpar{
texte
}
). Dans
+l'en-tête, on trouve les titres de sections courantes (quand on met
+\pagestyle{headings}
dans le préambule); dans le pied-de-page, on
+trouve le numéro de la page. En revanche, les notes de bas de page sont en bas
+de l'espace réservé au texte.
+
vmargin
Ce package a été développé par Volker
+Kuhlmann (université de Canterbury). C'est une première solution pour
+régler la taille de la page. Dans le préambule du document, utilisez la
+commande \setmarginsrb
avec la syntaxe suivante (les lettres
+correspondent aux dimensions dont nous venons de parler):
+\setmarginsrb{a}{b}{c}{d}{e}{f}{g}{h} ++ +
+vmargin
est facile à utiliser. Il a l'inconvénient (ou l'avantage,
+selon les cas), de ne pas tenir compte des spécifications sur la taille du
+papier. Pour le moment, le Hublot l'utilise, avec les valeurs suivantes
+(comprendre: des marges de 1,5 cm partout, et 1 cm en bas de page pour le
+numéro de la page):
+\setmarginsrb{1.5cm}{1.5cm}{1.5cm}{1.5cm}{0cm}{0cm}{0cm}{1cm} ++ + + + +
geometry
Ce package a été développé par Hideo Umeki +(Japon). C'est une autre solution pour régler la taille de la page, avec +l'avantage de se rappeler quand on a dit qu'on voulait du A4. +
+
+Attention: pour le moment, la version de geometry
installée
+par le SPI est vieille, et ne marche pas ainsi. Elle sera bientôt remise
+à jour. Vous avez deux solutions:
tex
, syst.annonces
).
+export TEXINPUTS=/usr/local/util/tex/inputs//:
+
/usr/local/util/
est le répertoire où sont
+installés les programmes des gourous*.
+Pour utiliser geometry
, on indique entre crochets les valeurs et
+les options souhaitées:
++ +\usepackage[
valeurs
]{geometry}
+
+Voici les options les plus communes (dimension
désigne ici une
+longueur, indiquée avec son unité: cm
, mm
,
+pt
...):
+
left= dimension |
+: | +marge de gauche | +
right= dimension |
+: | +marge de droite | +
top= dimension |
+: | +marge du haut | +
bottom= dimension |
+: | +marge du bas | +
Comme on l'a dit, l'en-tête est le texte figurant éventuellement en haut +de page (titre de la section en cours, numéro de page, etc). Le «corps», +c'est le corps du texte:
+ + + +head= dimension |
+: | +taille de l'en-tête | +
headsep= dimension |
+: | +espace entre l'en-tête et le corps | +
nohead |
+: | +équivaut à head=0pt, headsep=0pt |
+
Le pied de page contient généralement le numéro de page; le Hublot y +met également la référence du numéro que vous avez dans les mains. +
+ + +footskip= dimension |
+: | +Espace avant le pied de page | +
nofoot |
+: | +équivaut à footskip=0pt |
+
noheadfoot |
+: | +équivaut à nohead, nofoot |
+
Il faut préciser si on veut des notes de marge ou pas. Par défaut, les
+notes de marge sont à droite du texte. Si le document est prévu en
+recto-verso (option de classe twoside), l'option
+reversemp
mettra les notes de marge du côté de la pliure du
+papier. Le «mp
» de ces options veut dire «margin
+paragraph».
includemp |
+: | +active les notes de marge | +
reversemp |
+: | +active les notes de marge, de l'autre +côté | +
marginparwidth= dimension |
+: | +largeur des notes de marge | +
marginparsep= dimension |
+: | +espace entre le corps et les notes +de marge | +
+Pour un document simple (classe article
), qui prenne «toute la
+page», on peut utiliser les valeurs suivantes (vous pouvez laisser de
+l'espace après les virgules):
+
\usepackage[left=1.5cm,right=1.5cm,top=1cm,bottom=2cm,nohead]{geometry}+ + + +
+En réglant la taille de la page, rappelez-vous toutefois que l'oeil +humain a du mal à suivre une ligne de texte si celle-ci est trop longue, +c'est-à-dire généralement au delà de 80--90 caractères par ligne (espaces +inclus).
+ + + + + + Il est possible de fixer toutes ces dimensions
+en manipulant directement les dimensions de LATEX (avec des
+\setlength\
dim
\
valeur
) pour
+toutes les dimensions. C'est une méthode plus compliquée, plus difficile et
+plus précise, dont nous ne parlerons pas ici.
+Le mois prochain, on expliquera comment insérer des images. +
+ + + + ++Ce cours explique progressivement ce qu'est un ordinateur. Le mois +dernier, on a vu à quoi servait le processeur. Ce mois-ci, Thomas explique +comment fonctionnent l'écran, le clavier et la souris. +
+ + + + + ++Il est de l'informatique comme de beaucoup d'autres domaines: quels que +soient les mérites d'un quelconque système, il se doit de les afficher +dans une sarabande pyrotechnique digne de Jean-Michel Jarre. C'est +particulièrement frappant quand on va au cinéma: les ordinateurs qui y +sont représentés sont toujours prompts à faire virevolter des images +tridimensionnelles aux moments les plus inappropriés. Les terminaux +texte en vert sur noir, et les touches de clavier qui font tic-tic, sont +réservés aux systèmes «professionnels», donc spartiates, forcément. +
+ ++Donc l'ordinateur, qui il y a un demi-siècle était gros comme un +immeuble et ne communiquait que par une série de boutons et quelques +cliquetis, est désormais surmonté d'une espèce de télévision, qu'on +nomme aussi écran, ou moniteur. Ça ressemble a un banal écran de +télévision, et d'ailleurs c'en est un. Bien que ce soit la partie la +plus grosse du système informatique (après l'utilisateur), c'est aussi +la plus bête (après l'utilisateur). On aurait tort d'y voir le siège de +la pensée de la machine. +
+ ++Fonctionnellement, c'est un tube en verre sous vide, avec un canon à +électrons, pointé sur la tête de l'humain qui le regarde. Le canon, +comme son nom l'indique, envoie des électrons à grande vitesse; +diverses bobines électromagnétiques dévient ces électrons pour les +faire frapper des endroits bien précis d'un substrat fluorescent déposé +sur une surface de verre. Tout cet assemblage va en fait illuminer +successivement tous les points de l'écran, en balayant de gauche à +droite et de haut en bas; afin de blouser l'humanoïde qui regarde la +chose, le balayage est reproduit plusieurs fois par seconde, genre +70 fois, en tous cas trop vite pour que l'oeil humain puisse suivre. +Du coup, on voit une image fixe. +
+ ++Pour former l'image, l'ordinateur envoie, de façon synchronisée avec +le balayage, l'intensité lumineuse de chaque point, c'est-à-dire la +puissance de tir du canon. Pour être précis, il y a trois canons, qui +vont frapper des points teintés en rouge, vert ou bleu, ce qui permet +de fabriquer de subtils mélanges, qui donnent une image en couleurs. +
+ + ++Dans l'ordinateur lui-même, il y a un processeur dédié, qui gère une +certaine mémoire qui maintient la couleur de chaque point, et qui joue le +rôle de l'hortator; on l'appelle occasionnellement carte +graphique. À cause de restrictions sur la taille de cette mémoire et le +degré de finesse de ce processeur, la machine ne peut envoyer sur l'écran +qu'un nombre limité de points différents (qu'on appelle pixels), +couramment de l'ordre d'un million, et est parfois limitée dans le nombre +de couleurs différentes qu'elle peut afficher simultanément. +
+ ++Il existe d'autres types d'écrans, tels que les écrans à cristaux +liquides (LCD) ou à plasma, qui permettent d'obtenir de meilleures +images et un encombrement réduit (pratique, pour un ordinateur portable) +à des prix inversement proportionnels à l'épaisseur de l'engin, et donc +astronomiques. +
+ + + + ++L'être humain est un éternel insatisfait, parfaitement contradictoire +dans ses actions et ses décisions. Il possédait la télévision, et il a +voulu la transformer en un système de communication bidirectionnel, où +il pourrait également donner son avis à la machine. Ainsi, l'ordinateur +fut doté de ce qu'on appelle des périphériques d'entrée; d'entrée +parce qu'il s'agit de faire rentrer des données dans la machine, +périphérique parce qu'il n'y a jamais de place de parking libre +intra muros5. De façon assez ironique, une fois en possession de ces +périphériques, l'Homme Moderne6 n'aspire +qu'à une chose, c'est de ne pas avoir à s'en servir. +
+ ++Donc le clavier fut inventé. Comme son ancêtre à vocation musicale, +il est constitué de touches, qu'il s'agit non pas de toucher mais de +frapper; cependant, comprenons-nous bien, ce n'est pas un acte martial, +et la frappe doit être aussi douce que le frottis du zéphyr sur les +ailes du colibri. Sinon, vous défoncez le clavier et ça coûte un max à +remplacer. +
+ ++Quand on frappe (délicatement, j'insiste) une touche, le clavier envoie +un signal, via le fil idoine, à la machine, indiquant qu'une +touche à été enfoncée, et sa position. En effet, le clavier n'a pas la +moindre idée de ce qui est gravé sur les touches, et l'ordinateur doit +reconstituer la bonne lettre en fonction de sa position. À ce sujet, +précisons que le placement abominable des lettres sur le clavier a été +conçu pour ralentir la frappe (ça date du temps des machines à +écrire mécaniques, qui se coinçaient facilement), et ceux d'entre vous +qui ont essayé de taper un texte sur un ordinateur ont pu constater +combien ce but était rempli avec succès. Cela fait du bien de voir le +progrès en action. +
+ ++Précisons enfin que contrairement à une croyance répandue, le clavier +n'est pas supposé recevoir les éléments suivants: café, coca-cola, +miettes de pain, bière, sang. +
+ ++On remarque souvent, à droite du clavier, un boîtier rondoïde avec un +fil; ce bloc de plastique a été baptisé après le nom d'un sympathique +rongeur, la souris, cousin pas trop éloigné du campagnol et du mulot. En +revanche, les musaraignes et les taupes sont une branche plus distinctes. +Les éléphants aussi, mais je ne pense pas que vous confondriez, de toutes +façons. La souris, donc, a pour particularité de détecter ses propres +mouvements (alors que le clavier, par exemple, ne détecte rien du tout). +Chaque fois qu'elle bouge, elle indique via son fil à l'ordinateur +qu'elle a bougé; elle indique dans quelle direction, et sur quelle +distance. +
+ + ++La plupart des souris possèdent cette faculté de repérage stérique grâce +à une boule qui frotte sur le sol; vous pouvez apercevoir cette boule en +retournant l'animal (ne vous inquiétez pas, ce n'est pas mortel pour +lui). D'autres souris travaillent en optique, avec des diodes rouges, ça +s'encrasse moins et ça fait ressembler le mulot à une chaussure Nike, +autant dire que ça s'arrache dans les magasins, et qu'au bureau tout le +monde en veut une. +
++Car décidément, le singe préfère la souris rouge. +
+ +Thomas Pornin
+ + Les gourous sont un groupe d'élèves ou d'anciens
+élèves volontaires pour installer un certain nombre de logiciels sur les
+machines Unix, comme pine
, mutt
, gnuplot
,
+xfig
, ytalk
, les éditeurs de texte, les jeux, les
+gestionnaires de fenêtres, des utilitaires comme less
,
+screen
, ledit
...
+Ils s'occupent également, en collaboration avec le SPI, de la modération +des courriers collectifs. Ce sont aussi les gourous qui font la config +conscrits. +
C'est un acronyme qui veut dire
+«GNU's not Unix». Le projet GNU est un projet visant à écrire un système d'exploitation* libre*
+complet. Ses participants ont commencé par écrire un certains nombres de
+logiciels et d'utilitaires permettant le développement du système
+proprement dit (Hurd), dont la sortie est une arlésienne... En attendant,
+ces utilitaires existent (GNU emacs, GNUchess, gzip
, des
+versions de less
, grep
, tar
, etc).
+
+Les promoteurs du projet sont la Free Software Fundation (FSF), avec +Richard Stallman à sa tête. +
+ General Public License. C'est une des licences de +diffusion des logiciels libres*, notamment Linux et les utilitaires GNU. +Un logiciel couvert par cette licence peut être utilisé, recopié, +modifié, redistribué (gratuitement ou non) ou inclus dans un autre, à +condition que le code source du logiciel avec ses modifications +éventuelles soit tenu à la disposition de tout récipiendaire, aux termes +de cette même licence. +
+ ++Le but de cette licence est de promouvoir le logiciel libre, en empêchant +de réutiliser tout ou partie d'un logiciel sous GPL dans un logiciel qui +ne le soit pas. +
Le terme s'oppose à «commercial». On peut diffuser, +dupliquer et modifier un logiciel libre sans contraintes. Une +caractéristique essentielle est que le logiciel est disponible et diffusé +sous deux formes: la forme immédiatement exécutable, utilisable, et le +code source qui contient les «secrets de fabrication» (le source est le +programme proprement dit, tapé par le programmeur). +
+ ++«Libre» ne signifie pas «gratuit»: on peut vendre des logiciels libres. +Dans ce cas, on paye le support (CD-ROM), le service après-vente, etc. +
+ + Les logiciels libres sont diffusés sous diverses licences
+réglementant leur mode de diffusion. L'une des plus connues est la GPL*. pine
, mutt
, Linux,
+LATEX, xv
, gimp
(par
+exemple) sont des logiciels libres.
+ C'est une abréviation pour «manuel». Les pages de man
+sont les pages qui documentent un programme, ou une commande. Par
+exemple, pour connaître toutes les options de ls
, tapez
+«man ls
».
+
+Les pages de man sont des références, et pas des didacticiels. +Elles sont donc souvent difficiles à lire, d'autant qu'elles sont en +anglais. Dans les distributions francophones de Linux, un certain nombre +de pages de man ont été traduites. +
C'est le logiciel qui fait tourner +l'ordinateur «en dessous» des applications dont se sert l'utilisateur +(comme les logiciels de courrier, les traitements de texte), et en +dessous de l'interface graphique. On dit aussi «OS» (operating +system). +
+ ++Le système d'exploitation d'Apple pour Macs s'appelle MacOS, celui d'IBM +pour PC s'appelle OS/2. Le système d'exploitation de Microsoft pour PC +est DOS/Windows; à l'origine il n'y avait que le DOS, qui fut complété +par Windows, interface graphique désormais complètement intégrée au +système d'exploitation. +
+ +Un autre type de système d'exploitation est le système Unix. Unix est +en fait une famille qui comprend entre autres Solaris (Unix de la société +Sun), AIX (Unix de la société Hewlett-Packard), Linux (Unix libre*, disponible gratuitement, et aussi commercialisé +par des sociétés comme RedHat, SuSE, Caldera, Debian...), FreeBSD, +OpenBSD et NetBSD (d'autres Unix libres), Hurd (Unix libre du projet +GNU).
Le premier stage des tuteurs pour l'année 2000--2001 a lieu les 16, 17 et +18 février 2001. Son contenu a été décidé d'après les résultats du +sondage de début d'année: LATEX à gogo, utiliser le forum des élèves, +un cours magistral appuyé sur des transparents et des documentations +photocopiées distribuées lors du stage. Les TP auront lieu en salle S; +le cours de LATEX aura lieu dans une salle encore +indéterminée:
+ + + +Horaires | +Thème | +Observations | +
+ +Vendredi 16 février, 20h30 | +Utilisation des machines Unix | +Manipulation +des fenêtres, commandes de base, utilisation d'un éditeur de textes. Si +vous ne connaissez pa ça et que vous voulez faire le stage LATEX, il +faut absolument être là. | +
Samedi 17 février, 10h00 | +Cours de LATEX | +C'est un +cours magistral avec transparents. On présentera le principe de ce +logiciel, et les commandes principales. Ceux qui font un stage LATEX le +samedi doivent obligatoirement y assister. | +
Samedi 17 février, 14h00 | +LATEX pour débutants | +Cette +session s'adresse à ceux qui n'ont jamais fait de LATEX, ou bien n'ont +rien compris en début d'année. | +
Samedi 17 février, 16h30 | +Recyclage LATEX | +Cette +session s'adresse à ceux qui se souviennent du principe, de quelques +commandes, mais qui veulent rafraîchir leur mémoire. On ne verra pas les +maths à cette occasion. | +
Dimanche 18 février, 14h00 | +LATEX pour scientifiques | +Les maths et +tout ce qu'il faut, pour les gens qui connaissent déjà les bases. | +
Dimanche 18 février, 16h30 | +Outils associés à LATEX | +BibTeX +(bibliographies) et MakeIndeX (index), pour ceux qui connaissent déjà les +bases. | +
Dimanche 18 février, 20h00 | +Le forum des élèves | +Comment +lire forum et poster dedans. | +
+Pour vous inscrire, envoyez un courrier électronique à
+tuteurs@clipper
. Si vous avez du mal à déterminer votre niveau
+en LATEX, le test est simple: si les mots «compilation», «préambule»,
+«fichier source», «environnement» sont clairs, vous venez au recyclage de
+16h30, et le cours du matin vous aura remis les idées en place. Sinon,
+vous venez dans le groupe des débutants.
+
Si vous avez un problème, commencez par demander de l'aide dans la salle: il +s'y trouve sans doute un tuteur (volontaire pour dépanner) ou un gourou +(administrateur élève). Dans la moitié des cas, quelqu'un pourra vous aider. +Si personne ne peut vous dépanner, vous avez à disposition les interlocuteurs +suivants:
+ +Le logiciel ne fonctionne pas | +gourous@clipper |
+
Vous ne savez pas vous servir d'un logiciel | +tuteurs@clipper |
+
Vous n'arrivez vraiment pas à vous loguer | +Allez voir le SPI | +
Il n'y a plus de papier | +En réclamer aux services de l'administration +(couloir Dussane) | +
+ +Il n'y a plus de toner | +Écrire au SPI (spi@clipper.ens.fr ) |
+
Adressez-vous au service compétent, suivant le tableau suivant:
+ + + ++ +Stations Sun | ++ |
PC sous Windows | +SPI : spi@clipper.ens.fr |
+
PC sous Linux | ++ |
+ +Macs | +Élisabeth Labrousse (elisa@elias.ens.fr ) |
+
+ | Jean-Claude Lovato (lovato@dmi.ens.fr ) |
+
+ | SPI si non-intervention dans la journée | +
Imprimantes | +elisa@elias.ens.fr pour l'Infirmatique |
+
+ | spi@clipper.ens.fr pour les autres salles |
+
+Globalement, adressez-vous au SPI pour toutes les machines
+(spi@clipper.ens.fr
), sauf les Macs de l'Infirmatique qui dépendent de
+l'Informatique littéraire (écrire à Élisabeth Labrousse:
+elisa@elias.ens.fr
; bureau 10, poste 3003).
+
+Donnez une description précise du problème, et indiquez clairement la machine +et la salle. Le cas échéant, laissez un papier sur la machine pour signaler +la panne, cela évitera aux autres utilisateurs de rencontrer le même problème +et de surcharger le SPI ou les gourous de messages d'erreur. +
+ + ++Le Hublot est le journal des tuteurs informatique de l'ENS. Il +paraît chaque mois à 350 exemplaires. Il est également disponible sur le Web: +
+ ++Rédaction: Émilia Robin. +
+ ++Ont collaboré à ce numéro: Xavier Bertou, Éric Brunet, Augustin Chaintreau, +Nicolas George, Florent Hivert, Guillaume Lapeyre, Catherine Le Bihan, +Benjamin Lerman, David Madore, David Monniaux, Jérôme Plût, Laurent Rineau, +Olivier Terneaud, Olivier Verzelen, Cédric Ware. +
+ ++Merci à Jean Marot, Gilles Radenne et Marie-Charlotte Zanotti pour leurs +relectures. +
++
+ ++Un peu de retard pour le Hublot de février, qui sort en mars... Ce mois-ci, +on s'intéresse particulièrement aux imprimantes: les divers types existants, +les commandes pour imprimer, et quelques rappels de savoir-vivre. On insiste +aussi sur la sécurité avec SSH, pour vous connecter à distance sans risquer de +vous faire pirater. +
+ + + +
+Enfin, à plusieurs reprises, on parle de la config conscrits 2000. Si vous
+voulez la récupérer, n'oubliez pas qu'il suffit de taper
+configuration --get
(voir le numéro d'octobre du Hublot pour tous
+les détails).
+
+Comme dans chaque numéro, les conseils de lecture et les bonnes adresses: +
+ + + + +http://www.eleves.ens.fr/
http://www.eleves.ens.fr/tuteurs/docs/hublot/
Nous sommes toujours à votre disposition pour toutes questions et
+suggestions: tuteurs@clipper
.
+Vous pouvez aussi mettre un mot dans le casier de Marie-Lan Nguyen.
+Enfin, n'oubliez pas que quand vous tapez qui
, les tuteurs
+ont leur nom souligné: n'hésitez pas à nous solliciter!
+Cette rubrique porte sur l'utilisation pratique des machines Unix et de
+LATEX. Dans la partie Unix, une présentation de screen
, utilitaire
+qui permet de lancer des calculs sur une machine. Ensuite, dans la partie
+LATEX, on va voir comment insérer des images dans un document.
+
screen
+Si vous lancez un calcul sur une machine, au moment où vous vous déloguerez,
+tous les processus lancés à votre nom seront tués et votre calcul avec. Vous
+voudriez donc «détacher» le calcul et le laisser tourner sur la machine, même
+une fois que vous vous serez délogué. C'est à cela que sert l'utilitaire
+screen
, un logiciel en mode texte.
+
screen
+ Pour lancer screen
, il faut
+taper... screen
. Le programme affiche quelques lignes concernant
+son auteur, sa version, etc. Appuyez sur «Entrée» pour quitter cette
+présentation. Votre fenêtre est inchangée, rien n'est différent.
+
+Ensuite, lancez votre programme, avec sa commande. +
+ + + +
+Pour quitter, tapez ^A
(qui introduit toutes les commandes
+internes de screen
) suivi de d
. Vous pouvez aussi taper
+^A^D
tout court. Le «d» veut dire «détacher». On rappelle que
+^D
se lit «control-D» et signifie «taper d en tenant la touche
+Control».
+
+ Vous voulez récupérer le screen que vous aviez lancé.
+Loguez-vous, physiquement ou à distance, sur la machine concernée. Si vous
+n'avez qu'un seul screen lancé sur la machine, tapez screen -r
(«r»
+comme «récupérer»). Vous récupérez la fenêtre dans l'état où vous l'aviez
+laissée.
+
+S'il vous avez lancé plusieurs screens différents, tapez screen
+-ls
(«ls» comme «liste») pour trouver ceux qui existent. Ensuite, lancez
+screen -r
suivi de l'identificateur donné dans la liste.
+
+Pour mettre fin à un screen, quittez-le en tapant exit
ou
+^D
.
+
+ Vous avez donc lancé un calcul, qui est une nouvelle +«tâche» pour l'ordinateur. Chacune de ces tâches (loguer quelqu'un, lancer une +fenêtre, faire tourner l'horloge...) s'appelle un processus; ils ont tous un +numéro (PID: process identifier), et un propriétaire (la personne qui +l'a lancé). En lançant votre calcul, vous avez créé un nouveau processus. +
+ + + +
+Pensez que d'autres vont utiliser cette machine. Si votre processus consomme
+90% de sa puissance, elle sera presque inutilisable, tellement elle sera
+ralentie... Il faut donc «nicer» (de l'anglais nice) le programme, pour
+donner la priorité aux autres programmes. Ainsi, la machine s'occupe de votre
+calcul, mais dès que quelqu'un d'autre en demande pour quelque chose de
+prioritaire (se loguer, lancer pine
, etc), elle relègue momentanément
+votre calcul au second rang.
+
+C'est la commande nice
qui sert à fixer la priorité d'un programme.
+Plus le nombre est petit, plus le programme est prioritaire; plus le nombre
+est grand, moins le programme est prioritaire. Pour nicer notre calcul
+ci-dessus, on tapera (dans le screen):
+
+brick ~ $ nice -19 ./calcul
+
+
+Le programme nice
s'occupe de lancer votre calcul en lui donnant
+la priorité 19, c'est-à-dire la priorité la plus basse. Vous pouvez aussi nicer
+votre programme a posteriori avec:
+brick ~ $ renice 19 <PID>
+
+
+où <PID>
est le numéro du processus correspondant
+au calcul lancé (tapez top
pour le trouver).
+renice
ne peut que rendre le processus moins
+prioritaire.
La charge que représente un calcul pour une machine ne se mesure pas
+simplement en puissance consommée. Si votre processus utilise 5% de la
+puissance du processeur, mais occupe trop de mémoire, la machine sera
+inutilisable. La mémoire occupée est indiquée dans la colonne «Size» du
+tableau affiché par top
.
+brick ~ $ screen +(...) +(quelques lignes: version, date, auteur, etc) + +[Press Space or Return to end.] +brick ~ $ nice -19 ./calcul +brick ~ $ ^Ad +[detached] +brick ~ $ +brick ~ $ screen -ls +Your inventory: + 9906.pts-16.clipper (Detached) +1 Socket in /tmp/S-robin. ++ + + +
+Le mois prochain, on verra les jokers (raccourcis pour les noms de +fichiers). +
+ + + + + + + Nous allons ce mois-ci voir comment insérer des figures ou des images
+dans un document LATEX grâce au package
+epsfig
. Il en existe d'autres, qui ont la même fonction (par
+exemple graphicx
). Leur utilisation est assez semblable, et
+nous ne la présenterons pas ici.
+
Une figure ou une image, c'est un fichier
+informatique, stocké sous un certain format. On reconnaît en général le
+format à l'«extension», la fin du nom du fichier. Le format correspond à
+la manière dont on code la couleur de chaque point. Pour être insérées
+dans un document LATEX, les images doivent être dans le format
+PostScript encapsulé, soit l'extension .eps
.
+
+Pour obtenir un tel format, la première chose à faire, c'est de regarder
+si le logiciel que vous utilisez ne propose pas directement cette option:
+le PostScript ainsi produit a des chances d'être plus efficace et/ou de
+meilleure qualité. Sinon, ouvrez l'image dans xv
ou
+gimp
, demandez à sauvegarder l'image, et choisissez PS ou EPS
+(mieux) comme format. Pour la suite, nous supposerons que nous avons un
+fichier qui s'appelle image.eps
.
+
Rien de plus facile ici. On commence par +charger le bon package, comme d'habitude: +
+ + + + ++\usepackage{epsfig} ++
+Ensuite, il suffit d'utiliser la commande suivante pour insérer +l'image: +
+ + + + + ++\epsfig{file=image.eps} ++ +
+Elle se trouve alors insérée dans le texte, exactement comme si c'était +une (très) grosse lettre (le bas de l'image est aligné avec la +ligne de base du texte; rappelons que la ligne de base est ce qui +correspond à la grosse ligne du quadrillage d'un cahier d'écolier). +
+ ++On peut aussi contrôler un petit peu l'aspect de l'image, en ajoutant des +options; par exemple, cette ligne incorpore l'image en la +réduisant ou en l'agrandissant jusqu'à 3 cm de large: +
+ + + + ++\epsfig{file=image.eps,width=3cm} ++
+Les options les plus utiles sont: +
+ + + + +width |
+Largeur de l'image | +
height |
+Hauteur de l'image | +
angle |
+Angle de rotation | +
clip |
+Empêche l'image de déborder | +
+Si la hauteur et la largeur ne sont pas toutes les deux indiquées, l'image
+conservera son rapport largeur/hauteur. L'angle est donné en degrés, dans
+le sens des aiguilles d'une montre. L'option clip=
(qui doit
+s'écrire avec le =
et rien d'autre) sert à se prémunir contre des
+fichiers PostScript mal faits, on n'en a pas souvent besoin.
+
La plupart du temps, on ne se contente +pas d'insérer l'image dans le texte; il faut qu'elle soit centrée, lui +adjoindre une légende, la répertorier dans une table. Voilà comment +LATEX procède. +
+ +
+Pour isoler la figure à un endroit précis, il suffit de mettre l'image
+dans un environnement figure
(donc entre un
+\begin{figure}
et un \end{figure}
). On pourra également
+ajouter un environnement center
si on veut centrer l'image.
+Ensuite, la légende s'ajoute avec la commande
+\caption{
La légende
}
. Par exemple, pour
+centrer une image en lui donnant une légende:
+
+\begin{figure} +\begin{center} + +\epsfig{file=image.eps,width=0.8\linewidth} +\caption{Évolution récente} + +\end{center} +\end{figure} ++ +
+Quelques commentaires sur cet exemple: les environnements s'emboîtent +comme les parenthèses (premier ouvert, dernier refermé); dans les +conventions françaises, la légende se place en dessous de ce +qu'elle désigne, et on ne met pas de point à la fin. Enfin, vous voyez +que j'ai donné comme largeur à l'image une valeur relative (80% de la +longueur de la ligne de texte), et non pas absolue (9 cm, par exemple). +
+ +
+L'environnement figure
place ce qu'il contient comme un
+objet flottant, qui peut se retrouver à une certaine distance de
+l'endroit où il est inséré. On peut indiquer à LATEX à quel endroit on
+veut le voir en précisant en option une ou plusieurs lettres parmi:
+
h |
+here | +Là où la commande apparaît | +
t |
+top | +En haut de la page | +
b |
+bottom | +En bas de la page | +
p |
+page | +Sur une page dédiée | +
+Ainsi, \begin{figure}[hp]
insérera la figure à l'endroit exact où la
+commande apparaît ou, à défaut, sur une page spécifique (c'est-à-dire avec
+seulement des figures). Le défaut est tpb
. On peut aussi mettre
+h!
pour insister vraiment pour ce que ce soit h
.
+
+Pour obtenir une table des figures, à l'instar d'une table des matières, on +utilise la commande: +
+ + + + ++\listoffigures ++ + + + + + + +
S'il n'est pas question d'images complexes, de photos, une possibilité est +de définir les images directement avec des commandes LATEX. Ainsi, on +peut facilement faire une petite maison: +
+ + + ++ +
+ +
+Si vous voulez savoir comment faire ça avec des commandes LATEX,
+reportez-vous aux chapitres correspondants des manuels LATEX (chapitre 10 du
+LATEX companion), qui expliquent comme se servir des packages
+figure
, efig
et pstricks
. C'est ce dernier que j'ai
+utilisé; il permet en outre des effets très spectaculaires, comme des flèches
+qui vont d'un bout à l'autre de la page en contournant le texte.
+
+En ce qui concerne les figures, n'hésitez pas à vous reporter à notre site:
+/tuteurs/logiciels/latex/figures.html
Nicolas George
+ ++Le mois prochain, on expliquera comment se faire des macros. +
+ + + + + + ++Ce mois-ci, on va voir un aspect très utile d'Internet, qui est la connexion à +distance, pour lire son courrier électronique ou autres. La partie +«Forum» va s'étendre sur des questions de «Netiquette» communes à tous les +moyens de communication sur Internet (news et courrier électronique). +
+ + + + + + + ++Se connecter à distance permet de lire son courrier, le forum des élèves, +lancer un calcul sur une machine distante, travailler sur ses fichiers, etc. +Vous pouvez donc travailler sur un ordinateur précis sans vous trouver +physiquement devant. +
+ + + + + + +Et un peu de théorie au passage, aussi. +Ores donc, au départ, il y a les terminaux. Un terminal, c'est un écran +et un clavier, avec un tout petit cerveau. Un minitel, par exemple. Il +est possible de brancher un terminal sur un ordinateur, et (pour peu que +l'ordinateur sache faire, ce qui est le cas sous Unix) de l'utiliser +ainsi comme un second poste de travail. Les possibilités sont certes plus +limitées qu'avec un écran haute résolution relié par un câble vidéo, mais +si les applications sont prévues pour, ça peut rendre de fiers services. +
+ + + +
+Une grande partie des applications que vous utilisez à l'École sont
+justement prévues pour: pine
, forum
(flrn
),
+etc. D'ailleurs, les fenêtres nommées xterm
, large
,
+alpha
, etc, ont pour unique rôle d'imiter un terminal (on
+appelle ça un émulateur; c'est également pour ça qu'il ne faut pas les
+fermer avec le menu du coin: ça revient exactement à couper le courant
+brutalement).
+
+De nos jours, la technologie fait bien mieux que les câbles qui reliaient +les terminaux à leur ordinateur hôte: les ordinateurs peuvent être reliés +efficacement d'un bout du monde à l'autre par Internet. Néanmoins, le +modèle du terminal reste une approche à la fois simple à utiliser, facile à +programmer, et efficace. C'est pour ça qu'on a rapidement songé à utiliser +des connexions via Internet pour relier un programme qui imite un +terminal (encore un émulateur) à un ordinateur hôte. +
+ + + ++C'est à ça que sert le protocole telnet. En général, il laisse +simplement passer ce qui se tape d'un côté jusqu'à l'autre bout, et aussi +ce qui revient de l'autre bout pour affichage. Il comprend aussi quelques +rares codes pour faire passer des informations importantes, comme le +modèle de terminal simulé à une extrémité, la taille de l'écran, etc... +
+ + + ++On appelle serveur l'ordinateur sur lequel on essaie de se +connecter, et client celui qui sert à se connecter (et donc simule +un terminal). +
+ + + ++Bref, telnet, c'est comment afficher la sortie «mode texte» d'un ordinateur +sur l'écran d'un autre. +
+ + + + + + +
+ Quand vous êtes en interne à l'École (entre
+les salles S, t15, du 46, Jourdan, Montrouge), il suffit de taper le nom
+de la machine pour s'y connecter. Si vous êtes ailleurs, il faut utiliser
+le programme Telnet. Pour vous connecter sur la machine galion
,
+par exemple, il suffit de taper:
+
+telnet galion.ens.fr ++ +
+Vous pouvez ainsi vous connecter sur n'importe quelle machine de l'École
+(galion
, bireme
, brick
, horus pour les
+biologistes, etc.). Il existe aussi rlogin
(remote login), que
+l'on utilise exactement de la même façon.
+
Vous devriez trouver le Telnet dans le menu
+«Démarrer». S'il n'y est pas, vous pouvez choisir «Exécuter» dans le menu
+«Démarrer», et taper telnet
. Vous pouvez aussi utiliser «Rechercher»
+dans le menu «Démarrer» pour trouver le programme. Ensuite, vous indiquez le
+nom de la machine comme indiqué ci-dessus.
+
+Le Telnet par défaut de Windows fonctionne mal. On recommande plutôt TeraTerm, +quand il est installé. +
+ + + + + + ++ À l'École, cherchez le Telnet dans le lanceur (NCSA Telnet). +S'il n'y est pas, allez dans le menu Pomme et utiliser «Recherche de fichiers» +pour le trouver. +
+ + + ++Telnet n'est pas installé par défaut sur les Macs. Il se peut donc que, hors +de l'École, vous vous retrouviez sur des machines qui ne l'ont pas. +
+ + + + + + +Si vous utilisez AOL comme fournisseur d'accès, +vous ne pourrez pas faire de Telnet. En effet, AOL utilise son propre +protocole maison, propriétaire et non documenté, pour faire communiquer les +modems des abonnés avec leurs machines à eux. +
+ + + ++Du coup, certaines opérations sont impossibles. Techniquement parlant, +Telnet est un logiciel qui utilise Internet (le protocol natif, dit +TCP/IP), et, quand on est connecté à AOL, on n'est pas connecté à +Internet. C'est un autre réseau un peu séparé, et la firme AOL fournit +une passerelle transparente vers les pages Web qui sont sur Internet. +
+ + + + + + ++Les usages dans le forum des élèves ne sont guère différents de ceux qui +ont cours ailleurs sur Internet. On va donc voir les usages communs à +toutes les formes de communication asynchrone, puis les usages +spécifiques aux groupes de discussion (news et forum), et enfin les +usages propres à forum. +
+ + + + + + +Il s'agit ici des codes de politesse pour toute +forme de communication électronique asynchrone: courrier électroniques, +newsgroups. Pour la communication en temps réel (chats, talks, IRC, +ICQ, etc), c'est différent. +
+ ++Tout d'abord, faites des phrases. Les abréviations («vs» pour «vous») sont +proscrites, ainsi que l'écriture phonétique («c cool ici, tu fé koi ce soir»). +Vous avez le temps de rédiger vos messages, donc écrivez du français et +orthographiez correctement. +
+ + + ++Utilisez les majuscules avec beaucoup de parcimonie. Si vous en busez, on +pensera que vous criez et ON VOUS CRIERA DESSUS EN RETOUR. +
+ +
+Formellement, limitez la longueur de vos lignes à environ 70 caractères, pour
+faciliter la lecture. De plus, si un correspondant vous répond en citant votre
+message, les lignes citées ne seront pas coupées. Si vous utilisez les
+éditeurs pico
et nedit
reformatent automatiquement les
+paragraphes quand vous tapez ^J
(Control-J).
+
+Laissez des lignes blanches entre les paragraphes, ce sera plus lisible pour +votre correspondant. +
+ + + +
+Citez le moins possible du message auquel vous répondez, lorsque vous postez
+une réponse à un message. Il n'est nécessaire de citer que lorsque vous
+voulez clairement faire comprendre que votre réponse se rapporte à une partie
+précise du message précédent. Surtout, ne laissez pas de lignes citées
+inutiles par paresse. Essayez la touche ^K
(Control-K) si votre
+éditeur est pico
(ou emacs
).
+
+Pour représenter du gras, utilisez des étoiles, *comme ceci*
. Pour
+représenter le souligné, utilisez des traits de soulignement,
+_comme ceci_
.
+
+Utilisez des smileys pour indiquer les passages de vos messages à prendre au
+second degré si ce n'est pas évident. Par exemple, «:-)
» est le smiley
+générique; certains préfèrent «:)
». Le smiley «;-)
» signale un
+clin d'oeil.
+
Quand vous postez dans les news, ou +bien dans forum, il arrive que le message ait sa place dans plusieurs +groupes différents à la fois, et qu'on le poste donc «transversalement». +C'est ce qu'on appelle un cross-post, ou «multipostage» (X-post +dans le jargon). Dans tous les cas, il faut décider du groupe dans +lequel la discussion se poursuivra. +
+ + + + Par exemple, vous postez un message dans lequel vous vous demandez
+si, dans un État laïque, il est légitime d'enseigner les religions à
+l'école. Vous décidez de multiposter dans
+fr.education.divers
, fr.soc.politique
et dans
+fr.soc.religion
. Le message figurera dans ces trois groupes,
+mais la discussion ne doit se poursuivre que dans un seul groupe, que
+vous signalez. C'est ce que l'on appelle un follow-up («fu2»
+dans le jargon).
Outre ce que l'on vient de dire, +voici quelques usages qui ont cours dans le forum des élèves. +
+ +
+Tout d'abord, évitez de signaler leurs fautes d'orthographe aux autres en
+dehors du conti lettres.orthographe
. Et si vous le faites,
+que ce soit dans un français irréprochable...
+
+D'autre part, il y a un certain jargon en usage. Une partie est constituée +d'abréviations anglicisantes d'usage fréquent dans les news: ROTFL: +Rolling on the floor laughing («mort de rire»), IMHO: In my +humble opinion («à mon humble avis», ou AMHA). Vous rencontrerez aussi les +abréviations ou le jargon informaticiens (dont le fameux RTFM, «regarde dans +ton foutu manuel»). Enfin, il y a un jargon plus ou moins spécifiquement +normalien (groumph, grassouille, test...). +
+ + + +
+On est en droit de ne pas aimer. Dans ce cas, on évitera les hiérarchies
+alt.*
, archeo-forum.*
, et, dans une certaine mesure,
+informatique.*
. Si vous n'aimez pas les private jokes, restez
+également en dehors de la hiérarchie alt.*
: le reste de forum en est
+relativement exempt. Cependant, soyez compréhensif s'il y en a quand même çà
+et là...
+
+Si vous voulez comprendre un peu ces blagues internes, vous pouvez consulter
+le Petit Lexique Normalien, avec l'explication des mots et la présentation des
+habitués de forum
+(http://www.madore.org/~david/ens/lexique.html
).
+
+Le mois prochain, on expliquera ce qu'est le «blast». +
+ + + + +David Madore, Émilia Robin
+ + + + ++Ce cours explique progressivement ce qu'est un ordinateur. On connaît +désormais la mémoire, les bus, le processeur, l'écran, le clavier, la +souris... Ce mois-ci, on s'attaque aux éléments de stockage, disquettes, +disques durs et CDROMs. +
+ + + + + + + ++Qu'un ordinateur fonctionne, admettons. Ce pourrait être un effet de la +science moderne. La technologie nous habitue à la voir aligner plus de +miracles qu'un bataillon de messies arpentant la Palestine. Nous +considérerons donc que l'ordinateur allumé, cela existe, et qu'il +effectue de menus travaux intéressants quoique peu ménagers (ce qui +serait vraiment utile, pour le coup). +
+ + + ++Qu'un ordinateur ne fonctionne pas quand il n'y a pas de courant, c'est +tout aussi compréhensible. Achille était frileux du talon et Popeye n'est +qu'un pirate d'eau douce sans ses légumes verdâtres; aussi il est +raisonnable de penser que l'ordinateur puise sa force d'une certaine +source, et même, imaginer que cette source soit le courant électrique, ne +semble pas être l'idée la plus stupide qui soit. +
+ + + ++Mais rallumons un ordinateur qui a été préalablement éteint et débranché. +Stupeur! Après avoir repris sa configuration opérationnelle, il semble +contenir des informations qu'on avait soi-même rentrées avant cette +éclipse forcée. Qu'est-ce à dire? Il y aurait, dans cette boîte, une +entitée douée de mémoire qui résisterait à la pénurie de jus? Tout ne +serait pas transistors et condensateurs, silicium et métal? +
+ + + ++Eh bien oui, en effet, il y a des mécanismes de stockage de données qui +subsistent sans la fée électricité. Les principaux, ceux qu'on rencontre +le plus souvent sur une station de travail, sont les disques durs et les +disquettes. Il y a aussi les CDROMs et les bandes magnétiques. +
+ ++Pourquoi «disque»? Parce que c'est rond. Comment ça, rond? Ben oui, le genre +circulaire. Mais y'a rien de rond dans la machine! Ah effectivement, c'est +caché dans une boîte rectangulaire. Appréhendons la chose autrement. Le disque +dur, c'est le truc qui fait crrcrrcrr de temps en temps quand la machine est +allumée, comme si des cafards pédalaient pour la maintenir en vie. À +l'intérieur, il y a en fait plusieurs disques, qu'on nomme «plateaux», rigides +et recouverts d'une substance magnétisable, comme une cassette. Ces plateaux +sont empilés et tournent très vite autour d'un même axe. Entre les plateaux +circulent des sortes de bras mécaniques qui portent des «têtes» de lecture, à +savoir des assemblages électromagnétiques qui peuvent émettre et recevoir des +champs magnétiques. +
+ + + ++Car dans le support magnétisable, il y a des molécules contenant des +atomes de fer; ces atomes peuvent être orientés, et on peut savoir, avec +une tête de lecture, dans quel sens ils sont orientés. Et, plus fort +encore, on peut changer cette orientation en appliquant un champ +magnétique avec une tête de lecture (qui, du coup, est une tête +d'écriture). Enfin, c'est là l'astuce suprême: notre atome orienté ne va +pas changer spontanément de sens. Il conserve son orientation, courant ou +pas courant. Voilà comment une mémoire peut survivre entre deux +allumages: comme pour le tricot, on a des atomes à l'endroit et des +atomes à l'envers, ils représentent des 0 et des 1. +
+ ++Le disque est dans une boîte hermétique afin d'éviter la poussière: la +tête se déplace très près du disque, qui tourne très vite; l'analogie +courante, c'est d'imaginer un Boeing 747 (ou un Airbus A340, ne boudons +pas notre chauvinisme) voletant gaiement à une dizaine de centimètres du +sol. Et il ne faut pas que ça touche! Sinon après ça ne marche plus du +tout. C'est pour ça que faire tomber un ordinateur en marche n'est pas +conseillé du tout (déjà, éteint, c'est plutôt mal vu, mais allumé, c'est +l'assurance que les têtes de lecture vont faire un bel atterrissage sur +les plateaux). +
+ + + ++Par comparaison, une disquette est un disque dur à l'air libre, d'où un +espace beaucoup plus important entre la tête et le disque (qui, pour +l'occasion, est souple), ce qui rend la lecture et l'écriture plus lentes +et moins précises (on ne peut plus viser aussi finement les atomes; du +coup, une disquette contient beaucoup moins de données qu'un disque dur). +
+ + + ++Mais pourquoi cet assemblage mécanique? Ben c'est parce qu'il faut bien +amener la tête là où il y a les atomes à orienter. On s'en passerait +bien: la mécanique ça s'use, ça fait du bruit et ça tombe en panne. Mais +on ne sait pas faire autrement. +
+ + + + + + ++Les disques permettent donc de stocker des 0 et des 1. En pack. Comme des +billes dans un sac. Combien peut-on en stocker? Pas loin de douze +millions sur une disquette, et le moindre disque dur peut en contenir +plusieurs centaines de milliards. N'essayez pas d'imaginer ça, car le +milliard est une notion qui échappe à l'esprit humain1. Disons plutôt +qu'une disquette suffit à stocker un texte comportant un bon million de +lettres, soit un millier de pages. +
+ + + ++En faisant attention à ne pas gaspiller, on peut mettre plus, la métaphore +usuelle étant que la Bible tient sur une disquette, tout juste. Un CDROM peut +contenir 700 bibles. Un disque dur de base à 1 000 balles contiendra +30 000 bibles2. Par comparaison, une image, une musique, +ou un film, c'est très gros: un DVD contiendra deux heures de film sur +6 giga-octets (plus précisément, 4.7 Go pour la première couche, et 8.5 Go +pour un DVD mono-face bi-couche). C'est là qu'on voit que dans un film il y a +autre chose que le script. +
+ +1 octet | +1 caractère | +
1 Ko (kilo-octet) | +environ 1 000 caractères | +
1 Mo (méga-octet) | +environ 1 million de caractères | +
1,4 Mo | +1 disquette; la Bible | +
600 Mo | +1 CDROM: 600 fois la Bible | +
+ | 1 CD audio: 1 h. de musique | +
1 Go (giga-octet) | +environ 1 milliard de caractères | +
8.5 Go | +1 DVD. | +
+ | Matrix: 1 DVD | +
+ | Les 10 commandements: 2 DVDs | +
+On utilise souvent l'octet pour désigner un groupe de huit bits; un octet +peut prendre 256 configurations différentes, voilà qui est suffisant pour +représenter une lettre (en comptant les majuscules, les minuscules, les +chiffres, les signes de ponctuation et les lettres accentuées). On +possède aussi des multiples: le kilo-octet contient 1024 octets (et non +1000, car 1024 est un nombre plus «rond» quand on compte en binaire, +comme les ordinateurs; et, par ailleurs, les informaticiens sont +joueurs). Le méga-octet représente 1024 kilo-octets, et le giga-octet +fait 1024 méga-octets. Le téra-octet, qui fait (surprise) +1024 méga-octets, est encore trop cher pour qu'on en parle ici. Un disque +dur moderne fait quelques dizaines de giga-octets, la mémoire centrale +d'un ordinateur quelques dizaines de méga-octets. +
+ + + ++Une question qui se pose légitimement, c'est pourquoi diable la machine +travaille-t-elle sur une mémoire qui disparaît quand on coupe le courant, +alors qu'elle en a une autre qui résiste, et qui est en plus mille fois +plus abondante? Parce que celle-ci est bien plus de mille fois plus +lente, tout simplement. C'est pour ça qu'on édite un texte en mémoire, et +que de temps en temps il faut «enregistrer le fichier», c'est-à-dire +envoyer le résultat sur un support plus permanent, à savoir le disque +dur. +
+ ++Parlons-en des fichiers, justement. On l'a vu, les octets sont en vrac +sur le disque dur. Or, un tel chaos, ce n'est pas intéressant. On a envie +de trier tout ça, de faire des sections et des sous-sections, et des +index qui permettent de retrouver un ensemble de fiches sans avoir à +relire toute la bibliothèque, etc... pas de panique, c'est prévu! La +machine est livrée avec un logiciel spécial, le système d'exploitation, +qui sait faire ce rangement. Il récupère un peu des octets du disque pour +se fabriquer des étiquettes, et hop, il fournit des dossiers et +sous-dossiers, et dedans des fichiers. Dans le monde informatique, on dit +«répertoire» plutôt que «dossier», mais des réformistes essayent +d'assurer la suprématie de ce dernier terme. Notons bien que le système +d'exploitation n'est pas du tout intéressé par le contenu des fichiers; +pour lui, ce sont des 0 et des 1, c'est tout. +
+ + + ++Vous avez probablement déjà manipulé des fichiers sans savoir ce que +c'était. C'est presque aussi banal que de faire de la prose, de nos +jours. Que cela ne vous donne pas la «grosse tête» (ça m'est réservé). +
+ + +Thomas Pornin
+ + + + + + + + + + ++Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on va parler de l'impression de +documents, en présentant les différents types d'imprimantes, les commandes +Unix qui servent à imprimer, et les modalités d'impression à l'École. +
+ + + + + + + ++ La tête d'impression, ou chariot, se déplace +ligne par ligne de gauche à droite (voire aussi de droite à +gauche3) et imprime les caractères un par un. +
+ + + ++Elle comporte une pièce appelée marguerite comportant les caractères +imprimables gravés dessus. Cette pièce pivote afin de présenter le bon +caractère face à la feuille, puis est frappée sur la feuille de papier, +un ruban encré avançant au fur et à mesure de l'impression étant placé +entre la feuille et la marguerite. Le papier est entraîné, souvent par +engrènement sur des picots, afin de présenter d'abord le haut, puis le +bas de la page à la tête d'impression. +
+ + + ++C'est le système le plus ancien; les machines à écrire électriques +fonctionnaient sur le même principe. +
+ + + ++Elle a comme avantages d'être simple (notamment au niveau de +l'électronique de commande), et d'avoir une bonne qualité d'impression. +En revanche, elle est bruyante, et changer de police de caractères +(italique, gras, caractères mathématiques...) oblige à changer la +marguerite temporairement. Elle est généralement restreinte aux polices +mono-espacées4. +
+ + + + + + ++ L'image est constituée d'un grand nombre de +petits points, comme sur les écrans informatiques. Plus les points sont +petits, meilleure est la qualité car on ne remarque pas les points. Au +contraire, dans le cas des modèles à faible qualité d'impression (caisses +enregistreuses...), les points sont très visibles. La résolution, c'est à +dire la finesse des points, est mesurée en points pour pouce (dots +per inch ou dpi), un pouce valant environ 2,54 cm. À titre de +comparaison, un écran informatique a une résolution de l'ordre de 75 à +100 dpi. +
+ + + + +On distingue plusieurs sous-types d'imprimantes matricielles, qui sont +les imprimantes à aiguilles, les imprimantes à jet d'encre et les +imprimantes laser.
+ + + +Comme dans une imprimante à marguerite, la tête d'impression, ou chariot, se déplace ligne par ligne +de gauche à droite, voire aussi de droite à gauche. Au lieu de porter une +marguerite, elle porte une rangée verticale d'«aiguilles», régulièrement +espacées, généralement au nombre de 9, ou 24 pour les imprimante de +qualité. Ces aiguilles appuient ou non sur un ruban encré placé entre la +tête d'impression et le papier.
+ + + + ++Ce type d'imprimantes était courante pour les ordinateurs personnels +pendant les années 1980; il a même existé des modèles couleur avec rubans +quadrichromiques. Actuellement, on s'en sert pour les tickets des +distributeurs automatiques et aussi pour des factures, bordereaux, +etc.
+ + + + + +Le papier utilisé est +chimiquement traité pour réagir à la chaleur. L'imprimante contient des +aiguilles qui chauffent ou non localement le papier et provoque ou non +son noircissement. Ce type d'imprimantes est souvent utilisé dans les +télécopieurs, les terminaux cartes bancaires... en raison de son relatif +silence.
+ + + + + +La tête d'impression est formée +d'une rangée de buses microscopiques laissant ou non sortir de l'encre. +
+ + + ++De nos jours, toutes les imprimantes jet d'encre sont couleur +(quadrichromie) et de nombreux modèles offrent une impression de qualité +«photo» à l'aide d'encres et/ou de papier spécial. +
+ + + + +Procédé analogue aux photocopieuses. +De la poudre d'encre (toner) est déposée à l'endroit où il faut +noircir le papier. Elle est ensuite fondue sur le papier par chauffage +par le four ou fuser. Certains modèles impriment en couleur.
+ + + + + +imprimantes de très haute qualité +destinées à fournir les films pour l'impression professionnelle +(offset...). Leur résolution typiquee est comprise entre 1 200 et +2 400 dpi.
+ + + + + + + +L'impression de la couleur se fait +généralement en quadrichromie (dit aussi CMYK, Cyan, Magenta, +Yellow, blacK). Pour chacune de ces composantes, on imprime un nuage de +points, avec plus ou moins de densité pour faire les nuances. +Normalement, on pourrait reproduire toutes les teintes avec seulement le +cyan (bleu-vert), le magenta et le jaune; on met du noir pour assurer des +couleurs sombres profondes et économiser de l'encre.
+ + + + ++L'impression couleur est chose délicate; il est rare que l'on retrouve +exactement les mêmes couleurs à l'écran. Ce domaine est un maquis de +brevets, où la qualité professionnelle se paye souvent au prix fort. +
+ + + + + + ++Toutes les imprimantes bureautiques, à jet d'encre comme à laser, +demandent que la page à imprimer soit présentée sous la forme d'une image +de petits points. Dans le cas des imprimantes couleur, on doit fournir +4 images, correspondant aux 4 couleurs d'encre. Pour obtenir de bons +résultats, notamment avec les imprimantes jet d'encre couleur, il est +recommandé que la génération de ces images se fasse en tenant compte des +particularités spécifiques du modèle d'imprimante utilisé. +
+ + + ++Il y a deux approches: +
+ + + + +Cela impose d'embarquer dans +l'imprimante un véritable micro-ordinateur, auquel l'ordinateur +bureautique envoie des ordres de haut niveau («trace une ligne», «affiche +les caractères ABC en police Times italique corps 12»). Dans le monde +professionnel, les imprimantes comprennent surtout le langage de +description de page PostScript. Celui-ci permet au logiciel +bureautique d'envoyer à l'imprimante une description de la page très +indépendante du modèle particulier d'imprimante utilisé; l'imprimante se +débrouille ensuite pour imprimer au mieux.
+ + + + ++Il existe 3 versions de PostScript: PostScript niveau 1, 2 et 3. Toutes +les imprimantes de l'ENS comprennent au moins le PostScript niveau 2; il +est recommandé d'utiliser du PostScript niveau 2 lorsque c'est possible, +notamment en cas d'inclusion d'images scannées ou de copies d'écran. +
+ + + +
+Un des gros avantages du PostScript est qu'il permet de produire des
+fichiers décrivant une page ou une partie de page qui sont totalement
+portables: une figure PostScript produite avec Adobe Illustrator peut
+être inclue dans un document LATEX sans difficulté. Il existe des
+visualisateurs de PostScript pour Unix (par exemple gv
)
+et pour Windows (gsview
;
+http://www.cs.wisc.edu/~ghost/gsview/
).
+
+Il est possible d'imprimer du PostScript sur une imprimante non
+PostScript en faisant interpréter le PostScript sur l'ordinateur
+(typiquement en utilisant GhostScript (gs
)).
+
C'est le cas avec les imprimantes bon +marché. Sur l'ordinateur est alors installé un programme spécifique au +modèle d'imprimante, généralement fourni par le fabricant d'imprimante. +
+ + + ++La grande difficulté des systèmes d'exploitation autres que Windows +(BeOS, Linux, FreeBSD...) avec les imprimantes est dûe à la politique des +fabricants d'imprimantes. En effet, ceux-ci ne fournissent généralement +pas de pilote* d'imprimante pour ces systèmes et fournissent rarement les +informations indispensables à l'écriture de pilotes par des tiers. Dans +certains cas, ces imprimantes ne peuvent pas du tout fonctionner sous +Linux; dans d'autres, elles fonctionnent, mais la qualité d'impression +est moyenne car les concepteurs du pilote n'ont pas eu accès à +l'information nécessaire à une bonne exploitation des capacités de +l'imprimante (p.ex. pour le rendu des couleurs).
+ +David Monniaux
+ + + + +La première salle informatique libre-service date de +la fin des années 1980; elle comprenait 5 MacIntoshs. Elle prenait à l'époque +la place de l'infirmerie (d'où le terme «infirmatique»)5. +
+ + + ++L'expérience a vite montré que cette salle, près de l'entrée de l'École, +sans controle d'accès, imprimait beaucoup! Vraiment beaucoup. Plus que ce que +faisaient uniquement les normaliens... +
+ + + ++C'est ainsi que l'on a cherché --- et trouvé -- un filtre: les cartes (oui, +payantes; à noter que la somme encaissée n'est pas ré-intégrée au budget du +SPI). Durant les quelques mois où la salle du 46 a été sans filtrage, on a +remarqué la différence! +
+ + + + + + +Il y a donc des lecteurs de cartes:
+ + +À noter que les imprimantes HP 4000 actuelles ont un bouton
+Annuler
, qui limite un des soucis longtemps présents: je
+mets ma carte, et c'est un autre travail qui sort.
+ En 2000, on a changé 32 cartouches (18 en salle S, 6 à +Jourdan, 4 au 46, 1 à Montrouge, 1 en Infi). Ceci a eu un coût de +25 000 france annuels, le prix de 2 machines neuves. La salle S imprime au +rythme de 230 000 pages par an, 800 pages par jour... +
+ ++À vous de voir où l'argent est le mieux dépensé! +
+ + + + +Jacques Beigbeder
+ + + + +
+Tout d'abord, un certain nombre de logiciels ont des commandes d'impression:
+bouton «Imprimer» de Netscape, bouton «Print» de gv
, éditeurs de
+textes, etc. Ensuite, il existe des commandes plus ou moins
+spécifiques.
dvips
+ dvips
sert à imprimer des fichiers DVI
+(taper dvips
fichier.dvi
). L'option -pp
suivie d'un
+numéro imprime la page correspondante, l'option -p
indique le numéro
+de la première page à imprimer, et -l
le numéro de la dernière page à
+imprimer:
+
dvips -pp 3 |
+Imprimer la page 3 | +
dvips -p 3 |
+Imprimer à partir de la page 3 | +
dvips -l 3 |
+Imprimer jusqu'à la page 3 | +
lpr
+ lpr
sert à imprimer les fichiers PostScript
+(taper lpr
fichier.ps
). Si vous ne voulez imprimer que
+certaines pages d'un fichier PostScript, ouvrez-le avec gv
+(gv
fichier.ps
), et marquez les pages à imprimer en les
+cochant avec le bouton droit de la souris. Ensuite, cliquez sur Print
+marked
pour imprimer.
+
a2ps
C'est un utilitaire qui sert à imprimer. Par +défaut, il imprime le document sur une demie-page (si bien que 2 pages A4 se +retrouve côte à côte). Il imprime «au mieux» le fichier qu'on lui donne en +entrée: si c'est un PostScript ou un DVI, il l'imprime, si c'est un fichier +TeX, il le compile d'abord, si c'est simplement du texte, il l'imprime tel +quel.
+ + + + + + + +Question liminaire: voulez-vous vraiment +imprimer ce courrier? Si c'est le cas, pensez à le récupérer: on trouve à côté +de l'imprimante des piles de messages personnels, parfois vraiment intimes, +que leurs destinataires ont oublié de prendre... +
+ + + +
+Donc: avec pine
, appuyez sur %
(la touche «pour-cent»). Avec
+mutt
, appuyez sur p
(print). Dans les deux cas, le
+logiciel demande confirmation.
+
C'est très facile: il suffit +de se rendre à la photocopieuse la plus proche. +
+ + + + + + + L'imprimante de la salle S fonctionne en
+recto-verso. On utilise la commande lpr
avec l'option
+-Zdouble
(c'est tellement barbare que c'en est poétique...). Par
+exemple, pour imprimer rapport.ps
en recto-verso, tapez:
+
+brick ~ $ lpr -Zdouble rapport.ps
+
+
+Pour imprimer un fichier Word, il faut +ouvrir ce fichier, avec StarOffice ou ApplixWare (voir le numéro 9 du +, novembre 2000). Ensuite, chacun de ces logiciels possède un bouton +«Imprimer» ou «Print».
+ + + + + + + +C'est un logiciel qui a ses vapeurs, et +qui parfois refuse d'imprimer. Des fois, ça marche. Souvent, ça ne marche pas. +
+ + + +
+Quand il ne veut pas imprimer, il crée un fichier PostScript dans son
+répertoire axhome/
(Hublot, n° 9). Par exemple, s'il ne parvient
+pas à imprimer rapport.rtf
, il va créer dans axhome/
le
+fichier rapport.rtf.ps
. Un PostScript s'imprime avec
+lpr
6.
+
Il suffit de mettre le transparent +dans le tiroir à la place du papier. Attention! N'utilisez que des +transparents certifiés HP, pour imprimantes, sinon le plastique fondra. +
+ + + + +Émilia Robin
+ + + +Vous pouvez aussi consulter la page des tuteurs appelée «Imprimer»: /tuteurs/unix/imprimer.html
.
+
Comme d'habitude, le risque n'est pas tant de +pirater que de vous faire pirater. Quand vous vous connectez à distance, +vous tapez votre mot de passe, que les câbles transportent docilement +jusqu'à la machine sur laquelle vous voulez vous connecter. Comme les +lettres transitent en clair, sans chiffrement, il est très facile +d'espionner ce qui circule sur un câble et de récupérer les mots de +passe (que ce soit lors d'un telnet ou quand vous vous connectez à un +serveur POP ou IMAP pour lire votre courrier). +
+ + + ++Il est même possible de reconstruire des sessions telnet afin par exemple +de prendre les mots de passe, et aussi d'espionner ce que fait la +personne qui se connecte. +
+ + + + + + +Donc, quand vous vous connectez depuis une grande +université avec un gros réseau ou quelque chose comme ça, vous courrez +toujours un risque. Il y a donc deux mesures qui s'imposent: +
+ + + + +slogin
à la place de rlogin
, il y a
+juste une lettre à changer, et les transmissions seront chiffrées.
+Évidemment, il faut que ce logiciel soit installé.Enfin, et c'est ce que nous allons expliquer ici, utilisez des logiciels +sécurisés. Utiliser ssh n'est pas plus difficile qu'utiliser telnet. En +particulier, le programme ssh pour Windows, en plus d'être sécurisé, est +nettement plus agréable à utiliser que le telnet standard.
+ + + + + + + +slogin
+Une des principales activités auxquelles sert telnet, c'est se loguer sur
+un ordinateur. Ce qui implique que le serveur envoie la question
+«login:
» et «password:
» au client, et que l'utilisateur
+saisisse tout ça (exactement comme s'il était directement devant l'autre
+ordinateur). Certaines étapes peuvent être économisées. En particulier,
+le login (et éventuellement le mot de passe) peuvent être indiqués une
+bonne fois pour toutes au client, pour qu'il les envoie automatiquement
+au serveur.
+
+Pour introduire quelques points de confort supplémentaires, le protocole +SSH (Secure SHell) a été mis au point. Il utilise des techniques +de cryptographie solides pour assurer l'authenticité et la sécurité de ce qui +circule. +
+ + + +
+La commande slogin
(secure login) repose sur SSH. Deux
+cas: si vous avez des clés SSH, il s'en sert et demande votre passphrase
+(voir plus bas); si vous n'avez pas de clé SSH, il chiffre l'ensemble de
+la transmission (mot de passe et toutes les données qui circulent).
+
Sur une machines Unix, pour se
+connecter à une machine nommée (au hasard, clipper.ens.fr
), il suffit
+de taper:
+
+chaland ~ $ telnet clipper.ens.fr +chaland ~ $ slogin clipper.ens.fr +chaland ~ $ ssh clipper.ens.fr ++ +
Par défaut, SSH et slogin
utilisent votre login actuel.
+Pour en préciser un autre (par exemple si vous avez un login différent à
+la fac et ici), il faut utiliser l'option -l
(«l» comme
+«login»):
+chaland ~ $ ssh -l george clipper.ens.fr
+
++J'en vois déjà qui essaient le login de leur voisin; il restera +évidemment à votre charge de prouver que vous avez le droit de vous +connecter.
+ + + + + Notons enfin qu'à certains endroits (en France), il faudra écrire
+ssf
au lieu de ssh
(SSF est une version de SSH
+déposée au Ministère de l'Intérieur).
+À l'École, comme nous avons un administrateur (très) compétent, +et pas trop de gens mal intentionnés, certaines facilités sont proposées: +d'une part, entre les machines du réseau élèves le mot de passe est +inutile, et d'autre part des liens ont été mis en place, qui permettent +de se connecter directement en tapant le nom de la machine: +
+ + + + +
+chaland ~ $ vedette
+
+
+ On trouve du SSH pour Windows:
+http://www.zip.com.au/~roca/ttssh.html
.
+
+Sur un Macintosh, on peut télécharger un programme pour SSH (qui fait
+aussi telnet):
+http://www.lysator.liu.se/~jonasw/freeware/niftyssh/
.
+
+La première fois que vous vous connectez depuis une machine A vers une +machine B, A va relever la «signature» de B, et vous demander si vous +l'acceptez. Si vous vous connectez sous Unix, il faut pour ça taper «yes» +en toutes lettres. Les fois suivantes, A se contentera de comparer la +signature de B avec celle qu'elle connaît, pour vérifier l'authenticité. +
+ ++À noter, pour l'École: comme les signatures sont gardées dans un fichier +sur votre compte, le fait de connaître une machine donnée est commun à +toute une salle (mais pas le fait d'être connue). +
+ + + + + + +
+ SSH connaît un mécanisme de clés un peu compliqué, mais très
+pratique à la longue. À la base, on a un programme, ssh-keygen
+(générateur de clés de SSH). Ce programme crée deux fichiers, qui contiennent
+respectivement une clé publique et une clé privée.
+
+La clé privée est secrète, et doit être gardée jalousement. Elle reste +sur la machine A. +
+ + + ++La clé publique n'est pas particulièrement secrète, mais il n'est pas non plus +utile de l'exposer au grand jour. Pour s'en servir, il suffit de mettre la clé +publique au bon endroit sur une machine, et quiconque a la clé privée peut s'y +connecter. Elle se trouve donc sur la machine B, et en fait partout où vous +voulez vous connecter. En outre, la clé privée peut être elle-même dotée d'un +mot de passe (passphrase). +
+ + En pratique, on commence par lancer ssh-keygen
sur la
+machine A, et on bouge la souris jusqu'à ce qu'il ait fini7.
+
+Il nous demande alors le nom d'un fichier où sauver les clés nouvellement
+créées. Par défaut, il propose ~/.ssh/identity
. Si vous ne comptez
+utiliser qu'une clé publique (qui peut servir sur plusieurs ordinateurs),
+c'est un nom pratique. Il demande également une passphrase pour la clé.
+La passphrase est en théorie nécessaire à chaque fois qu'on utilise la
+clé, mais nous verrons un peu plus loin comment alléger ça. On peut
+aussi ne pas mettre de passphrase du tout.
+
+Quand c'est fini, ssh-keygen
écrit la clé privée dans le
+fichier ~/.ssh/identity
, et la clé publique dans le fichier
+~/.ssh/identity.pub
(ou tout autre paire de noms formée de la même
+manière que vous auriez indiquée). Chacun de ces fichiers contient en
+fait une longue ligne de texte.
+
Pour vous loguer avec SSH sur la machine B, il suffit d'ajouter le
+contenu de identity.pub
de la machine A dans le fichier
+~/.ssh/authorized_keys
de la machine B. Attention à ne pas
+laisser ce fichier en lecture libre pour le reste du monde (voir le
+numéro 4 du Hublot: /tuteurs/docs/hublot/hublot4.html#concept
).
+
+Vous pouvez maintenant vous loguer sur la machine B en tapant
+ssh clipper.ens.fr
. SSH vous demande votre passphrase, à moins
+que vous n'en ayez pas mis.
+
Pour simplifier ces
+histoires de clés, et de mots de passe, il existe quelque chose qui
+s'appelle l'agent SSH. C'est un programme, ssh-agent
, qui tourne
+en arrière plan sans déranger personne. Quand SSH a besoin d'une clé,
+il la lui demande d'abord, vous n'avez donc pas à l'indiquer
+explicitement. En outre, vous ne tapez qu'une seule fois votre
+passphrase.
+Ceci est un peu abstrait, voyons d'abord comment lancer ce fameux client
+SSH. Si vous avez la config conscrits 2000, ssh-agent
est
+déjà lancé quand vous vous loguez physiquement sur une machine du réseau
+élèves. Si vous n'avez pas cette config, il faut alors modifier le fichier
+.profile
: cherchez une ligne disant exec $STARTX
, et
+insérez: exec ssh-agent $STARTX
(mais récupérer la config conscrits
+serait aussi une bonne idée). Ceci signifie qu'il restera actif tant que
+startx
continuera à tourner, ce qui veut dire jusqu'à ce que vous
+partiez.
+Ensuite, tapez ssh-add
pour fournir votre passphrase à l'agent
+SSH. Tant que vous resterez logué, vous n'aurez plus besoin de fournir
+cette passphrase; c'est l'agent SSH qui se charge de la donner lors de
+vos connexions vers les machines B.
+
+Si vous êtes conscrits 2000, éditez votre fichier .xinitrc
et
+décommentez* cette ligne, en supprimant le dièse du début (cherchez cette
+ligne vers la ligne 92):
+
+#sleep 3 && ssh-add </dev/null & ++ + +
+Au moment où vous vous loguerez sur la machine A, celle-ci vous demandera +votre passphrase, et vous n'aurez plus rien à taper pour toutes vos +connexions. +
+ + + + +Nicolas George
+ + + + +%
, en HTML les commentaires sont insérés entre
+<!--
et -->
. Dans les fichiers de
+configuration qui indiquent la taille de vos fenêtres, leur couleur, etc,
+les lignes de commentaires commencent le plus souvent par #
+ou "
.+Le Hublot est le journal des tuteurs informatique de l'ENS. Il +paraît chaque mois à 350 exemplaires. Il est également disponible sur le Web: +
+ + + ++Rédaction: Émilia Robin. +
+ + + ++Ont collaboré à ce numéro: Jacques Beigbeder, Nicolas George, David Madore, +David Monniaux, Thomas Pornin, Laurent Rineau, Olivier Verzelen. +
+ + + ++Merci à Nicolas Thiéry pour ses relectures. +
++ Le Hublot est le journal des tuteurs informatique de l'ENS. + Il paraissait tous les mois depuis la rentrée 1999 et ce jusqu'en + février 2001. Il était tiré à environ 250 exemplaires ; rédactrice en + chef : Émilia Robin, rédacteurs adjoints : Thomas Pornin, Nicolas + George. +
+ ++ Nous mettons à votre disposition ces numéros sous forme de pages Web + et aussi au format PostScript. +
+ +Ces tableaux ne proposent pas un sommaire complet du Hublot, +mais un sommaire des principales rubriques au long de l'année. +Reportez-vous aux Sommaires complets, et aux +Autres sujets, pour les autres articles.
+ +Numéro | +Commandes utiles | +Config conscrits | +LaTeX | +Comment... | +Internet | +Forum | +Cours ordinateurs | +Sécurité | +
---|---|---|---|---|---|---|---|---|
8 | +pot, qui, anniversaire, etc | +Récupérer la config | +Bibliographie | +Écrire (éditeurs de texte) | +Introduction | +Qu'est-ce que c'est | +Présentation | +Mots de passe | +
9 | +ls, cd, mkdir, rmdir | +Les fenêtres | +Compilation | +Écrire: traitements de texte | +Courrier électronique | +Les contis | +La mémoire et les bus | +Droits | +
10 | +cp, rm, mv | +Copier-coller | +Packages | +Disquettes | +Web | +lire les contis | +Le processeur | +Crypter | +
11 | +qui-5.0, less | +Raccourcis claviers | +Taille de la page | +Calculer | +News | +Poster | +Écran, clavier, souris | +PGP (sur la page de David Madore) | +
12 | +screen | ++ | Images | +Imprimer | +Telnet | +Netiquette | +Le disque dur, les disquettes | +ssh | +
+En dehors des rubriques habituelles et du lexique, +le Hublot propose divers articles : +
+Ils sont là, ils sont parmi nous, depuis toujours ils nous observent. +Plus fort encore que le scoop sur la lactation des ornithorynques, voici +toute la vérité sur l'odieuse machination qui menace le monde libre, j'ai +nommé le Complot du Grand Pingouin. La fin des Temps est proche.
+ +hublot
écrite par
+Nicolas George et Florent Hivert ;hevea
par Olivier Verzelen. On appelle alias une
+traduction que vous définissez pour un mot que vous tapez en ligne de
+commande; c'est le plus souvent un raccourci. Par exemple, si vous tapez
+rm
, la machine comprendra rm -i
. Les alias qui
+sont définis de façon permanente le sont dans le fichier
+.zshrc
de votre compte (config conscrits). La commande
+alias
permet d'avoir la liste des alias actuellement
+définis.
On mesure en +bauds le débit des modems. Grosso-modo, 1 baud équivaut à 1 bit par +seconde. Les modems actuels peuvent monter à 57 600 bauds, mais c'est +rare (il faut des lignes téléphoniques de très bonne qualité). +Couramment, on fait du 28 800 bauds. Comme 8 bits font un octet +(c'est-à-dire un caractère), un modem courant fait du 3 600 caractères à +la seconde, soit environ 3,5 Ko.
Le cache est un espace de stockage +où le navigateur garde une copie des pages récemment visitees, afin +d'accélérer leur chargement lors de la consultation suivante (il suffit +alors de vérifier que la page n'a pas changé plutôt que de la télécharger +de nouveau).
Il y a en fait deux types de cache: d'une part un +cache en mémoire vive, qui ne conserve les données que durant une session +de navigation, et d'autre part un cache disque (parfois désactivé pour +économiser de la place) qui est conservé d'une session à l'autre. +
%
, en HTML les commentaires
+sont insérés entre <!--
et -->
. Dans les
+fichiers de configuration qui indiquent la taille de vos fenêtres, leur
+couleur, etc, les lignes de commentaires commencent le plus souvent par
+#
ou "
.+C'est un espace spécial qui, placé entre une ponctuation et un mot, +empêche le mot et la ponctuation d'être séparés par un retour à la ligne. +
Il +existe deux sortes de langages de programmation: les langages compilés et +les langages interprétés. Les langages compilés fonctionnent selon le +principe suivant: le programmeur écrit le code du programme, puis on +passe par une étape de compilation, c'est-à-dire de traduction +du code en langage machine. On dispose alors d'une part du code source du +programme, que l'on peut modifier et recompiler, d'autre part d'un +exécutable, illisible par un humain, mais compréhensible pour +l'ordinateur.
Quand vous achetez un logiciel dans le commerce, +vous achetez un exécutable produit à partir d'un code source, dont vous +ne disposez pas. Vous pouvez utiliser le logiciel, le recopier, mais pas +le modifier. Ce n'est pas vrai pour les logiciels libres.
C'est un sigle anglais +(Frequently Asked Questions, questions fréquemment posées»), +adapté en français comme «Foire Aux Questions». Comme son nom l'indique, +cela désigne une liste de questions courantes à propos d'un sujet donné. +
Quand vous arrivez quelque part sur Internet (un groupe de +discussion, une page Web, etc), il faut commencer par lire la FAQ: dans +90% des cas, quelqu'un d'autre a déjà rencontré le même problème que +vous, et la réponse existe déjà...
Fichier
+définissant et personnalisant le comportement de certains programmes
+(.pinerc
, .ytalkrc
...). Le rc
veut
+dire run command.
Ce sont aussi les fichiers de
+configuration qui définissent la taille, la couleur et l'emplacement des
+fenêtres, les menus de fond d'écran, les couleurs de ls
,
+etc. On détaillera ces fichiers de configuration dans le numéro 13 du
+Hublot, en mars 2001.
C'est un acronyme qui veut dire
+«GNU's not Unix». Le projet GNU est un projet visant à écrire un système
+d'exploitation libre complet. Ses participants ont commencé par écrire
+un certains nombres de logiciels et d'utilitaires permettant le
+développement du système proprement dit (Hurd), dont la sortie est une
+arlésienne... En attendant, ces utilitaires existent (GNU emacs,
+GNUchess, gzip
, des versions de less
,
+grep
, tar
, etc).
Les promoteurs du +projet sont la Free Software Fundation (FSF), avec Richard Stallman à sa +tête.
Les gourous sont un groupe
+d'élèves ou d'anciens élèves volontaires pour installer un certain nombre
+de logiciels sur les machines Unix, comme pine
,
+mutt
, gnuplot
, xfig
,
+ytalk
, les éditeurs de texte, les jeux, les gestionnaires de
+fenêtres, des utilitaires comme less
, screen
,
+ledit
...
Ils s'occupent également, en collaboration +avec le SPI, de la modération des courriers collectifs. Ce sont aussi les +gourous qui font la config conscrits.
General Public License. +C'est une des licences de diffusion des logiciels libres, notamment +Linux et les utilitaires GNU. Un logiciel couvert par cette licence peut +être utilisé, recopié, modifié, redistribué (gratuitement ou non) ou +inclus dans un autre, à condition que le code source du logiciel avec ses +modifications éventuelles soit tenu à la disposition de tout +récipiendaire, aux termes de cette même licence.
Le but de cette +licence est de promouvoir le logiciel libre, en empêchant de réutiliser +tout ou partie d'un logiciel sous GPL dans un logiciel qui ne le soit +pas.
+L'interface est ce qui permet la communication entre l'ordinateur et +l'utilisateur. Avec une interface graphique, un «geste» informatique +(déplacer un fichier, lancer un logiciel) correspond à un «geste» +physique (faire glisser une icône, cliquer sur un bouton qui représente +le logiciel).
On utilise les ressources du graphisme pour +ordonner le travail, par exemple : une fenêtre pour chaque logiciel, une +couleur pour ce qui est activé et une autre pour ce qui n'est pas activé, +une thématique pour chaque icône, permettant de retrouver rapidement la +fonction du logiciel (comme papier et crayon pour un traitement de texte, +palette pour un logiciel de dessin, etc.).
C'est un environnement graphique +développé pour Unix, et très ressemblant à Windows, tant par l'aspect que +par les ressources qu'il consomme. Il regroupe à la fois un bureau, un +certain nombre d'applications de base (courrier électronique, gestion des +fichiers...) et des applications plus lourdes (traitement de textes...). +
L'environnement lui-même n'est pas installé à l'École, mais
+certaines des applications le sont quand même (jeux, utilitaires comme le
+gestionnaire de fichiers kfm
, le générateur de fractales
+kfract
, etc).
Il y a d'autres projets proposant +une interface graphique agréable pour machines Unix; citons Gnome, +Afterstep, WindowMaker.
Un logiciel libre est un logiciel +que l'on peut copier, modifier et distribuer librement. Le modifier +implique de pouvoir disposer du code source du logiciel, et pas seulement +de l'exécutable. On peut revendre commercialement un logiciel libre; +dans ce cas, c'est un service que l'on vend (pressage du CD-ROM, +documentation, service après-vente...), et non pas le logiciel lui-même. +Un logiciel libre n'est donc pas obligatoirement gratuit.
+Là-dessus se greffe la notion de copyleft (par opposition à +copyright): en plus d'être libre, le logiciel est sous une licence (telle +que la GPL) qui garantit que les versions dérivées seront également +libres. Des exemples de logiciels libres: pine, mutt, +LATEX, netscape, linux, gimp, xkobo...
C'est une abréviation pour
+«manuel». Les pages de man sont les pages qui documentent un programme,
+ou une commande. Par exemple, pour connaître toutes les options de
+ls
, tapez «man ls
». Les commandes de
+déplacement, recherche, etc, sont celles de less
(voir les
+ exercices sur
+less
).
Les pages de man sont des +références, et pas des didacticiels. Elles sont donc souvent +difficiles à lire, d'autant qu'elles sont en anglais. Dans les +distributions francophones de Linux, un certain nombre de pages de man +ont été traduites.
C'est un système électronique qui +permet de connecter un ordinateur au réseau téléphonique, pour lui donner +accès à l'Internet.
Est bas +niveau ce qui est proche du matériel. Est haut niveau ce qui est proche +de l'utilisateur.
Le noyau +(kernel) est le coeur du système. C'est lui qui gère le matériel +pour les besoins des applications. Il est la partie principale du système +d'exploitation.
Ensemble de fonctions qui +peuvent être incorporées à LATEX pour faire une +tâche particulière (police spéciale, colonnes, etc...). Les packages +LATEX seront expliqués dans le prochain numéro. +
Se dit d'une option, d'un +comportement, etc, qui est choisi tant que l'utilisateur n'a pas fait +explicitement mention du voeu contraire. Ces choix ont été faits par +l'administrateur (dans le cas de la config conscrits, par des gourous). +
«Par défaut, le logiciel de courrier de la config conscrits est
+pine
» (c'est lui qui est lancé quand on clique sur
+«Courrier»). «Par défaut, la config conscrits lance une seule grande
+fenêtre». «Par défaut, la fiche annuaire figure aussi dans l'annuaire
+électronique».
Première +définition, pour expliquer à quoi ça sert : un port est une +sous-adresse, comme une boîte aux lettres dans un immeuble.
+Seconde définition, technique : un port est un numéro qui définit, à +l'intérieur d'une machine donnée, un point sur lequel un programme peut +attendre des connexions de l'extérieur ou depuis lequel il peut en +établir. La donnée du numéro IP de la machine et du port TCP constitue +l'analogue d'un numéro de téléphone vers lequel ou depuis lequel on peut +établir des connexions.
Contraire de libre... Le +logiciel et son code source appartiennent à une société. On parle aussi +de «matériel propriétaire» : les ordinateurs TotoTM n'acceptent que du +matériel TotoTM (barrettes de mémoire, cartes, etc).
Dialecte commun à des machines +pour permettre leur communication.
Programme servant à automatiser +des tâches répétitives, généralement simple. Principales +caractéristiques: le langage utilisé interprète directement le script, de +manière transparente, sans avoir besoin de passer par un traducteur +externe; les constructions utilisées sont généralement de haut niveau par +rapport à un langage de programmation traditionnel, et collent plus avec +la notion de «faire telle tâche, puis telle autre».
Le shell est
+le programme qui interprète les commandes tapées au clavier. Selon le
+cas, il peut exécuter le programme demandé (pine
,
+ls
, date
...), demander confirmation (avant
+d'effacer un fichier par exemple), corriger la syntaxe
+(netscape
et pas nestcape
), afficher un message
+d'erreur comme «command not found
», etc. On peut aussi
+écrire des programmes (appelés scripts), dans le langage du shell, pour
+créer de nouvelles commandes, automatiser des tâches, ou autres.
Un shell est lancé dans chacun des terminaux que vous ouvrez. Pour
+quitter le shell, il suffit de taper ^D
, ce qui aboutit en
+pratique à fermer la fenêtre, car plus aucun programme ne tourne dedans.
+
C'est le logiciel qui fait tourner l'ordinateur «en dessous» des +applications dont se sert l'utilisateur (comme les logiciels de courrier, +les traitements de texte), et en dessous de l'interface graphique. On dit +aussi «OS» (operating system).
Le système +d'exploitation d'Apple pour Macs s'appelle MacOS, celui d'IBM pour PC +s'appelle OS/2. Le système d'exploitation de Microsoft pour PC est +DOS/Windows; à l'origine il n'y avait que le DOS, qui fut complété par +Windows, interface graphique désormais complètement intégrée au système +d'exploitation.
Un autre type de système d'exploitation est le +système Unix. Unix est en fait une famille qui comprend entre autres +Solaris (Unix de la société Sun), AIX (Unix de la société +Hewlett-Packard), Linux (Unix libre, disponible +gratuitement, et aussi commercialisé par des sociétés comme RedHat, SuSE, +Caldera, Debian...), FreeBSD, OpenBSD et NetBSD (d'autres Unix libres), +Hurd (Unix libre du projet GNU).
Zone du disque dur où le système +stocke automatiquement la mémoire peu utilisée, afin de garder la vraie +mémoire, rapide, pour ce qui sert vraiment. Par exemple, un terminal +auquel on n'a pas touché depuis longtemps est souvent vidé de la mémoire, +et met quelques secondes à revenir quand on veut s'en servir.
Un programme lancé +dans un terminal peut être en mode texte, auquel cas il s'affiche dans la +fenêtre où il a été lancé. Pour sa mise en page, il utilise le jeu de +caractères disponibles, c'est-à-dire les caractères alphanumériques et +les ponctuations. Il peut être en couleurs ou en noir et blanc. Certains +logiciels en mode texte peuvent s'utiliser avec la souris, possèdent des +menus déroulants, etc. Ils s'utilisent cependant le plus souvent avec le +clavier. Pine est un logiciel de courrier en mode texte.
Par +opposition, un logiciel en mode graphique se lance dans une nouvelle +fenêtre, s'utilise avec la souris, et propose divers moyens graphiques +(fontes, couleurs, icônes) pour son utilisation, comme Netscape. +
Uniform Resource Locator.
+C'est ce que les médias appellent une «adresse Web», C'est un bout de
+texte, possible à taper au clavier, qui indique comment accéder à un
+document ou une autre donnée. Les plus courantes sont en
+«http://
», ce qui indique le protocole (pour ce mot, voir le
+numéro 9 du Hublot) à utiliser, et précisent un ordinateur à
+contacter et le fichier à lui demander.
Un visualisateur d'images est un
+logiciel capable d'afficher des images. Sur les stations Sun, nous
+utilisons xv
. Un visualisateur d'images inclut le plus
+souvent des fonctions de retouche (agrandir, convertir en un autre
+format, etc.).
ls
+ cd
+ chmod
+ ps
, top
et
+priorités
+ rm
+ ispell
et gospell
+ file
+ qui
+ less
+ screen
+ slogin
+ Le spam, c'est le courrier électronique non sollicité, généralement +commercial (Unsolicited Commercial E-mail ou +UCE en anglais). Le nom vient de SPAM, une charcuterie (Spicy Pork And Ham) anglo-saxonne, plus précisément d'un +sketch +des Monty Python (tiré du Flying Circus) où les +gens répètent sans cesse « SPAM SPAM SPAM » à des clients d'une +auberge demandant s'il n'y pas de plat sans SPAM. +
+ +Il existe plusieurs types de spam :
+ +Il existe encore bien d'autres types de spam, +généralement vous pouvez les reconnaître assez vite. Le spam touche +également les newsgroups, mais c'est essentiellement du spam par +courrier que nous parlerons ici.
+ ++Le spam est nuisible car l'essentiel de son coût est supporté par la +communauté, c'est-à-dire les serveurs de mail et routeurs, les +fournisseurs d'accès ainsi que vous. En outre, le spam est +une sérieuse perte de productivité : il inonde vos boîtes aux +lettres et vous oblige à passer du temps à le trier du vrai courrier, +et à le jeter. Ensuite, le spam engorge les réseaux mondiaux. Pour 100 +vrais courriers qui transitent dans les tuyaux, combien de centaines +de spams ? +
+ ++Enfin, la plupart du temps le spam est illégal +puisqu'il exploite des base de données obtenues frauduleusement (scan +de pages Web ou de newsgroups, ventes illégales de fichiers, +etc.). Rappelons qu'au terme de l'art.226-18 du Code +pénal : +
+ +++ ++Le fait de collecter des données par un moyen frauduleux, déloyal ou +illicite, ou de procéder à un traitement d'informations nominatives +concernant une personne physique malgré l'opposition de cette +personne, lorsque cette opposition est fondée sur des raisons +légitimes, est puni de cinq ans d'emprisonnement et de 300000 euros +d'amende. +
+ ++En cas de traitement automatisé de données nominatives ayant pour fin +la recherche dans le domaine de la santé, est puni des mêmes peines le +fait de procéder à un traitement : +
+ ++ +
+- Sans avoir préalablement informé individuellement les personnes +sur le compte desquelles des données nominatives sont recueillies ou +transmises de leur droit d'accès, de rectification et d'opposition, de +la nature des informations transmises et des destinataires des +données ;
+ +- Malgré l'opposition de la personne concernée ou, lorsqu'il est +prévu par la loi, en l'absence du consentement éclairé et exprès de la +personne, ou, s'il s'agit d'une personne décédée, malgré le refus +exprimé par celle-ci de son vivant.
+ +
+Quand vous croisez un inconnu, dans la rue, lui donnez-vous votre +adresse et votre numéro de téléphone ? Non ? Eh bien sur l'Internet, +c'est pareil. Sans tomber dans la paranoïa (le but premier de +l'Internet est de communiquer et d'échanger avec autrui), ne divulguez +pas des renseignements plutôt confidentiels au premier venu.
+ ++Vous vous êtes certainement déjà inscrit à un site ou un service +gratuit ou non, qui vous demandait vos coordonnées, dont votre adresse +e-mail. Avez-vous regardé sérieusement les petits caractères ou la +case à décocher qui disait que votre adresse serait revendue à +kinenveut ? Ça explique certainement une partie de votre spam. +
+ +Méfiez-vous particulièrement du système vicieux de +l'Opt-Out, pratiqué dans les formulaires +d'inscription à un service. On vous demande si vous voulez vous +abonner à une newsletter, ou si vous souhaitez « recevoir des offres +exclusives » de la part des partenaires du site. Dans un système dit +d'Opt-In, c'est vous devez cocher la case +pour accepter. L'Opt-Out, c'est quand la case est +déjà cochée. Par défaut, vous serez spammés si vous +ne pensez pas à décocher la case. +
+ ++Outre son caractère retors, le système de l'Opt-Out est également +illégal au sein de l'Union européenne depuis la directive 2002/58/CE +du 12 juillet 2002 (lire +la directive, format PDF). +
+ +Vous avez fait votre page Web, vous êtes tout content et vous +affichez votre adresse e-mail partout pour que les gens vous disent à +quel point elle est bien. Aïe. Vous allez ainsi tendre la batte de +cricket pour vous faire spammer : la méthode de base des spammeurs +pour récupérer des adresses est d'envoyer des robots scanner le Web à +la recherche d'innocentes adresses sans défense comme la vôtre.
+ +Solution : encoder son adresse de telle sorte que des humains puissent la lire, +mais pas un robot, en utilisant du CSS. Par exemple : +
+ ++ Mon adresse : jean.paul.sartre<span style="display:none;">NOSPAM</span>@ens.fr ++ +
Dans un navigateur moderne avec support du CSS, le "NOSPAM" ne sera pas visible. En revanche, un robot collecteur d'adresses le verra et ne comprendra pas qu'il s'agit d'une adresse email. Un humain utilisant un navigateur en mode texte le verra aussi... mais on compte sur son intelligence pour comprendre qu'il s'agit de quelque chose à supprimer.
+ +Vous pouvez aussi opter pour la solution suivante :
+ ++Mon adresse : jean-paul POINT sartre AT ens POINT fr ++ +
Le lecteur devra lui-même taper votre adresse en +faisant la traduction (AT->@, etc.) dans son logiciel de +courrier.
+ +Même problème sur Usenet que pour votre page Web : des robots +parcourent Usenet à la recherche d'adresses non protégées. Les +spammeurs sont très rapides : la rédactrice de cette doc a un +record à 4 jours entre un message sur Usenet-fr avec une nouvelle +adresse et le premier spam.
+ +Vous pouvez obtenir une adresse qui vous servira uniquement pour +les news. Première solution : une adresse poubelle (chez un +hébergeur gratuit, par exemple), que vous regardez de temps à autres +pour vérifier si par miracle il n'y a pas un vrai courrier dans le tas +d'ordures. +
+ +Autre solution : demander une adresse chez Alussinan. C'est un service +gratuit géré bénévolement par Florent Faessel, un habitué de Usenet, +où le courrier entrant est filtré drastiquement (des domaines comme +AOL, Noos ou encore Orange sont filtrés à cause de leur manque de +réactivité dans la bataille anti-spam). Demandez-lui gentiment une +adresse. +
+ +Admettons que vous ne vouliez pas prendre une adresse genre
+pikachu125756@hotmail.com
, mais recevoir les vrais
+courriers de gens qui vous répondent sur votre adresse ENS. Vous
+pouvez quand même vous protéger, mais c'est un poil plus compliqué.
+
Modifiez votre champ From (celui qui donne votre nom et votre
+adresse e-mail) dans votre lecteur de news. La manière de procéder
+dépend évidemment de votre lecteur de news. Avec flrn, ajoutez
+simplement une ligne dans votre .flrnrc
:
+
+name flrn my_hdr From: Luke Skywalker <adresse@anti.spam> ++ +
Où évidemment, vous remplacez « Luke Skywalker »
+par ce que vous voulez (prénom + nom, ou pseudo). Pour l'adresse
+anti-spam, ajoutez ce que vous voulez à votre véritable adresse. Il
+faut bien qu'on voie que l'adresse n'est pas valide, pour ne pas
+égarer les honnêtes gens qui voudraient vous répondre. Par exemple,
+Luke pourra indiquer comme adresse anti-spam :
+SPAM.IS@DARK.SIDE.invalid
.
Pourquoi le .invalid
? C'est une
+convention pour dire précisément qu'une adresse est invalide. De cette
+façon, les logiciels de mail préviennent immédiatement l'étourdi que
+l'adresse en question n'est pas valide.
+
« Oui mais je veux que les gens normaux puissent +me répondre ! » C'est l'étape 2.
+ +On utilise un champ appelé Reply-To
qui sert à ça :
+les gens qui répondront verront leur mail envoyé à l'adresse du
+Reply-To
et pas celle du From
. La commande
+XOVER,
utilisée généralement par les spammeurs pour
+récupérer des adresses, ne renvoie pas le Reply-To
, qui
+est donc protégé. En contrepartie, il faut que l'adresse du
+Reply-To
soit valide. Avec flrn, on fait ainsi (toujours
+en éditant le .flrnrc
) :
+
+name flrn my_hdr Reply-to: lskywalk@clipper.ens.fr ++ +
Avec cette méthode, vous n'échapperez pas à 100% du spam,
+malheureusement... Il semblerait qu'une poignée de robots se mettent à
+récupérer les adresses des Reply-To
(par un XHDR
+Reply-To
). Vous pouvez combiner la solution « adresse
+spéciale » et celle-ci, pour plus de sécurité.
+
C'est trop tard, vous êtes inondé par le spam. Que cela ne vous +empêche pas de vous protéger par les moyens décrits ci-dessus, ça ne +mange pas de pain et ça vous épargnera du spam supplémentaire à +l'avenir. +
+ ++Parfois vous recevez du spam qui prétend que vous êtes inscrit sur une +mailing-list, et qui vous propose gentiment de vous désinscrire si +vous ne souhaitez plus être spammé. Ne répondez surtout +pas ! Ce sont en fait des leurres. Quand le spammeur reçoit +votre demande de désinscription, il sait que votre adresse est valide, +et vous serez spammé de plus belle.
+ +Pour endiguer le flot du spam, vous n'avez que deux solutions +complémentaires, deux types de filtres utilisables à l'ENS, Procmail +et SpamAssassin. Combinés et bien configurés, ces deux filtres vous +sauveront de l'inondation. +
+ +Procmail est un outil qui permet de filtrer son mail selon certains +critères que vous spécifiez vous-même. Il peut être utilisé dans le +cadre de la lutte anti-spam. Pour savoir comment utiliser Procmail, +lisez notre documentation à ce +sujet. Attention toutefois à ce que vous faites : plus vous +filtrez, moins vous aurez de spam, mais plus vous aurez des chances de +jeter de vrais mails.
+ +SpamAssassin est un +filtre anti-spam installé au niveau global à l'ENS. Tous les mails qui +vous arrivent sont filtrés par SpamAssassin qui se fonde sur des +techniques dont on sait qu'elles sont utilisées par les +spammeurs. SpamAssassin ajoute aux en-têtes de vos mails ses propres +en-têtes comme : +
+ ++X-Spam-Status: Yes, hits=11.0 .... +X-Spam-Level: *********** +X-Spam-Checker-Version: SpamAssassin... ++ +
Les « hits » sont des « points spam » que SpamAssassin attribue à +chaque mail. Par exemple, quand le mail a un sujet entièrement en +majuscules, SpamAssassin attribue n points, n autres quand le mail est +uniquement en HTML, etc. +
+ ++L'idée est d'utiliser ces en-têtes comme critère de filtre dans +Procmail. Lisez donc notre Doc Procmail +pour connaître son fonctionnement en général.
+ + + ++L'intérêt du dossier « spam » (appelé couramment « spambox », boîte à +spam), c'est que vous pouvez ne le lire que toutes les semaines, par +exemple, pour vérifier s'il n'y a pas du vrai courrier caché dedans +(votre directeur de thèse qui vous écrit en HTML seulement depuis un +PC en Corée). La boîte à spam vous évite d'être dérangé toutes les +deux minutes par du spam quand vous êtes logué. +
+ +Vous pouvez affiner votre filtrage en utilisant l'en-tête
+X-Spam-Level
pour dire, par exemple, qu'au-delà de 15
+points spam, les courriers concernés partent à la poubelle (attention
+à ce que vous faites en renvoyant du courrier vers
+/dev/null
, vous pouvez perdre tout votre
+courrier).
+
+Bien évidemment, on place toujours la règle la plus stricte +avant l'autre. Ici, vous envoyez d'abord les +courriers à plus de 15 points dans le vide interstellaire, +puis vous mettez les courriers à plus de 5 points dans le +dossier « spam ». +
+ ++# Tous les mails avec un score ≥ 15 passent à la poubelle +:0: +* ^X-Spam-Level: \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* +/dev/null ++ +
+Pour plus de renseignements, reportez-vous à notre documentation sur procmail
.
+
Animé d'une juste colère, vous souhaitez ne plus subir passivement +le spam mais en découdre avec les vilains. Vous pouvez, dans une +faible mesure. Le spam est réprimé par la plupart des fournisseurs +d'accès à l'Internet (alias « FAI » comme Free, Wanadoo, etc.). Chaque +FAI a un service appelé « abuse » (oui, c'est de l'anglais) qui est +chargé de veiller au respect de la Nétiquette par les abonnés. Une +solution consiste donc à trouver le FAI qu'utilise le méchant spammeur +et à vous plaindre auprès du FAI, pour que celui-ci lui coupe sa +connexion. Ne vous leurrez pas, ce n'est souvent que les petits +poissons qu'on attrape comme ça...
+ +Pour identifier le FAI du spammeur, il faut lire les en-têtes du
+message de news, ou du courrier. Les en-têtes sont des
+méta-informations qui ne concernent pas le contenu du courrier ou de
+l'article de news, mais sa forme. Par exemple, l'encodage du message,
+le logiciel de mail ou de news utilisé, etc. Dans flrn, tapez
+V
pour voir les en-têtes. L'en-tête
+X-Complaints-To
vous indiquera, comme son nom l'indique,
+auprès de qui déverser votre courroux. Pour le courrier, tapez
+h
dans pine ou mutt pour avoir les en-têtes. Décrypter
+les en-têtes d'un mail est relativement difficile et dépasse le cadre
+de cette documentation. Le mieux à faire est de demander sur forum (dans le groupe
+informatique.mail
) comment on fait.
+
Une fois que vous savez à qui vous plaindre, envoyez un mail en +expliquant bien le contexte : date, heure, groupe s'il s'agit de +Usenet, etc. Joignez dans le corps du message (souvent les services +abuse n'acceptent pas les attachements) une copie des en-têtes du +spam. Ensuite, eh bien... Disons que certains services abuse sont +efficaces et rapides, et que d'autres envoient directement vos +courriers à la poubelle. +
+ +Chercher à vous venger plus avant (inonder le spammeur de mails par +exemple) est inutile, dangereux et illégal. De plus, vous pouvez vous +tromper et pourrir la vie de quelqu'un qui n'y est pour rien : +les spammeurs falsifient très souvent l'adresse de retour.
+ ++De nombreuses documentations, FAQ et tutoriaux concernant la lutte +contre le spam sont disponibles sur Internet. En particulier, beaucoup +de FAQs sont liées à Usenet. Parmi celles-ci, vous gagnerez à lire : +
+ ++Voici un résumé en quelque points de l'essentiel de ce qu'il faut savoir pour +envoyer des annonces collectives aux élèves. Nous recommandons évidemment la +lecture complète de cette page si vous en avez le temps. +
+ +tous@clipper
tous@clipper.ens.fr
,
+ servant à faire passer toutes les annonces
+ concernant la vie à l'école (clubs, conférences et séminaires, etc.).
+ Des listes plus spécifiques lettres@clipper.ens.fr
et
+ sciences@clipper.ens.fr
sont également disponibles.tous@clipper.ens.fr
,
+ même si elles n'ont pas vocation à être transmises directement à tous.moderators@clipper.ens.fr
. Nous vous demandons de ne pas envoyer
+ vos annonces à cette adresse !
+On appelle ici « courrier collectif » tout courrier envoyé à un alias
+tel que eleves@clipper
ou encore litt15@clipper
. À
+l'ENS, le courrier collectif est modéré, c'est-à-dire qu'il n'est
+transmis qu'une fois approuvé par une équipe de modération. La modération est
+assurée par Jacques Beigbeder (plus connu sous le nom de « Beig »), responsable
+du SPI, et par une équipe de modérateurs élèves.
+Lorsque vous envoyez un courriel à un alias, il est d'abord transmis aux
+modérateurs qui décident s'il est pertinent ou non de le transmettre. S'il
+n'est pas transmis, vous serez normalement averti par un courriel de refus. En
+cas de question ou de problème, vous pouvez contacter la modération en écrivant
+à moderators@clipper
.
+
+La modération se justifie par des raisons techniques : À l'ENS, le
+courrier de tous les utilisateurs d'un compte clipper est stocké sur un disque
+commun. Pour les comptes anciens, il s'agit de boîtes au format mbox stockées dans la partition
+/var/mail
. Pour les comptes depuis 2014, il s'agit de boîtes au
+format Maildir stockées dans
+/d
.
Si un disque collectif est plein, plus personne ne peut ni envoyer, ni + recevoir de message. Un des buts de la modération est d'empêcher les disques de + se remplir trop rapidement.
+ +Au passage, on vous rappelle la commande df
qui
+vous permet de voir l'état d'un disque. Ainsi, pour vérifier où en est
+/var/mail
:
sas ~ $ df /var/mail
+Filesystem kbytes used avail capacity Mounted on
+/dev/dsk/c0t0d0s6 3595709 3291260 268492 93% /var/mail
+
+sas ~ $ df /d
+Filesystem 1K-blocks Used Available Use% Mounted on
+kvm11.spi.ens.fr:/a 2113787904K 642279424K 1364133888K 33% /d
+
+
+
+Ceci vous indique qu'il ne reste que 7% d'espace libre sur le disque
+collectif... Or le courrier collectif coûte cher en
+ressources. Imaginons un courrier de 10Ko envoyé à
+eleves@clipper
. Cet alias regroupe plus de 1500
+personnes. À l'arrivée, on a un courrier qui pèse plus de 15Mo
+sur le disque réservé au courrier. La modération permet en outre de
+bloquer le spam adressé aux alias collectifs de l'École, ce qui gagne
+de la place disque et vous évite d'être (trop) inondé.
+
+La modération, outre son importance technique, permet également d'éviter +de submerger les gens de messages mal ciblés, sans intérêt, ou +simplement trop nombreux. +
+ +Prenons un exemple : vous souhaitez envoyer un courrier à +votre promotion littéraire. Il suffit d'adresser votre courrier +directement à l'adresse concernée. Votre courrier arrivera chez les +modérateurs qui devront statuer sur son compte. Trois +possibilités :
+ +Les modérateurs peuvent également vous demander des précisions,
+vous signaler une erreur (vous avez écrit à litt@clipper
alors que
+ça ne concerne que les littéraires 2002, cf. infra les alias
+ disponibles), etc. Attention, les modérateurs ne peuvent pas
+modifier ou corriger vos messages. Si nous vous demandons d'effectuer des
+changements ou de transmettre à un autre alias, il faut envoyer un nouveau
+courriel.
+La modération ne doit pas être une censure. Elle se fait dans l'objectif +d'économiser de la place disque et d'éviter d'inonder les utilisateurs +de trop nombreux mails. De manière générale, quand un modérateur a un +doute sur le sort du message, il se concerte avec les autres modérateurs +et ils procèdent à un vote. Il n'existe pas de règles strictes pour la +modération, la prise de décision dépend plutôt de chaque cas. Néanmoins, +quelques grands critères peuvent être dégagés : +
+ ++Chaque courrier doit être adressé le plus précisément possible (cf. +ci-dessous la partie sur les alias). Si un message +ne concerne que les physiciens, il doit être adressé aux physiciens +uniquement et non à eleves@clipper. De la même manière, les messages +personnels (type petites annonces) sont prohibés sur les listes +collectives. +
+ ++Le courrier doit être le plus léger possible. Les pièces jointes sont +interdites. Si vous avez absolument besoin de transmettre un fichier, +reportez-vous à [1]. +
+ +
+Votre courrier doit être lisible par tous. Si vous
+utilisez un logiciel de mail graphique (Outlook Express, Eudora...),
+vérifiez votre configuration pour que vos envois soient en texte brut
+(pas de copie en HTML, inutile donc nuisible) sans encodage exotique
+(pas de quoted-printable
en particulier). Si vous avez
+besoin d'aide à ce sujet, reportez-vous au guide
+sur le format des messages sous Outlook Express des WinTuteurs.
+
+Le courrier collectif est normalement réservé à l'administration, au corps +enseignant et aux élèves, dans le cadre d'activités concernant directement l'école : +
++Les différents groupes et associations de l'école peuvent occasionnellement +envoyer des mails sur les listes collectives, à conditions que ceux-ci +concernent plus que leurs membres propres et qu'ils aient un intérêt +informatif. +
+ ++Ainsi, on autorise aux groupes et associations de l'école un courrier collectif +par an, pour se présenter. +
+ ++Les différents élus de l'école ont le droit d'envoyer des mails en rapport avec +leurs statuts d'élus. +
+ ++Ajoutons que le courrier collectif n'a pas vocation à être un lieu de débat. +Par conséquent tout message purement polémique (ne rentrant pas dans le cadre +des communications autorisées - c'est à dire informatif et en rapport direct +avec l'école) est refusé. Encore une fois, il ne s'agit pas de censurer mais +d'éviter des flots de réponses (baptisés « droit de réponse » par leurs +auteurs) sur un alias collectif. Si vous voulez discuter politique ou autre, +faites-le en privé. +
+ ++Dans tous les cas, chacun doit faire preuve de la plus grande correction à +l'égard de ses interlocuteurs dans tous les échanges électroniques. D'autres +médias sont à votre disposition (BOcal) si votre message ne remplit pas +ces critères. +
+ +Ces alias sont modérés par les modérateurs élèves.
+ +tous@clipper
guests@clipper
Très basiques : c'est phy@clipper
pour toucher
+tous les physiciens, ou encore 15@clipper
pour toucher la
+promotion 2015.
Pour les disciplines, existent : maths
,
+phy
, bio
, litt
,
+informatique
(à la place de l'obsolète
+info@clipper
, qui attirait plus de spam que de vrai
+courrier), geologie
.
Un cas un peu particulier est sciences@clipper
qui
+touche tous les scientifiques et litt@clipper
qui
+touche tous les littéraires.
La plus grande partie d'entre eux consiste à spécifier une promo à
+un alias de spécialité. Exemple : vous voulez toucher les matheux
+2015, vous utilisez maths15
. Pour les physiciens 2014, ce
+sera phy14
. Il est à noter que les alias
+bioXX@clipper
et bio@clipper
renvoient
+directement vers l'équivalent vers horus
, le serveur du
+magistère de biologie. Ces alias sur horus
sont gérés par
+Pierre Vincens.
+La modération de ces alias est d'abord effectuée par une équipe qui ne
+comprend pas les modérateurs élèves, et, si le message est accepté, passe
+par l'équipe des modérateurs élèves pour décider de transmettre ou non le
+message sur tous@clipper
.
+
tous@ens
eleves@ens
eapd@ens
La liste complète des alias fins se trouve dans la documentation +du SPI (disponible uniquement à partir de l'ENS).
+ +
+Vous pouvez savoir dans quels alias vous vous trouvez avec la commande
+moncompte
(à exécuter dans un terminal depuis un poste en salle informatique). Vous pouvez consulter la liste des alias de clipper et
+les personnes qu'ils touchent en regradant dans le répertoire
+/usr/local/lib/mail/aliases/
.
+
La modération ne gère pas :
+ +@ens.fr
crées par le SPI (le plus souvent
+ pour des clubs) et gérées par le système SYMPA. Deux systèmes SYMPA
+ coexistent à l'ENS : l'ancien (sympa@ens.fr
) voué à
+ disparaître, et le nouveau https://lists.ens.fr/wws. Elles sont
+ parfois modérées par le responsable de la liste (et non par les modérateurs
+ élèves).@quatramaran.salle-s.org
sont utilisés par certains
+ clubs et sont gérées par le quatramaran, une machine
+ appartenant à d'anciens élèves. Elles sont parfois modérées par le
+ responsable de la liste (mais jamais par les modérateurs élèves).tuteurs
correspondent en
+ réalité à de véritables comptes clipper. Les messages leur sont donc
+ transmis directement, sans modération.+Commencez par mettre en place une liste de diffusion (à demander + au SPI). Ensuite, il vous + choisir sur quelle liste envoyer ce message : sciences@ s'il s'agit + d'un message à destination des scientifiques, lettres@ si c'est pour + les littéraires, 14@ pour toucher la promotion entrée en 2014, + etc. Il est important de bien choisir votre public afin de limiter + le nombre de message. + +Dans votre courriel de présentation, n'oubliez pas de fournir +l'adresse de votre liste de diffusion pour ceux qui désirent en savoir +plus.
+ ++Vous pouvez aussi, bien entendu, faire passer vos annonces sur la page /tous/. +
+ ++Si vous trouvez que vous recevez trop de messages de certains expéditeurs, vous +pouvez contacter la modération. Cependant, en cas de désaccord persistant, il +vous faudra peut-être vous adresser à l'expéditeur du message. Vous pouvez aussi +filtrer les messages de cet expéditeur à l'aide de procmail. +
+ +Rappelons que vous avez signé une charte concernant l'utilisation +des moyens informatiques de l'École, donc vos droits sont déjà +restreints. Ensuite, les modérateurs font ce travail sur demande du +SPI qui n'a pas le temps de s'en occuper. Enfin, la modération se fait +sur des critères techniques et pas à la tête du client.
+ ++L'utilisation du courrier collectif pour des messages urgents n'est pas +recommandé. D'une part, les élèves ne consultent pas forcément leur mail avec +une régularité suffisante pour être informés à temps. D'autre part, la +modération étant assurée par des élèves bénévoles sans garantie de +disponibilité, votre message ne sera pas transmis avant qu'un modérateur ait le +temps d'en prendre connaissance. +
+ ++Il arrive que certains courriels échappent à l'attention des modérateurs. Si +vous n'avez pas vu passer votre courriel, que vous n'avez pas reçu de message de +refus, et que votre envoi date d'il y a plusieurs jours, vous pouvez contacter +les modérateurs pour leur demander ce qui se passe. +
+ +
+S'il a déjà été transmis, c'est bien évidemment trop tard. Sinon, contactez
+immédiatement moderators@clipper
en indiquant le message concerné
+pour que nous ne le transmettions pas. Si vous souhaitez envoyer une nouvelle
+version du message en remplacement, envoyez-la à l'alias, pas aux
+modérateurs.
+[1] +Évitez les formats difficilement lisibles à l'École, tels que Word ou +Excel, qui de plus sont très volumineux : préférez le texte brut, le +HTML ou au pire le PDF). Pour communiquer à vos correspondants +l'emplacement d'un fichier, utilisez l'une des deux solutions +suivantes : +
+ +~monlogin/seminaire.pdf
».www/
et
+indiquer ensuite l'URL. Exemple : « pour le programme du
+séminaire, cf.
+http://www.eleves.ens.fr/home/monlogin/seminaire.pdf »Reportez-vous à cette page pour plus d'informations sur les pages élèves.
+ + + + + + diff --git a/src/internet/courrier/compose-pine.png b/src/internet/courrier/compose-pine.png new file mode 100644 index 0000000..66adbb4 Binary files /dev/null and b/src/internet/courrier/compose-pine.png differ diff --git a/src/internet/courrier/courrier-pine.png b/src/internet/courrier/courrier-pine.png new file mode 100644 index 0000000..758e1eb Binary files /dev/null and b/src/internet/courrier/courrier-pine.png differ diff --git a/src/internet/courrier/generalites.tml b/src/internet/courrier/generalites.tml new file mode 100644 index 0000000..93e958d --- /dev/null +++ b/src/internet/courrier/generalites.tml @@ -0,0 +1,516 @@ + + + + +Le fonctionnement du courrier élctronique, ou « courriel » +(en anglais e-mail, pour electronic mail) présente de +nombreuses similitudes avec le courrier papier : il y a des +adresses, des enveloppes, des messages, des classeurs pour ranger le +courrier que vous recevez, une signature...
+ +Malheureusement, comme dans vos boîtes aux lettres, il y a aussi de +la publicité (le fameux « spam »). Pour savoir comment vous +protéger du spam, et comment essayer d'endiguer le flot si vous êtes +déjà atteint, reportez-vous à +notre documentation contre le spam.
+ + Une adresse électronique est toujours de la forme
+utilisateur@machine
. Par exemple :
+Raymond.Aron@gmail.com +Jean-Paul.Sartre@ens.fr +Pierre.Caron-de-Beaumarchais@hotmail.fr +kikoo-lol324@hotmail.com ++ + +
Le caractère @
s'appelle
+un arobase (ou « a » commercial) et se lit
+« at ». Donc, l'adresse president@whitehouse.gov
se lit
+« president at whitehouse point gov » ; on
+prononce « point » comme en français.
L'arobase sépare la partie désignant un humain (à gauche de
+l'arobase) de la partie désignant un ordinateur (à droite de
+l'arobase) :
Dans nos exemples, les noms d'utilisateurs sont +donc « Raymond.Aron », « Jean-Paul.Sartre », +« Pierre.Caron-de-Beaumarchais » et +« kikoo-lol324 ». La partie droite de l'adresse, après +l'arobase, désigne le serveur de messagerie, +c'est-à-dire la machine sur laquelle on est inscrit. Dans nos exemples, +ce sont « ens.fr », « gmail.com », +« hotmail.fr » et « hotmail.com ».
+ + ++&icone.attention; Attention : Comme on peut le +voir, les noms d'utilisateurs ne sont pas nécessairement des +noms d'état-civil : ce peuvent être de simples +pseudonymes. Par conséquent, rien n'empêcherait un pirate de prendre +pour nom d'utilisateur votre propre nom, et de se faire ainsi passer +pour vous. Et inversement : si vous recevez un message signé +Jacques Chirac, il se peut tout à fait que ce ne soit pas l'homme +politique qui vous écrive, mais quelqu'un qui se fait passer pour +lui.
+À l'ENS, vous recevez un identifiant, qui est
+généralement composé à partir de votre nom de famille. Par exemple, pour
+Jean-Paul Sartre, ce sera sartre
. Cet identifiant sert
+également de nom d'utilisateur pour le courrier électronique ;
+Jean-Paul Sartre pourra donc recevoir des messages envoyés à
+l'adresse
sartre@ens.fr+ + +
+Mais il existe également des alias, c'est-à-dire des +redirections automatiques de courriel, qui utilisent vos prénom et nom, +sous la forme +Prenom.Nom@ens.fr (avec ou sans majuscule, peu importe). Ce qui +nous donnera par exemple : +
+ ++Jean-Paul.Sartre@ens.fr ++ +
+&icone.attention; Attention : La
+forme sartre@ens.fr
est potentiellement ambiguë si vous
+avez un homonyme dans l'ENS (par exemple s'il existe un Pierre
+Sartre). Il est donc préférable d'utiliser la forme
+développée Prenom.Nom@ens.fr
. C'est cette dernière
+adresse qu'il vaut mieux communiquer à vos correspondants, car elle est
+indépendante de votre nom de login et de tout nom de machine. Ainsi, si
+dans quelques années vous devenez chercheur à l'ENS et perdez votre
+compte sur clipper pour en retrouver un autre, sur un autre réseau, avec
+un autre nom de login, votre adresse restera valide ; et vous êtes
+également à l'abri de changements dans les noms des machines.
Remarques typographiques :
+ +Un expéditeur normalien, envoyant son courrier en interne à l'École, +pourra se contenter d'écrire :
+ ++Jean-Paul.Sartre +sartre +sartre@clipper ++ + + +
Les entêtes sont une série de lignes qui contiennent tous les +renseignements nécessaires au bon acheminement du courrier : auteur, +date, machine qui envoie, etc. Certains de ces renseignements sont +donnés par l'auteur du courrier, comme le destinataire ou le sujet. Pour +chaque courrier envoyé, il y a ainsi plusieurs +champs à remplir. Les plus courants sont :
+ + To |
+le destinataire. Vous pouvez en mettre plusieurs, +séparés par des virgules. | +
Subject |
+le sujet du courrier. Il faut obligatoirement en +mettre un, ne serait-ce que pour donner à votre correspondant une idée +de ce que vous allez lui dire. | +
Cc |
+la copie carbone. C'est là que l'on met les +adresses des personnes auxquelles on veut envoyer une copie +conforme de votre courrier mais qui n'en sont pas destinataires +principaux. On peut également indiquer plusieurs personnes, en séparant +les noms par des virgules. | +
Attachments |
+Ce sont les pièces jointes, fichiers que vous +joignez éventuellement à votre courrier (image, rapport, etc.), et qui +seront envoyés sous forme codée avec le courrier électronique. | +
+Il y en a d'autres, plus techniques, qui servent en d'autres +circonstances : +
+ + Bcc |
+blind carbon copy : copie conforme +aveugle. C'est ce champ que l'on remplit si l'on veut envoyer +des copies du courrier à plusieurs personnes sans qu'elles sachent à qui +d'autre des copies ont été envoyées. Ce champ peut être très utile si +vous voulez envoyer un message à des personnes qui ne se connaissent pas +entre elles : ce n'est pas à vous de divulguer les adresses +électroniques de vos contacts à des gens qu'ils ne connaissent +pas. Ainsi, vous pouvez envoyer un message à Bip-Bip et au Coyote sans +que le Coyote apprenne l'adresse de Bip-Bip. | +
Reply-To |
+adresse de réponse. C'est l'adresse à laquelle +vous voulez que l'on vous réponde, si elle est différente de celle d'où +vous écrivez. Cela ne sert pas dans l'usage courant. | +
Fcc |
+dossier de rangement. Ce champ indique dans quel +dossier (folder) une copie du courrier envoyée est +automatiquement copiée. | +
PGP |
+Pretty Good Privacy : indique si votre message est +chiffré ou signé cryptographiquement. | +
+La partie située à droite de l'arobase représente soit un nom de
+machine, comme clipper.ens.fr
, soit un nom de
+domaine comme ens.fr
. Il y a un moyen de distinguer
+les uns des autres, et de savoir à quelle machine sera envoyé le
+courrier en connaissant l'adresse de destination : la
+commande host
. Supposons que vous vouliez savoir qui
+traite le courrier de la machine
+jupiter.ecoledoc.ibp.fr
. Tapez dans une
+fenêtre terminal :
+
+host jupiter.ecoledoc.ibp.fr ++ +
+La réponse pourrait être : +
+ ++jupiter.ecoledoc.ibp.fr has address 132.227.65.9 +jupiter.ecoledoc.ibp.fr mail is handled (pri=20) by pascal.ibp.fr +jupiter.ecoledoc.ibp.fr mail is handled (pri=30) by shiva.jussieu.fr +jupiter.ecoledoc.ibp.fr mail is handled (pri=40) by soleil.uvsq.fr +jupiter.ecoledoc.ibp.fr mail is handled (pri=10) by ibp.ibp.fr ++ +
+Ceci indique d'abord l'adresse numérique (ou IP) de la station
+jupiter.ecoledoc.ibp.fr
de Jussieu, puis les machines traitant le
+courrier électronique qui lui est adressé (la priorité indique l'ordre de
+préférence : soleil.uvsq.fr
sera donc utilisé en dernier
+recours, si toutes les autres sont inaccessibles).
+
+Lorsque cette commande ne renvoie pas d'adresse sur la première ligne du
+compte-rendu, c'est que le paramètre fourni était un nom de domaine (essayez
+avec host ecoledoc.ibp.fr
); la présentation des hôtes traitant le
+courrier de ce domaine est identique.
+
+Les listes de diffusion (en anglais, mailing lists) +sont des automates de distribution de courrier électronique qui permettent de +discuter sur des sujets variés. On envoie un courrier électronique spécial, +contenant un ordre bref et codifié, à l'automate pour qu'il nous inscrive, on +reçoit alors tous les courriers envoyés à la liste et on peut soi-même en +envoyer. +
+ ++Il n'existe pas d'index des listes de diffusion, et on obtient leurs adresses +et leur mode d'emploi en lisant des documentations sur le Web ou bien par +bouche-à-oreille. C'est ce caractère de « bonnes adresses » qui filtre les +inscriptions et garantit aux listes de diffusion un contenu informatif de +grande qualité. Quelques règles pour respecter cette qualité : +
+ ++Dans le temps, rares étaient les élèves qui avaient un ordinateur connecté au réseau dans leur thurne. On allait en salle +informatique pour lire son mail avec +pine ou mutt, des programmes sobres mais efficaces. +
+ +
+Puis, à l'occasion des vacances ou d'un stage loin de l'alma mater, on apprenait à se connecter par ssh
(voir aussi le tutoriel des Wintuteurs sur PuTTY), ce qui permettait de continuer à utiliser pine
ou mutt
confortablement depuis Oxford, Nice ou Tokyo.
+
+Aujourd'hui c'est plus pareil ; ça change, ça change. De plus en plus nombreux sont ceux qui préfèrent l'aspect familier du Webmail, ou, pour les plus dégourdis, un lecteur de courriel sur leur ordinateur personnel. +
+ ++Cette deuxième catégorie sera peut-être intéressée par +le tutoriel des WinTuteurs. +
+ +Insistons sur le fait que le Webmail ne devrait idéalement être utilisé que +comme solution de secours. Ce n'est pas un outil performant (vous vous en +rendrez forcément compte si un jour vous devez faire un gros ménage dans vos +mails pas triés depuis deux ans (situation qu'il vaut mieux éviter de toutes +façons)). Nous vous conseillons donc d'apprendre à vous servir d'un vrai +lecteur de courriel pour votre usage quotidien.
+ + ++Tout d'abord, il ne faut pas utiliser d'accents ni dans l'adresse, ni le +sujet, ni généralement dans l'en-tête du courrier électronique. Ceci +parce que le protocole d'acheminement du courrier électronique y +interdit l'usage d'un jeu de caractères autre que celui de l'anglais, et +que la présence d'un accent provoquera des résultats bizarres sur +certaines machines chargées de transmettre votre courrier : les +« é » deviendront des « i » par exemple, ou bien le +sujet sera coupé à cet endroit, ou bien même votre message vous sera +renvoyé (cas rarissime). +
+ ++Pour ce qui est de l'emploi d'accents dans le corps d'un courrier +électronique, il faut simplement respecter les précautions suivantes : +
+ +pine
réalise la conversion automatiquement au
+moment de la lecture du texte, mais pas au moment de la sauvegarde, ce
+qui fait que vous risquez un jour de vous retrouver nez à nez avec ce
+genre de chose (a fortiori si vous décidez de changer de
+logiciel de courrier électronique).
++C'est très simple. Utilisez l'une des méthodes suivantes : +
+ ++Ce n'est pas très difficile, en fait ; il suffit de ne pas faire +attention à ce que l'on fait : +
+ +Le courrier électronique, ou courriel (en +anglais, e-mail : electronic mail) est le service +Internet le plus ancien. Il a même été, à une époque, le service +Internet le plus utilisé : en 1992, il représentait presque 50% du +trafic mondial en volume. Mais ce score est aujourd'hui écrasé par le +World Wide Web : les utilisateurs actuels d'Internet consultent +plus de sites web qu'ils n'envoient de messages électroniques.
+ + +Si cette page n'a pas répondu à vos questions, vous pouvez consulter + la FAQ des tuteurs sur le + courrier électronique.
+ + + + + + diff --git a/src/internet/courrier/index.tml b/src/internet/courrier/index.tml new file mode 100644 index 0000000..89ef4f8 --- /dev/null +++ b/src/internet/courrier/index.tml @@ -0,0 +1,144 @@ + + + + +Cet article précise juste le fonctionnement du courrier électronique à + l'ENS ; il ne rappelle pas les généralités sur le + courrier électronique. Il s'adresse uniquement aux étudiants à + l'École, c'est-à-dire ceux qui disposent d'un compte sur clipper.
+ +En entrant à l'ENS, vous disposez de deux adresses électroniques :
+ +login@clipper.ens.fr
, où login est votre nom d'utilisateur sur clipperprenom.nom@ens.fr
, sans accents sur vos
+ prénoms et noms, et avec des règles particulières en cas d'homonymie, ou si
+ votre nom comporte des espaces ou des tirets (demandez au SPI en cas de
+ doute).Ces deux adresses désignent la même boîte aux lettres électronique. Autrement + dit, le courrier adressé à n'importe laquelle de ces deux adresses arrive au + même endroit.
+ +Par la suite, si vous restez à l'ENS en thèse ou dans un autre cadre, vous
+ obtiendrez un compte de messagerie sur un autre serveur que clipper (par
+ exemple mail.dma.ens.fr), et vous pourrez conserver l'adresse
+ @ens.fr
(mais pas celle @clipper.ens.fr
) pour la
+ faire pointer vers l'adresse que vous aurez sur l'autre serveur. Ainsi, parce
+ qu'elle est plus pérenne et plus professionnelle, nous vous recommandons
+ d'utiliser uniquement l'adresse @ens.fr
. Le reste de cet article
+ suppose que vous disposez d'une adresse @clipper.ens.fr
: si
+ votre mail est déjà géré par un autre serveur, consultez l'aide pour votre
+ messagerie ou essayez d'adapter ces instructions. Les adresses
+ @clipper.ens.fr
cessent d'être valables environ un an après la
+ fin de votre scolarité, et celles @ens.fr
environ un an après la
+ fin de votre affiliation à l'ENS.
En plus de votre adresse à l'ENS, vous pouvez bénéficier d'une boîte aux
+ lettres électronique et d'une redirection de courrier en
+ @normalesup.org
valables à vie avec l'association des anciens élèves.
Les machines en libre service des salles informatiques ont une installation + de Thunderbird préconfigurée pour accéder à votre messagerie. Nous vous + recommandons d'utiliser Thunderbird si vous souhaitez utiliser un client + graphique.
+ +Si vous souhaitez utiliser un client avancé, nous vous recommandons mutt (ou éventuellement pine). Attention, n'utilisez pas
+ mail
sauf si vous savez ce que vous faites (il va créer une inbox
+ à un endroit non-standard qui va perturber les autres logiciels qui accèdent à
+ votre mail).
La solution la plus facile est d'utiliser le webmail. + Cependant, le webmail est très peu performant et peu pratique : il est + recommandé de prendre le temps de configurer autre chose.
+ +Un bon compromis entre simplicité et efficacité est
+ d'utiliser Thunderbird sur votre machine personnelle pour consulter votre
+ courrier électronique à distance. Pour ce faire, téléchargez Thunderbird, installez-le
+ et lancez-le. Indiquez votre nom, votre adresse électronique
+ @ens.fr
et votre mot de passe. Si l'autoconfiguration échoue,
+ indiquez les réglages suivants et créez le compte (ne demandez pas à
+ Thunderbird de tester les paramètres !) :
clipper.ens.fr
port 993 SSL/TLS, authentification par simple mot de passe. Avec certains logiciels (par exemple le client mail de Mac OS X), il faut préciser que le préfixe IMAP est "Mail".clipper.ens.fr
port 465 SSL/TLS, authentification par simple mot de passe.Thunderbird vous permet de récupérer votre courriel ENS sur votre machine personnelle, et peut également être utilisé pour votre boîte aux lettres personnelle.
+ +Bien sûr, si vous savez utiliser mutt ou pine, vous pouvez vous en servir en vous connectant à distance.
+ +Peut-être souhaitez-vous rediriger votre courrier électronique ENS vers votre + boîte aux lettres personnelle. Il est déconseillé de faire cela si votre courriel personnel est hébergé par un service gratuit et sans garanties comme Gmail ou Hotmail : ces services n'offrent aucune garantie de sécurité, de confidentialité ou de disponibilité, et vous pouvez perdre tout accès à votre messagerie du jour au lendemain, alors que l'ENS a du personnel prêt à aider en cas de problème.
+ +Si vous souhaitez quand même le faire, la bonne façon est de créer un fichier
+ .forward
dans votre répertoire personnel. Pour ce faire,
+ reportez-vous à l'article sur la
+ question dans la FAQ, ou au guide du SPI. En procédant
+ ainsi, le courriel qui arrive sur clipper est redirigé vers votre autre
+ adresse.
La mauvaise façon de le faire est de fournir votre nom d'utilisateur + et mot de passe à Gmail (ou à un autre service) pour qu'il se connecte à + clipper et aille chercher votre courrier électronique lui-même. En procédant + de cette façon, vous donnez accès à votre compte à un service tierce partie, + ce qui est dangereux et interdit par la charte. Le SPI peut détecter de telles + connexions et les bloquer, voire suspendre votre compte et vous demander de + changer de mot de passe.
+ +Vous recevrez beaucoup de courriel collectif (environ deux mails par jour) + sur votre boîte aux lettres ENS. Vous pouvez également utiliser des alias pour + contacter directement toute votre promotion ou tous les élèves. Pour éviter + les abus, ces alias sont modérés. Pour plus d'information, reportez vous au guide sur le courriel collectif.
+ +Si cette page n'a pas répondu à vos questions, vous pouvez consulter + la FAQ des tuteurs sur le + courrier électronique.
+ + + + + diff --git a/src/internet/courrier/international.tml b/src/internet/courrier/international.tml new file mode 100644 index 0000000..d2e1213 --- /dev/null +++ b/src/internet/courrier/international.tml @@ -0,0 +1,266 @@ + + + + ++Envoyer un courrier en anglais ? Pas de problème. En français ? Ça va à +peu près. En allemand ? En espagnol ? Pareil, on se débrouille. En +polonais, en danois ? C'est déjà plus difficile. En russe ou en grec ? Là +ça devient vraiment compliqué. En chinois ou en japonais ? Le cauchemar ! +
++Pour pouvoir envoyer des courriers dans des langues bizarres, il faut avant +tout savoir taper les messages. Pour ça, vous pouvez vous référer à notre +page sur comment taper de +l'Unicode. Il est également utile d'avoir lu la page sur les +problèmes théoriques liés aux +langues. +
+ ++Peu de logiciels de courrier gèrent correctement Unicode. En particulier, il +n'est pas question d'utiliser Pine. Heureusement, le meilleur +logiciel de courrier que nous ayons ici, Mutt, s'en tire +parfaitement. Le seul autre logiciel de courrier gérant Unicode ici est le +module courrier de Mozilla. C'est de Mutt que +nous parlerons ici. +
+ ++Vous devez donc utiliser Mutt, avec comme éditeur un éditeur gérant Unicode. +Ça ne vous laisse pas énormément de choix, mais c'est le choix parmi le +meilleur.
+ + ++Avant toutes choses, il vous faut obtenir un +terminal en +Unicode pour pouvoir lancer Mutt dedans. +
+ ++Dès que vous avez ainsi lancé Mutt, tous vos courriers devraient s'afficher, +quelle que soit leur langue. Il n'y a rien de plus à faire. +
+ ++Pour envoyer un courrier à quelqu'un disposant d'un logiciel de courrier +moderne, il n'y a rien de spécial à faire : composez le message comme +d'habitude (on a expliqué dans +une autre page comment +taper dans des langues exotiques), et envoyez-le. +
+ +
+Une petite subtilité qui peut se produire : quand vous répondez à un
+courrier, vous le citez, avec en chapeau un texte d'« attribution » du
+style « Le 29 février 2000, Untel Tartampion a écrit : ». Le problème
+vient du é dans « écrit » : il vient directement de votre fichier
+.muttrc
, et est codé en iso-8859-1
. Ceci peut
+faire échouer la détection automatique du codage par votre éditeur. Pour
+corriger ça, avant de répondre, tapez :set attribution=, puis
+Tab, et corrigez.
+
+Ne lisez ça que si ça ne marche pas. Si ça marche, pas la peine de vous +compliquer la vie. +
+ ++Il peut y avoir plusieurs causes. Si les caractères s'affichent comme des +carrés en pointillés, c'est que la police utilisée n'a pas les caractères +nécessaires, il n'y a pas grand chose à faire, à part essayer de trouver une +police plus riche. +
+ ++Si le texte s'affiche rempli de points d'interrogation, le problème vient du +logiciel de courrier de votre correspondant, qui n'a pas correctement +étiqueté le courrier avec le codage utilisé. La situation n'est pas +désespérée. Appuyez sur v, et Mutt affichera les parties du +message (une seule en général). Sur la droite, vous verrez une mention du +genre : +
++[text/plain, 8bit, iso-8859-1, 0.5K] ++
+Le text/plain
permet de reconnaître le courrier lui-même dans
+le cas où il y a des attachements. Ce qui nous intéresse alors est le
+troisième champ, qui est ici iso-8859-1
: ça indique que Mutt
+a détecté le codage ISO-8859-1, soit le codage pour les langues
+occidentales. Le plus probable est que votre courrier indique
+us-ascii
, ce qui veut dire qu'aucun codage n'est explicitement
+indiqué. Ou bien il y en a un autre, qui n'est pas le bon.
+
+Dans tous les cas, vous pouvez demander à Mutt d'essayer un autre codage de +votre choix en tapant par exemple : +
+:charset-hook iso-8859-1 koi8-r+
+où iso-8859-1
est le codage détecté par Mutt, et
+koi8-r
celui que vous voulez lui faire essayer. Pour que ce
+soit pris en compte, il faut revenir à l'index et ré-ouvrir le message.
+
+Pour savoir quel codage essayer, il faut avoir une vague idée de la langue +dans laquelle est le message. Vous pouvez essayer les +suivants (les majuscules n'ont pas +d'importance) : +
+ISO-8859-1
, ISO-8859-15
,
+ Windows-1252
, MacRoman
pour les langues
+ occidentales ;ISO-8859-2
, Windows-1250
,
+ MacCentralEurope
pour les langues d'Europe
+ centrale ;ISO-8859-3
pour les langues d'Europe du
+ sud ;ISO-8859-4
ISO-8859-13
,
+ Windows-1257
pour les langues baltes ;ISO-8859-5
, KOI8-R
, KOI8-U
,
+ Windows-1251
, CP866
, MacCyrillic
,
+ MacUkraine
pour le cyrillique ;ISO-8859-6
, Windows-1256
pour
+ l'arabe ;ISO-8859-7
, Windows-1253
,
+ MacGreek
pour le grec ;ISO-8859-8
, Windows-1255
pour
+ l'hébreu ;ISO-8859-9
, Windows-1254
,
+ MacTurkish
pour le turc ;ISO-8859-10
pour les langues
+ nordiques ;ISO-8859-14
pour le celte ;Chinese
(c'est GB2312), Big5
,
+ EUC-TW
, GBK
, GB18030
pour le
+ chinois ;EUC-JP
, ISO-2022-JP
, Shift_JIS
+ pour le japonais ;Windows-1258
, VISCII
, TCVN-5712
+ pour le vietnamien ;EUC-KR
pour le coréen ;MacCroatian
pour le croate ;MacIceland
pour l'islandais ;MacRomania
pour le roumain ;TIS-620
pour le thai ;ARMSCII-8
pour l'arménien ;UTF-8
, UTF-7
pour toutes les langues.
+Quand vous avez trouvé quel était le bon codage, vous pouvez configurer Mutt
+pour que le changement se fasse automatiquement. Pour ça, ajoutez dans votre
+fichier .muttrc
des lignes de la forme :
+
+message-hook . "charset-hook iso-8859-1 iso-8859-1" +message-hook ~f"untel" "charset-hook iso-8859-1 koi8-r" ++
+La première ligne indique à mutt que pour tous les messages, il doit
+convertir iso-8859-1
en lui-même ; elle sert à effacer les
+effets de la suivante. La seconde ligne dit que pour les messages
+d'Untel, il faut prendre
+l'iso-8859-1
pour du koi8-r
(untel
+est une partie de l'adresse de l'expéditeur (ou une expression
+rationnelle)).
+
+L'idéal est quand même de convaincre votre correspondant de configurer +correctement son logiciel de courrier. +
+ ++Le problème qui peut vous arriver, c'est que votre correspondant n'arrive +pas à vous lire, parce que son logiciel de courrier ne connaît pas Unicode. +Si vous n'arrivez pas à le convaincre d'en adopter un moins rudimentaire, +voilà comment vous adapter à lui. +
+ +
+La première méthode est de trouver quel codage il accepte. En général c'est
+facile : c'est le même que celui des courriers qu'il envoie, et nous avons
+vu plus haut comment le déterminer. Au pire, il vous reste à tester les
+différents codages de la liste jusqu'à en trouver un qu'il arrive à lire.
+Mettons pour la suite que le codage qui convient est koi8-r
.
+
+Mutt possède une option send_charset
, dont la valeur par défaut
+est us-ascii:iso-8859-1:utf-8
. Ça veut dire qu'au moment
+d'envoyer un courrier, Mutt essaiera successivement les codages
+us-ascii
, puis iso-8859-1
et enfin
+utf-8
, jusqu'à en trouver un assez riche pour coder votre
+courrier (utf-8
est toujours assez riche). Il s'agit donc
+d'ajouter le codage de votre correspondant à la liste, en mettant la ligne
+suivante dans votre fichier .muttrc
:
+
set send_charset="us-ascii:iso-8859-1:koi8-r:utf-8"+
+Ceci se lit : si le courrier ne contient que des caractères anglo-saxons,
+utiliser le codage us-ascii
, sinon, si le courrier contient
+aussi des caractères accentués occidentaux, utiliser le codage
+iso-8859-1
, sinon, si le courrier contient des caractères
+cyrilliques, utiliser le codage koi8-r
, et sinon enfin utiliser
+le codage utf-8
(entre autres si le courrier contient des
+accents occidentaux et du cyrillique, par exemple pour un courrier
+bilingue en français et russe).
+
+Au moment de l'envoi, Mutt indique le codage qu'il a choisi : +
++- I 1 ~/tmp/mutt-clipper-25879-1 [text/plain, 8bit, koi8-r, 0.1K] ++
+Vous pouvez le modifier avec Ctrl-T si vous n'êtes pas satisfait, +ou pour changer au cas par cas. Il ne reste plus qu'à envoyer. +
+ + + + + + diff --git a/src/internet/courrier/mail-mutt.tml b/src/internet/courrier/mail-mutt.tml new file mode 100644 index 0000000..57cb013 --- /dev/null +++ b/src/internet/courrier/mail-mutt.tml @@ -0,0 +1,494 @@ + + + + +mutt
+Le logiciel par défaut* de la config conscrits
+est thunderbird
. Il se peut que vous ayez opté pour
+mutt
, qui est joli et très performant en toutes circonstances, et
+assez proche de elm
. Cette page en décrit le fonctionnement.
+
mutt
Ouvrez un terminal et tapez la commande mutt
. Vous obtenez
+quelque chose comme ça :
mutt
classe les courriers qui se répondent
+en enfilades (threads en anglais).N (nouveau) : | courrier encore non +lu. |
D (détruit) : | courrier marqué +pour être effacé, voir plus bas pour savoir comment effacer un courrier. |
d (partiellement détruit) : | +attachement marqué comme à effacer, mais pas le message. |
R (réponse) : | courrier auquel vous avez +répondu. |
Vous utilisez les flèches pour vous déplacer de courrier en
+courrier. Pour lire un message précis, placez-vous dessus et taper
+Entrée
. Vous obtenez quelque chose comme ça :
Le message se compose de deux parties : le +texte proprement dit en bas, et quelques informations sur le message +(comme la date ou le sujet) en haut. Cette dernière partie s'appelle +l'en-tête, ou +enveloppe du message.
+ +mutt
, vous n'en voyez que la partie intéressante au
+lecteur, mais l'enveloppe contient aussi l'enregistrement du chemin
+suivi par le courrier, l'adresse de retour, et de nombreuses autres
+informations permettant son acheminement (pour afficher toutes les
+entêtes, vous pouvez taper « h
» — comme
+headers ;
+pour les faire disparaître, appuyez à nouveau sur « h
»).
+La barre d'aide en haut de la fenêtre vous +indique les principales commandes que vous pouvez utiliser : +
+ +i |
+Revenir à l'index | +
q |
+Revenir à l'index ou quitter | +
v |
+Voir les fichiers joints | +
r |
+Répondre à l'expéditeur | +
Pour envoyer un courrier, tapez « m
» (message ou
+mail). mutt
vous demande
+successivement :
To:
: nom du destinataire.Subject
: le sujet du courrier. Il faut
+obligatoirement en mettre un.Votre éditeur* se +lance et vous pouvez taper le texte du message. Quand vous sauvez et +quittez l'éditeur, cet écran apparaît :
+ +Vous pouvez encore modifier les divers renseignements du courrier, +en tapant :
+ +t |
+(To) | +Changer de destinataire, modifier son adresse, en ajouter d'autres... | +
s |
+(Sujet) | +Changer le titre du courrier, ou en mettre un | +
e |
+(Éditer) | +Modifier le texte du courrier | +
c |
+(Copie) | +Envoyer une copie du courrier à quelqu'un d'autre | +
a |
+(Attacher) | +Joindre un fichier | +
Vous aurez compris que toutes ces informations font partie des +en-têtes décrits plus haut. Si la fonction de certains d'entre eux vous +semble obscure, voyez l'explication dans +le cours sur le courrier électronique.
+ +Entrée
» pour envoyer le courrier.q
» pour ne pas envoyer le
+courrier.P
» pour remettre l'envoi du
+courrier à plus tard (la prochaine fois que vous composerez un message,
+mutt vous demandera si vous voulez utiliser ce message que vous avez
+remis à plus tard). Pour spécifier les destinataires, le sujet etc, il se peut que vous
+ayez aussi envie de le faire depuis votre éditeur lorsque vous composez
+votre texte. Pour celà il faut demander à mutt de laisser les headers
+lorsque vous composez. Ça se règle dans le .muttrc
:
sas ~ $ mon_editeur .muttrc+ +
Il faut décommenter (c'est à dire enlever le « #
») la
+ligne « set edit_hdrs
»
Quand vous composerez un message, cette fois-ci le fichier qui sera +édité par l'éditeur ressemblera à ceci:
+ +Et vous pouvez modifier le Sujet
directement depuis
+l'éditeur. Bien sûr, le fichier récapitulatif avant l'envoi définitif
+sera toujours là.
Pour effacer un courrier, placez le curseur dessus avec les flèches
+et tapez « d
» (détruire ou delete). Une balise
+« D
» majuscule apparaît devant le courrier, pour indiquer
+qu'il sera détruit quand vous quitterez mutt
. Vous pouvez
+annuler cette manoeuvre en tapant « u
» (undelete).
+
Ainsi, un courrier n'est pas détruit au moment où vous le +marquez. Il sera effectivement détruit (et effacé du disque dur) au +moment où vous quittez le logiciel de courrier.
+ + Il se peut que vous ayez reçu un gros fichier joint. Pour des raisons
+de place, il vaut mieux l'effacer, ou l'archiver
+sur votre compte. Pour celà, il faut que vous vous placiez sur le message
+contenant la pièce jointe, puis appuyer sur « v
»
Vous voyez une fenêtre apparaître qui liste les différentes +composantes mime du mail. Ici vous voyez que vous avez deux composantes: +un fichier text/plain (c'est juste le corps du message) et le fichier +image/jpeg. Le « I » devant la première composante signifie qu'il s'agit du +corps du message, tandis ce que le « A » devant la deuxième composante +indique qu'il s'agit d'une pièce jointe. +
++En sélectionnant la « joliePhoto.jpg » vous pouvez faire plusieurs +actions:
+ +Entrée
» pour voir la
+photo.d
» pour le marquer comme
+à effacer.
+Ceci n'affectera pas le reste du message. Le « D » au tout début indique
+que c'est ce qu'on a fait ici. Dans la liste des messages, un courier
+dont on a effacé un attachement aura une balise « d
».s
» pour archiver la pièce jointe sur votre compte.mutt
vous
+demande confirmation. Ce n'est pas le cas lorsqu'on marque un attachement
+comme à effacer, quand on quitte mutt
: mutt
+efface l'attachement sans confirmation. Pour répondre à un courrier, utilisez la touche « r
». La
+procédure est la même que pour envoyer un courrier, à ceci près que
+les champs To:
et Subject:
sont remplis
+automatiquement.
+
Mutt vous demande si vous voulez inclure le texte du message
+d'origine dans la réponse; la réponse par défaut est « y
»,
+donc si vous appuyez sur Entrée sans rien répondre, le texte figurera
+dans votre courrier. Le texte auquel on répond est précédé de
+>
, pour le distinguer de votre texte à vous.
Gardez ce qui est utile pour la discussion et éliminez les lignes +sans rapport, ce sera plus lisible. Cette courtoisie envers votre +correspondant fait partie de la netiquette, que vous devriez toujours +avoir présente à l'esprit lorsque vous utilisez un moyen de +communication électronique.
+ ++Cas des courriers groupés : vous pouvez choisir de +répondre uniquement à l'expéditeur, ou au contraire de répondre à tous les +membres du groupe (i.e. l'ensemble des destinataires du message +précédent) :
+ +r
(«Répondre»).g
(«répondre au Groupe»).+La suite des opérations est identique au paragraphe précédent. +
+ + +Vous pouvez archiver votre courrier dans des folders +(« chemises cartonnées »... dossiers) au nom des personnes +avec qui vous correspondez. L'intérêt est triple :
+ +
+Pour ranger un courrier, tapez « s
» (sauver, ou
+save). Mutt
vous répond :
+
+Save to mailbox ('?' for list): =son.nom ++ +
où son.nom
est le nom de votre correspondant. Si le
+nom du folder vous convient, confirmez avec «Entrée». Le courrier est
+désormais indiqué comme détruit, et se trouve dans le nouveau
+folder.
Pour aller dans un folder donné : tapez
+« c
» (changer, ou change). Mutt
vous
+demande un nom de folder. Les noms de folders sont toujours précédés
+du signe « égal ». Si donc vous voulez aller dans le folder
+tuteurs
, tapez « c
» et complétez avec
+=tuteurs
. Pour revenir à la mailbox principale, tapez
+« c!
».
mutt
, « = » est un raccourci qui
+sert à désigner votre répertoire Mail dans votre répertoire personnel.
+C'est pour ça qu'il faut ce signe « égal » devant vos folders si vous
+voulez qu'ils soient bien mis dans votre répertoire Mail. « ! » lui, est
+un raccourci pour désigner votre Mailbox principale, c'est à dire là où
+vous recevez vos mails. Cette Mailbox principale n'est pas dans votre
+répertoire personnel mais dans une autre partition, ce qui explique
+pourquoi il vaut mieux archiver vos messages dans votre répertoire
+personnel afin d'éviter d'engorger cette partition (car si il n'y a plus
+de place libre dans cette partition, les mails ne pourront plus êtres
+livrés). Je veux aller dans un autre folder | +Je veux revenir dans Inbox | +
---|---|
Je tape « c » |
+Je tape « c » |
+
Il répond Open mailbox ('?' for list): |
+Il répond Open mailbox ('?' for list): |
+
Je tape le nom : Open mailbox: =tuteurs |
+Je tape le «!» : Open mailbox: ! |
+
Il me met dans le folder «tuteurs». | +Il me remet dans Inbox. | +
Mutt
propose aussi la liste des folders : tapez
+« ?
» pour avoir la liste, sélectionnez le folder avec les
+flèches et tapez «Entrée».
Mutt
fait de la complétion. Pour aller dans le folder
+tuteurs
, il suffit de taper =tut
puis d'appuyer
+sur « TAB
». (à condition qu'il n'y ait pas d'autres folders
+commençant par « tut ».
Mutt permet aussi d'utiliser des alias à la place des destinataires.
+Pour créer un alias, c'est très simple: il suffit de séléctionner un mail
+que votre ami vous a envoyé ou que vous lui avez envoyé et d'appuyer sur
+« A
».
Il vous demande de choisir le nom de l'alias et vous en propose un par +défaut. On va l'appeler « Ami1 ».
+Alias as: Ami1+ +
Il vous demande ensuite de confirmer son adresse:
+Address: Grand.Ami1@ens.fr+ +
puis d'entrer son nom:
+Personal name: Grand Ami1+ +
A la fin il vous propose un récapitulatif des +données et vous demande si vous êtes d'accord pour en faire un alias.
+[Grand.Ami1 = Grand Ami1 <Grand.Ami1@ens.fr>] Accept? ([yes]/no): ++ +
Enfin, il vous propose de rajouter cet alias dans le
+fichier .muttalias
(le fichier d'alias par défaut dans la config conscrit).
Save to file: /users/03/info/robert/muttalias+ +
Si vous n'avez pas de mails envoyés par votre ami, vous pouvez quand
+même créer un alias: il suffit de taper A
puis de rentrer
+les données manuellement. En fait il y a plus simple, comme indiqué, les
+alias sont enregistrés dans le fichier .mutt-alias
. On peut
+alors l'ouvrir avec l' éditeur de notre
+choix.
sas ~ $ mon_editeur .muttalias+ +
On voit qu'on a deux amis dans notre carnet d'adresse. La syntaxe est +facile à comprendre, pour rajouter « AutreAmi » il suffit de rentrer:
+ +alias AutreAmi Son Nom <AutreAmi@clipper.ens.fr>+ +
En fait, un alias peut aussi contenir un groupe +d'adresse. On peut définir un groupe de la manière suivante:
+ +alias Groupe1 Prenom1 Nom1 <adresse1@clipper.ens.fr>, Prenom2 Nom2 <adresse2@clipper.ens.fr>+ +
On peut aussi définir des groupes d'alias
+alias Groupe2 Ami1, Ami2+ +
et même des groupes de groupe!
+alias Mes_Amis Groupe1, Groupe2+ +
Comme d'habitude, on tape « m
» pour envoyer un courier. Il
+suffit de mettre le nom de l'alias dans le « To: »
To: Groupe1+ +
pour envoyer le message aux personnes concernées par
+l'alias « Groupe1 ». On peut faire de la complétion, par exemple on peut
+commencer par taper « Grou », puis appuyer sur « TAB
», on
+obtient ainsi « Groupe » (Mutt
ne peut pas aller plus loin
+car il y a un « Groupe1 » et un « Groupe2 »), enfin en appuyant encore
+sur « TAB
», Mutt
nous propose un écran listant les
+alias possibles commençant par « Groupe »
Si on appuie sur TAB
dès le début du « To: », mutt nous
+propose un écran récapitulant nos différents alias:
Vous trouverez une documentation complète
+sur Mutt sur le site http://www.mutt.org/
.
+
Pine
thunderbird
qui est mieux connu notamment à
+l'extérieur de l'ENS et plus facile à utiliser. Nous vous signalons aussi
+l'existence de mutt
, qui est plus
+performant et plus stable que Pine
.
+Toutes les touches, bien qu'indiquées en majuscule, sont à taper
+sans la touche shift
, sauf mention contraire.
Pour lancez pine
, ouvrez un terminal et tapez la commande
+pine
.
Choisissez «MESSAGE INDEX» (déplacez-vous avec les flèches du +clavier, et appuyez sur «Entrée»). La liste des courriers +électroniques que vous avez reçus apparaît, avec pour chacun d'eux son +numéro d'ordre, sa date d'arrivée, son auteur, sa taille en octets* et son sujet : +cet écran s'appelle l'index.
+ +Pour lire un message, sélectionnez-le de même à l'aide des flèches +et tapez «Entrée». Si il est trop long pour tenir sur l'écran, vous +pouvez le faire défiler avec les touches fléchées. +
+ +Vous remarquez que le message se compose de deux parties : le
+texte proprement dit en bas, et quelques informations sur le message
+(comme la date ou le sujet) en haut. Cette dernière partie s'appelle
+l'en-tête, ou enveloppe du
+message : sous Pine
, vous n'en voyez que la partie
+intéressante au lecteur, mais l'enveloppe contient aussi
+l'enregistrement du chemin suivi par le courrier, l'adresse de retour,
+et de nombreuses autres informations permettant son acheminement.
Une fois le message lu, tapez I
pour revenir à
+l'index, ou M
pour revenir au menu principal de
+Pine
. Pour quitter, tapez Q
.
Pine
avec sa commande, et pas en
+cliquant sur fermer dans le menu du coin : vous tuez
+Pine
au lieu de le quitter et il le supporte mal. C'est
+de là que viennent les classiques problèmes des utilisateurs de
+Pine
: j'ai perdu du courrier, une copie de tout mon
+courrier est lisible sur mon compte par tout le monde,
+Pine
ne veut plus se lancer, etc.
+Pour envoyer un courrier, tapez C
(«composer un
+message»), ou sélectionnez Compose message
avec les
+flèches dans le menu. Quatre lignes apparaissent pour l'enveloppe du
+message. vous devez remplir au moins les lignes «To :» et
+«Subject :».
Les informations que vous entrez dans ces quatre lignes font +partie des en-têtes décrits plus haut. Si la fonction de certains +d'entre eux vous semble obscure, voyez l'explication dans le cours sur le +courrier électronique.
+ +À l'aide des flèches, descendez ensuite en-dessous de la barre +«Message Text» et tapez votre message. Lorsque vous aurez fini, vous +pouvez envoyer le courrier en tapant Ctrl-X comme c'est indiqué en bas +de l'écran.
+ + Placez-vous sur le courrier et appuyez sur D
(comme
+indiqué en bas de l'écran) pour effacer un courrier électronique. Il
+vous sera demandé confirmation au moment de quitter Pine
;
+vous pouvez entre-temps utiliser U
pour annuler votre
+ordre.
Dans l'index, placez-vous sur le courrier avec les flèches et
+appuyez sur R
. Pine
vous demande alors si
+vous voulez inclure le message auquel vous répondez dans votre
+réponse. C'est une pratique courante pour permettre au correspondant
+de se remettre la conversation en mémoire, mais n'oubliez pas
+d'effacer les morceaux de la discussion qui sont devenus inutiles,
+sans quoi les messages seront vite illisibles.
+
Gardez ce qui est utile pour la discussion et éliminez les lignes +sans rapport, ce sera plus lisible. Cette courtoisie envers votre +correspondant fait partie de la netiquette, que vous devriez toujours +avoir présente à l'esprit lorsque vous utilisez un moyen de +communication électronique.
+ + Pine
demande également si vous voulez répondre à tous
+les destinataires du courrier. C'est utile pour faire des discussions
+en groupe par courrier électronique; faites très attention, quand vous
+répondez à un courrier groupé, à bien vérifier à qui vous le renvoyez.
+Si vous correspondez seulement à deux, la réponse à cette question n'a
+pas d'importance.
+La suite des opérations est identique au paragraphe précédent. +
+ + Vous pouvez joindre un ou plusieurs fichiers à vos courriers.
+Pour cela, il suffit d'appuyer sur Ctrl-J pendant la composition du
+message. Pine
vous demande alors le nom du fichier et un
+commentaire.
Vous pouvez aussi mettre le nom du fichier directement dans le
+champ Attchmt:
. Attention, Pine
cherchera
+le fichier dans le répertoire courant (celui dans lequel vous étiez
+quand vous avez lancé Pine
ou votre HOME si vous l'avez
+lancé en cliquant sur l'icône).
+
Quand vous recevez un courrier contenant un fichier attaché,
+Pine
vous affiche quelque chose comme ça :
Il affiche les fichiers textes. Pour voir les autres, il faut
+appuyer sur V
ou >
. Dans ce cas Pine vous
+affiche la liste des attachements. Si Pine reconnaît le format, il
+lancera le logiciel adéquat pour visualiser l'attachement (avec
+>
) sinon vous pouvez simplement sauver l'attachement
+en question dans un fichier. Vous pourrez le manipuler ensuite.
+Les courriers comportant des images, des fichiers Word prennent +beaucoup de place.
+ + Si vous avez sauvé l'attachement, pensez à détruire,
+sinon le courrier en question (de la façon indiquée plus haut),
+du moins la pièce jointe en question. Pour cela, dans
+la liste des attachements, allez sur la pièce jointe à effacer et
+appuyez sur la touche D
. Pour annuler l'effacement, appuyez
+sur U
. Attention, comme Pine
vous le rappelle,
+la pièce jointe n'est effectivement effacée que si vous déplacez ensuite
+ce courrier vers un autre dossier.
+
Les dossiers de Pine
sont accessibles par l'entrée
+«FOLDER LIST» du menu principal. À l'ouverture de votre compte, vous
+n'avez pas de dossiers, et seule apparaît dans ce menu votre boîte aux
+lettres (sous le nom INBOX).
Pour sauvegarder un message, tapez S
dans
+l'index. Pine
vous demande alors dans quel dossier
+sauvegarder ce message : choisissez un nom, il sera créé si il
+n'existe pas déja. Vous pourrez ensuite revenir dans le menu «FOLDER
+LIST», et vous verrez alors apparaître ledit dossier à côté des
+autres. La manipulation des messages dans un dossier est identique à
+celle de votre boîte aux lettres : vous pouvez lire les messages,
+les effacer, y répondre, et même les sauvegarder d'un dossier dans
+l'autre. Pour taper plus facilement le nom de dossiers déjà existants,
+n'hésitez pas à utiliser la touche TAB
, qui complète
+automatiquement ce que vous avez commencé à écrire.
Il est possible avec Pine
d'appliquer une opération à
+plusieurs courriers en une seule fois. Dans l'index, vous pouvez
+sélectionner un courrier en appuyant sur :
. Il apparaît un
+X
en début de ligne pour indiquer que le message est
+selectionné.
+
Pour éviter de sélectionner les messages ainsi un par un, on
+peut appuyer sur ;
, qui propose de sélectionner des messages
+suivants divers critères. Par exemple, ;N3-8,12,15-27
+(appuyer sur <ENTER>
pour confirmer) sélectionne les
+messages de numéro 3 à 8, le message 12, et les messages 15 à 27. Vous
+pouvez alors modifier votre sélection en l'élargissant avec
+;B
ou en la précisant avec ;N
(vérifiez avec
+l'aide en bas de l'écran, personne ne connaît tout par cœur). Voici
+quelques autres exemples de sélection (les touches citées sont à taper
+après ;
ou ;B
ou ;N
) :
+
S N
: sélectionne les nouveaux messages, pas encore lus
+D CTRL-W CTRL-P ENTER
: sélectionne les messages qui ont été
+envoyés il y a au moins deux jours
+T S tennis ENTER
: sélectionne les messages qui ont
+« tennis » dans le sujet
+Z 10K ENTER
: sélectionne les messages dont la taille
+dépasse 10ko
+ Maintenant que vous avez sélectionné un certain nombre de messages,
+il est temps de les utiliser. Pour cela, appuyez sur A
.
+Pine
vous propose alors un nombre réduit de commandes que
+vous pouvez appliquer à ces messages. Le plus souvent vous utiliserez
+S
pour déplacer tous ces messages dans un autre dossier.
+Parfois vous utiliserez R
pour répondre à plusieurs messages
+à la fois, ce qui permet d'avoir directement tous les bons destinataires
+pour le courrier, et de citer tous les courriers auquel on répond. Vous
+pouvez aussi simplement supprimer tous les courriers sélectionnés avec
+D
.
+
Il est possible de demander à Pine
de vérifier
+l'orthographe d'un courrier que l'on vient de rédiger. Pour cela, c'est
+très simple, il suffit d'appuyer sur CTRL-T
. Ce mode par
+défaut n'est pas très agréable, et je vous conseille de configurer
+Pine
+pour qu'il utilise aspell
pour vérifier l'orthographe. Pour
+cela, allez dans le menu de configuration de Pine
en
+appuyant sur M S C
. Ensuite, cherchez les options parlant de
+« spell ». Pour chercher, il faut appuyer sur W
, comme
+rappelé en bas de l'écran. Si la première recherche ne nous a pas amené
+où on voulait et qu'on veut continuer à chercher la même chose, on peut
+réappuyer sur W
et directement ENTER
(pas
+besoin de réentrer la chaîne de caractères). Une fois que vous avez
+trouvé la ligne : speller=<No
+Value Set>
, appuyer sur C
pour modifier, et
+entrez : aspell --mode=email
+check
en appuyant sur ENTER
pour confirmer. Vous
+pouvez quitter le menu de configuration en appuyant sur E
+puis Y
pour enregistrer les modifications. Vous aurez
+maintenant accès à un correcteur orthographique plus performant.
+
Si vous avez essayé d'utiliser le correcteur orthographique, vous +vous êtes sans doute rendu compte qu'il suppose toujours que votre +courrier est en anglais. Si vous ne pensez utiliser la correction +orthographique que en français, je vous conseille l'opération +suivante : +
+ +sas ~ $ echo 'lang fr' > ~/.aspell.conf
+
+qui indique au correcteur de toujours corriger en
+français. Pour l'anglais ou l'allemand, on remplacerait fr
+par en
ou de
(attention, toutes les langues ne
+sont pas forcément installées). Si vous voulez changer la langue utilisée
+par défaut par un grand nombre d'applications, vous avez aussi la
+possibilité d'éditer votre fichier .profile
et d'y ajouter
+les deux lignes suivantes, par exemple en dessous de la ligne qui définit
+DICTIONARY
(qui sert à un autre vérificateur
+d'orthographe) :
+
LC_MESSAGES=fr_FR +export LC_MESSAGES+
Je dois cependant vous prevenir que ceci risque +d'avoir des effets inattendus, et que vous verrez souvent apparaître des +messages à moitié traduits. +
+ +Pine
permet maintenant d'utiliser la souris dans les
+terminaux xterm
, c'est à dire les terminaux utilisés par
+défaut à l'école. Pour ce faire, il faut activer une option, qui n'est
+par défaut dans la « config conscrit » que depuis 2006. Allez dans le
+menu de configuration en appuyant sur M S C
et cherchez
+l'option enable-mouse-in-xterm
, par exemple en appuyant sur
+W
pour indiquer que vous cherchez quelque chose, et en
+entrant comme texte à chercher : mouse
. Cocher ou
+décocher une option se fait par un simple appui sur X
. On
+quitte ensuite le menu de configuration en appuyant sur E Y
.
+Voilà, vous pouvez maintenant cliquer pour vous déplacer dans les menus
+de Pine
.
+
Vous remarquerez que maintenant que la souris sert à se déplacer dans
+les menus, elle refuse de faire des copier-coller. Pour utiliser la
+souris comme avant (et donc copier ou coller), maintenez la touche
+SHIFT
enfoncée pendant l'opération. Cette technique est
+générale pour tous les programmes qui savent utiliser la souris dans un
+terminal.
+
From:
Lorsque vous envoyez un courrier, votre correspondant voit comme
+adresse untel@clipper.ens.fr
. Il est préférable de lui montrer votre adresse
+prénom.nom@ens.fr
. Pour ce faire, allez dans le menu de
+configuration en tapant M S C
, et cherchez
+customized-hdrs
. Appuyez sur A
et entrez le
+texte souhaité :
+
From: Prénom Nom <prénom.nom@ens.fr>+
On quitte comme d'habitude le menu de configuration
+avec E Y
. Maintenant vos courriers auront une provenance
+plus jolie.
+
Si vous utilisez dans le champ From:
une adresse
+différente de login@clipper.ens.fr
, il est recommandé de la
+rajouter dans la liste alt-addresses
.
+
Parfois on envoie un courrier depuis une certaine adresse, mais on
+aimerait recevoir la réponse sur une autre adresse. On peut aussi vouloir
+préciser la liste des gens à qui il est souhaitable d'envoyer une copie
+de la réponse. L'en-tête Reply-To:
est fait pour ça.
+Malheureusement, il n'est pas proposé par défaut par Pine
.
+Pour corriger cela, on va procéder exactement comme pour modifier le
+champ From:
, mais en ajoutant le texte suivant :
+
Reply-To:+
Maintenant, quand on rédige un courrier, lorsque le
+curseur est sur les en-têtes, on peut appuyer sur CTRL-R
,
+qui fait apparaître un certain nombre d'en-têtes supplémentaires. Il ne
+reste plus qu'à ajouter la ou les adresses souhaitées dans le champ
+Reply-To:
.
+
+Dans les menus, Pine
indique généralement le nom de l'auteur
+du courrier, sauf lorsque cet auteur est vous-même, auquel cas il indique
+le destinataire du courier. Aussi, lorsque vous répondez à un courrier,
+Pine
vous propose de répondre à l'auteur du message ainsi
+qu'à tous les destinataires sauf vous-même. Pour que ces mécanismes
+fonctionnent correctement, Pine
doit être capable de
+reconnaître vos adresses. Par défaut, il ne connaît que
+login@clipper.ens.fr
. Pour lui indiquer d'autres adresses à
+vous, allez dans le menu de configuration en tapant M S C
et
+cherchez le paramètre : alt-addresses
. L'ajout d'une
+nouvelle adresse se fait en appuyant sur A
comme rappelé
+en-bas de la fenêtre.
+
Pour avoir un texte ajouté automatiquement à la fin de vos courriers,
+avec par exemple votre nom et votre adresse, il suffit de mettre le texte
+en question dans le fichier .signature dans votre répertoire racine. Il
+est aussi conseillé d'activer l'option enable-sigdashes
qui
+insère deux tirets et une espace avant votre texte. C'est une convention
+qui permet aux lecteurs de courriers (comme Pine
) de
+facilement repérer une signature et de l'afficher dans une couleur
+différente par exemple. Avec Pine
il faut taper M S
+K
pour modifier les couleurs.
+
Il est possible d'utiliser pine
pour créer ce fichier
+.signature
. Pour ce faire, allez dans le menu de
+configuration, et réglez explicitement signature-file
à
+.signature
en répondant bien aux questions que vous voulez
+stocker cette valeur, pas utiliser le défaut. Ensuite, hors du menu de
+configuration, il suffit d'appuyer sur M S S
pour éditer sa
+signature.
+
Vous trouverez sur la page du SPI une vieille documentation +complète sur Pine (document d'introduction et questions/réponses). +
+ + + + + diff --git a/src/internet/courrier/mutt-compose1.png b/src/internet/courrier/mutt-compose1.png new file mode 100644 index 0000000..34f10ee Binary files /dev/null and b/src/internet/courrier/mutt-compose1.png differ diff --git a/src/internet/courrier/mutt-editor1.png b/src/internet/courrier/mutt-editor1.png new file mode 100644 index 0000000..c396712 Binary files /dev/null and b/src/internet/courrier/mutt-editor1.png differ diff --git a/src/internet/courrier/mutt-lire1.png b/src/internet/courrier/mutt-lire1.png new file mode 100644 index 0000000..7fc7b26 Binary files /dev/null and b/src/internet/courrier/mutt-lire1.png differ diff --git a/src/internet/courrier/mutt1.png b/src/internet/courrier/mutt1.png new file mode 100644 index 0000000..a20165d Binary files /dev/null and b/src/internet/courrier/mutt1.png differ diff --git a/src/internet/courrier/mutt_adresse1.png b/src/internet/courrier/mutt_adresse1.png new file mode 100644 index 0000000..e8f84cb Binary files /dev/null and b/src/internet/courrier/mutt_adresse1.png differ diff --git a/src/internet/courrier/mutt_adresse2.png b/src/internet/courrier/mutt_adresse2.png new file mode 100644 index 0000000..8228f30 Binary files /dev/null and b/src/internet/courrier/mutt_adresse2.png differ diff --git a/src/internet/courrier/mutt_adresse3.png b/src/internet/courrier/mutt_adresse3.png new file mode 100644 index 0000000..64dc62c Binary files /dev/null and b/src/internet/courrier/mutt_adresse3.png differ diff --git a/src/internet/courrier/mutt_attachement1.png b/src/internet/courrier/mutt_attachement1.png new file mode 100644 index 0000000..d3c671d Binary files /dev/null and b/src/internet/courrier/mutt_attachement1.png differ diff --git a/src/internet/courrier/mutt_muttrc1.png b/src/internet/courrier/mutt_muttrc1.png new file mode 100644 index 0000000..a626b3c Binary files /dev/null and b/src/internet/courrier/mutt_muttrc1.png differ diff --git a/src/internet/courrier/procmail.tml b/src/internet/courrier/procmail.tml new file mode 100644 index 0000000..0dacc70 --- /dev/null +++ b/src/internet/courrier/procmail.tml @@ -0,0 +1,531 @@ + + + + +Procmail est un programme très puissant qui sert à filtrer les +courriers électroniques. Grâce à lui, vous pouvez rediriger votre +mail, le trier ou encore vous protéger contre le spam. +
+ +
+Pour donner des instructions à procmail
, il vous faut
+créer un fichier nommé .procmailrc
(dans le monde Unix,
+les fichiers commençant par un point et terminant par « rc » sont
+souvent des fichiers de configuration).
+
.procmailrc
. Procmail est un outil puissant et
+dangereux. Vous risquez de perdre des courriers importants en
+recopiant n'importe quoi à tort et à travers. Mieux vaut passer 5 minutes
+de plus à lire tout plutôt que devoir dire coucou au SPI parce que vous
+aurez perdu du courrier... .procmailrc
+Commencez par créer un fichier nommé .procmailrc
avec
+votre éditeur préféré, puis copiez-collez les instructions qui suivent
+(nous vous expliquons ci-dessous ce qu'elles veulent dire) :
+
+PATH=/bin:/usr/bin +MAILDIR=$HOME/Mail +SPAMBOX=spam ++ +
Explication ligne par ligne :
+ +PATH=/bin:/usr/bin
MAILDIR=$HOME/Mail
SPAMBOX=spam
$HOME/mail/spam
) dans votre boîte aux lettres. C'est là
+que partiront les courriers suspects. Voir infra.
+Ces instructions de début sont la base pour faire marcher correctement
+procmail
, mais en soi, elles ne suffisent pas. Il vous
+faudra spécifier, dans la suite du fichier, ce que vous voulez filtrer
+à l'aide de règles de filtrage. C'est ce que nous vous expliquons
+ci-dessous.
+
+Vous pouvez aussi ajouter la ligne suivante : +
+ ++LOGFILE=$MAILDIR/procmail.log ++ +
+Ceci demande à Procmail de créer un journal (log en +anglais) de ce qu'il fait. Ce journal est très précieux pour faire des +tests, mais quand on l'oublie il prend très rapidement beaucoup de +place. Songez à l'effacer régulièrement quand vous en faites un. +
+ +Les « recettes » (recipes) sont les éléments de
+base du .procmailrc
. Leur principe est le suivant :
+on commence par spécifier des conditions (une condition dit à procmail
+ce qu'il doit regarder dans le courrier, par exemple l'adresse de
+l'expéditeur, ou encore le champ « Sujet ») puis on indique l'action à
+accomplir si les conditions sont remplies (par exemple, rediriger le
+courrier, ou l'envoyer à la poubelle).
+Une recette a toujours le format suivant (le # introduit un +commentaire pour expliquer le code, vous n'avez pas à recopier la +partie après le #) :
+ ++:0 [drapeau(x)] [: [fichier verrou] ] +# Les conditions commencent chacune par * + * condition(s) + action à accomplir ++ +
+Chaque recette s'ajoute dans le fichier .procmailrc
, à la
+suite du bloc de début (voir ci-dessus).
+
+Pour spécifier les conditions, on se sert d'expressions +régulières. Une expression régulière est une notation permettant de +définir des schémas de recherche. Pour cela, on se sert de +métacaractères, aussi appelés jokers. +
+ +Joker | +Signification | +
---|---|
^ | +Début de ligne | +
$ | +Fin de ligne | +
. | +Un caractère quelconque | +
[xy] | +N'importe quel caractère dans l'ensemble spécifié | +
[^xy] | +N'importe quel caractère hors de l'ensemble spécifié | +
foo|bar | +foo ou bar | +
c* | +Un nombre quelconque (même 0) de répétitions du caractère c | +
Quelques exemples :
^From:
: cette condition vise toutes les chaînes
+de caractère From:
au début d'une ligne. On dirait une
+en-tête de courrier électronique, non ? :-)^From:.*choupi.*
: cette condition vise toutes
+les chaînes de caractère From:
au début d'une ligne,
+suivies d'un ou plusieurs caractères, puis de choupi, puis d'un ou
+plusieurs autres caractères. Cette fois, on a défini l'ensemble des
+mails provenant d'une adresse contenant l'expression choupi : de
+cette façon, on vise tous les mails provenant de Choupi, votre
+meilleur ami.^(From|Cc|To).*choupi.*
cette fois, on vise
+tous les mails qui viennent de Choupi, ceux où Choupi est en Cc:, et
+ceux adressés à Choupi.
+Pour rediriger votre courrier électronique vers une autre adresse,
+c'est simple. Ici, on redirige le courrier vers l'adresse
+toto@polenord.pn
. Il n'y pas de condition (cela concerne
+tous les mails). Le point d'exclamation (!) sert à dire qu'il faut
+faire une redirection. Ajoutez donc à votre .procmailrc
+la règle suivante :
+:0 +! toto@polenord.pn ++ +
+Toujours plus fort, maintenant. Imaginons que vous soyiez un fan +de Scoubidou. Votre page web porte sur Scoubidou. Choupi (votre +meilleur ami, souvenez-vous), vous a aidé à le réaliser. Vous +souhaitez relayer les courriers qui vous arrivent et qui parlent de +Scoubidou à Choupi. Avec procmail, vous pouvez le faire. +
+ +:0 +# Concernés : tous les mails dont le sujet contient « Scoubidou » +* ^Subject:.*Scoubidou.* +# On forwarde à Choupi +! choupi@scoubidou-fan.com ++ +
Comme vous pourrez le constater, les conditions peuvent porter sur +tous les champs d'un courrier électronique : From, To, CC, Bcc, +etc.
+ +Ajoutons que dans cet exemple, vous souhaiteriez sans doute vous +aussi lire les courriers « Scoubidou ». Avec la recette +ci-dessus, ces +courriers sont simplement reexpédiés vers Choupi, et vous ne les avez +jamais dans votre boîte aux lettres. Nous allors utiliser un drapeau (flag) qui est une sorte +d'option, qui modifie le comportement standard de procmail. Il suffit +d'ajouter c après le :0, ce qui demande à procmail de copier dans +le répertoire de mail les courriers qui arrivent. L'exemple complet +est donc le suivant :
+ ++:0 c +# Concernés : tous les mails dont le sujet contient « Scoubidou » +* ^Subject:.*Scoubidou.* +# On forwarde à Choupi +! choupi@scoubidou-fan.com ++ +
+On appelle « spam » le courrier électronique envoyé en masse, non
+sollicité, généralement publicitaire. Un filtre tel que
+procmail
vous permet de lutter contre ce phénomène, mais
+il est plus efficace d'avoir une stratégie d'ensemble combinant
+logiciel anti-spam, filtre et prévention. Référez-vous à notre page anti-spam pour en savoir plus.
+
La plupart des spams sont des mails provenant d'expéditeurs bidons +et différents à chaque fois, et qui ont pour point commun de vous +promettre de l'argent, de vous proposer du Viagra, des diplômes par +cher, et autres joyeusetés. Procmail vous permet d'identifier plus ou +moins ces mails en fonction de leur sujet, et de les envoyer +directement à la poubelle. De même, le filtrage par sujet permet de +filtrer les mails pyramidaux (chaînes de l'amitié, fausses alertes de +virus, etc.), que vous pouvez être amené à recevoir plusieurs fois. +
+ +
+Dans l'exemple suivant, vous allez filtrer tous les mails dont le
+sujet contient le mot « Viagra » en les envoyant vers votre poubelle à
+spam, $HOME/mail/spam
. Voire infra
+pour plus d'explication.
+
+:0 +# Sont visés tous les mails dont le sujet contient Viagra +* ^Subject: .*Viagra.* +# Et on les envoie à la poubelle à spam +$SPAMBOX ++ +
Dans d'autres cas, vous pouvez très bien connaître l'adresse
+électronique de ceux qui vous spamment. Ce peut être une liste de
+diffusion à laquelle vous avez été abonné, volontairement ou non, et à
+laquelle les administrateurs de la liste ne vous désabonnent pas. La
+recette qu'il vous faut est la suivante : tous les courriers
+provenant de l'adresse spammeur@tagada.com
seront
+impitoyablement envoyés dans votre boîte à spam.
+:0 +* ^From: .*spammeur@tagada.com +$SPAMBOX ++ +
Vous recevez beaucoup de mails en provenance de Corée, qui sont un
+charabia illisible. Vous voudriez les filtrer. On rappelle que
+procmail peut filtrer sur n'importe quel en-tête de message. Si vous
+regardez les en-têtes d'un spam coréen (appuyez sur H
,
+que vous utilisiez mutt ou pine, pour y avoir accès), vous verrez un
+champ appelé Content-type
. Dans ce champ est déclaré
+charset="ks_c_5601-1987"
. Il vous suffit de filtrer cet
+encodagespour être débarrassé de la plupart des spams
+coréens :
+:0 +* ^Content-Type: .*charset="ks_c_5601-1987"* +$SPAMBOX ++ +
De manière plus perverse, certains spams coréens ne déclarent pas +leur encodage au bon endroit, pour éviter justement ce genre de +filtres. L'encodage est alors annoncé dans le sujet. Pour y remédier, +ajoutez simplement :
+ ++:0 +* ^Subject: .*EUC-KR.* +$SPAMBOX + +:0 +* ^Subject: .*ks_c_5601-1987.* +$SPAMBOX ++ +
+Si vous êtes sûr de ne pas vouloir de mails en encodage coréen, vous
+pouvez mettre ces mails à la poubelle au lieu de les mettre adns la
+boîte à spam. Sur UNIX, la poubelle est
+/dev/null
. Attention, contrairement à la poubelle de
+Windows ou MacOS, il n'y a pas de filet de sécurité, on ne peut plus
+récupérer les données une fois poubellisées. Ceci donne :
+
+:0 +* ^Subject: .*EUC-KR.* +/dev/null ++ +
/dev/null
+dans votre .procmailrc
est dangereuse : la moindre
+erreur de syntaxe, la moindre coquille est susceptible d'envoyer tout
+votre mail dans /dev/null
, soit le vide intersidéral d'où
+vous ne pouvez récupérer aucun courrier. En cas d'accident, vous
+pouvez vous adresser au SPI, mais
+faites particulièrement attention en éditant votre
+.procmailrc
.En installant des filtres anti-spam : vous prenez le risque +d'écarter des courriers qui en fait n'en sont pas, mais qui répondent +tout de même à vos règles. Ce sera le cas d'un prof coréen qui vous +écrit si vous filtrez les encodages coréens, d'un courrier parlant de +FreeBSD si vous filtrez le mot « free », d'un courrier dont +le sujet contient « bissextile » si vous filtrez « sex », etc. Plus +vos règles sont strictes, moins vous recevrez de spam, mais plus vous +aurez de chances de perdre du courrier.
+ +Pour cette raison, il vaut parfois mieux envoyer les courriers +suspects dans un dossier spécial, appelé « spam », par +exemple. Voir ci-dessous comment faire.
+ +Cette recette est particulièrement utile pour les listes de +diffusion (mailing-lists) : vous pouvez envoyer +tous les courriers provenant de la liste directement dans un dossier +spécial, qui contiendra seulement les courriers de ce genre.
+ + Admettons que vous apparteniez à la liste des amis de
+Scoubidou. Cette liste a pour adresse
+scoubidou@zoinx.foo
, et tous les courriers de la liste
+ont pour champ expéditeur :
+To: Les Amis de Scoubidou <scoubidou@zoinx.foo> ++ +
Vous voulez regrouper les courriers de la liste dans un dossier +appelé « scoubidou ». La recette qu'il vous faut est la +suivant :
+ ++# Le dernier ":" demande l'utilisation d'un fichier verrou +:0: +# La condition : tous les fichiers contenant 'scoubidou@zoinx.foo' +# dans le champ 'To: ' +* ^To.*scoubidou@zoinx.foo +# Action : placer tous ces mails dans le dossier « Scoubidou » +$HOME/Mail/scoubidou ++ +
À quoi sert le fichier verrou ? Imaginons +que deux courriers de la liste arrivent en même temps : deux +procmails essaieront d'envoyer les deux messages dans le dossier en +même temps. Si vous utilisez un fichier verrou, le premier procmail +verrouillera le dossier pendant qu'il écrira son message dans le +dossier, empêchant ainsi le second message d'y accéder. Une fois que +le premier procmail aura fait son travail, le second prendra le relais +en toute sécurité.
+ +Il suffit d'ajouter dans votre .zshrc
la ligne
+suivante :
+MAILPATH="$MAIL:$HOME/mail/Scoubidou?You have new mail in Scoubidou." ++ +
Si vous voulez appliquer la même technique à plusieurs dossiers, il
+faut les séparer par des symboles « : » de sorte que si vous êtes
+aussi fan des Schtroumpfs, vous pourrez, en plus de la recette
+procmail
adaptée, mettre les lignes suivantes dans votre
+.zshrc :
+
+MAILPATH="$MAIL:$HOME/mail/Scoubidou?You have new mail in Scoubidou.\ +:$HOME/mail/Schtroumpfs?You have new mail in Schtroumpfs." ++ +
+Une application intéressante de classement concerne le spam. Pour des
+raisons évoquées plus haut, il n'est parfois pas prudent d'envoyer le
+courrier suspect directement vers /dev/null/
: vous
+risquez de perdre du vrai courrier. Il vaut mieux parfois rerouter le
+courrier vers une boîte à spam.
+
+L'avantage d'une boîte à spam est que vous n'êtes plus dérangé pour +rien par les avertissements « You have new mail ». Il vous suffit de +consulter la boîte de temps à autre, toutes les semaines disons, et de +faire un tri rapide de vrais spams et des faux. +
+ +
+Prenons un exemple. Beaucoup de spams ont un Content-type
+en text/html
, c'est-à-dire du HTML seulement sans copie
+texte. Inversement, il n'y a guère que les spams pour être en
+text/html
: les gens normaux avec un logiciel mal
+configuré n'envoient guère que du HTML+ texte (donc un
+Content-type
en multipart/alternative
). Vous
+voulez donc filtrer le text/html
. Mais l'expérience
+prouve que certains logiciels particulièrement malfaisants envoient
+des courriers parfaitement normaux en
+text/html
. Solution : envoyer tous ces mails dans la
+boîte à spam.
+
Application :
+ ++:0 +* ^Content-Type: text/html.* +$HOME/Mail/spam ++ +
+Un dernier exemple pour la route ! Encore plus fort, +maintenant ! Nous allons reprendre l'exemple du courrier à +relayer à votre ami Choupi. Dans l'état où nous vous avions laissé, +vous saviez lui relayer le courrier contenant « Scoubidou » dans le +sujet et en garder une copie chez vous. Maintenant nous allons vous +montrer comment faire ceci, mais en envoyant vos copies à vous dans le +dossier « Scoubi. » Il s'agit donc d'une recette constituée de deux +recettes imbriquées (chaque recette commence par un :0, +souvenez-vous) :
+ ++:0: +* ^Subject:.*Scoubidou.* +{ + :0 c +# On fait suivre vers Choupi + ! choupi@scoubidou-fan.com +# et en plus de ça... + :0 +# ... on dépose la copie dans le dossier « Scoubi » +$HOME/Mail/scoubi +} ++ +
Ceci ne montre qu'une partie des possibilités de procmail. Vous +pouvez faire beaucoup de choses plus compliquées mais tout aussi +utiles : ajouter systématiquement un champ (Reply-To, par +exemple), éviter les boucles... Pour davantage de renseignements, +consultez les pages de man (si vous ne savez pas ce qu'est une page de +man, consultez notre page sur +l'aide en ligne d'Unix) : +
+ +man procmail
est une description de procmail
+lui-même. Vous y trouverez les options de procmail.
+man procmailrc
est très complet mais indubitablement
+compliqué.man procmailsc
est à réserver aux experts de
+procmail.
+man procmailex
propose des exemples prêts à
+utilisation. C'est sans doute la page de man la plus utile pour celui
+qui veut se familiariser davantage avec procmail.
++Cette page s'adresse à ceux qui ont reçu, en se loguant sur une machine +de l'ENS, le message suivant : +
+ ++********************************************************************** +ATTENTION, votre boîte à mails est BEAUCOUP trop grosse. Si vous +continuez à la laisser grossir, vous risquez de bloquer les mails des +autres utilisateurs. Contactez au plus vite <tuteurs@clipper.ens.fr> +********************************************************************** ++ +
+Pourquoi ce message ? Comment corriger ce problème ? Vous +l'apprendrez en lisant cette page. +
+ ++Remarque : si le moindre passage de cette page reste obscur pour +vous, n'hésitez surtout pas à contacter un tuteur. Ils +sont là pour ça, et se feront un plaisir de vous renseigner et de vous +conseiller. +
+ ++Ce message est envoyé automatiquement à ceux dont la messagerie dépasse +la taille maximale autorisée. Pourquoi cette +limitation ?
+ +S'il faut veiller à ce que nos messageries n'occupent pas trop +d'espace disque, c'est parce que l'espace disque n'est pas illimité à +l'ENS, et que les disques durs de serveurs que nous utilisons coûtent +cher ; on ne peut donc pas les multiplier à l'infini.
+ +À l'heure actuelle, la taille maximale autorisée tourne autour de +10 Mo, historiquement justifiée par le calcul suivant :
+ +/var/mail
, c'est-à-dire la portion de
+disque dur qui héberge les boîtes mail des comptes antérieurs à 2014, a mesuré
+un peu plus de 22 Go, c'est-à-dire 22 000 Mo (elle mesure aujourd'hui 166
+Go);Un rapide calcul mental montre que cela autorise une moyenne +inférieure à 10 Mo par utilisateur. Qu'est-ce que cela signifie ? +Tout simplement que si +tout le monde a 10 Mo de courrier dans sa boîte, la partition sera +pleine ; et si elle est pleine, plus personne ne pourra plus +recevoir de courrier. Par conséquent, chaque utilisateur doit veiller à +rester en dessous de la barre fatidique des 10 Mo, et à s'en +écarter le plus possible.
+ +Toutefois, ces 10 Mo ne doivent en aucun cas être +considérés comme un dû : si le nombre d'utilisateur +augmente, leur vigilance devra augmenter proportionnellement, car +l'espace disque moyen disponible par utilisateur diminuera +d'autant. C'est pour compenser ces baisses de vigilance que le message +est envoyé à ceux dont la boîte dépasse la taille maximale autorisée. +
+ +En imposant un quota, par exemple de 10 Mo par utilisateur, on +éviterait à coup sûr que la partition soit pleine !
+ +Certes, mais cela pourrait également avoir des conséquences +désastreuses : un compte recevant beaucoup de spams (courrier +indésirable), et qui ne serait pas vidé pendant une longue période, par +exemples les grandes vacances, pourrait se retrouver saturé, et ne plus +pouvoir accepter des messages importants. Par ailleurs, il faudrait +affiner sans cesse les quotas pour les adapter aux besoins de chaque +utilisateur particulier, selon ses responsabilités, ses besoins, etc. +
+ +En un mot comme en cent, cette politique de quota serait quasi +ingérable, ou inique. Aussi les administrateurs système de l'ENS ont-ils +pris le parti de miser sur la vigilance et le sens des responsabilités +de chaque utilisateur.
+ + + +
+La commande du
permet de savoir combien de place votre
+boîte occupe :
+
+bireme ~ $ du -h /var/mail/$USER
+
+
++ Ou, pour les nouveaux comptes : +
+ +
+bireme ~ $ du -h /d/$USER
+
+
++Moins votre messagerie est grosse, mieux ce sera ; si vous voyez qu'elle +approche de la limite, il est temps de penser à la vider ; si vous +avez déjà dépassé la limite, il est urgent de la vider. +
+ +
+Pour obtenir plus d'informations sur le commande du
et sur
+la taille des partitions, consultez la page consacrée à l'espace disque.
+
Il existe trois façons de vider sa boîte :
+ ++Si votre messagerie contient beaucoup de messages, il peut être +difficile de savoir par quels messages commencer le tri. La réponse est +simple : par ceux qui occupent le plus d'espace disque ! +
+ + +Concrètement, il faut savoir que ce qui prend le plus de +place dans un courriel, ce sont les pièces jointes. Un message +simplement composé de texte occupe très peu de place : +quelques Ko (milliers d'octets) seulement, voire moins (quelques +centaines d'octets). En revanche, dès qu'un message commence à +comporter des feuilles HTML, des images, des photographies, des +transparents, des fichiers de traitement de texte, des feuilles de +tableur, voire des vidéos, il occupe rapidement beaucoup de place.
+ ++Il faut savoir que toutes les pièces jointes sont susceptibles +de consommer beaucoup d'espace disque, même peu +gourmandes : +
+ +Ainsi, si vous triez vos messages, commencez par les messages qui +contiennent des pièces jointes, surtout si elles sont volumineuses. Et +le reste du temps, dès que vous recevez ce type de message volumineux, +pensez à l'effacer, à l'archiver ou à effacer sa pièce jointe +immédiatement : n'attendez pas qu'il soit enfoui +sous un grand nombre d'autres messages !
+ + ++Si toutefois vous avez laissé passer de gros messages, il n'est pas +toujours évident de les identifier après coup. Aussi est-il possible de +trier tous ses messages selon leur taille, ce qui permet de commencer +par trier les plus gros : +
+ +Pine
: tapez $
puis
+z
. Vous pourrez voir entre parenthèses la taille
+(en octets) des messages ;Mutt
: tapez o
puis
+z
; vous voyez alors la taille de chaque
+message, en nombre de lignes, indiquée entre parenthèses. Pour voir la
+taille en octets, allez sur chaque message (en commençant par les plus
+gros, naturellement), et appuyez sur v
. La première façon de vider sa boîte, la plus simple, est d'effacer +des messages ; mais rassurez-vous, ce n'est pas la seule, comme +nous le verrons plus bas.
+ +Pine
+Si vous utilisez le logiciel Pine
, placez-vous sur le courrier et
+appuyez sur D
(comme indiqué en bas de l'écran) pour
+effacer un courrier électronique. Il vous sera demandé confirmation au
+moment de quitter Pine
; vous pouvez entre-temps
+utiliser U
pour annuler votre ordre.
+
+Vous trouverez plus d'informations sur le fonctionnement de
+Pine
sur la page consacrée à
+Pine sur le site des tuteurs.
+
Mutt
+Si vous utilisez le logiciel Mutt
, placez le curseur, au moyen des
+flèches, sur le message à effacer, et appuyez sur la touche
+D
(qui signifie delete
, détruire). Une balise
+D
apparaît devant le message ; vous pouvez annuler cet
+ordre en tapant sur la touche U
. Lorsque vous quitterez Mutt
,
+si vous n'avez pas annulé, le message sera effacé.
+
+Vous trouverez plus d'informations sur le fonctionnement de
+Mutt
sur la page consacrée à
+Mutt sur le site des tuteurs.
+
+Vous venez de recevoir un message accompagné d'une pièce jointe +volumineuse. Vous aimeriez conserver cette pièce jointe sans empiéter +sur les ressources d'autrui. Comment faire ? +
+ +Vous pouvez procéder en deux étapes :
+ +/var/mail
ou /d
.
+Dans l'index des messages, allez sur votre message et appuyez sur la
+touche >
; vous verrez, comme d'habitude, le
+texte du message ; appuyez encore sur la
+touche >
et vous verrez la liste des pièces
+jointes.
+
+Sélectionnez la pièce jointe que vous voulez sauvegarder et appuyez sur
+S
; en suivant les étapes indiquées par Pine, vous
+pourrez donner le nom sous lequel sauvegarder la pièce jointe.
+
+Dans l'index des messages ou lorsque vous lisez un message (vous avez le
+choix), appuyez sur v
; vous verrez alors la liste des
+pièces jointes.
+
+Allez sur la pièce jointe à sauvegarder et appuyez sur s
,
+puis indiquez le nom sous lequel vous voulez la sauvegarder.
+
+Une fois que vous avez sauvegardé la pièce jointe, vous pouvez l'effacer
+du message. Ceci veut dire que la pièce jointe, à ce moment du
+processus, se trouve sur deux partitions à la fois : sur
+/var/mail
(dans le message qui vous l'a envoyée), et sur la
+partition de votre promotion (dans le répertoire et le nom de fichier
+que vous avez indiqués).
+
+Or, le but du processus était de libérer de l'espace disque sur
+/var/mail
; il reste donc à effacer la pièce jointe du
+message.
+
La méthode est la même sous Pine et sous Mutt : lorsque vous
+êtes dans l'index des pièces jointes, allez sur celle que vous voulez
+effacer et appuyez sur d
; un D
s'affiche
+devant la pièce jointe, indiquant qu'elle est candidate à
+l'effacement. Si vous avez des remords ou que vous avez commis une
+erreur de manipulation, vous pouvez annuler l'effacement en appuyant sur
+u
(comme undelete). La pièce jointe sera effacée
+lorsque vous quitterez Pine ou Mutt.
Pour un certain nombre de raisons, on peut vouloir conserver des
+messages après les avoir lus, au lieu de les effacer. Pour les conserver
+tout en libérant de l'espace disque sur la partition
+/var/mail
, il faut créer des dossiers sur
+une autre partition, typiquement celle où vous avez votre
+compte d'utilisateur.
Un dossier est un fichier contenant des courriels. Les +dossiers peuvent être aussi bien utilisés avec Pine qu'avec Mutt ou le +Webmail, et l'on peut lire avec l'un de ces programmes ou +interfaces ce que l'on a archivé avec un autre (à une exception +près : Mutt permet de lire et de remplir des dossiers +compressés, contrairement à Pine et au Webmail).
+ + +Pine
Les dossiers de Pine
sont accessibles par l'entrée
+« FOLDER LIST
» du menu principal. À l'ouverture de
+votre
+compte, vous n'avez pas de dossiers, et seule apparaît dans ce menu
+votre boîte aux lettres (sous le nom INBOX
).
Pour sauvegarder un message, tapez S
dans
+l'index. Pine
+vous demande alors dans quel dossier sauvegarder ce message : choisissez
+un nom, il sera créé s'il n'existe pas encore. Vous pourrez ensuite
+revenir dans le menu « FOLDER LIST
», et vous verrez alors
+apparaître le dossier en question à côté des autres. La manipulation des
+messages
+dans un dossier est identique à celle de votre boîte aux lettres : vous
+pouvez lire les messages, les effacer, y répondre, et même les
+faire passer d'un dossier à un autre.
+Vous trouverez plus d'informations sur le fonctionnement de
+Pine
sur la page consacrée à
+Pine sur le site des tuteurs.
+
Mutt
+Vous pouvez archiver votre courrier dans des dossiers (folders) +au nom des personnes avec qui vous correspondez. L'intérêt est +triple :
+ +
+Pour ranger un courrier, tapez S
(sauver, ou
+save). Mutt
vous répond :
+
+Save to mailbox ('?' for list): =son.nom ++ +
où son.nom
est le nom de votre correspondant. Si le
+nom du dossier vous convient, confirmez avec « Entrée ». Le
+courrier est
+désormais indiqué comme détruit, et se trouve dans le nouveau
+dossier.
Pour aller dans un dossier donné : tapez
+C
(changer, ou change). Mutt
vous
+demande un nom de dossier. Les noms de dossiers sont toujours précédés
+du signe « égal ». Si donc vous voulez aller dans le dossier
+tuteurs
, tapez C
et complétez avec
+=tuteurs
. Pour revenir à la mailbox principale, tapez
+c!
.
Je veux aller dans un autre dossier | +Je veux revenir dans Inbox | +
---|---|
Je tape C |
+Je tape C |
+
Il répond Open mailbox ('?' for list): |
+Il répond Open mailbox ('?' for list): |
+
Je tape le nom : Open mailbox: =tuteurs |
+Je tape le « ! » : Open mailbox: ! |
+
Il me met dans le dossier « tuteurs ». | +Il me remet dans Inbox. | +
Mutt
propose aussi la liste des dossiers : tapez
+?
pour avoir la liste, sélectionnez le dossier
+avec les flèches et tapez « Entrée ».
+Vous trouverez plus d'informations sur le fonctionnement de
+Mutt
sur la page consacrée à
+Mutt sur le site des tuteurs.
+
+Vous avez archivé vos messages sur une autre partition (typiquement +celle de votre promotion), et nous vous en félicitons. Mais les messages +s'accumulant, cette partition peut se retrouver à +son tour menacée de saturation.
+ +Pour éviter cela, il est recommandé d'archiver à l'extérieur de +l'ENS vos dossiers, lorsqu'ils commencent à prendre trop de place.
+ ++Vous pouvez par exemple archiver vos messages sur votre ordinateur +personnel si vous en avez un, +mais il se peut que ce ne soit pas suffisamment fiable, car un virus ou +tout autre dysfonctionnement (voire une simple erreur de manipulation) +peut vous en priver définitivement. Ce n'est donc pas la méthode que +nous vous recommandons, même si elle reste tout à fait possible. +
+ ++L'idéal est souvent d'archiver ses messages sur un support externe. La +capacité d'une disquette est souvent trop restreinte, et ne suffit pas à +archiver un grand nombre de messages (surtout s'ils contiennent des +pièces jointes). +En revanche, le CD-ROM est un support fiable et d'une +capacité généralement suffisante ; vous pouvez vous en faire +graver un. Pour plus de renseignements, consultez la page consacrée à l'espace +disque.
+ + ++Si vous avez le moindre doute, si vous craignez de faire une +fausse manipulation, n'hésitez surtout pas à contacter les +tuteurs, qui +sont là pour ça ; vous pouvez les contacter physiquement, en leur +tapant (gentiment) sur l'épaule, mais aussi par courriel à l'adresse +tuteurs@ens.fr, ou encore en +utilisant talk. +
+ + + + + + diff --git a/www/internet/dangers_telnet.tml b/src/internet/dangers_telnet.tml similarity index 100% rename from www/internet/dangers_telnet.tml rename to src/internet/dangers_telnet.tml diff --git a/src/internet/eduroam-MacOS-ENSdP.mobileconfig b/src/internet/eduroam-MacOS-ENSdP.mobileconfig new file mode 100644 index 0000000..ef99cf7 Binary files /dev/null and b/src/internet/eduroam-MacOS-ENSdP.mobileconfig differ diff --git a/www/internet/eduroam.tml b/src/internet/eduroam.tml similarity index 100% rename from www/internet/eduroam.tml rename to src/internet/eduroam.tml diff --git a/src/internet/forum/creer.tml b/src/internet/forum/creer.tml new file mode 100644 index 0000000..fde535a --- /dev/null +++ b/src/internet/forum/creer.tml @@ -0,0 +1,99 @@ + + + + +
+N'importe qui peut demande la création d'un conti (nom donné aux
+groupes de forum). C'est le compte forum,
+émanation des gourous,
+qui s'en charge techniquement. Voici les consignes à suivre pour que
+tout se passe correctement et rapidement. Vous trouver la version
+officielles de ces consignes sur forum dans le message
+<bpik14$5mg$12@clipper.ens.fr> (alias
+syst.forum:7237
).
+
+Poster un message dans le conti
+syst.forum
(qui parle du fonctionnement de
+forum) pour décrire le conti que l'on veut, proposer un nom et une
+charte. Ce message sert à engager une discussion, pour que les gens
+disent s'ils sont intéressés ou non, suggérer un autre nom, etc.
+
+Pour ceux qui connaissent le fonctionnement de Usenet-fr, cette +discussion peut rappeler un AAD, mais c'est en fait beaucoup moins formel. +
+ ++S'il s'agit d'un groupe alt.* (peu sérieux), l'étape 1 est +optionnelle. +
+ +
+Une fois que la discussion s'est stabilisée (plus de nouveaux messages
+dans un temps raisonnable) et que le groupe a été jugé utile,
+envoyer un courrier au Compte Forum
+(forum@clipper
) demandant formellement la
+création du groupe. Ce message doit contenir les éléments suivants :
+
+(echo "LIST NEWSGROUPS" ; echo QUIT) | netcat clipper.ens.fr 2019 ++
V
dans flrn
pour
+l'obtenir) de la discussion à ce sujet dans syst.forum
+Si vous ne suivez pas cette procédure, assez simple en fait, le Compte
+Forum peut ignorer votre demande. Ne vous contentez pas de dire « je
+demande la création de alt.blabla
» dans
+syst.forum
, il faut envoyer un courrier.
+
+Normalement, les alt.* sont créés sans trop de discussions, mais dans +les cas vraiment nazes et/ou abusifs, le Compte Forum peut très bien +vous répondre non. +
+ + + + + diff --git a/src/internet/forum/crosspost.tml b/src/internet/forum/crosspost.tml new file mode 100644 index 0000000..3034b51 --- /dev/null +++ b/src/internet/forum/crosspost.tml @@ -0,0 +1,223 @@ + + + + ++Attention, bien que les concepts évoqués soient indépendants du +lecteur de news utilisé, les aspects pratiques ne sont valables que +pour Flrn, le lecteur de news particulier à +l'ENS. Les choses sont certainement différentes avec un autre lecteur +de news (XNews, Outlook Express, Mozilla Mail...). +
+ ++Un crosspost (parfois abrégé en +« Xpost ») est le fait de poster dans plusieurs groupes simultanément +(on poste un seul message, et il est diffusé dans plusieurs +groupes). Ne pas confondre avec un multipost qui consiste à poster soi-même +plusieurs fois le même message dans plusieurs groupes différents. Un +crosspost est acceptable s'il est suivi d'un followup +(cf. ci-dessous), le multipost s'apparente à du spam, il faut donc +l'éviter. +
+ ++Un Followup-To (fu2 en abrégé, +parfois traduit par « suivi-à » en français) signifie qu'on invite les +réponses au message que l'on poste à être envoyées dans un autre +conti. +
+ ++La combinaison « crosspost + fu2 » est très utile dans deux cas +essentiellement : +
+ +societe.droit
et
+divers.vie-pratique.finances
, et vous redirigez dans
+divers.vie-pratique.finances
.
+
+Admettons que vous participiez à une passionnante discussion sur la
+vie et les mœurs de ces fabuleux animaux que sont les
+macareux. Cette discussion se tient dans le conti
+sciences.biologie
. La conversation dérive peu à peu, et
+vous vous retrouvez à parler du droit des animaux. Vous souhaitez donc
+logiquement poursuivre la dicussion dans le conti
+societe.droit
. Voici comment procéder.
+
R
pour
+Flrn). Vous voici prêt à éditer le message :
+
++Groupes: ens.forum.sciences.biologie +Sujet: la vie des macareux + +Raoul Dugenou, dans le message (sciences.biologie:42), a écrit : +> et c'est absurde, car les animaux n'ont pas de droits. ++
+Sujet: la vie des macareux +Groupes: ens.forum.sciences.biologie, ens.forum.societe.droit +Followup-To: ens.forum.societe.droit + +Raoul Dugenou, dans le message (sciences.biologie:42), a écrit : +> et c'est absurde, car les animaux n'ont pas de droits. ++
+Groupes: ens.forum.sciences.biologie, ens.forum.societe.droit +Sujet: droits des animaux (was: la vie des macareux) +Followup-To: ens.forum.societe.droit + +Raoul Dugenou, dans le message (sciences.biologie:42), a écrit : +> et c'est absurde, car les animaux n'ont pas de droits. ++ +
+Par politesse, vous pouvez indiquer à la fin de votre message que vous +effectuez une redirection : +
+ ++[Copie et suivi dans societe.droit.] ++ +
+Si vous faites un usage intensif de ces fonctions, vous pouvez ajouter une
+option qui propose automatiquement un certain nombre de champs utiles, dont
+« Followup-To ». Pour ce faire, éditez le fichier de config de Flrn, le
+.flrnrc
et ajoutez-y la ligne suivante :
+
+set edit_all_headers ++ +
+Les champs « Sujet » et « Groupes » s'appellent alors « Subject » et +« Newsgroups », leur nom standard. Si vous modifiez le contenu d'un champ, +faites attention d'éviter les retours à la ligne intempestifs. +
+ ++Quand vous répondez à un message avec followup, Flrn vous demande si +vous voulez le suivre : +
+ ++Suivre le followup (O/N/A) ? ++ +
+Tapez O
pour « oui » : votre message sera posté dans le
+groupe indiqué dans le champ « Followup-To: », dans notre exemple
+précédent il s'agit de societe.droit
. Tapez
+N
pour « non » : votre message restera posté dans le
+groupe où vous vous trouvez, dans notre exemple,
+sciences.biologie
. Enfin, si vous souhaitez annuler votre
+réponse, tapez A
pour « annuler ».
+
+Admettons que vous ne lisiez que societe.droit
et pas
+sciences.biologie
. Vous voyez arriver un message qui
+parle du droit des animaux, mais vous aimeriez bien savoir de quoi
+parlait la discussion précédente, « la vie des macareux ».
+
+Placez-vous sur l'article « charnière » (celui qui comporte le
+crosspost + fu2) et tapez c
(ou \swap-grp
)
+puis Enter
. Flrn vous propose alors la liste des groupes
+dans lesquels le message a été crossposté :
+
+> ens.forum.sciences.biologie + ens.forum.societe.droit ++ +
+Il ne vous reste plus qu'à choisir. +
+ ++Si vous écrivez « Followup-To: junk », cela signifie que vous ne +souhaitez pas qu'on réponde au message. Quant à « Followup-To: +poster », il signifie que vous voulez recevoir des réponses par mail +et non dans Forum. +
+ + + + + diff --git a/src/internet/forum/entetes.tml b/src/internet/forum/entetes.tml new file mode 100644 index 0000000..53cd156 --- /dev/null +++ b/src/internet/forum/entetes.tml @@ -0,0 +1,286 @@ + + + + ++La lecture de cette page n'est absolument pas nécessaire pour poster +dans forum, encore moins pour y lire. Elle s'adresse à ceux qui +veulent approfondir leurs connaissances techniques sur Forum. +
+ ++Un message commence par un certain nombre d'en-têtes (« headers » en anglais, on parle parfois aussi de +« champs »), suivis par une ligne blanche puis le corps du message. Un +en-tête tient généralement sur une ligne (s'il en fait plusieurs, les +suivantes doivent obligatoirement commencer par une espace ou +tabulation pour indiquer qu'il ne s'agit pas d'un nouveau en-tête). La +ligne du en-tête commence par le nom du en-tête, suivi de deux points +et d'une espace puis du contenu du en-tête. +
+ ++À quoi servent les en-têtes ? À donner des méta-informations sur le +message. Prenons un exemple : dans une bibliothèque, la fiche d'un +livre contient un certain nombre de méta-informations : le nom et le +prénom de l'auteur, le titre du livre, son éditeur, le lieu d'édition, +le nombre de pages, etc. Les en-têtes sont une sorte de fiche pour un +message de news. La différence est que chaque message transporte sa +propre fiche sur lui. +
+ +
+Quand vous lisez un message de Forum avec Flrn, vous voyez typiquement ce genre de
+choses. Vous voyez les en-têtes « Auteur », « Sujet » et
+« Date ». Vous savez donc que c'est le Compte Forum qui a posté ce
+message, qu'il s'agit de la charte du conti aide
et que
+le message a été posté le 11 septembre 1998.
+
+Si vous tapez 'V' sur un message de forum, Flrn lancera un pager (typiquement le programme
+less
) pour vous permettre de voir complètement le message
+en question, avec toutes ses en-têtes :
+
+Si vous êtes un peu anglophones, vous pouvez comprendre de quoi +il retourne pour la plupart des en-têtes. Voici une explication des +en-têtes les plus importants. +
+ +
+L'en-tête From
indique l'identité de la personne qui a
+posté le message. Ce champ peut être modifié ; en revanche,
+forum ajoutera automatiquement à votre message un en-tête « Sender »,
+qui ne peut pas être modifié, et qui donne votre véritable
+identité. De plus, dans les en-têtes montrés par défaut, votre login
+véritable apparaîtra entre crochets à côté du nom falsifié. Ainsi, un
+message dans forum ne peut-il jamais être anonyme. On peut falsifier
+l'en-tête From
par plaisanterie, comme dans l'exemple
+ci-dessous (signé « Monsieur Fernand » mais posté en réalité par
+quelqu'un dont le login est « dupond »), mais sinon c'est considéré
+comme du piratage et c'est Mal.
+
+Auteur: Monsieur Fernand (le.mexicain) [dupond] +Sujet: Re: soiree Boum +Date: Thu Dec 4 13:28:33 2003 + +Dupont, dans le message (alt.bavardage:42), a écrit : +> les whiskys-cocas étaient un peu forts, quand même. + +J'ai connu une polonaise qu'en prenait au petit déjeuner. Faut quand +même admettre que c'est plutôt une boisson d'homme. ++ +
+Le champ Newsgroups
(ou Groupes
en version
+française) indique la liste des contis dans lesquels le message est
+posté. Quand il y a crosspost, l'en-tête
+contient deux groupes, ou davantage.
+
+Le champ Subject
(Sujet
en français) indique
+son... sujet. Indiquer un sujet quand on poste un message est
+obligatoire, comme dans un courrier électronique. Il y a quelques
+règles de bon sens à ce propos : il faut choisir un sujet pas trop
+long, qui décrit bien le message en question (on essaiera de
+s'abstenir de jeux de mots et autres blagues fines &
+subtiles). Non seulement vos lecteurs auront une meilleure idée de ce
+dont vous allez parler, mais ça facilite les recherches ensuite dans
+Forum.
+
+Pour cette raison, il convient de changer le sujet chaque fois qu'il
+ne correspond plus à la discussion (pas trop souvent quand même, sinon
+ça devient pénible). Le changement de sujet obéit à quelques règles
+d'usage (on ne vous fusillera pas si vous ne les respectez pas, mais
+elles sont commodes). Prenons un exemple. La discussion de départ
+porte sur la hausse des prix de l'essence. Le champ
+Subject
ressemble alors à ça :
+
+Subject: Re: prix de l'essence ++ +
+La discussion passe ensuite à la couleur des Schtroumpfs, puis à la +masse des neutrinos. On a alors successivement : +
+ ++Subject: couleur des Schtroumpfs (was: Re: prix de l'essence) ++ +
puis
+ ++Subject: masse des neutrinos (was: Re: couleur des Schtroumpfs) ++ +
+Si vous ne changez pas de sujet, comment pourrez-vous retrouver plus +tard une discussion sur la masse des neutrinos si elle s'appelle +« prix de l'essence » ou « couleur des +Schtroumpfs » ? +
+ + + +
+Le champ Message-ID
donne un identificateur unique au
+message. Tout message de forum, et même, en théorie, de l'Univers des
+news tout entier, peut être repéré par son Message-ID. Dans Flrn, vous
+pouvez vous rendre directement sur le message ayant un ID donné en
+tapant y
(ou \art-msgid
) suivi du numéro en
+question (avec les cornets <> qui l'entourent).
+
+Si vous voulez indiquer un message précis de forum à quelqu'un, songez +à donner le couple message-ID + référence dans le conti. On dira +ainsi : « Va voir aide:1 (alias +<6tbtl0$2as$1@clipper.ens.fr>) ». +
+ +
+L'en-tête Followup-to
est une redirection. Quand on
+indique un groupe dans cet en-tête, ça veut dire qu'on s'attend à ce
+que les réponses soient envoyées dans ce groupe. On utilise d'habitude
+le Followup-to
(abrégé en « fu2 » le plus souvent) en
+combinaison avec un crosspost, voir notre
+page à ce sujet.
+
+Cet en-tête ne se trouve pas dans un message standard. Il se trouve
+uniquement dans des messages bien particuliers, dans un contexte
+particulier. Admettons que vous vous aperceviez d'une erreur dans un
+message à vous, déjà envoyé. Vous pouvez le modifier grâce à une
+manœuvre appelée « supersedes » (d'après le nom de l'en-tête,
+vous allez comprendre). Un supersedes consiste à annuler un message et
+à en reposter un dans la foulée. Il suffit de taper
+\supersedes
sur le message incriminé, puis d'éditer le
+message, et de le poster de nouveau.
+
+Le nouveau message changera de message-ID, ce qui veut dire que s'il
+quelqu'un a répondu entre-temps à votre message non corrigé, le fil de
+la discussion sera brisé : il ne sert à rien de superseder trop
+longtemps après avoir posté. En outre, le nouveau message aura un
+en-tête supplémentaire, Supersedes
:
+
+From dupond@clipper.ens.fr Mon Dec 8 16:02:32 2003 +Article: 42 of ens.forum.divers.www +Path: eleves!not-for-mail +From: dupond@clipper.ens.fr (Pierre Dupond) +Newsgroups: ens.forum.divers.www +Subject: Site tres drole +Supersedes: <123$456789@clipper.ens.fr> +Date: Mon, 8 Dec 2003 15:02:32 +0000 (UTC) +Organization: Forum. +Lines: 7 +Sender: dupond@clipper.ens.fr +Message-ID: <987$654321@clipper.ens.fr> +(...) ++ +
+En anglais, supersedes est la 3e personne du +singulier du verbe to supersede qui veut dire +« remplacer, prendre la place de ». Ce champ veut donc dire : « le +message actuel, dont le message-ID est +<987$654321@clipper.ens.fr>, remplace l'ancien message +<123$456789@clipper.ens.fr> ». +
+ +
+Vous pourrez parfois trouver des en-têtes dont le nom commence par
+« X- » (par exemple, X-Moderators-Note
, ou encore
+X-Supersedes-Reason
). Ce ne sont pas des en-têtes
+standards, et n'ont pas de signification bien définie pour les
+logiciels de lecture des news. Cela signifie que certaines personnes
+dans Forum s'amusent à parsemer leurs messages de tels en-têtes à
+l'attention de ceux qui prendront la peine de les remarquer. Les
+en-têtes qui ne commencent pas par « X- », en revanche, ont une
+signification bien définie, et il ne faut pas les inventer.
+
+Flrn (Forum Like Newsreader) est un lecteur de news +écrit par deux archicubes, Damien Massé et Joël-Yann Fourré, +spécialement pour la lecture de forum, les news +internes de l'ENS. Il peut bien évidemment être également utilisé pour +lire les news extérieures, comme Usenet. +
+ ++Pour aller plus loin que ce tutorial pour débutants, vous pouvez lire +la FAQ des tuteurs sur flrn. +Si au contraire vous êtes tellement débutant(e) que vous bloquez dès la +première instruction du tutoriel ci-dessous, vous pouvez essayer le +tutoriel tout-en-un dont le pdf est téléchargeable +ici. +
+ +Si vous êtes complètement perdu et/ou que vous devez poster un +message de manière urgente, lisez directement le En +Bref. Mais ne vous laissez pas impressionner par le tutorial, il +est très simple... +
+ ++Pour l'utiliser, c'est très simple. Dans un terminal, tapez simplement : +
+ +
+clipper ~ $ forum
+
+
++Vous pouvez également cliquer sur l'icône « Forum ». +
+ ++Apparaîtra alors un écran de ce type (bien sûr, les couleurs choisies +dépendent de votre configuration) : +
+ + + + +
+En haut à gauche, on trouve le nom du groupe (en l'espèce,
+aide
, le groupe consacré à l'aide sur l'utilisation de
+forum et de flrn). À droite, le numéro du message où vous vous
+trouvez, ainsi que le numéro du dernier message du groupe. Ici, nous
+sommes au message n°1 (qui contient traditionnellement une
+mini-charte), et on voit que, lorsque cette capture d'écran a été
+faite, il y avait 1596 messages en tout dans ce groupe. En-dessous se
+trouve le message, divisé en deux parties :
+
+Pour quitter forum, appuyez (au besoin plusieurs fois) sur la touche
+q
.
+
+&icone.attention; Ne quittez pas forum en détruisant la fenêtre dans +laquelle le programme est lancé : les messages que vous avez lus ne seront +pas marqués comme tels, et vous devrez les relire plusieurs fois. +
++Pour lire forum, c'est très simple. Pour faire défiler le message puis +pour passer au message suivant, appuyez sur la barre d'espace. +
+ +
+La lecture se fait dans l'ordre des discussions. Lorsque tous les
+messages du groupe ont été lu, un autre appui sur la barre d'espace
+permet d'aller au prochain groupe (auquel vous êtes abonné) où se
+trouvent des messages non lus. Enfin, lorsqu'il n'y a plus rien à
+lire, il suffit de taper q
pour quitter.
+
+Poster dans forum est très facile. Il est néanmoins conseillé de faire
+ses premiers essais dans le groupe essais
prévu pour ça.
+
+Si vous voulez commencer une nouvelle discussion, utilisez la touche
+m
dans le groupe où vous désirez poster.
+
Flrn vous demandera alors le sujet de votre message. Finissez la
+ligne du sujet en appuyant sur Enter
. Vous arriverez
+alors dans votre éditeur favori. Par défaut, pour la config
+conscrits, c'est pico
.
+
+ En haut se trouveront deux lignes d'entêtes de titre Groupes +et Sujet. Vous pouvez modifier le sujet de votre message si à +la réflexion il ne vous convient pas. +
+ + + ++&icone.attention; Laissez toujours une ligne vide entre la fin de vos +entêtes et le corps de votre message, faute de quoi forum pourra faire +des erreurs et inclure comme entête ce qui ne l'est pas. +
+ +
+Une fois votre message écrit, sauvez-le et quittez l'éditeur (dans
+pico, Ctrl-O
puis Ctrl-X
). Flrn vous laisse
+alors une seconde chance :
+
+(P)oster, (E)diter, (A)nnuler ? ++ +
+Vous pouz donc taper p
pour poster, e
pour
+revenir à l'édition du message avec votre éditeur habituel, ou
+a
pour annuler votre message si vous penez qu'en fait ça
+n'est pas utile.
+
+Vous devez utiliser la touche R
(comme Reply)
+pour répondre au message courant. Ce message doit être dans le groupe
+que vous lisez actuellement pour que vous puissiez y répondre. La
+démarche est la même qu'au-dessus, mais cette fois forum ne vous
+demandera pas de sujet. Bien sûr, vous pourrez toujours modifier le
+titre vous-même une fois que votre éditeur sera lancé.
+
+Certains messages, placés dans un groupe, ont une mention qui indique que +les réponses doivent être postés dans un autre groupe (il s'agit de l'entête +Followup-To). Dans ce cas, forum vous demandera si vous désirez +suivre cette indication. En règle générale, dites « oui ». +
+ ++Il peut arriver aussi que cette mention demande que la réponse au +message soit faite par courrier électronique. forum vous demandera +alors si vous désirez répondre au message par courrier +électronique. La démarche est identique. +
+
+&icone.attention; Quand vous répondez à un message, flrn
+ajoute en lançant l'éditeur l'ensemble du message auquel vous répondez
+sous forme « quotée » (chaque ligne commence par un
+>
). Ne gardez de ces « citations » que la partie
+nécessaire à la compréhension de votre message, en effaçant les lignes
+inutiles, par exemple dans pico
par Ctrl-K
.
+
+Une réponse à un long message qui le reprend dans son intégralité et +rajoute simplement une ligne est inutile et particulièrement mal vue, +sur forum comme sur Usenet (où on vous accusera, selon l'expression +consacrée, de « quoter comme un goret »). D'autre part, la convention +veut que la réponse se place après le message cité et +non avant, pour des questions de lisibilité. Toutes les explications +sont fournies dans l'excellente FAQ « L'art +et la manière de répondre sur Usenet ». Sa lecture est quasiment +indispensable. +
+
+Être abonné à un groupe signifie que vous demandez à forum de lire les
+messages de ce groupe. La touche l
permet d'avoir la
+liste des groupes auxquels vous êtes abonnés. Cette liste montre un
+menu. Vous pouvez vous déplacer dans ce menu avec les flèches et
+quitter ce menu avec la touche q
. Pour chaque groupe,
+vous pouvez demander à vous désabonner au groupe en tapant
+D
.
+
+La touche L
donne la liste de tous les groupes. Elle
+présente successivement deux menus. Dans le premier (groupes auquels
+vous êtes abonnés, ou dont vous avez déjà lus certains messages), vous
+pouvez vous abonner ou vous désabonner à un groupe avec les touches
+respectives A
et D
. Dans le second groupe,
+vous ne pouvez que vous abonner à un groupe avec la touche
+A
(vous êtes par défaut désabonné à tous les groupes).
+
+Vous pouvez restreindre la liste des groupes en donnant une
+sous-chaîne du nom du groupe au moment où vous tapez la commande. Par
+exemple, taper L
suivi de lettres
donnera
+juste la liste des groupes dont le nom groupeent 'lettres'.
+
Taper A
ou D
suivi d'Enter dans
+un groupe vous abonne/désabonne au groupe courant. Y
+ajouter un argument (par exemple biologie
) permet de vous
+abonner/désabonner au groupe dont le nom contient cet argument. S'il y
+a ambiguité, forum vous proposera un menu, il vous suffira de choisir
+le groupe par la touche Enter.
+ | ? ou h |
+afficher un menu d'aide | +
Déplacement dans une discussion | +Flèche gauche | +Va au « père » du message | +
---|---|---|
Flèche droite | +Va sur un des « fils » du message (cf. arbre de la discussion) | +|
Flèche haut/bas | +Va sur un des « frères/cousins » du message (cf. arbre de la +discussion) | +|
Déplacement dans un groupe | +Enter | +Va au message de numéro suivant | +
p |
+Va au message de numéro précédent | +|
Un numéro n | +Va au message de numéro n | +|
r |
+Montre sous forme d'un menu les messages autour du message courant | +|
Déplacement dans les derniers messages regardés |
+B |
+Va au précédent message regardé (recule dans l'historique) | +
F |
+Revient d'une touche B (avance dans l'historique) |
+|
H |
+Montre l'historique sous forme de menu | +|
Divers | +e |
+Efface le message courant (s'il est de vous) | +
+La commande r
peut prendre divers arguments. En
+particulier :
+
r-
donne un menu de tous les messages du groupe.r<>
donne un menu comportant les messages de
+la discussion courante (mais il est préférable de taper, pour un
+résultat mieux présenté, \summ-thread
).
+On peut se réferer à l'aide de flrn
pour avoir une description
+complète des commandes et de la façon des les utiliser.
+
pico
. Si votre
+configuration est plus vieille, vous vous retrouverez face à l'éditeur
+intégré de flrn
...
++Si vous êtes perdu et/ou pressé, suivez pas à pas ces instructions qui +vous permettront de poster très rapidement. Mais n'oubliez pas de lire +le reste du tutorial ensuite. Si vous êtes arrivé dans cette École, ce +n'est pas en suivant bêtement des instructions sans comprendre... +
+ + Pour l'exemple, admettons que vous vouliez annoncer dans
+petites-annonces
la perte de votre écharpe à la
+K-fêt.
forum
dans
+une fenêtre)G
. Vous voyez apparaître en bas de l'écran (GOTO)
+:
, tapez alors petites-annonces
. Vous vous
+retrouvez ensuite dans ce groupe.m
puis
+Enter
. Vous voyez apparaître deux lignes, l'une commence
+par « Groupe » et l'autre par « Sujet ». Votre
+curseur est après « Sujet ». Tapez le sujet de votre
+message. Vous voyez apparaître des lignes comme
+« Followup-To: », ou encore « X-Trace », ce sont des
+« champs ». N'y touchez pas. Faites descendre votre curseur au
+maximum (soit 1 ligne après le dernier champ). Écrivez votre
+message. Quand vous avez fini, tapez Ctrl-X
+puis Y
et
+Enter
.(P)oster, (E)diter, (A)nnuler
+?
. Tapez P
pour « poster ».
+Voilà, vous venez d'envoyer votre premier post sur
+forum. N'oubliez pas que normalement, vous êtes censé faire vous
+entraîner dans le groupe essais
avant de poster dans des
+groupes sérieux...
+
+La configuration de flrn
est dans le fichier
+.flrnrc
sur votre compte. Les modifications pas trop
+difficiles à faire sont mises en commentaire.
+
+Un second fichier, le fichier .flrnkill.forum
, est le
+kill-file de flrn
. Il peut être modifié pour
+indiquer par exemple que vous ne pouvez plus lire les messages de
+quelqu'un. On pourra lire l'aide de flrn
pour de plus
+amples renseignements.
+
+Forum est un système de messagerie interne aux élèves et anciens +élèves de l'ENS. Par son organisation et son fonctionnement, il +est très proche des news. La différence +principale réside dans le fait que sa diffusion est limitée aux élèves +de l'ENS. +
+ ++Forum est géré par le Compte Forum, dépendance des Gourous, pour l'aspect +technique. Mais ce sont les élèves qui décident du reste : +création de nouveaux groupes (appelés « contis » pour des raisons +historiques), gestion du blast, et +bien sûr, trafic de forum. Il ne dépend que de vous que forum soit +animé ou pas ! +
+ ++Pour écrire au Compte Forum, c'est simple : forum@clipper.ens.fr. +Si vous souhaitez faire partie du Compte Forum, pour maintenir le +bouzin ou tout changer, il faut également envoyer un mail, vu que le +recrutement se fait +par cooptation. +
+ + ++On peut trouver beaucoup de choses dans forum (selon les contis +lus) : +
+ +annonces
à proprement parler,
+annonces.petites-annonces
,
+annonces.seminaires
et
+annonces.theses
). Forum est, tout comme le BOcal, une solution
+alternative au mail collectif. Lire les groupes annonces ne vous
+coûtera pas beaucoup de temps par jour et vous permettra de vous tenir
+informés de la vie de l'École. C'est
+indispensable.+Vous n'êtes pas obligé de lire tout forum. Nous vous +conseillons de vous abonner d'abord aux groupes d'annonces, puis à +quelques groupes sérieux, avant d'essayer, si vous le souhaitez, les +groupes de bavardage.
+ ++Forum peut se lire avec n'importe quel lecteur de news. Sont +disponibles à l'École : +
+ +flrn
,
+slrn
...knode
,
+ Mozilla Thunderbird...Gnus
, le lecteur de news intégré à l'éditeur Emacs.
+Notons également l'apparition dans la config conscrit 2008 d'un lecteur avec
+interface graphique, mais se voulant le plus compatible possible avec
+flrn
: forum-gtk
. Ce programme est encore en
+développement, mais vous pouvez l'essayer dans les salles informatique de
+l'ENS.
+
+Parmi tous ces lecteurs de news, deux sont prévus spécifiquement pour +la lecture de forum. C'est le cas du webforum, interface +Web de forum. Pour des raisons de sécurité, il faut un certificat pour y +accéder. Vous devrez donc en demander un auparavant. C'est le moyen +idéal pour lire forum si vous souhaitez vous cantonner à la lecture des +annonces et ne vous abonner qu'à quelques groupes à faible activité. +
+ +
+Flrn a été conçu par deux archicubes, Damien
+Massé et Joël-Yann Fourré. Il est spécifiquement destiné à la lecture
+de forum, comme son nom l'indique (Forum Like
+Newsreader). Si vous n'êtes pas déjà habitué à un autre lecteur
+de news, nous vous conseillons d'adopter flrn
. C'est lui
+qui se lance avec la commande forum
sur les machines de l'école.
+Flrn vous permettra également de lire les news extérieures, comme Usenet.
+
+Pour savoir comment utiliser flrn, lisez le tutorial flrn. La FAQ des tuteurs sur flrn pourra +vous être également utile. Enfin, vous pouvez imprimer le Guide de survie +dans forum, qui résume en une page les principales commandes +utiles.
+ +
+Le logiciel de courrier électronique de la suite Mozilla,
+Thunderbird, dispose d'une fonction Newsgroups. Pour lire forum avec,
+indiquez clipper.ens.fr
comme nom de serveur de news, et
+2019 comme numéro de port du serveur.
+
+Vous pouvez utiliser n'importe quel lecteur de news de votre choix. Il +y en a une foultitude. En voici quelques-uns (le lien sur le nom du +logiciel correspond à la page officielle de celui-ci) : +
+ +Nom | OS | Remarques | +
---|---|---|
Mozilla +Thunderbird | Windows, Mac OS X, Linux | Voir +ci-dessus. + | +
Outlook +Express | Windows, Mac OS | Le lecteur de +mail et news livré avec (certaines versions de) Windows. Cf. la page des +WinTuteurs pour le configurer, il est impératif d'installer aussi OE-Quotefix, +un correctif qui facilite l'écriture et la lecture des news. | +
MesNews | Windows | Logiciel +écrit par un français, disponible en français. | +
Free +Agent | Windows | Version gratuite du logiciel +commercial Forté Agent. Disponible en français. | +
+Voici les documentations à votre disposition : +
+ + Il existe un autre système de news locales, c'est Yaf. À la
+différence de Forum, Yaf est totalement et complètement anonyme. Vous
+pouvez y poster sous tous les noms que vous voulez, y compris celui de
+votre voisin. Pour y accéder, il faut avoir un compte sur le
+quatramaran
et taper yaf
.
+
+Il reste encore le mur
, bas-fonds de la glauquitude
+sallessienne... C'est une sorte de mur virtuel sur lequel vous pouvez
+tagguer tout ce qui vous passe par la tête.
+
+Contrairement à ce que vous pourriez croire, la plupart des contis de +Forum sont modérés. Il existe deux types de modération : une +modération classique et une particularité de l'ENS, le blast. +
+ +
+Il y a deux contis modérés dans Forum, ens.forum.annonces
+et ens.forum.syst.annonces
. Le premier contient des
+annonces diverses, il a pour but de remplacer partiellement le courrier
+collectif. Il est indispensable de lire au moins celui-là si vous
+voulez vous tenir au courant de ce qui se passe à
+l'ENS. ens.forum.syst.annonces
est beaucoup plus
+technique : il est consacré aux annonces liées au système informatique
+des élèves, en particulier aux annonces d'installation de programme.
+
+Dans ces deux cas, on ne veut pas que des discussions soient tenues +dans ces contis : il faut les garder lisibles, avec un trafic +faible. C'est ce qui explique la modération. +
+ +
+Quand vous postez un message dans annonces
+(syst.annonces
, de par son objet, est réservé au SPI et aux Gourous), votre message
+n'apparaît pas tout de suite dans le conti, contrairement à ce qui se
+passe d'ordinaire. Flrn vous dira par exemple :
+
+Vous postez dans un groupe modéré : il peut se passer un +certain temps avant que votre message n'apparaisse. +Appuyez sur une touche pour envoyer le message, ^C pour annuler. ++ +
+En fait, quand vous postez, votre message est envoyé par mail au
+Compte Forum, qui s'occupe du filtrage. Si celui-ci juge que votre
+message a sa place dans le conti où vous l'avez envoyé, il le poste de
+nouveau, et tout le monde pourra lire votre message. Sinon, il ne le
+poste pas. Le Compte Forum peut aussi rediriger, le cas échéant, votre
+message : par exemple si vous postez dans annonces
une
+annonce de séminaire, votre message sera redirigé dans
+annonces.seminaires
.
+
annonces
+Il existe une règle à respecter pour poster correctement dans
+annonces
: il faut faire ce qu'on appelle un « crosspost
++ fu2 », c'est-à-dire poster aussi dans un autre groupe, et rediriger
+dans cet autre groupe. Le principe est le suivant : on ne tient pas de
+discussions dans annonces
, mais on ne veut pas décourager
+les discussions pour autant... Les discussions partiront donc dans le
+2e conti.
+
+Exemple : vous postez un message d'annonces à propos d'une AG du
+COF. Vous allez donc crossposter dans ens.forum.annonces
+et ens.forum.cof
, et mettre un followup vers
+ens.forum.cof
. Ce qui veut dire que tout le monde lira
+l'annonce, et que ceux qui veulent pourront en discuter dans le conti
+approprié.
+
+Le blast est un système de modération qui a été adopté sur forum en
+2000. C'est un dispositif qui protège les contis « sérieux » (ceux qui
+ne commencent pas par alt.*
). Il s'agit d'éviter que des
+discussions non sérieuses ou hors-sujet aient lieu dans des groupes
+sérieux, ce qui pourrait gêner les autres contributeurs.
+
X-Censorship
au message incriminé. De plus, un certain
+nombre de personnes pensent que la censure ne remplit pas bien son
+rôle. Après bien des débats dans syst.forum
, c'est le
+principe du blast qui est adopté.
+
+Le mécanisme est simple : blaster un message, c'est le déplacer dans
+un conti spécial appelé alt.blast
(pour des précisions
+techniques, lisez sur clipper
le fichier
+/var/forum/blastd/00README
). Si on n'est pas abonné à
+alt.blast
, c'est comme si ce message n'avait jamais
+existé. On ne blaste pas n'importe comment, il existe des règles :
+
alt.*
. Ce serait
+un non-sens : le blast ne protège que les groupes sérieux.
++Tout le monde n'a pas le droit de blaster. Peuvent blaster 3 +catégories de personnes : +
+ +e
avec Flrn)
+Les modérateurs sont choisis par volontariat : il suffit de demander
+au Compte Forum à être modérateur d'un conti, et sauf si le reste de
+Forum réuni hurle « Non ! », vous deviendrez modérateur. Vous pouvez
+modérer un ou plusieurs contis, et chaque conti peut avoir un ou
+plusieurs modérateurs. Le seul réquisit est de lire régulièrement le
+conti que l'on veut modérer. La liste des modérateurs se trouvent sur
+clipper : /var/forum/blastd/proprio
(c'est un simple
+fichier texte, lisible avec less
par exemple).
+
+Si vous êtes modérateur et que vous utilisez Flrn, vous avez tout intérêt à faire comme tout
+le monde et à associer la touche Z
au blast. Éditer votre
+fichier .flrnrc
(nedit .flrnrc
par exemple)
+et ajoutez la ligne suivant :
+
+name forum bind Z pipe-header Message-ID: /opt/gourous/forum/bin/simpleblast ++ +
+Ensuite, appuyer sur la touche Z
blastera le message que
+vous êtes en train de lire. Appuyer sur >Z
blaste le
+message que vous êtes en train de lire et tous ses descendants (à
+utiliser avec précaution). D'abord, le Blast Dæmon vous saluera :
+
+200 I am the Almighty Blast Daemon. Who are you, and why do you seek me? ++ +
+Puis il effectuera une vérification dans la liste des modérateurs pour +voir si vous êtes autorisé à blaster ce message. Si c'est le cas, il +vous fera une proposition un peu légère : +
+ ++250 Nice shoes, <login>. Wanna fuck? ++ +
+Puis, pour chaque message à blaster, si le blast est réussi, vous +verrez : +
+ ++208 BANG! It's DEAD! ++ +
+Son travail terminé, le Blast Dæmon vous dira au revoir : +
+ ++205 Well, thanks for dropping in. Seeya. ++ +
essais
avant de
+blaster réellement.
+alt.blast
.+Globalement, les règles de la Nétiquette (c'est-à-dire, les règles de +courtoisie applicables à Internet), et plus particulièrement ceux en +usage sur les news +s'appliquent également sur forum. Il y a néanmoins quelques règles +spécifiques. Nous vous récapitulons ici les points les plus importants. +
+ ++Ce sont des humains en face de vous. Ne soyez pas agressif ou méchant +gratuitement tout ça parce que vous ne voyez pas votre +interlocuteur. Souvenez vous qu'à l'écrit, il est plus difficile de +repérer du second degré. Utilisez des smileys pour indiquer les passages +de vos messages à prendre au second degré si ce n'est pas évident. Par +exemple, « :-) » est le smiley générique, que les nouvelles +générations tendent à écrire « :o) » à la place, et certains +préfèrent « :) ». Le smiley « ;-) » signale un clin +d'œil. +
+ +
+Forum est un lieu de débats, d'échange de connaissances, mais aussi un
+lieu où se retrouvent des habitués, une sorte de K-fêt virtuelle. Il est
+naturel, quand vous découvrez Forum, d'avoir l'impression d'un groupe de
+gens un peu fermé, avec leur private jokes à eux. Il ne
+s'agit pas d'éloigner les nouveaux, ne vous sentez pas offensé, vexé ou
+exclu. Soyez tolérant et ne hurlez pas à chaque private
+joke que vous voyez passer. Soyez conscient aussi que les
+contis alt.*
sont très, très susceptibles de contenir
+des private jokes.
+
+Si on vous demande (cf. infra) de faire des efforts +d'orthographe, inversement ne vous transformez pas en censeur +ronchon : ne signalez pas la moindre faute de grammaire ou +d'orthographe qui passe. Souvent, ce sont des fautes d'inattention, +des lapsus, des erreurs de frappe. On ne s'attend pas non plus à ce +qu'un message de forum soit écrit en français littéraire. +
+ +
+Ne signalez (exclusivement dans le conti
+lettres.orthographe
) que les fautes qui vous semblent être
+de vraies fautes : par exemple « license » au
+lieu de « licence », « tord au lieu de tort »,
+etc. Soyez conscient aussi qu'il y a de véritables marronniers, par
+exemple l'orthographe de l'expression « au temps pour moi »,
+les gens en ont assez à force.
+
+Si vous postez sur Forum, c'est pour être lu. C'est donc à vous de +faire des efforts pour que votre message soit clair et agréable à +lire. La plupart des règles de forme que nous donnons ci-dessous +découlent de cette règle de fond. Un message difficile à lire (trop de +citations, formatage bizarre, message trop compact, trop de fautes +d'orthographe) est un message qui ne sera pas lu par grand monde. De +plus, vous irriterez vos lecteurs pour rien. +
+ ++Ne tentez pas de fausser le champ « From » de vos messages +pour vous faire passer pour quelqu'un d'autre. Ce serait un acte de +piratage, et le piratage c'est Mal. +
+ +
+Lorsque vous répondez à un message, n'en citez que ce qui est
+nécessaire à la bonne compréhension de votre réponse. Surtout, ne
+laissez pas de lignes citées inutiles par paresse, c'est très
+désagréable pour le lecteur. Si votre éditeur est Pico, utilisez
+Ctrl+K
pour couper les lignes superflues.
+
+De même, placez votre réponse sous la partie du message cité à +laquelle vous répondez. +Une FAQ écrite pour Usenet, « l'art +et la manière de répondre sur Usenet » explique bien le pourquoi +de ces règles. +
+ ++Contrairement à ce qui se passe sur les news, il n'est pas d'usage sur +forum de signer ses messages. Si vous voulez vraiment signer (par +exemple si vous voulez signer « Trucmuche, qui trouve ça amusant » ou +quelque chose comme ça), faites-le alors la façon correcte est +d'introduire votre signature par « -- », c'est-à-dire deux signes +moins SUIVIS D'UNE ESPACE, et ça tout seul sur une ligne. Cela permet +à flrn ou d'autres programmes de formater correctement la signature. +
+ +Ne signalez pas les fautes d'orthographe des autres en-dehors du +conti lettres.orthographe (et encore). +
+ ++Par respect pour vos lecteurs, faites l'effort d'utiliser un langage +clair et compréhensible par tous. On ne vous demande évidemment pas de +parler comme dans un livre, mais essayez d'avoir une syntaxe, une +orthographe et une ponctuation décentes. Essayez de limiter les +anglicismes, les abréviations absconses façon « IDHTBIFOM » (ça veut +dire « I don't have the book in front of me », « je n'ai pas le livre +sous la main » en français, pas évident, n'est-ce pas ?). N'utilisez +pas le langage phonétique façon SMS. +
+ ++Par convention, sur Internet, utiliser des majuscules revient à +CRIER. Si vous postez un message entièrement en majuscules, on vous +répondra sans doute d'arrêter de crier, ou de parler moins fort. Vous +disposez d'autres moyens pour mettre en valeur vos propos : on +représente l'italique *comme ceci*, le souligné _comme cela_. +
+ ++N'abusez pas non plus des signes de ponctuation comme le point +d'interrogation ou le point d'exclamation, des smileys ou des autres +« LOL », « ROTFL » ou « MDR ». Un message +avec plein de « LOL!!!!!!!!!!!! :-) :-) :-) » n'est pas très +intéressant... Passez-vous votre temps à glousser bêtement dans la +vie ? Alors ne le faites pas sur Forum. +
+ ++Limitez la longueur de vos lignes à environ 70 caractères. Si vous +utilisez l'éditeur Pico, il devrait le faire automatiquement (pensez à +Control-J pour reformater vos paragraphes). De même, songez à aérer +votre texte en sautant des lignes entre les paragraphes. +
+ ++Un crosspost, c'est le fait de poster simultanément dans plusieurs +groupes. Un followup, c'est une redirection. Pour plus d'explications, +voir la page qui leur est consacrée. +
+ ++Faire un crosspost sans followup est souvent générateur de bazar : la +conversation devient rapidement hors-charte dans l'un des groupes, il +est difficile ensuite de la restreindre à un seul groupe. Mieux vaut +donc éviter. +
+ + + + + diff --git a/src/internet/forum/snap_aide.png b/src/internet/forum/snap_aide.png new file mode 100644 index 0000000..465a575 Binary files /dev/null and b/src/internet/forum/snap_aide.png differ diff --git a/src/internet/forum/snap_post.png b/src/internet/forum/snap_post.png new file mode 100644 index 0000000..47086ca Binary files /dev/null and b/src/internet/forum/snap_post.png differ diff --git a/src/internet/forum/table.tml b/src/internet/forum/table.tml new file mode 100644 index 0000000..a632f7f --- /dev/null +++ b/src/internet/forum/table.tml @@ -0,0 +1,616 @@ + + + + +
+Tous les contis de Forum (exceptés deux
+groupes spéciaux appelés control
et junk
+qu'on ne lit pas, et exceptés les groupes qui n'ont rien à voir avec
+l'ENS et ne servent qu'à recevoir des copies de listes de diffusion)
+ont un nom qui commence par ens.forum
. Ce début ne sert
+qu'à identifier les groupes comme faisant partie du Forum de l'ENS, et
+on peut l'omettre dans pratiquement toutes les situations.
+
+Les noms des contis sont constitués d'éléments séparés par des points
+(par exemple,
+ens.forum.alt.bavardage.deprime.traceroute
). Ils forment
+donc une hiérarchie thématique dont le détail doit beaucoup au hasard
+des demandes de création, et n'est pas toujours aussi systématique
+qu'on le voudrait. Il y a actuellement plus de 250 contis en
+ens.forum
.
+
+Les contis sont regroupés en hiérarchies : +
+ +Les contis relatifs aux sciences (11 groupes : chimie dans
+sciences.chimie
, maths dans sciences.maths
,
+linguistique dans sciences.linguistique
, informatique
+théorique dans sciences.informatique
, etc.). Le conti
+ens.forum.sciences
(sans rien après) existe (mais est peu
+utilisé).
+
Les contis relatifs aux lettres (5 groupes). Cette hiérarchie
+est malheureusement encore sous-utilisée (par manque de littéraires
+dans forum), mais on espère que cela changera. Au-delà de
+ens.forum.lettres
tout court, il existe
+lettres.langue
pour discuter de questions générales de langue,
+lettres.poesie
consacré à la poesie,
+lettres.philo
consacré à la philosophie et
+lettres.orthographe
consacré à l'orthographe. Pour des
+raisons, hé, hé, historiques, le conti « histoire » est séparé de la
+hiérarchie lettres.
+
+Le conti ens.forum.langues
et ses petits frères
+langues.anciennes
et langues.vivantes
ont pour thème
+des questions linguistiques générales. Les discussions les plus techniques
+pourront se tenir dans ens.forum.sciences.linguistique
. Il existe
+également un conti ens.forum.divers.traductions
pour les questions
+les plus pratiques.
+
Tout ce qui concerne l'informatique en pratique (36 groupes :
+cryptographie dans informatique.crypto
, utilisation des
+éditeurs de texte dans informatique.editeurs
, discussions
+sur Linux dans informatique.os.linux
et ainsi de suite).
+Le conti ens.forum.informatique
(tout court) existe et
+regroupe beaucoup de discussions hétéroclites qui n'ont pas leur place
+dans une autre branche de la hiérarchie informatique. En revanche,
+les discussions vraiment théoriques sur l'informatique comme science
+(p.e. l'algorithmique) se placent dans le groupe
+sciences.informatique
plutôt que dans cette hiérarchie.
+
+Ce qui concerne les prestations informatiques à l'ENS (17 groupes).
+ens.forum.syst
est le plus général et est lu notamment
+par le SPI (ce qui ne signifie
+pas qu'un message dans forum syst
dispense d'écrire au
+SPI pour signaler que quelque chose ne va pas !) ;
+syst.gourous
regroupe les annonces des nouveaux
+programmes installés par les Gourous (et les doléances à
+ce sujet), et ainsi de suite. En particulier, syst.forum
+concerne le fonctionnement de forum lui-même.
+
Cette hiérarchie (10 groupes) est celle du bureau des élèves de
+l'École, le COF, et de ses
+différents clubs (cof.as
, cof.bdtheque
,
+cof.annuaire
...).
+
Différents loisirs (24 groupes : loisirs.jeux
,
+loisirs.cirque
, loisirs.musique
,
+loisirs.sports
...).
+
4 groupes ; annonces de séminaires, de thèses, petites annonces.
+Le groupe ens.forum.annonces
existe et est modéré par le Compte
+Forum (c'est-à-dire que seuls les messages approuvés par le Compte Forum seront
+postés), de façon à limiter son volume. Y sont parfois (mais rarement)
+redirigés certains mails collectifs. Il est vivement recommandé de le lire.
+
Ce groupe figure tout seul car on n'a pas pu se mettre d'accord sur +le fait que l'histoire était une branche des lettres ou des sciences. +
+ +4 groupes ; c'est là qu'on postera les questions relatives à la
+scolarité à l'ENS (« Passer l'agreg est-ce une bonne idée ? » dans
+scolarite.agreg
par exemple), ainsi que les discussions
+sur les divers conseils de l'école (scolarite.ca-ce-cs
).
+
+Ce conti accueille les discussions sur l'ENS, ses locaux (mais il existe
+aussi ens.forum.cof.dg
), son personnel, sa gestion,
+sa politique, ses institutions, ses personnages, son histoire...
+
Cette hiérarchie de 13 groupes est le lieu où se déroulent de
+nombreux débats, souvent très vifs, au sujet de la société
+(discussions politiques dans societe.politique
par
+exemple).
Cette hiérarchie archivée (de 126 groupes), dans laquelle on ne +peut que lire et non poster, contient les messages de forum antérieurs +à la rentrée 1998 (date à laquelle le système tout entier de forum a +été repensé par Damien Massé, Thomas Pornin, Joël-Yann Fourré et +d'autres). L'intérêt de cette hiérarchie est de permettre de +retrouver d'anciens messages. (Certains messages encore plus anciens, +antérieurs, en gros, à 1990, sont accessibles seulement avec un +programme différent appelé « oldforum ».) +
+ ++Comme son nom l'indique, ce groupe est destiné aux discussions concernant +les anciens élèves. Ce qui ne veut pas dire qu'on ne croisera pas d'anciens +élèves ailleurs, loin de là ! +
+ +
+Cette hiérarchie contient 14 groupes, elle regroupe tout ce qui ne
+tient pas ailleurs. Le groupe ens.forum.divers
tout
+court sert lorsqu'on aborde un sujet sérieux mais qu'on ne sait pas où
+le ranger (si le sujet n'est pas sérieux, voir
+alt.bavardage
à la place).
+
Cette hiérarchie « alternative » contient les (75) groupes moins sérieux de
+forum. Selon certains c'est la meilleure ; en tout cas c'est assurément la
+plus drôle.
+La sous-hiérarchie alt.bavardage.*
(31 groupes) est, comme son nom
+l'indique, un lieu de bavardage incessant et peu thématique ; on y trouve un
+échantillon assez impressionnant d'humour normalien, de jargon salle-S-sien et
+de private jokes parfois tellement private
+que même ceux qui les font ne les comprennent pas. Vous pouvez par exemple
+pousser vos coups de gueule dans alt.bavardage.deprime
, insulter
+les gens dans alt.bavardage.insultes
, ou parler de tout et de rien
+dans alt.bavardage.
+
Le reste de la hiérarchie alt.*
est moins orienté
+« discussion » mais très hétéroclite. Un groupe comme
+alt.questionaze
— où l'on pose sans honte les questions les
+plus saugrenues — aurait plutôt sa place dans divers.* ; le groupe
+alt.tetratomie
est l'endroit des coupages de cheveux en quatre ;
+si vous n'avez pas peur des jeux de mots idiots, ils regorgent dans
+alt.jeux.de.mots.nasczes
; le groupe alt.koans
est
+destiné à une forme d'humour assez conceptuelle, vous pouvez pratiquer des jeux
+littéraires dans des contis comme alt.alexandrins
ou
+alt.disparition
, organiser des sorties dans
+alt.forumifications
ou encore raconter votre vie dans
+alt.journal
. Mais surtout, surtout, n'allez pas dans
+alt.teslacorp
avant d'être préparé au pire (et notamment de savoir
+ce qu'on entend par « teslacorp »).
+
aide
, essais
, bienvenue
et sommaire
+Deux contis importants ne sont dans aucune hiérarchie : il s'agit de
+aide
et de bienvenue
. Il s'agit des contis
+regroupant les messages destinés à aider à l'utilisation de forum.
+
+Le conti essais
sera votre bac à sable quand vous expérimenterez
+une nouvelle fonctionnalité de votre lecteur de news, quand vous apprendrez
+une nouvelle pratique technique de forum.
+
+Quand au conti sommaire
, il contient peu de messages en raison des règles
+contraignantes qui en régissent la rédaction. Il est destiné à accueillir des résumés et des
+références à certaines discussions auxquelles on aimerait pouvoir se référer
+plus tard. Signalons au passage l'existence de la commande forumsearch
,
+qui sert à retrouver un message à partir de son contenu.
+
+Voici la liste exhaustive de tous les groupes sérieux de forum existant en novembre 2010. +Les contis sont classés par ordre alphabétique. On donne d'abord le nom du +conti, puis une courte description. +
+ +Nom | Description | +
---|---|
ens.forum.aide | Aide concernant forum et Flrn | +
ens.forum.annonces | Annonces en tout genre, remplace le +courrier +collectif (groupe modéré par le Compte Forum). | +
ens.forum.annonces.petites-annonces | Petites annonces +(achat/vente, objets perdus ou trouvés, petit cours, jobs, etc.) | +
ens.forum.annonces.seminaires | Annonces de cours, +colloques, rencontres, séminaires d'élèves. | +
ens.forum.annonces.theses | Annonces de soutenance de +thèse, de DEA, de magistère... et des pots qui vont avec. | +
ens.forum.archicubes | Questions relatives aux anciens élèves. | +
ens.forum.bienvenue | Messages de bienvenue et +d'explications sur forum. | +
ens.forum.cof | Le COF +(association des élèves) et ses clubs. | +
ens.forum.cof.annuaire | L'Annuaire des +élèves. | +
ens.forum.cof.as | L'Association sportive +et les différents clubs de sport. | +
ens.forum.cof.bdtheque | La BDthèque de l'ENS, et la BD +en général. | +
ens.forum.cof.bocal | Le BOcal, l'hebdomadaire écrit +par et pour les élèves. | +
ens.forum.cof.dg | La Délégation générale, les DGs, +et plus particulièrement le thurnage. | +
ens.forum.cof.k-fet | La K-fêt des +élèves. | +
ens.forum.cof.mega | Le Méga, le week-end +d'intégration des conscrits. | +
ens.forum.cof.plaquette | La plaquette de présentation du COF. | +
ens.forum.cof.soirees | Les soirées + organisées à l'École et le club Boum. | +
ens.forum.divers | Tout ce qui n'a pas place ailleurs. | +
ens.forum.divers.actualite | Discussions sur l'actualité +qui ne trouvent pas de place ailleurs. | +
ens.forum.divers.aumonerie | Informations concernant les +différentes aumôneries présentes à l'École (talas, talos, etc.). | +
ens.forum.divers.biblio | Ressources bibliographiques, entre-aide dans la recherche d'articles. | +
ens.forum.divers.bonnes-adresses | Échange de bonnes +adresses : restaus, fournisseurs, mais aussi médecins ou +libraires. | +
ens.forum.divers.encyclopedies | Wikipedia, encyclopédies et autres choses dans le genre. | +
ens.forum.divers.lectures | Conseils de lecture, opinions +et mises en garde sur tous les types de livres. | +
ens.forum.divers.news | Tout ce qui concerne les news extérieures (Usenet) +et les lecteurs de news. | +
ens.forum.divers.telecoms | Discussions au sujet de la +téléphonie fixe ou mobile, mais aussi concernant le corps des Télécoms... | +
ens.forum.divers.traductions | Demandes d'aide pour la +traduction de mots ou expressions étrangers. | +
ens.forum.divers.transports | Le vélo, le train, l'avion, etc. | +
ens.forum.divers.vie-pratique | Questions pratiques sur la +vie de tous les jours (d'une marque de lessive à la manière de changer +une ampoule). | +
ens.forum.divers.vie-pratique.finances | Finances +personnelles (problèmes avec sa banque, voyages à l'étranger, choix +d'une carte, etc.) | +
ens.forum.divers.www | Discussions au sujet du Web. C'est +là qu'on donne des URLs utiles, drôles, instructives... | +
ens.forum.essais | Conti pour faire des essais : +s'entraîner à poster, essayer un nouveau gadget de son lecteur de +news... | +
ens.forum.histoire | Discussions historiques de toutes natures. | +
ens.forum.informatique | L'informatique en général. | +
ens.forum.informatique.bureautique | Tableurs, traitements de texte, logiciels de présentation. | +
ens.forum.informatique.crypto | Questions de cryptographie, +cryptologie et cryptanalyse. | +
ens.forum.informatique.editeurs | Questions sur les +éditeurs de texte. | +
ens.forum.informatique.editeurs.emacs | L'éditeur Emacs sous toutes ses +formes : GNU Emacs, XEmacs... | +
ens.forum.informatique.editeurs.vi | L'éditeur vi et ses +dérivés : vim, +gvim... | +
ens.forum.informatique.graphisme | Traitement d'images, +logiciels comme Gimp, Photoshop, +etc. | +
ens.forum.informatique.html | Questions concernant les +langages du Web : HTML mais aussi les feuilles de style, +le XML, le JavaScript... | +
ens.forum.informatique.internet | Aspects techniques de +l'Internet (TCP/IP, IPv6, +etc.). | +
ens.forum.informatique.lang | Les langages de programmation +en général. | +
ens.forum.informatique.lang.c | Le langage C. | +
ens.forum.informatique.lang.c++ | Le langage C++ | +
ens.forum.informatique.lang.caml | Le langage Caml et toutes ses variantes. | +
ens.forum.informatique.lang.fortran | Le langage Fortran. | +
ens.forum.informatique.lang.java | Le langage Java. | +
ens.forum.informatique.lang.perl | Le langage Perl. | +
ens.forum.informatique.lang.python | Le langage Python. | +
ens.forum.informatique.lang.sql | Le langage de requêtes +SQL, voire sur les bases de données en général. | +
ens.forum.informatique.libre | L'informatique libre : propagande, questions politiques, +déontologiques, choix des licences, etc. | +
ens.forum.informatique.mail | Le +fonctionnement du courrier +électronique, ainsi que les sujets associés (par exemple le spam). | +
ens.forum.informatique.materiel | Le choix +de matériel informatique. | +
ens.forum.informatique.mobile | Téléphones mobiles, PDA, etc.. | +
ens.forum.informatique.mozilla | Les logiciels +de la Mozilla Foundation : la suite Mozilla, +Mozilla +Firefox, Mozilla +Thunderbird, etc. |
ens.forum.informatique.os | Les systèmes +d'exploitation en général. |
ens.forum.informatique.os.bsd | Les systèmes dérivés de la +branche BSD d'Unix : FreeBSD, NetBSD, OpenBSD, ainsi que +Darwin. |
ens.forum.informatique.os.linux | Le système GNU/Linux |
ens.forum.informatique.os.macos | Le +système Mac OS, y compris Mac OS X. |
ens.forum.informatique.os.microsoft | MS-DOS et à toutes +les moutures de Windows. |
ens.forum.informatique.os.unix | Unix, +ses variantes et ses descendants. |
ens.forum.informatique.postscript | Le format/langage +PostScript, EPS et les sujets apparentés. |
ens.forum.informatique.shell | Discussions sur les shells +sous Unix |
ens.forum.informatique.tex | Fonctionnement de Tex et de +LaTeX. |
ens.forum.informatique.typo | La typographie et ses règles. |
ens.forum.informatique.unicode | Le jeu de caractères +universel Unicode, et les jeux +de caractères informatique en général. |
ens.forum.informatique.video | Video numérique, encodages, logiciels, etc. |
ens.forum.informatique.x11 | X11, l'interface graphique +des machines Unix. |
ens.forum.langues | Les langues, leur apprentissage, leurs relations, etc. |
ens.forum.langues.anciennes | Latin, Grec ancien, Sanscrit, Égyptien ancien, etc. |
ens.forum.langues.vivantes | Les langues pas mortes. |
ens.forum.lettres | La littérature en général. |
ens.forum.lettres.langue | Questions générales de langue, +problèmes de vocabulaire, points de grammaire, etc. |
ens.forum.lettres.orthographe | Questions et remarques d'orthographe. |
ens.forum.lettres.philo | Discussions d'ordre +philosophique et/ou métaphysique. |
ens.forum.lettres.poesie | Auteurs, mouvements, styles, citations, création. |
ens.forum.loisirs | Les loisirs en général. |
ens.forum.loisirs.anime | Les mangas et les dessins animés. |
ens.forum.loisirs.astro | Les différents aspects de +l'astronomie, ainsi que les discussions sur le club astro. |
ens.forum.loisirs.cinema | Tout ce qui a trait au cinéma. |
ens.forum.loisirs.cinema.nanars | Annonces de projection du nanar-club, discussions sur le cette façon alternative d'apprécier le cinéma. |
ens.forum.loisirs.cirque | Jonglage, monocycle, acrobatie, +annonces de spectacles et de conventions, de tout ce qui touche de +près ou de loin au cirque. |
ens.forum.loisirs.danse | La danse en général, et aussi le +club danse. |
ens.forum.loisirs.fantasy | La fantasy sous toutes ses formes. |
ens.forum.loisirs.fantasy.tolkien | Lœuvre et le +monde de J.R.R. Tolkien, les adaptations (films, jeux de rôle, etc.) +qui en sont faites. |
ens.forum.loisirs.gourmandises | Tout ce qui se mange et +qui est bon, et tout ce qui va avec : recettes, cuisine, annonces +d'événements miam, etc. |
ens.forum.loisirs.jeux | Tous les jeux qui n'ont pas de +groupe dédié. |
ens.forum.loisirs.jeux.bridge | Le bridge : discussions, +problèmes, etc. |
ens.forum.loisirs.jeux.jdr | Les jeux de rôle |
ens.forum.loisirs.jeux.kraland | Le jeu du même nom. |
ens.forum.loisirs.jeux.video | Les jeux vidéos, quel que +soit leur âge et leur plate-forme. |
ens.forum.loisirs.jeux.video.nethack | Le jeu Nethack et ses variantes (Rogue, Angband, Moria, Adom, Crawl...) |
ens.forum.loisirs.musique | Toutes les musiques. |
ens.forum.loisirs.photo | L'argentique aussi bien que le numérique. |
ens.forum.loisirs.robot | Le club Robot, les participations de l'ENS à la coupe de robotique. |
ens.forum.loisirs.sf | La science-fiction sous toutes ses formes. |
ens.forum.loisirs.sf.star-wars | Le monde de Star Wars, +les films, les produits dérivés. |
ens.forum.loisirs.spectacles | Tous les spectacles +(théâtre, opéra, etc.) ainsi que le club spectacles. |
ens.forum.loisirs.sports | Tous les sports. |
ens.forum.loisirs.traques | La traque, le sport national +de l'ENS. |
ens.forum.loisirs.tv | Tout sur la télé. |
ens.forum.loisirs.voyages | Destinations, conseils, organisation, récits. |
ens.forum.normale-sup | L'ENS, son histoire, et son actualité. |
ens.forum.sciences | Questions scientifiques générales, ou +sans groupe dédié. |
ens.forum.sciences.biologie | Questions de biologie, pour +spécialistes ou non. |
ens.forum.sciences.chimie | Questions de chimie, pour +spécialistes ou non. |
ens.forum.sciences.informatique | Questions d'informatique +théorique. |
ens.forum.sciences.linguistique | Questions de +linguistique, pour spécialistes ou non. |
ens.forum.sciences.maths | Questions de maths, pour spécialistes ou non. |
ens.forum.sciences.maths.avancees | Discussions plus approfondies, problèmes pointus. |
ens.forum.sciences.medecine | Questions de médecine +(humaine), pour spécialistes ou non. |
ens.forum.sciences.paranormal | Regards scientifiques sur les phénomènes réputés paranormaux, zététique. |
ens.forum.sciences.physique | Questions de physique, pour +spécialistes ou non. |
ens.forum.sciences.psychologie | Discussions sur la +psychologie, la psychiatrie, la psychanalyse, les sciences cognitives +en général, et tout ce qui touche au mental des êtres humains.. |
ens.forum.sciences.sciences-sociales | Discussions sur les +sciences sociales. |
ens.forum.scolarite | La scolarité à l'ENS. |
ens.forum.scolarite.agreg | L'agrégation, du concours aux résultats. |
ens.forum.scolarite.ca-ce-cs | Discussions autour des +différents Conseils de l'ENS (Conseil d'administration +et Conseil scientifique, Commission des études). |
ens.forum.scolarite.debouches | Débouchés offerts aux +normaliens (corps d'état, allocations, caïman, privé, etc.) |
ens.forum.societe | Questions de société qui n'ont pas de +groupe dédié. |
ens.forum.societe.culture | Questions culturelles, culture +populaire, idées en général. |
ens.forum.societe.droit | Questions juridiques en tout +genre, histoire du droit, philosophie du droit. |
ens.forum.societe.droit.propriete-intellectuelle | Aspects +juridiques de la propriété intellectuelle (brevets, droits d'auteurs, +marques, etc.) |
ens.forum.societe.economie | Discussions sur l'économie et +les systèmes économiques. |
ens.forum.societe.education | Questions sur l'éducation. |
ens.forum.societe.ethique | Questions d'ordre moral ou éthique. |
ens.forum.societe.paperasse | Tout ce qui touche de près +ou de loin à une démarche administrative. |
ens.forum.societe.politique | Tout ce qui touche à la +politique en général. |
ens.forum.societe.politique.ecologie | Discussions sur l'action politique dans le domaine de l'environnement. |
ens.forum.societe.politique.francaise | Questions de +politique française. |
ens.forum.societe.politique.internationale | Questions de +politique internationale. |
ens.forum.societe.religion | Discussions sur la religion +en général ou sur les religions. |
ens.forum.sommaire | Groupe spécial où l'on poste des +références à d'autres discussions, pour permettre de retrouver +celles-ci plus facilement. |
ens.forum.syst | Fonctionnement du système informatique +des élèves. |
ens.forum.syst.annonces | Annonces liées au système +informatique des élèves (groupe modéré) |
ens.forum.syst.config | La config conscrit (configuration +par défaut conçue par les Gourous pour les nouveaux élèves). |
ens.forum.syst.forum | Le fonctionnement du Forum des élèves. |
ens.forum.syst.games | Annonces des jeux installés,
+doléances des utilisateurs, discussions du compte games . |
ens.forum.syst.gourous | Discussions à propos des +logiciels installés par les Gourous, et à propos des +Gourous eux-mêmes. |
ens.forum.syst.infi | La salle infirmatique, dite « infi ». |
ens.forum.syst.jourdan | La salle informatique de Jourdan. |
ens.forum.syst.montrouge | La salle informatique de Montrouge. |
ens.forum.syst.phare | Le serveur des archicubes. |
ens.forum.syst.rezo | Tout ce qui touche à l'installation +et l'utilisation du rezo +des élèves (raccordement à Internet des thurnes). |
ens.forum.syst.salle_46 | La salle informatique du 46 rue d'Ulm. |
ens.forum.syst.salle_s | La salle S. |
ens.forum.syst.salle_s.quatra | Le
+quatramaran (alias « 4a »), machine administrée par les élèves. |
ens.forum.syst.salle_t | La salle T, réservée aux élèves +du MMFAI. |
ens.forum.syst.tuteurs | Tout ce qui concerne les +Tuteurs et les WinTuteurs : site Web, +stages, etc. |
ens.forum.syst.webmaster | Annonces concernant le serveur Web des élèves, questions +et doléances des utilisateurs, discussions des Webmasters. |
+Le FTP (pour File Transfer Protocol, protocole de transfert de
+fichiers) est un service Internet utilisé pour transférer des fichiers d'une
+machine vers une autre. FTP
a deux usages :
+
+Les programmes ftp
et ncftp
sur les machines Unix
+sont adaptés à ces deux usages. On parlera ici de ncftp
car
+c'est le plus pratique. D'autres logiciels existent, sous Unix, DOS ou
+Macintosh. Certains, comme Netscape, ne sont réellement adaptés qu'au FTP
+anonyme.
+
+&icone.note;
+Concrètement, le nom de login d'une connexion FTP anonyme est ftp
+ou anonymous
. La plupart des serveurs FTP anonymes demandent si on
+rentre ces logins l'adresse de courriers électroniques de l'utilisateur en mot
+de passe. La connexion n'est donc pas à proprement parler « anonyme ».
+
+ncftp
suppose par défaut que vous cherchez à vous connecter d'une
+façon anonyme à la machine distante. Il faut lui préciser le contraire en lui
+indiquant le login de la connexion. Pour cela, tapez dans un
+terminal :
+
+ncftp -u login nom-de-la-machine ++ +
+en remplaçant login
par votre login sur la machine distante,
+et nom-de-la-machine
par le nom de cette machine. Par exemple, Toto
+veut se connecter à Jourdan pour récupérer des fichiers; il tape :
+
+ncftp -u toto vedette.ens.fr ++ +
+ncftp
vous demandera alors votre mot de passe sur la machine
+distante. Une fois ceci effectué, vous êtes connecté à la machine distante (si
+votre mot de passe était correct). L'invite ressemble alors à celle d'un
+interprétateur de commande (shell), et
+vous pouvez utiliser la plupart des commandes Unix fondamentales sur les
+fichiers et les
+répertoires, comme
+ls
, cd
, rm
, mkdir
,
+rmdir
. Vous pouvez ainsi vous déplacer dans les
+répertoires distants (si vous avez le droit de le faire).
+
+Nombre de commandes existent aussi avec la lettre l
devant (ce
+qui donne lls
, lcd
, ...), ce qui signifie que ces
+commandes doivent être executées sur la machine locale. Vous pouvez ainsi
+vous déplacer à la fois sur la machine distante et la machine locale. Pour
+faire des transferts, deux commandes existent principalement :
+
+get
permet de ramener un fichier de la machine distance vers la
+machine locale. Vous pouvez mettre plusieurs noms de fichiers à la suite
+pour ramener plusieurs fichiers. Si vous voulez ramener un fichier tout en
+changeant son nom, utilisez l'option -z :
+
+get -z fichier-distant nom-du-fichier-local ++ +
+put
permet de copier un fichier de la machine locale vers la
+machine distante. Elle s'utilise exactement comme get
.
+
+&icone.attention;
+Des problèmes peuvent apparaitre si vous faites des transferts entre machine
+utilisant des systèmes d'exploitation différents (comme
+Unix et Windows). En particulier, les passages à la ligne ne sont pas codés
+pareil sous ces deux systèmes d'exploitation. Par défaut, ncftp
+ne modifie pas les fichiers transférés, et un fichier texte ramené sous Unix
+depuis Windows pourra présenter des « ^M » à la fin de chaque ligne
+(tandis qu'un fichier texte transféré dans l'autre sens ne fera pas le
+retour chariot à la fin des lignes). Deux commandes, à taper avant la
+commande de transfert, servent à modifier cela :
+
ascii
précise à ncftp
de faire la
+conversion.bin
avant de faire le transfert.
+Pour quitter ncftp
, utilisez la commande quit
. On
+vous demandera alors si vous voulez garder la machine dans les marque-page,
+éventuellement avec le mot de passe.
+
+Il n'y a pas de réelle différence entre une connexion anonyme ou non anonyme,
+si ce n'est qu'il n'est pas nécessaire d'utiliser l'option -u
.
+ncftp
se charge de donner anomymous
comme login,
+et votre adresse de courier électronique comme mot de passe. Vous pouvez
+alors utiliser les commandes exactement comme dans une connexion non
+anonyme. Notez que vous n'aurez que rarement l'occasion d'utiliser des
+commandes qui modifient le contenu du disque de la machine distante
+(rm
, put
, mkdir
...), mais cela peut
+arriver.
+
+Il est possible de passer en ligne de commande de ncftp
une URL
+de la forme
+ftp://machine/chemin-de-repertoires/
.
+ncftp
se charge alors d'arriver directement dans le répertoire
+considéré s'il existe. Un telle URL peut aussi être utilisée avec Netscape
+(à la place de l'URL des pages Web).
+
+N'ont été décrites que les commandes de base de ncftp
, qui est un
+outil puissant. Consultez le manuel de
+ncftp
pour plus de détails.
+
ftp.jussieu.fr
contient une quantité de logiciels telle qu'il est
+illusoire de tous les détailler ici. En vrac, on y trouve plusieurs
+distributions à jour de Linux, de nombreux utilitaires Unix libres, des
+distributions de TeX et LaTeX (installables sous Windows ou Macintosh), etc...
+Nombre de logiciels installés chez gourous viennent de ce site.
+ftp.funet.fi
contient de nombreux miroirs d'autres sites
+(c'est-à-dire qu'il recopie régulièrement d'autres sites pour que leur contenu
+soit plus facilement accessible), ce qui le rend très utile pour les
+utilisateurs européens (ce site est en Finlande) pour qui les connexions avec
+les sites américains est lente.
+
+Afin de faciliter les recherches entre les différents sites FTP, un logiciel
+nommé archie
(ou xarchie
) existe. Son usage est
+toutefois assez malaisé. Une bonne méthode est de demander autour de soi
+si quelqu'un ne sait pas où trouver ce que vous cherchez.
+
+La machine distante d'une connexion FTP (le serveur) est presque toujours une +machine sous Unix. Mais la machine locale (le client) peut être sous Macintosh +ou Windows : +
+ +
+Le programme lancé depuis une fenêtre de commande DOS s'appelle
+ftp
et s'utilise un peu comme ncftp
(en moins
+bien).
+
+Le programme s'appelle Fetch. Vous en trouverez une présentation dans les +cours de +l'informatique littéraire. +
+ ++Ces programmes vous permettent une connexion non anonyme, ce que Netscape fait +difficilement. +
+ + + + + diff --git a/src/internet/loin/index.tml b/src/internet/loin/index.tml new file mode 100644 index 0000000..18893b3 --- /dev/null +++ b/src/internet/loin/index.tml @@ -0,0 +1,48 @@ + + + + +L'un des plus anciens aspects de l'Internet, c'est la connexion à +distance d'une machine à l'autre. En pratique, la connexion à distance +vous permet de lire votre mail sur clipper, et de manière générale +utiliser votre compte à l'ENS, alors que vous n'êtes pas physiquement +dans une salle informatique.
+ +
+ SSH est un logiciel (et un protocole) permettant de se connecter à un ordinateur distant de façon sécurisée. Il vous permet en particulier d'ouvrir un shell à distance sur les machines des salles informatiques de l'ENS, et sur la machine sas
. (Le serveur des élèves, clipper, n'est pas accessible par SSH pour des raissons de sécurité.)
+
trolle.ens.fr
sera utilisée pour les démonstrations. Sachez que vous pouvez vous connecter de la même façon sur n'importe quelle machine des salles informatiques (le nom de la machine étant marqué dessus). Vous pouvez également vous connecter sur sas.eleves.ens.fr
qui remplace l'ancien accès à clipper
mais cette machine n'étant pas physique, il est conseillé de se connecter sur une des machines des salles informatiques pour effectuer des tâches gourmandes en ressources.
+
+L'utilisation de ssh
pour se connecter à une machine est
+extrêmement simple.
+
machineloc
. La machine distante,
+c'est celle à laquelle vous voulez vous connecter. Dans ce tutorial,
+on l'appelle machinedist
. Par exemple, si vous êtes dans
+votre thurne et que vous voulez vous connecter à une machine de l'ENS (trolle.ens.fr
),
+la machine locale est votre propre ordinateur, la machine distante est
+trolle.ens.fr
.
+
+machineloc ~ $ ssh
login@machinedist
+
+
++On peut aussi utiliser la syntaxe équivalente : +
+ +
+machineloc ~ $ ssh machinedist -l login
+
+
+
+Pour indiquer la machine à distance, vous pouvez utiliser aussi bien
+le nom de la machine (sas.eleves.ens.fr
,
+horus.ens.fr
, etc.) que son adresse IP (pour sas.eleves,
+129.199.129.11
).
+
Si vous avez le même login sur les deux machines en question, ce +n'est pas la peine de le mentionner, tapez simplement : +
+ +
+machineloc ~ $ ssh machinedist
+
+
+
+Si c'est la première fois que vous vous connectez par ssh
+sur cette machine, vous verrez un message tel que celui-ci :
+
+machineloc ~ $ ssh toto@machinedist
+The authenticity of host 'machinedist' (111.222.333.4)' can't be established.
+RSA1 key fingerprint is 1z:2y:3x:4w:56:78:98:78:ab:cd:ef:01:23:45:67:89.
+Are you sure you want to continue connecting (yes/no)?
+
+
+
+Ne paniquez pas ! Tout est parfaitement normal, on vérifie qu'il
+s'agit de la bonne machine. Il suffit de répondre 'yes' pour
+continuer (si vous êtes sûr de votre connexion). ssh
vous dira alors :
+
+Warning: Permanently added 'machinedist,111.222.333.4' (RSA1) to +the list of known hosts. ++ +
+Ce qui signifie que ssh
ne vous embêtera plus à poser la
+question. Notez au passage le « RSA1 » entre parenthèses. Il s'agit du
+type de clé utilisée par la machine distante. Cette information peut
+vous servir par la suite pour générer une clé.
+
+La façon la plus simple de s'identifier est le mot de passe. Par
+défaut, ssh
vous le réclamera.
+
+trolle.ens.fr ~ $ ssh machine.monlabo.fr
+toto@machine's password:
+
+
+
+Il vous suffit de taper votre mot de passe. Attention, pour des
+raisons de sécurité (un coup d'œil sur l'écran de son voisin est
+un mode de piratage basique mais efficace) celui n'apparaître pas à
+l'écran, vous devrez taper en aveugle. Si vous pensez avoir commis une
+erreur dans votre mot de passe, faites Ctrl+u
et retapez-le
+en entier. Si vous avez tapé correctement votre mot de passe, vous
+aurez à votre disposition un shell sur la machine distante. Sinon,
+vous lirez « Permission denied. » et il faudra
+recommencer.
+
+Une autre méthode utilise ce qu'on appelle une « clé publique »,
+c'est-à-dire un code qui vous identifie. Si vous suivez la procédure
+décrite ci-dessous, vous pourrez vous connecter par ssh
+sur une machine distante sans avoir à taper de mot de passe. De plus,
+cette méthode permet de se connecter sur plusieurs machines avec la même
+clé, ce qui peut être pratique. Enfin, utiliser une clé publique augmente
+(légèrement) la sécurité en cas de compromission du serveur : celui-ci ne peut
+pas récupérer votre mot de passe.
+
+Il existe différentes versions de SSH. Suivant le type de version
+utilisé sur la machine distante, le type de clé à générer
+diffère. Cette information vous est donnée par exemple lors de votre
+première connexion ssh
sur cette machine (voir ci-dessus). Si vous ne vous en souvenez plus,
+sachez que SSH1 utilise généralement des clés RSA1, et que SSH2 peut utiliser des clés
+RSA ou DSA. Pour connaître la version de SSH utilisée sur la machine
+distante, tapez ssh -v
sur la machine distante.
+
+trolle ~ $ ssh -v
+OpenSSH_3.7.1p2, SSH protocols 1.5/2.0, OpenSSL 0.9.7c 30 Sep 2003
+Usage: ssh [options] host [command]
+<...>
+
+
+
+Le « SSH protocols 1.5/2.0 » vous indique qu'il s'agit d'un
+ssh
récent qui peut faire du SSH1 ou du SSH2.
+
+Pour ce faire, commencez par taper la commande ssh-keygen
+(comme key generator) sur la machine
+locale (et pas sur la machine distante).
+
+machineloc ~ $ ssh-keygen
+
+
+
+Avec un ssh
récent, qui peut faire du SSH1 ou du SSH2, il
+faut indiquer le type de clé à générer (voir ci-dessus). Par exemple,
+pour générer une clé RSA (recommandé) :
+
+machineloc ~ $ ssh-keygen -t rsa
+
+
+Pour générer une clé de type DSA, il suffit d'utiliser la commande suivant à la place :
+
+machineloc ~ $ ssh-keygen -t dsa
+
+
+Notez également qu'il est possible de spécifier la taille de la clé (en bits) avec le paramètre -b X
où X est un nombre de bits à choisir parmi (par exemple) 1024, 2048 (minimum recommandé), 4096.
+Le générateur de clés va en générer deux, une clé publique et une
+clé privée. Il va placer la clé privée (sous forme chiffrée) dans un
+endroit qui, par défaut, est $HOME/.ssh/id_rsa
pour
+SSH2 et une clé chiffrée en RSA et $HOME/.ssh/identity
pour SSH1 :
+
+machineloc ~ $ ssh-keygen -t rsa
+Generating public/private rsa key pair.
+Enter file in which to save the key (/usr/home/toto/.ssh/id_rsa):
+
+
+Appuyez sur Enter
pour accepter la
+localisation de la clé (il est plus simple d'accepter la localisation
+proposée). ssh-keygen
vous demande ensuite une « passphrase » (équivalent d'un mot de passe, mais sous
+forme de phrase). Cette phrase sert à fortifier la clé pour la rendre
+plus difficilement cassable. À partir de là, deux solutions :
+
ssh-agent
pour ne pas avoir à la
+retaper à chaque fois (voir plus bas). Si votre clé privée est récupérée, elle ne peut pas être utilisée sans la passphrase associée.Enter
), votre connexion sera moins sûre. N'importe qui ayant accès à votre clé privée pourra se connecter en s'identifiant à votre place.Que vous tapiez une phrase ou pas, à la fin vous verrez quelque +chose comme
+ ++Your identification has been saved in /usr/home/toto/.ssh/id_rsa. +Your public key has been saved in /usr/home/toto/.ssh/id_rsa.pub. +The key fingerprint is: +1a:2a:3e:4a:1a:65:1c:89:10:92:9c:5c:1f:75:cc:de +toto@machineloc ++ +
+Si l'on récapitule, ssh-keygen
a généré deux
+clés :
$HOME/.ssh/identity
(ou
+$HOME/.ssh/id_rsa
si c'est du SSH2) et qui n'est
+accessible qu'à vous.$HOME/.ssh/id_rsa.pub
(ou
+$HOME/.ssh/identity.pub
si c'est du SSH1) et qui peut
+être lue par tout le monde.$HOME
» ? $HOME (ou ~
) est ce qu'on appelle une
+variable d'environnement, qui sert à indiquer aux programmes quel est
+votre répertoire personnel (la racine de votre compte). Faites
+echo $HOME
dans un terminal sur une machine de l'ENS
+pour savoir quel est le vôtre. Par exemple, sur les machines de l'ENS, c'est
+/users/promo/matiere/login
. Pour en savoir plus, voir
+l'article « Concept :
+arborescence » dans le n°3 du Hublot.
+Maintenant, sur la machine distante, allez dans le
+répertoire ~/.ssh
et éditez le fichier
+authorized_keys
: ajoutez à la fin, et sur
+une seule ligne (attention aux éditeurs qui coupent les
+lignes) la clé publique (identity.pub
pour SSH1 ou
+id_rsa.pub
pour SSH2) que vous venez de générer (attention,
+il faut bien ajouter la clé publique et non la clé privée !). Procédez
+ainsi pour toutes les machines distantes auxquelles vous voulez vous
+connecter sans avoir à taper votre mot de passe. Et voilà !
+
ssh-agent
+Si vous avez opté pour la solution « phrase de passe », bravo, votre
+connexion est plus sûre, votre clé privée ne peut pas être usurpée. Mais vous devez taper à chaque fois ladite
+phrase... ce qui est vite pénible. Solution, utiliser ssh-agent
.
+
D'abord, il faut lancer ssh-agent
, qui gère les clés
+d'identification. Si vous êtes logué dans une salle informatique de
+l'ENS avec la config conscrits, pas de problème,
+ssh-agent
est déjà lancé. Si ce n'est pas le cas, il faut
+le lancer vous-même.
+
+Comme l'agent est disponible dans tous les programmes lancés ultérieurement, +on le lance au début d'une session. Par exemple, quand vous êtes en +mode texte et que vous lancez le serveur X : +
+ +
+machineloc ~ $ ssh-agent startx
+
+
++Quand vous vous loguez à distance, c'est plutôt : +
+ +
+machinedist ~ $ exec ssh-agent $SHELL
+
+
+
+Une fois lancé, l'agent vous suit dans toutes vos connexions à
+distance, et ainsi il est disponible partout. Il faut donner à l'agent
+votre clé à gérer en tapant ssh-add
. On vous demande
+alors votre phrase de passe :
+
+machine ~ $ ssh-add
+Need passphrase for /home/toto/.ssh/id_rsa (toto@machine)
+Enter passphrase:
+Identity added: /home/toto/.ssh/id_rsa (toto@machine)
+
+
+Note : Les dernières versions des environnements de bureau sous Linux possèdent leur propre interface graphique qui sert de surcouche à ssh-agent
. Par exemple, seahorse
(ou Trousseau de clé Gnome) tient ce rôle dans Gnome. L'utilisation de ssh-agent
peut alors être facilitée, notamment car ces logiciels déverrouillent les clés SSH avec le mot de passe de login directement.
+Vous pouvez également utiliser ssh
pour exécuter une
+commande à distance. Par exemple, vous voulez, de votre machine
+personnelle, connaître l'heure sur sas.eleves, pour savoir si votre
+machine est en retard, en avance ou à l'heure.
+
+machineloc ~ $ ssh sas.eleves.ens.fr date
+Fri Jul 4 12:01:49 MET DST 2003
+
+
+
+N'oubliez pas de préciser toto@machine
si vos logins sont
+différents entre les deux machines. Si vous voulez exécuter à distance
+une commande avec des options, mieux vaut mettre des guillemets. Par
+exemple, je peux savoir si brick
est une station Sun ou
+un PC, en utilisant la commande uname
.
+
+machineloc ~ $ ssh toto@brick.ens.fr "uname -p"
+i386
+
+
++La réponse est « i386 », dénomination utilisée pour les PC. +
+ +Petite astuce pour IRC : Il est possible de se connecter sur IRC sur une machine de l'ENS directement avec la commande suivante (créer un alias pour plus de facilité) :
+
+machineloc ~ $ ssh login@trolle.ens.fr -t irc
+
+
++Il est possible que vous voyiez un jour le message d'erreur suivant : +
+ ++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle +attack)! +It is also possible that the host key has just been changed. +Please contact your system administrator. ++ +
+Ce message signifie que la clé ssh (l'identification) de la machine
+distante a changé. En effet, à chaque fois que vous vous connectez à
+une machine par ssh
, celle-ci présente à votre machine
+une sorte de carte d'identité, ainsi vous êtes sûr qu'il s'agit bien
+de la bonne machine et pas d'un pirate. Ou bien la machine a
+réellement changé de clé ssh (à l'ENS, cela arrive de temps à autres
+quand le SPI upgrade une machine), ou bien c'est une attaque de
+pirate. Il vaut mieux écrire au SPI pour savoir ce qu'il en est.
+
Il y a d'autres commandes associées à ssh
qui vous
+permettent, de manière tout aussi sûre, de transférer des fichiers
+d'une machine à une autre. En l'espèce, scp
(Secure Copy) a un fonctionnement aussi simple que celui
+de ssh
.
+Les explications qui suivent sous pour les sytèmes UNIX. Pour savoir +comment faire sous Windows, reportez-vous au tutorial des WinTuteurs sur WinSCP. +
+ +Pour envoyer des fichiers de votre machine locale à la machine +distante, faites : +
+ +
+machineloc ~ $ scp fichier1 fichier2 fichier3 machinedist:
+
+
+
+Attention, n'oubliez pas les deux points à la fin. Vous
+devrez taper votre mot de passe (sauf si vous utilisez
+l'authentification par clé publique, voir ci-dessus), puis
+ssh
se lancera dans le transfert en vous indiquant sa
+progression :
+
+machineloc ~ $ scp tagada.txt machinedist:
+toto@machinedist's password:
+tagada.txt 100% |***************************************| 2263 00:00
+
+
+
++Pour énumérer les fichiers à copier, mettez-les simplement à la suite, +séparés par une espace, sans virgule. +
+ + +Pour transférer un répertoire entier, il faut
+utiliser l'option -r
(comme recursive),
+sinon ssh vous dira « répertoire: not a regular
+file ».
+
+machineloc ~ $ scp -r répertoire machinedist:
+
+
+
+Dans ces premiers exemples, le(s) fichier(s) sera ou seront copié(s),
+avec le même nom sur la machine distante, à la racine de
+votre compte. Nous allons compliquer progressivement les
+choses. Maintenant, vous voulez changer le nom du fichier en cours de
+route, renommer tagada.txt
en
+coincoin.txt
:
+
+machineloc ~ $ scp tagada.txt machinedist:coincoin.txt
+
+
+
+Maintenant, nous allons envoyer notre fichier tagada.txt
+à un endroit précis sur le compte distant, dans le répertoire
+$HOME/divers/blagues
:
+
+machineloc ~ $ scp tagada.txt machinedist:divers/blagues
+
+
+
+ Et même vers n'importe quel répertoire (/bidule
par exemple où / est la racine de la machine) :
+
+machineloc ~ $ scp tagada.txt machinedist:/bidule
+
+
+Pour rapatrier des fichiers de la machine distante à votre machine +locale, la même syntaxe est utilisée, mais inversée : +
+ +
+machineloc ~ $ scp machinedist:tagada.txt .
+
+
+
+Le . (point) à la fin signifie que scp
devra mettre le
+fichier ici, dans le répertoire dans lequel vous vous trouvez
+actuellement. Évidemment, vous pouvez lui indiquer un autre
+répertoire :
+
+machineloc ~ $ scp machinedist:tagada.txt divers
+
+
++Et ainsi de suite, vous pouvez appliquez les mêmes techniques que pour +le transfert machine locale -> machine distante, décrites ci-dessus. +
+ +Sous KDE (par exemple dans la config conscrits 2006 et plus), + il est possible d'accéder par ssh aux fichiers situés sur une machine + distante avec le gestionnaire de fichiers Konqueror. Pour ce faire, + tapez simplement dans la barre d'adresses de Konqueror :
+ +sftp://login@machinedist/répertoire/+ +
par exemple
+ +sftp://conscrit@trolle.ens.fr/users/06/maths/conscrit/+ +
Une boîte de dialogue apparaît si nécessaire pour + vous demander votre mot de passe. Vous pouvez ensuite copier, + déplacer, modifier les fichiers existants (et en ajouter) presque + comme s'ils étaient sur la machine locale.
+ +La même astuce marche depuis n'importe quelle boîte de dialogue de + gestion de fichiers de KDE, par exemple celles auxquelles font appel + les fonctions Ouvrir et Enregistrer des divers logiciels.
+ +La même chose est possible sous Gnome, en passant par le menu "Connexion à un serveur" du gestionnaire de fichiers Nautilus.
+ + Quand on utilise beaucoup la connexion distante, il devient très
+vite fastidieux d'avoir toujours à taper en entier le nom
+trolle.ens.fr
, a fortiori son adresse IP
+129.199.129.38
. S'il n'y a pas d'ambiguïté (en l'occurrence,
+si vous n'utilisez jamais qu'un seul serveur portant le nom de trolle,
+et pas, par exemple, trolle.ens.fr et trolle.chezmoi.fr), vous pouvez
+assigner un alias à une adresse. Pour ce faire, mettez
+dans le fichier $HOME/.ssh/config
les lignes
+suivantes :
+Host trolle +User toto +HostName trolle.ens.fr ++ +
+(n'oubliez pas de remplacer « toto » par votre nom d'utilisateur). +
+ ++Ainsi, il suffira de taper : +
+ +
+machineloc ~ $ ssh trolle
+
+
++au lieu de : +
+ +
+machineloc ~ $ ssh toto@trolle.ens.fr
+
+
+
+Cette modification s'étend également à scp
. Il vous suffit
+en effet de taper :
+
+machineloc ~ $ scp tagada.txt trolle:divers/blagues
+
+
++au lieu de : +
+ +
+machineloc ~ $ scp tagada.txt toto@trolle.ens.fr:divers/blagues
+
+
+
+
+Il existe plusieurs protocoles Internet permettant de se connecter à
+un ordinateur distant : telnet
, les r-commandes
+(rlogin
, rsh
ou encore rcp
),
+ssh
(Secure Shell). Alors que
+telnet
et les r-commandes font circuler les informations
+en clair sur le réseau (voir notre documentation sur les dangers de
+telnet
), ssh
est beaucoup plus
+sûr :
+
ssh
sont chiffrées, ce qui garantit leur confidentialité
+Pour ces deux raisons, nous vous conseillons vivement
+d'abandonner telnet
et
+rlogin
pour adopter ssh
. Le
+piratage, ça n'existe pas que dans les films. Vous pensez peut-être
+que rien sur votre compte n'intéresse un pirate, et que donc il n'est
+pas utile de prendre vos précautions. Vous avez tort à deux
+titres : le pirate peut se servir de votre compte pour attaquer
+une autre machine... Bonne chance alors pour convaincre la DST que ce
+n'était pas vous. Ensuite, en vous exposant au danger, vous mettez
+ensuite en danger les autres utilisateurs de l'ENS. Alors soyez
+responsables.
+
+ Certains sites Internet ne sont accessibles que depuis certains + ordinateurs, serveurs ou domaines très précis. Par exemple, pour accéder + à certains articles de revues par l'abonnement de l'ENS, on doit se connecter depuis + l'un des ordinateurs de l'École. Cette contrainte permet d'être certain que seules les + personnes autorisées pourront accéder à certaines données, après s'être + préalablement identifiées au moyen d'un mot de passe. +
+ ++ Mais cet avantage a un inconvénient. Si vous êtes à l'étranger, ou si + vous êtes tout simplement chez vous et ne pouvez vous rendre + physiquement devant les ordinateurs en question, ces ressources vous + sont inaccessibles... +
+ ++ Heureusement, il existe la technique + du tunnel SSH. Celle-ci consiste à « creuser + un tunnel » entre votre connexion et un serveur autorisé pour y + faire passer les informations de manière sécurisée. En d'autres termes, + vous allez : +
+ ++ Nous allons commencer par ouvrir le tunnel. La façon de procéder dépend + du système d'exploitation que vous utilisez. +
+ +Avec Linux ou tout autre dérivé d'UNIX (BSD, Solaris, Mac OS X, + etc.), la procédure est sans doute la plus simple. Suivez les étapes + suivantes pour mettre en place un tunnel SOCKS entre votre machine et la machine distante.
+ +toto@ordinateur $ ssh -ND 3128 monlogin@sas.eleves.ens.fr
+
+ Sur Windows 10, vous avez l'option d'activer la fonctionnalité expérimentale OpenSSH de Windows. Pour cela, allez dans "Paramètres > Applications > Gérer les fonctionnalités +facultatives > ajouter une fonctionnalité > Open SSH Client (Beta)", puis redémarrez votre ordinateur.
+Vous pouvez désormais utiliser les fonctionnalités ssh dans Windows Powershell. Les lignes de commandes indiquées pour +Linux/macOS (ssh -D 3128 monlogin@sas.eleves.ens.fr) fonctionnent de la même façon.
Sur les autres distributions de Windows/sans activer OpenSSH :
+Pour ouvrir un tunnel SSH depuis Windows, vous aurez besoin + du logiciel PuTTY. Téléchargez le + programme putty.exe à + l'adresse http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. +
+ +Ouvrez le programme putty.exe. +
+ +Remplissez les champs suivants :
+ +sas.eleves.ens.fr
22
SSH
ENS par tunnel
+ SSH
+
+ 3128
www-cache.ens.fr:3128
+ Vous verrez alors :
+ +Désormais, pour ouvrir le tunnel SSH, il vous suffira de + cliquer deux fois sur « ENS par tunnel SSH ». Donnez + votre + identifiant (login) et votre mot de + passe. La première fois, on vous demandera si vous acceptez + la clef SSH, afin d'éviter toute tentative d'usurper l'identité de + sas : vérifiez que le fingerprint indiqué est bien + "d2:2f:2d:e6:22:17:16:1c:54:5f:e3:9a:0b:88:db:37" et répondez « Yes ». +
+ + + +Que vous utilisiez Linux, Mac OS, Windows, FreeBSD ou autre, + vous avez maintenant ouvert le tunnel. Le signe qu'il est ouvert, + c'est la fenêtre de terminal ouverte. Attention, si vous fermez la fenêtre + de terminal, le tunnel se fermera.
+ +Il reste à emprunter ce tunnel. Pour cela, vous devrez configurer
+ votre navigateur pour lui dire d'utiliser
+ le proxy localhost
avec le port
+ 3128
. Nous ne pouvons pas faire l'inventaire de tous
+ les navigateurs qui existent, alors voici simplement comment faire
+ pour les principaux. Pour les autres (Konqueror, Galeon, Epiphany,
+ Mozilla, w3m...), cela ne devrait pas être très différent.
Allez dans Edit
, puis Preferences
, Advanced
, Network
et Settings
:
Alternativement, allez dans Edit
,
+ puis Preferences
, et enfin Connexion
+ settings
:
Si vous avez suivi la méthode pour Linux, indiquez à votre navigateur
+ que vous voulez utiliser un proxy, en cliquant sur « Manual proxy
+ configuration
», puis en
+ tapant localhost
comme proxy SOCKS,
+ et 3128
comme port :
Allez dans Edit
,
+ puis Preferences
, Advanced
, Network
et Settings
:
+
Alternativement, allez dans Edit
,
+ puis Preferences
, et enfin Connexion
+ settings
:
Si vous avez suivi la méthode pour Windows, indiquez à votre navigateur
+ que vous voulez utiliser un
+ proxy, en cliquant sur « Manual proxy
+ configuration
», puis en
+ tapant localhost
comme proxy HTTP,
+ et 3128
comme port :
+ Allez dans Options
, puis cliquez sur l'onglet
+ Connections
; cliquez sur le bouton
+ « Paramètres réseau
», comme
+ indiqué sur l'image suivante :
+
+ + + Ensuite, cochez la case « Utiliser un serveur
+ proxy pour votre réseau local
», et indiquez
+ d'utiliser l'adresse localhost
avec le
+ port 3128
:
+
+ + +Maintenant, le tunnel est ouvert, et votre navigateur est disposé à + l'emprunter. Demandez-lui d'aller à l'adresse + http://www.intranet.ens.fr + pour vérifier son bon fonctionnement. +
+ +Quand vous avez fini de consulter les sites qui nécessitent de passer +par un tunnel SSH, et à ce moment seulement, vous pouvez le +fermer. C'est comme si vous « rebouchiez » le tunnel après l'avoir +emprunté. Il suffit pour cela de :
+ +Voici quelques-uns des sites dont l'accès est restreint à + l'ENS :
+ +L'ENS profite également de certaines offres commerciales, telles que + des encyclopédies en ligne, des bases de données documentaires, + etc. Notamment, depuis + la bibliothèque + électronique de l'ENS, vous aurez accès aux ressources + d'« Accès réservé aux postes de l'ENS ».
+ + + + + diff --git a/src/internet/loin/tunnel0.png b/src/internet/loin/tunnel0.png new file mode 100644 index 0000000..a655651 Binary files /dev/null and b/src/internet/loin/tunnel0.png differ diff --git a/src/internet/loin/tunnel1.png b/src/internet/loin/tunnel1.png new file mode 100644 index 0000000..c2930b3 Binary files /dev/null and b/src/internet/loin/tunnel1.png differ diff --git a/src/internet/loin/tunnel2.png b/src/internet/loin/tunnel2.png new file mode 100644 index 0000000..c1193c8 Binary files /dev/null and b/src/internet/loin/tunnel2.png differ diff --git a/src/internet/loin/tunnel3.png b/src/internet/loin/tunnel3.png new file mode 100644 index 0000000..4364c43 Binary files /dev/null and b/src/internet/loin/tunnel3.png differ diff --git a/src/internet/loin/tunnel4.png b/src/internet/loin/tunnel4.png new file mode 100644 index 0000000..ab3bd17 Binary files /dev/null and b/src/internet/loin/tunnel4.png differ diff --git a/src/internet/loin/tunnel5.png b/src/internet/loin/tunnel5.png new file mode 100644 index 0000000..3d0e41d Binary files /dev/null and b/src/internet/loin/tunnel5.png differ diff --git a/src/internet/loin/tunnel6.png b/src/internet/loin/tunnel6.png new file mode 100644 index 0000000..1127cc2 Binary files /dev/null and b/src/internet/loin/tunnel6.png differ diff --git a/src/internet/loin/tunnel7.png b/src/internet/loin/tunnel7.png new file mode 100644 index 0000000..8a45502 Binary files /dev/null and b/src/internet/loin/tunnel7.png differ diff --git a/src/internet/loin/tunnel8.png b/src/internet/loin/tunnel8.png new file mode 100644 index 0000000..acf6a65 Binary files /dev/null and b/src/internet/loin/tunnel8.png differ diff --git a/src/internet/loin/tunnel9.png b/src/internet/loin/tunnel9.png new file mode 100644 index 0000000..9f3365a Binary files /dev/null and b/src/internet/loin/tunnel9.png differ diff --git a/www/internet/news.tml b/src/internet/news.tml similarity index 100% rename from www/internet/news.tml rename to src/internet/news.tml diff --git a/src/internet/tkabber_1.png b/src/internet/tkabber_1.png new file mode 100644 index 0000000..5261a7c Binary files /dev/null and b/src/internet/tkabber_1.png differ diff --git a/src/internet/tkabber_2.png b/src/internet/tkabber_2.png new file mode 100644 index 0000000..fd9be10 Binary files /dev/null and b/src/internet/tkabber_2.png differ diff --git a/www/internet/usenet-fr.tml b/src/internet/usenet-fr.tml similarity index 100% rename from www/internet/usenet-fr.tml rename to src/internet/usenet-fr.tml diff --git a/www/internet/virus.tml b/src/internet/virus.tml similarity index 100% rename from www/internet/virus.tml rename to src/internet/virus.tml diff --git a/src/internet/web/conseils.tml b/src/internet/web/conseils.tml new file mode 100644 index 0000000..f41149c --- /dev/null +++ b/src/internet/web/conseils.tml @@ -0,0 +1,206 @@ + + + + ++Vous avez décidé de créer votre page Web. Avant toutes choses, il faut +savoir qu'une page Web ne s'improvise pas. Voici +quelques conseils généraux pour que tout se passe bien. Pour les +conseils techniques, voyez notre article Créer sa +page. +
+ ++Quelles sont vos motivations pour avoir votre page ? Elles +peuvent être multiples et très variées : une page « sérieuse », +exposant vos travaux de recherche ; une page sur vos hobbys, vos +passions ; une page pour montrer vos photos de vacances à vos amis ; +une page parce que tous vos amis en ont une... +
+ ++Maintenant, mettez-vous à la place de la personne qui va venir voir +votre page. Que va-t-elle y trouver ? Est-ce qu'elle vous connaît +déjà ? Que va-t-elle penser de vous ? Méfiez-vous des private jokes face à un public que vous ne maîtrisez +pas. Soyez prêt à recevoir des mails d'insultes (genre « Pauvre +bouffon, ta page est nulle ») d'inconnus enhardis par le prétendu +anonymat d'Internet. +
+ ++N'oubliez jamais qu'Internet, et le Web en particulier, s'organise +comme une société : vous n'y êtes pas anonyme et, +particulièrement lorsque vous créez une page, vous projetez une image. +À vous d'être sûr d'être compris. Réfléchissez donc bien aux points +suivants : +
+ ++Ne confondez pas espace de liberté et espace sans droit. Vous n'avez +pas le droit de diffuser tout ou n'importe quoi sur le Web si ça ne +vous appartient pas. En particulier, ce n'est pas parce que quelque +chose est sur le Web que vous êtes autorisé à le recopier et diffuser +sans autorisation ! Ne violez pas de copyright. +
+ ++Si vous avez un doute, vous pouvez consulter le Code +de la propriété intellectuelle. +
+ ++Bien sûr, personne n'ira vous faire un procès à chaque fois que vous +violez un copyright, mais vous pouvez avoir des ennuis, soit +directement, soit par l'intermédiaire de l'École, qui a une part de +responsabilité en tant que fournisseur d'accès. +
+ ++Veillez à préciser le statut des documents que vous placez sur le +Web. Si vous mettez en ligne des photos, par exemple, indiquez si les +internautes peuvent les utiliser, et si oui, à quelles conditions +(pour un usage commercial ou pas, avec ou sans votre autorisation, +dans le domaine public ou pas). +
+ ++Sachez pourtant qu'il est quasiment impossible de vraiment protéger ce +qu'on choisit de publier sur le Web. Rien n'empêche techniquement un +quidam de recopier vos documents et de les faire passer pour les siens +(il arrive souvent qu'un même contenu soit copié, mot pour mot, sur +une dizaine de sites différents). N'importe qui peut recopier vos +fichiers HTML pour faire un site au design complètement identique au +vôtre. +
+ ++Rappelons qu'aux termes de la Charte des moyens +informatiques que vous avez signée en entrant à l'ENS, +l'utilisation des moyens informatiques de l'École est « limitée à des +activités de recherche et d'enseignement, de développements +techniques, de transferts de technologies, de diffusion d'informations +scientifiques, techniques et culturelles ». Par tolérance, vous pouvez +y mettre vos photos de vacances, mais n'abusez pas de l'espace disque. +
+ ++Vous êtes vivement encouragés, en revanche, à faire une page Web qui +soit en accord avec la charte. Vous pouvez publier vos articles, vos +exposés, vos mémoires (maîtrise, DEA, thèse), vos notes de cours... Le +Web est un grand espace d'échange d'information, vous pouvez y +apporter votre pierre ! +
+ ++Songez aussi qu'une page Web est un très bon outil pour entrer en +communications avec d'autres chercheurs. On a déjà vu des élèves +historiens recevoir des documents ou des indications de la part +d'autres historiens, ou d'amateurs, généalogistes par exemple. +
+ ++Sauf si vous comptez vous contenter d'une seule page (« Kikoo c'est +Jean-Kévin » ou plutôt page-CV), faire une page Web décente, c'est du +travail. Il faut concevoir une mise en page à la fois sobre, agréable +et efficace, un système de navigation pratique. Il la mettre à jour +régulièrement et vérifier que les liens marchent bien. Il faut la +rendre visible aux autres par l'intermédiaire des moteurs de +recherche.
+ ++Il faut enfin être prêt à répondre au courrier de vos visiteurs, qui +peut être plus ou moins intéressant. Ça peut aller de l'insulte à la +correction orthographique, en passant par les félicitations, la +demande d'échange de liens, l'apport de nouveau contenu, la tentative +de drague, etc. Très vite, si votre page s'étoffe, vous vous +apercevrez qu'elle vous prend beaucoup de temps. +
+ + + + + diff --git a/src/internet/web/creer.tml b/src/internet/web/creer.tml new file mode 100644 index 0000000..326968c --- /dev/null +++ b/src/internet/web/creer.tml @@ -0,0 +1,230 @@ + + + + +
+Les élèves, magistériens, pensionnaires étrangers, bref tous ceux qui
+ont un compte sur sas
peuvent créer une page Web sur
+le serveur des élèves.
+
+Il faut commencer par créer, dans votre compte, un répertoire
+www
. Ce répertoire contiendra les éléments de votre page
+Web : fichiers HTML, images, documents, sons, etc. Il n'y a pas de
+quotas pour les page Web, mais faites attention quand même à l'espace disque. Votre
+page Web est censée être un outil de travail, pas un espace gratuit de
+diffusion de vos photos de vacances.
+
www
sur votre compte sur sas
. En
+pratique, ça veut dire que si vous êtes à Jourdan ou Montrouge, il
+faut d'abord vous loguer à distance sur sas
(tapez
+simplement ssh sas.eleves
). Pas de problème si vous êtes en
+salle S, T, au 46 ou dans l'Infi.
+Pour créer le répertoire, nous utilisons la
+commande mkdir
, pour « make a
+directory » (pour en savoir plus, consultez notre page sur les répertoires) :
+
+sas ~ $ mkdir www
+
+
+
+Le répertoire www
est donc créé. Ensuite, nous allons
+dans ce répertoire :
+
+sas ~ $ cd www
+
+
+
+Il faut ensuite créer (avec un éditeur de texte) un fichier
+HTML (c'est-à-dire un fichier écrit en HTML, le langage des pages Web) qui servira de page d'accueil,
+c'est-à-dire la première page que les internautes verront de votre
+site. Conventionnellement, ce fichier s'appelle
+index.html
.
+
mozilla
) puis
+allez dans Window > Composer
.
++La page d'accueil contient généralement une brève présentation de +l'auteur (vous), genre « Bienvenue sur la page de Raoul Dugenou », et +des indications sur ce que va contenir votre page. Vous pouvez aussi +expliquer que vous commencez tout juste votre page, grâce à une +annonce comme : « Attention, cette page est en travaux ». Ça fera +patienter vos premiers lecteurs. +
+ ++Dès que le répertoire ~/www existe dans votre répertoire +personnel vous pouvez y accéder depuis le web. Le recensement des +pages web (pour les ajouter aux index) se fait chaque nuit, si vous +venez de créer votre dossier, vous devrez donc attendre. En cas de +problème, envoyez un mail aux Webmasters +(webmaster@clipper). +
+ ++Si vous souhaitez désactiver le robot qui liste les dernières pages +modifiées il faut qu'il existe un fichier .last_modified soit +dans votre home soit dans le dossier ~/www. Pour créer ce +fichier il faut donc faire : +
+ +
+sas ~ $ touch ~/www/.last_modified
+
+
+
+Quelque temps après votre inscription, votre page Web sera accessible,
+à l'adresse http://www.eleves.ens.fr/home/login
, où
+login
est votre propre login, bien sûr ! Votre page sera
+également classée dans la liste des pages Web, sur le serveur des
+élèves. Il y a le classement
+par pseudo ou prénom, le classement par
+nom de famille, par promo,
+par
+discipline ou encore par date de
+dernière modification.
+
+Il reste à organiser votre page Web. Chaque nouvelle page de votre
+site devra avoir un suffixe en .html
(par exemple :
+cv.html
, maitrise.html
, etc.) et être écrit
+en HTML. Pour naviguer d'une page à l'autre de votre site, il faudra
+établir des liens entre elles, et
+surtout, entre index.html
et les autres. Votre page
+d'accueil sert ainsi de table des matières au reste de votre
+page. N'oubliez pas qu'il est rare qu'un visiteur tombe directement
+sur votre page d'acceuil, veillez à bien relier vos pages entre elles.
+
+Pensez à organiser un peu votre page, dès le début. Par exemple, si
+vous voulez faire une page avec du contenu sérieux (vos rapports et
+mémoires, votre TIPE, vos exos de colle, etc.) et moins sérieux (votre
+hobby ou sport favori), vous pouvez dès le début prévoir un répertoire
+maths
, par exemple, et un répertoire
+musique
, où vous rangerez les pages qui se rapportent à
+l'un ou l'autre.
+
+Pour voir le résultat de votre travail, utilisez un navigateur. Il en +existe plusieurs à l'ENS : Mozilla (lent à se lancer, mais performant +ensuite) et Netscape (qui commence à se faire vieux) sont les plus +importants. +
+ + Si vous avez fait un lien entre la page d'accueil et vos nouvelles
+pages, il vous suffit de suivre les liens pour les voir. Sinon, vous
+pouvez taper leur adresse directement dans la barre de navigation de
+votre navigateur. En gros, il faut substituer
+http://www.eleves.ens.fr/home/login
(en remplaçant
+« login » par votre login) à
+www
. Illustration :
+
Sur votre compte | Dans le navigateur | +
---|---|
www/index.html | http://www.eleves.ens.fr/home/login/ | +
www/cv.html | http://www.eleves.ens.fr/home/login/cv.html | +
www/maths/tipe.html | http://www.eleves.ens.fr/home/login/maths/tipe.html | +
N'hésitez pas à vérifier que le résultat est satisfaisant avec +plusieurs navigateurs différents, si possible sous plusieurs systèmes +(Windows, Mac, Unix, etc.) différents.
+ +Actuellement, Microsoft Internet Explorer (pour PC +ou Mac) occupe une très, très large part du marché. Jusqu'à une date +récente, les autres navigateurs (à commencer par +Mozilla et Netscape) jouaient un rôle +mineur quoique non négligeable, en particulier pour des publics précis +(élèves, étudiants, professeurs et chercheurs par exemple). Mais avec le +succès toujours croissant de Firefox, version allégée +de Mozilla, il est de moins en moins raisonnable +d'« optimiser » son site pour un seul navigateur ; en +réalité, prétendre « optimiser » son site pour une version +particulière d'un navigateur particulier revient à dire qu'il est +« pessimisé » pour les autres...
+ +
+Si vous souhaitez corriger quelque chose à vos fichiers HTML,
+faites-le puis cliquez sur le bouton « Reload » (Ctrl+R
+ou View > Reload
avec Mozilla) pour que la
+modification soit prise en compte par le navigateur.
+
.htaccess
est un simple fichier texte qui vous permet
+de gérer de manière décentralisée un serveur Apache (le serveur des
+élèves, par exemple). Par exemple, .htaccess
vous permet
+de protéger certains répertoires avec des mots de passe, de
+restreindre l'accès à votre page Web, d'empêcher le listage de vos
+répertoires (quand ils ne contiennent pas de fichier index.html), ou
+encore d'utiliser vos propres pages d'erreur (404, 403)...
Les directives d'un .htaccess
s'appliquent à
+l'ensemble des fichiers du répertoire dans lequel il est placé, ainsi
+qu'aux sous-repertoires. .htaccess
est lu à chaque
+requête du serveur, donc chaque modification prend effet
+immédiatement.
.htaccess
causera une erreur serveur et empêchera tout
+accès à votre site. Vérifiez donc bien que tout marche bien à chaque
+modification de ce fichier. Une consultation des logs de webmaster
+(/opt/webmaster/var/log/error_log.curr
) vous aidera à
+diagnostiquer ce qui ne marche pas.Précisons enfin que chaque ligne commençant par un dièse (#) est +ignorée, ce qui vous permet de commenter vos directives.
+ +Tout le monde connaît bien les pages d'erreur 404 (File Not Found), +403 (Forbidden), 500 (Internal Server Error)... Il peut être utile de +personnaliser ce type de pages d'erreur (surtout les erreurs 404), par +exemple pour demander à l'internaute de vous signaler les liens +cassés, ou pour lui proposer de faire une recherche sur le site (il +existe un moteur +Google pour le serveur des élèves).
+ +D'abord, créez vos propres pages d'erreur. Ensuite, dans votre
+fichier .htaccess
, écrivez :
ErrorDocument numero_d'_erreur /chemin/du/fichier.html+ +
Il est plus simple de nommer vos pages 403.html, 404.html, etc., ce +qui donne :
+ +ErrorDocument 404 /home/toto/404.html+ +
Voici quelques unes des erreurs les plus courantes :
+Les redirections sont particulièrement utiles quand vous modifiez
+l'architecture de votre page Web. Par exemple, vous avez décidé de
+ranger tous vos exposés dans un répertoire
+~/www/exposes/
. Vous souhaitez que quelqu'un qui veut
+accéder à l'ancien ~/www/expose1.html
soit rerouté vers
+la nouvelle adresse, ~/www/exposes/1.html
.
Ceci est à spécifier dans votre .htaccess
:
RedirectPermanent /home/toto/expose1.html http://www.eleves.ens.fr/home/toto/exposes/1.html+ +
Et ainsi de suite pour tous les fichiers concernés.
+ +Vous pouvez aussi de cette manière rediriger les requètes vers un +répertoire entier, et les rediriger vers un site à l'extérieur de +l'ENS :
+ +RedirectPermanent /home/toto/chevaux/ http://www.toto-chevaux.net/+ +
De cette façon, les requètes vers vos anciennes pages dans le répertoire
+~/www/chevaux/
seront toutes redirigées vers le site
+http://www.toto-chevaux.net/
. Par exemple,
+~/www/chevaux/soins.html
sera redirigée vers
+http://www.toto-chevaux.net/soins.html
.
Quand un répertoire ne contient pas de fichier index.html (ou +index.htm), Apache liste le contenu du répertoire, en donnant quelques +informations, typiquement la taille des fichiers. Mais il est possible +de spécifier d'autres informations, comme la date de dernière +modification, et d'ajouter une courte description de chaque +fichier.
+ +La syntaxe est la suivante : IndexOptions FancyIndexing
+<autres directives>
. Ces autres directives sont les
+suivantes :
IconsAreLinks
ScanHTMLTitles
SuppressSize
SuppressDescription
SuppressLastModified
Exemple : vous avez un répertoire d'images appelé
+~/www/images/
, vous souhaitez avoir la taille et la
+description de chacune des images. Vous en profitez pour supprimer la
+date de dernière modification, qui ici vous importe peu et prend de la
+place.
IndexOptions SuppressLastModified FancyIndexing +AddDescription "Le bassin aux Ernests" images/ernests.gif +AddDescription "La planète Mars" images/mars.jpg ++ +
Pour une raison quelconque, vous n'utilisez pas de fichiers
+index.html ou index.htm. Par exemple, vous utilisez PHP et pour vous,
+les fichiers d'index s'appellent index.php
. Ou encore,
+vos fichiers d'index s'appellent tagada.html
. Vous pouvez
+indiquer au serveur quels fichiers considérer comme des fichiers
+d'index :
DirectoryIndex index.php+ +
Si vous utilisez des fichiers d'index aux noms différents, vous +pouvez créer une liste. Apache regarde d'abord si le fichier cité en +premier existe, et à défaut passe au suivant jusqu'à ce qu'il en +trouve un, sinon il affiche le contenu du répertoire (sauf si vous +avez désactivé cette fonction, bien sûr).
+ +DirectoryIndex index.php tagada.html main.html index.html+ +
Vous pouvez interdire l'accès à votre site à partir de certaines
+adresses IP. Dans ce document, il ne sera question que des adresses
+IPv4, dont on rappelle qu'elles sont constituées de quatre nombres de 0
+à 255 séparés par des points (par exemple l'adresse IP de sas.eleves est
+129.199.121.11
).
Pour interdire une adresse IP :
+ +deny from 123.456.789.10+ +
Inversement, on peut autoriser une adresse IP :
+ +allow from 123.456.789.10+ +
Si on indique un ou deux nombres seulement, ils sont interprétés
+comme des plages d'adresses IP. Par exemple, allow from
+129.199
autorise tous les accès venant de l'École. deny
+from all
interdit à tout le monde l'accès à vos fichiers, mais
+des scripts peuvent continuer à les utiliser.
En pratique, une interdiction de certaines IP prend la forme +suivante :
+ ++order allow,deny +deny from 123.45.6.7 # on interdit l'adresse précise 123.45.6.7 +deny from 12.34.5 # on interdit toutes les adresses IP commençant par 12.34.5 +allow from all # on autorise tous les autres ++ +
Le rôle de la directive order
ci-dessus est d'indiquer
+l'ordre dans lequel les directives deny
et
+allow
doivent être évaluées. Il faut préciser soit
+allow,deny
(auquel cas les requêtes sont refusées sauf si
+elles sont désignées par une directive allow
et aucune
+directive deny
), soit deny,allow
(auquel cas
+les requêtes sont acceptées sauf si elles sont désignées par une
+directive deny
et aucune directive allow
).
+Remarquez que, d'une façon quelque peu contre-intuitive, l'ordre réel
+des directives allow
et deny
dans le fichier
+.htaccess
est sans importance.
Exemple : vous souhaitez réserver une partie de votre site aux
+connexions venant de l'École. Admettons qu'il s'agisse de votre
+répertoire ~/www/normalos/
. Créez dans ce répertoire une
+fichier .htaccess
dans lequel vous écrirez :
+ order deny,allow + deny from all + allow from 129.199 ++ +
On peut aussi utiliser des noms de domaine. Admettons que vous +n'aimiez ni le gouvernenent américain ni l'entreprise de +M. Gates. Vous pouvez écrire :
+ +Deny from .gov microsoft.com+ +
Gardez à l'esprit que si vous protégez par mot de passe +un répertoire, il sera toujours lisible par tous les gens qui +possèdent un compte clipper en naviguant dans la hiérarchie de +fichiers depuis un des ordinateurs de l'ENS.
+ + ++Il suffit de rajouter un fichier ".htaccess" dans le dossier à +protéger qui contient les lignes suivantes : +
+ ++Order deny,allow +Deny from all +Authtype CAS +AuthName "CAS" +Require valid-user +Satisfy Any ++ +
Procédons par étapes.
+ +1) On commence par créer un fichier .passwds
qui
+contiendra les renseignements sur les personnes autorisées. Pour ce
+faire, on tape :
htpasswd -c .passwds toto+ +
Ce qui crée à la fois .htpasswd
et l'utilisateur toto,
+pour lequel on vous demande un mot de passe.
+sas ~ $ htpasswd -c .passwds
+toto
+New password:
+Re-type new password:
+Adding password for user toto
+
+
+Pour ajouter d'autres utilisateurs : htpasswd .htpasswd
+titi
. Pour en retirer, il suffit d'éditer le fichier et
+d'effacer la ligne correspondant à l'utilisateur
+concerné. htpasswd
chiffre les mots de passe (en
+utilisant une variante de md5), qui ne figurent donc pas en clair dans
+les fichiers.
Pour en savoir plus, consultez la page de +man de htpasswd.
+ +2) On en revient à .htaccess
et on tape :
+AuthType Basic +AuthUserFile /users/03/pataphys/vian/www/repertoire/.passwds + # endroit où vous conservez les mots de passe +AuthName "Entrez votre mot de passe" # ici vous indiquez ce qui figurera dans la barre de titre + # de la fenêtre +require valid-user ++ +
Si vous voulez protéger par mot de passe seulement certaines
+parties du site, il faut créer un .htaccess
dans le
+répertoire concerné.
Vous ne voulez peut-être pas que l'on sache où vous rangez vos mots
+de passe. Il faut dans ce cas empêcher l'accès au fichier
+.htaccess
lui-même. Pour protéger le fichier,
+taper :
+<Files .htaccess> +order allow,deny +deny from all +</Files> ++ +
+ Pour plus d'informations sur les fichiers .htaccess
, vous
+ pouvez vous reporter à l'article Wikipedia à
+ leur propos (qui n'est pas spécifique à Apache), ou au tutorial
+ à leur sujet qui figure dans la documentation d'Apache.
+
+Le langage XHTML est un langage de formatage de texte adapté à la +conception de pages web. +
+ +Ce n'est pas un langage de programmation, mais un langage de mise en +forme de données : une page Web décrit une structure statique, tandis +qu'un programme est un processus dynamique. Vous n'avez aucunement +besoin d'avoir des bases de programmation pour écrire du XHTML ! +
+ ++Pour vous le présenter, un peu de généalogie facilitera les choses, +notamment pour expliquer la différence entre HTML et XHTML. +
+ ++La famille du XHTML est une famille nombreuse, et elle n'a pas fini de +s'étendre ! L'aïeul s'appelle SGML ; il eut deux enfants, le +HTML puis le XML. Le XML eut à son tour un enfant, qui s'appelle XHTML +et ressemble comme deux gouttes d'eau à son oncle HTML. +
+ ++Le SGML est un +méta-langage : il permet de définir des langages balisés. Le HTML est l'un de ces langages +balisés, fondé en particulier sur la notion de lien hypertexte, +qui permet de naviguer confortablement d'une page à une autre.
+ ++Le HTML a très vite remporté un grand succès. Mais il a aussi rencontré +certaines limites. En particulier, il n'est pas extensible. Aussi a-t-il +reçu un petit frère, le langage XML, précisément fondé sur la notion +d'extensibilité ; comme le SGML, le XML est un méta-langage.
+ +Le problème, c'est que le HTML n'était pas compatible avec le +XML ; c'est pourquoi l'on a conçu le langage XHTML, qui est +dérivé du XML, mais conserve les principes fondamentaux du HTML, dont il +hérite également de nombreuses spécificités. +
+ +La norme du XHTML est définie par le W3C, qui encourage les +concepteurs de pages web à passer du HTML au XHTML. L'avantage du XHTML +sur le HTML est son extensibilité, qui lui vient du langage +XML. C'est pourquoi nous vous recommandons très fortement de +préférer le XHTML au HTML. Le site des tuteurs observe +scrupuleusement les spécifications de ce langage. À terme, le HTML est +appelé à disparaître. +
+ +Le XHTML définit la structure logique d'un +document, permettant ensuite à un navigateur (Firefox, Mozilla, +Netscape, Opera, Internet Explorer, etc.) de rendre visuellement (mais +aussi auditivement ou tactilement, pour les non-voyants) le +document.
+ +Pour des raisons évidentes d'interopérabilité, le XHTML possède une +norme, rédigée par le World Wide Web Consortium (W3C), qui +regroupe des acteurs majeurs du Web comme Microsoft, MacroMedia (qui +produit Flash), Apple, AOL, etc. Nous en sommes actuellement à la norme +XHTML 1.0. +
+ + +
+L'élément de base d'un site est la page. C'est un
+fichier dont l'extension est normalement .html
(ou
+.htm
si votre système d'exploitation vous impose cette
+limitation) et qui contient du code XHTML.
+
Le XHTML ne s'occupe que de définir la structure logique de +votre document. Pour l'aspect visuel (mise en page, couleurs, +fontes, etc.), c'est le domaine des feuilles de style, dont le tutoriel est en cours de rédaction.
+ ++Le XHTML utilise des balises (aussi appelées +« éléments ») pour distinguer les éléments logiques de la +page.
+ +Toute balise doit être ouverte (sans quoi elle n'existe pas, +évidemment) ; et toutes les balises doivent également être +fermées.
+ +L'obligation de fermer chaque balise est l'une des principales +différences entre le HTML et le XHTML ; c'est une caractéristique +que le XHTML hérite du XML.
Une balise se présente sous la forme <tagada>, avec un < et +un >.
+ +Les balises se referment avec </tagada>, / étant l'élément +fermant. Certaines balises se ferment à l'intérieur (et à la fin) +d'elles-mêmes. Dans ce cas, la barre tranversale doit être placée juste +avant le > final. Exemple : <br />. +
+ ++Un jeu de balises présente donc obligatoirement l'une des deux formes +suivantes : +
+ ++<tagada> quelque chose </tagada> ++ +
+ou bien : +
++<tagada /> ++ +
Il n'existe aucune autre forme possible.
+ + +Les balises acceptent parfois des options, qu'on appelle des
+attributs : dans <tagada type="plouf" />, tagada
+est l'élément, type
l'attribut, et « plouf » la
+valeur de l'attribut.
+
+En XHTML, on écrit les éléments et les attributs en +minuscules. +
+ ++L'écriture des balises en minuscules est, là encore, un héritage du +XML ; en HTML, on recommandait d'écrire les éléments en majuscules +et les attributs en minuscules. +
+Les commentaires s'insèrent entre <!-- et -->. Attention, à +l'intérieur de commentaires, il vaut mieux ne pas utiliser de doubles +tirets (--). On ne peut pas placer de commentaires à l'intérieur d'un +élément. +
+ +Toutes les balises doivent être refermées.
+Toute partie de la page doit être contenue dans (au moins) une +balise.
+ +Les balises doivent être ouvertes et refermées dans +l'ordre. Faites spécialement attention dans le cadre de balises +imbriquées. +
+ ++Il ne faut donc pas écrire : +
+ ++<p> Je vous préviens tout de suite, c'est <em>non.</p></em> ++ +
mais :
+ ++<p> Je vous préviens tout de suite, c'est <em>non.</em> </p> ++ +
+Il faut refermer la balise <em> avant <p>, car on l'a ouverte +après. C'est le principe des poupées russes. +
+ + ++Quand un texte s'étoffe, il devient très vite difficile de se rappeler +dans l'ordre toutes les balises que l'on a ouvertes, ou de tout relire +pour être sûr de ne pas en avoir oublié. Comment être sûr que l'on +emboîte bien les poupées russes ?
+ +Voici une astuce. Écrivez dans l'ordre :
+ +Ainsi, vous serez sûr de ne +jamais commettre d'erreur dans l'ordre de vos balises. +
+ +Exemple : +Je mets les balises : +
++<p> </p> ++ +
+et je les remplis : +
++<p>Je vous préviens tout de suite, c'est <p> ++ +
+et je mets les balises : +
++<p>Je vous préviens tout de suite, c'est <em> </em> </p> ++ +
+et je les remplis : +
++<p>Je vous préviens tout de suite, c'est <em>non.</em> </p> ++ +
+Fabuleux, non ? N'est-ce pas ridiculement simple ? +
+ + +
+Vous avez parfois besoin de caractères spéciaux, que l'on ne peut pas
+saisir trivialement au clavier. Pour cela, le XHTML a défini des
+entités, qui par convention représentent ces caractères. Par
+exemple, le symbole euro (€) est €
, le e dans
+l'o (œ) s'écrit œ
.
+
+En plus de ces entités XHTML (dont vous pouvez trouver la liste +chez David Madore), vous disposez des entités Unicode. Unicode est une convention dont le +but est de représenter tous les langages du monde. Ainsi, vous écrirez +correctement le nom du compositeur Antonín Dvořák en utilisant +l'entité Unicode du r caron, à savoir ř (ř). +
+ +Toute page XHTML est contenue entre deux balises <html> +(c'est-à-dire entre <html> et </html>).
+ ++Remarque : les balises s'appellent bien <html> et non +<xhtml> : c'est un héritage, vous vous en doutez, du HTML. +
++Toute page XHTML doit commencer par les éléments suivants : +
+ ++<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> ++
+<html xmlns="http://www.w3.org/1999/xhtml"> ++
+Il existe d'autres DTD, par exemple celui pour les cadres (frames), mais souvenez-vous qu'utiliser les +cadres n'est pas une bonne idée ; cf. l'excellent article +« Pour en +finir avec les cadres » sur le site de l'OpenWeb Group. +
+ ++Pour l'instant, notre page-squelette ressemble donc à ceci : +
+ ++<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml"> + +<!-- Ce sont des commentaires. Ils sont complètement ignorés par +<!-- les navigateurs. Sinon, ici se trouve normalement le corps de +<!-- votre page. --> + +</html> ++ + + + +
Le rôle des en-têtes dans une page XHTML (comme dans un courrier +électronique) est de donner des méta-informations plus ou moins +importantes.
+ +Par exemple, l'identité de l'auteur, le titre de la page, +l'encodage, la langue utilisée, etc. Les en-têtes sont déclarées à +l'intérieur de l'élément <head> (logique, non ?), +c'est-à-dire entre les balises <head> et </head>. +
+ +La plus importante des en-têtes est... le titre de la page. Dans un +navigateur graphique (Internet Explorer, Mozilla, etc.) il est affiché +dans la barre de titre. Il est également utilisé par les moteurs de +recherche. Un bon titre est informatif (évitez les jeux de mots nazes) +tout en restant relativement court. Il se déclare dans l'élément +<title> qui est obligatoire.
+ +Ainsi, Jean-Paul Sartre pourra utiliser comme titre de sa page +d'accueil : +
+ ++<title> Page Web de Jean-Paul Sartre </title> ++ + + +
+Elles sont facultatives, mais importantes à la fois pour le navigateur +qui a des renseignements sur la manière dont afficher la page, et pour +les moteurs de recherche, qui s'en servent pour indexer vos +pages. Nous vous en présentons quelques-unes. +
+ + ++<meta name="author" content="Jean-Paul Sartre" /> ++ +
Vous pouvez déclarer plusieurs auteurs en séparant +les noms par des virgules.
+ +<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" />+ +
Ceci déclare que votre page est du (X)HTML (là +encore, il s'agit d'un héritage...) et que l'encodage est l'iso-8859-1 +(alias iso-latin-1), l'encodage standard pour l'Europe occidentale. La +déclaration de l'encodage est importante pour le navigateur.
+ +<meta http-equiv="Content-Language" content="fr" />+ +
Quelques codes utiles : fr
pour
+le français, en
pour l'anglais, de
pour
+l'allemand, es
pour l'espagnol, it
pour
+l'italien, ru
pour le russe. Déclarer la langue utilisée
+est utile pour les synthétiseurs vocaux des navigateurs pour aveugles
+(qui en déduisent comment prononcer) comme pour les navigateurs
+standards qui peuvent en déduire, par exemple, s'il faut utiliser des
+guillemets anglo-saxons ("") ou français (« »).
+<meta name="keywords" lang="fr" content="Philosophie, existentialisme, +littérature engagée" /> ++ +
Cette balise meta
est utilisée par certains moteurs de
+recherche pour indexer les pages. Ne mettez que les mots-clefs les
+plus significatifs, les moteurs n'aiment pas les listes trop
+longues. Notez au passage que vous pouvez tout à fait passer à la
+ligne.
+Voilà, on en a fini avec les en-têtes (on n'oublie pas le +</head> à la fin). On passe au cœur de votre page : ce que +le lecteur va voir via son navigateur. +
+ +Le corps de la page est contenu entre balises <body>. Comment +le remplir ? Vous le verrez dans les lignes suivantes.
+ ++Important : pour tous les éléments de <body> il +y a une distinction importante entre les balises dites « block level » et les balises « inline +level ».
+ +Les block level sont par exemple des +paragraphes, des titres, etc. Ils forment des +« blocs ». Typiquement, ils comprennent une ou plusieurs +phrases.
+ +Les éléments inline sont plutôt de la mise en +forme, ils s'appliquent à l'intérieur des blocs. C'est le cas des +balises qui mettent en valeur le texte, qui le renforcent. Typiquement, +on les trouve à l'intérieur d'une phrase.
+ +La distinction peut vous paraître confuse mais vous comprendrez +mieux ensuite. Vous pouvez regarder par exemple la différence entre citation inline et bloc.
Vous pouvez le copier-coller pour servir de modèle à vos pages +Web.
+ ++<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml"> + +<head> +<title><!-- insérer le titre --></title> +<meta name="author" content="<!-- Insérer votre nom -->" /> +<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" /> +<meta http-equiv="Content-Language" content="fr" /> +<meta name="keywords" lang="fr" content="<!-- Insérer les mots-clefs de votre page-->" /> +</head> + +<body> + +<!-- Ici c'est le corps de la page --> + +</body> +</html> ++ + +
Maintenant, il s'agit de remplir un peu votre page. Pour cela, il +faut réfléchir un peu avant et la structurer au moyen de titres +hiérarchisés. En effet, dès que la page dépasse les « vous êtes bien +sur la page de Toto », les informations ont besoin d'être +hiérarchisées pour être lisibles. Imaginez cette page sans le moindre +titre ! +
+ +Si vous avez fait du LaTeX, vous connaissez ce
+genre de chose (\chapter{}
, \section{}
,
+\subsection{}
...). Idem pour Word avec son système de
+Titre 1, Titre 2, etc.
En XHTML, c'est aussi simple : <h1>, +<h2>, <h3>... Ça va comme ça jusqu'à <h6>, ce qui +vous laisse pas mal de marge pour structurer votre +document. Traditionnellement, <h1> est réservé au titre de la +page (qui peut être, ou pas, le même que le <title>, à vous de +voir). +
+ ++<h1>Logique transcendantale</h1> +<!-- ... --> +<h2>Analytique transcendantale</h2> +<!-- ... --> +<h3>Analytique des principes</h3> +<!-- ... --> +<h4>Système de tous les principes de l'entendement pur</h4> +<!-- ... --> +<h5>Représentation systématique de tous les principes synthétiques</h5> +<!-- ... --> +<h6>Les postulats de la pensée empirique en général</h6> +<!-- ... --> +<h6>Réfutation de l'idéalisme</h6> +<!-- ... --> +<h2>Dialectique transcendantale</h2> ++ +
+On en arrive au cœur du problème : mettre en forme le +texte. +
+ ++La plus grande partie d'un texte, habituellement, c'est... du +texte. Des paragraphes de texte. En XHTML, les paragraphes sont +délimités par des <p> (et </p>, évidemment). Avec la +plupart des navigateurs, les paragraphes sont rendus à la manière +anglo-saxonne : alignement sur la gauche, pas d'alinéa. Il y a +généralement une espace entre deux paragraphes. +
+ ++Pour aller simplement à la ligne, utilisez l'élément <br />. +
+ + ++Vous pouvez citer au niveau inline, soit en utilisant +directement des guillemets, soit en utilisant l'élément <q> +(pour quote) : +
+ ++<q>Delenda Carthago</q>, comme disait le grand Caton... ++ + +
Au passage, Internet Explorer ignore purement et +simplement l'élément <q>, donc mieux vaut utiliser directement +les guillemets. +
+ +Au niveau bloc, c'est l'élément <blockquote> qu'il vous +faut : +
+ ++<p>Charles-Marie de La Condamine est un savant et explorateur +français, né à Paris en 1701. Il est admis à à l'Académie française en +1760. Il écrit à ce sujet :</p> + +<blockquote> +<p> +La Condamine est aujourd'hui<br /> +Reçu dans la troupe immortelle<br /> +Il est bien sourd, tant mieux pour lui,<br /> +Mais non muet, tant pis pour elle.<br /> +</p> +</blockquote> ++ +
+<blockquote> est généralement rendu par un bloc indenté à droite +et à gauche : +
+ +++ ++La Condamine est aujourd'hui
+
+Reçu dans la troupe immortelle
+Il est bien sourd, tant mieux pour lui,
+Mais non muet, tant pis pour elle. +
+Le XHTML ne se soucie pas du rendu visuel. Pour lui, le gras et +l'italique n'existent pas à proprement parler. Mais il sait mettre en +valeur du texte.
+ +<strong> est utilisé pour renforcer un membre +de phrase, insister sur son importance. Il est donc souvent rendu par +du gras par les navigateurs.
+ +<em> (pour emphasize) sert également à mettre +en relief un membre de phrase. Il est plus faible que <strong>. Il +est généralement rendu par de l'italique.
+ +
+Selon les règles typographiques habituelles, un mot, une citation en
+langue étrangère non francisée doit être mis en italique. Il ne s'agit
+pas ici de mettre en valeur, mais d'une convention typographique. Dans
+ce cas, vous devez utiliser l'élément <i>. Vous pouvez indiquer
+de quelle langue il s'agit en utilisant l'attribut
+lang
. Exemple :
+
+Selon le goût italien, les pâtes doivent être cuites <i lang="it"> al dente </i>. ++ +
+Ce qui donne : +
+ ++Selon le goût italien, les pâtes doivent être cuites al dente. ++ +
+Le XHTML vous permet de structurer encore davantage vos documents, +essentiellement les documents techniques. <dfn> (pour define) sert à indiquer un mot dont on va donner la +définition, une fois pour le reste du document. Exemple : +
+ ++<p>On dit qu'un morphisme de schémas est <dfn>étale</dfn> +lorsqu'il est à la fois lisse et non ramifié. En fait, il suffit pour cela +qu'il soit à la fois <em>plat</em> et non ramifié.</p>+ +
+C'est <cite> qu'il faut utiliser pour les citations de titres de +livres, de films, etc. L'élément <cite> est usuellement rendu par +de l'italique. Exemple : +
+ ++Le film <cite lang="it">Morte a Venezia</cite> de Luchino +Visconti est une adaptation de la nouvelle <cite lang="de">Der Tod +in Venedig</cite> de Thomas Mann. ++ +
+<code> (que vous reverrez dans la section du texte +préformaté) est également un style de texte qui sert à démarquer +un extrait de code informatique du texte normal. Exemple : +
+ ++La ligne <code>#include <stdio.h></code> +demande au compilateur d'inclure dans le programme certaines +informations sur la bibliothèque standard d'entrées-sorties. ++ +
+Les sigles peuvent être indiqués par un élément <abbr>, et les
+acronymes (sigles prononçables, comme ONU, OTAN, etc.) par
+l'élément... <acronym>. Ces éléments sont
+intéressants surtout si on utilise leur attribut title
:
+certains navigateurs peuvent alors afficher le contenu de
+title
dans une bulle d'aide. Démonstration :
+
+
+L'<acronym lang="en" title="United Nations Special +Commission">UNSCOM</acronym> a été créée pour assister +l'<abbr lang="en" title="International Atomic Energy +Agency">IAEA</abbr> en Iraq. ++ +
+Les bons navigateurs (Mozilla ou FireFox par exemple) affichent le
+contenu du title
sous la forme d'une bulle d'aide (tooltip en anglais) quand vous laissez le curseur dessus. Faites le
+test :
+
+L'UNSCOM a été créée pour assister l'IAEA en Iraq. ++ + +
Il y a trois sortes de listes possibles en XHTML :
+ +Toutes les listes sont des éléments blocs.
+ +Elles sont aussi dites « listes à puces » car souvent les +navigateurs affichent des puces devant chaque entrée de +liste. <ul> et </ul> (pour Unordered +Lists) marquent le début et la fin d'une liste, <li> et +</li> le début et la fin d'une entrée de liste.
+ +En exemple, voici quelques armes de Goldorak :
+ ++<ul> +<li> mégavolts</li> +<li> cornofulgure</li> +<li> astéro-hache</li> +</ul> ++ +
Ce qui donne :
+ +Même principe, avec <ol> (Ordered Lists) à
+la place de <ul>. La numérotation se fera par défaut en chiffres
+arabes (1, 2, 3...). Vous pouvez changer le type de numérotation, en
+chiffres romains ou en caractères alphabétiques (a, b, c...) grâce à
+l'attribut type
:
+
+<ol type="i"> +<li> mégavolts</li> +<li> cornofulgure</li> +<li> astéro-hache</li> +</ol> ++ +
Ce qui donne :
+ +Pour changer de numérotations, changez la valeur de
+type
: I pour les chiffres romains majuscules, a pour les
+caractères alphabétiques minuscules, A pour les majuscules.
+On utilise l'élément <dl> (Definition list). À +l'intérieur de l'élément <dl>, <dt> (pour definition term) est une entrée du lexique, et <dd> +(pour definition definition...) la définition associée +à cette entrée. Admettons que vous fassiez un lexique du folklore +normalien. +
+ ++<dl> + + <dt>Amazon</dt> + <dd>Flipper mythique de la K-fêt, arrivé à l'École en 1990.</dd> + + <dt>Fun machine</dt> + <dd>L'autre flipper, qui ne sert comme son nom l'indique qu'à se dérouiller les + doigts ou à tuer le temps en attendant de jouer à l'Amazon.</dd> + +</dl> ++ +
Ce qui donne :
+ +On utilise l'élément <pre> pour du texte préformaté au niveau +bloc. Différences avec du texte normal : les navigateurs respectent +toutes les espaces que vous avez indiqués et ils utilisent généralement +une fonte à espacement fixe. Le texte préformaté peut être utilisé pour +mettre en page un poème, par exemple, ou plus prosaïquement, du code +informatique.
+ + Attention toutefois, <pre> n'est pas l'environnement
+verbatim
de LaTeX : le code XHTML y est interprété. Dans
+cette documentation, par exemple, on a recours aux entités pour représenter <, > et &.
+
Par exemple, si je veux afficher un programme conçu +en langage C, je dois insérer dans la page HTML le code +suivant :
+ ++<pre> +#include <stdio.h> + +int main(void) +{ + printf("Hello, world!\n"); + return 0; +} +</pre> ++ +
Cela sera affiché de la façon suivante :
+ ++#include <stdio.h> + +int main(void) +{ + printf("Hello, world!\n"); + return 0; +} ++ +
+(pour ceux qui ne connaissent pas le langage C, vous pouvez
+exécuter ce programme en recopiant ces lignes dans un fichier
+hello.c
; ensuite, tapez gcc hello.c
puis
+./a.out
et regardez le résultat).
+
Pour citer du code en inline, utilisez la bien-nommée +balise <code>. +
+ +
+On se sert de l'élément <img /> (pour image, bien
+sûr) et de ses attributs. Le principal attribut est
+src
: il permet de spécifier l'adresse où aller
+chercher l'image. Ainsi, quand on écrit son fichier
+~/www/index.html
pour inclure une image située dans son
+répertoire ~/www/images/
, on écrira :
+<img src="images/monimage.jpg" /> ++ +
On peut aussi indiquer une adresse +absolue quand l'image n'est pas sur votre compte, par +exemple :
+ ++<img src="http://www.eleves.ens.fr/tuteurs/icones/note.png" /> ++ +
Il est obligatoire d'indiquer une description de votre image, en
+guise de texte alternatif pour les navigateurs texte, ou si pour une
+raison quelconque l'image ne peut pas être téléchargée ; le texte
+alternatif sert, en particulier, pour les non-voyants qui disposent de
+logiciels pour lire du texte à haute voix, mais n'ont rien pour décrire
+des images. Ce texte doit être court et informatif. On l'indique avec
+l'attribut alt
:
+
+<img src="images/pouf.jpg" alt="Photo de moi et mon chien Pouf en vacances" /> ++ +
Si l'image ne joue aucun rôle sémantique
+(c'est-à-dire si elle n'est là que pour décorer), on indique
+alt=""
.
Les formats les plus couramment utilisés pour le Web sont le JPEG,
+en .jpg
et le GIF, en .gif
+— utiliser de préférence le format PNG, GIF n'étant pas
+libre, et moins bon techniquement. JPEG est un format qui est plus
+adapté aux photos, GIF ou PNG sont plus adaptés aux logos et de
+manière générale aux images ayant peu de couleurs.
+
+Les tableaux sont décrits par l'élément <table>. C'est l'un des +chapitres les plus complexes du XHTML : les possibilités sont très +nombreuses. +
+ +<table> définit l'ensemble du tableau. À l'intérieur, il faut décrire +les lignes du tableau et ses cellules. L'élément <tr> décrit les lignes, +et <td> les cellules. On déclare dans l'ordre <table>, puis +<tr> et enfin <td>. +
+ ++<table> +<tr><td> Cellule 1 </td><td> Cellule 2 </td></tr> +<tr><td> Cellule 3 </td><td> Cellule 4 </td></tr> +<tr><td> Cellule 5 </td><td> Cellule 6 </td></tr> +</table> ++ +
Ce qui donne :
+ +Cellule 1 | Cellule 2 |
Cellule 3 | Cellule 4 |
Cellule 5 | Cellule 6 |
Pas très croquignolet, hein ?
+ ++On peut déjà commencer par donner un titre à ce tableau, grâce à +l'élément <caption>. Le titre du tableau se place au début du +tableau, avant la première ligne (avant le premier <tr>) mais dans +le tableau tout de même (donc après la déclaration de <table>). +
+ ++On veut également différencier des méta-cellules, qui donnent des +informations sur le contenu des cellules de données, des cellules de +données à proprement parler. Les cellules de données, c'est bien sûr +<td>, et les méta-cellules, c'est l'élément <th> (le H +étant pour header, en-tête) qui s'en charge. +
+ ++On peut aussi, pour rendre le tableau un peu plus esthétique, et plus lisible (6 +cellules ça va, mais quand vous en aurez 42...), lui donner une bordure. On +utilise pour cela l'attribut border à qui on spécifie une épaisseur en nombre de +pixels. Généralement, border=1 suffit amplement à ce que vous voulez faire +(délimiter mieux les cellules). +
+ ++<table border=1> +<caption>Ceci est un tableau</caption> +<tr><th> Colonne gauche </th><th> Colonne droite</th></tr> +<tr><td> Cellule 1 </td><td> Cellule 2</td></tr> +<tr><td> Cellule 3 </td><td> Cellule 4</td></tr> +<tr><td> Cellule 5 </td><td> Cellule 6</td></tr> +</table> ++ +
Donc :
+ +Colonne gauche | Colonne droite |
---|---|
Cellule 1 | Cellule 2 |
Cellule 3 | Cellule 4 |
Cellule 5 | Cellule 6 |
Le meilleur pour la fin, les liens ! Ce qui fait d'une page Web une +vraie page hypertexte (le HT de XHTML) et pas un bête document. Les +liens se décrivent avec l'élément <a> (qui est, bien sûr, inline), suivi d'attributs. +
+ +Le lien de base utilise l'attribut href :
+ ++Retourner au <a href="http://www.eleves.ens.fr/">serveur des élèves</a>. ++ +
donne ainsi :
+ ++Retourner au serveur des élèves. ++ +
On peut utiliser des liens absolus, comme celui ci-dessus, qui
+donne l'ensemble de l'URL, mais aussi des liens relatifs, qui sont
+relatifs à l'arborescence de votre site. Admettons que vous ayez dans
+votre répertoire ~/www/
un répertoire stage
+qui contient, entre autres, le fichier rapport.html
. Pour
+faire un lien dessus, depuis la page d'accueil, ça donnera :
+
+Mon <a href="stage/rapport.html">rapport de stage</a> +parle du lien entre les nombres p-adiques et les phases de +la lune.+ +
Une ancre sert à faire un lien local, c'est-à-dire vers un +endroit précis du document. C'est particulièrement utile pour faire +une table des matières avec des liens qui pointent vers les titres, ou +encore pour faire des références croisées dans un document. +
+ +
+On commence par définir les ancres, c'est-à-dire les endroits vers
+lesquels on veut pointer. On utilise l'attribut name
de
+l'élément <a> :
+
+Les <a name="olm">Olmèques</a> ont véritablement +existé. C'est la première des grandes civilisations précolombiennes... ++ +
Quand vous lisez le document avec un navigateur, +l'ancre est invisible. Pour choisir le nom de l'ancre, vous avez à +votre disposition tous les caractères alphanumériques, et mêmes les +caractères accentués. Veuillez seulement à ne pas utiliser deux fois +la même ancre au sein du document.
+ +Pour faire le lien vers cette ancre, on utilise toujours l'attribut
+href
, mais en modifiant la syntaxe avec un
+#
:
+Esteban, Zia et Tao rencontrent alors les Olmèques, une peuplade +extra-terrestre (voir ici la <a href="#olm">véritable histoire +du peuple olmèque</a>. ++ +
Vous pouvez positionner un lien vers cette ancre +même depuis un autre fichier :
+ ++Voir <a href="citesdor.html#olm">l'histoire des Olmèques</a>. ++ +
+Vous pouvez créer un lien de telle sorte que, lorsqu'on suit ce lien, on
+vous envoie un courrier électronique. On utilise toujours l'élément
+<a> et son attribut href
. Seulement, le protocole du
+lien change. Auparavant c'étaient des liens HTTP (Web). Mais vous pouvez
+aussi utiliser le protocole mailto
, qui est le protocole
+des courriers électroniques.
+
+Écrivez-moi : <a href="mailto:mon.adresse@ens.fr">mon.adresse@ens.fr</a> ++ +
Quand un lecteur suivra ce lien, son navigateur +lui proposera de vous envoyer un mail.
+ +
+Les entités dont vous avez besoin en l'espèce
+sont @
pour une arobase (@) ou encore
+.
pour un point (.) et -
+pour un tiret (-). Ce qui donne :
+
+Mon adresse : <a href="mailto:jean-paul.sartre@ens.fr">jean-paul.sartre@ens.fr</a> ++ +
Complètement illisible, on est bien d'accord ? C'est ce que verra +le robot collecteur d'adresses. En revanche, un lecteur normal passant +par un navigateur verra ceci : +
+ ++Mon adresse : <a href="mailto:jean-paul.sartre@ens.fr">jean-paul.sartre@ens.fr</a> ++ +
Vous pouvez utiliser ce système avec d'autres protocoles, celui des
+news (news:
) pour que le navigateur affiche (s'il en est
+capable) le message dont vous avez donné le message-ID, ou le FTP...
+
+Vous avez fini de taper votre première page XHTML. Vous vous êtes bien +relu. Il vous reste une dernière étape : passer cette page au +validateur XHTML. Il vous permettra de voir si vous avez bien refermé +toutes vos balises dans l'ordre qu'il faut, par exemple. +
+ ++Il vous suffit d'aller dire coucou au validateur du W3C et de lui indiquer +l'URL de votre page XHTML, ou encore de lui indiquer le chemin du +fichier sur votre disque dur. Vous saurez tout de suite si votre code +est bon ou s'il reste quelques corrections à faire... +
+ ++Si le code de votre page n'est pas correct, le validateur vous +l'indiquera, en vous précisant quelles sont les lignes incriminées dans +votre fichier XHTML, et la nature de l'erreur. En suivant ces +instructions, vous pourrez corriger votre code. +
+ ++Quand vous aurez une page impeccable, ce qui est loin d'être difficile à +obtenir (et qui est très gratifiant, vous verrez), le validateur vous +permettra d'insérer dans votre page le code suivant : +
+ ++<p> +<a href="http://validator.w3.org/check?uri=referer"> + <img src="http://www.w3.org/Icons/valid-xhtml10" + alt="Valid XHTML 1.0!" height="31" width="88" /></a> +</p> ++ +
Il peut être très utile de suivre ce conseil. Vous aurez ainsi dans
+votre page le logo suivant :
+
+
+
+ce qui présente les avantages suivants : +
+ ++Nous vous rappelons que les respect des normes n'est pas seulement une +affaire de pédanterie, mais avant tout d'accessibilité. Pour en savoir +plus sur le calvaire des pages non conformes à la norme pour les +personnes handicapées, vous pouvez aller voir le site AccessiWeb. +
+ + + + + diff --git a/src/internet/web/html/css.tml b/src/internet/web/html/css.tml new file mode 100644 index 0000000..36067e3 --- /dev/null +++ b/src/internet/web/html/css.tml @@ -0,0 +1,486 @@ + + + + ++Les feuilles de style permettent de décrire la présentation d'une page web. +Elles remplacent avantageusement l'ancienne méthode, qui consistait à mettre +des balises avec des attributs partout dans le texte. Elles permettent de +centraliser toute la mise en forme, et donc d'avoir à peu de frais une mise +en page cohérente. De plus, les possibilité sont beaucoup plus +intéressantes. +
+
+Le principe d'une feuille de style est d'associer certains paramètres à
+certaines balises. Vous avez probablement remarqué que votre navigateur
+considère, par exemple, que tous les éléments <strong>
+doivent être représentés en gras. C'est précisément le principe des feuilles
+de style : d'une seule ligne, vous pouvez demander à ce que tous les
+éléments <em>
soient en rouge. Pour vous donner une idée,
+la feuille de style de la présente page demande à ce que les éléments
+<pre>
soient représentés avec un fond de cet inimitable
+lemmonchiffon2.
+
+Il est possible d'être plus sélectif que ça. Le HTML fournit deux éléments,
+<div>
au niveau bloc et <span>
au
+niveau inline, qui n'ont aucune présentation particulière, et servent
+précisément à se voir attacher un style.
+
+Il est possible d'inclure une feuille de style de deux manières différentes
+dans un document. La première possibilité, qui est probablement la plus
+simple, est de mettre la feuille de style directement dans l'entête du
+document, entre une paire de balises <style
+type="text/css">
...</style>
.
+
+La seconde possibilité est de mettre le code dans un fichier séparé, souvent
+nommé en .css
, et de l'inclure avec dans l'entête une balise de
+la forme <link rel="stylesheet" type="text/css"
+href="fichier.css">
.
+
+Ces deux méthodes peuvent d'ailleurs être utilisées ensemble dans le même +document. Dans ces conditions, si elles se contredisent, c'est la feuille +écrite directement dans le document qui a raison. Le mieux est en général +d'avoir une feuille de style dans un fichier séparé pour donner la +présentation de tout un site, et de rajouter dans chaque page ce qui est +nécessaire uniquement là. +
+ +
+Une feuille de style s'écrit dans le langage appelé CSS, pour
+Cascading Stylesheet. Le terme cascading souligne une
+propriété importante du langage : les caractéristiques de présentations se
+propagent « en cascade » d'un élément à ses fils. Par exemple, si un élément
+de type <a>
, dont on ne sait rien de la police, se trouve
+dans un élément de type <em>
, qui est en italique, alors
+le <a>
va hériter de son père
+<em>
le fait d'être en italique.
+
+Le langage CSS est très simple, et le mieux est de commencer par un exemple.
+Voici comment on décrirait, si ce n'était déjà fait, que les éléments de
+type <strong>
doivent être en gras :
+
+strong { font-weight: bold; } ++
+C'est limpide, n'est-ce pas ? +
+ ++Le point-virgule à la fin servirait à séparer d'une autre caractéristique +donnée, comme par exemple : +
++strong { + font-weight: bold; + color: red; +} ++
+Le point-virgule final n'est pas indispensable, mais le mettre tout de suite +évite de l'oublier plus tard. +
+ +
+Il est possible de mettre des commentaires presque n'importe où dans une
+feuille de style CSS en les encadrant de /*
et */
,
+comme dans le langage C.
+
+Nous allons maintenant voir les deux grandes parties de CSS : les
+sélecteurs, qui décident à quel(s) élément(s) une règle s'applique
+(le strong
de l'exemple), et les déclarations, qui
+indiquent l'apparence que ces éléments doivent prendre (le
+font-weight: bold
de l'exemple). Ces deux parties sont tout à
+fait indépendantes, et il est possible de les lire dans un ordre quelconque.
+
+L'essentiel des sélecteurs sera formé de noms d'éléments, ce qui désigne +tous, ou certains éléments de ce type. +
+ ++Il est possible de mettre plusieurs sélecteurs par règle, en les séparant +par une virgule. La règle s'applique alors à tous les sélecteurs, comme si +plusieurs règles avaient été écrites. +
+ +
+Un même élément du document peut recevoir différentes mises en forme par
+différentes règles. En général, les règles sont simplement combinées : par
+exemple du bleu parce que c'est un lien, et du gras parce que c'est dans un
+<strong>
, ça donne du bleu gras.
+
+Si les règles portent sur le même attribut (par exemple la couleur), c'est +la règle la plus précise qui l'emporte. Ainsi, on peut définir l'apparence +de tous les liens de la page, mais revenir ensuite pour définir l'apparence +des liens de la barre de navigation. +
+ ++Considérons par exemple : +
++table p { par-indent: 0; } ++
+Ce sélecteur s'applique à tous les éléments de type p
contenus
+dans un élément de type table
, et seulement ceux-là. Dans cet
+exemple, p
et table
auraient pu être des
+sélecteurs plus compliqués (mais vous ne savez pas encore en faire). Et il
+est également possible de mettre trois sélecteurs à la suite ou plus.
+
+Ce genre de règle s'applique à n'importe quel degré de descendance : dans
+l'exemple, le p
ne sera pas directement dans le
+table
, il y aura certainement un tr
et un
+td
entre les deux. Ça n'a pas d'importance.
+
+Un sélecteur de la forme sélecteur1 >
+sélecteur2
, au contraire, ne désigne que le cas où
+sélecteur2
est directement dans
+sélecteur1
, ce qui peut être utile dans quelque
+chose de la forme :
+
+ul > li { margin-left: 1em; } ++
+si on n'a pas envie que la règle s'applique à un li
qui serait
+contenu dans une sous-liste de type ol
.
+
+En HTML, n'importe quel élément peut être affublé d'un attribut
+class
, qui n'a aucune signification, et sert uniquement à faire
+le lien avec une feuille de style.
+
+Ainsi, il peut me prendre l'envie, quand un paragraphe est un exemple,
+d'écrire non pas <p>
tout court, mais <p
+class="exemple">
. Si je ne fais rien de plus, ça ne servira à
+rien. Mais je peux ajouter une règle CSS comme par exemple :
+
+p.exemple { font-family: sans-serif; } ++
+et alors tous ces paragraphes apparaîtront dans une police différente. +
+ +
+L'attribut class
s'utilise souvent en conjonction avec les
+éléments div
et span
, qui deviennent ainsi des
+balises à tout faire. Il peut être plus pratique de travailler au niveau
+abstrait de div
. Supposons que je veuille mettre un filet bleu
+à gauche de mes exemples. Je peux écrire :
+
+p.exemple { border-left: solid blue 2px; } ++
+Mais si je fais ainsi, je ne peux pas mettre un exemple de plusieurs +paragraphes, parce que le filet bleu serait interrompu dans l'espace entre +les paragraphes. Je ne peux pas non plus mettre une énumération ou une table +dans l'exemple. Il vaut mieux alors écrire : +
++div.exemple { border-left: solid blue 2px; } +... +<div class="exemple"> +<p>Ici mon exemple.</p> +<p>Il peut faire plusieurs paragraphes</p> +</div> ++
+Je peux également utiliser .exemple
tout court comme sélecteur,
+ce qui s'applique alors à tous les éléments de classe exemple, quel que soit
+leur type, et me laisse ainsi la liberté d'écrire <p
+class="exemple">
dans les cas simples, et de recourir à un
+div
dans les cas plus compliqués.
+
+Les classes peuvent bien sûr être utilisée avec des sélecteurs +hiérarchiques. +
+ ++HTML et CSS ont un mécanisme similaire aux classes, mais ad-hoc, pour faire +le lien avec certaines fonctionnalités spécifiques, et en particulier les +liens. +
+ +
+Le HTML a deux utilisation pour l'élément <a>
: faire un
+lien et poser une ancre (cette dernière utilisation est obsolescente, mais
+encore indispensable pour compatiblité). S'il est légitime de changer
+l'apparence d'un lien (le soulignement usuel est quand même très laid), il
+n'est probablement pas souhaitable que les ancres apparaissent de la même
+manière. Le sélecteur a:link
désigne un lien par opposition à
+une ancre.
+
+Vous avez sans doute remarqué que certains navigateurs affichent de couleur
+différente les liens déjà visités. CSS permet de changer ça en utilisant un
+sélecteur a:visited
. Attention, :visited
s'utilise
+à la place de :link
: un lien déjà visité n'est pas
+reconnu par a:link
.
+
+Dans le même genre d'idée, il existe la pseudo-classe :hover
,
+qui désigne un élément (souvent un lien, mais ce n'est pas indispensable)
+que l'utilisateur « touche », avec le pointeur de la souris par exemple (la
+signification exacte dépend des navigateurs). On trouve également les
+pseudo-classes :focus
et :active
, qui ont des
+significations proches (pour un navigateur à la souris habituel,
+:hover
dit que le curseur est dessus, :active
que
+l'utilisateur est en train de cliquer, et :focus
désigne le
+fait d'être actif pour le clavier).
+
+Les pseudo-classes se combinent. Ainsi, pour changer le fond d'un lien quand +le pointeur passe dessus, on écrira : +
++a:link:hover, a:visited:hover { background-color: yellow; } ++ +
+Il existe encore quelques autres pseudo-classes, comme :lang
,
+mais elles sont souvent mal reconnues par les navigateurs, et moins utiles.
+
+Les déclarations sont toujours de la forme nom:
+valeur;
(le point-virgule final peut être omis), et
+permettent de changer énormément d'aspects de la présentation d'un élément.
+
+Dans beaucoup de cas, la valeur peut être inherit
, ce qui
+revient à ne pas spécifier de valeur et utiliser celle de l'élément parent
+(ainsi, un lien est de la même police que le paragraphe qui l'englobe).
+Cette valeur est souvent le défaut, et il n'est utile de la préciser que
+pour annuler une autre déclaration (ce qui peut se voir comme une mauvaise
+conception, mais vous êtes libres).
+
+La première chose qu'on veut apprendre à changer, c'est évidemment
+l'apparence des caractères : la police et la couleur, ainsi que la taille.
+L'utilisation de CSS fait complètement disparaître l'usage de l'antique
+élément <font>
. Voici l'essentiel des déclarations de
+police :
+
font-style: italic
, oblique
ou
+ normal
.font-variant: small-caps
pour les petites capitales, ou
+ normal
.font-weight: bold
pour le gras, ou
+normal
.font-family: famille
pour choisir la famille (la
+ police proprement dite) ; les noms comportant des espaces doivent être mis
+ entre guillemets. Comme tout le monde n'a pas toutes les polices du monde,
+ il est possible d'en indiquer plusieurs, séparées par des virgules. Le CSS
+ définit des familles génériques, serif
,
+ sans-serif
, monospace
, cursive
et
+ fantasy
, il est conseillé de toujours mettre une famille
+ générique en dernier recours.
+Pour changer la taille de la police, c'est font-size
qu'il faut
+utiliser. On peut lui donner une valeur descriptive (xx-small
,
+x-small
, small
, medium
,
+large
, x-large
, xx-large
), une valeur
+relative à la taille actuelle (larger
, smaller
ou
+un pourcentage), ou une longueur fixée (voir plus bas pour les unités
+possibles). Ce dernier choix est à éviter car il prive l'utilisateur de sa
+liberté de choix sur la taille des polices (quelqu'un qui a de bons yeux
+peut préférer des polices petites pour tout avoir sur une page, quelqu'un
+qui a des problèmes de vue voudra de gros caractères).
+
+Il est possible de spécifier plusieurs propriétés d'un coup avec
+font:
. Il faut alors mettre d'éventuels style, variante et
+graisse, puis une taille, puis une famille.
+
+La couleur se règle avec color:
. Une couleur peut s'indiquer
+de plusieurs manières :
+
#rrggbb
, où rr
, gg
et
+ bb
sont des nombres hexadécimaux à deux chiffres, de 00 à FF,
+ pour le rouge, le vert et le bleu.rgb(r,g,b)
, où
+ r, g et b sont soit des pourcentages soit
+ des valeurs entières de 0 à255, pour le rouge, le vert et le bleu.+Un bloc (un paragraphe, un titre, une table) est entouré de trois zones : de +l'intérieur vers l'extérieur, du remplissage (padding), une bordure +(souvent fine ou absente) et une marge. Les marges d'objets voisins +fusionnent, mais ça s'arrête à la bordure. Quand on définit une couleur de +fond, celle-ci s'étend dans le remplissage jusqu'à la bordure. +
+ +
+Dans le cas des marges, seule leur étendue peut être définie. On utilise
+pour ça margin-top
, margin-right
,
+margin-bottom
et margin-left
. On peut indiquer les
+quatre d'un coup avec margin
, en les indiquant dans cet ordre
+(dans le sens des aiguilles d'une montre, en partant de midi). Si on ne met
+que deux longueurs elles définissent les marges haute et basse d'une part et
+gauche et droite d'autre part, et si on n'en met qu'une, les quatre marges
+sont égales.
+
+Les longueurs sont indiquées par des nombres avec des unités. Les unités
+possibles sont in
(pouce), cm
, mm
,
+pt
(point, 1/72 pouce), pc
(pica, 12 points). On a
+également em
et ex
, qui dépendent de la police
+active, et surtout de sa taille ; l'em est plutôt à utiliser pour les
+longueurs horizontales, l'ex pour les longueurs verticales ; ce sont de
+bonnes unités pour les espaces entre les lignes de texte par exemple. On a
+pour finir px
, qui désigne un pixel à l'écran.
+
+Les dimensions des marges et du remplissage peuvent être également un
+pourcentage, relatif au bloc qui emboîte celui dont on définit les
+caractéristiques (souvent la page elle-même, mais pas toujours). Enfin, on
+peut indiquer auto
pour les marges, pour qu'elles s'ajustent au
+mieux.
+
+Le remplissage se règle exactement comme les marges, à ceci près qu'il faut
+mettre padding-
à la place de margin-
.
+
+Pour la bordure, on a trois caractéristiques qu'il est possible de régler,
+width
(l'épaisseur), color
et style
+(les styles possibles sont none
, hidden
,
+dotted
, dashed
, solid
,
+double
, groove
, ridge
,
+inset
et outset
, essayez-les pour voir ce qu'ils
+font), ce qui donne 12 propriétés, de la forme
+border-côté-caractéristique
(par exemple
+border-left-color
).
+
+On a également les raccourcis border-côté
, qui
+permettent de définir tout ou partie des trois caractéristiques d'un coup,
+et border
tout court qui définit une bordure identique pour les
+quatre côtés d'un coup. Il est d'ailleurs souvent préférable d'utiliser
+border
tout court ; en particulier, pour un effet de relief, il
+vaut mieux utiliser les styles adaptés que changer manuellement les couleurs
+des différents côtés.
+
+Maintenant, le fond. Il est possible de choisir une couleur unie avec
+background-color
. La valeur transparent
est
+également possible, et parle d'elle-même. On peut également mettre une image
+de fond avec background-image:
+url(http://some.where/image.png
(il est bien sûr possible
+de mettre un chemin relatif) ; la valeur none
permet d'enlever
+une image déjà présente. On peut contrôler la position de l'image, avec
+background-repeat
, qui peut prendre les valeurs
+repeat
, repeat-x
, repeat-y
ou
+no-repeat
, pour choisir si l'image se répète ou pas,
+background-position
, qui prend deux longueurs ou pourcentages,
+et enfin background-attachment
, qui vaut scroll
ou
+fixed
(l'image défile avec la page ou pas).
+
+Le raccourci background
permet de fixer tout ou partie de ces
+caractéristiques d'un coup. Exemple :
+
+body { background: rgb(95%,95%,70%) url(poissons.png) no-repeat; } ++ +
+À suivre... +
+ + + + + + diff --git a/src/internet/web/html/iceberg.png b/src/internet/web/html/iceberg.png new file mode 100644 index 0000000..caf953f Binary files /dev/null and b/src/internet/web/html/iceberg.png differ diff --git a/src/internet/web/html/iceberg.zip b/src/internet/web/html/iceberg.zip new file mode 100644 index 0000000..e6192ae Binary files /dev/null and b/src/internet/web/html/iceberg.zip differ diff --git a/src/internet/web/html/index.tml b/src/internet/web/html/index.tml new file mode 100644 index 0000000..eb9bdc6 --- /dev/null +++ b/src/internet/web/html/index.tml @@ -0,0 +1,286 @@ + + + + ++Vous trouverez ici une introduction aux différents langages servant à +écrire une page Web : le XHTML, bien sûr, mais aussi les feuilles de style +(CSS). +
+ ++Si vous êtes pressé, vous pouvez aller directement lire notre Tutoriel XHTML. +
+ ++Le XHTML (eXtended HyperText Mark-up Language) est le +langage des pages Web. Il succède au HTML, créé en 1992, et est conforme +aux normes du XML (eXtensible Mark-up Language). Son +développement actuel est l'œuvre du W3C, un consortium regroupant les principaux +acteurs du Web (Microsoft, AOL, Opera, IBM, Apple ou encore +MacroMedia). À l'heure actuelle, nous en sommes à XHTML 1.0. +
+ ++La structure de base du XHTML, ce sont les balises +(tags en anglais) qui définissent les éléments de +la page Web qu'ils entourent. Voici un exemple de balise : +
+ +<title>Les chevaliers-paysans du lac de Paladru</title>+ +
+<title> est la balise qui définit le titre d'une la page +Web. Notez que les balises vont par paire, avec une ouvrante +(<title>) et une fermante, différenciée par un / +(</title>). Autre exemple :
+ +<strong>Important</strong> : votre tiers provisionnel est dû pour le <em>15 mai</em>.+ +
+La balise <strong> indique que l'élément qu'elle renferme doit +être renforcé. La plupart des navigateurs rendent +ceci en mettant le(s) mot(s) en gras. La balise <em> (pour emphasize) indique que l'élément doit être mis en +valeur, ce qui est généralement traduit par des +italiques. +
+ ++Vous pouvez écrire du XHTML avec un simple éditeur de texte comme NEdit, ou avec un +éditeur WYSIWYG (ce +que vous voyez à l'écran est ce qui sera affiché sur le Web) comme +Composer, l'éditeur Web de Mozilla. C'est un langage facile à apprendre, +qui ne nécessite aucune connaissance préalable en +programmation. Évidemment, plus vous voulez faire des choses +tape-à-l'œil, plus c'est compliqué. +
+ ++L'un des grands problèmes de la création Web est que vous n'avez aucun +contrôle sur les outils qu'utiliseront vos visiteurs. Ils peuvent +utiliser Internet Explorer comme Mozilla ou Opera ; Windows comme +Mac OS, Unix/Linux ou BeOS ; une bête de course comme un vieux PC +asthmatique avec écran pourri ; une connexion par modem 56Ko comme une +connexion ADSL 1 Go. C'est ce qu'on appelle +l'interopérabilité : on doit pouvoir lire votre page dans +des conditions correctes indépendamment de son matériel et de ses +logiciels. +
+ ++Et n'oubliez pas aussi que vos utilisateurs peuvent être handicapés +(incapables d'utiliser une souris ou un clavier par exemple), +malvoyants ou aveugles, ou même simplement daltoniens (un peu moins de +10% de la population masculine). C'est l'accessibilité : un +handicapé doit pouvoir utiliser votre site comme tout le monde. +
+ ++Enfin, méditez cette phrase de Tim Berners-Lee, l'inventeur du Web, parue +dans Technology Review en 1996 : +
+ +++ ++Quiconque appose sur une page du web un logo du type : « Cette page +est optimisée pour le navigateur X » est quelqu'un qui semble +souhaiter revenir à l'époque préhistorique d'avant le web, lorsque +l'on avait très peu de chances de pouvoir lire un document écrit sur +un autre ordinateur, un autre traitement de texte ou un autre réseau. +
+
+Le principe de base du XHTML est qu'il se préoccupe du contenu +et non du rendu visuel. Si vous avez fait un peu de LaTeX, cette manière de +travailler devrait vous être familière. Les « styles » de Word s'en +approchent également. Vous définissez des titres, des éléments +importants, des citations, des liens. Tout le côté décoratif (savoir si +la police de caractères fera telle ou telle taille, si votre texte sera +en rouge ou bleu, etc.) est dévolu aux feuilles de style. +
+ ++CSS est le langage des feuilles de style. Ciel, un autre langage à +apprendre ! Rassurez-vous, CSS est complémentaire du XHTML. CSS1 est +apparu en 1996. CSS2, qui prend le relais, est lui apparu en 1998. À +l'heure actuelle, c'est CSS2.1 +(septembre 2003) qui fait autorité. +
+ ++Les feuilles de style sont une manière simple de prendre en +charge le côté esthétique d'une page Web. Tandis que le XHTML ne +s'occupe que de la structure syntaxique de la page, CSS ajoute à votre +gré couleurs, fontes exotiques, effets de texte. Cette dissociation +des rôles permet de ne pas pénaliser les vieux navigateurs, ou les +navigateurs en mode texte (comme Lynx ou W3M), ou encore ceux qui +utilisent des médias différents (assistant personnel, téléphone +portable, ordinateur avec synthétiseur vocal). Elle vous permet aussi +de changer radicalement l'esthétique de votre page en modifiant un +seul fichier. Consultez par exemple le CSS Zen Garden pour voir ce +qu'on peut faire. +
+ +Plusieurs solutions existent pour apprendre à écrire une page Web, +et vous pouvez les mélanger. Dans l'ordre d'apprentissage, nous vous +conseillons de :
+ +Ctrl-U
. C'est le plus souvent par
+l'imitation d'autres pages qu'on apprend.+Si vous n'avez pas le temps ou l'envie, essayez nos Thèmes : un kit comprenant un fichier-type en +HTML et des feuilles de style déjà toutes faites. Vous pouvez ainsi +avoir un joli site en 2 coups de cuiller à pot. +
+ +fr.comp.infosystemes.www.auteurs
, très utile notamment si
+vous pataugez un peu avec les feuilles de style.+Vous voulez faire une page Web, mais vous n'avez pas le temps ou pas +envie de consacrer beaucoup de temps à l'apprentissage technique. Ou +alors, vous connaissez un peu de HTML mais vous n'avez pas envie de +chercher un joli design pour vos pages. Nos thèmes sont faits pour +vous! Les seules connaissances techniques pour utiliser les thèmes +sont : +
+ ++Ce que nous appelons un thème, c'est un paquet comprenant 4 +fichiers : +
+ +.htaccess
), qui gère l'affichage par les vieux
+navigateurs comme Netscape 4 ou Internet Explorer 4.
+Le tout est prêt à l'emploi ou presque — il suffit de
+télécharger les bons fichiers, de les mettre dans votre répertoire
+www/
et d'insérer vos propres informations dans le
+fichier-type (ça, on ne peut pas le faire à votre place). Vous
+obtiendrez ainsi une page jolie (on l'espère !) et respectueuse des
+standards (CSS 2.1 et HTML 4.01).
+
+Pour l'instant vous pouvez choisir parmi trois thèmes, plus viendront +par la suite. Vous pouvez aussi nous envoyer vos propres thèmes. Les +captures d'écran vous montrent à quoi ressemble chaque thème avec +Mozilla 1.6. +
+ +Nom du thème | Couleurs | Capture d'écran | Télécharger le thème | +
---|---|---|---|
Iceberg | bleu, gris, +blanc | iceberg.png | iceberg.zip |
+
Océan | bleu marine, vert | ocean.png | ocean.zip |
+
Orange | orange et bleu clair | orange.png | orange.zip |
+
+Les thèmes ont été testés avec Mozilla 1.6, Firefox 0.8 et Internet +Explorer 6 — le thème simple a bien sûr été testé avec +Netscape 4. Nous espérons qu'ils marchent bien avec tous les +navigateurs, si ce n'était pas le cas, merci de nous prévenir. +
+ +
+Le thème se présente sous la forme d'une archive au format zip. Il
+faut la décompacter dans votre répertoire www/
. Sous
+Unix, utilisez la commande unzip
:
+
+brick ~/www $ unzip orange.zip
+Archive: orange.zip
+ inflating: simple.css
+ inflating: modele.html
+ inflating: .htaccess
+ inflating: orange.css
+
+
++Sous Windows, utilisez par exemple WinZip ou Power Archiver, et sous +Mac OS, MacZip. +
+ +
+Maintenant, il faut personnaliser les fichiers. Vous n'avez pas besoin
+de toucher aux feuilles de style (les fichiers en .css
),
+mais il faut absolument modifier le fichier-type
+(modele.html
) et le fichier de configuration
+(.htaccess
).
+
.htaccess
+Éditez le fichier, par exemple en utilisant NEdit : +
+ +
+brick ~/www $ nedit .htaccess
+
+
++Modifiez ensuite les lignes suivantes suivant les instructions dans le +fichier : +
+ ++# Remplacez ici 'monlogin' par votre propre login +RewriteBase /home/monlogin/ +(...) +# Remplacez ici 'mafeuille.css' par la feuille que vous avez choisie +RewriteRule mafeuille.css simple.css ++ +
.htaccess
. Relisez les fichiers pour voir si vous ne vous
+êtes pas trompé, sinon renommez le fichier (mv .htaccess
+.htaccess.orig
) et contactez-nous.
+
+D'abord, commençons par renommer le fichier. La page d'accueil
+s'appelle obligatoirement index.html
. Pour les autres
+pages, vous pouvez choisir le nom que vous voulez, du moment qu'il n'y
+a pas d'espaces et que le nom soit évocateur du contenu : si vous
+mettez votre
+TIPE
+en ligne, appelez-le tipe.html
, par exemple. Sous Unix,
+on utilise la commande mv
pour renommer un fichier :
+
+brick ~/www $ mv modele.html index.html
+
+
++Le fichier-type a en gros deux parties : +
+ ++La partie « navigation » revêt la forme d'une liste avec des liens +vers les fichiers concernés. Dans le fichier-type, ça ressemble a +ceci : +
+ ++<!-- Barre de navigation --> + +<div id="nav"> +<ul> +<li> <a href="accueil.html" class="actif">accueil</a></li> +<li> <a href="alpha.html">alpha</a></li> +<li> <a href="beta.html">bêta</a></li> +<li> <a href="gamma.html">gamma</a></li> +<li> <a href="delta.html">delta</a></li> +</ul> +</div> + +<!-- Fin barre de navigation --> ++ +
+Ici, nous indiquons comme ceci les noms de fichiers à
+modifier, et comme cela les titres de vos
+pages. Remplacez les alpha, bêta, etc., par le nom de vos fichiers et
+le titre de vos pages. Pour supprimer un item de la liste, effacez une
+ligne commençant par <li>
. Si vous n'avez qu'une
+seule page en tout et pour tout, vous pouvez effacez tout simplement
+le bloc « barre de navigation ». Pour le récupérer par la suite, il
+vous suffira de copier-coller l'exemple ci-dessus.
+
+Pour la partie du corps du texte, le modèle vous montre comment faire +des paragraphes ou des titres. Vous pouvez effacer tout ça et le +remplacer par votre propre texte. Pour savoir comment mettre en forme +votre texte, parcourez notre tutoriel HTML. +
+ ++Pour être sûr que vous n'avez pas oublié quelque chose dans votre code +HTML, passez la version finale de votre page au validateur du W3C. Il vous dira si +tout est en ordre ou s'il faut encore jeter un petit coup d'œil +au code. +
+ + + + + + diff --git a/src/internet/web/index.tml b/src/internet/web/index.tml new file mode 100644 index 0000000..dcbd585 --- /dev/null +++ b/src/internet/web/index.tml @@ -0,0 +1,59 @@ + + + + +Dans cette partie, nous parlerons de tout ce qui touche au World Wide Web : navigateurs, langage HTML...
+ +Un tableau comparatif entre les navigateurs
+lynx
(texte) et Mozilla
.
Vous pouvez aussi consulter notre documentation sur Mozilla qui est un navigateur +très puissant (et fonctionnant aussi bien sous Windows que sur les +systèmes Unix).
+ +Comment créer une page Web sur le serveur +des élèves de l'ENS.
+ +Quelques conseils généraux à lire avant +de faire une page Web : sociologie du Web, problèmes de copyright, +etc. +
+ +Tout savoir sur le HTML, le langage des pages +Web, ainsi que les langages associés : CSS, XHTML, etc. Vous pouvez +directement accéder à notre Tutorial +HTML, conçu pour les débutants.
+ ++Nos thèmes : un kit comprenant un +fichier-type HTML pour le contenu, et des feuilles de style (3 designs +au choix) pour monter rapidement son site Web. +
+ +Une documentation sur le fichier .htaccess
, qui permet de
+configurer légèrement un serveur Web Apache (celui qui est utilisé
+pour le serveur des élèves) : faire des redirections, gérer les
+erreurs (404, 403...), interdire ou autoriser l'accès à certains
+fichiers, organiser des authentifications par mot de passe, etc.
+Voici les commandes de Lynx, un navigateur en mode
+texte, par définition sans images. Lynx est bien plus rapide que
+Mozilla et s'utilise sans souris. Pour le lancer, tapez lynx
+dans un terminal. Lynx est un
+peu vieilli de nos jours (il ne gère ni les frames ni les tableaux). Si vous
+le pouvez, utilisez w3m
ou links
, deux autres
+navigateurs en mode texte.
+
+Le résultat de la commande est commenté ; la commande correspondante de +Mozilla est indiquée ; j'ai omis de signaler aussi les raccourcis claviers de +Mozilla ; d'autre part, les titres exacts des fenêtres peuvent varier en +fonction de la version utilisée. +
+ +Fonction | +Lynx | +Mozilla | +
---|---|---|
Lancer le navigateur | +Taper lynx |
+Cliquer sur l'icône ou taper mozilla |
+
Obtenir une aide en ligne | +H (Help). On en sort en revenant à la page
+précédente (flèche gauche). |
++ |
Quitter | +q (quit). Lynx demande confirmation. |
+Sélectionner Exit dans le menu File . |
+
Fonction | +Lynx | +Mozilla | +|
---|---|---|---|
Revenir au lien précédent | +Flèche haut | ++ | |
Aller au prochain lien | +Flèche bas | ++ | |
Suivre le lien choisi | +Return | +Cliquer sur le lien | +|
Revenir au document précédent | +Flèche gauche | +Icône Back |
+|
Aller au document suivant | +Flèche droite | +Icône Forward |
+|
Aller à une adresse précise | +G (Goto) Taper l'adresse après Edit this
+document's URL qui apparaît en bas de l'écran. |
+Taper l'adresse dans le cadre Location |
++ |
Interrompre le transfert en cours | +z |
+Cliquer sur Stop |
+|
Revenir à la page principale par défaut. | +M (Main) |
+Icône Home |
+|
Historique des pages consultées | +Taper Backspace, et suivre le lien. | +Ouvrir le menu Go , et sélectionner la page. |
+
+Le numéro des pages est indiqué en haut à droite. +
+ +Fonction | +Lynx | +Mozilla | +
---|---|---|
Page suivante | ++, SPC |
+Barre de défilement | +
Page précédente | +-, b (back) |
+|
Descendre d'une demi-page | +) (parenthèse fermante) |
+|
Remonter d'une demi-page | +( (parenthèse ouvrante) |
+|
Aller à la première page du document | +^A |
+|
Aller à la dernière page du document | +^E (End) |
+
Fonction | +Lynx | +Mozilla | +
---|---|---|
Chercher un mot | +/ ; écrire le mot après Enter a whereis
+query :. Le mot est mis en évidence dans l'ensemble du texte. |
+Cliquer sur l'icône Find et entrer le mot dans la fenêtre
+de dialogue. Seule sa première occurence apparaît. |
+
Aller à la prochaine occurence du mot recherché | +n (next) |
+Recliquer sur Find dans la
+fenêtre de dialogue |
+
Fonction | +Lynx | +Mozilla | +
---|---|---|
Ajouter la page courante à ses marques-page | +a . À la question «Save D)ocument or L)ink to
+bookmark file or C)ancel», choisir «d » si l'on veut que ce
+soit le titre du document qui figure dans l'index, ou «l » si l'on
+veut que ce soit l'adresse URL. |
+Sélectionner Add to Bookmarks dans le menu
+Bookmarks
+ |
+
Voir ses marque-pages | +v (view) |
+Ouvrir le menu Bookmarks |
+
Ôter un marque-pages | +r (remove) Il faut être sur la page des
+marques-page, donc avoir tapé «v » auparavant). Lynx demande
+confirmation. |
+Dans la fenêtre Manage Bookmarks , sélectionner le
+marque-page, puis sélectionner Delete dans le menu
+Edit |
+
Sauvegarder le document | +p (print). Choisir une option (sauver chez
+soi : Save to a local file ; envoyer par mail à
+quelqu'un :Mail the file). Quand on sauve le document chez soi,
+Lynx demande de confirmer le nom sous lequel il est sauvé. Quand on l'envoie
+par mail à quelqu'un, il faut taper en entier l'adresse électronique de la
+personne. |
+Sélectionner Save As dans le menu File ; dans la
+nouvelle fenêtre, choisir le format du document (source, PostScript, texte),
+vérifier sous quel nom et à quel endroit le document va être sauvé (cadre
+Selection ) et cliquer sur OK. |
+
CVS
est un logiciel Unix pour gérer différentes versions
+de beaucoup de fichiers produits éventuellement par de multiples
+utilisateurs.
+Attention, ce logiciel est assez ancien et assez peu utilisé de nos jours. +Subversion en est un remplaçant moderne. +
+ +
+Les tuteurs informatique ont utilisé CVS
pour gérer ce site
+par le passé. Ils utilisent à présent git.
+
+Supposons par exemple que vous conceviez un mémoire de maîtrise en +collaboration avec un camarade, ou encore que vous écriviez un programme +informatique en collaboration avec une équipe de développeurs. Plusieurs +scénarii-catastrophes peuvent être envisagés, et vous pouvez être sûr +qu'au moins l'un d'entre eux se réalisera tôt ou tard : +
+ ++L'idéal, pour éviter ces problèmes, serait de pouvoir concilier deux +exigences apparemment contradictoires : +
+ ++CVS réunit ces deux avantages, en respectant les principes +suivants : +
+ ++Pour vous initier à CVS, nous allons successivement vous présenter +comment mettre un projet sous CVS, puis comment travailler au quotidien +sous CVS. +
+ + ++Pour mettre des projets sous CVS, il faut procéder en deux temps : +
+ ++Commençons par créer un répertoire de dépôt, c'est-à-dire un répertoire +où CVS stocke toutes les versions et leurs +modifications. Rassurez-vous : CVS investit toute son ingéniosité +pour réduire au maximum l'espace disque utilisé, en ne retenant que +les modifications, au lieu de recopier à chaque fois l'intégralité +des fichiers d'un projet. +
+ +
+Pour cela, il faut d'abord créer matériellement ce répertoire, par
+exemple $HOME/cvs
, puis créer la variable d'environnement
+CVSROOT :
+
+bireme ~ $ mkdir $HOME/cvs +bireme ~ $ CVSROOT="$HOME/cvs" +bireme ~ $ export CVSROOT ++ +
+Mais attention ! dans ce cas, la variable CVSROOT disparaîtra quand
+vous vous déloguerez ou fermerez le terminal courant. Aussi faut-il
+écrire dans votre fichier .profile
(au moins dans le cas de la
+configuration des machines de l'ENS ; sur une machine personnelle ça peut
+être différent) :
+
+CVSROOT="$HOME/cvs"; export CVSROOT ++ +
+Une fois que ce répertoire existe, il faut « faire les +présentations » avec CVS. Tapez : +
+ ++bireme ~ $ cd cvs +bireme ~/cvs $ cvs init ++ +
+Maintenant, vous avez un répertoire de dépôt prêt à recevoir et à +stocker les différents projets. Il ne reste plus qu'à le remplir ! +
+ ++Plusieurs fois, cvs ouvrira un éditeur de texte en vous +demandant de commenter ce que vous êtes en train de +faire. Commentez vos modifications d'une avec un peu de +précision : évitez par exemple d'écrire simplement +« modifications diverses », mais plutôt « orthographe, +typographie, paragraphe sur X ou Y, fontion Z ou T, +etc. » L'objectif est qu'un autre contributeur (ou vous-même à une +date ultérieure) puisse ne lire que ce commentaire et savoir la +nature de vos modifications. +
+ + +
+Supposons que vous soyez en train de concevoir un projet nommé
+« turing-test », dont tous les fichiers sont réunis dans le
+répertoire $HOME/programmation/turing-test
.
+
+Tapez : +
+ ++bireme ~ $ cd programmation/turing-test +bireme ~/programmation/turing-test $ cvs import turing votre_nom version0 ++ +
+Ainsi est créé un répertoire $HOME/cvs/turing
+contenant des fichiers correspondant à ceux du répertoire
+$HOME/programmation/turing-test
.
+
+La mention votre_nom
vous désigne ; vous pouvez mettre
+votre login, ou autre chose si vous préférez.
+
+Quant à la mention version0
, il s'agit juste d'un nom pour
+la version initiale : vous pouvez tout aussi bien mettre
+start
, debut
, etc. Seule contrainte : le
+premier caractère doit être une lettre.
+
+Maintenant que vous avez créé votre projet sous CVS, vous pouvez vous +créer un répertoire de travail. +
+ ++bireme ~ $ mkdir rep-travail +bireme ~ $ cd rep-travail +bireme ~/rep-travail $ cvs checkout turing ++ +
+La commande cvs checkout projet
crée un
+répertoire de travail pour le projet indiqué. Vous pouvez en
+créer autant que vous voulez (si vous en avez vraiment
+l'utilité...). En particulier, plusieurs utilisateurs différents peuvent
+en créer : c'est précisément ce qui fait l'intérêt de CVS.
+
+Avant de modifier les fichiers mis sous CVS, vous devrez à chaque fois +les mettre à jour, ce qui vous permet de partir de versions récentes de +ces fichiers. Pour mettre à jour votre répertoire de travail, +tapez : +
+ +
+bireme ~/turing-test $ cvs update turing
+
+
++Vous serez alors sûr d'avoir des fichiers à jour. +
+ ++Vous pouvez aussi ne mettre à jour qu'un fichier, ou une liste de +fichiers : +
+ +
+bireme ~/turing-test $ cvs update fichier1 fichier2 etc
+
+
++Vous pouvez encore indiquer en ligne de commande quel répertoire mettre +à jour : +
+ +
+bireme ~/turing-test $ cvs update -d ~/programmation/turing-test
+
+
++Cette dernière commande peut être intégrée à un script, ce qui est très +pratique si vous voulez que les modifications soient prises en compte à +plusieurs endroits différents (par exemple, dans votre répertoire de +travail et sur votre page web, si vous avez mis votre page web +sous CVS). +
+ + +
+Un projet est rarement fixé dès sa première version ; aussi des
+fichiers peuvent-ils s'ajouter aux fichiers intégrés à l'origine (avec
+la commande cvs import
), d'autres en être retirés.
+
+Pour ajouter des fichiers, la façon de s'y prendre dépend de la nature +du fichier en question. En effet, si le fichier est un fichier binaire, +il ne sert à rien que CVS le lise ligne à ligne à chaque partage de +modifications pour vérifier s'il a changé ; tandis que s'il s'agit +d'un fichier texte, CVS est là pour ça. +
+ ++Par conséquent, si c'est un fichier texte (un texte +simple, un script, le code source d'un programme, un fichier TeX, etc.), +tapez : +
+ +
+bireme ~/turing-test $ cvs add fichier1 fichier2 etc
+
+
++En revanche, si vous voulez ajouter un fichier binaire +(un fichier exécutable, un document PS, PDF, une image JPEG, PNG, etc.), +tapez : +
+ +
+bireme ~/turing-test $ cvs add -kb fichier1 fichier2 etc
+
+
++Vous pouvez vérifier le statut des fichiers (binaires +ou non) avec la commande : +
+ +
+bireme ~/turing-test $ cvs status fichier
+
+
++Lisez le champ « Sticky Options ». Si sa valeur est +« (none) », c'est que votre fichier n'est pas déclaré comme +binaire ; s'il vaut « -kb », c'est qu'il l'est. +
+ + ++Il arrive parfois que l'on oublie de déclarer comme binaires certains +fichiers, notamment lors de l'enregistrement du projet dans le +répertoire de dépôt CVS. Il n'est pas trop tard pour se +rattraper : +
+ +
+bireme ~/turing-test $ cvs update -kb fichier1 fichier2 etc
+
+
++Ce qui équivaut à la succession de commandes suivante : +
+ ++bireme ~/turing-test $ cvs admin -kb fichier1 fichier2 etc+ + + +
+bireme ~/turing-test $ cvs update fichier1 fichier2 etc +
+Pour retirer des fichiers, utilisez la commande : +
+ +
+bireme ~/turing-test $ cvs remove fichier1 fichier2 etc
+
+
+
+
+
++Quand vous avez terminé vos modifications et que vous estimez que le +monde est prêt à les recevoir, partagez-les : +
+ +
+bireme ~/turing-test $ cvs commit
+
+
++Les modifications seront alors enregistrées dans le répertoire de dépôt. +
+ ++Vous pouvez aussi ne partager qu'un fichier, ou une liste de +fichiers : +
+ +
+bireme ~/turing-test $ cvs commit fichier1 fichier2 etc
+
+
++Quand vous partagez vos modifications, un éditeur de texte s'ouvre et +vous demande de les commenter. Vous n'êtes pas obligé d'être bavard, +mais soyez relativement précis. +
+ + +
+Si vous ne contribuez qu'occasionnellement à tel ou tel projet, vous
+pouvez vouloir ne pas conserver en permanence une version d'un projet
+donné dans votre répertoire de travail. Pour vous en débarrasser, vous
+avez bien sûr la possibilité d'effacer les fichiers d'une manière
+« traditionnelle », au moyen de la commande
+rm
. Mais CVS propose un outil plus puissant :
+
+bireme ~/turing-test $ cvs release -d turing
+
+
++Cette commande vérifie que vous avez bien partagé toutes vos +modifications avant d'effacer les fichiers de votre répertoire de +travail. Ceci vous épargne bien des migraines ! +
+ ++Si vous ne voulez pas effacer vos fichiers, mais simplement +vérifier qu'aucun fichier n'a été modifié sans être +partagé, tapez simplement : +
+ +
+bireme ~/turing-test $ cvs release turing
+
+
+
+Cette commande annule le cvs checkout
.
+
+CVS garde l'historique de toutes les modifications. Si vous voulez voir +l'historique complet, tapez : +
+ +
+bireme ~/turing-test $ cvs log
+
+
++Vous pouvez aussi ne consulter l'historique que d'un fichier, ou d'une +liste de fichiers : +
+ +
+bireme ~/turing-test $ cvs log fichier1 fichier2 etc
+
+
++Devant vos yeux ébahis s'affichera alors la liste de toutes les versions +de ces fichiers, accompagnées des commentaires déposés par les +contributeurs. +
+ ++Vous voulez savoir précisément en quoi telle version d'un fichier +diffère de telle autre ; pour cela, tapez : +
+ +
+bireme ~/turing-test $ cvs diff -r 1.2 fichier
+
+
++Ainsi, vous pourrez comparer l'état actuel du fichier avec sa +version 1.2. Mais vous pouvez aussi comparer deux versions +quelconques : +
+ +
+bireme ~/turing-test $ cvs diff -r 1.1 -r 1.2 fichier
+
+
++Oups ! Vous avez fait une erreur, et dans votre précipitation, vous +l'avez déjà partagée. Heureusement, CVS permet de revenir à des versions +antérieures. Tapez : +
+ ++bireme ~/turing-test $ cvs update -A fichier +bireme ~/turing-test $ rm fichier +bireme ~/turing-test $ cvs update -p -r1.1 fichier > fichier +bireme ~/turing-test $ cvs commit fichier ++ +
make
+Imaginons la situation suivante : vous avez un site web sur lequel
+vous voulez travailler à l'aide de CVS. Vous avez donc un répertoire de
+dépôt (par exemple ~/cvs/www
) et un répertoire de travail
+(par exemple ~/cvs-travail/www
). Mais vous voulez aussi
+mettre à jour le site en lui-même lorsque vous partagez des
+modifications, et ce site est dans le répertoire ~/www
. Ce
+répertoire ne peut pas être le même que pour le dépôt, car celui-ci
+doit lui être exclusivement consacré ; et il ne peut pas non plus
+être votre répertoire de travail, car la moindre modification (et
+surtout la moindre erreur) serait immédiatement publiée...
+
+Vous devrez donc taper, à chaque fois que vous voudrez partager vos +modifications, les lignes suivantes : +
+ ++bireme ~/cvs-travail/www $ cvs commit +bireme ~/cvs-travail/www $ cvs update -d ~/www ++ +
+Le problème, c'est que cette séquence de commandes sera toujours la même
+et que vous risquerez toujours d'en oublier une sur les deux... Aussi
+avez-vous la possibilité d'utiliser l'utilitaire make
,
+outil très puissant, notamment dans ces circonstances (il est très
+utilisé par les programmeurs).
+
+Commencez donc par éditer un fichier Makefile dans le répertoire souche +de votre projet dans le répertoire de travail ; dans notre exemple, +il s'agit de ~/cvs-travail/www. Dans ce fichier, écrivez : +
+ ++install: + cvs commit + cvs update -d /users/ma_promo/ma_section/mon_login/www ++ +
+Ensuite, ajoutez ce fichier Makefile au CVS : +
+ +
+bireme ~/cvs-travail/www $ cvs add Makefile
+
+
+
+Et à partir de maintenant, au lieu de taper cvs commit
+pour partager vos modifications, vous taperez simplement :
+
+bireme ~/cvs-travail/www $ make install
+
+
+
+et make
se chargera de tout à votre place !
+
+Vous êtes maintenant prêt à utiliser CVS. Sa puissance est telle que cet +outil est devenu l'un des standards incontournables. Profitez-en +bien ! +
+ + +
+Vous pouvez accéder à la petite documentation rédigée par David Monniaux
+(au format .ps.gz
).
+
+La documentation officielle se trouve là-bas. +
+ + + + + + + diff --git a/www/logiciels/gaim.tml b/src/logiciels/gaim.tml similarity index 100% rename from www/logiciels/gaim.tml rename to src/logiciels/gaim.tml diff --git a/src/logiciels/gaim_1.png b/src/logiciels/gaim_1.png new file mode 100644 index 0000000..65e8eb5 Binary files /dev/null and b/src/logiciels/gaim_1.png differ diff --git a/src/logiciels/gaim_2.png b/src/logiciels/gaim_2.png new file mode 100644 index 0000000..d327205 Binary files /dev/null and b/src/logiciels/gaim_2.png differ diff --git a/src/logiciels/gaim_3.png b/src/logiciels/gaim_3.png new file mode 100644 index 0000000..53621ac Binary files /dev/null and b/src/logiciels/gaim_3.png differ diff --git a/src/logiciels/git/index.tml b/src/logiciels/git/index.tml new file mode 100644 index 0000000..5f892d3 --- /dev/null +++ b/src/logiciels/git/index.tml @@ -0,0 +1,242 @@ + + + + +
+Le logiciel git
est utilisé notamment par les développeurs
+du noyau Linux. Il s'agit d'un logiciel de contrôle de version, comme Subversion, CVS, Arch
+ou encore Darcs, qui utilise des dépôts décentralisés. Il permet ainsi
+de travailler tout en gardant une trace des modifications apportées
+successivement, et de retrouver ainsi l'état antérieur de ses données. À
+titre d'exemple, git
est le logiciel utilisé par les
+Tuteurs pour gérer cette documentation.
+
Il permet également, comme beaucoup de ses congénères, de travailler à +plusieurs sur un même projet. Mais contrairement à CVS ou Subversion, par +exemple, Git ne fait pas de différence entre un dépôt principal et les +copies locales chez les différents contributeurs.
+ +Ce système permet également une organisation hiérarchisée de +gros projets, comme c'est le cas du noyau Linux, en rendant +complètement naturelle l'existence de dépôts alternatifs pour chaque +sous-projet, avec une granularité de modifications très fine, et à +plus grande échelle, une faible granularité du dépôt principal qui +reçoit périodiquement les modifications par paquets.
+ +À l'inverse, pour travailler à deux, git
évite le
+casse-tête des droits d'accès dans le dépôt de l'autre. On peut en
+effet travailler de manière totalement symétrique, chacun recopiant
+les modifications de l'autre : il suffit d'un accès en lecture aux
+fichiers de ses collaborateurs.
J'expliquerai ici comment se servir de la version 1.5 de
+git. Dans la version 1.4, par exemple, la commande git init
+est appelée git init-db
. Cette dernière, dans la version
+1.5, n'est qu'un autre nom pour git init
.
Pour créer un dépôt git
, il suffit de taper la commande
+suivante dans son répertoire de travail (que nous désignerons dans la
+suite par monsiteweb
).
git init+ +
Le dépôt est initialement vide. Imaginons que l'on souhaite
+suivre les modifications du fichier sommaire.html
qui se
+trouve dans le répertoire monsiteweb
.
git add sommaire.html +git commit+ +
La première indique à git notre modification : le fichier
+sommaire.html
existe et doit être pris en compte. Il n'est
+pas toujours pertinent de suivre les modifications de n'importe quel
+fichier. En particulier, lorsque des fichiers sont engendrés
+automatiquement à partir de fichiers source, ce sont les fichiers
+source et les générateurs qu'il est important de conserver. La
+commande git commit
sert à enregistrer dans le dépôt les
+modifications apportées.
Lors d'un check-in (avec la commande git
+commit
), git demande un texte de journal (commit
+log). Ce texte permet de repérer facilement les modifications
+effectuées par chaque commit, aussi bien pour les autres que pour
+soi-même. Chaque commit est identifié par un numéro unique,
+représenté comme une suite de chiffres hexadécimaux. Ce numéro sert
+de référence, par exemple, lors qu'on veut annuler une
+modification.
La commande git add
ajoute un fichier dans le dépôt. On
+peut également s'en servir pour des répertoires entiers. Les
+commandes suivantes permettent ainsi de créer et remplir un dépôt git
+dans un répertoire avec tout son contenu.
git init +git add * +git commit+ +
.git
du répertoire où il a été créé. Ce dépôt peut différer du
+contenu du répertoire proprement dit, si on a modifié les fichiers depuis
+le dernier commit ou si on a importé les modifications d'un autre
+contributeur. Noter que ce répertoire est souvent invisible dans les
+explorateurs de fichiers et dans la sortie de la commande ls
,
+puisque son nom commence par un point. Les dépôts git peuvent être
+compressés pour occuper moins de place (voir la commande git
+repack
et git gc
).On dispose d'une interface graphique (git-gui
) et d'une
+interface Web (gitweb) pour explorer agréablement un dépôt git.
Une autre manière de créer un dépôt git consiste à cloner un dépôt déjà
+existant. Si la dénommée Xanadu possède un dépôt git dans son répertoire
+/home/xanadu/these
, le dénommé Yoda peut l'aider en clonant
+son dépôt par la commande suivante
git clone /home/xanadu/these cible+ +
où cible
est le répertoire qui contiendra la copie. Yoda
+peut alors travailler librement dans le répertoire cible
comme
+sur n'importe quel dépôt git dont il est le propriétaire.
ssh://login@machine/home/xanadu/these
, si le
+répertoire se trouve sur une machine à laquelle on accède par
+ssh
. La plupart des projets de logiciels libres indiquent des
+adresses de la forme git://git.logiciel.org/trunk
ou encore
+http://git.logiciel.org/trunk
.Yoda effectue alors quelques opérations sur les fichiers. Il enregistre +régulièrement ses modifications dans le dépôt proprement dit en tapant
+ +git commit -a+ +
qui lui demande un texte de description pour le journal des +modifications.
+ +Si d'aventure Xanadu continuait de travailler sur son projet, Yoda peut +importer les dernières modifications en lançant la commande +
+ +git pull+ +
dans son dépôt. Quant à Xanadu, si elle veut bénéficier des
+modifications apportées par Yoda, se trouvant dans le répertoire
+/home/yoda/cible
, elle peut lancer la commande suivante chez
+elle.
git pull /home/yoda/cible+ +
Si Yoda pouvait accéder en écriture aux fichiers de Xanadu, il +pourrait également lui transmettre ses modifications par la commande +
+ +git push+ +
Entraînée par sa paresse naturelle, Xanadu aimerait facilement récupérer +les modifications de Yoda sans avoir à se rappeler le répertoire exact où +il les enregistre. Elle définit donc un raccourci de la manière +suivante
+ +git remote add yoda /home/yoda/cible+ +
La commande git remote show yoda
permet de consulter
+les informations sur le dépôt de Yoda, et git pull yoda
+permet de récupérer directement ses modifications. On peut également
+utiliser les commandes
git fetch yoda +git merge yoda/master+ +
Ici, master
est la branche du dépôt de Yoda
+que Xanadu souhaite utiliser. Un dépôt git peut comporter plusieurs
+branches correspondant à autant de directions différentes de
+développement. Ce système permet d'essayer diverses orientations, avant de
+retenir la meilleure. La commande git remote show
permet de
+voir la liste des branches d'un dépôt enregistré dans la liste des
+remotes
Contrairement à git, Subversion, dans un usage normal, ne clone pas
+entièrement le dépôt distant avec ses modifications successives, mais
+conserve seulement une copie de la dernière version. Il est possible
+d'utiliser le modèle de travail de git tout en interagissant avec un dépôt
+Subversion en utilisant le script git-svn
. Ceci permet, par
+exemple, de travailler facilement à plusieurs sur un sous-projet donné, en
+envoyant périodiquement le résultat du travail.
git-svn clone http://svn.site.org/svnroot/projet -T trunk -b branches -t tags+ +
La commande précédente permet d'importer la totalité d'un projet
+Subversion, avec ses différentes branches et tags (correpondant
+généralement aux différentes versions publiées). Attention, cela prend
+généralement beaucoup de place. Cependant, l'utilisation de
+git-gc
permet de compresser les données et réduit l'espace
+occupé à l'ordre de grandeur de la taille d'un checkout Subversion
+(mais ici on garde tout l'historique).
On peut alors travailler normalement sur son dépôt. Les +commandes
+git-svn rebase +git-svn dcommit+
permettent respectivement de recevoir et d'envoyer les modifications +apportées.
+ +Pour aspirer le contenu d'un dépôt CVS avec son historique et
+l'enregistrer sous forme de dépôt git, on dispose de la commande
+git-cvsimport
.
git-cvsimport -d:pserver:anonymous@cvs.truc.org:/sources projet+ +
On peut ajouter l'option -p -Z,3
pour
+activer la compression. Pour utiliser git-cvsimport
, il faut
+au préalable s'assurer de la présence du programme cvsps
sur
+son ordinateur.
Pour aspirer le contenu d'un dépôt Arch avec son historique et
+l'enregistrer sous forme de dépôt git, on dispose de la commande
+git-archimport
.
machine $ tla register-archive http://arch.foobar.org/archives/software +user@arch.foobar.org +machine $ tla my-default-archive user@arch.foobar.org +machine $ git-archimport software--devo--0:master+ +
L'utilisation de git-archimport
requiert la présence
+du client tla
qui est la façon la plus commune d'accéder aux
+dépôts GNU Arch.
+La pléthore de documents disponibles sur l'internet est bien classée
+ dans la liste des reproches habituellement faits à l'encontre de LaTeX.
+LaTeX est en quelque sorte victime de son succès et du souci de ses
+utilisateurs de partager leurs connaissances et leurs trucs si chèrement
+acquis. Si cela part d'un bon sentiment, on n'évite pas deux écueils :
+premièrement, le débutant en quête de renseignements se noie dans les
+tonnes de réponses que peuvent lui donner quelques mots-clefs comme
+« interligne double LaTeX
» tapés à la sauvette dans
+Google ; et deuxièmement, dans les pages traitant le sujet, beaucoup
+donnent de mauvais conseils. Il faut reconnaître malgré tout que
+l'énorme avantage des documents électroniques est qu'ils sont capables
+d'évoluer avec le logiciel alors que la plupart des livres ne sont plus
+d'actualité (le LaTeX companion est la plus belle exception à
+cette règle).
+
+Cette page espère faire le tri et je soutiens que les informations +pertinentes concernant LaTeX peuvent être trouvées dans la plupart des +cas, en se limitant à seulement quelques documents que nous allons +présenter ici. +
+ ++Si vous vous posez une question, il y a fort à parier qu'elle est +traitées dans les FAQ qui regroupent les interrogations les plus +courantes au sujet de LaTeX. +
+ ++Nous donnons une liste de documents sûrs et couvrant la plupart des +domaines abordés lorsque l'on utilise LaTeX. +
+ +graphicx
sont décrites
+ dans la documentation du package (rotations, mises à l'échelle,
+ etc.) : le fichier grfguide
+ (remarque : pour la gestion des couleurs, préférez le package bien plus
+ moderne xcolor
).
+ amsmath
+ qui décrit pas mal d'environnements pour les formules centrées et sur
+ plusieurs lignes ; deuxièmement, un coup d'oeil un peu
+ plus panoramique pourra être jeté sur le thème depuis
+ Mathmode
+ qui est lui aussi très bon.
+ +Si les mauvaises habitudes sont déjà prises, vous pouvez consulter +— à défaut du docteur — la liste des péchés capitaux de +LaTeX pour tenter de corriger le tir. Ce document existe en +anglais et en en +français. +
+ ++De manière très similaire à ce qui a été décrit pour les packages, le +nombre grandissant des packages introduit bien de la confusion dans +l'esprit de l'utilisateur. Lire toutes les documentations n'est pas +vraiment envisageable. Les outils suivants peuvent vous aider à trouver +la perle rare, l'aiguille dans la botte de foin. +
+ +verbatim
», ou « bibliography
», par
+ exemple).
+
+La plupart des distributions intègrent — ou du moins donnent la
+possibilité d'intégrer — les documentations des packages. Elles
+se trouvent généralement dans un répertoire $TEXMF/doc
, où
+$TEXMF
désigne l'emplacement de l'arborescence TeX de votre
+système (des exemples classiques sont /usr/share/texmf
ou
+C:\MikTeX\texmf
). Les formats utilisés sont PDF,
+PostScript, DVI et parfois
+HTML. Sur les machines Unix, un programme peut
+vous aider à accéder rapidement à une documentation tapez
+($
désigne le prompt)
+
+$ texdoc nom_du_package ++ +
+Par exemple « texdoc listings
». Attention aux pièges
+fameux : la documentation d'amsmath
s'appelle
+amsldoc et celle de graphicx
s'appelle
+grfguide. En outre, certains packages ont leur documentation
+intégrées au fichier .sty (c'est le cas des packages de Donald
+Arseneau comme framed
). fp
constitue une
+autre exception : sa documentation est un fichier texte appelé
+readme.fp.
+
+Une autre possibilité est d'aller trouver la documentation +sur le CTAN. Elle est généralement +disponible directement en PDF, sinon apprenez comment obtenir de +l'information à partir des fichiers .dtx grâce à la FAQ +(« Documentation of packages »). +
+ ++Malgré ces quelques documents extrêmement précieux, vous n'avez toujours +pas trouvé la commande, l'environnement ou le package de vos rêves : +
+ +group:fr.comp.text.tex
ou la recherche avancée. On réunit ici différentes choses pour améliorer vos documents. Le
+premier conseil est le suivant : faites attention à toujours bien
+refermer toutes les accolades ouvertes, à ne pas les confondre avec des
+crochets ou des parenthèses, à bien refermer les environnements ouverts
+(comme itemize
), et en respectant leurs emboîtements : les
+trois quarts des erreurs signalées à la compilation viennent de là...
+
Une ligne blanche dans le texte crée un saut de paragraphe avec
+indentation. Tant qu'il n'y a pas de ligne blanche, et même s'il n'y a
+qu'un mot par ligne, c'est le même paragraphe, qui sera formaté
+correctement dans le DVI. Et qu'il ait 1 ou 46 lignes blanches dans le
+fichier source, c'est la même chose : il n'y aura qu'un changement
+de paragraphe. Pour supprimer l'indentation, vous pouvez utiliser
+\noindent
.
Pour faire une ligne blanche entre deux paragraphes, il faut laisser
+une ligne blanche et taper la commande \bigskip
.
Babel gère tout seul les espacements avant les ponctuations, et +veille à ce qu'une ponctuation ne se retrouve pas isolée en début de +ligne; vous n'avez donc pas à vous en soucier : ne mettez pas +d'espace avant les ponctuations (et les guillemets) et vous aurez un +document impeccable. En revanche, mettez toujours un espace +après les ponctuations.
+ + + +Mais cela ne doit pas vous empêcher de prendre de bonnes habitudes quand vous +tapez avec d'autres logiciels ou que vous rédigez un courrier toutes les +ponctuations sont suivies d'un espace, seules les ponctuations doubles +sont précédées d'un espace.
+ +~ | Le tilde est un espace insécable ; c'est
+utile quand on veut être sûr que deux mots ne seront pas séparés :
+M.~Dupont donne «M. Dupont», les deux mots ne pouvant pas
+être séparés (en fin de ligne par exemple).
+
+ |
\, | C'est une espace fine insécable,
+moins large qu'une espace normale. En bonne typographie, les
+points-virgule sont précédés d'une espace fine. Les documents sont aussi
+plus jolis quand les guillemets, les points d'exclamation et
+d'interrogation, les traits d'incise ne sont pas collés aux mots. Cela
+dit, Babel le fait pour vous... Dans un grand nombre, on met une espace
+fine entre les milliers : 80\,000 donne 80 000 (OK, le
+HTML n'inclut pas les espaces fines; et si oui, les brouteurs ne
+l'affichent pas). On notera l'existence de la commande
+\nombre définie par l'option «frenchb» (ou «francais») de
+Babel.
+
+
+ |
\\ | Cette commande permet un retour à
+la ligne simple, sans indentation ni saut de ligne. Son usage est
+fortement déconseillé en temps normal : pour revenir à la ligne, laissez
+une ligne blanche entre vos paragraphes. Vous risquez des messages
+d'erreurs en utilisant cette commande. On ne l'utilise qu'à la fin des
+vers dans l'environnement verse , et à la fin des lignes de
+tableaux dans l'environnement tabular .
+
+ |
% | Le «pour cent» a pour résultat de +faire ignorer à LaTeX le reste de la ligne. Cela permet de faire des +commentaires dans son document, de réserver des lignes de brouillon par +exemple, ou encore de faciliter la mise en page en figurant un +soulignement. + + |
- | C'est un trait d'union :
+c'est-à-dire donne «c'est-à-dire».
+
+ |
-- | C'est un intervalle entre deux chiffres :
+Mozart (1756--1791) donne «Mozart (1756-1791)». En LaTeX,
+vous verriez un tiret un peu plus long...
+
+ |
--- | Le troisième fabrique un trait
+d'incise : je pensais --- bien à tort --- donne «je pensais
+— bien à tort —» (en LaTeX, vous verriez des tirets
+longs...). |
LaTeX sait globalement couper correctement les mots, mais reste +parfois perplexe devant les mots français; quand il ne sait pas où +couper, il laisse le mot entier, au risque de le faire dépasser de la +ligne. Le problème est signalé lors de la compilation par une ligne de +ce genre :
+ ++Overfull \hbox (45.43307pt too wide) in paragraph at lines +648--664 ++ +
Il faut se reporter aux lignes indiquées faire soi-même les césures
+soi-même, avec la commande \-
qui indique où l'on peut
+couper le mot : tran\-quil\-le\-ment
.
Commande | +Fonction | +Comment l'afficher | +
\ |
+Backslash. Introduit une commande LaTeX. | +\verb+\+ |
+
~ |
+Tilde. Espace insécable. | +\verb+~+ |
+
{ et } |
+Accolades. Délimitent un bloc. | +\{ et \} |
+
% |
+Pour-cent. Introduit un commentaire. | +\% |
+
$ |
+Dollar. Ouvre et ferme le mode mathématique. | +\$ |
+
& |
+Esperluette. Délimite une colonne dans un environnement de +tableau. | +\& |
+
# |
+Dièse. Utilisé quand on écrit des macros. | +\# |
+
^ |
+Chapeau. Introduit un exposant en mode mathématique. | +\verb+^+ |
+
_ |
+Underscore. Introduit un indice en mode mathématique. | +\_ |
+
Tout d'abord, veillez à respecter les conventions typographiques +françaises : majuscules accentuées, guillemets « carrés » et non +"américains" ou ``anglais'' ; pour la ponctuation, faites confiance à +Babel.
+ + Il existe d'autre part une série de commandes prédéfinies pour les
+abréviations françaises : \ier
pour 1er, \iere
+pour 1re, \ieme
pour 2e. Mettez un backslash
+(\
) après la commande pour garantir l'espace
+(1\ier point
donne « 1erpoint » ;
+1\ier\ point
donne
+« 1er point »).
Comme les claviers américains ne possèdent pas le « œ » ligaturé,
+il faut l'écrire en LaTeX : c\oe ur
donne « cœur »,
+\OE uvres
donne « OEuvres ». Ne vous en faites pas pour
+l'espace au milieu du mot. Même si la deuxième partie du mot se perdait
+au début de la ligne suivante, le résultat serait correct.
Il est possible d'insérer dans le document un appel à un autre +fichier, avec la commande :
+ ++\input{fichier} ++ +
Le fichier ainsi appelé est inséré dans le fichier principal lors de +la compilation. Cela permet de séparer un long document en plusieurs +parties indépendantes, qui lors de la compilation apparaîtront comme +faisant partie d'un même fichier (les pages, les notes de bas de page, +les sections, les figures, etc, sont numérotées correctement).
+ + + + + + diff --git a/src/logiciels/latex/beamer.tml b/src/logiciels/latex/beamer.tml new file mode 100644 index 0000000..efe43bb --- /dev/null +++ b/src/logiciels/latex/beamer.tml @@ -0,0 +1,365 @@ + + + + ++ Les arguments sont essentiellement les mêmes que pour LaTeX vs Word. En + faveur de latex, entre autres, la rigueur du rendu, la programmabilité, + la portabilité, la possibilité d'entrer des formules (combien de gens + voit-on convertir en images des formules tapées en TeX, pour les inclure + dans du powerpoint...), sont tout aussi utiles pour une présentation que + pour un rapport. D'un autre côté, le fait que la préparation du document + n'est pas faite de manière visuelle est sans doute plus génante pour des + transparents, mais pas tant que ça en fait. Enfin, Powerpoint propose + tout plein d'effets graphiques (animations...), domaine dans lequel les + packages LaTeX sont un peu plus pauvres (mais certainement pas indigents, + et suffisants pour la plupart des usages). +
+ ++ Historiquement, il y avait les classes slides, et + seminar qui sont beaucoup trop basiques. Ensuite sont apparus + pdfscreen et prosper, qui sont beaucoup plus + évolués. Enfin est venu beamer, qui est nettement le meilleur + choix à l'heure actuelle. C'est de lui que traitera le reste de + l'article. Mentionnons enfin advi, qui est un viewer de dvi + avec plein de fonctions graphiques grassouilles (par exemple, on peut + faire se balader du texte sur la page). Il présente l'inconvénient de ne + tourner que sous unix, et de ne pas être bien standard (en général, on + doit se l'installer à la main). +
+ ++ Beamer est donc un package LaTeX prévu pour faire des présentations. Il + est conçu pour produire du pdf. Pour ce faire, on compile le fichier + .tex en utilisant pdflatex. + Le pdf obtenu peut alors être visualisé avec n'importe + quel afficheur de pdf, comme kpdf. +
+ ++ Beamer vient avec une documentation très étoffée, accessible ici. Beamer possède également deux + sous-packages : +
++ Comme ils sont assez techniques, et pas indispensables à maitriser pour une + utilisation simple de beamer, on ne les décrira pas plus avant ici, on + renvoie à leur documentation. +
+ ++ Beamer est installé sur les machines de l'École, et est inclus dans de + plus en plus de distributions de TeX. Si néanmoins vous ne l'avez pas sur + la votre, vous pouvez le télécharger ici, il faut y + récupérer les versions les plus récentes de latex-beamer, + pgf et xcolor. +
+ ++ Soit le fichier b.tex suivant : +
+ ++ \documentclass{beamer} + \usepackage[utf8]{inputenc} + \usetheme{Warsaw} + + \title{Hello World!} + \author{B. Meuhr}\institute{École Normale Supérieure, département de pipologie} + + \begin{document} + + \begin{frame} + \titlepage + \end{frame} + + \begin{frame} + \textsc{Beamer}, c'est vachement tout beau! + \end{frame} + + \begin{frame} + Et c'est facile. + \end{frame} + + \end{document} ++ +
+ On le compile avec la commande pdflatex b.tex, et l'on obtient + alors un joli fichier b.pdf, que l'on peut afficher avec Acrobat + Reader (on a intéret à passer en mode plein écran, pour ce faire, taper + control L). +
+ ++ On commence par : +
+ ++ \documentclass{beamer} ++
+ ce qui charge beamer, et effectue les réglages de bases. +
+ ++ Ensuite, beamer étant très versatile, il faut le régler à son + gout. Souvent, on se contente de charger un thème prédéfini, qui se + charge de définir l'apparence graphique de tous les éléments. Ici, on + utilise le thème « Warsaw » (il y en a beaucoup d'autres, ils sont + décrits dans le manuel de Beamer) : +
+ ++ \usetheme{Warsaw} ++ +
+ Une fois à l'intérieur du \begin{document}, on entre le texte + de la présentation. On doit diviser à la main son texte en pages (pour que + la présentation soit compréhensible, il est important de faire la division + intelligemment), et mettre chaque page dans un environnement + frame. +
+ ++ On peut (et c'est même recommandé) insérer des \section, + \subsection et cie. Certains thèmes (par exemple le + Warsaw utilisé ci-dessus) affichent un condensé de la table + des matières dans un panneau, ce qui, à l'affichage, permet de naviguer + facilement à travers le document en cliquant. +
+ ++ Beamer permet de définir des séquences de slides différant seulement par + des apparitions ou disparitions (ou mise en grisé) de morceaux de + texte. Par exemple, ce code : +
+ ++ \begin{frame} + \begin{itemize} + \item<1,3> Ploum! + \item<2-4> Plim? + \item Plum... + \end{itemize} + \end{frame} ++ +
+ va produire une séquence de 4 slides. Toutes les 4 auront un « Plum... » + sur la troisième ligne. La première ligne contiendra un « Ploum! » sur la + première et la troisième slide, tandis qu'elle sera vide sur la deuxième + et la quatrième. La deuxième ligne, elle, sera vide sur la première + slide, et contiendra « Plim? » sur les suivantes. +
+ ++ Comme le montre cet exemple, un certain nombre de commandes ont été + modifiées pour prendre un argument optionnel entre <>. Dans cet + argument on peut mettre un nombre, un intervalle (deux nombres séparés + par un -), ou plusieurs nombres ou intervalles séparés par des + virgules. Ces nombres spécifient sur quelles slides de la séquence qui va + être créée la commande doit « avoir un effet ». Pour \item, + cela veut dire afficher la bille et le texte qui en dépend. Mais pour les + commandes de changement de police ou de couleur, cela veut dire que le + changement ne doit être effectué que sur les slides en question. Par + exemple, un : +
+ ++ \textbf<2>{ploum} ++ +
+ aura pour effet de mettre « ploum » en gras sur la deuxième slide, et en + normal sur la première. +
+ ++ L'argument optionnel entre <> n'est pas un effet magique : les + auteurs de Beamer ont du modifier toutes les commandes ... qu'ils ont + modifiées. Pour les autres, il faut se débrouiller à la main. On dispose + des commandes \only et \uncover qui prennent un + argument entre <>, puis un argument normal entre + {}, qu'elles n'affichent que sur les slides spécifiées. La + différence entre les deux est qu'avec only, le texte est jeté, + tandis qu'avec uncover, il occupe sa place mais est + transparent. Par exemple, avec : +
+ ++ pif \uncover<2>{paf} Abcd-Efgh \only<1>{Ijklmn} ouais! ++ +
+on obtiendra : +
+ ++ pif Abcd-Efgh Ijklmn ouais! ++ +
+ sur la première slide, et : +
+ ++ pif paf Abcd-Efgh ouais! ++ +
+ sur la deuxième. +
+ ++ Par défaut, le texte caché est complètement invisible. Il est possible de + l'avoir en grisé en mettant un : +
+ ++ \setbeamercovered{transparent} ++ +
+ Beamer permet de modifier les couleurs de beaucoup de types d'élèments. Il + y a une « beamer color » associée à chaque type d'élément (elles sont + listées dans le manuel), et l'on peu modifier chaque couleur + indépendament des autres. Cela se fait avec la commande + \setbeamercolor qui prend en premier argument le nom de la + couleur, et en deuxième argument une spécification de couleur. Par + exemple : +
+ ++ \setbeamercolor{normal text}{fg=red,bg=blue} ++ +
+ fait en sorte que le texte ordinaire soit en rouge sur fond bleu. On peut + spécifier des couleurs définies à l'aide du package xcolor. +
+ ++ Les divers éléments répétitifs des slides sont définis à l'aide de + templates, qui sont du code évalué pour chaque slide. Par exemple, + l'arrière-plan des slides est définie par le template + background. Supposons que l'on veuille mettre l'image + ploum.jpg comme fond de transparents. Il suffit de faire : +
+ ++ \pgfdeclareimage[height=96mm,width=128mm]{nombidon}{ploum} + \setbeamertemplate{background}{\pgfuseimage{nombidon}} ++ +
+ et tous les transparents suivants auront l'image en arrière-plan. On a + utilisé ici les commandes graphiques du package pgf. 96mm et 128mm sont + les dimensions par défaut de la page pour beamer (le viewer de pdf fait + un zoom, il est donc inutile et même nuisible de changer la taille de la + page). +
+ ++ Il existe également un mécanisme de « beamer font » qui fonctionne + similairement. Noter qu'il existe des thèmes définissant d'un coup tous les + templates, couleurs et polices. Souvent, il vaut mieux choisir un thème, et + faire juste une ou deux modifications de détail... +
+ ++ Enfin, pour modifier une couleur, un template ou une police sur une zone + limitée et non globalement, on utilise le mécanisme classique des + groupes : il suffit d'encadrer entre accolades la zone du texte où l'on + veut que le changement ait un effet, et de mettre le + \setbeamertemplate, \setbeamercolor ou + \setbeamerfont juste après l'accolade ouvrante. +
+ ++ On peut aussi spécifier des effets graphiques à effectuer lors d'un + changement de page, inclure des sons, des vidéos... Tout cela est décrit + dans le chapitre 14 du manuel. +
+ ++ Comme il a été dit, pdflatex est une variante de latex qui pond du pdf au + lieu de sortir du dvi. Cela a certains effets secondaires au niveau de la + gestion de tout ce qui est graphique. En particulier, on ne peut plus + utiliser tout ce qui était à base de postscript : inclusion d'images eps, + pstricks, ... En compensation, pdflatex fournit pas mal de primitives + graphiques, qui suffisent dans la plupart des cas. En particulier, on peut + inclure directement (alors qu'avec latex, il faut les convertir en eps) + des images dans les formats bitmaps jpg et png. Pour des dessins + vectoriels, il vaut mieux les fournir directement au format pdf pour + l'inclusion. On peut convertir un eps en pdf avec la commande + epstopdf. +
+ + + + + diff --git a/src/logiciels/latex/bibtex.tml b/src/logiciels/latex/bibtex.tml new file mode 100644 index 0000000..6633aac --- /dev/null +++ b/src/logiciels/latex/bibtex.tml @@ -0,0 +1,268 @@ + + + + +Il peut sembler bizarre de devoir recourir à un programme externe pour +générer quelques lignes de texte à la fin d'un mémoire. Néanmoins +l'intérêt de BibTeX apparaîtra très rapidement à l'utilisateur désireux +de construire sa bibliographie au fur et à mesure de la rédaction du +texte, tout en respectant les conventions, par exemple dans le cas d'une +thèse...
+ +De plus, la plupart des bibliographies d'ouvrages scientifiques se +doivent d'être au format BibTeX, afin de ne pas voir à taper les entrées +bibliographiques, mais de pouvoir utiliser les bases de données +existantes.
+ ++Enfin, BibTeX c'est la possibilité de changer l'ordre utilisé dans la +bibliographie (alphabétique, chronologique, thématique, ordre de +citation dans le texte) sans tout retaper. Il est également possible de +changer l'apparence (le titre en italique ou entre guillemets ?), +l'ordre des éléments dans une référence (le prénom avant ou après le +nom ?, le titre avant ou après la revue ?), là encore sans grand effort. +
+ +BibTeX va chercher ses références dans une base de données que
+l'utilisateur crée, de manière très simple, en attribuant une
+« étiquette » à chaque référence, puis en remplissant un certain nombre
+de champs (auteurs, titre, revue, année, éditeur, etc.). Cette base de
+donnée est stockée sous forme de fichier texte, avec comme extension
+.bib
. Elle peut être commune à plusieurs documents LaTeX,
+comme on le verra plus tard.
Lorsque l'utilisateur veut citer une référence dans le fichier LaTeX,
+il appelle l'étiquette qui identifie cette référence dans le fichier
+.bib
, par la commande \cite{}
. Lors de la
+compilation du fichier par LaTeX, la liste des références demandées
+s'inscrit alors dans le fichier .aux
correspondant. On peut
+alors lancer BibTeX, qui fera le lien entre les requêtes du document et
+la base de données, en générant au passage un fichier .bbl
,
+qui sera, lui, spécifique au document LaTeX tel qu'on vient de le
+compiler.
Enfin, une nouvelle compilation via LaTeX sera nécessaire pour +afficher correctement la bibliographie ainsi que les renvois du +texte.
+ +Voici un extrait de base de données :
+ ++@article{Johnson, + author = {Edgar G. Johnson and Alfred O. Nier}, + title = {Angular Aberrations in Sector Shaped + Electromagnetic Lenses for Focusing Beams of Charged Particles}, + journal = {Physical Review}, + volume = {91}, + number = {1}, + month = {jul}, + year = {1953} +} + +@phdthesis{Zoran, + author = {Zoran Racic}, + title = {\'Etude et essais du spectromètre à plasma {DYMIO} + de la mission {MARS 96}}, + publisher = {Université Pierre et Marie Curie}, + year = {1996} +} ++ +
Toute entrée commence par un @
, suivi par un descripteur
+(imposé par le type de document article
, book
,
+inproceedings
, etc.). Entre
+accolades, se trouve l'étiquette, puis les champs, composés d'un
+sous-descripteur et de la valeur de celui ci, entre accolades. Les
+champs sont séparés par des virgules, l'oubli de celles ci étant
+vraisemblablement la source d'erreurs la plus courante !
A priori, BibTeX s'occupe des majuscules, et n'hésite pas à en +supprimer si tel est son bon plaisir. Il y a moyen de lui faire savoir +qui c'est le chef, en enfermant les mots qu'on désire laisser en +majuscule entre accolades. Cependant, la meilleure solution est de ne +pas placer ces accolades et de modifier le style de bibliographie ou +d'en changer s'il ne vous convient pas. Les commandes TeX sont autorisées.
+ +N'hésitez pas à fournir un maximum d'informations, BibTeX s'arrangera +pour tout faire rentrer (ou donnera des messages d'avertissement s'il en +manque...), et les champs inconnus seront ignorés si nécessaire.
+ +Sauvegardez le fichier sous un nom se terminant par
+.bib
+La table suivante résume les types et les champs couramment connus. +
+ ++ Types de documents + | ++ Champs + | +
article | address |
book | annote |
booklet | author |
conference | booktitle |
inbook | chapter |
incollection | crossref |
inproceedings | edition |
manual | editor |
mastersthesis | howpublished |
misc | institution |
phdthesis | journal |
proceedings | month |
techreport | note |
unpublished | number |
organization | |
pages | |
publisher | |
school | |
series | |
title | |
type | |
volume | |
year |
+author
est le champ utilisé pour saisir la liste des
+auteurs sous la forme prénom nom
ou
+nom, prénom
.
+
and
et surtout pas
+ une virgule.
+
+Pour les articles (type article
), les champs importants
+sont author
, title
, journal
,
+year
, pages
(les champs volume
et
+number
peuvent eux aussi servir). Pour les livres (type
+book
) on prendra garde à donner la maison d'édition à
+l'aide du champ publisher
et non editor
(les
+éditeurs d'un ouvrage collectif) ou edition
(le numéro de
+réédition). L'adresse de la maison d'édition est donnée par
+address
. Le type misc
sert de fourre-tout
+quand aucune catégorie ne semble correspondre à un document (un
+manuscrit par exemple), tous les champs peuvent être utilisés, mais
+pensez à ajouter soit howpublished
soit une
+note
explicative. inbook
et les autres types
+dont le nom commence par in
désignent des chapitres (le
+numéro du chapitre sera précisé via le champ chapter
et les
+pages concernées par pages
) ou des paragraphes dans un
+livre (le titre pourra être précisé avec booktitle
), etc.
+Le champ crossref
permet de faire référence audit livre
+s'il est présent lui aussi dans la bibliographie. Les documents
+académiques (mastersthesis
et phdthesis
)
+pourront intégrer school
ou institution
pour
+renseigner l'université.
+
À l'emplacement prévu dans le fichier .tex, insérez les lignes :
+ ++\bibliographystyle{plain} +\bibliography{mon_fichier} ++ +
\bibliographystyle
permet de choisir le style de
+bibliographie.
\bibliography
permet d'indiquer quelle base de données
+doit être utilisée. On indique le nom du fichier, sans l'extension
+.bib
+Utilisez le package tocbibind
, capable de créer des entrées
+pour la bibliographie, l'index et aussi la table des matières (!), les
+listes des figures et des tables. Ces trois derniers éléments
+n'étant pas du meilleur effet, on lui pourra passer les options
+nottoc
, notlof
et notlot
.
+
+\usepackage[nottoc, notlof, notlot]{tocbibind} ++ +
LaTeX n'affiche pas toutes les références contenues dans la base de +données, seulement celles qui sont citées dans le texte. Par conséquent, il +est normal à ce stade de ne rien voir s'afficher... La commande à +utiliser pour citer une référence est tout simplement
+ +\cite{label}+ +
où label est l'étiquette attribuée lors de
+la construction de la base de données dans le fichier .bib. Dans le style plain
,
+cette commande apparaît alors dans le fichier .pdf
sous la
+forme [X]
, où X est le numéro utilisé dans la bibliographie,
+ou un ??? si l'étiquette est erronée, ou qu'il manque une
+compilation de LaTeX ou de BibTeX.
On peut néanmoins faire apparaître une référence dans la bibliographie +sans la citer explicitement dans le texte, à l'aide de la commande :
+ +\nocite{label}+ +
+Un cas particulier est \nocite{*}
qui dit à BibTeX
+d'inclure dans la bibliographie toutes les références, citées dans le
+corps du texte ou non.
+
Il ne reste plus qu'à compiler le tout :
+ ++pdflatex mon_fichier.tex +bibtex mon_fichier +pdflatex mon_fichier.tex ++ +
.bib
ni
+le fichier .tex
qu'on indique à BibTeX, mais le fichier
+.aux
produit dans la première compilation du fichier
+.tex
. Cependant, comme l'indique la commande ci-dessus,
+cela fonctionne quand même si on ne précise pas l'extension.\documentclass[a4paper,oneside,12pt]{article} |
+On veut taper un document de style « article » (le standard
+pour des textes peu longs ; pour taper une thèse, on préfèrera le style
+« book »). Les options choisies sont : a4paper (pour
+avoir un résultat au format A4), oneside (pour ne pas
+différencier les pages paires et impaires ; utilisez
+twoside si vous voulez relier votre document final) et
+12pt , qui sera la taille du texte (vous pouvez préciser
+aussi 10pt ou 11pt ). |
\usepackage{longtable,geometry} |
+J'utilise le package longtable pour faire des
+tableaux qui tiennent sur plusieurs pages, et le package
+geometry pour redéfinir moi-même les dimensions des
+pages. |
\usepackage[frenchb]{babel} | J'utilise le
+package babel avec l'option frenchb
+(francais fonctionne également), pour que
+soient prises en compte les particularités de la typographie
+française. |
+\usepackage[utf8]{inputenc} + |
+ Je signale à LaTeX que mon fichier source est codé en UTF-8.
+ Cela lui permet de reconnaître les lettres accentuées tapées
+ directement plutôt que comme ça : \'et\'e . Le nom à
+ donner entre crochets dépend du système sur lequel je travaille (un
+ autre choix courant est latin1 ; à l'ENS, la config
+ conscrits utilise utf8 depuis 2007, latin1 avant). Voir aussi la FAQ sur le sujet.
+ |
+
+\usepackage[T1]{fontenc} + |
+
++Je demande que soient utilisées les fontes de +LaTeX incluant les caractères essentiels à composer les mots accentués +du français. | +
+\usepackage[babel]{csquotes} +\MakeAutoQuote{«}{»} + |
+
+Ces lignes permettent d'utiliser simplement les guillemets sans
+espaces, le package csquotes s'occupera de
+l'espacement. |
\pagestyle{headings} | Je demande que les
+titres des sections apparaissent en haut de chaque page. (Voir aussi le
+package fancyhdr ). |
++\geometry{dvips,a4paper,margin=1.5in} + | Je passe à geometry les informations
+suivantes : pilote, dimensions du papier et marges. |
+\title{Aide-mémoire} +\author{Thomas Dupond} + +\begin{document} +\maketitle +\tableofcontents |
+
+ Je déclare le titre de l'ouvrage, l'auteur (ces déclarations ne
+ donnent pas lui à une impression). Ensuite le document
+ commence vraiment, le \begin{document} met fin au
+ préambule : première
+page avec titre et auteur (imprimés cette fois), date et tables des
+ matières. |
+\section{\LaTeX} +%^^^^^^^^^^^^^^^ + +\input{latex} + +\section{Les commandes Unix} +%^^^^^^^^^^^^^^^^^^^^^^^^^^^ +\input{unix} + |
+
+J'insère deux sections dont les contenus sont donnés par les
+fichiers latex.tex et unix respectivement. Pour rendre
+le fichier source plus lisible, j'ai rajouté des
+commentaires derrière les % , en figurant un
+« soulignement ». |
+\appendix + |
+
+On commence les annexes : la numérotation des sections est désormais +alphabétique, aussi bien dans leurs titres que dans la table des +matières. |
\section{Autres thèmes} +%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^% +\input{lynx} +\input{disquettes} + |
+
+J'insère lynx.tex et disquettes.tex .
+ |
+\end{document} + |
+
+Enfin, je ferme le document. | +
+Une question qui se retrouve souvent dans le courrier à tuteurs, sous +une forme ou une autre, c'est comment faire parvenir un document LaTeX +à une personne ne disposant pas de LaTeX sur son ordinateur. En +particulier, le bruit court qu'il faut utiliser pour ça le format RTF +(ce qui n'est vrai que dans certains cas). Nous allons détailler ici +les différentes méthodes. +
+ ++Nous allons détailler ici les différentes possibilités. Celle à +choisir dépend surtout de l'utilisation que va faire votre +interlocuteur du document. +
+ +
+ De nos jours, la plupart des compilateurs latex utilisent PDF comme format
+ de référence, avec la commande pdflatex
. Le DVI reste cependant
+ utilisé en tant que format intermédiaire.
+
+Le format PDF se lit avec Acrobat Reader, le format PostScript avec +GhostView. Le premier est plus répandu sur les machines grand public, +le second un peu plus sur les Unix. Ces deux formats sont +considérablement plus gros que le texte original, le PDF encore +environ 50% de plus que le PostScript. +
+ ++On les obtient tous les deux à partir du fichier DVI : +
+ ++dvips -o fichier.ps fichier.dvi +dvipdf fichier.dvi ++ +
+Le -o fichier.ps
est nécessaire : sans,
+dvips
envoie le résultat à l'imprimante.
+
+Le RTF est un format prévu initialement comme plate-forme entre +word et les autres traitements de texte. Les contraintes de +compatibilité limitent ses possibilités, et les convertisseurs +disponibles ici pour LaTeX ne marchent pas très bien. Aussi, je +conseille de n'utiliser ce format que quand vraiment rien de mieux +n'est indiqué dans cette liste. +
+ ++latex2rtf -o fichier.rtf fichier.tex ++ +
+Je pense que ce sera le plus souvent le bon +choix. C'est un format que n'importe qui peut lire directement sans +difficulté, il permet des effets de mise en forme assez évolués +(tableaux...), et peut être modifié par le destinataire pour peu qu'il +ait un outil adéquat (ou simplement qu'il connaisse le HTML). +
+ ++En outre, c'est un format libre, ce qui ne gâche rien. +
+ ++hevea fichier.tex ++ +
+Hevea est le convertisseur qui marche +le mieux, mais il y en a d'autres. +
+ ++Le texte brut, c'est le format qui est employé pour les courriers +électroniques. Il ne permet pas de faire grand chose, mais ça s'avère +quand même suffisant dans de très nombreux cas. +
+ ++Notez qu'il existe des conventions pour simuler des effets spéciaux : +on peut écrire « Je suis _très_ en colère. Mais *vraiment très* en +colère. ». +
+ ++Hevea est capable de produire du texte brut, en faisant quelques +efforts pour aligner les tableaux. +
+ ++hevea -text fichier.tex ++ +
+Ceci produit comme résultat fichier.txt
(au bas du
+quel on retirera le bandeau qui dit « fait avec Hevea »).
+
+On peut aussi tout simplement prendre le document LaTeX
+source. Contrairement aux formats de la plupart des traitements
+de textes, les fichiers LaTeX sont des fichiers de texte brut,
+lisibles sur n'importe quel ordinateur, même ne disposant pas de
+LaTeX. Pour faciliter la lecture, il faut nettoyer un peu le
+document : on coupe le préambule (jusqu'à \begin{document}
), on
+enlève un peu les balises qui traînent. Si votre interlocuteur n'est
+pas du genre à mettre son cerveau en veille quand il est devant un
+ordinateur, et que vous lui avez déjà dit deux mots de LaTeX, vous
+pouvez même laisser certaines balises claires, comme
+\begin{cite}...\end{cite}
.
+
+Dans le cas d'un document sans fioritures, comme une lettre, c'est de
+loin la méthode la plus simple. Il suffit d'insérer le document source
+dans le courrier électronique que vous allez envoyer (^R
+avec pine/pico et nano, ^K R
avec Joe, :r
+avec Vi, C-x i
avec Emacs), et de virer ce qu'il y a en
+trop.
+
figure
?L'exemple suivant est assez complet, et nous l'expliquerons + progressivement dans la page.
+ ++\documentclass{article} +\usepackage{graphicx} + +\begin{document} + +\listoffigures + +\begin{figure}[!t] +\centering +\includegraphics{Tux.png} +\caption{Tux, le pingouin} +\label{Tux} +\end{figure} + +\end{document} ++ +
Et le résultat: + fichier.pdf +
+ + La ligne qui commence par \includegraphics
est celle qui
+ insère l'image. C'est elle qui nécessite le package graphicx (deuxième
+ ligne). Pour plus de détails sur les images et LaTeX, voir
+ ici .
+
Les lignes \begin{figure}
et \end{figure}
+définissent un environnement figure.
+L'environnement figure
sert à créer des « objets
+flottants » : ce sont des blocs contenant du texte et/ou des images
+inséré en complément à la partie principale du document, mais dont la
+position exacte peut varier légèrement, de manière à optimiser
+l'occupation des pages. En pratique, figure
« accroche » un
+numéro et une légende à une image (ou un tableau).
La partie [!t]
est facultative et permet d'indiquer à
+ LaTeX vos préférences pour le placement de la figure. Le tableau suivant
+ récapitule les différentes possibilités.
+
h (here) |
+Placer la figure dans le texte à l'endroit où l'environnement a été +appelé (si l'espace disponible sur la page le permet). | +
t (top) |
+Placer la figure en haut d'une page de texte. | +
b (bottom) |
+Placer la figure en bas d'une page de texte. | +
p (page) |
+Placer la figure sur une page séparée du reste du texte. | +
La commande figure
crée un objet
+flottant, que LaTeX place à l'endroit qui lui semble le
+plus favorable... et qui est parfois très mal choisi. C'est en
+particulier le cas avec de grosses figures qui prennent plus d'une
+demi-page. Il faut alors utiliser le point d'exclamation (« ici ! »)
+pour insister ; par exemple :
+\begin{figure}[!h] ++ +
Toujours pour le placement, la commande \centering
permet
+ de centrer l'image latéralement.
Pour donner une légende à une figure, on utilise la commande
+\caption{}
:
+\begin{figure} +(...) + +\caption{texte de la légende} +\end{figure} ++ +
La numérotation des légendes est automatique. Selon que l'on place
+la ligne \caption{...}
avant ou après l'image elle-même, la
+légende apparaîtra au dessus ou au dessous.
+
Il faut placer le tableau et la légende à l'intérieur d'un
+environnement figure
. La numérotation des légendes est
+automatique.
On utilise le mécanisme de référencement habituel, avec
+\label{mot-clé}
et
+\ref{mot-clé}
(ou
+\pageref{mot-clé}
pour le numéro de la page).
Pour référencer la figure, on place le label après la +légende :
+ ++\caption{Tux, le pingouin} +\label{Tux} ++ +
Ensuite, on s'en sert comme d'habitude (noter l'utilisation du tilde -- espace +insécable -- pour garder les numéros près des mots qui les +introduisent) :
+ ++Dans le tableau~\ref{Tux}, page~\pageref{Tux}, nous lisons... ++ + +
Il existe aussi l'environnement table
, qui fonctionne
+exactement comme figure
. La différence est qu'il numérote
+explicitement des tableaux, avec une légende du type « Tab. 1 :
+résultats », et non « Fig 1 : schéma ».
Deux commandes servent à générer, respectivement, une « Table des
+figures » (environnement figure
) et une « Liste des
+tableaux » (environnement table
), sur le modèle de
+\tableofcontents
(avec donc au moins deux
+compilations) :
+\listoffigures % table des figures +\listoftables % table des tableaux ++ +
Vous pouvez changer le noms de ces tables, s'ils ne vous conviennent +pas, en utilisant ces commandes à placer dans le préambule :
+ ++\addto\captionsfrench{% + \renewcommand{\listfigurename}{Nouveau nom}% + \renewcommand{\listtablename}{Nouveau nom}% +} ++ + +
Les packages floatrow
+ou caption
permettent de mieux gérer les figures.
+Le premier a en particulier une
+commande \setupfloat[figure]{margins=centering}
.
+
Sachez que le placement des objets flottants occupe à lui tout seul un +chapitre entier du LateX companion, second edition, sous le +doux nom de +Mastering Floats. N'hésitez pas à vous y reporter en cas de +problème.
+ + + + diff --git a/src/logiciels/latex/fontes.jpg b/src/logiciels/latex/fontes.jpg new file mode 100644 index 0000000..da7fe33 Binary files /dev/null and b/src/logiciels/latex/fontes.jpg differ diff --git a/src/logiciels/latex/footnote.tml b/src/logiciels/latex/footnote.tml new file mode 100644 index 0000000..e11b00d --- /dev/null +++ b/src/logiciels/latex/footnote.tml @@ -0,0 +1,199 @@ + + + + + On utilise la commande \footnote
, suivie, entre
+accolades, du texte à mettre en note. Par exemple :
Dans l'excellent article de M. Dugenou\footnote{Lisez-le, c'est +vraiment tordant.}, nous lisons le récit de sa vie.+ +
LaTeX gèrera tout seul la numérotation des appels de notes, si besoin +est la répartition des notes très longues entre plusieurs pages.
+ +Il est néanmoins nécessaire de savoir bien placer les appels de +notes : on les met avant les ponctuations, et non après. Par +exemple, il ne faut pas écrire :
+ +... pour finir.\footnote{Si, si...}+ +
mais
+ +... pour finir\footnote{Si, si...}.+ +
Il ne faut pas non plus oublier la ponctuation à la fin des notes en +bas de page.
+ ++Il vous sera parfois nécessaire de recourir aux commandes +
+ ++\footnotemark[num] +\footnotetext[le num]{Le texte de la note} ++ +
+dans certaines conditions : dans les tableaux (cf. « Footnotes
+in tables »), ou dans les environnements
+minipage
(pour lesquels \footnote
donne une
+note en bas de la mini-page tandis que \footnotemark
et
+\footnotemark
placent encore leur notes en pied de page).
+
La première commande est placée à l'endroit de l'appel de note. La
+seconde est placée plus loin dans le texte, là où ça vous arrange en
+vous assurant que la note sera encore placée sur la même page que son appel. num désigne un numéro que vous pouvez
+donner à la main si nécessaire (en l'absence de cette indication LaTeX
+utilise la valeur du compteur footnote
). Si on
+groupe en fin de document tous les textes des notes (ceux contenus dans
+les footnotetext
), elles apparaîtront toutes à la fin du
+texte.
On utilise le mécanisme de référencement habituel, avec
+\label{mot-clé}
et \ref{mot-clé}
.
+\ref
tient compte du contexte où se trouve l'étiquette
+\label
:
\caption
), c'est le numéro de la figure qui sera
+produit ;Ainsi, si on pourra écrire :
+ +Jean-Paul Sartre a été élève à l'ENS\footnote{\label{ulm}45, rue d'Ulm, 75005~Paris.}, qui en est très fière. + +(...) + +On trouvera l'adresse de l'ENS dans la note~\ref{ulm}. ++ +
Il faut « protéger » la note en intercalant la commande
+\protect
. Par exemple :
+\section{La vigne en France\protect\footnote{Sur ce sujet, voir +l'ouvrage de Marchel \textsc{Lachiver}, \emph{Vin, vignes et +vignerons. Histoire du vignoble français}, Paris, 1988.}} ++ +
\section
!La note appelée dans un titre apparaîtra également dans la table des +matières. Pour l'éviter, il faut utiliser la même technique que pour les +titres longs, en indiquant un titre alternatif entre crochets :
+ ++\section[La vigne en France]{La vigne en France\protect\footnote{Sur ce +sujet, voir l'ouvrage de Marchel \textsc{Lachiver}, \emph{Vin, vignes et +vignerons. Histoire du vignoble français}, Paris, 1988.}} ++ +
+Une autre possibilité est offerte par le package footmisc
+et son option stable
.
+
Il existe six styles d'appels de notes différentes :
+ + \arabic |
+Nombre arabe | +1, 2, 3, etc | +
\roman |
+nombre romain minuscule | +i, ii, iii, etc | +
\Roman |
+nombre romain majuscule | +I, II, III, etc | +
\alph |
+lettre minuscule | +a, b, c, etc | +
\Alph |
+lettre majuscule | +A, B, C, etc | +
\fnsymbol |
+symbole | +croix, étoile, double croix, etc | +
Pour choisir les lettres majuscules, par exemple, il faut taper avant
+le \begin{document}
:
+\renewcommand{\thefootnote}{\Alph{footnote}} ++ +
Il faut utiliser le package endnotes
de J. Lavagnino.
Bien que ce soit fortement déconseillé, vous pouvez utiliser, dans un
+cas particulier (note très longue) la commande
+\samepage
(remarquez que \samepage
n'agit pas
+sur les sauts de paragraphes) :
+Jean-Paul Sartre\footnote{\samepage Jean-Paul Sartre est né à Paris en +1905. Il est élevé par sa mère, veuve en 1906, qui est catholique, et par +son grand-père maternel, Charles Schweitzer, protestant alsacien. En +1916, sa mère se remarie et Jean-Paul Sartre entre au lycée de La +Rochelle.} est l'un des plus célèbres normaliens littéraires. ++ +
Une solution globale consiste à redéfinir le critère de beauté associé +au placement des bas de page. Il suffit d'écrire dans le préambule du +fichier :
+ ++\interfootnotelinepenalty=10000 ++ + + + diff --git a/src/logiciels/latex/graphisme.tml b/src/logiciels/latex/graphisme.tml new file mode 100644 index 0000000..2d6e7a8 --- /dev/null +++ b/src/logiciels/latex/graphisme.tml @@ -0,0 +1,156 @@ + + + + +
Les packages pgf et Tikz permettent de faire énormément de choses. Vous + pouvez regarder les exemples sur: + Fauskes.net +et vous en inspirer. +La documentation, disponible + +ici, +est longue mais commence par une série de tutoriaux. +
+ + ++ On doit utiliser le + package graphicx. Pour cela, il faut mettre un : +
+ ++ \usepackage{graphicx} ++ +
+ dans le préambule. Ensuite, dans le corps du document, pour inclure une + image stockée dans le fichier machin, on tape + \includegraphics{machin}. On peut spécifier la taille avec des + arguments optionnels : + \includegraphics[width=3cm,height=3cm]{machin} (on peut bien + sur ne préciser qu'une seule des deux tailles). On peut aussi ajouter un + angle=XXX spécifiant d'insérer l'image tournée de XXX + degrés. +
+ + +Ce paragraphe n'est valable que si vous compilez avec pdflatex. + On a le droit au PDF, au JPEG, au PNG et au TIFF (et également les + fichiers PostScript obtenus avec MetaPost). + Si l'image est dans un autre format bitmap, on peut la convertir en JPEG, + PNG ou TIFF, par exemple à l'aide de convert. + Si c'est un EPS, le mieux est d'utiliser epstopdf. +
+ ++Ils sont nombreux. Pour faire des schémas du style de ceux qu'on trouve +dans les publications scientifiques (et notamment, mettre facilement des +formules en LaTeX à l'intérieur des schémas) et toujours avec pdflatex, +on peut recommander ipe. Il y a aussi, par exemple, xfig (dans le même +genre que ipe, en plus ancien), inkscape (un logiciel de dessin +vectoriel classique), gimp (pour l'édition d'images bitmap) et gnuplot +(pour les courbes et autres histogrammes). +
+ ++ Il y a le package xcolor qui permet de mettre du texte en + couleur. +
+ ++ On dispose de la commande \textcolor, qui prend comme premier + argument une couleur, comme deuxième argument du texte, et affiche ce + texte dans cette couleur. Par exemple, \textcolor{red}{ploum} + va mettre « ploum » en rouge. +
+ ++ Il y a quelques noms de couleurs prédéfinis, comme red, + blue et cie. On peut en définir d'autres, avec la commande + \definecolor. Elle prend en premier argument le nom que l'on + veut donner, en deuxième argument, le modèle de spécification, et en + troisième argument, la spécification. Les trois modèles sont : +
++ On peut appliquer une rotation à du texte avec \rotatebox (par exemple + \rotatebox{30}{ploum} pour tourner de 30 degrés), lui faire + subir une affinité avec \resizebox (par exemple + \resizebox{1cm}{3cm}{ploum} pour afficher « ploum » large de + 1cm et haut de 3cm). +
+ + ++ Contrairement à un fichier PostScript ou PDF, un fichier au format + traditionnel de sortie de LaTeX, le format DVI, n'est pas fait pour + contenir des images, ni par exemple du texte en couleur. + On s'en sort en mettant dans le fichier DVI des commandes spéciales à + l'intention des logiciels qui convertiront le fichier dans un format + plus riche. Ces commandes spéciales peuvent être, par exemple, des + références à des images stockées ailleurs, qui sont insérées au bon + endroit au moment d'imprimer le document ou de le convertir. Ou + d'ailleurs de l'afficher, mais tout ça ne marche que si le programme + qui doit faire la conversion ou l'affichage est au courant de la + convention, or les afficheurs DVI gèrent généralement moins bien les + commandes spéciales que les convertisseurs. + Ainsi, si vous compilez votre document au format + DVI (avec la commande latex, par opposition à + pdflatex), il faudra probablement convertir le fichier DVI + au format PS ou PDF pour voir les images, le texte en couleur, etc. +
+ ++ De plus, on ne peut insérer par ce mécanisme que des images au format + EPS. La commande convert fournie par ImageMagick permet de + faire la conversion depuis tout un tas de formats d'images. +
+ ++ À l'inverse, le puissant package de dessin PSTricks (analogue à pgf/TikZ, + qui en est inspiré) fonctionne avec latex mais pas avec + pdflatex. Vous pouvez consulter le manuel de PSTricks. +
+ + + + + + diff --git a/src/logiciels/latex/grec.dvi b/src/logiciels/latex/grec.dvi new file mode 100644 index 0000000..abb7f85 Binary files /dev/null and b/src/logiciels/latex/grec.dvi differ diff --git a/src/logiciels/latex/grec.png b/src/logiciels/latex/grec.png new file mode 100644 index 0000000..0e4d123 Binary files /dev/null and b/src/logiciels/latex/grec.png differ diff --git a/src/logiciels/latex/grec.tml b/src/logiciels/latex/grec.tml new file mode 100644 index 0000000..09aac5d --- /dev/null +++ b/src/logiciels/latex/grec.tml @@ -0,0 +1,236 @@ + + + + ++La méthode décrite ici fonctionne encore très bien, mais de nouveaux outils +sont maintenant disponibles, qui peuvent sembler plus confortables à +utiliser. Pour apprendre à s'en servir, allez voir la page sur +langues exotiques (oui, le grec, c'est exotique). +
+Pour taper des textes en grec, il suffit d'indiquer dans le +préambule de son document que l'on veut charger le grec dans les +options de babel :
+ ++\usepackage[greek,frenchb]{babel} ++ +
+Pour le grec ancien, utilisez +
+ ++\usepackage[polutonikogreek,frenchb]{babel} ++ +
babel prévoit une commande pour taper du grec :
+ ++\textgreek{blablabla} ++ +
+mais elle est très mauvaise, nous vous conseillons de la redéfinir dans +le préambule de votre document : +
+ ++\newcommand*{\textgreek}[1]{% + \foreignlanguage{greek}{#1}% +} ++ +
ce qui donne :
+ + + ++Comme vous êtes fainéant (normal), vous aurez envie de vous créer un +raccourci : +
+ ++\newcommand*{\tg}[1]{\textgreek{#1}} ++ +
ce qui vous permet maintenant de taper :
+ +\tg{blablabla}+ +
Les équivalences de caractères sont les suivantes :
+ ++
+ +Pour taper les accents et les esprits, on utilise les signes +suivants :
+ +<
pour l'esprit rude ;>
pour l'esprit doux ;'
pour l'accent aigu ;`
pour l'accent grave ;~
pour l'accent circonflexe.Ces signes se placent avant la lettre sur laquelle ils portent. Les
+trémas se tapent "
, et se placent avant les accents.
+Exemples :
>'a pour
+ |
+<~w pour
+ |
`h pour
+ |
+"'i pour
+
+ |
Pour les iotas souscrits, il faut taper
+|
(un pipe) après la lettre sur laquelle
+on veut le faire porter. Exemple :
T'a z~w|a tr'eqei+ +
+pour .
+ +La ponctuation se marque à la française, sans se poser de
+question. On tape un point d'interrogation (?
) pour
+obtenir... un point d'interrogation, et un point virgule
+(;
) pour un point en haut.
Comme vous l'aurez remarqué, Ô lecteurs diligents, on utilise
+l'apostrophe pour faire l'accent aigu, ce qui risque de poser certains
+problèmes quand on veut réellement utiliser l'apostrophe. Il faudrait
+don, dans l'idéal, mettre un espace insécable après l'apostrophe, mais
+pas de chance la commande ~
est inutilisable en grec
+puisqu'elle sert pour les périspomènes. Le plus simple est donc de
+taper '{}
.
Les signes exotiques (stigma, stampi et autres qoppas) ne sont pas +disponibles directement. Il faut taper :
+ +\Digamma pour
+ |
+\ddigamma pour
+ |
\Sampi pour
+ |
+\sampi pour
+ |
\qoppa pour
+ |
+
+Voici donc un petit exemple de texte (extrait de La Constitution +d'Athènes) tapé avec LaTeX : +
+ +\textgreek{Peis'istratis m'en o>~un >egkateg'hrase t~h| +>arq~h| ka`i >ap'ejane nos'hsas >ep`i Fil'onew >'arqontos, +af' o<~iou m`en kat'esth t`o pr~wton t'urannos >'eth tri'akonta +ka`i tr'ia Bi'wsas, <`a d' >en t~h| >arq~h| di'emeinen +<enos d'eonta e>'ikosi; >'efeuge g`ap t`a loip`a.}+ +
ce qui donne :
+ + + + +Les accents des titres en grec posent des problèmes lorsqu'ils doivent +figurer dans des titres courants (l'ordinateur ne lit pas encore dans +votre pensée et va bêtement continuer à mettre des accents à l'intérieur +des mots). Bien sûr on est en droit d'aimer les accents qui se promènent +entre deux caractères majuscules, mais en général il vaut mieux indiquer +une alternative à l'ordinateur.
+ +Vous pouvez utiliser la commande \hsection
définie ainsi :
+\newcommand*{\hsection}[2]{% + {% + \renewcommand*{\sectionmark}[1]{}% + \section{#2}% + }% + \sectionmark{#1}% +} ++ +
Cette macro prend deux arguments : la première paire d'accolades contiendra le +titre destiné au titre courant, la seconde contiendra le titre destiné à +la table des matières et au texte lui-même.
+ +Supposons que vous ayez pris pour titre de section la formule +édifiante de la grammaire des ragondins : . Vous taperez +dans le fichier source :
+ ++\hsection{\textgreek{Pajwn nhpioc>egnw}} +{\textgreek{Paj`wn n'hpioc >'egnw}} ++ +
+Autrement, il est possible de redéfinir les en-têtes de page pour qu'ils
+ne soient pas en capitales (package fancyhdr
).
+
Bienvenue sur notre page LaTeX. Celle-ci est conçue pour vous +apprendre à vous servir de LaTeX, un système très puissant pour +composer du texte (mettre en forme et mettre en page), utile dans de +nombreux domaines (littérature, langues anciennes ou ésotériques, +textes scientifiques, etc.).
+ +Le contenu de cette introduction à LaTeX +est organisé comme suit:
+ + Concernant les bases de LaTex, vous pouvez aussi consulter une petite
+documentation au format PostScript : latex.ps.gz
(que vous pouvez
+télécharger ou consulter directement). Attention, il y a des éléments
+ obsolètes dedans.
Pour certains sujets bien précis, nous mettons à votre disposition +des fiches techniques, expliquant les différentes manières de faire telle +ou telle chose. Voici la liste des sujets existants, si vous pensez +qu'un sujet important a été oublié, envoyez-nous un mail !
+ +Des modèles qui pourront vous servir en de nombreuses occasions... +Télechargez-les, puis utilisez-les comme base pour rédiger une lettre, un +CV, un rapport de stage, etc.
+ +article
et le squelette du document.book
et le squelette du document.Des CV : on donne plusieurs exemples de CV, +présentés différemment, et utilisant des techniques différentes. Il est +certain que, pour quelqu'un qui n'a pas l'habitude d'utiliser LaTeX, un +traitement de textes classique sera bien plus facile à utiliser pour +taper un bête CV. Cela dit, faire du LaTeX c'est aussi voir comment les +autres ont fait...
+ ++Nous vous invitons à consulter notre page: + Documentations sur LaTeX +Ci-dessous les références les plus utiles. +
+ ++Dans cette page, nous allons voir comment utiliser LaTeX pour taper des +langues « exotiques ». Par là, nous entendons des langues qui s'écrivent +avec autre chose que l'alphabet latin, comme le russe ou le japonais. +
++LaTeX a été conçu avant tout par des Américains, et à ce titre, prévu pour +taper de l'anglais. Comme l'auteur principal est quelqu'un de soigneux, il +est assez facile de rajouter des accents, et même de taper autre chose que +de l'alphabet latin. Mais facile ne veut pas dire pratique : avec la manière +directe de procéder, le code source d'un mot en grec ancien risque d'être +moins lisible que les jurons de Fantasio. +
+ ++Heureusement, LaTeX est programmable, et des extensions ont été écrites pour +permettre plus de confort. Hélas, ces extensions sont toutes plus ou moins +incompatibles entre elles, et souvent plutôt plus que moins. Par exemple, si +vous voulez taper du français et du grec, vous avez un choix exclusif entre +taper confortablement les caractères accentués français et taper +confortablement les mots grecs. +
+ +
+Plus récemment, l'informatique a vu le développement d'Unicode, un système
+qui résout les problèmes de langues dans les fichiers textes (un fichier
+.tex
est un fichier texte. L'architecture de LaTeX ne l'a pas
+rendu facile, mais petit a petit, il est devenu possible de bénéficier de ce
+progrès.
+
+Unicode résout certains problèmes, mais ne les résout pas tous. Le principal +est bien sûr celui des polices : votre texte aura beau contenir, +informatiquement parlant, des idéogrammes chinois, si ces idéogrammes ne +sont disponibles dans aucune police que connaît LaTeX, vous n'irez pas loin. +
+ ++Ensuite, Unicode est conçu pour la saisie du texte, pas son rendu : +Unicode traite des entités plus ou moins abstraites appelées caractères, qui +n'ont pas nécessairement un rapport direct avec les glyphes qu'on veut voir +dans un document imprimé. Pour les langues européennes, ça se passe plutôt +bien, mais certaines langues, l'arabe et surtout les langues indiennes, ont +des interactions entre caractères très complexes : ligatures, +réordonnancement, combinaisons, etc. Unicode n'aplanit pas ces difficultés, +il se contente de fournir un point d'entrée confortable à une extension qui +le fait — si elle existe. +
+ ++Enfin, LaTeX est conçu presque exclusivement pour l'écriture de gauche à +droite. Ses algorithmes sont incapables de gérer l'écriture de droite à +gauche de l'arabe et de l'hébreu, et l'écriture en colonnes. +
+ ++Après toutes ces considérations défaitistes, on en vient à se demander s'il +est possible de taper autre chose que de l'anglais. Voici une petite liste +de ce qui marche bien. +
+ ++La distribution standard de LaTeX comporte des polices latines, grecques et +cyrilliques. Des polices chinoises et japonaises sont également disponibles, +mais parfois plus techniques à installer. Il y en a installées à l'ENS. +
+ ++Avant de commencer, il y a un pré-requis qui n'est pas spécifique à LaTeX : +savoir taper un texte quelconque, dans la langue qui vous intéresse, en +Unicode. Heureusement, nous avons une documentation sur les +éditeurs en Unicode, +que nous vous invitons à lire avant d'aller plus loin si ce n'est déjà fait. +
+ ++Tout ce que vous avez à faire maintenant, c'est de créer votre fichier LaTeX +avec votre éditeur en Unicode. Nous allons voir dans un instant ce qu'il +faut mettre dans le préambule. +
+ + + ++Dans le cas général, il n'y a quasiment rien à changer. Il suffit d'avoir la +ligne suivante dans le préambule : +
+\usepackage[utf8]{inputenc}+
+(à la place de l'habituel latin1
). Avec cette ligne, un texte
+en alphabet latin étendu (y compris œ
,
+“
, ”
, ‘
,
+’
, €
, …
,
+—
, etc., tapés directement) fonctionne directement.
+
+Pour d'autres langues, il faut quelques options supplémentaires, et en +particulier informer babel du changement de langue. +
+ +
+Jusqu'a présent, vous n'avez probablement utilisé du package babel que la
+ligne \usepackage[francais]{babel}
. Il est temps d'apprendre à
+l'utiliser pour d'autres langues. Par chance, c'est assez simple. La
+première chose à faire est de charger les bons modules :
+
\usepackage[greek,russian,francais]{babel}+
+La dernière langue mentionnée est la langue « principale » du document, +celle qui est sélectionnée s'il n'y a pas d'indication contraire. L'ordre +des autres langues n'a pas d'importance. +
+ ++Il faut ensuite, tout au long du texte, indiquer les changements de langue. +Trois commandes permettent de faire ça : +
+\selectlanguage{langue}+
+sélectionne une nouvelle langue pour tout le reste du texte, ou jusqu'à la +prochaine rencontre avec la même commande. De manière surprenante, cette +commande s'échappe des groupes et des environnements ; à utiliser avec +prudence donc. +
+ ++\begin{otherlanguage}{langue} +\end{otherlanguage} ++
+sélectionne une langue pour l'étendue de l'environnement. Aucune surprise +ici. +
+ +\foreignlanguage{langue}{blabla}+
+sélectionne une langue pour le texte « blabla », et s'utilise de la même
+manière que \emph
.
+
+Souvent, des commandes plus compactes sont disponibles spécifiquement pour
+une langue donnée (comme \textgreek
pour
+\foreignlanguage{greek}
).
+
+Attention, il est souvent nécessaire de +bien informer LaTeX du changement de langue. En effet, le changement de +langue s'accompagne d'un changement de police (plus précisément, +d'encodage de police), ce dont LaTeX ne prend pas l'initiative tout +seul. +
+
+Dans le cas d'un texte comportant beaucoup de mots étrangers, par exemple le
+commentaire en français d'un texte grec, changer sans arrêt de langue est
+fastidieux, même en ayant défini une macro très courte. Il est possible
+d'automatiser ça en utilisant le package autofe
. Attention
+cependant si vous optez pour cette solution : si dans un mot certains
+caractères sont disponibles dans la police actuelle et d'autres pas, ce mot
+sera rendu avec un mélange de polices, ce qui peut être très laid, et vous
+n'aurez aucun avertissement. De plus, au delà de quelques mots, il faut
+quand même expliciter le changement de langue, faute de quoi la typographie
+et, plus grave, la césure ne respecteront pas les règles spécifiques.
+
+Le nom pour babel est simplement greek
. La commande
+\textgreek{blabla}
est définie pour avoir le même
+effet que \foreignlanguage{greek}{blabla}
. Le
+changement de langue est nécessaire pour que la police soit disponible.
+
+Quand le grec est actif, LaTeX utilise une sorte de translittération depuis +l'alphabet latin, avec des conventions pour les accents et les esprits. Mais +comme nous travaillons en UTF-8, c'est inutile et nous n'en parlons pas. +
+ +
+Le nom pour babel est russian
, et le changement de langue est
+nécessaire pour que la police soit disponible. Rien d'autre à signaler.
+
+Là, ça se complique un peu, il faut quelques packages supplémentaires. Voici +ce qu'il faut mettre dans le préambule pour du chinois traditionnel : +
++\usepackage[cjkbg5]{ucs} +\usepackage[utf8]{inputenc} +\usepackage[C00,T1]{fontenc} +\DeclareFontSubstitution{C00}{sng}{m}{n} ++
+et pour du chinois simplifié : +
++\usepackage[cjkgb]{ucs} +\usepackage[utf8]{inputenc} +\usepackage[C10,T1]{fontenc} +\DeclareFontSubstitution{C10}{sng}{m}{n} ++ +
+Les deux ont la même structure. La première ligne indique quelle
+interprétation choisir pour un caractère qui aurait le mauvais goût d'être
+commun au chinois simplifié, au chinois traditionnel et au japonais. La
+troisième ligne charge l'encodage nécessaire (C00 pour le chinois
+traditionnel, C10 pour le simplifié), ainsi que l'encodage occidental (faute
+de quoi ça ne marche pas). Enfin, la dernière ligne indique quelle famille
+de police employer par défaut pour cet encodage, ici Arphic SungtiL
+(sng
). Deux autres polices sont disponibles ici, Arphic KaitiM
+(kai
), très ornée, et Bitstream Cyberbit (cyb
),
+qui n'est pas libre. Il est possible de changer de police en modifiant la
+ligne \DeclareFontSubstitution
ou en utilisant la commande
+\fontfamily
.
+
+Quelques points supplémentaires à savoir. D'abord, babel n'a pas de mode +pour le chinois. Pour éviter des bizarreries typographiques, il peut être +bon de passer babel en mode anglais pour un bout de chinois. Ensuite, ce +mode de saisie n'est pas capable de couper automatiquement entre les +idéogrammes ; il est nécessaire d'insérer des espaces à la main. Peut-être +dans un avenir proche un package résoudra-t-il le problème. +
+ +
+L'installation de polices chinoises pour LaTeX est assez acrobatique, et
+pas complètement standard. Les indications ci-dessus fonctionneront
+normalement sur l'installation LaTeX de l'ENS, mais il n'est pas sûr du tout
+que ce soit le cas ailleurs ; en particulier, les noms des polices (pour le
+\DeclareFontSubstitution
) peuvent varier considérablement.
+
+Là, ça se complique un peu, il faut quelques packages supplémentaires. Voici +ce qu'il faut mettre dans le préambule : +
++\usepackage[cjkjis]{ucs} +\usepackage[utf8]{inputenc} +\usepackage[C42,T1]{fontenc} +\DeclareFontSubstitution{C42}{dg}{m}{n} ++ +
+La première ligne indique quelle
+interprétation choisir pour un caractère qui aurait le mauvais goût d'être
+commun au japonais et au chinois. La
+troisième ligne charge l'encodage nécessaire (C42 pour le japonais), ainsi
+que l'encodage occidental (faute de quoi ça ne marche pas). Enfin, la
+dernière ligne indique quelle famille de police employer par défaut pour cet
+encodage, ici Wadalabe DG (dg
). Trois autres polices Wadalabe
+sont disponibles ici, dm
, mc
et mr
.
+Il est possible de changer de police en modifiant la ligne
+\DeclareFontSubstitution
ou en utilisant la commande
+\fontfamily
. La police (non-libre) Bitstream Cyberbit est
+également disponible sous le nom cyb
, mais il faut dans ce cas
+remplacer partout C42 par C40, et donc exclure d'utiliser les polices
+Wadalabe.
+
+Quelques points supplémentaires à savoir. D'abord, babel n'a pas de mode +pour le japonais. Pour éviter des bizarreries typographiques, il peut être +bon de passer babel en mode anglais pour un bout de japonais. Ensuite, ce +mode de saisie n'est pas capable de couper automatiquement entre les +caractères ; il est nécessaire d'insérer des espaces à la main. Peut-être +dans un avenir proche un package résoudra-t-il le problème. +
+ +
+L'installation de polices japonaises pour LaTeX est assez acrobatique, et
+pas complètement standard. Les indications ci-dessus fonctionneront
+normalement sur l'installation LaTeX de l'ENS, mais il n'est pas sûr du tout
+que ce soit le cas ailleurs ; en particulier, les noms des polices (pour le
+\DeclareFontSubstitution
) peuvent varier considérablement.
+
Cette page a pour but d'apprendre à se servir de LaTeX. Vous y +verrez quel est le principe de LaTeX, et comment l'utiliser sur les +machines de l'École, et même quelques conseils concis pour l'utiliser + sur votre ordi personnel. + Les principales commmandes de LaTeX sont +expliquées ailleurs. Mais prenons d'abord le +temps de comprendre son fonctionnement...
+ +La composition d'un texte avec LaTeX est regroupée en trois temps. +D'abord, on rédige le texte en question (ainsi que les commandes de mise +en page destinées à LaTeX). Ensuite, on compile le document, c'est-à-dire +qu'on le donne à LaTex pour qu'il fasse la mise en page. Enfin, on +visualise le résultat, pour corriger des fautes, l'imprimer, l'envoyer +par mail...
+ +Fonction | +Commande | +Exemple | +Astuces | +
Écrire | +éditeur fichier.tex |
+kate bla.tex |
+Ne pas oublier de sauvegarder avant de compiler ! Sinon, les + modifications n'apparaîtront pas... | +
Compiler (pdf) | +pdflatex fichier.tex |
+pdflatex bla.tex |
++Plutôt que de retaper à chaque fois la commande, utilisez les flèches! En +cas d'erreur, taper x pour arrêter la compilation. + |
Résultat | +evince fichier.pdf |
+evince bla.pdf |
+Mettez un & à la fin de la ligne pour garder la
+fenêtre en tâche de fond, evince recharge le fichier pdf automatiquement à
+chaque fois que vous compilez.
+ |
Imprimer | +lpr fichier.pdf |
+lpr bla.pdf |
+Vérifier que personne n'est en train d'imprimer, avec la commande
+lpq ; et surtout, si vous avez lancé une impression avant
+de vous rendre compte qu'il n'y avait pas de papier, annulez-la avec la
+commande lprm . |
+
Il faut utiliser un éditeur de
+texte. Si par exemple vous utilisez kate
et que vous
+voulez éditer le fichier rapport.tex
, tapez :
kate rapport.tex+ +
Ce fichier, auquel on donne le nom que l'on veut, a obligatoirement
+le suffixe .tex
, pour l'identifier. rapport.tex
+est le fichier source, c'est-à-dire le fichier qui sera
+interprété par le compilateur ; c'est donc celui où on écrit le texte
+agrémenté de quelques commandes.
.tex
Ça veut dire le « passer à la moulinette » : le compilateur, ici +LaTeX, interprète le source à l'aide des commandes qui y ont été insérées +et qui lui indiquent la manière dont il faut mettre le texte en page. +Tapez dans un terminal :
+ +pdflatex document.tex+ +
Sur l'écran vont se mettre à défiler diverses choses. Si tout va
+bien, le programme va « rendre la main » et le prompt réapparaît. Si
+vous tapez ls
vous verrez
+que de nouveaux fichiers sont apparus : outre le
+document.tex
, il y a un document.aux
, un
+document.log
et un document.pdf
. C'est le
+dernier qui nous intéresse, car il contient le résultat graphique de la
+compilation.
S'il y a une erreur : LaTeX interrompt la
+compilation en donnant un message d'erreur. Dans ce cas, il faut taper
+x
dans la fenêtre où on a lancé la compilation, afin que le
+programme rende la main (qu'on puisse à nouveau taper des commandes
+derrière le prompt). Il faut ensuite éditer le source (dans une autre
+fenêtre pour simplifier la tâche), corriger l'erreur indiquée, sauver le
+document (pour enregistrer la modification) et recompiler.
Vous pouvez aussi obtenir un fichier dvi à la place du fichier pdf +en tapant :
+ +latex document.tex+ +
au lieu de pdflatex document.tex
.
+latex est la commande la plus ancienne. Pour voir le dvi, il faut utiliser
+ xdvi ou kdvi. Pour l'imprimer, la commande est dvips. Il existe encore
+ certains packages, comme pstricks, qui ne marchent qu'avec latex. Mais il
+ existe pgf/tikz à la place, et la plupart des temps, il est plus simple
+ d'utiliser pdflatex.
+
Pour visualiser le résultat de la compilation, qui est le fichier
+.pdf
, tapez :
evince document.pdf &+ +
Le &
met le programme lancé en tâche de fond; il
+rend donc la main et on peut taper de nouvelles commandes dans la fenêtre
+où on a lancé le programme, ici evince
+Cela vous évite d'avoir à relancer le pdf
à chaque fois que vous recompilez.
+
Si vous avez compilé votre document avec la commande
+ latex
, tapez à la place xdvi document.dvi
+ &
ou kdvi document.dvi
.
Une nouvelle fenêtre va apparaître, qui montre le résultat de la
+compilation. On peut alors relire le document, voir ce qui ne va pas et
+faire la correction dans le source, recompiler et cliquer sur la fenêtre
+pdf
: le document recompilé est remis à jour. On procède
+ainsi jusqu'à obtenir le résultat souhaité.
Le lecteur dvi ou pdf propose cette option dans ses menus. N'oubliez + pas de choisir comme imprimante lwsalles-2 si vous voulez imprimer en + recto-verso, et lwsalles sinon. +
+ + + ++Le logiciel LaTeX étant un surensemble de TeX, et ses frontières n'étant +(volontairement) pas nettement définies, il existe de nombreuses +distributions de LaTeX ; nous vous conseillons de vous orienter +vers l'une d'elles si vous voulez vous procurer LaTeX. +Nous recommandons notamment la + TeXlive, qui +existe pour Linux, FreeBSD, Solaris, MacOS X et Windows +
+ +Il existe aussi de nombreux logiciels, pour vous aider à utiliser + LaTeX, tels que + +texmaker + ou + +kile.
+ +Pour avoir plus de renseignements sur les différentes distributions +et les différents systèmes d'exploitation, reportez-vous à la page consacrée à ces +questions chez GUTenberg.
+ +Rappelons que, si vous êtes élèves, ancien élève, étudiant ou +enseignant à l'ENS, les tuteurs sont à même de répondre à vos questions +concernant l'installation de LaTeX à l'ENS, ou les possibilités de LaTeX en +général. N'hésitez pas à nous envoyer +un mail !
+ +La plupart des distributions proposent des paquets précompilés. +Pour Ubuntu, vous pouvez vous référer à la page suivante + LaTeX et Ubuntu . +
+ ++On dit du bien de +MikTeX, implémentation de +LaTeX spécifique à Windows (aller dans la section Download, télécharger +et installer). Il est ensuite recommandé d'installer Texmaker. +
+ + + + + diff --git a/src/logiciels/latex/letter_skel.tex b/src/logiciels/latex/letter_skel.tex new file mode 100644 index 0000000..5489b1c --- /dev/null +++ b/src/logiciels/latex/letter_skel.tex @@ -0,0 +1,19 @@ +\documentclass[11pt]{letter} + + \name{}% Nom de l'expditeur + \address{}% Adresse de l'expditeur + \signature{}% Signature de l'expditeur + \date{} + + \begin{document} + \begin{letter}{}% Nom du destinataire + \opening{}% Formule de salutation : cher monsieur, etc. + +% Corps de la lettre + + \closing{}% Formule de politesse : veuillez agrer, etc. + \ps{}% Post-scriptum + \cc{}% Autres destinataires de la lettre + \encl{}% Pices jointes + \end{letter} + \end{document} diff --git a/src/logiciels/latex/lettre.tml b/src/logiciels/latex/lettre.tml new file mode 100644 index 0000000..f57d560 --- /dev/null +++ b/src/logiciels/latex/lettre.tml @@ -0,0 +1,281 @@ + + + + +Il existe, grosso modo, deux classes de documents pour écrire
+une lettre sous LaTeX : la classe letter
et la classe
+lettre
.
letter
C'est la plus simple des deux (mais forcément, elle fait moins de
+choses...). Attention, par défaut, cette classe ne respecte pas la
+convention de placement des noms à la française.
+\usepackage{french}
corrige cela (ce package n'existe plus,
+le remplacent un package commercial frenchpro
et une
+version diminuée de ce dernier mais gratuite frenchle
),
+mais pas \usepackage[francais]{babel}
.
Un document de base est structuré comme suit (les parties qui +doivent être modifiées sont en italique) :
+ ++\documentclass[11pt]{letter} + +\name{nom de l'expéditeur} +\address{adresse de l'expéditeur} +\signature{signature de l'expéditeur} +\date{date d'expédition} + +\begin{document} +\begin{letter}{nom du destinataire} +\opening{formule de politesse (« adresse » : cher Monsieur, etc.)} + +Corps de la lettre + +\closing{formule de politesse (veuillez agréer, etc)} +\ps{post-scriptum} +\cc{nom des autres destinataires} +\encl{pièces jointes} +\end{letter} +\end{document} ++ +
Bien entendu, il n'est pas nécessaire de spécifier \ps
,
+ou \cc
, s'il n'y a pas lieu. Vous pouvez télécharger le fichier modèle pour la classe de documents
+letter
.
La présentation de la lettre dépendra de la langue choisie. Par
+défaut, la présentation est anglaise (on signe à la main sous le nom,
+présentation en blocs sans indentation pour la première ligne d'un
+paragraphe, formule de politesse d'ouverture alignée à gauche, etc.) En
+utilisant le package french
de babel
+(attention, c'est bien french
qu'il faut et non
+francais
).
lettre
La classe lettre
se fonde sur letter
, mais
+ avec quelques améliorations. Elle a été écrite par Denis Mégévand.
Voici un exemple de fichier de base (vous disposez de toutes les
+commandes de la classe letter
, on ne les redonne pas toutes
+ici) :
+\documentclass[11pt]{lettre} + +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage[francais]{babel} + +\begin{document} +\begin{letter}{destinataire} +\name{expéditeur} +\def\concname{Objet :~} % On définit ici la commande 'objet' +\conc{Objet de la lettre} +\nref{Références de la lettre, de votre point de vue} +\vref{Références de la lettre, du point de vue de votre interlocuteur} +\opening{Madame, Monsieur,} + +Corps de la lettre + +\closing{formule de salutations} + +\end{letter} +\end{document} ++ +
+Une question fréquente concerne la manière de retirer le trait +que la classe lettre imprime pour faciliter le pliage du courrier en +trois. On peut trouver disgracieux ce trait. Pour le retirer, il y a +trois méthodes +
+ ++Premièrement, on peut placer dans le préambule cette définition +
+ ++\makeatletter +\newcommand*{\NoRule}{\renewcommand*{\rule@length}{0}} +\makeatother ++ +
+et utiliser la commande \NoRule
dans le corps des lettres
+pour lesquelles on ne souhaite pas ce trait. Par exemple
+
+\begin{letter}{Premier destinataire} + \NoRule + Corps de la lettre +\end{letter} + +\begin{letter}{Second destinataire} + Corps de la lettre +\end{letter} ++ +
+donnera deux lettres, dont la première n'aura pas de trait de pliage +mais la seconde si. +
+ +
+Deuxièmement, vous pouvez placer dans le fichier .ins
(voir
+la section « Personnaliser ») une ligne supprimant le trait
+chaque fois que vous utiliserez ce fichier .ins
.
+
+\renewcommand*{\rule@length}{0} ++ +
+Troisièmement, si vous voulez systématiquement supprimer ce trait, vous
+pouvez créer une classe spéciale xletter
. Créez un fichier
+xletter.cls
et saisissez le code suivant.
+
+\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{xlettre} + +\newcommand*{\xlettre@do}{} +\newcommand*{\xlettre@rule}{} +\newcommand*{\xlettre@norule}{% + \let \xlettre@institut=\institut + \def \institut ##1{% + \xlettre@institut{##1}% + \def \rule@length {0}% + }% + \def \@institut {% + \makeatletter \input{default.ins}\makeatother + \def \rule@length {0}% + }% +} + +\DeclareOption{rule}{\let \xlettre@do =\xlettre@rule} +\DeclareOption{norule}{\let \xlettre@do =\xlettre@norule} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{lettre}} + +\ExecuteOptions{norule} +\ProcessOptions + +\LoadClass{lettre} + +\xlettre@do + +\endinput ++ +
+Placez ce fichier dans les chemins de recherche de TeX. L'utilisation
+de cette classe est strictement identique à celle de lettre
+mais elle accepte deux options supplémentaires :
+
+\documentclass{xlettre} ++ +
+ou +
+ ++\documentclass[norule]{xlettre} ++ +
+supprime systématiquement les traits de pliage, tandis que +
+ ++\documentclass[rule]{xlettre} ++ +
+les ajoute conformément aux règles de la classe lettre
.
+
Un certain nombre de paramètres de vos lettres sont peu susceptibles
+de changer. Votre nom ou votre adresse, par exemple. Vous souhaiteriez
+donc pouvoir disposer d'un en-tête par défaut pour vos lettres. Ça tombe
+bien, car avec la classe lettre
, l'en-tête par défaut est
+obligatoire.
L'en-tête est défini dans un fichier de configuration,
+default.ins
et qui doit être placé dans le répertoire
+inputs (une autre possibilité est de placer ces commandes dans un
+fichier noel.ins
et d'utiliser dans le fichier
+.tex
la ligne
+
+\institut{noel} ++ +
+dans le préambule, à chaque fois que vous devrez utiliser ces +paramètres). Voici un exemple :
+ ++\name{Père Noël} +\signature{Papa Noël} +\address{\centering + \textbf{\textsc{Père Noël, Lutins et Associés}}\\ + % On peut mettre en forme l'en-tête... Ici, il est centré, et on + % demande à ce que le nom soit en petites majuscules et en gras. + Fabricant de jouets depuis toujours\\ + Palais des Jouets} +\lieu{Pôle Nord} + +% Ce paramètre sert à indiquer dans la lettre « Au Pôle +% Nord, le 25 décembre 2000 » + +\telephone{} +\email{pere.noel@polenord.pn} +\nofax +% C'est \fax{} pour indiquer un numéro de fax ++ +
Ce qui donne la chose suivante en guise d'en-tête :
+ + + + + diff --git a/src/logiciels/latex/macros.tml b/src/logiciels/latex/macros.tml new file mode 100644 index 0000000..6073295 --- /dev/null +++ b/src/logiciels/latex/macros.tml @@ -0,0 +1,429 @@ + + + + ++Il est très facile de définir de nouvelles commandes qui seront autant +d'abréviations. Par exemple : +
+ ++\newcommand\cad{c'est-à-dire} ++ +
+Cette ligne crée une nouvelle commande, \cad
, qui sera
+automatiquement remplacée lors de la compilation par le texte
+« c'est-à-dire ». Remarquez que LaTeX proteste si la commande que
+vous définissez existe déjà. Vous pouvez ainsi remplacer les choses un peu
+longues à taper par des commandes abrégées. Pour une thèse sur le
+chevalier Paul-Louis de la Grange-Noble, vous aurez tout intérêt à
+définir dès le début :
+
+\newcommand\PL{Paul-Louis de la Grange-Noble} ++ +
+Il arrive fréquemment d'avoir besoin de redéfinir une commande qui existe +déjà. Dans ce cas-là, on utilise simplement: +
++\renewcommand\nom{contenu} ++ +
à la place de newcommand
.
+
+Après toute commande dont le nom est composé de lettres (comme
+\LaTeX
, par exemple et à l'inverse de \$
), les
+espaces sont ignorées. Par conséquent, si
+vous voulez que votre macro soit suivie d'une espace dans le résultat
+final, utilisez l'une des méthodes suivantes :
+
+Le Maître du Monde, \cad{} moi, ... +Le Maître du Monde, \cad\ moi, ... +Le Maître du Monde, {\cad} moi, ... ++ +
Ce serait une très mauvaise idée de mettre une espace dans la +définition de la macro, car vous auriez toujours une espace, y +compris avant une ponctuation. +
+ +Vous pouvez utiliser le package xspace
pour remédier à
+cette nécessité. Dans le préambule, ajoutez :
+\usepackage{xspace}
Ensuite, écrivez vos macros de la façon
+suivante :
+
+\newcommand\cad{c'est-à-dire\xspace} ++ +
La commande \xspace
teste ce qui suit la commande :
+si c'est une ponctuation ou {
ou }
, elle ne fera
+rien; dans les autres cas, elle ajoute une espace. Une conséquence de ce
+fonctionnement est qu'une \footnote
suivant \cad
+va produire une espace inopportune. Elle peut être évitée en
+tapant
+
+(...) \cad{}\footnote{Ma note de pied de page} (...) ++ +
+Les commandes utilisées comme raccourcis atteignent vite leurs limites. +D'ailleurs les raccourcis peuvent être également du ressort des éditeurs +(cf. le chapitre « Abréviations » de la page Emacs avancé). +Les commandes peuvent avoir des rôles bien plus importants : +
+ +
+La séparation fond-forme peut être atteinte en assignant à chaque
+élément sémantique une commande (on appelle cela aussi le balisage
+générique). Par exemple \auteur
pour
+citer des auteurs, ou \source
pour indiquer la source d'une
+citation. Supposons que nous souhaitions afficher les auteurs avec leur
+nom en petites capitales grâce à la commande utilisée ainsi
+
+\auteur{prénom}{nom} ++ +
+on dit alors que la commande \auteur
« prend deux
+arguments », tous deux délimités par des paires d'accolades.
+Du coup, la définition de la commande devient
+
+\newcommand\auteur[2]{...} ++ +
+Le 2
voulant dire que la commande \auteur
a
+besoin de deux arguments pour fonctionner.
+On voudrait que la commande \auteur
accomplisse
+l'équivalent de
+
+prénom~\textsc{nom} ++ +
+~
est l'espace insécable, et le nom est mis en petites
+capitales.
+Pour TeX, prénom étant le premier argument on va l'appeler
+#1
et nom fort logiquement #2
.
+Nous n'avons plus qu'à compléter la définition
+
+\newcommand\auteur[2]{#1~\textsc{#2}} ++ +
+L'avantage de procéder ainsi est que, plus tard, si les petites
+capitales ne vous conviennent plus vous pourrez changer de manière
+cohérente tout votre document (qu'il fasse deux ou plus de 1000 pages)
+en changeant une ligne.
+La même modification serait au contraire extrêmement fastidieuse si vous
+aviez tapé systématiquement
+prénom~\textsc{nom}
car il faudrait
+relire l'ensemble du document et procéder aux modifications en prenant
+garde de ne pas modifier un \textsc
qui ne serait pas celui
+d'un auteur. Vous pouvez vous créer un fichier de style avec
+vos définitions les plus courantes : cf. Écrire son propre package qui pourra
+inclure (ce ne sont que des exemples, ce sont les besoins spécifiques
+d'un document particulier qui décident quelles commandes il est
+souhaitable de définir)
+
+\newcommand\titre[1]{\emph{#1}} +\newcommand\auteur[2]{#1~\textsc{#2}} +\newcommand\source[1]{\footnote{#1}} ++ +
+En plus de vous permettre de contrôler le rendu de votre document,
+l'utilisation de commandes spécifiques à chaque besoin permet
+d'accomplir des tâches complexes adaptées à chaque élément de votre
+document. Supposons que votre commande \auteur
vous
+satisfasse dans un premier temps, mais que plus tard vous arriviez à
+vous dire qu'un index des auteurs (avec les pages où ils sont
+mentionnés) serait du meilleur effet. Puisque vous avez une commande
+spécifique, il vous suffit de la « surcharger », c'est-à-dire de lui
+ajouter toute la machinerie nécessaire à la réalisation de la toute
+nouvelle tâche complexe (et cela sans toucher au reste du texte). Vous
+pourriez essayer de remplacer votre
+définition initiale par (cf. Faire un index
+avec MakeIndex)
+
+\newcommand\auteur[2]{#1~\textsc{#2}\index{#2, #1}} ++ +
+qui produit « prénom nom » et indexe l'auteur +sous la forme « nom, prénom » (pour faciliter la +recherche). +
+ +
+En fait, la définition précédente est très largement perfectible,
+notamment parce que MakeIndex ne comprend pas très bien les accents (on
+peut pour cette raison, lui préférer Xindy). Ce qu'il faut retenir de
+tout cela, c'est qu'une fois que la macro spécifique est mise en place
+(ici \auteur
), peaufiner la présentation du document se
+bornera à effectuer de petites modifications sur quelques commandes.
+Le seul prérequis est que vous définissiez assez tôt la commande et cela
+même si vous pensez ne pas être compétent pour écrire le code
+nécessaire : écrivez dans ce cas une commande qui ne fasse rien comme
+
+\newcommand\auteur{} ++ +
+car vous pourrez toujours modifier la macro à mesure que vous progressez +en LaTeX ou alors quelqu'un de plus savant pourra vous venir en aide, il +sera toujours plus facile pour lui de ne travailler que sur une macro +isolée plutôt que sur tout un document. +
+ +
+Enfin sachez qu'il est possible de définir des commandes prenant des
+arguments optionnels à l'instar de, par exemple,
+\usepackage
. C'est-à-dire qu'il est possible de définir
+une commande \auteur
telle que
+\auteur{prénom}{nom}
fasse ce qui a
+été dit jusqu'alors et que
+\auteur[textit]{prénom}{nom}
mette
+en italique le numéro de page dans l'index (pour distinguer divers types
+de mention de l'auteur). Il est même possible d'avoir trois commandes
+en une :
+
+\auteur*{prénom}{nom} % Imprime seulement +\auteur {prénom}{nom} % Imprime et indexe +\auteur[textit]% + {prénom}{nom} % Imprime, indexe + % et met la page en italique ++ +
+Par souci d'exhaustivité, je place le code correspondant. Il est certes +un peu complexe, mais on ne peut pas attendre d'une macro qu'elle abatte +des montagnes sans l'éduquer un tant soit peu. +
+ ++% Tester si une chaîne est vide +\usepackage{ifmtarg} + +% À partir de maintenant, pour TeX, « @ » est une lettre et peut donc +% participer à l'élaboration de noms de commande complexes comme +% \@ifmtarg défini par le package homonyme ou \@ifstar défini par LaTeX +\makeatletter + +% Si \auteur est suivi d'une étoile appeler \sauteur, sinon \oauteur +\newcommand*{\auteur}{\@ifstar\sauteur\oauteur} + +% \sauteur{prénom}{nom} imprime seulement +\newcommand*{\sauteur}[2]{#1~\textsc{#2}} + +% \oauteur[comment]{prénom}{nom} imprime et indexe +\newcommand*{\oauteur}[3][]{% Par défaut <comment> est vide + \sauteur{#2}{#3}% + \@ifmtarg{#1}{% #1 est-il vide ? + \index{#3, #2}% Oui (mise en page par défaut) + }{% + \index{#3, #2|#1}% Non (mise en page particulière) + }% +} + +% À partir de maintenant, pour TeX, « @ » n'est plus une lettre +\makeatother ++ +
+Les environnements
+\begin{env}...\end{env}
sont une
+structure classique de LaTeX que vous pouvez aussi adapter à vos
+besoins. Pour cela on utilise la commande \newenvironment
:
+
+\newenvironment{env}{% + begin +}{% + end +} ++ +
+à ce moment-là, lorsque vous utiliserez +
+ ++\begin{env} + . + . + . +\end{env} ++ +
+TeX substituera essentiellement (remarquez les accolades qui forment un +« groupe ») +
+ ++{begin + . + . + . +end} ++ +
+Prenons un exemple — peu intéressant, mais commençons doucement
+— pour être clair. On définit l'environnement
+itenv
ainsi
+
+\newenvironment{itenv}{% + \itshape +}{% + % Rien +} ++ +
+Maintenant, quand vous tapez +
+ ++\begin{itenv}Texte\end{itenv} ++ +
+vous obtiendrez le même résultat que +
+ ++{\itshape Texte} ++ +
+qui met « Texte » en italique. Développons un exemple plus
+intéressant. Supposons que vous vouliez avoir plus de souplesse avec
+les citations de votre document (pour l'interlignage, la police, etc.).
+Pour cela vous pourriez définir un
+environnement myquote
ainsi
+
+\newenvironment{myquote}{% + \begin{quote}% Environnement quote + \itshape % ... en italique + \small % ... en plus petit +}{% + \end{quote}% +} ++ +
+Remarques : 1. de manière analogue aux commandes, on ne peut pas définir
+un environnement qui existe déjà ; 2. il n'est pas possible de définir
+un environnement portant le même nom qu'une commande existant déjà (par
+exemple, il n'est pas possible de définir un environnement
+usepackage
) et réciproquement (il n'est pas possible de
+définir une commande \center
).
+
+Pour réaliser des macros complexes, on pourra se référer à la FAQ +anglaise qui contient de nombreux trucs de programmation dans la section +« Macro programming » comme +
+ ++Les packages suivants sont d'un grand intérêt pour des applications +complexes : +
+ +Vous disposez d'un fichier TeX qui contient votre maîtrise, votre +autobiographie, ce que vous voulez. Pour faciliter la vie du lecteur +de votre document final, vous désirez indexer les termes clefs de +votre texte. Le package MakeIndex vous permet de créer un index. Tout +au long de ce cours nous allons utiliser un petit texte d'exemple, +tiré des Mémoires du duc de Luynes (vous pouvez le +télécharger : exemple.txt) :
+ ++À la mort de M. le duc de Bourgogne, lorsqu'il fut question d'aller +jeter de l'eau bénite, le feu Roi décida que si les princes lorrains +s'y presenteroient, qu'eux ni les ducs n'en jetteroient ; mais que si +MM. de Rohan et de Bouillon y étoient, les ducs jetteroient de l'eau +bénite avant eux : ce qui arriva effectivement ; mais MM. de Rohan et +de Bouillon, voyant les ducs passer avant eux, s'en allèrent. Ce qui +avoit été décidé en faveur de MM. les ducs fut écrit sur le registre +de M. de Dreux ; mais deux ans après, les représentations de Mme de +Maintenon déterminèrent le Roi à faire un changement et à ordonner à +M. de Dreux que cet article seroit rayé sur le registre. Il fut mis en +marge que le Roi n'avoit jamais voulu décider entre les ducs et MM. de +Rohan et de Bouillon.+ +
Commencez par indiquer dans le préambule de votre document que vous
+voulez le charger (attention, il faut bien écrire makeidx
+et non makeindex
) :
\usepackage{makeidx}+ +
Ensuite, dans la suite du préambule, mettez la +commande
+ +\makeindex+ +
qui demande à MakeIndex de se mettre au travail. +Enfin, placez la commande
+ +\printindex+ +
à l'endroit où vous désirez placer l'index (à la +fin, normalement).
+ +Pour obtenir une entrée dans l'index, il faut l'indiquer par la
+commande \index{mon_entree}
. Lors d'une première
+compilation, LaTeX repérera tous les \index
et écrira
+pour chacun d'entre eux une entrée dans exemple.idx
. Ensuite il faudra
+faire une deuxième compilation à l'aide de la commande
+makeindex
:
makeindex exemple.idx+ +
MakeIndex interprétera les entrées de
+exemple.idx
et les formatera, générant deux nouveaux
+fichier, exemple.ilg
qui
+contient les messages de compilation de MakeIndex, et exemple.ind
qui contient l'index
+formaté. Il faut ensuite une troisième compilation, avec latex, pour
+que exemple.ind
soit intégré à exemple.tex
+et produise l'index.
makeindex
ce que vous voulez indexer, il
+ne le fait pas automatiquement.
++Pourquoi ? Bien sûr, vous préfereriez avoir à ne donner le mot à +indexer qu'une seule fois et laisser l'ordinateur faire le reste, mais +cette procédure manque de souplesse. Admettons que vous +vouliez créer une entrée d'index « Louis XIV ». Un indexage +automatique vous permettrait bien sûr de recenser toutes les +occurrences de « Louis XIV ». +
+ +
+Mais vous aimeriez sans doute aussi recenser les pages ou vous n'avez
+pas écrit textuellement « Louis XIV », mais où vous en avez parlé sous
+les périphrases « le roi de France », « le monarque », voire un bête
+« il ». Ce que vous permet l'apposition à la main de commandes
+\index{Louis XIV}
après chaque mot ou expression que vous
+voulez voir référencé.
Il faut en tout trois compilations pour que +l'index soit effectif :
+ +latex exemple.tex +makeindex exemple.idx +latex exemple.tex+ +
La procédure de base est la suivante : vous voulez indexer, dans le texte
+d'exemple, les ducs et pairs. Vous placez donc, après l'expression à
+référencer, un \index{}
:
+À la mort de M. le duc de Bourgogne, lorsqu'il fut question d'aller +jeter de l'eau bénite, le feu Roi décida que si les princes lorrains +s'y presenteroient, qu'eux ni les ducs\index{Ducs et pairs} n'en +jetteroient (...) ++ +
+MakeIndex n'a pas été conçu pour les langues possédant des accents :
+dès qu'un mot contenant des caractères accentués se trouvera dans
+votre \index{}
, il le classera au début des mots
+commençant par cette même lettre... Il vous faut donc indiquer
+vous-même à MakeIndex où classer la référence : on utilise pour cela
+une arobase (@
) et le code
+\index{sans_accents@avec_accents}
.
+Par exemple,
+
\index{Princes etrangers@Princes étrangers}+ +
veut dire que vous demandez à MakeIndex de classer +« Princes étrangers » comme s'il n'y avait pas d'accent dans +l'expression.
+ +À noter : Vous pouvez utiliser cette technique pour +classer par exemple des membres d'une même famille dans l'ordre +chronologique, et non pas par ordre alphabétique de leur prénom :
+ ++\index{Guise1@Guise, Henri de Lorraine, duc de} +\index{Guise2@Guise, Charles de Lorraine, duc de} ++ +
Vous pouvez également l'utiliser pour formater à +votre goût l'aspect d'une entrée d'index. Ainsi,
+ +\index{Bourgogne@\textsc{Bourgogne}, Louis de France, duc de}+ +
vous permet d'avoir le nom de famille en petites
+majuscules. Vous pouvez évidemment remplacer \textsc{}
par
+n'importe quel type de fonte (italique, gras, penché...).
Pour produire une sous-entrée, vous devez d'abord indiquer l'entrée +principale puis la sous-entrée, séparée par un point d'exclamation. +Ainsi, si l'on reprend notre exemple, vous voulez faire du mot +« registres » une sous-entrée de « service des Cérémonies » :
+ +\index{Ceremonies@Cérémonies, service de!registres}+ +
Vous pouvez faire des sous-sous-entrées. MakeIndex et LaTeX ne +supportent que trois niveaux d'indexation : vous ne pouvez pas avoir de +sous-sous-sous-entrées.
+ +MakeIndex vous permet de faire des références croisées, qui ne renvoient +pas à une page, mais à une autre entrée. Ainsi, dans notre exemple, on +veut que le lecteur qui cherche une entrée à Bouillon soit renvoyé à +« princes étrangers » :
+ +\index{Bouillon|see{Princes étrangers}}+ +
vous donnera :
+ +Bouillon, voir Princes étrangers+ +
La traduction de |see{}
dépend du package de Babel que
+vous utilisez.
Par défaut, l'index ressemble à ceci (c'est le résultat de
+exemple.tex
) :
Le texte s'étend sur deux colonnes. Si vous voulez modifier le
+formatage de l'index, il vous faudra créer un fichier .ist
+(perso.ist
, par exemple) contenant vos personnalisations.
+Pour utiliser ce fichier .ist
, il faut le donner en option à
+MakeIndex pendant la deuxième compilation :
makeindex -s perso.ist exemple.idx+ +
Il faut insérer dans votre perso.ist les lignes suivantes :
+ ++heading_prefix "{\\bfseries\\hfil " +heading_suffix "\\hfil}\\nopagebreak\n" +headings_flag 1 ++ + + +
Il faut insérer dans votre perso.ist les lignes suivantes :
+ ++delim_0 "\\dotfill" +delim_1 "\\dotfill" +delim_2 "\\dotfill" ++ + + +
Voir le manuel de makindex pour la référence complète : sur un système compatible où LaTeX est installé, il suffit de taper
+man makeindex+
Sinon certains sites référencent les pages de manuel, essayer par exemple le site linux.die.net
+ + + diff --git a/src/logiciels/latex/manuel.tml b/src/logiciels/latex/manuel.tml new file mode 100644 index 0000000..5f2bd8d --- /dev/null +++ b/src/logiciels/latex/manuel.tml @@ -0,0 +1,434 @@ + + + + +Ce résumé n'entend pas remplacer un manuel ; n'y figurent donc +que les commandes les plus essentielles, sans détails ni options. En +particulier, rien de ce qui touche aux mathématiques n'est abordé. Pour +tout cela nous renvoyons aux manuels existants, aux tuteurs ou encore aux +autres utilisateurs. Nous supposerons aussi que l'utilisateur sait déjà +compiler un document (sinon, par ici !).
+ +Vous avez sans doute l'habitude d'utiliser un traitement de texte, +comme Word ou OpenOffice.org. Ces logiciels vous offrent en même temps +deux fonctionnalités différentes :
+ +Avec LaTeX, ces deux fonctionnalités sont dissociées : +l'« écriture » proprement dite relève d'un logiciel appelé « éditeur de texte »; la « mise +en page » vient ensuite, après interprétation du texte par le +programme LaTeX. Vous manipulez donc en même temps deux versions de +votre document : le texte tapé, qui contient des indications de mise +en page, et la version définitive (appelée le fichier DVI), qui +affiche la mise en page selon les indications fournies.
+ +Le gros avantage de cette façon de procéder est que vous dissociez le +fond de la forme : quand vous tapez, vous ne vous préoccupez pas de +savoir si vous avez laissé assez d'espace à tel endroit, ou si +l'équilibre de telle page est correct. C'est LaTeX qui se charge de ce +genre de questions.
+ + Les commandes de LaTeX commencent par un backslash
+(\
), ce qui permet au programme de les identifier. Beaucoup
+ne s'appliquent qu'à une seule partie du texte, délimitée par des
+accolades. Par exemple, pour afficher le mot LaTeX, on tape
+\LaTeX
; ou encore, pour afficher en gras le mot
+« important », on tape
\textbf{important}+ +
ce qui donne : important.
+ +Vous aurez souvent recours à des environnements, +c'est-à-dire à des commandes qui délimitent une portion de texte dans +laquelle d'autres règles de mise en page sont appliquées (par exemple +pour faire des listes, centrer du texte, etc). Les environnements +s'ouvrent avec
+ +\begin{nom-de-l'environnement}+ +
et se referment avec
+ +\end{nom-de-l'environnement}+ +
Babel est un package qui permet d'obtenir des documents en +plusieurs langues, en respectant les typographies nationales, en +affichant automatiquement les titres (comme « table des matières », +« index », etc) dans la langue choisie, etc. Il gère aussi la +ponctuation. Babel connaît une trentaine de langues. Par exemple, +pour un document en français, vous devrez faire figurer la ligne +suivante dans le source (utiliser le package « babel » avec l'option +« francais », sans cédille) :
+ +\usepackage[francais]{babel}+ +
Pour obtenir un document bilingue, vous indiquez +deux langues entre les crochets ; c'est la dernière langue indiquée +qui sera la langue dominante du document. Dans l'exemple qui suit, le +document est en français et on y trouvera des passages en grec :
+ +\usepackage[greek,francais]{babel}+ +
Pour alterner entre les langues, on utilise la commande :
+ +\selectlanguage{nom-de-la-langue}+ +
en spécifiant entre accolades la langue +demandée. Pour ne pas avoir à retaper en permanence cette longue +commande, il est préférable de se faire des macros (à écrire dans le préambule). Voici un +exemple de préambule, suivi d'un modèle d'utilisation :
+ ++\documentclass{article} + +\usepackage[greek,francais]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} + +% Première possibilité + +\newcommand\gr{\selectlanguage{greek}} +\newcommand\fr{\selectlanguage{francais}} + +% Deuxième possiblité + +\newcommand{\grec}[1]{\selectlanguage{greek}#1\selectlanguage{francais}} ++ +
D'autre part, certaines commandes sont prédéfinies pour passer dans
+l'autre langue; ainsi, il existe déjà \textgreek{...}
.
+Voici un exemple de texte grec tapé en LaTeX :
\textgreek{Peis'istratis m'en o>\~un >egkateg'hrase t\~h| +>arq\~h| ka`i >ap'ejane nos'hsas >ep`i Fil'onew >'rqontos, +af' o<\~ou m`en kat'esth t`o pr\~wton t'urannos >'eth tri'akonta +ka`i tr'ia Bi'wsas, <`a d' >en t\~h| >arq\~h| di'emeinen +<enos d'eonta e>'ikosi; >'efeuge g`ap t`a loip`a.}+ +
ce qui donne :
+ + + +Pour en savoir davantage, reportez-vous à notre +page sur l'écriture du grec ancien sous +LaTeX.
+ +Un document LateX comporte une série de lignes indispensables qui en +définissent le squelette. On indique aussi ici un certain nombre de +renseignements utiles pour faire un joli document. Vous pouvez récupérer ce fichier de base et +l'utiliser pour tous vos documents.
+ +\documentclass{article} | Précise le genre de
+document, exprimé par l'argument : article pour les textes
+ou rapports courts, report pour les rapports un peu plus
+longs, book pour les livres (ou les maîtrises...). |
\usepackage[francais]{babel} |
+
+Lignes ajoutées pour les documents en français, pour que soit prises +en compte les particularités de la typographie française; c'est aussi +grâce à ce package que la date est affichée automatiquement en français, +que le titre de la table des matières est « Table des matières » et non +« Contents », etc. Les deux lignes suivantes permettent d'avoir des +caractères correctement accentués en toutes circonstances. |
\begin{document} | Indique
+le moment où commence le texte proprement dit. Ce qui figure entre
+\documentclass{***} et \begin{document}
+s'appelle le préambule. |
\end{document} | Indique le +moment où finit le texte. Rien de ce qui suit cette commande ne sera pris +en compte par LaTeX. |
Vous pouvez taper indifféremment vos accents avec compose
et
+méta
. Il peut arriver (selon les configurations) que
+certains accents ne soient pas compris, pour différentes raisons. Si vous
+avez des problèmes, ou si vous voulez faire apparaître des accents
+étrangers, marquez les accents de la manière suivante dans votre
+fichier : \ accent lettre
.
Par exemple, \'a
donnera « á »; \'u
+donnera « ú ».
Le codage des accents est le même que celui de compose, à l'exception
+de la cédille (fa\c{c}ade
donne façade). Allez voir la page
+des tuteurs consacrée aux accents pour savoir comment on
+les tape et pour avoir un tableau des divers accents avec LaTeX.
Cela dit, nous vous encourageons à taper vos accents en Unicode +(c'est-à-dire, avec la touche Compose, ou naturellement sur un clavier +AZERTY) ; pour cela, ajoutez systématiquement dans l'entête de votre +document les deux lignes suivantes:
+ ++\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} ++ +
La première ligne demande que les caractères accentués soient +reconnus comme de l'utf8, la seconde, que soient utilisées +les fontes de LaTeX incluant les accents.
+ +utf8
par latin1
+dans la première ligne ci-dessus.
+Pour faire un titre, il faut préciser dans le préambule le titre, +l'auteur et la date :
+ ++\title{Le titre} +\author{L'auteur} +\date{La date} ++ +
On peut aussi demander que la date soit insérée automatiquement (date du +jour de la compilation) :
+ ++\date\today ++ +
Pour ne pas préciser un champ, il faut lui donner un argument vide
+(par exemple \author{}
ou \date{}
).
Ensuite, la commande maketitle
indique à LaTeX
+l'endroit où on veut faire figurer le titre (généralement en tout
+début de document, c'est-à-dire juste après
+\begin{document}
).
Vous pouvez demander à LaTeX de structure automatiquement les +documents avec les commandes suivantes :
+ ++\part{} +\section{} +\subsection{} +\subsubsection{} +\paragraph{} +\subparagraph{} ++ +
Les classes de document report
et book
+proposent en plus la commande \chapter{}
. L'intitulé de la
+section est indiqué entre les accolades.
Les titres de parties ainsi obtenus sont numérotés automatiquement. +Si donc vous bouleversez toute l'organisation de votre texte, la +numérotation se refera d'elle-même à la compilation suivante.
+ + À l'endroit où l'on veut voir figurer une table des matières, on
+écrit la commande \tableofcontents
. Attention, il faut
+compiler deux fois pour que LaTeX produise la table des matières
+correctement.
Il peut arriver qu'un titre soit trop long pour figurer dans la table +des matières sans retour à la ligne; dans ce cas, on spécifie entre +crochets le titre qui doit apparaître dans la table des matières, +cependant que le titre complet reste entre accolades :
+ +\section[Titre plus court]{Un titre vraiment trop long pour tenir +sur une seule ligne}+ +
Il vous arrivera aussi d'insérer des figures dans votre document. La commande
+\listoffigures
vous permet de générer une liste de toutes
+les figures. Là encore, il faudra deux compilations.
On peut faire une liste d'objets avec les environnements
+itemize
(liste simple) ou enumerate
(liste
+numérotée), de la façon suivante :
+Je veux acheter : +\begin{itemize} +\item des poires ; +\item des carottes ; +\item des choux. +\end{itemize} ++ +
ou alors :
+ ++Les vainqueurs sont : +\begin{enumerate} +\item Paul Lefort ; +\item Romain Legrand ; +\item Joël Lebel. +\end{enumerate} ++ +
Parlons ponctuation : dans une liste, les éléments sont terminés par +un point-virgule, sauf le dernier qui finit par un point (cf. les +exemples précédents). Cependant, si chaque élément est formé de plusieurs +phrases, on les termine toutes par un point.
+ +flushleft
: aligner le texte sur la marge de
+gauche ;flushright
: aligner le texte sur la marge de
+droite ;center
: centrer le texte ;quote
: faire une citation ;quotation
: faire une longue citation ;verse
: faire de la poésie, chaque vers étant terminé
+par \\
; Les environnements s'ouvrent avec \begin{***}
et se
+referment avec \end{***}
, en faisant figurer le nom de
+l'environnement entre les accolades. Certains sont bien sûr incompabibles
+entre eux (« aligner à gauche » et « aligner à droite » par exemple).
+Si vous utilisez plusieurs environnements emboîtés (listes imbriquées,
+citations centrées, etc), veillez à bien les refermer dans l'ordre de
+l'imbrication : dernier ouvert, premier refermé, comme des
+parenthèses.
\emph{emphatique} | EMPHasized | +emphatique. C'est celui qu'on utilise pour mettre en valeur +certains mots, les titres d'ouvrages en particulier. |
\textbf{gras} | Bold Fonts | +gras. |
\texttt{machine à +écrire} | Typewriter | machine à +écrire. |
\textsl{incliné} | SLanted | +incliné. Ce n'est pas de l'italique, mais en +HTML, on ne peut pas s'en rendre compte... |
\textsc{Petites majuscules} | Small +Caps | Petites majuscules, pour les noms d'auteurs ou les +sigles un peu longs. Le HTML ne sait pas afficher ça. |
Voici le même tableau dans le document LaTeX d'origine, qui montre +les différences entre les différents styles :
+ + + +Ces différents styles sont compatibles entre eux :
+ ++\emph{Dans cet exemple, il y a des mots \textbf{en gras} et des +titres de livres comme \emph{Le retour du concombre masqué} qui sont +mis en évidence}. ++ +
donnera au final le résultat suivant :
+ + + + Italique : ne confondez pas le style penché
+(\textsl
) et l'italique. D'autres documentations vous
+parleront également de \textit
, qui au sens propre veut dire
+« italique ». Mais nous ne vous conseillons pas de l'utiliser. En
+effet, \textit
est une commande graphique, qui demande de
+l'italique, quel que soit le contexte.
En revanche, \emph
est une commande logique, qui demande
+de mettre en valeur une portion du texte par rapport à son contexte.
+Ainsi, si vous êtes déjà dans un environnement en italique
+(theorem
par exemple), un mot mis en valeur avec
+\emph
sera droit, et inversement. Cela vous permet
+d'imbriquer des mises en valeur, sans risque de vous tromper.
Nous vous conseillons d'aller aussi jeter un coup d'oeil sur L'emploi des styles en +typographie.
+ +Ces commandes sont compatibles avec les précédentes.
+ ++ Attention au piège diabolique qui veut que les commandes de style soient + écrites à l'extérieur des accolades, alors que les commandes de + tailles des fontes s'écrivent à l'intérieur des accolades : +
+André \textsc{Malraux}, \emph{La condition humaine} +{\small Parlez moins fort}+
Pour taper des maths dans le texte, on place le contenu de la formule entre
+deux symboles « $
». Par exemple:
(...) on y verra la démonstration que $2 + 2 = 4$ (...)+ +
Remarque importante concernant la lisibilité: les
+ espaces ne comptent pas pour le contenu des mathématiques et
+ $2+2=4$
a rigoureusement le même effet que $2 + 2
+ = 4$
. L'avantage de la seconde écriture est qu'elle est
+ notablement plus lisible surtout quand les formules deviennent
+ complexes.
Remarques concernant la typographie: il est à noter que + les modes mathématiques peuvent être utiles en d'autres + circonstances que l'écriture de formule mathématiques.
+ +Les variables physiques devront être typographiées de
+ manière cohérente, on notera donc systématiquement
+ $T$
la température qui aura donc la même
+ typographie que dans les formules comme $PV = n RT$
. Si
+ l'on souhaite en physique avoir des variables droites (et non
+ italiques) on peut utiliser la commande $\mathrm{T}$
ou
+ un changement de \mathcode
.
Pour obtenir le signe « moins », il faut taper
+ $-1$
(observer la différence entre -
+ [tiret], $-$
[signe « moins »],
+ --
[intervalle comme dans 1939--1945
] et
+ ---
[incise]).
Enfin, on notera que $lettre$
est le produit de
+ quatre variables l, e (deux fois),
+ t (deux fois) et r. Pour des noms complexes
+ dans les formules on pourra utiliser $\mathit{mot}$
+ pour un mot en italique (observer la différence entre
+ $efficace$
et $\mathit{efficace}$
) ou
+ $\mathrm{mot}$
pour un mot en police droite ou encore
+ la commande $\text{...}$
du package
+ amsmath
. L'important est d'avoir une démarche cohérente
+ avant tout.
Une autre possibilité est d'utiliser \(contenu de la
+formule\)
ou encore l'environnement math
.
+Exemple:
+
(...) d'après certaines personnes \(2 + 2 = 5\) mais d'autres affirment + également que \begin{math}2 - 1 = 0\end{math}. La réalité est tout + autre (...)+ +
(La)TeX s'autorise à couper une formule dans le texte au niveau
+des opérations (comme +
, *
) et des relations
+(comme =
, <
). On peut interdire la coupure
+à des endroits précis de la formule grâce aux accolades
+{
et }
. Tout ce qui dans une formule dans
+le texte (cela ne s'applique pas au texte normal, ni aux formules
+centrées) et entre accolades ne sera pas coupé. Ainsi dans
(...) texte $f(x, y) = {x + y}$ texte (...)+ +
la césure ne peut intervenir qu'après le =
+(tandis que sans les accolades, la césure aurait tout aussi bien pu
+avoir lieu après le +
). Cette méthode a le mérite de la
+simplicité, mais elle présente également un inconvénient qu'on pourra
+négliger à moins d'être perfectionniste : les espaces entre les
+accolades ne sont pas capables de s'étirer.
Si l'on souhaite empêcher la césure dans toute formule écrite
+dans un paragraphe (globalement dans tout le document), on peut mettre dans
+son préambule (avant le \begin{document}
):
+\relpenalty=10000 +\binoppenalty=10000 ++ +
En effet, LaTeX ne s'autorise à couper une formule
+qu'au niveau des relations (=
, <
, etc.) ou
+des opérations binaires (+
, -
, etc.). Si une
+telle coupure intervient, elle s'accompagne d'une pénalité. Si cette
+pénalité est trop forte, le point de coupure sera évité. Les valeurs
+présentées juste au-dessus sont des pénalités infinies pour
+(La)TeX.
Cependant cette méthode est déconseillée, car elle va gêner
+LaTeX dans son mécanisme de formation des paragraphes et l'on risque de
+nombreux warnings: Underfull hbox
et Overfull
+hbox
. Il convient de se demander si une formule donnée n'aurait
+pas plutôt sa place dans un display (formule centrée sur une
+ligne à part) qui est le sujet dont nous allons traiter un peu plus bas.
Si, au contraire, on souhaite que LaTeX puisse couper à un endroit +on rajoutera un \linebreak (qui suggère un point de coupure mais ne le +force pas obligatoirement). Ce point de coupure n'a pas à être accompagné +de relation ou d'opérateur binaires.
+ +(...) texte ${coupera pas + coupera pas + coupera pas + coupera pas + + coupera pas + coupera}\linebreak[1]{pas + coupera pas}$ (...) ++ +
L'argument optionnel de \linebreak
+spécifie l'insistance
+de la requête (4, la valeur par défaut, force la coupure) ; ici, la
+valeur 1 signifie « si tu peux couper ici c'est plutôt sympa ».
Une formule importante ou assez grande peut être mise, centrée,
+sur une ligne à part. Pour ce faire, elle doit être tapée
+soit entre \[
et \]
, soit entre
+\begin{displaymath}
+et \end{displaymath}
. Exemple:
(...) On a le développement suivant: +\[ \forall f\in C^\infty\left(\left[-\frac{T}{2};\frac{T}{2}\right]\right), + \forall t\in \left[-\frac{T}{2};\frac{T}{2}\right], + f(\tau) = \sum_{k = -\infty}^{+\infty} e^{2i\pi\frac{k}{T}t} \times + \underbrace{\frac{1}{T} + \int_{-\frac{T}{2}}^{\frac{T}{2}} f(t) e^{-2i\pi\frac{k}{T}t} dt + }_{a_k = \tilde{f}\left(\nu = \frac{k}{T}\right)} +\] +et puisque (...) ++ +
ce qui donne le résultat suivant
+ +Pour aérer on peut commenter une ligne avant et une ligne avant la +formule (et profiter du fait les espaces sont ignorées en mode +mathématique pour réarranger la formule)... ainsi :
+ +(...) +On a le développement suivant: +%% +\[ \forall f \in C^\infty + \left( \left[ -\frac{T}{2} ; \frac{T}{2} \right] \right), + %% + \forall t \in \left[ -\frac{T}{2} ; \frac{T}{2} \right], + %% + f(\tau) = \sum_{k = -\infty}^{+\infty} + e^{2i\pi\frac{k}{T}t} \times + \underbrace{ + \frac{1}{T} + \int_{-\frac{T}{2}}^{\frac{T}{2} + f(t) e^{-2i\pi\frac{k}{T}t} dt + }_{a_k = \tilde{f}\left(\nu = \frac{k}{T}\right)} +\] +%% +et puisque +(...) ++ +
est plus lisible, non? Pensez que la lisibilité +permettra de corriger +plus facilement des erreurs et rendra le document source moins confus.
+ +N'omettez pas les commentaires, ne mettez pas de ligne blanche
+avant et après les commandes \[
et \]
(sauf si
+vous voulez réellement commencer un nouveau paragraphe avec une formule
+displayée — ce qui n'est pas conseillé par les typographes), les lignes
+blanches ne sont pas anodines en LaTeX.
+N'utilisez pas $$...$$
qui est une construction de plain TeX
+qui génère un espacement incorrect du document et n'honore pas les options
+de classe dont nous allons parler plus loin. Cette forme est à
+bannir.
+
On peut numéroter les formules. Cela se fait tout naturellement avec
+l'environnement equation
remplaçant \[...\]
(ou
+\begin{displaymath}...\end{displaymath}
). Cet environnement
+offre la possiblité d'utiliser les foncionnalités de \label
,
+\ref
et \pageref
.
+Einstein a établi la célèbre formule~\ref{eq-Einstein}. +%% +\begin{equation} + \label{eq-Einstein} + E = mc^2 +\end{equation} ++ +
donne
+ +On peut passer aux classes standard article, book, report les options
+suivantes, qui modifient l'aspect des équations numérotées (c'est-à-dire
+entrées avec l'environnement equation
) et les formules
+displayée simples :
leqno
affecte seulement l'environnement
+equation
en mettant le numéro d'équation à gauche ;fleqn
affecte l'environnement
+equation
et les formules displayées simples, poussant la
+formule à gauche ;optionleqno |
+
| |
+optionfleqn |
+
| |
+optionsfleqn etleqno |
+
|
Le paramètre qui règle l'indentation de l'option fleqn
est
+la longueur \mathindent
qu'on peut modifier à l'aide de
+\setlength
.
La formule est trop grande pour entrer dans un
+displaymath
et les commandes \linebreak
,
+\\
ou \par
ne fonctionnent pas. Utilisez les
+environnements du package amsmath
(ou trouver la documentation du package
+amsmath
?), multline
par exemple.
Nota Bene : nous omettrons de préciser que les codes précisés +ici sont à taper en mode math.
+ +a^{bcd}
a_{bcd}
=
, \neq
, <
,
+ >
, \leq
et \geq
+
, -
, *
+ et /
/
, selon
+ le contexte)()
, []
,
+ \{\}
, \langle\rangle
(un peu comme dans
+ « <...> »), |...|
(valeur absolue) et
+ \|...\|
(norme)\infty
pour l'infini'
pour prime, ''
pour seconde,
+ '''
pour tierce
+
|
+
+
|
+
La différence entre \ldots
et \cdots
est que
+ces derniers sont centrés verticalement alors que \ldots
sont
+au niveau de la base de la ligne (ce qui ne se voit pas dans le tableau).
+La typographie veut qu'on utilise $a, \ldots, b$
et $a +
+\cdots + b$
, donc selon le type de symboles dont la répétition est
+représentée par les points.
Les accents utilisés usuellement dans le texte (\'
, etc.),
+ne fonctionnent pas en mode mathématique. On peut les obtenir avec des
+commandes spécifiques.
+
|
+
+
|
+
+
|
+
Les « grands opérateurs » sont listés dans la +table suivante.
+ +
+
|
+
On notera la différence de rendu de ces opérateurs selon qu'ils sont en
+mode math (entre $ ... $
) ou en mode displaymath (entre
+\[ ... \]
). Ainsi pour l'opérateur \sum
:
|
Cela permet de garder un interligne fixe.
+ +
+
|
La négation d'une relation peut être obtenue en la précédant de
+\not
. Par exemple la relation «n'appartient pas à» peut
+s'écrire \not\in
.
Les délimiteurs sont les parenthèses au sens large (accolades, barres de +valeur absolue, etc.).
+ +
|
Les tailles peuvent être modifiées soit à la main:
+ +
|
soit automatiquement à l'aide \left
et
+\right
. On doit avoir systématiquement un
+\left
pour un \right
dans la même
+formule. La partie de la formule comprise entre \left
+et \right
définit par sa hauteur la taille des délimiteurs
+qui sont précisés ainsi:
+\left<delim1> <formule> \right<delim2> ++ +
delim1 et delim2 n'ont aucune raison d'être
+identiques. Un «.
» est un délimiteur dans un contexte de
+\left
ou \right
et signifie «pas de délimiteur»
+mais permet de focaliser l'action de \left
et
+\right
sur une partie de la formule.
+
+\[ + |x| = \left\{ + \begin{array}{ll} + +x & \qquad \mathrm{si}\quad x\geq 0 \\ + -x & \qquad \mathrm{sinon} \\ + \end{array} + \right. +\] ++ +
donne le résultat suivant
+ +Nota Bene: l'environnement array
est l'équivalent
+en mode mathématique de l'environnement tabular
. Pour son
+utilisation, on se reportera donc à la page concernant
+tabular
.
Pour taper la fonction sinus, on ne peut pas utiliser
+$sin(x)$
dont le résultat est le produit de s,
+i et n(x). En outre, traditionnellement
+les fonctions sont en police droite. La première idée est d'utiliser
+$\mathrm{sin}(x)$
qui a la tête voulue. Cependant
+\mathrm{sin}
ne se comporte pas comme une fonction. Comparer:
+
|
Les fonctions prédéfinies sont: \sin
, \cos
,
+\tan
, \arcsin
, \arccos
,
+\arctan
, \sinh
, \cosh
,
+\tanh
, \cot
, \log
, \ln
,
+\lim
. Pour en définir d'autres utiliser les commandes
+\DeclareMathOperator
et \DeclareMathOperator*
du
+package amsmath
.
+
Il est parfois nécessaire d'ajuster l'espacement d'une formule à la +main ((La)TeX ne peut pas tout faire tout seul). Par exemple, dans une +intégrale, pour séparer la fonction intégrée de «dx». Pour +cela, on dispose de:
+ +\,
, espace fine\;
, espace moyenne\:
, espace large\
, espace normale (intermot)\quad
, cadratin\qquad
, double cadratin\!
, espace fine négative (exemple pour les intégrales
+ multiples il peut être nécessaire de bricoler un peu,
+ \int\!\!\int\!\!\int
)Recherche de symboles. Une liste de (presque) tous les symboles
+accessibles avec LaTeX est maintenue à jour sur le CTAN, les fichiers symbols-*.*
+disponibles à l'adresse http://www.ctan.org/tex-archive/info/symbols/comprehensive/.
Pour des maths sophistiquées, il est quasiment indispensable de charger
+le package amsmath
qui (re)définit de nombreux environnements
+très utiles. Cette page web ne peut prétendre couvrir toutes les
+ressources disponibles concernant les mathématiques avec LaTeX,
+heureusement la documentation de amsmath
est très complète et
+facile d'accès, nous vous renvoyons vers cette documentation: le fichier
+amsldoc.pdf
que vous pourrez trouver soit sur votre
+distribution LaTeX (essayer la commande texdoc amsldoc
) soit
+sur internet (google avec le mot-clef «amsldoc.pdf» permet de trouver en
+une dizaine de secondes).
+Définir son propre package permet :
+ ++\usepackage[francais]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} +\usepackage{amsmath} +\usepackage{amssymb} ++
Nous allons créer un fichier « mon_package.sty
» (ou
+tout autre nom qui ne crée de doublon) qui comportera les instructions
+qui permettront :
+%% Informations générales +\NeedsTeXFormat{LaTeX2e}[1999/01/01] +\ProvidesPackage{mon_package}[2003/01/01] + +%% Chargement des extensions +\RequirePackage{graphicx} + +%% Déclaration des options +\DeclareOption{option}{...} +\DeclareOption*{...} +\ProcessOptions + +%% Définition des commandes +\newcommand{\blabla}{Super commande} + +%% Fin du package +\endinput ++ +
\NeedsTeXFormat{<format>}[<version>]
:
+ informe TeX du format (LaTeX2e, donc refus de LaTeX2.09, plain TeX,
+ eplain TeX, AMS-TeX, etc.) nécessaire pour l'utilisation du
+ package, on peut spécifier un argument optionnel (entre crochets)
+ permettant d'utiliser des versions récentes dudit format ;\ProvidesPackage{<package>}[<version>]
:
+ le package s'identifie (là encore on peut donner en argument
+ optionnel une date de version) ;\RequirePackage[<options>]{<package>}
:
+ équivalent de \usepackage
pour l'écriture d'un package
+ ou d'une classe, on peut passer des options au package comme
+ habituellement ;\DeclareOption{<option>}{<action>}
:
+ déclare une option qui peut être passée lors de l'appel du
+ package, lorsque l'option <option>
est passée
+ <action>
est exécutée ;\DeclareOption*{<action>}
:
+ comportement adopté par le package quand il est confronté à une
+ option passée qui n'est pas déclarée ;\ProcessOptions
: exécute le code des options
+ passées, si cette commande n'existe pas dans le package les options
+ seront sans effet (bien prendre conscience que les declarations
+ n'exécutent pas de code!) ;\newcommand{\commande}{<code>}
:
+ définition d'une nouvelle commande (voir la page sur les
+ macros) ;\endinput
: fin du package.Supposons qu'il m'arrive d'écrire des documents sans algorithmes et
+d'autres avec. Lorsque j'en ai besoin je charge les packages
+algorithm
et algorithmic
qui permettent de
+mettre en forme des algorithmes, d'en faire une « liste des
+algorithmes » et de les rendre flottants (voir la page...). Je peux
+encore utiliser mon propre package pour gérer ces cas, il suffit
+d'introduire une option « algo » quand on a besoin des fonctionnalités
+idoines. Voilà comment :
+%% (...) \NeedsTeXFormat et \ProvidesPackage +\newif\if@algo \@algofalse +\DeclareOption{algo}{\@algotrue} +\DeclareOption*{}%% Ne rien faire quand une option est inconnue +\ProcessOptions + +\if@algo + \RequirePackage{algorithm} + \RequirePackage{algorithmic} + \RequirePackage{mes-commandes-algo} + \newcommand{\algorithme}{Blabla} +\fi +%% (...) \newcommand's et \endinput ++ +
+La commande \newif\ifquelquechose
crée trois
+commandes :
\ifquelquechose
à utiliser ainsi (la
+partie « else » est facultative)
++\ifquelquechose + Code si oui +\else + Code si non +\fi +
\quelquechosetrue
+ \ifquelquechose
devient
+ équivalent à if true ;\quelquechosefalse
+ \ifquelquechose
devient
+ équivalent à if false.Dans notre exemple on crée une instruction conditionnelle
+\if@algo
qui est équivalente à if false (à cause
+de \@algofalse
). Cependant, si l'option « algo » est
+passée au package, on exécute \@algotrue
qui a pour effet
+de rendre \if@algo
équivalent à if true. Les
+packages relatifs à l'algo (et les commandes définies dans le bloc)
+seront chargés si et seulement si l'option « algo » aura été passée dans
+le fichier .tex
:
\usepackage
++\documentclass[a4paper]{article} +\usepackage[algo]{mon_package} +\begin{document} + . + . + . +\end{document} +
\documentclass
++\documentclass[a4paper, algo]{article} +\usepackage{mon_package} +\begin{document} + . + . + . +\end{document} +
Remarque : notons que dans les packages « @ » est une lettre
+(contrairement aux document .tex
où « @ » est un symbole)
+et que donc on peut écrire des noms de commandes avec « @ ». D'où les
+noms \makeatletter
et \makeatother
utilisées
+dans des cas un peu exceptionnels. Dans un fichier .tex
,
+« \if@algo
» aurait été interprétée comme la commande
+\if
suivie de « @algo ».
+\NeedsTeXFormat{LaTeX2e}[1999/01/01] +\ProvidesPackage{mon_package}[2003/01/01] + +\newif\if@algo \@algofalse +\newif\if@listings \@listingsfalse + +\DeclareOption{listings}{\@listingstrue} +\DeclareOption{algo}{\@algotrue} +\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{babel}} +\ProcessOptions + +\RequirePackage{babel} + +\if@algo + \RequirePackage{algorithm} + \RequirePackage{algorithmic} + \RequirePackage{mes-commandes-algo} +\fi + +\if@listings + \RequirePackage{listings} + \RequirePackage{verbatim} + \RequirePackage{moreverb} + \RequirePackage{mes-commandes-listings} +\fi + +\endinput ++ +
On déclare comme précédemment deux options « normales » :
+algo
et listings
mais quand on est face à
+une option inconnue on la passe à babel, ainsi :
+\documentclass[a4paper]{article} +\usepackage[algo, listings, english, greek, francais]{mon_package} +\begin{document} + . + . + . +\end{document} ++ +
+sera équivalent à charger les modules d'algorithmiques, les modules de
+d'écriture de programmes, et babel avec les options
+english
, greek
et francais
+(dans cet ordre). La commande \PassOptionsToPackage{<options>}{<package>}
ne charge pas le package
+<package>
, elle rajoute les
+<options>
à la liste d'options qui seront passées
+au package <package>
lors de l'appel
+\RequirePackage{<package>}
.
+
+Remarque : les options déclarées avec
+\DeclareOption{...}{...}
peuvent être passées comme
+options globales du document comme dans :
+
+\documentclass[a4paper, algo, listings]{article} +\usepackage[english, greek, francais]{mon_package} +\begin{document} + . + . + . +\end{document} ++ +
+En revanche les langages doivent être passés au package lui-même +(notamment babel n'a pas tenté de trouver un langage nommé « a4paper » +ce qui aurait abouti à une erreur). +
+ +D'une part on ne peut pas utiliser ce mécanisme pour plusieurs
+packages auquel on passerait les options non déclarées avec
+\DeclareOption{...}{...}
et d'autre part on ne peut pas
+s'abstenir de passer au moins une option de langage au package.
keyval
de David Carliste (ou
+ peut-être prochainement une page tuteurs à ce sujet) ;\@ifundefined{commande}{<then>}{<else>}
: si
+ \commande
(avec le backslash contrairement à l'argument
+ de \@ifundefined
) n'est pas définie alors exécute
+ <then>
sinon exécute
+ <else>
(LaTeX interne) ;\PackageWarning{<package>}{<texte>}
: produit un warning lors de la
+ compilation (par opposition à \PackageError{...}{...}
) ;\CurrentOption
: l'option en cours de
+ traitement ;+\NeedsTeXFormat{LaTeX2e}[1999/01/01] +\ProvidesPackage{mon_package}[2003/01/01] +\RequirePackage{keyval} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Pour gérer les deux types d'options : % +% 1. les options normales (\DeclareOption{...}{...}) % +% 2. les options type key-val option=value (\define@key{...}{...}{...}) % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\@ifundefined{my@unusedlist}{% + \let\my@unusedlist\@empty}{} +\@ifundefined{my@extractkey}{% + \def\my@extractkey#1=#2\my@extractkey{#1}}{} +\newcommand{\ProcessUnusedOptions}[1]{% + \let\my@tempa\@empty + \let\my@tempb\@empty + \@for\CurrentOption:=\my@unusedlist\do{% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\my@key + \expandafter\expandafter\expandafter{% + \expandafter\my@extractkey\CurrentOption=\my@extractkey}% + \@ifundefined{KV@#1@\my@key}{% + \edef\my@tempa{\my@tempa,\CurrentOption,}}{% + \edef\my@tempb{\my@tempb,\CurrentOption,}}}% + \@for\CurrentOption:=\my@tempa\do{% + \ifx\CurrentOption\@empty\else + \PackageWarning{mypack}{`\CurrentOption' not defined.}\fi}% + \edef\my@tempb{% + \noexpand\setkeys{#1}{\my@tempb}}% + \my@tempb + \AtEndOfPackage{\let\@unprocessedoptions\relax}} + +\DeclareOption*{% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\my@unusedlist + \expandafter\expandafter\expandafter{% + \expandafter\my@unusedlist\expandafter,% + \CurrentOption}} +%%%%%%%%%%%%%%% +% Fin du bloc % +%%%%%%%%%%%%%%% + +%% Options «normales» +\DeclareOption{foo}{<action foo>} +\DeclareOption{bar}{<action bar>} + +%% Options passées sous forme key=val +\define@key{mypack}{<key1>}{<action 1> dépendant de #1} +\define@key{mypack}{<key2>}[<default>]{<action 2> dépendant de #1} + +\ProcessOptions +\ProcessUnusedOptions{mypack} + +\endinput ++ +
Dans l'exemple suivant
+ ++\documentclass[foo]{article} +\usepackage[foo, key1=value1, key2=value2]{mypack} +\begin{document} + . + . + . +\end{document} ++ +
l'option foo
va agir comme dans les exemples simples,
+key1=value1
va exécuter le code <action 1>
+en utilisant value1
en lieu et place de #1
. Idem
+pour key2=value2
sauf que on peut omettre la partie
+« =value2
» auquel cas <action 2>
est exécuté
+en utilisant <default>
à la place de #1
.
+Par exemple si mon_package.sty
contient :
+%% (...) +\newcounter{nombre} +\define@key{mypack}{number}[14]{% + \setcounter{nombre}{#1}} +%% (...) ++ +
on pourra l'appeler ainsi
+ ++\documentclass[foo]{article} +\usepackage[number=10]{mypack} +\begin{document} + . +\thenombre\ affiche 10. + . + . +\end{document} ++ +
ou encore comme cela
+ ++\documentclass[foo]{article} +\usepackage[number]{mypack} +\begin{document} + . +\thenombre\ affiche 14. + . + . +\end{document} ++ +
ou bien sûr sans option du tout (auquel cas le code
+\setcounter
ne sera pas exécuté et donc le compteur
+nombre
vaudra zéro).
Si mon_package
contient :
+\newcommand{\pack@languages}{francais} +\define@key{mypack}{language}{% + \renewcommand{\pack@languages}{#1}} +\RequirePackage[\pack@languages]{babel} ++ +
alors on peut l'appeler ainsi
+ ++\documentclass[a4paper]{article} +\usepackage[language={english, francais}]{mon_package} +\newcommand{\option}{\texttt} +\begin{document} + . +\paragraph{Remarque} +Noter les accolades pour que l'option \option{francais} ne soit pas +passée comme une option à part. + . + . +\end{document} ++ +
ou encore ainsi :
+ ++\documentclass[a4paper]{article} +\usepackage{mon_package} +\newcommand{\option}{\texttt} +\begin{document} + . +Babel chargé avec l'option \option{francais}. + . + . +\end{document} ++ +
+Là encore les options de langages ne pourront pas être spécifiées
+globalement avec la commande \documentclass
. (La raison en est
+que les options globales qui ne correspondent pas à des options déclarées
+avec \DeclareOption
ne sont pas transmises à
+\DeclareOption*
.)
+
Le package mon_package
doit pouvoir être trouvé par LaTeX,
+pour cela on peut :
mon_package
dans le même répertoire que
+les fichier .tex
qui l'utilisent ;~/texmf/tex/latex/perso/
et créer la variable d'environnement
+export TEXINPUTS=$HOME/texmf//:
(certaines distributions
+permettent de créer un fichier ls-R grâce à la commande
+texhash
) ;mktexlsr
.Pour une documentation concernant l'écriture de classe et de
+packages : clsguide
(à noter également les documentations
+fntguide
, usrguide
) pour une documentation
+générale sur LaTeX : source2e
ou plus soft The not so
+short introduction to LaTeX (disponible en français !).
Sur internet : CTAN, les
+ newsgroup fr.comp.text.tex
et comp.text.tex
auxquels on peut accéder via Google. Par
+exemple comment réaliser le symbole « 1 » avec une double
+barre pour désigner une fonction indicatrice ? La réponse s'y trouve
+en cherchant « 1 barre
+ indicatrice
». C'est une source d'informations inépuisable.
Un autre site utile est le site + StackExchange dédié à TeX et LaTeX.
+ + + + + diff --git a/src/logiciels/latex/panton.jpg b/src/logiciels/latex/panton.jpg new file mode 100644 index 0000000..9be2ec0 Binary files /dev/null and b/src/logiciels/latex/panton.jpg differ diff --git a/src/logiciels/latex/polices.tml b/src/logiciels/latex/polices.tml new file mode 100644 index 0000000..29d36dd --- /dev/null +++ b/src/logiciels/latex/polices.tml @@ -0,0 +1,268 @@ + + + + ++LaTeX est un système de mise en page complet, et à ce titre, offre la +possibilité de changer de police de caractère. Néanmoins, les +changements de polices, dans l'esprit de LaTeX, doivent êtrre +incorporés dans des packages définissant un style de +présentation. C'est un peu pour ça que le changement de police est un +peu complexe. Il est néanmoins abordable, comme nous allons le voir. +
+ ++Pour caractériser une police, LaTeX définit quatre atributs: +
+ ++Normalement, LaTeX est intelligent, et est capable de changer un de +ces attributs en conservant les autres constants. Il faut cependant +faire attention: si une police donnée (combinaison de tous les +attributs) n'est pas disponible, il risque de faire n'importe-quoi, en +particulier revenir à la police par défaut. Notons cependant que ceci +est signalé par un message assez claire lors de la compilation: +
+ ++LaTeX Font Warning: Font shape `OT1/cmr/bx/sc' undefined +(Font) using `OT1/cmr/bx/n' instead on input line 10. ++ +
+Notons au passage que LaTeX utilise la notation +codage/famille/collection/forme +pour décrire une police dans ses messages. +
+ ++Les commandes pour changer de police sont très simples: +
+ +\fontencoding{codage} |
+change le codage | +
\fontfamily{famille} |
+change la famille | +
\fontseries{collection} |
+change la collection | +
\fontshape{forme} |
+change la forme | +
\selectfont |
+active la police définie | +
\usefont{code}{fam.}{col.}{forme} |
+change tout d'un coup et active | +
+Les quatre premières commandes, \fontencoding
,
+\fontfamily
, \fontseries
et
+\fontshape
, préparent un changement de police, qui est
+entériné par \selectfont
. L'utilisation normale est de
+mettre une ou plusieurs des premières, suivie(s) de
+\selectfont
. La commande \usefont
est un
+raccourci pour définir les quatre d'un coup et activer le changement.
+
+La police est changé pour tout le reste du texte, jusqu'à la fin du
+groupe courrant (rappelons qu'un groupe est délimité par un couple
+d'accolades ou une structure
+\begin
...\end
. En ce sens, ces fonctions
+fonctionnent de la même manière que les commandes obsolètes
+\it
, \bf
, etc...
+
+Voici la table de toutes les polices +présentes dans l'installation ici. Différentes distributions de LaTeX +peuvent en avoir quelques-unes en plus ou en moins parmi les plus +exotiques. Ce ne sont pas toutes des polices convenables pour écriré: +certaines contiennent des symboles, ou d'autres un jeu restreint de +caractères. +
+ +
+Toutes les colonnes (sauf la première) indiquent les noms techniques à
+fournir aux différentes commandes LaTeX. Pour le codage, dans le cas
+d'une police destinée à écrire du texte, il vaut mieux choisir le
+codage T1
. Les collections et les formes les plus
+courrantes ont des dénominations standards:
+
+Par défaut, LaTeX utilise les familles Computer Modern,
+celles dont le nom commence par cm
. Les différentes
+versions qui en existent correspondent aux commandes LaTeX qui
+changent radicalement l'apparance du texte: \textsf
et
+\texttt
.
+
+Voici un bout de code LaTeX qui vous permettra d'explorer toutes les polices: +
+ ++\documentclass{article} +% La commande montre prend comme arguments les paramètres d'une police, +% et en affiche un exemple. +\newcommand\montrer[4]{Police #1/#2/#3/#4: + {\usefont{#1}{#2}{#3}{#4}ABCDEF abcdef 123456 ,;:!}\par} +\begin{document} + +% Vous pouvez changer les valeurs, pour voir d'autres polices +\montrer{T1}{cmr}{m}{n} +\montrer{T1}{phv}{m}{sc} +\montrer{T1}{ptm}{b}{it} +\montrer{U}{pzd}{m}{n} +\montrer{U}{yinit}{m}{n} + +\end{document} ++ +
+Il ne faut pas oublier que la philosophie de LaTeX est de séparer la +présentation et le sens. Changer de police peut certes apporter +beaucoup, mais ça risque de poser également des problèmes, au moins +dans le cas d'un document long. Pour l'utiliser efficacement et +facilement, le mieux est de créer une commande ou un environnement. +
+ ++\newcommand\nom[1]{{\fontfamily{phv}\selectfont #1}} ++ +
+Ceci permet de définir la commande \nom
change
+la police en Helvetica pour son argument. On peut bien sûr
+remplacer \fontfamily{phv}
par autre chose. Notez les
+doubles accolades: les premières délimitent la définition, tandis que
+les secondes empêchent le changement de police de s'échapper.
+
+\newenvironment{nom} + {\fontfamily{phv}\selectfont}{} ++ +
+Ceci définit l'environnement nom
(donc délimité
+par \begin{nom}
et
+\end{nom}
), à l'intérieur duquel le texte est en
+Helvetica.
+
+On peut (et même on devrait) incorporer les changements de police à
+des commandes plus spécifiques, ayant trait au sens du texte, comme
+une commande \titre
:
+
+% Les titres sont en Times penché: \titre{The \TeX book} +\newcommand\titre[1]{{\fontfamily{ptm}\fontshape{sl}\selectfont #1}} ++ +
+Enfin, si le but est de changer la police pour tout le document, le +mieux est de redéfinir les polices par défaut de LaTeX. Si on regarde +dans les fichiers source de LaTeX, on trouve une série de lignes qui +contiennent ceci: +
+ ++\newcommand\rmdefault{cmr} % famille à utiliser pour du Roman +\newcommand\sfdefault{cmss} % famille à utiliser pour du Sans Serif +\newcommand\ttdefault{cmtt} % famille à utiliser pour du «machine à écrire» +\newcommand\bfdefault{bx} % collection à utiliser pour du gras +\newcommand\mddefault{m} % collection à utiliser pour du moyen +\newcommand\itdefault{it} % forme à utiliser pour de l'italique +\newcommand\sldefault{sl} % forme à utiliser pour du penché +\newcommand\scdefault{sc} % forme à utiliser pour de petites majuscules +\newcommand\updefault{n} % forme à utiliser pour du droit +\newcommand\encodingdefault{OT1} % codage normal +\newcommand\familydefault{\rmdefault} % famille normale: Roman +\newcommand\seriesdefault{\mddefault} % collection normale: moyen +\newcommand\shapedefault{\updefault} % forme normale: droit ++ +
+Les commandes comme \textit
, \texttt
ou
+\textbf
sont définies en termes de ces
+commandes-ci. Ainsi, il est possible de les modifier proprement:
+\renewcommand\sfdefault{phv}
définit que la police
+Helvetica est à utiliser comme police pour le texte Sans Serif
+(\textsf
). Bien sûr, toutes les variantes sont
+possibles. Attention toutefois de bien faire attention que la police
+choisie existe dans le codage par défaut et les différentes variantes.
+
Nom usuel | Famille | Codages | Collections/formes | +
---|---|---|---|
Bulmer | +bbm | U |
+b/n bx/n bx/sl m/n m/sl |
+
Bulmer | +bbmss | U |
+bx/n m/it m/n |
+
Bulmer | +bbmtt | U |
+m/n |
+
Charter | +bch | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl |
+
Computer Modern | +cmdh | LWN OT1 |
+m/n |
+
Computer Modern | +cmex | OMX |
+m/n |
+
Computer Modern | +cmfib | LWN OT1 |
+m/n |
+
Computer Modern | +cmfr | LWN OT1 |
+m/it m/n |
+
Computer Modern | +cmm | OML |
+b/it bx/it m/it |
+
Computer Modern | +cmr | LGR LWN OML OMS OT1 U |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl bx/ui m/it m/n m/sc m/sl m/ui |
+
Computer Modern | +cmro | LGR |
+b/n bx/n m/it m/n m/sc m/sl |
+
Computer Modern | +cmss | LGR LWN OT1 T1 U |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl bx/ui m/it m/n m/sc m/sl m/ui sbc/n |
+
Computer Modern | +cmssq | OT1 T1 |
+m/it m/n m/sl |
+
Computer Modern | +cmsy | OMS |
+b/n m/n |
+
Computer Modern | +cmtt | LGR LWN OT1 T1 U |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl bx/ui m/it m/n m/sc m/sl m/ui |
+
Computer Modern | +cmvtt | OT1 |
+m/it m/n |
+
Euler | +euex | U |
+m/n |
+
Euler | +euf | U |
+b/n m/n |
+
Euler | +eur | U |
+b/n m/n |
+
Euler | +eus | U |
+b/n m/n |
+
LaTeX Symbol | +lasy | U |
+b/n m/n |
+
Computer Modern | +lcmex | OMX |
+m/In m/n |
+
Computer Modern | +lcmm | OML |
+m/Iit m/it |
+
Computer Modern | +lcmss | OT1 T1 |
+bx/Iit bx/In bx/Isl bx/it bx/n bx/sl bx/ui m/Iit m/In m/Isl m/it m/n m/sl m/ui |
+
Computer Modern | +lcmsy | OMS |
+m/In m/n |
+
Computer Modern | +lcmtt | OT1 T1 |
+bx/ui m/In m/it m/n m/ui |
+
? | +llasy | U |
+m/In m/n |
+
? | +logo | U |
+b/n bx/n m/it m/n m/sl sbc/n |
+
Scala | +msa | U |
+m/n |
+
Sabon | +msb | U |
+m/n |
+
Garamond | +pad | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl sb/it sb/n sb/sc sb/sl |
+
Avant Garde | +pag | OML OMS OT1 T1 TS1 |
+b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl db/it db/n db/sc db/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui |
+
Anna | +panr | OT1 |
+b/n m/it m/n m/sl |
+
Bembo | +pbb | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl bx/ui l/it l/n l/sc l/sl l/ui m/it m/n m/sc m/sl m/ui |
+
Bookman | +pbk | OML OMS OT1 T1 TS1 |
+b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl db/it db/n db/sc db/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui |
+
Baskerville | +pbv | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl |
+
Courier | +pcr | OML OMS OT1 T1 TS1 |
+b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui |
+
Garamond | +pgm | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl |
+
Gill Sans | +pgs | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl eb/it eb/n eb/sc eb/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl ub/it ub/n ub/sc ub/sl |
+
Helvetica | +phv | 8r OML OMS OT1 T1 TS1 |
+b/it b/n b/sc b/sl b/ui bc/it bc/n bc/sc bc/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl lsc/it lsc/n lsc/sl m/it m/n m/sc m/sl m/ui mc/it mc/n mc/sc mc/sl |
+
New Baskerville | +pnb | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl |
+
New Century Schoolbook | +pnc | OML OMS OT1 T1 TS1 |
+b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui |
+
Optima | +pop | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl |
+
Palatino | +ppl | OML OMS OT1 T1 TS1 |
+b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui |
+
Parisian | +pss | OT1 |
+b/n m/it m/n m/sl |
+
Symbol | +psy | U |
+m/n |
+
Symbol | +psycm | OMX |
+l/n m/n |
+
Times | +ptm | OML OMS OT1 T1 TS1 |
+b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui |
+
Times | +ptmcm | OML OT1 |
+l/it l/n l/sl m/it m/n m/sl |
+
Univers | +pun | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl |
+
Centaur | +pur | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl |
+
Utopia | +put | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl |
+
Zapf Chancery | +pzc | OML OMS OT1 T1 TS1 |
+b/it b/n b/sc b/sl b/ui l/it l/sl m/it m/n m/sc m/sl m/ui |
+
Zapf Chancery | +pzccm | OMS |
+l/n m/n |
+
Zapf Dingbats | +pzd | U |
+m/n |
+
Antiqua | +uaq | OML OMS |
+b/it b/n b/sc b/sl m/it m/n m/sc m/sl |
+
Grotesque | +ugq | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl m/it m/n m/sc m/sl |
+
Nimbus | +unm | 8r OML OMS OT1 T1 |
+b/it b/n b/sc b/sl l/it l/n l/sc l/sl l/ui m/it m/n m/sc m/sl m/ui |
+
Nimbus | +unms | OML OMS |
+b/it b/n b/sc b/sl m/it m/n m/sc m/sl |
+
Fraktur | +yfrak | U |
+m/n |
+
Gothic Fraktur | +ygoth | U |
+m/n |
+
Initials | +yinit | U |
+m/n |
+
Schwabacher Fraktur | +yswab | U |
+m/n |
+
+Je ne suis pas spécialiste en typographie, et les noms usuels peuvent +être erronés. +
+ + + + + + diff --git a/src/logiciels/latex/qoppa.jpg b/src/logiciels/latex/qoppa.jpg new file mode 100644 index 0000000..49cb968 Binary files /dev/null and b/src/logiciels/latex/qoppa.jpg differ diff --git a/src/logiciels/latex/references.tml b/src/logiciels/latex/references.tml new file mode 100644 index 0000000..bb0e333 --- /dev/null +++ b/src/logiciels/latex/references.tml @@ -0,0 +1,64 @@ + + + + +Faire des références croisées à l'intérieur de son document est très +simple. On met une étiquette (label) avec un mot-clé à l'endroit +que l'on veut référencer, de la manière suivante :
+ ++\label{table} Il faut ajouter dans le document, à l'endroit +où on souhaite voir une table des matières, ... ++ +
Ensuite, à l'endroit souhaité, on fait une référence à ce passage avec
+les commandes \ref{mot-clé}
(pour indiquer le numéro de la
+section) ou \pageref{mot-clé}
(pour indiquer la page). Par
+exemple :
+La phrase ci-dessus est extraite de la section \ref{table}, page +\pageref{table}, consacrée à la fabrication d'une table des matières. ++ +
On place l'étiquette à l'intérieur de la commande
+\caption{}
, à côté de la légende de la figure; par exemple,
+voici la légende, dans le fichier TeX, du tableau sur les Habsbourgs
+(voir Les tableaux) :
+\caption{\label{Habsbourg}Les Habsbourg en Espagne et en Autriche.} ++ +
Ensuite, on utilise \ref
et \pageref
de la
+même façon que pour du texte, à cette seule différence que
+\ref
n'indique pas le numéro de la section mais celui de la
+figure. Par exemple :
+Le tableau \ref{Habsbourg}, page \pageref{Habsbourg}, est consacré à la succession des rois Habsbourg. ++ +
Attention ! Ceci est le niveau 0 de la référence. Pour des références +plus élaborées (plusieurs pages référencées, et de façon générale pour +faire un index), je vous renvoie aux manuels existants. Enfin, comme pour +la table des matières, les références n'apparaissent qu'à la deuxième +compilation.
+ + + + diff --git a/src/logiciels/latex/sampi.jpg b/src/logiciels/latex/sampi.jpg new file mode 100644 index 0000000..0c2e18b Binary files /dev/null and b/src/logiciels/latex/sampi.jpg differ diff --git a/src/logiciels/latex/ta_zoa.jpg b/src/logiciels/latex/ta_zoa.jpg new file mode 100644 index 0000000..82f341b Binary files /dev/null and b/src/logiciels/latex/ta_zoa.jpg differ diff --git a/src/logiciels/latex/tableaux.tml b/src/logiciels/latex/tableaux.tml new file mode 100644 index 0000000..d73da30 --- /dev/null +++ b/src/logiciels/latex/tableaux.tml @@ -0,0 +1,171 @@ + + + + +On utilise l'environnement tabular
. Lorsque l'on commence un
+tableau, il faut spécifier immédiatement entre des accolades la
+disposition horizontale du tableau, c'est-à-dire le nombre de colonnes et
+de lignes verticales, ainsi que le centrage du texte :
\begin{tabular}{colonnes}+ +
On utilise les caractères suivants pour indiquer la disposition des +colonnes :
+ +l (left |
+Appuie le texte de la colonne sur la gauche |
r (right | Appuie le texte de la colonne +sur la droite |
c (center | Centre le texte dans la +colonne |
| (pipe | Trace un trait vertical pour +séparer deux colonnes |
p{l} | Le texte sera traité comme un paragraphe
+dans une colonne de largeur l , et pourra êtr emis sur
+plusieurs lignes si besoin. |
+
+
Par exemple, la diposition d'un tableau à deux colonnes, dans +lesquelles le texte est centré, s'exprime ainsi :
+ ++\begin{tabular}{|c|c|} ++ +
Maintenant qu'on a indiqué le nombre de colonnes, on écrit le tableau
+ligne par ligne. Le caractère &
indique le passage à la
+colonne suivante. Chaque ligne est terminée par \\
, qui
+indique le passage à la ligne suivante.
hline
trace une ligne horizontale
+de la largeur du tableau. Voici par exemple les premières lignes du code
+LaTeX du tableau ci-dessus :+\begin{tabular}{|l|p{8cm}|} +\hline +\texttt{l} (left) & appuie le texte de la colonne sur la gauche.\\ \hline +\texttt{r} (right) & appuie le texte de la colonne sur la droite. \\ \hline +\texttt{c} (center) & centre le texte dans la colonne. \\ \hline +\hline +\end{tabular} ++ +
\cline{col1-col2}
trace une ligne
+horizontale de la colonne numéro col1
à la colonne
+numéro col2
.\multicolumn
, qui se
+rédige de la manière suivante :+\multicolumn{num}{description}{texte} ++ +
num indique le nombre de colonnes concernées (la nouvelle
+colonne a une largeur de num colonnes); dans
+description on indique le centrage du texte (l
,
+r
, c
ou p{num}
). Enfin,
+le texte à écrire dans la nouvelle «case» est indiqué entre
+accolades.
Pour donner une légende à un tableau (ou à n'importe quelle figure), +on utilise la commande :
+ ++\caption{texte de la légende} ++ +
Il faut placer le tableau et la légende à l'intérieur d'un environnement figure
. La
+numérotation des légendes est automatique. N'oubliez pas de refermer
+l'environnement figure
.
L'environnement figure
ne fait rien d'autre qu'accrocher
+un numéro et une légende à une image. Il faut donc, le cas échéant,
+utiliser l'environnement center
, par exemple, si l'on veut
+centrer l'image. D'autre part, selon que l'on place la ligne
+\caption{...}
avant ou après l'image elle-même, la légende
+apparaîtra au dessus ou au dessous. Dans le cas qui précède, la légende
+figurera en dessous de la « jolie figure ».
+\begin{figure} +\begin{center} +\begin{tabular}{|c|c|} + +(...) + +\end{tabular} +\end{center} +\caption{La légende de la jolie figure} +\end{figure} ++ +
Il existe aussi l'environnement table
, qui fonctionne
+exactement comme figure
. La différence est qu'il numérote
+explicitement des tableaux, avec une légende du type
+« Tab. 1: résultats », et non « Fig 1: schéma ».
+\begin{figure} + +\begin{center} +\begin{tabular}{|c|c||c|c|} +\hline + +\multicolumn{2}{|c||}{Espagne} & \multicolumn{2}{c|}{Maison +d'Autriche} \\ + +\hline +Philippe II & \multicolumn{2}{c|}{1556} & Ferdinand I\ier \\ + +\cline{3-4} + & & 1564 & Maximilien II \\ + +\cline{3-4} + & & 1576 & Rodolphe II \\ + +\cline{1-2} +Philippe III & 1598 & & \\ +\hline +\end{tabular} +\end{center} + +\caption{Les Habsbourg en Espagne et en Autriche.} +\end{figure} ++ +
Ce qui donne :
+ + + + + + + diff --git a/src/logiciels/latex/tailles.jpg b/src/logiciels/latex/tailles.jpg new file mode 100644 index 0000000..fe5ed5b Binary files /dev/null and b/src/logiciels/latex/tailles.jpg differ diff --git a/src/logiciels/latex/templates/cv1.ps.gz b/src/logiciels/latex/templates/cv1.ps.gz new file mode 100644 index 0000000..8c2ca95 Binary files /dev/null and b/src/logiciels/latex/templates/cv1.ps.gz differ diff --git a/src/logiciels/latex/templates/cv1.txt b/src/logiciels/latex/templates/cv1.txt new file mode 100644 index 0000000..e765f22 --- /dev/null +++ b/src/logiciels/latex/templates/cv1.txt @@ -0,0 +1,83 @@ +%% Exemple de CV en LaTeX. +%% Nicolas Couchoud +%% 2000 + +\documentclass[12pt,a4paper]{article} +\usepackage[francais]{babel} +\usepackage[latin1]{inputenc} + +\begin{document} + +% Je ne veux pas de numro de page +\pagestyle{empty} + +% \annee est la largeur de la premire colonne, c'est dire celle +% contenant l'anne scolaire. Elle est ici dfinie comme tant la +% largeur du texte janvier-fvrier . adapter le cas chant. + +\newlength{\annee} +\settowidth{\annee}{Janvier--fvrier} + +% \texte est la largeur de la deuxime colonne. Elle est dfinie comme +% tant la largeur de la page moins celle de la premire colonne. +% 2\tabcolsep est la largeur de l'espacement entre les colonnes. + +\newlength{\texte} +\setlength{\texte}{\textwidth} \addtolength{\texte}{-\annee} + \addtolength{\texte}{-2\tabcolsep} + +\begin{center} \large \sc Curriculum vitae \end{center} + +% Le \noindent au dbut et les \\ ensuite servent viter +% l'indentation. (Idem dans la rubrique Divers .) +\noindent {\large Nicolas \sc Couchoud} \\ +48, boulevard Jourdan \\ +75014 Paris \\ +Tl. : 01.45.80.76.04 + +% Ici vient le CV lui-mme. +% Les @{} servent viter que LaTeX mette un espacement avant la premire +% colonne et aprs la dernire. +% Les \par servent passer la ligne au sein d'une colonne. + +\subsection*{tudes} +\noindent \begin{tabular}{@{}p{\annee}p{\texte}@{}} + & N le 12 janvier 1978 Saint-tienne (Loire). \\ +1994 & Baccalaurat C (mathmatiques et sciences physiques), mention +trs bien. \\ +1994--1996 & Mathmatiques Suprieures et Mathmatiques Spciales au lyce +Claude Fauriel (Saint-tienne). \\ +1996 & Entre l'cole Normale Suprieure de Paris. \\ +1996--1997 & Licence de physique, mention bien et dbut de matrise +l'Universit Paris VI. \par + Magistre interuniversitaire de physique (MIP) premire anne. \\ +1997--1998 & Fin de matrise de physique, mention bien. \par + Magistre interuniversitaire de physique (MIP) deuxime anne. \\ +1998--1999 & DEA de Physique Thorique l'ENS, mention trs bien +(3me rang). \\ +1999--2000 & Prparation l'agrgation de sciences physiques, option physique. +\par + Fin de la troisime anne du magistre interuniversitaire de physique. +\end{tabular} + +\subsection*{Stages en laboratoire} +\noindent \begin{tabular}{@{}p{\annee}p{\texte}@{}} +Septembre 1997 & tude de la force de van der Waals entre des atomes de +csium et une paroi. \par + Laboratoire de Physique des Lasers, Universit Paris XIII. \\ +Janvier--juin 1998 & Mesure de la masse du neutrino lectronique. \par + Universit de Mayence (Allemagne). \\ +Janvier--fvrier 1999 & Photoproduction de msons dans l'acclrateur +CEBAF. \par + Commissariat l'nergie Atomique (Saclay). +\end{tabular} + +\subsection*{Divers} +\noindent +Anglais et allemand courants. \\ +Connaissance de base Unix (dont Linux). \\ +Tuteur informatique l'ENS depuis janvier 1999. (Les tuteurs sont des lves +volontaires qui encadrent des stages de formation aux machines Unix.) \\ +Connaissance de base du langage C. + +\end{document} diff --git a/src/logiciels/latex/templates/cv2.ps.gz b/src/logiciels/latex/templates/cv2.ps.gz new file mode 100644 index 0000000..0f90e18 Binary files /dev/null and b/src/logiciels/latex/templates/cv2.ps.gz differ diff --git a/src/logiciels/latex/templates/cv2.txt b/src/logiciels/latex/templates/cv2.txt new file mode 100644 index 0000000..fc5c1ad --- /dev/null +++ b/src/logiciels/latex/templates/cv2.txt @@ -0,0 +1,84 @@ +% CV fictif destin servir de modle la classe de curriculum vitae cv.cls +% Le fichier cv.cls doit se trouver dans le mme rpertoire ou dans un rpertoire +% accessible par LaTeX (voir l'utilisation de la variable TEXINPUTS). +% 5 Fvrier 2003 -- Frdric Meynadier (Frederic.Meynadier@obspm.fr) +% +% +\documentclass{cv} + +\usepackage[francais]{babel} +\usepackage[latin1]{inputenc} %% les accents dans le fichier.tex +\usepackage[T1]{fontenc} %% Pour la csure des mots accentus +\usepackage[paper=a4paper,textwidth=160mm,twosideshift=0pt]{geometry} + +\newcommand{\lieu}[1]{{#1}\ } +\newcommand{\activite}[1]{\textbf{#1}\ } +\newcommand{\comment}[1]{\textsl{#1}\ } + + + +\begin{document} + +\begin{chapeau} +\begin{adresse} + Isaac NEWTON\\% + 9.81, rue des Pommiers\\% + Trinity College, Londres\\% + \ligne\\% + Tl. : 06 67 25 90 00\\% + E-mail : \texttt{inewton@apple.com} +\end{adresse} +\begin{etatcivil} + N le 25/12/1642\\ + Nationalit Anglaise +\end{etatcivil} +\end{chapeau} + + + + %%%%%%%%%%%%%%%%%% + % Bloc rubriques % + %%%%%%%%%%%%%%%%%% + +\begin{rubriquetableau}[3.5cm]{Formation} + +1665--1669 + & \activite{Recherches domicile} + \comment{mention Trs Bien} + \lieu{Lincolnshire}\\ + +1661--1665 + & \activite{B.A. Degree, Mathmatiques} + \lieu{Universit de Cambridge}\\ + +\end{rubriquetableau} + +\begin{rubriquetableau}[3.5cm]{Activits Professionnelles} +1673--1683 + & \activite{Enseignement de l'Algbre} + \lieu{(Trinity College, Cambridge)}\\ +1665--1666 + & \activite{Observation de la chute des pommes} + \lieu{Verger familial}\\ + + +\end{rubriquetableau} + +\begin{rubrique}{Langues} +Anglais courant. +\end{rubrique} + +\begin{rubrique}{Comptences en informatique}% +Systme : Linux + +Langage : Pascal +\end{rubrique} + + +\end{document} + + + + + + diff --git a/src/logiciels/latex/templates/cv3.ps.gz b/src/logiciels/latex/templates/cv3.ps.gz new file mode 100644 index 0000000..9ab6fce Binary files /dev/null and b/src/logiciels/latex/templates/cv3.ps.gz differ diff --git a/src/logiciels/latex/templates/cv3.txt b/src/logiciels/latex/templates/cv3.txt new file mode 100644 index 0000000..e81a1d3 --- /dev/null +++ b/src/logiciels/latex/templates/cv3.txt @@ -0,0 +1,156 @@ +%% Exemple de CV en LaTeX. +%% milia Robin (Emilia.Robin@ens.fr) +%% janvier 2000 + +\documentclass[a4paper,11pt]{article} % fonte 11 points, papier a4 + +\usepackage[francais]{babel} % faire du franais +\usepackage[latin1]{inputenc} % accents dans le source +\usepackage[T1]{fontenc} % accents dans le DVI +\usepackage{url} % citer des adresses lectroniques et des URL + +% La page +%######### +\pagestyle{empty} % On ne numrote pas les pages +\usepackage{vmargin} % redfinir les marges +\setmarginsrb{3cm}{3cm}{3cm}{3cm}{0cm}{0cm}{0cm}{0cm} + +% Marge gauche, haute, droite, basse; espace entre la marge et le texte +% gauche, en haut, droite, en bas + +% Je redfinis le comportement des guillemets +%############################################# +\catcode`\=\active +\catcode`\=\active +\def{\og\ignorespaces} +\def{{\fg}} + +% Diverses nouvelles commandes +%############################# + +% Pour laisser de l'espace entre les lignes du tableau +\newcommand\espace{\vrule height 20pt width 0pt} + +% Pour mes grands titres +\newcommand{\titre}[1]{% + \begin{center} + \bigskip + \rule{\textwidth}{1pt} + \par\vspace{0.1cm} + \textbf{\large #1} + \par\rule{\textwidth}{1pt} + \end{center} + \bigskip + } + +% Dbut du document +%################### +\begin{document} +%################### + +\begin{center} +\par\textbf{\huge Curriculum Vitae} +\end{center} + +\vspace{1.5cm} + +\begin{flushleft} +milia Robin \\ +6, rue Henri Duchne\\ +75\,015 Paris \\ + +\medskip +Tl.: 01 45 77 98 19 + +E-mail: \url{Emilia.Robin@ens.fr} + + +\end{flushleft} + +\begin{flushleft} +Nationalit franaise \\ +Ne le 20 aot 1975 Vesoul (Haute-Sane). +\end{flushleft} + + +\titre{tudes} +%############# + +\begin{tabular}{c@{ : }p{0.8\textwidth}} + + +\textbf{1998--1999} & Agrgation d'histoire (reue 13\ieme) \\ + +\espace +\textbf{1997--1998} & DEA d'histoire contemporaine l'Universit de +Paris~IV-Sorbonne, sous la direction de M.G.-H.Soutou: L'URSS et la +construction europenne de l'annonce du Plan Shuman la signature du trait +de Rome: l'exemple allemand et les notes de la RDA en 1950--1951, mention +trs bien. \\ + +\espace +\textbf{1996--1997} & Matrise d'histoire contemporaine Paris~IV sous la +direction de M. F.-G. Dreyfus: le discours officiel du Kominform face la +construction europenne entre 1947 et 1952, mention bien. + +En parallle, premire anne de russe (DULCO) l'Institut des Langues +Orientales (INALCO). \\ + +\espace +\textbf{1995--1996} & Premire anne l'cole Normale Suprieure, licence +d'histoire l'universit de Paris~IV-Sorbonne. \\ + +\espace +\textbf{1992--1995} & Classes prparatoires Paris au Lyce Condorcet puis au +Lyce Fnelon. En 1995, licence d'espagnol l'universit Paris~IV. \\ + +\espace +\textbf{1992} & Baccalaurat (srie A2, lettres et langues) Vesoul +(Haute-Sane). \\ + +\end{tabular} + + +\titre{Langues pratiques} +%######################### + + +\begin{itemize} + +\item \textbf{Espagnol}, couramment (cours d't du Colegio de Espaa +Salamanque en 1993, licence d'espagnol en 1995, DELE en 1996) + +\medskip +\item \textbf{Anglais} (sjours rguliers en Angleterre pendant cinq ans) + +\medskip +\item \textbf{Allemand}, lu + +\medskip +\item \textbf{Notions de russe} (cours de l'INALCO, cours d't de +l'Universit d'tat de Saint-Ptersbourg en 1997) + +\end{itemize} + +\titre{Expriences} +%################### + +\begin{itemize} + +\item \textbf{Informatique}: j'ai cr un systme de tutorat informatique dans +le cadre de l'ENS, pour aider les lves dbutants (organisation de stages, +rdaction d'un mensuel, entretien d'un site Web: +\url{http://www.eleves.ens.fr/tuteurs/} + +Je travaille sous Solaris ou Linux, et utilise couramment LaTeX et le langage +HTML. Dans le cadre des stages, j'ai assur environ 150~heures d'enseignement. + +\item \textbf{Chantiers de jeunes} avec l'association Jeunesse et +Reconstruction (1994, 1995, animatrice en 1996, 1998 et 1999). Dans ce +cadre, j'ai eu en charge des groupes de 10 15 personnes de nationalits et +de langues diffrentes, pendant trois semaines, ainsi que la gestion des +rapports entre l'association et la commune dans le cadre du chantier. + +\end{itemize} + +\end{document} diff --git a/src/logiciels/latex/templates/skel-utf8.txt b/src/logiciels/latex/templates/skel-utf8.txt new file mode 100644 index 0000000..0a6c0f8 --- /dev/null +++ b/src/logiciels/latex/templates/skel-utf8.txt @@ -0,0 +1,90 @@ +% Tout ce qui est mis derrière un « % » n'est pas vu par LaTeX +% On appelle cela des « commentaires ». Les commentaires permettent de +% commenter son document - comme ce que je suis en train de faire +% actuellement - et de cacher du code - cf. la ligne \pagestyle. + +\documentclass[a4paper]{article} + +% Options possibles : 10pt, 11pt, 12pt (taille de la fonte) +% oneside, twoside (recto simple, recto-verso) +% draft, final (stade de développement) + +\usepackage[utf8]{inputenc} % LaTeX, comprends les accents ! +\usepackage[T1]{fontenc} % Police contenant les caractères français +\usepackage[francais]{babel} % Placez ici une liste de langues, la + % dernière étant la langue principale + +\usepackage[a4paper]{geometry}% Réduire les marges +% \pagestyle{headings} % Pour mettre des entêtes avec les titres + % des sections en haut de page + +\title{Lorem ipsum} % Les paramètres du titre : titre, auteur, date +\author{Curabitur \and Elementum} +\date{} % La date n'est pas requise (la date du + % jour de compilation est utilisée en son + % absence) + +\sloppy % Ne pas faire déborder les lignes dans la marge + +\begin{document} + +\maketitle % Faire un titre utilisant les données + % passées à \title, \author et \date + +\begin{abstract} +Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent semper orci +et purus. Nulla eu felis in lacus mollis facilisis. Maecenas porta. Vestibulum +ultricies, justo quis sodales molestie, nisi diam blandit arcu, eget egestas +mauris enim a lectus. Phasellus ac dolor in augue venenatis vulputate. Praesent +adipiscing. Aliquam adipiscing luctus ipsum. Vivamus non elit nec risus +convallis lobortis. Vestibulum ante ipsum primis in faucibus orci luctus et +ultrices posuere cubilia Curae; Nulla facilisi. Sed consequat pellentesque dui. +\end{abstract} + +\tableofcontents % Table des matières + +% \part{Titre} % Commencer une partie... + +\section{Donec} % Commencer une section, etc. + +Donec nibh. Donec lorem odio, volutpat a, tempor et, interdum sed, eros. +Suspendisse vulputate, velit ac rhoncus imperdiet, risus augue iaculis velit, et +blandit libero dui quis turpis. Cras semper vulputate lectus. Morbi tempus +semper augue. + +\subsection{Praesent} % Section plus petite + +Praesent adipiscing nisi id augue consectetuer ultrices. Aenean hendrerit tortor +quis magna condimentum accumsan. In a tortor. Fusce ut augue. Aenean interdum, +metus sit amet mollis tincidunt, nunc sapien viverra sapien, in convallis leo +diam sed nunc. Vivamus semper erat non leo. Vivamus ac ipsum eu velit convallis +blandit. Class aptent taciti sociosqu ad litora torquent per conubia nostra, per +inceptos himenaeos. + +% \subsubsection{Titre} % Encore plus petite + +\subsection{Quisque} + +Quisque dolor odio, aliquam quis, placerat sed, hendrerit eu, magna. Cras at +turpis et mi imperdiet lobortis. Nam eu massa et eros congue gravida. Sed +luctus. Nullam sit amet nunc a tellus lacinia tempor. Praesent tincidunt ligula +quis lacus. Nullam sodales, mi sed venenatis egestas, risus turpis dictum elit, +ac egestas augue eros eget erat. Cras faucibus. + +% \paragraph{Titre} % Toutes petites sections (le nom \paragraph + % n'est pas très bien choisi) + +% \subparagraph{Titre} % La dernière + +% \appendix % Commençons les annexes + +% \section{Titre} % Annexe A + +% \section{Titre} % Annexe B + +% \listoffigures % Table des figures + +% \listoftables % Liste des tableaux + +\end{document} + diff --git a/src/logiciels/latex/templates/skel.txt b/src/logiciels/latex/templates/skel.txt new file mode 100644 index 0000000..bbbc095 --- /dev/null +++ b/src/logiciels/latex/templates/skel.txt @@ -0,0 +1,61 @@ +% Tout ce qui est mis derrire un % n'est pas vu par LaTeX +% On appelle cela des commentaires. Les commentaires permettent de +% commenter son document - comme ce que je suis en train de faire +% actuellement - et de cacher du code - cf. la ligne \pagestyle. + +\documentclass[a4paper]{article} + +% Options possibles : 10pt, 11pt, 12pt (taille de la fonte) +% oneside, twoside (recto simple, recto-verso) +% draft, final (stade de dveloppement) + +\usepackage[latin1]{inputenc} % LaTeX, comprends les accents ! +\usepackage[T1]{fontenc} % Police contenant les caractres franais +\usepackage{geometry} % Dfinir les marges +\usepackage[francais]{babel} % Placez ici une liste de langues, la + % dernire tant la langue principale + +% \pagestyle{headings} % Pour mettre des enttes avec les titres + % des sections en haut de page + +\title{Titre titre} % Les paramtres du titre: titre, auteur, date +\author{Prnom Nom\and Autre Auteur} +% \date{} % La date n'est pas requise (la date du + % jour de compilation est utilise en son + % absence + +\begin{document} + +% \maketitle % Faire un titre utilisant les donnes + % passes \title, \author et \date + +\begin{abstract} + Rsum rsum rsum, etc. % Rsum de l'article +\end{abstract} + +% \tableofcontents % Table des matires + +% \listoffigures % Table des figures + +% \listoftables % Liste des tableaux + +\part{Titre} % Commencer une partie... + +\section{Titre} % Commencer une section, etc. + +\subsection{Titre} % Section plus petite + +\subsubsection{Titre} % Encore plus petite + +\paragraph{Titre} % Toutes petites sections (le nom \paragraph + % n'est pas trs bien choisi) + +\subparagraph{Titre} % La dernire + +\appendix % Commenons les annexes + +\section{Titre} % Annexe A + +\section{Titre} % Annexe B + +\end{document} diff --git a/src/logiciels/latex/templates/skelbook-utf8.txt b/src/logiciels/latex/templates/skelbook-utf8.txt new file mode 100644 index 0000000..993d1a9 --- /dev/null +++ b/src/logiciels/latex/templates/skelbook-utf8.txt @@ -0,0 +1,74 @@ +% Tout ce qui est mis derrière un « % » n'est pas vu par LaTeX +% On appelle cela des « commentaires ». Les commentaires permettent de +% commenter son document - comme ce que je suis en train de faire +% actuellement - et de cacher du code - cf. la ligne \pagestyle. + +\documentclass[a4paper, titlepage]{book} + +% Options possibles : 10pt, 11pt, 12pt (taille de la fonte) +% oneside, twoside (recto simple, recto-verso) +% draft, final (stade de développement) +% titlepage, notitlepage (\maketitle prend une page +% à part ou non) + +\usepackage[utf8]{inputenc} % LaTeX, comprends les accents ! +\usepackage[T1]{fontenc} % Police contenant les caractères français +\usepackage{geometry} % Définir les marges +\usepackage[francais]{babel} % Placez ici une liste de langues, la + % dernière étant la langue principale + +% \pagestyle{headings} % Pour mettre des entêtes avec les titres + % des sections en haut de page + +\title{Titre titre} % Les paramètres du titre : titre, auteur, date +\author{Prénom Nom\and Autre Auteur} +% \date{} % La date n'est pas requise (la date du + % jour de compilation est utilisée en son + % absence + +\begin{document} + +% \maketitle % Faire un titre utilisant les données + % passées à \title, \author et \date + +\frontmatter % Prologue + +\chapter{Avant-propos} + +\chapter{Remerciements} + +\chapter{Introduction} + +\mainmatter % On passe aux choses sérieuses + +\part{Titre} + +\chapter{Titre} + +\section{Titre} + +\subsection{Titre} + +\subsubsection{Titre} + +\paragraph{Titre} + +\subparagraph{Titre} + +\appendix % Les annexes + +\chapter{Titre} % Annexe A + +\chapter{Titre} % Annexe B + +\backmatter % Épilogue + +\chapter{Conclusion et discussion} + +% \tableofcontents % Table des matières + +% \listoffigures % Table des figures + +% \listoftables % Liste des tableaux + +\end{document} diff --git a/src/logiciels/latex/templates/skelbook.txt b/src/logiciels/latex/templates/skelbook.txt new file mode 100644 index 0000000..f56fdec --- /dev/null +++ b/src/logiciels/latex/templates/skelbook.txt @@ -0,0 +1,74 @@ +% Tout ce qui est mis derrire un % n'est pas vu par LaTeX +% On appelle cela des commentaires. Les commentaires permettent de +% commenter son document - comme ce que je suis en train de faire +% actuellement - et de cacher du code - cf. la ligne \pagestyle. + +\documentclass[a4paper, titlepage]{book} + +% Options possibles : 10pt, 11pt, 12pt (taille de la fonte) +% oneside, twoside (recto simple, recto-verso) +% draft, final (stade de dveloppement) +% titlepage, notitlepage (\maketitle prend une page +% part ou non) + +\usepackage[latin1]{inputenc} % LaTeX, comprends les accents ! +\usepackage[T1]{fontenc} % Police contenant les caractres franais +\usepackage{geometry} % Dfinir les marges +\usepackage[francais]{babel} % Placez ici une liste de langues, la + % dernire tant la langue principale + +% \pagestyle{headings} % Pour mettre des enttes avec les titres + % des sections en haut de page + +\title{Titre titre} % Les paramtres du titre: titre, auteur, date +\author{Prnom Nom\and Autre Auteur} +% \date{} % La date n'est pas requise (la date du + % jour de compilation est utilise en son + % absence + +\begin{document} + +% \maketitle % Faire un titre utilisant les donnes + % passes \title, \author et \date + +\frontmatter % Prologue + +\chapter{Avant-propos} + +\chapter{Remerciements} + +\chapter{Introduction} + +\mainmatter % On passe aux choses srieuses + +\part{Titre} + +\chapter{Titre} + +\section{Titre} + +\subsection{Titre} + +\subsubsection{Titre} + +\paragraph{Titre} + +\subparagraph{Titre} + +\appendix % Les annexes + +\chapter{Titre} % Annexe A + +\chapter{Titre} % Annexe B + +\backmatter % pilogue + +\chapter{Conclusion et discussion} + +% \tableofcontents % Table des matires + +% \listoffigures % Table des figures + +% \listoftables % Liste des tableaux + +\end{document} diff --git a/src/logiciels/latex/xdvi.tml b/src/logiciels/latex/xdvi.tml new file mode 100644 index 0000000..19b7ed0 --- /dev/null +++ b/src/logiciels/latex/xdvi.tml @@ -0,0 +1,195 @@ + + + + +xdvi
+ Le format DVI est maintenant tombé en désuétude ; de nos jours, la grande
+ majorité des fichiers .tex
sont compilés vers du PDF via la
+ commande pdflatex
.
+
+ Ce format est lisible via le logiciel Acrobat Reader sous Windows, ou + Evince/Okular sur les ordinateurs de l'école. +
+Le logiciel xdvi
sert à afficher les fichiers DVI (device
+independant) produits par la compilation d'un fichier LaTeX. On peut s'en
+servir avec la souris comme avec le clavier.
Si vous lancez dvi
sans argument, il affiche un browser
+qui vous permet de sélectionner à la souris le fichier que vous voulez
+afficher. Cette fonction est accessible à tout moment en cliquant sur
+File, ou en tapant ^F
(la touche Control et la touche F en
+même temps) dans la fenêtre du prgoramme.
Attention, l'affichage de xdvi
n'est pas parfait, et peut
+être faux. Si vous avez des figures, des mises en pages bizarres, il est
+plus fiable de générer un fichier PostScript à regarder avec
+gv
. xdvi
a l'avantage de ne pas nécessiter
+cette étape de conversion supplémentaire, et donc d'être l'outil idéal
+pour les premières vérifications et relectures.
Bouton | +Clavier | +Fonction | +
---|---|---|
Quit |
+q |
+Quitter | +
Again |
+^A |
+Répéter la dernière action. | +
Reread |
+^R |
+Recharger la page. C'est utile quand on vient de faire des
+modifications
+au fichier .tex (ne pas oublier de recompiler!). On peut
+aussi se
+contenter de cliquer n'importe où dans la fenêtre. |
+
100%, 50%, 33%, 25% |
+Voir ci-dessous | +Changer le facteur de grossissement. | +
First |
+1g |
+Revenir à la première page. | +
Page-10 |
+10p | +Reculer de 10 pages. | +
Page-5 |
+5p | +Reculer de 5 pages. | +
Prev |
+p |
+Reculer d'une page. | +
Next |
+SPC , n ,
+RETURN |
+Avancer d'une page. | +
Page+5 |
+5n | +Avancer de 5 pages. | +
Page+10 |
+10n | +Avancer de 10 pages. | +
Last |
+g |
+Aller à la dernière page | +
View PS |
+v
|
+Afficher comme un PostScript | +
File |
+^F |
+Affiche vos fichiers, ce qui permet de sélectionner à la souris le +fichier que vous voulez charger. | +
Au clavier, on utilise la touche s
(shrink) pour
+changer ce facteur, en l'associant avec un chiffre. s
tout
+court affiche tout le document mis en page, pour visualisation avant
+impression.
Plus le shrink factor, est petit, plus le zoom est important.
+Par exemple, 1s
grossit énormément le texte, tandis que, sur
+les stations Sun, 8s
l'affiche dans un coin du
+xdvi
(attention, tout dépend de la résolution de
+l'écran).
u
(up), d
(down), l
(left),
+r
(right) et c
(center).numg (goto) |
+aller à la page indiquée (23g : page 23) |
x (expert) | Supprimer les « cases à cliquer » à
+droite de la fenêtre (passer en « tout clavier », ou mode expert).
+Réversible en tapant à nouveau x . |
Cette page a pour but de montrer comment on peut utiliser le + programme XeTeX pour utiliser facilement des polices extérieures et + taper du texte dans des systèmes d'écriture latins ou non latins.
+XeTeX est un programme basé sur TeX, qui en est une variante (les + fichiers écrits pour l'un pour l'autre ne seront pes nécessairement + compatibles). Il a d'abord été conçu pour fonctionner avec Mac OS X + mais fonctionne aujourd'hui avec une grande diversité de systèmes.
+ +Un de ses grands avantages est de gérer tout à fait correctement les + fichiers encodés en UTF-8, et les polices TrueType et OpenType, ce qui + permet de bénéficier des mêmes possiblités techniques que les logiciels + de traitement de texte habituels pour produire des documents, qu'ils soient + écrits en arménien, en araméen, en japonais, en lituanien ou en + persan.
+ +De la même manière qu'on utilise la commande latex
pour
+ compiler les fichiers écrits pour LaTeX, on utilise la commande
+ xelatex
pour compiler les fichiers LaTeX destinés à
+ profiter des fonctionnalités de XeTeX.
La commande xelatex
s'utilise comme la commande
+ pdflatex
.
xelatex fichier.tex+
L'option -no-pdf
permet de retrouver le comportement de la
+ commande latex
qui ne produit pas un fichier PDF directement
+ lisible mais un fichier intermédiaire de la forme
+ fichier.xdv
. La commande xdvipdfmx
sert à
+ convertir les fichiers XDV en fichers PDF.
XeTeX accepte les fichiers encodés en UTF-8 seulement, par défaut. + assurez-vous donc d'utiliser un éditeur de texte compatible + (voir aussi la page + concernant UTF-8 pour plus d'informations).
+ +XeLaTeX possède un certain nombre de paquets spécifiques, et au + contraire ne doit pas être utilisé avec certains paquets traditionnels + de LaTeX.
+inputenc
et fontenc
sont
+ inutilesfontspec
sert à sélectionner les polices
+ facilementAvant de commencer, il y a un pré-requis qui n'est pas spécifique à + LaTeX : savoir taper un texte quelconque, dans la langue qui vous + intéresse, en Unicode. Heureusement, nous avons une documentation sur + les éditeurs en + Unicode, que nous vous invitons à lire avant d'aller plus loin si + ce n'est déjà fait.
+ +Tout ce que vous avez à faire maintenant, c'est de créer votre + fichier LaTeX avec votre éditeur en Unicode. Nous allons voir dans un + instant ce qu'il faut mettre dans le préambule.
+ +Les fichiers déjà écrits pour LaTeX peuvent nécessiter quelques + adaptations : grâce à votre éditeur de texte favori, enregistrez votre + fichier au format UTF-8, et remplacez les lignes
+\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc}+
par
+\usepackage{fontspec}+ +
Par défaut, XeTeX utilisera les polices Latin Modern qui ont un + aspect semblable aux polices standard de LaTeX. Mais si vous voulez en + changer, en particulier pour afficher du texte dans d'autres écritures, + il faudra se procurer une police capable de les afficher. Prenons par + exemple la police FreeSerif. La commande suivante permet de + sélectionner cette police par défaut pour l'ensemble du document.
+\setmainfont[Ligatures=TeX]{FreeSerif}+
Les options indiquées permettent respectivement d'utiliser certaines
+ suites de caractères pour les caractères spéciaux (comme
+ ---
pour —), l'option Ligatures=Common
+ permet d'utiliser les ligatures standard
+ de la police si celle-ci en possède (notamment fi et ffi).
Attention, certaines anciennes polices, datant d'avant + l'introduction du standard Unicode pour l'encodage des caractères, + permettent d'afficher des écritures non latines, en remplaçant les + dessins des caractères latins par ceux des caractères grecs : elles + permettent ainsi d'«écrire en grec» avec un clavier latin (comme la + police Symbol). L'usage de ces polices de caractères est à + proscrire : l'utilisation de systèmes Unicode permet aux fichiers de + reproduire fidèlement les caractères présents dans le texte.
+Il est possible que la police choisie par défaut ne convienne pas à + tous les usages, par exemple pour écrire en chinois. Si cela s'avérait + nécessaire, rien de plus simple : il suffit de déclarer une nouvelle + police avec la commande suivante
+\newfontfamily\cjkfont[Script=CJK]{AR PL ZenKai Uni}+
Cette commande déclare une nouvelle police utilisable avec la
+ commande \cjkfont
(il s'agit de la police AR PL ZenKai
+ Uni). On pourra alors l'utiliser sous la forme suivante :
En chinois, «Chine» s'écrit {\cjkfont 中国}.+ +
Le paquet polyglossia
ne fonctionne qu'avec XeTeX, et sert
+à remplacer le paquet babel
. Attention cependant : toutes les
+focntionnalités de babel n'y sont pas présentes, notamment le remplacement
+des puces par des tirets dans les environnements itemize
,
+pour les documents en français.
+
L'intérêt principal de polyglossia
est de fournir des
+traductions pour les textes affichés traditionnellement par LaTeX
+(les dates, les mots Section, Chapter, Contents,
+Proof...).
+
Là où on écrivait auparavant \usepackage[francais]{babel}
+il faudra écrire par exemple
\usepackage{polyglossia} +\setdefaultlanguage{french} +\setotherlanguage[variant=british]{english} ++
qui indique que le texte est en français (on verra ainsi
+Table des matières au lieu de Contents et permet d'insérer
+des passages en anglais britannique avec \begin{english}
et
+\end{english}
.
On peut aussi utiliser polyglossia
pour les langues comme l'arabe.
+outre la commande \setdefaultlanguage{arabic}
, on peut utiliser
+une commande comme
\newfontfamily\arabicfont[Script=Arabic]{Scheherazade}+ +
afin d'indiquer la police souhaitée pour l'arabe. +Cette étape est essentiellement obligatoire, car peu de polices incluent +à la fois les caractères latins et arabes dans le style désiré. +Un exemple de fichier LaTeX avec un texte arabe +se trouve ici. +
+ +La paquet arabxetex
, qui ne fonctionne également qu'avec XeLaTeX,
+permet d'entrer du texte dans les écritures arabes (que ce soit en arabe,
+en persan ou en ourdou) à l'aide de translittération, et fournit
+un certain nombre d'autres fonctions utiles. La documentation
+se trouve à
+cette adresse.
+
\documentclass{article} +\usepackage{fontspec} +\defaultfontfeatures{Mapping=tex-text} +\setmainfont{Linux Libertine O} +\usepackage[margin=4cm]{geometry} +\usepackage{amsthm} + +\title{Οἱ πρῶτοι ἀριθμοί} +\date{20 Μαρτίου 2008} + +\begin{document} + +\maketitle + +\textbf{Θεώρημα 1.} «Οἱ πρῶτοι ἀριθμοὶ πλείους εἰσὶ παντὸς τοῦ προτεθέντος +πλήθους πρώτων ἀριθμῶν.» (\emph{Στοιχεία}, Εὐκλείδης). Ἄρα, τὸ σύνολο τῶν +πρώτων ἀριθμῶν εἶναι ἄπειρο. + +\textsc{Ἀπόδειξη. } Ἔστω $P$ ἕvα πεπερασμένο σύνολο $\{p_1, \dots, p_k\}$ +πρώτων ἀριθμῶν. Θεωροῦμε τὸv ἀκέραιον ἀριθμόν $N := p_1\cdots p_k + 1$, ποὺ +εἶναι μεγαλύτερος τοῦ $1$. Τότε ὑπάρχει ἕνα πρῶτο διαιρέτη $q$ τοῦ $N$. +Ἄv $q = p_i$, τότε $q | N - p_1\cdots p_k$, ἄρα $q | 1$, καὶ αὑτὸ εἶναι +ἄτοπο. $\qed$ + +\end{document}+ +
Mozilla est une suite de logiciels pour Internet. Elle comporte en +particulier un navigateur Web (Mozilla Browser) qui est l'un des +meilleurs disponibles actuellement et un module Mail/Newsgroups pour +gérer ses mails et +consulter des groupes de News (comme Usenet ou +forum).
+ +Mozilla fonctionne aussi bien sous Windows que sur les systèmes Unix.
+ +De nos jours, la suite Mozilla n'est plus développée, et ce sont Firefox et Thunderbird qui sont installés sur les machines de l'école.
+ + + + + diff --git a/src/logiciels/mozilla/mail.tml b/src/logiciels/mozilla/mail.tml new file mode 100644 index 0000000..e34e488 --- /dev/null +++ b/src/logiciels/mozilla/mail.tml @@ -0,0 +1,122 @@ + + + + ++Mozilla Mail/Newsgroups est un module de Mozilla fait pour gérer son mail +et consulter les News. Cette page ne concerne que la partie Mail. +
+ +On peut lancer Mozilla Mail depuis Mozilla avec la combinaison de touches
+Ctrl+2
ou Window > Mail & Newsgroups
depuis le
+menu. Il existe aussi une version autonome de ce module qui s'appelle Thunderbird
+Mail.
Si vous n'êtes pas du tout familier avec le courrier électronique, +commencez par consulter notre +documentation sur ce sujet.
+ +Ce programme s'utilise essentiellement de la même manière que d'autres
+programmes pour gérer son courrier électronique à ceci près que Mozilla
+Mail fonctionne en mode graphique et non en mode texte comme
+pine
+ou mutt
.
+
La première étape pour commencer à utiliser Mozilla Mail consiste à le +paramétrer pour la consultation et l'envoi de messages. Ce paragraphe +concerne la configuration pour un serveur IMAP(S). Avec ce type de +serveur, les fichiers contenant vos mails sont conservés sur le serveur.
+ +La première fois que vous lancez Mozilla Mail, ou si vous sélectionnez
+File > New > Account
dans le menu, l'Account Wizard
+est lancé, il sert à créer un compte. Sélectionnez « Email
+account ». Entrez ensuite votre nom ainsi que votre adresse
+email ces informations serviront pour les messages que vous
+enverrez.
Il s'agit ensuite de régler certains paramètres techniques. Tout
+d'abord, sélectionnez IMAP
pour utiliser un serveur IMAP
+comme le titre de cette section l'indique. Dans Incoming
+server
, entrez le nom de ce serveur IMAP. Il faut ensuite entrer
+le nom du serveur SMTP
(Outgoing server). La page suivante
+vous demande le login utilisé pour vous connecter au serveur IMAP.
+
Les paramètres ci-dessus sont les bons si vous voulez consulter votre +mail à l'École et que vous le faites depuis le réseau de l'École. Si vous +utilisez Internet via un autre fournisseur d'accès, vous devez +impérativement indiquer le serveur SMTP de ce fournisseur d'accès.
+ +Si on veut faire l'analogie avec le courrier postal, le couple
+Incoming server
+Incoming User Name
correspond à
+la boîte à lettre où vous recevez votre courrier tandis que
+Outgoing server (SMTP)
correspond à la boîte aux lettres de
+la Poste la plus proche de chez vous.
Une fois le compte créé par l'Account Wizard, il reste des
+choses à préciser. Pour cela, sélectionnez Edit > Mail &
+Newsgroups Account Settings
et sélectionnez « Use secure
+connection (SSL) » dans la rubrique « Server
+settings », cela signifie que toutes les données
+échangées entre Mozilla et le serveur IMAP(S) seront cryptées (ainsi
+votre mot de passe ne sera pas lisible en clair pour quelqu'un qui
+espionnerait le réseau) :
Allez maintenant dans la rubrique « Composition & +Addressing » et décochez la case « Compose messages in HTML +format » : +
+ +Sans ce réglage, les messages que vous composeriez seraient envoyés en +double exemplaire : d'une part en texte brut et au format HTML (le format utilisé pour +les pages Web) d'autre part. Dans 99% des cas, poster en HTML est inutile +et même nuisible : cela plus que double la place prise par le mail +sur la messagerie de votre correspondant !
+ +Après cela, Mozilla Mail est bien configuré et prêt à l'emploi.
+ + + + + diff --git a/src/logiciels/mozilla/mail_imap_serveur.png b/src/logiciels/mozilla/mail_imap_serveur.png new file mode 100644 index 0000000..c71a39c Binary files /dev/null and b/src/logiciels/mozilla/mail_imap_serveur.png differ diff --git a/src/logiciels/mozilla/mail_nohtml.png b/src/logiciels/mozilla/mail_nohtml.png new file mode 100644 index 0000000..980925c Binary files /dev/null and b/src/logiciels/mozilla/mail_nohtml.png differ diff --git a/src/logiciels/mozilla/mail_ssl.png b/src/logiciels/mozilla/mail_ssl.png new file mode 100644 index 0000000..1870b88 Binary files /dev/null and b/src/logiciels/mozilla/mail_ssl.png differ diff --git a/src/logiciels/mozilla/mozilla.png b/src/logiciels/mozilla/mozilla.png new file mode 100644 index 0000000..1407ddf Binary files /dev/null and b/src/logiciels/mozilla/mozilla.png differ diff --git a/src/logiciels/mozilla/navigateur.tml b/src/logiciels/mozilla/navigateur.tml new file mode 100644 index 0000000..c7be350 --- /dev/null +++ b/src/logiciels/mozilla/navigateur.tml @@ -0,0 +1,196 @@ + + + + ++Mozilla est une suite de logiciels pour Internet. C'est ici la partie +« navigateur Web » qui nous intéresse, plus particulièrement la +dernière version, Mozilla-1.6, l'un des meilleurs navigateurs +disponibles à l'heure actuelle. Voici ses principaux atouts : +
+ ++Cette capture d'écran vous montre Mozilla (avec le thème « Modern ») +affichant, dans deux onglets, le site de la Mozilla Foundation (ce que +vous voyez à l'écran) et en arrière plan notre site. Voici les +principales zones à connaître de la fenêtre Mozilla : +
+ +Ctrl+Page Up
+et Ctrl+Page Down
pour passer d'un onglet à
+l'autre, ou cliquez sur l'onglet que vous voulez voir.+Vouc pouvez cliquer sur l'icône « Mozilla » si vous avez une config +récente (à partir de la config conscrits 2002). Sinon, dans une +fenêtre, tapez simplement : +
+ +
+brick ~ $ mozilla &
+
+
+
+Pour quitter, cliquez sur File > Quit
, ou tapez
+Ctrl+Q
.
+
Action | Manipulation à faire | Raccourci clavier | +
---|---|---|
Revenir dans l'historique | Bouton Back | Alt+Flèche +gauche | +
Avancer dans l'historique | Bouton Forward | Alt+Flèche droite | +
Fermer l'onglet | File > Close Tab | Ctrl+W | +
Créer un nouvel onglet | File > New > New Navigator Tab | Ctrl+T | +
Aller à la page d'accueil | Bouton Home | Alt+Home | +
Chercher dans la page | Edit > Find in This Page | Ctrl+F, ou / puis taper le mot à chercher | +
Ajouter un bookmark | Bookmarks > Bookmark This Page | Ctrl+D | +
Accéder à la liste des bookmarks | Bouton « Bookmarks » | _ | +
+La configuration de Mozilla se fait via le panneau de Préférences,
+accessible par Edit > Preferences
. Il y a beaucoup de
+choses que vous pouvez configurer dans Mozilla. Voici deux exemples :
+
+« Home » est votre page d'accueil, celle qui apparaît quand vous
+cliquez sur le bouton Home
. C'est une sorte de
+super-bookmark. Vous pouvez y indiquer votre propre page Web, un
+journal, un moteur de recherche (mais souvenez-vous que le bouton
+Search
est déjà fait pour ça).
+
+Par défaut, Mozilla affiche une page du site Mozilla.org. Pour indiquer une
+autre adresse, dans le panneau de Préférences, cliquez sur
+Navigator
. Dans la section « Home Page », indiquez
+l'adresse que vous souhaitez dans le cadre Location
+
+Quand vous arrivez sur une page disponible en plusieurs langues, +Mozilla choisira par défaut de vous montrer la page en anglais. Si +vous préférez voir plutôt du français, il faut modifier ce qu'on +appelle les « préférences de langue ». +
+ +
+Dans le panneau de Préférences, cliquez sur le menu déroulant
+Navigator
puis choisissez le sous-menu
+Languages
. Vous y verrez déjà quelque chose comme
+« English [en]
». Cliquez sur le bouton Add
+puis ajoutez la langue de votre choix. Utilisez ensuite le bouton
+Move Up
pour la placer en tête de liste.
+
+C'est un programme très simple mais puissant qui permet de garder +l'historique d'un fichier. Son intérêt est que vos fichiers évoluent au fur et +à mésure que vous les modifiez, et sans un outil de gestion de version, on +peut difficilement gérer les anciennes versions. +
+ ++Attention, ce logiciel est assez ancien et peu utilisé de nos jours. +Pour une utilisation personnelle à la manière de ce tutoriel, on utilise plus souvent git. +
+ +
+Sans trop rentrer dans les détails (pour cela, faire man
+rcsintro
), l'utilisation de base peut se résumer à deux
+commandes :
ci
(de l'anglais check-in) est la
+commande avec laquelle on dépose la dernière version du fichier dans l'archive
+gérée par RCS.
+Supposons que notre fichier s'appelle monfichier
. Voilà ce qui se
+passe la première fois que l'on fait le check-in : (en italique,
+ce qui est tapé par l'utilisateur) :
+corvette ~ $ ci monfichier +RCS/monfichier,v <-- monfichier +initial revision: 1.1 +enter description, terminated with ^D or '.': +NOTE: This is NOT the log message! +>>Ceci est une description du fichier +>> . +done +corvette ~ $ ++ +
+Comme vous le voyez, la dernière ligne doit être un point, +afin de signaler au programme qu'on a fini d'écrire nos commentaires. +
+ + +
+Le fichier est sauvé dans l'archive RCS, appelée monfichier,v
, et
+effacé. Par défaut, l'archive se trouve dans le même répertoire que le
+fichier de départ. Il est plus pratique d'avoir un sous-répertoire
+RCS/
, dans lequel seront sauvegardées automatiquement
+les versions de vos fichiers.
+
+La première fois que vous enregistrez un fichier, donnez une description +générale du fichier. Les autres fois, vous mettrez juste un commentaire sur la +version (modifications apportées, date, etc). +
+ +co
(de l'anglais check-out) est la
+commande avec lequel on récupère une version du fichier dans l'archive gérée
+par RCS.
+Supposons que vous voulez sortir la toute dernière version de notre fichier,
+appelé monfichier
.
+corvette ~ $ co monfichier +RCS/monfichier,v --> monfichier +revision 1.1 +done +corvette ~ $ ++ +
+La version 1.1 de monfichier
est rétablie dans le répertoire
+courant.
+
+RCS ne sauvegarde pas des copies intégrales de chacune des versions : +chaque nouvelle version contient en fait les différences par rapport à la +précédente. C'est ce qui permet de gérer les différentes versions, sans +utiliser inutilement de la place disque en stockant 10 fois les mêmes données. +
+ ++writable monfichier exists; overwrite? [ny](n) ++ +c'est qu'il y a déjà un fichier de ce nom dans le répertoire. Il vaut mieux +répondre
n
on et vérifier avant si on peut
+l'écraser.+ci -u monfichier ++ +Le fichier contenant les dernières modifications est sauvegardé normalement, +et vous conservez dans votre répertoire le fichier dans son dernier +état.
+co -r1.4 monfichier +
+rcslog monfichier +
monfichier
diffère-t-il actuellement de la version
+1.3 ? Tapez :
+
++rcsdiff -r1.3 monfichier +
+Pour plus d'informations, vous pouvez consulter le Mini-HOWTO +RCS.
+ + + + + + + diff --git a/src/logiciels/subversion/index.tml b/src/logiciels/subversion/index.tml new file mode 100644 index 0000000..182d272 --- /dev/null +++ b/src/logiciels/subversion/index.tml @@ -0,0 +1,261 @@ + + + + ++Le logiciel Subversion permet de gérer l'évolution de projets et leurs +différentes versions. Si vous connaissez RCS ou CVS, Subversion entend leur +succéder et en moderniser le principe. +
+ ++Pour gérer l'évolution de projets (qu'il s'agisse de fichiers TeX, de +programmes ou de scripts en n'importe quel langage, etc.), il faut +d'abord, comme sous CVS, créer un répertoire de dépôt. +
+ ++bireme ~ $ mkdir svn +bireme ~ $ svnadmin create svn +bireme ~ $ ++ +
+Vous avez maintenant un répertoire de dépôt prêt à recevoir vos projets. +
+ + +
+Pour ajouter des projets à Subversion, allez d'abord dans le répertoire
+contenant les fichiers du projet (s'ils existent). Dans notre exemple,
+disons que vous avez un répertoire nommé mon_projet
, qui
+contient un seul fichier, intitulé fichier1
.
+
+bireme ~ $ svn import mon_projet file:///users/promo/section/login/svn -m "version0" +Adding mon_projet/fichier1 + +Committed revision 1. +bireme ~ $ ++ +
+Maintenant, vous avez : +
+ ++Vous pouvez déposer autant de projets que vous le désirez dans votre +répertoire de dépôt. +
+ + ++Il ne vous reste plus qu'à créer un (ou plusieurs) répertoire(s) de +travail : +
+ ++bireme ~ $ svn checkout file:///users/promo/section/login/svn svn-travail +A mon_projet/fichier +Checked out revision 1. +bireme ~ $ ++ +
+Évidemment, vous pouvez travailler sur un projet même si le répertoire +de dépôt n'est pas chez vous. Pour cela, tapez simplement l'URL du +projet. En voici quelques exemples : +
+ ++bireme ~ $ svn checkout http:///adresse/repertoire/projet svn-travail +bireme ~ $ svn checkout https:///adresse/repertoire/projet svn-travail +bireme ~ $ svn checkout svn:///adresse/repertoire/projet svn-travail +bireme ~ $ svn checkout svn+ssh:///adresse/repertoire/projet svn-travail ++ +
+Vous récoltez ainsi tous les fichiers du projet. Modifiez-les de la +façon habituelle, typiquement avec un éditeur de texte. +
+ + ++Pour mettre à jour votre répertoire de travail, utilisez la +commande : +
+ +
+bireme ~ $ svn update
+
+
++ou bien, si vous ne voulez mettre à jour qu'un nombre limité de +fichiers : +
+ +
+bireme ~ $ svn update fichier1 fichier2 etc.
+
+
++Apportez les modifications que vous voulez sur les fichiers de votre +répertoire de travail. +
+ + +
+Pour ajouter des fichiers, commencez par les créer, comme à
+l'accoutumée. Par exemple, éditez le fichier fichier2
et
+remplissez-le (ou non). Ensuite, tapez :
+
+bireme ~ $ svn add fichier2
+
+
+
+Cette commande avertit Subversion qu'il devra prendre en compte ce
+nouveau fichier. Le fichier sera ajouté au dépôt Subversion la prochaine
+fois que vous taperez svn commit
. Attention ! Si
+vous ne tapez pas svn commit
, le fichier ne sera pas
+ajouté au dépôt !
+
+Pour retirer des fichiers de Subversion, utilisez la commande : +
+ +
+bireme ~ $ svn delete fichier
+
+
+
++Quand vous avez terminé d'apporter vos modifications, vous pouvez les +distribuer : +
+ +
+bireme ~ $ svn commit
+
+
++ou bien, si vous ne voulez distribuer qu'un nombre limité de +fichiers : +
+ +
+bireme ~ $ svn commit fichier1 fichier2 etc.
+
+
+
++Vous pouvez consulter l'historique d'un fichier : +
+ +
+bireme ~ $ svn log fichier
+
+
++mais aussi de tous les fichiers d'un projet : +
+ +
+bireme ~ $ svn log
+
+
+
++Vous pouvez comparer deux versions d'un fichier, ici la première et la +deuxième versions : +
+ +
+bireme ~ $ svn diff --revision 1:2 fichier
+
+
++Vous pouvez aussi comparer, par exemple, la dernière version distribuée +d'un fichier avec la précédente : +
+ +
+bireme ~ $ svn diff --revision PREV:COMMITTED fichier
+
+
+
++Si vous regrettez les modifications apportées à un fichier, tapez : +
+ +
+bireme ~ $ svn revert fichier
+
+
++Le fichier reviendra à son état antérieur. +
+ ++Pour en savoir plus sur Subversion, consultez : +
+ +svn help
.Ils sont grands, ils sont beaux, ils sont forts, ils sont +Tuteurs. Mais qui sont-ils vraiment ? Les Tuteurs sont actuellement 40, +dont 3filles et 6littraires (dont 2filles littraires; faut-il +galement rappeler que la fondatrice des tuteurs est une fille +littraire?).
+ +Seulement? Il ne tient qu' vous de faire changer a: si vous vous +sentez l'toffe d'un tuteur, crivez-nous pour candidater! Rendez-vous +sur notre page +recrutement pour plus de renseignements.
+ +Remarque: toutes les photographies de tuteurs ne figurent pas sur +cette page.
+ +EOF + +my $pieddepage = << 'EOF'; + + + + + +EOF + +print $entete; +affiche_tableau; +print $pieddepage; +} + + +################################################################ +# Construit et affiche le tableau des tuteurs +################################################################ + +sub affiche_tableau () { + print << "EOF"; + Il s'agit d'un ordinateur (un serveur) situé à l'École normale
+supérieure de Paris sur lequel les anciens élèves de cette école ainsi que
+les anciens magistériens et pensionnaires étrangers peuvent avoir un compte
+informatique.
+Toute personne ayant eu un compte sur clipper a le droit d'avoir un compte
+sur phare.
+
+Des pages sur
+www.normalesup.org/phare/
+décrivent précisément les services offerts par phare, comment obtenir un
+compte, etc. Voir aussi
+la page du SPI sur la fermeture des comptes.
+Connectez-vous sur clipper en utilisant
+ssh (Linux et MacOS X)
+ou Putty
+(Windows). Sous MacOS, il faut aller dans Finder > Applications >
+Utilitaires > Terminal) pour ouvrir le terminal où taper la commande.
+Commencez par rediriger votre
+courrier entrant vers phare. On rappelle que la commande que vous
+devez taper, c'est ce qui suit le $
.
+Si la boîte aux lettres de votre compte est présente dans
+/var/mail
, sauvegardez votre boîte de réception sur votre compte en
+remplaçant dans ce qui suit login
par votre login (clipper) :
+ sas ~ $ rsync -av /var/mail/login Mail/boite_clipper
+
+
+Si le fichier /var/mail/login
n'existe pas, faites :
+ sas ~ $ rsync -av /d/login Mail/boite_clipper
+
+
+Vérifiez la taille totale de vos messages, et en particulier que vous + ne dépassez pas votre quota sur phare: +
+ +
+sas ~ $ du -sh Mail
+187M Mail
+
+
+
+Vous pouvez maintenant transférer vos mails: +
+ +
+sas ~ $ rsync -vaczP Mail login_phare@phare.normalesup.org:
+
+
+
+Vous pouvez, en quelque minutes, transférer tous vos fichiers qui +s'accumulent depuis de longues années sur clipper, vers phare. Y compris votre page web.
+ +Avant tout transfert, songez à faire le ménage. Le plus important, c'est +de supprimer les fichiers inutiles et encombrants.
+ + La méthode que nous vous conseillons consiste à placer d'abord les
+ fichiers que vous voulez transférer dans un répertoire
+ « vers_phare
». Cette méthode a plusieurs avantages,
+ notamment de vous permettre de vérifier que les fichiers que vous voulez
+ déplacer n'excède pas votre quota, et de ne pas transférer vos fichiers de
+ configuration, qui sont spécifiques à sas.eleves.
+
Connectez-vous sur sas.eleves comme pour transférer vos mails (cf
+ ci-dessus). Créez le répertoire « vers_phare
»:
+sas ~ $ mkdir vers_phare
+
+
+ Utilisez les commandes mv
et rm
pour déplacer
+ et effacer des fichiers ainsi que les commandes ls
+ et du
pour obtenir des informations.
+
Déplacer des fichiers et des répertoires avec mv
:
+sas ~ $ mv maitrise vers_phare/ +sas ~ $ mv cubiques2.pdf vers_phare/ ++ +
Vérifier que vous ne dépassez pas votre quota sur phare. Attention, il + faut retirer l'espace occupé par les messages que vous avez transférés + lors de l'étape précédente à votre quota.
+ +
+sas ~ $ du -sh vers_phare
+407M vers_phare
+
+
+ Transférer votre répertoire vers_phare
:
+
+sas ~ $ rsync -vaczP vers_phare/ login_phare@phare.normalesup.org:depuis_sas
+
+
+Vous pouvez utiliser WinSCP ou scp pour transférer vos fichiers sur + votre machine personnelle. C'est pratique pour pouvoir ouvrir rapidement + un fichier afin de décider de son sort. WinSCP a aussi l'avantage de vous + permettre de déplacer ou effacer des fichiers en mode graphique.
+ + Lancez WinSCP (cf. la documentation sur
+WinSCP) sur votre machine personnelle, et cliquez sur l'onglet « Size ». Il faut en priorité effacer (touche
+F8
) les fichiers les plus gros, et ce dans tous les
+sous-répertoires. Attention, le dossier /Mail contient vos archives de
+courrier électronique ! La touche F9
permet de savoir, entre
+autre, la taille totale d'un dossier.
Dans un deuxième temps, déplacez tous les fichiers que vous voulez
+transférer vers un répertoire « vers_phare
».
Avant de transférer vos fichier vers phare, il faut contrôler que le
+répertoire vers_phare
ne dépasse pas votre quota.
+En utilisant du -ak
et le en combinant avec d'autres commandes, vous pouvez savoir précisément quels sont les fichiers
+et les répertoires qui prennent le plus de place sur votre compte. Le résultat sera donné en ordre décroissant, et la
+taille en kilo-octets. Ce paragraphe est un bref résumé, il existe une page avec
+plus de détails sur la commande du
.
+sas ~ $ du -ak | sort -nr | head -10
+98280 .
+22007 ./www
+1658 ./Mail
+9637 ./www/hist
+5005 ./www/hist/maitrise
+
+ls
+ qui liste les fichiers du répertoire courant. L'option
+-lh
(long, human readable)
+permet d'avoir la taille des fichiers, et la date de modification. Cette liste peut-être triée selon divers
+critères.
+
+ls -lhS
pour trier par taille. Commencez par trier le haut de la liste,
+les fichiers les plus encombrants.
+
+sas ~ $ ls -lhS |head -30
+total 56M
+-rw-r--r-- 1 conduche math98 7.0M Sep 21 2005 0508_grand.zip
+-rw-r--r-- 1 conduche math98 2.8M Feb 25 2003 chat.png
+-rw-r--r-- 1 conduche math98 2.5M Jul 14 2006 cours.pdf
+-rw-r--r-- 1 conduche math98 2.1M Feb 12 17:31 algebre.pdf
+(...)
+
+
+ls -lht
pour trier par date: est-ce que vos fichiers datant d'il y a 4
+ans sont toujours utile ?
++sas ~ $ ls -lht +(...) +-rw-r--r-- 1 conduche math98 868 Nov 26 2002 linux-install.dvi +-rw-r--r-- 1 conduche math98 1.1K Nov 26 2002 linux-install.tex +-rw-r--r-- 1 conduche math98 24K Oct 25 2002 555239470.pdf +sas ~ $ ++Les fichiers les plus anciens sont en bas de la liste. + +Ce paragraphe était un bref résumé, il existe une page avec +plus de détails sur la commande
ls
.
+rm
.
++sas ~ $ rm 0508_* +rm: remove regular file `0508.zip'? y +rm: remove regular file `0508_grand.zip'? y +sas ~ $ ++Le caractère
*
sert de caractère générique.
+Il est fortement déconseillé de transférer vos fichiers de configuration +(fichiers de la forme .*). Si vous voulez quand même faire quelques +transferts — par exemple votre carnet d'adresse, ou la liste des +messages lus dans forum — consultez +la page +tuteurs sur le sujet.
+ + + + diff --git a/src/ressources/phare/phare-config.tml b/src/ressources/phare/phare-config.tml new file mode 100644 index 0000000..52cafba --- /dev/null +++ b/src/ressources/phare/phare-config.tml @@ -0,0 +1,228 @@ + + + + +sas
vers Phare
Pour transférer vos fichiers de configuration (fichiers ou répertoires du type .blablarc
ou simplement .blabla
), il est
+conseillé de procéder au cas par cas, les logiciels sur phare.normalesup.org
n'étant pas forcément totalement compatibles avec ceux de
+sas
.
Pour que sas
ne vous redemande pas votre mot de passe à chaque transfert, il est vivement conseillé de
+configurer sa connexion ssh et d'installer des
+clefs. Dans notre cas, la machine locale est phare
, et la machine distante sas.eleves
.
Certains fichiers contiennent simplement des données personnelles, comme la liste d'adresse de votre carnet d'adresse, la liste des messages lus dans forum, etc... +Il peut être utile de récupérer ces fichiers, plutôt que d'avoir à reconstituer les fichiers à la main.
+ +pine
Les fichiers .addressbook
et .addressbook.lu
+contiennent la liste de vos contacts, et le fichier .signature
+votre signature automatique. Pour les récupérer, tapez les commandes suivantes
+
+phare ~ $ rsync -vaczP sas.eleves:.addressbook\* . +receiving file list ... +2 files to consider +.addressbook + 2019 100% 246.46kB/s 0:00:00 (xfer#1, to-check=1/2) +.addressbook.lu + 4166 100% 508.54kB/s 0:00:00 (xfer#2, to-check=0/2) + +sent 56 bytes received 1929 bytes 3970.00 bytes/sec +total size is 6185 speedup is 3.12 +phare ~ $ rsync -vaczP sas.eleves:.signature\* . +receiving file list ... +1 file to consider + +sent 16 bytes received 106 bytes 244.00 bytes/sec +total size is 60 speedup is 0.49 +phare ~ $ ++ +
Les autres réglages de pine sont dans le fichier .pinerc
qu'il est déconseillé de récupérer. Les modifications doivent être faites à la main. Si vous voulez quand même le récupérer, à vos risques et périls, regardez la section suivante.
mutt
Le fichier .muttalias
+contient la liste de vos contacts, et le fichier .signature
+votre signature automatique. Pour les récupérer, tapez les commandes suivantes
+
+phare ~ $ rsync -vaczP sas.eleves:.muttalias . +receiving file list ... +1 file to consider +.muttalias + 465 100% 454.10kB/s 0:00:00 (xfer#1, to-check=0/1) + +sent 36 bytes received 179 bytes 430.00 bytes/sec +total size is 465 speedup is 2.16 +phare ~ $ rsync -vaczP sas.eleves:.signature\* . +receiving file list ... +1 file to consider + +sent 16 bytes received 106 bytes 244.00 bytes/sec +total size is 60 speedup is 0.49 +phare ~ $ ++ +
Les autres réglages de mutt sont dans le fichier .muttrc
qu'il
+est déconseillé de récupérer. Les modifications doivent être faites à la main.
+Si vous voulez quand même le récupérer, à vos risques et périls, regardez la section suivante.
Lorsque vous lisez des groupes de discussion avec flrn (ce qui est la situation par défaut), celui-ci stocke différentes informations (groupes auxquels vous êtes abonnés, messages lus) dans des fichiers de configuration. On peut avoir envie de les récupérer. Sur phare
, tous les fichiers de configuration de flrn sont rangés dans le répertoire $HOME/.flrn/
. Sur votre compte sas
, si vous n'avez pas de répertoire .flrn
, les fichiers sont dans votre répertoire $HOME
.
Les commandes suivantes récupèrent la liste des messages lu dans tous les newsgroups lu avec flrn. Si vous lisez aussi les dépêches AFP ou usenet avec flrn, ces listes là seront aussi récupérées.
+ ++phare ~/.flrn/ $ rsync -vaczP sas.eleves:.flnewsrc\* . +receiving file list ... +2 files to consider + +sent 32 bytes received 155 bytes 41.56 bytes/sec +total size is 7094 speedup is 37.94 +phare ~/.flrn $ ++ + + +
Il faut transférer le fichier où ce logiciel stocke les listes de messages lus et les groupes auxquels vous êtes abonnés. Vous pouvez chercher ce fichier avec ls -a
ou son nom sur le web.
Si vous avez modifié votre fichier .zshrc
sur sas
pour rajouter des raccourcis — appelés « alias » —, il faut que vous alliez les récupérer manuellement, par copier/coller. Ils sont à recopier dans votre nouveau .zshrc
, sur phare
. Il faut bien entendu vérifier que les logiciels appelés existent toujours, et ne pas mettre de chemins absolus.
Le fichier .zshenv
sur phare
définit plusieurs
+variable $EDITOR
. Celle qui peut avoir été modifiée est la variable $EDITOR
qui règle votre éditeur de texte par défaut (dans forum, ou mutt). Pour vérifier, on utilise la commande echo
.
+sas ~ $ echo $EDITOR
+/usr/local/util/bin/emacs -nw
+
+
+phare ~ $ echo $EDITOR
+nano-tool
+
+
+Dans ce cas, vous éditez le fichier .zshenv
sur phare
pour mettre votre éditeur préféré.
Vous pouvez récupérer sans aucun problèmes les fichiers
+.quialias
,
+.plan
,
+.project
.
+
Les conseils de cette rubrique s'adressent à des utilisateurs « avancés ». Rapatriez ces fichiers uniquement si vous savez ce que vous faites.
+Phare
n'est pas organisé de la même façon que sas
. En
+particulier, certaines commandes ne sont pas « rangées » au même endroit de
+l'arborescence des fichiers. Si vous avez parmis vos fichiers personnels
+des scripts faisant appel à des commandes par leur chemin, il faudra
+éventuellement corriger ce chemin pour le mettre en conformité avec le
+nouveau système.
Si vous voulez récupérer toute votre configuration de flrn, peaufinée au fil des années, il faut d'abord supprimer la configuration par défaut sur phare
:
+phare ~ $ rm -rf .flrn
+
+
+Puis, s'il y a un répertoire $HOME/.flrn/
sur sas
, vous transférez celui-ci sur phare
. Sinon
+vous transférez tous les fichiers .flnews*
et .flrn*
présents sur sas
.
Il y a quelques modification à faire dans le .flrnrc
:
set default_domain normalesup.org
pour que le sender soit bien phare.normalesup.org
, et que vous puissiez donc supprimer vos messages.set alternate "[prénom nom]"
pour que flrn reconnaisse vos anciens message comme étant de vous/usr/local/util/packages/flrn/lib/flrn/slang_yaf.sl
par
+/opt/flrn-20030409/share/flrn/slang_yaf.sl
.
+.pinerc
Ce fichier contient les réglages de pine.
+ ++phare ~ $ rsync -vaczP sas.eleves:.pinerc . +receiving file list ... +1 file to consider +.pinerc + 19790 100% 18.87MB/s 0:00:00 (xfer#1, to-check=0/1) + +sent 36 bytes received 6582 bytes 1890.86 bytes/sec +total size is 19790 speedup is 2.99 +phare ~ $ ++ + +
Exemple:
+J'utilisais fetchmail sur sas
pour rapatrier mon mail d'un serveur
+extérieur à l'ENS, et ceci avec un fichier de configuration .fetchmailrc
+dans lequel une ligne faisait appel à le commande /bin/procmail
.
+Or sur phare
, l'appel fetchmail -f .fetchmailrc
me renvoie un
+message d'erreur: /bin/procmail: No such file or directory
Il faut donc que je trouve où se trouve où se trouve procmail sur phare
.
+Pour ce faire, j'utilise la commande which
:
+phare ~ $ which procmail +/usr/bin/procmail +phare ~ $ ++ +
Il faut donc que je rajoute /usr
au chemin
+vers la commande procmail dans mon fichier .fetchmailrc
.
.zshrc
Le .zshrc
par défaut est fait pour donner un environnement le plus semblable possible à celui de sas
. Mais comme phare
n'est pas organisé comme sas
, ce fichier est — d'un point de vue technique — assez différent de celui présent sur sas
. Il est donc déconseillé de le rapatrier. Mieux vaut reprendre vos modifications personnelles et adapter au nouveau fichier.
.procmailrc
Ce fichier gère le tri de votre courrier électronique. La moindre fausse manoeuvre peut être lourde de conséquence. C'est généralement un fichier assez court: il est conseillé d'en recréer un sur phare
.
Les fichiers de configuration par défaut sont dans /etc/skel/
. Pour récupérer — par exemple — votre fichier .zshrc
il suffit donc de taper
+phare ~ $ cp /etc/skel/.zshrc . +cp: overwrite `./.zshrc'? y +phare ~ $ ++ + + + diff --git a/www/search.tml b/src/search.tml similarity index 100% rename from www/search.tml rename to src/search.tml diff --git a/www/theorie/encodages.tml b/src/theorie/encodages.tml similarity index 100% rename from www/theorie/encodages.tml rename to src/theorie/encodages.tml diff --git a/www/theorie/formats.tml b/src/theorie/formats.tml similarity index 100% rename from www/theorie/formats.tml rename to src/theorie/formats.tml diff --git a/src/theorie/images.ps.gz b/src/theorie/images.ps.gz new file mode 100644 index 0000000..c49ecd8 Binary files /dev/null and b/src/theorie/images.ps.gz differ diff --git a/www/theorie/index.tml b/src/theorie/index.tml similarity index 100% rename from www/theorie/index.tml rename to src/theorie/index.tml diff --git a/www/theorie/internet.tml b/src/theorie/internet.tml similarity index 100% rename from www/theorie/internet.tml rename to src/theorie/internet.tml diff --git a/www/theorie/jargon.tml b/src/theorie/jargon.tml similarity index 100% rename from www/theorie/jargon.tml rename to src/theorie/jargon.tml diff --git a/www/theorie/reseaux.tml b/src/theorie/reseaux.tml similarity index 100% rename from www/theorie/reseaux.tml rename to src/theorie/reseaux.tml diff --git a/src/tuteurs.css b/src/tuteurs.css new file mode 100644 index 0000000..151393e --- /dev/null +++ b/src/tuteurs.css @@ -0,0 +1,173 @@ +body { + background: #FFFFFF; + color: #000000; + margin: 0 0 0 0; + padding: 0; +} +div.corps { + background: #FFFFFF; + margin: 0 0 0 9em; + border-left: solid 2px #60B0B0; + padding: 1ex 1ex 1ex 1ex; +} +div.navigation { + float: left; + width: 10.6em; + padding: 2ex 0.3em; + font-family: sans-serif; + font-size: 80%; + /*position: fixed;*/ +} +div.navigation h1 { + font-size: 90%; + margin: 0; +} +ul.arbre, ul.menu { + padding-left: 0.7em; + list-style: none; + margin: 0; +} +ul.arbre a.ici { + font-weight: bold; +} +table.sommaire { + /*background: #FFFFFF; + border: outset 2px #A0A0A0; + width: auto;*/ + margin: 0 auto; +} +table.sommaire ul { + padding: 0 1em 0 2em; + font-family: sans-serif; +} +div.resume { + margin: 1ex 5%; + font-family: sans-serif; +} +a:link { + text-decoration: none; + color: #0000FF; +} +a:visited { + text-decoration: none; + color: #6000FF; +} +a:link:hover, a:visited:hover { + color: #4040FF; +} +a.actuel { + font-weight: bold; +} +a.externe { text-decoration: underline; } +p { + margin: 0 0 1ex 0; + text-align: justify; + text-indent: 2em; +} +p.continue { + text-indent: 0; +} +p.auteur { + font-weight:bold; + text-align:right; +} +p.centre { + text-align: center; +} +h1 { + text-align: center; + font: bold 240% sans-serif; + margin: 1ex 2em 2ex 2em; + padding: 0.1ex; +} +h2 { + font: bold 192% sans-serif; + margin: 2ex 0 1ex 0; +} +h3 { + font: bold 144% sans-serif; + margin: 2ex 0 1ex 0; +} +div.encadre { + background: #FFFFD0; + border: solid 2px #C0C040; + margin: 2.5ex 12%; + padding: 0 1em; +} +div.attention { + background: #FFC0C0; + border: solid 2px #FF0000; + margin: 3ex 20%; + padding: 0.5ex 1em; +} +div.attention h1 { + font-size: 120%; + margin: 0; + padding: 0 1em; +} +pre { + background: #FFF9BF; + border: solid 1px #E0D8A0; + margin: 1.5ex 5%; + padding: 0.5ex; + text-align: left; +} +div.encadre pre, div.attention pre { + background: transparent; + border-style: none; +} +div.ens { + border-right: solid 16px #C0C0FF; + margin-right: 2em; + padding: 1ex 1em 1ex 0; +} +div.metainformation { + background: #D0D0D0; + margin: 8ex 0.5em 0 0.5em; + border: solid 1px #B0B0B0; + padding: 0.5ex; + font-size: 80%; + font-family: sans-serif; +} +span.prompt { + font-weight: bold; + text-decoration: underline; +} +img.danger { + vertical-align: -30%; + padding: 0 0.5em; + margin: 0; +} +img.ens { + float: left; + margin: 0 0.5em 0 0; + padding: 0; +} +div.illustration { + text-align: center; +} +table.tableau { + border: solid 2px #000000; + border-spacing: 0; + margin: 2ex auto; +} +table.tableau td, table.tableau th { + border: solid 1px #000000; + margin: 0; + padding: 0.7ex; +} +dt { + font-weight: bold; + padding-bottom: .5em; +} +dd { + padding-bottom: 1.5em; +} +@media screen { + body { + background: #A0D0D0; + } + div.corps { + background: #F8F8F0; + } +} diff --git a/www/unix/accents-base.tml b/src/unix/accents-base.tml similarity index 100% rename from www/unix/accents-base.tml rename to src/unix/accents-base.tml diff --git a/www/unix/accents.tml b/src/unix/accents.tml similarity index 100% rename from www/unix/accents.tml rename to src/unix/accents.tml diff --git a/src/unix/acces.png b/src/unix/acces.png new file mode 100644 index 0000000..eb905bf Binary files /dev/null and b/src/unix/acces.png differ diff --git a/www/unix/aide.tml b/src/unix/aide.tml similarity index 100% rename from www/unix/aide.tml rename to src/unix/aide.tml diff --git a/www/unix/archives.tml b/src/unix/archives.tml similarity index 100% rename from www/unix/archives.tml rename to src/unix/archives.tml diff --git a/www/unix/chercher.tml b/src/unix/chercher.tml similarity index 100% rename from www/unix/chercher.tml rename to src/unix/chercher.tml diff --git a/www/unix/clavier.tml b/src/unix/clavier.tml similarity index 100% rename from www/unix/clavier.tml rename to src/unix/clavier.tml diff --git a/www/unix/communiquer.tml b/src/unix/communiquer.tml similarity index 100% rename from www/unix/communiquer.tml rename to src/unix/communiquer.tml diff --git a/src/unix/config/2002/bureau.png b/src/unix/config/2002/bureau.png new file mode 100644 index 0000000..98d32de Binary files /dev/null and b/src/unix/config/2002/bureau.png differ diff --git a/src/unix/config/2002/configure.tml b/src/unix/config/2002/configure.tml new file mode 100644 index 0000000..59ee16d --- /dev/null +++ b/src/unix/config/2002/configure.tml @@ -0,0 +1,23 @@ + + + + +
configure
À une certaine époque, il existait un programme qui permettait de +récupérer certaines parties de la config' conscrits et de modifier +certains paramètres. Actuellement, ce programme ne fonctionne plus !
+ + + + + + diff --git a/src/unix/config/2002/ecran-grand.png b/src/unix/config/2002/ecran-grand.png new file mode 100644 index 0000000..f98a8c3 Binary files /dev/null and b/src/unix/config/2002/ecran-grand.png differ diff --git a/src/unix/config/2002/ecran.png b/src/unix/config/2002/ecran.png new file mode 100644 index 0000000..ff09717 Binary files /dev/null and b/src/unix/config/2002/ecran.png differ diff --git a/src/unix/config/2002/index.tml b/src/unix/config/2002/index.tml new file mode 100644 index 0000000..65b6337 --- /dev/null +++ b/src/unix/config/2002/index.tml @@ -0,0 +1,332 @@ + + + + +Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
+ + ++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés proposent aux nouveaux +pour leurs premiers pas avec les stations Unix. +
+ +La config conscrits est à l'origine conçue par Éric Brunet, et +entretenue par les gourous (les +administrateurs élèves). Plusieurs personnes y ont contribué : Florent +Hivert, Olivier Verzelen... et notamment Nicolas George cette année.
+ ++Voici une présentation de votre écran tel qu'il apparaît juste après que +vous vous loguiez : +
+ +Vous pouvez taper des commandes dans les fenêtres terminal. Celles-ci
+affiche une invite (ou «prompt» en anglais) avec le nom de la machine.
+Validez vos commandes par un retour à la ligne (Enter). Dans cet exemple,
+on est sur la machine drakkar
, et on tape fortune
:
+drakkar ~ $ fortune [Enter] +Don't hate yourself in the morning -- sleep till noon. +drakkar ~ $ ++ +
C'est certes une façon peu engageante de dialoguer avec l'ordinateur, +mais l'interface graphique des stations n'est pas assez fournie pour vous +permettre de vous en passer totalement. Il faudra notamment y avoir +recours pour changer votre +mot de passe.
+ + +La quasi-totalité des fenêtres que vous ouvrez comporte une barre de +titre. elle sert de «poignée» pour la déplacer. En cliquant sur les +différents boutons de par et d'autre de la barre de titre, vous +découvrirez diverses fonctions (déplacer, redimensionner, iconifier...). +Pour en savoir davantage, nous vous conseillons de faire les exercices sur la config +conscrits.
+ + ++Chacun de ces boutons décorés d'un petit dessin lance un programme lorsqu'on +clique dessus : +
+ ++ | Pour se déloguer. Il faut tenir le bouton de la souris appuyé et confirmer +en cliquant sur «Oui». | +
+ | Lance le logiciel de courrier. Par défaut, c'est pine . On
+quitte en tapant «q». |
+
+ | Lance un éditeur de texte. Par défaut, celui de la config conscrits
+est nano . |
+
+ | Lance xfm , un gestionnaire de fichiers à la souris. |
+
+ | Lance une nouvelle grande fenêtre terminal. | +
+ | Permet de détruire une fenêtre, quand plus rien d'autre ne permet de la +quitter. Ça ne sert donc qu'en dernier recours... | +
+ | Lance une calculatrice utilisable avec la souris. On la quitte en +cliquant sur le bouton éclair. + | +
+ | Ce bouton ouvre le logiciel Mozilla sur une page d'aide du site des +tuteurs. | +
+ | Lance le forum des élèves (messagerie interne à l'École). On passe au +message suivant en appuyant sur la barre d'espace et on quitte en +tapant «q». | +
+ | Lance un logiciel de news. Par défaut, c'est knews . On quitte
+en cliquant sur «Quitter». |
+
+ | Lance Mozilla. On quitte en sélectionnant «Exit» dans le menu +«File». | +
+ | Déroule le menu du fond, avec une sélection de logiciels. | +
+ | Vous pouvez faire apparaître la liste des fenêtres en cliquant dans +le fond d'écran avec le bouton de gauche. +Chaque ligne représente alors une des fenêtres +que vous avez ouvertes. En cliquant dessus, vous ramenez la fenêtre +correspondante au premier plan; cela évite d'avoir à bouger toutes les autres +pour la retrouver. | +
C'est une fenêtre terminal un peu spéciale, car elle affiche les +messages d'erreur du système et aussi des informations en provenance +du réseau : le menu du pot, les demandes de connexion par talk, les messages de l'imprimante, +etc.
+ ++ | C'est un modèle réduit de l'écran et des fenêtres qu'il comporte. Son +intérêt consiste en le fait que l'écran réel n'occupe qu'un sixième de +l'espace (la case en haut à gauche), et en cliquant sur l'une des cinq autres +pages on obtient un écran vide dans lequel on peut lancer d'autres fenêtres. +À l'aide du bouton du milieu de la souris, on peut déplacer les modèles +réduits de fenêtres sur le plan du bureau, et ainsi disposer d'un bureau +virtuel qui fait six fois la taille de l'écran ! + |
+Qu'en dire, sinon qu'elle est digitale parce que les montres à aiguille sont +anti-technologiques donc proscrites ? De toute façon, moins c'est beau, +mieux c'est : c'est le principe directeur de la config conscrits...
+ ++Le menu propose divers logiciels, pour travailler comme pour jouer. Il permet +aussi de lancer de nouvelles fenêtres terminal, ainsi que de se déloguer. Pour +une présentation de l'ensemble du menu, allez consulter la page sur Le menu de la config conscrits. +
+ +Lorsque vous cliquez sur le fond gris de l'écran avec le bouton du +milieu ou de droite, vous faites apparaître le menu. Pour le faire +disparaître, recliquez dans le fond d'écran.
+ + ++Dans toute cette section, on suppose que vous cliquez avec le bouton +gauche de la souris, sauf cas mentionnés. Nous résumons ici les +points essentiels concernant l'utilisation de la souris. Ses possibilités sont +cependant beaucoup plus riches. +
+ ++Déplacez la souris sur l'écran : vous remarquez que les cadres des +fenêtres changent de couleur. La fenêtre dans laquelle se trouve le pointeur +de la souris a son cadre coloré en rouge, cela indique qu'il s'agit de la +fenêtre active. C'est elle qui reçoit les touches que vous tapez au +clavier (essayez !), contrairement à ce qui se passe sous Windows et +MacOS. +
+ ++Les débuts sont pénibles (surtout quand quelqu'un déplace malencontreusement +votre souris...), mais c'est beaucoup plus pratique une fois qu'on a +l'habitude : d'un rapide mouvement de souris, vous passez d'un programme +à l'autre et l'ordre d'empilement des fenêtres ne change que si vous en +décidez ainsi. +
+ ++Si vous avez déjà utilisé un ordinateur, vous pouvez passer directement à la +section suivante. Sinon, lancez un logiciel quelconque en cliquant par exemple +sur l'icône «news» dans la boîte à boutons, il nous +servira d'exemple pour apprendre quelques opérations simples à effectuer à +l'aide de la souris : +
+ +Front
du clavier
+(si vous êtes sur une station Sun).Pour vous familiariser avec les boutons de la barre de titre des +fenêtres, allez faire les exercices sur la config +conscrits.
+ + + + + + + diff --git a/src/unix/config/2002/liste.png b/src/unix/config/2002/liste.png new file mode 100644 index 0000000..5601c4e Binary files /dev/null and b/src/unix/config/2002/liste.png differ diff --git a/src/unix/config/2002/menu.tml b/src/unix/config/2002/menu.tml new file mode 100644 index 0000000..d921722 --- /dev/null +++ b/src/unix/config/2002/menu.tml @@ -0,0 +1,378 @@ + + + + ++La config conscrits propose un menu, accessible soit par un bouton en haut de +l'écran, soit en cliquant dans le fond d'écran. Il propose divers logiciels et +fonctionnalités. Pour leur utilisation, reportez-vous au tableau d'orientation +disponible en cliquant sur le bouton «Info» de la barre de navigation. +
+ + +Terminaux | +Alpha | +Lance une nouvelle fenêtre Alpha, Beta ou Gamma, ou une +nouvelle grande fenêtre. | +Se quitte en tapant exit ou
+^D . |
+
+
---|---|---|---|
Beta | +|||
Gamma | +|||
Grande fenêtre | +|||
Terminal Unicode | +Terminal dans lequel on peut afficher et taper des caractères +Unicode. | +||
Gestionnaire de fichiers | +Lance le logiciel XFTree , qui vous permet de gérer vos fichiers
+à la souris. |
+Se quitte en sélectionnant «Quit» dans le menu «File» et en +confirmant. | +|
Internet | +Netscape | +Navigateur Netscape. | Se quitte en sélectionnant «Exit» dans +le menu «File» |
Pine | +Logiciel de courrier électronique pine . | Se quitte en
+tapant q et en confirmant. |
+|
Mutt | +Logiciel de courrier électronique mutt . | Se quitte en
+tapant q . |
+|
Forum | +Logiciel pour lire le forum de discussions internes à l'ENS. | +||
KNews | +Lecteur graphique de news (groupes de discussions mondiaux). | Se quitte en +cliquant sur «Quitter». | +|
slrn | +Lecteur de news en mode texte. | Se quitte en tapant q et en
+confirmant. |
+|
trn | +Lecteur de news en mode texte. | Se quitte en tapant
+q . |
+|
Flrn | +Lecteur de news en mode texte (celui qui sert à lire forum). | +||
Éditeurs | +Pico | +Un éditeur quasi-identique à l'éditeur par défaut de la config conscrits. | Se quitte en tapant
+^X (eXit). |
+
Joe | +Éditeur en mode texte. | Se quitte en tapant ^KX
+(eXit). |
+|
Vim | +Éditeur puissant mais peu simple d'utilisation. | Se quitte en tapant
+:wq (Write Quit). |
+|
Emacs | +Éditeur puissant et graphique. | +Se quitte en sélectionnant «Exit» dans le +menu «File». | +|
XEmacs | +Version pas vraiment plus jolie de Emacs. | ||
NEdit | +Éditeur graphique et simple. | ||
Bureautique | +Acrobat Reader | +Visualisateur de fichiers PDF. | +|
Asterix | +Suite bureautique Applix Ware. | Se quitte en sélectionnant «Exit» dans le +menu «File», et «Exit all windows» dans le menu «File» du lanceur. | +|
Star Office | +Suite bureautique StarOffice. | Se quitte en sélectionnant «Exit» dans le +menu «Start». | +|
LaTeX | +xlatex | +Interface graphique pour gérer la création de documents avec LaTeX. + | Se +quitte en cliquant sur «Quit». | +
Lyx | +Interface graphique pour LaTeX. | Se quitte en sélectionnant «Exit» dans le +menu «File». | +|
xdvi | +Visualisateur de fichiers DVI. | Se quitte en tapant q . |
+|
gv | +Visualisateur PostScript. | Se quitte en sélectionnant «Quit» dans le menu +«File». | +|
Graphisme | +XV | +Visualisateur d'images. | Se quitte en tapant q . |
+
xfig | +Logiciel de dessin vectoriel. | Se quitte en cliquant sur «Quit». | +|
xpaint | +Logiciel de dessin simple. | Se quitte en sélectionnant +«Quit» dans le menu «File». | +|
gimp | +Logiciel de retouche d'images. | ||
Science | +XMaple | +Logiciel de calcul formel. | Se quitte en sélectionnant «Exit» dans le menu +«File». | +
XMupad | +Logiciel de calcul formel. | Se quitte en cliquant sur «Quit». | +|
Scilab | +Logiciels de calcul scientifique. | Se quitte en sélectionnant «Exit» dans +le menu «File». | +|
Matlab | +Logiciels de calcul scientifique. | Se quitte en tapant
+exit . |
+|
Utilitaires | +Calculatrice | +Calculatrice graphique. | Se quitte en tapant q . |
+
Loupe | +Loupe. | ||
XEyes | +Yeux qui suivent du regard le curseur de la souris. | Ne se quitte +pas. | +|
Agenda | +Calendrier-agenda. | Se quitte en cliquant sur «Q». | +|
Jeux | +Xletters | +Un jeu pour s'entraîner à taper au clavier. | Se quitte en cliquant sur «Quit». | +
Tetris | +Un jeu de tetris. | +||
Tetris3d | +Un jeu de tetris en 3 dimension. | Se quitte en tapant
+q . |
+|
xkobo | +le vaisseau doit détruire les bases et les missiles. | +||
Démineur | +Jeu de démineur. | +||
Astéroïdes | +Un vaisseau spatial doit faire exploser des astéroïdes | Se +quitte en sélectionnant «Quit» dans le menu «File». | +|
Serpent | +Le serpent doit manger les pommes. | Se quitte en sélectionnant «Quit» dans +le menu «Game». | +|
xtron | +Faire un mur sans rentrer dans ceux des autres. | Se quitte en faisant Ctrl-C | +|
crossfire | +Jeu de rôles et d'exploration. | Se quitte en tapant
+'Quit . |
+|
NetHack | +Jeu de rôles et d'exploration. | Se quitte en tapant Q et en
+confirmant. |
+|
Échecs | +Jeu d'échecs. | Se quitte en sélectionnant «Exit» dans le menu «File». | +|
Cartes | +Jeux de cartes. | Se quitte en sélectionnant «Quit» dans le menu +«Game». | +|
Mah-Jongg | +Jeu de dominos chinois. | ||
Shisen-Sho | Jeu de dominos chinois. + | Se quitte en sélectionnant «Quit» dans le menu +«File». | |
Aide | +Lance Mozilla sur une page d'aide des tuteurs | +||
Rafraîchir l'écran | +Redessine l'écran (traces de fenêtres, messages intempestifs au milieu de +l'écran). | +||
Relancer l'interface | +Relance l'interface graphique. C'est utile soit quand vous avez modifié +votre configuration, soit quand certains éléments, comme l'horloge, ne se sont +pas lancés au login. | +||
Quitter | +Pour se déloguer. Demande confirmation. | +
Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
+ + ++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+ ++Voici une présentation de votre écran tel qu'il apparaît juste après que +vous vous loguiez : +
+ +
+Vous pouvez taper des commandes dans les fenêtres terminal. Celles-ci affiche
+une invite (vous rencontrerez également le synonyme anglais prompt)
+avec le nom de la machine. Validez vos commandes par un retour à la ligne
+(Enter). Dans cet exemple, on est sur la machine drakkar
, et on
+tape fortune
:
+
+drakkar ~ $ fortune [Enter] +new, adj.: + Different color from previous model. +drakkar ~ $ ++ +
C'est certes une façon peu engageante de dialoguer avec l'ordinateur, +mais l'interface graphique des stations n'est pas assez fournie pour vous +permettre de vous en passer totalement. Il faudra notamment y avoir +recours pour changer votre +mot de passe.
+ +La quasi-totalité des fenêtres que vous ouvrez comporte une barre de +titre. elle sert de «poignée» pour la déplacer. En cliquant sur les +différents boutons de par et d'autre de la barre de titre, vous +découvrirez diverses fonctions (déplacer, redimensionner, iconifier...). +Pour en savoir davantage, nous vous conseillons de faire les exercices sur la config +conscrits.
+ ++Chacun de ces boutons décorés d'un petit dessin lance un programme lorsqu'on +clique dessus| : +
+ ++ | Ce bouton sert à se déloguer. Choisissez « Oui, je veux me + déloguer ». | +
+ | Lance le logiciel de courrier. Par défaut, c'est pine . On
+quitte en tapant «q». |
+
+ | Lance un gestionnaire de fichiers à la souris. | +
+ | Lance une nouvelle grande fenêtre terminal. | +
+ | Lance le navigateur Mozilla (attention, il est un peu lent à + démarrer). On quitte en sélectionnant «Exit» dans le menu «File». | +
+ | Lance le forum des + élèves (messagerie interne à l'École). On passe au message + suivant en appuyant sur la barre d'espace et on quitte en tapant + «q». | +
+ | Ce bouton ouvre le navigateur Mozilla sur une page d'aide du site des +tuteurs. | +
+La barre des tâches en bas de l'écran contient la liste de toutes les +fenêtres ouvertes. En ciquant sur le nom d'une des fenêtres, vous +l'amenez au premier plan. +
+ +La petite fenêtre terminal située en haut à droite de l'écran est un peu +spéciale, car elle affiche les messages d'erreur du système et +aussi des informations en provenance du réseau| : le menu du pot, les demandes +de connexion par talk, les +messages de l'imprimante, etc.
+ ++ | C'est un modèle réduit de l'écran et des fenêtres qu'il comporte. Son +intérêt consiste en le fait que l'écran réel n'occupe qu'un sixième de +l'espace (la case en haut à gauche), et en cliquant sur l'une des cinq autres +pages on obtient un écran vide dans lequel on peut lancer d'autres fenêtres. +À l'aide du bouton du milieu de la souris, on peut déplacer les modèles +réduits de fenêtres sur le plan du bureau, et ainsi disposer d'un bureau +virtuel qui fait six fois la taille de l'écran| ! + |
+Le menu propose divers logiciels, pour travailler comme pour jouer. Il permet +aussi de lancer de nouvelles fenêtres terminal, ainsi que de se déloguer. +
+ +Lorsque vous cliquez sur le fond gris de l'écran avec le bouton du +milieu ou de droite, vous faites apparaître le menu. Pour le faire +disparaître, recliquez dans le fond d'écran.
+ ++Dans toute cette section, on suppose que vous cliquez avec le bouton +gauche de la souris, sauf cas mentionnés. Nous résumons ici les +points essentiels concernant l'utilisation de la souris. Ses possibilités sont +cependant beaucoup plus riches. +
+ ++Déplacez la souris sur l'écran : vous remarquez que les cadres des +fenêtres changent de couleur. La fenêtre dans laquelle se trouve le pointeur +de la souris a son cadre coloré en rouge, cela indique qu'il s'agit de la +fenêtre active. C'est elle qui reçoit les touches que vous tapez au +clavier (essayez !), contrairement à ce qui se passe sous Windows et +MacOS. +
+ ++Les débuts sont pénibles (surtout quand quelqu'un déplace +malencontreusement votre souris...), mais c'est très pratique une fois +qu'on a l'habitude : d'un rapide mouvement de souris, vous passez d'un +programme à l'autre et l'ordre d'empilement des fenêtres ne change que si +vous en décidez ainsi. Cela permet par exemple de lire le contenu de la +fenêtre du dessus tout en écrivant dans une autre. +
+ ++Si vous avez déjà utilisé un ordinateur, vous pouvez passer directement à +la section suivante. Sinon, lancez un logiciel quelconque en cliquant par +exemple sur l'icône « Fenêtre » dans la boîte à +boutons, il nous servira d'exemple pour apprendre quelques +opérations simples à effectuer à l'aide de la souris : +
+ +Front
du clavier
+(si vous êtes sur une station Sun).
+Inversement, en cliquant dans la barre de titre avec le bouton droit de la
+souris, vous faites passer la fenêtre à l'arrière-plan.
+Pour vous familiariser avec les boutons de la barre de titre des +fenêtres, allez faire les exercices sur la config +conscrits.
+ + + + + + diff --git a/src/unix/config/2003/xconfiguration.png b/src/unix/config/2003/xconfiguration.png new file mode 100644 index 0000000..c3f7a0f Binary files /dev/null and b/src/unix/config/2003/xconfiguration.png differ diff --git a/src/unix/config/2003/xconfiguration.tml b/src/unix/config/2003/xconfiguration.tml new file mode 100644 index 0000000..cc5e4aa --- /dev/null +++ b/src/unix/config/2003/xconfiguration.tml @@ -0,0 +1,278 @@ + + + + +xconfiguration
xconfiguration
est le programme qui permet de changer
+certains des paramètres de sa configuration, et d'en mettre à jour les
+fichiers.
+Vous voyez apparaître devant vous la fenêtre ci-dessus. La partie haute, +divisée en plusieurs pages, vous permet de régler votre configuration. +Les boutons du bas ont l'effet suivant : +
+ ++Une fois que vous avez modifié votre configuration, les changements +effectués seront valables la prochaine fois que vous vous loguerez. +
+ ++Cette page vous permet de choisir quelles seront les applications +utilisées par votre configuration. Une liste d'applications vous est +proposée ; si vous préférez un autre programme, vous pouvez aussi taper +directement son nom à la place des choix proposés. +
+ ++L'éditeur de textes est le +programme qui vous permet de créer et de modifier des fichiers texte. Le +choix que vous entrez ici détermine l'éditeur qui sera lancé lorsqu'un +programme voudra créer un fichier texte ; c'est par exemple ce qu'il se +passera lorsque vous voudrez écrire +un message dans forum. +
+ +
+La valeur par défaut est nano
. C'est le plus confortable des
+éditeurs en mode texte. Il est vivement recommandé de
+choisir un éditeur en mode texte dans cette zone : cela lui permettra
+d'être utilisable que vous soyez logué physiquement en salle
+informatique, ou depuis n'importe quel autre endroit (votre t(h)urne,
+chez vos parents, au labo...).
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Web » de votre barre +d'outils. +
+ +
+Si votre configuration remonte à 2001 ou avant, vous utilisez encore
+probablement le navigateur Netscape
. La technologie ayant
+évolué depuis, il est recommandé de choisir Mozilla
à la
+place.
+
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Courrier » de votre barre +d'outils. +
+ ++Une fois que vous serez habitué aux machines de l'École, pourquoi ne pas +essayer Mutt ? Une +documentation est à votre disposition sur ce site. Mutt est plus +rapide que Pine, vous sentirez la différence quand vous recevrez beaucoup +de courrier... +
+ +
+Choisissez ici le programme qui vous servira à lire les groupes de discussion
+extérieurs. KNews
est un lecteur graphique, c'est le
+choix qui vous est proposé par défaut. FLRN
est le même
+programme qui sert à lire forum. Vous pouvez avoir envie de l'utiliser
+également pour lire les groupes de discussion, si vous voulez éviter
+d'apprendre un logiciel de plus.
+
+Cette page vous propose de régler les couleurs de votre configuration. +Nous espérons que son fonctionnement est assez intuitif pour ne pas +nécessiter de long discours de notre part... +
+ ++Vous pouvez régler ici la façon dont se comporte la machine. +
+ ++Cette page contient une liste de thèmes que vous pouvez appliquer à votre +configuration. Chaque thème définit une partie de vos variables de +configuration ; pour les remettre toutes à leur valeur par défaut, +chargez le thème « Par défaut ». +
+ ++Pour charger un thème, il suffit de sélectionner son nom dans la liste et +de cliquer sur le bouton « Charger ». Vous pouvez aussi enregistrer un +thème à partir de votre configuration actuelle : pour cela, tapez dans +la zone de texte le nom sous lequel vous souhaitez l'enregistrer, et +choisissez « Enregistrer ». +
+ ++Cette page vous sert à mettre à jour votre configuration. Cela vous +permet à la fois : +
++Vous voyez en haut de cette page une liste un peu obscure ; c'est la +liste des fichiers de votre configuration qui ne sont pas à jour. +Chaque fichier contient deux indications : celle du numéro de version +actuel, et celle du dernier numéro de version ajouté dans la +configuration. +
+ ++Pour mettre à jour un fichier, il suffit de le sélectionner, et de +cliquer sur « Mettre à jour ». Deux cas sont alors possibles : +
++<<<<<<<+ Pour résoudre un de ces conflits, il vous suffit de remplacer tout le + bloc précédent, soit en gardant vos modifications qui décidément vous + plaisent bien, soit en adoptant la nouvelle version, soit en + mélangeant les deux à votre goût. Attention toutefois à ne pas laisser + traîner les marqueurs <<<<<<<, + ======= ou + >>>>>>>. Si vous laissez des +
+Ce que vous avez modifié dans le fichier
+...
+=======
+Les modifications proposées par la nouvelle version
+...
+>>>>>>>
+
+ Lorsque vous en avez fini, fermez votre éditeur, et choisissez + « Écraser ». Ceci choisira, pour chaque conflit, la version la plus + récente (en particulier, si vous avez résolu tous les conflits + vous-mêmes, il n'y en a plus, vous ne perdez donc rien...) +
+Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
+ + ++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+ ++Voici une présentation de votre écran tel qu'il apparaît juste après que +vous vous loguiez : +
+ +
+Vous pouvez taper des commandes dans les fenêtres terminal. Celles-ci affiche
+une invite (vous rencontrerez également le synonyme anglais prompt)
+avec le nom de la machine. Validez vos commandes par un retour à la ligne
+(Enter). Dans cet exemple, on est sur la machine drakkar
, et on
+tape fortune
:
+
+drakkar ~ $ fortune [Enter] +new, adj.: + Different color from previous model. +drakkar ~ $ ++ +
C'est certes une façon peu engageante de dialoguer avec l'ordinateur, +mais l'interface graphique des stations n'est pas assez fournie pour vous +permettre de vous en passer totalement. Il faudra notamment y avoir +recours pour changer votre +mot de passe.
+ +La quasi-totalité des fenêtres que vous ouvrez comporte une barre de +titre. elle sert de «poignée» pour la déplacer. En cliquant sur les +différents boutons de par et d'autre de la barre de titre, vous +découvrirez diverses fonctions (déplacer, redimensionner, iconifier...). +Pour en savoir davantage, nous vous conseillons de faire les exercices sur la config +conscrits.
+ ++Chacun de ces boutons décorés d'un petit dessin lance un programme lorsqu'on +clique dessus| : +
+ ++ | Ce bouton sert à se déloguer. Choisissez « Oui, je veux me + déloguer ». | +
+ | Lance le logiciel de courrier. Par défaut, c'est pine . On
+quitte en tapant «q». |
+
+ | Lance un gestionnaire de fichiers à la souris. | +
+ | Lance une nouvelle grande fenêtre terminal. | +
+ | Lance le navigateur Mozilla (attention, il est un peu lent à + démarrer). On quitte en sélectionnant «Exit» dans le menu «File». | +
+ | Lance le forum des + élèves (messagerie interne à l'École). On passe au message + suivant en appuyant sur la barre d'espace et on quitte en tapant + «q». | +
+ | Ce bouton ouvre le navigateur Mozilla sur une page d'aide du site des +tuteurs. | +
+La barre des tâches en bas de l'écran contient la liste de toutes les +fenêtres ouvertes. En ciquant sur le nom d'une des fenêtres, vous +l'amenez au premier plan. +
+ +La petite fenêtre terminal située en haut à droite de l'écran est un peu +spéciale, car elle affiche les messages d'erreur du système et +aussi des informations en provenance du réseau| : le menu du pot, les demandes +de connexion par talk, les +messages de l'imprimante, etc.
+ ++ | C'est un modèle réduit de l'écran et des fenêtres qu'il comporte. Son +intérêt consiste en le fait que l'écran réel n'occupe qu'un sixième de +l'espace (la case en haut à gauche), et en cliquant sur l'une des cinq autres +pages on obtient un écran vide dans lequel on peut lancer d'autres fenêtres. +À l'aide du bouton du milieu de la souris, on peut déplacer les modèles +réduits de fenêtres sur le plan du bureau, et ainsi disposer d'un bureau +virtuel qui fait six fois la taille de l'écran| ! + |
+Le menu propose divers logiciels, pour travailler comme pour jouer. Il permet +aussi de lancer de nouvelles fenêtres terminal, ainsi que de se déloguer. +
+ +Lorsque vous cliquez sur le fond gris de l'écran avec le bouton du +milieu ou de droite, vous faites apparaître le menu. Pour le faire +disparaître, recliquez dans le fond d'écran.
+ ++Dans toute cette section, on suppose que vous cliquez avec le bouton +gauche de la souris, sauf cas mentionnés. Nous résumons ici les +points essentiels concernant l'utilisation de la souris. Ses possibilités sont +cependant beaucoup plus riches. +
+ ++Déplacez la souris sur l'écran : vous remarquez que les cadres des +fenêtres changent de couleur. La fenêtre dans laquelle se trouve le pointeur +de la souris a son cadre coloré en rouge, cela indique qu'il s'agit de la +fenêtre active. C'est elle qui reçoit les touches que vous tapez au +clavier (essayez !), contrairement à ce qui se passe sous Windows et +MacOS. +
+ ++Les débuts sont pénibles (surtout quand quelqu'un déplace +malencontreusement votre souris...), mais c'est très pratique une fois +qu'on a l'habitude : d'un rapide mouvement de souris, vous passez d'un +programme à l'autre et l'ordre d'empilement des fenêtres ne change que si +vous en décidez ainsi. Cela permet par exemple de lire le contenu de la +fenêtre du dessus tout en écrivant dans une autre. +
+ ++Si vous avez déjà utilisé un ordinateur, vous pouvez passer directement à +la section suivante. Sinon, lancez un logiciel quelconque en cliquant par +exemple sur l'icône « Fenêtre » dans la boîte à +boutons, il nous servira d'exemple pour apprendre quelques +opérations simples à effectuer à l'aide de la souris : +
+ +Front
du clavier
+(si vous êtes sur une station Sun).
+Inversement, en cliquant dans la barre de titre avec le bouton droit de la
+souris, vous faites passer la fenêtre à l'arrière-plan.
+Pour vous familiariser avec les boutons de la barre de titre des +fenêtres, allez faire les exercices sur la config +conscrits.
+ + + + + + diff --git a/src/unix/config/2004/xconfiguration.png b/src/unix/config/2004/xconfiguration.png new file mode 100644 index 0000000..c3f7a0f Binary files /dev/null and b/src/unix/config/2004/xconfiguration.png differ diff --git a/src/unix/config/2004/xconfiguration.tml b/src/unix/config/2004/xconfiguration.tml new file mode 100644 index 0000000..7ab9a7e --- /dev/null +++ b/src/unix/config/2004/xconfiguration.tml @@ -0,0 +1,278 @@ + + + + +xconfiguration
xconfiguration
est le programme qui permet de changer
+certains des paramètres de sa configuration, et d'en mettre à jour les
+fichiers.
+Vous voyez apparaître devant vous la fenêtre ci-dessus. La partie haute, +divisée en plusieurs pages, vous permet de régler votre configuration. +Les boutons du bas ont l'effet suivant : +
+ ++Une fois que vous avez modifié votre configuration, les changements +effectués seront valables la prochaine fois que vous vous loguerez. +
+ ++Cette page vous permet de choisir quelles seront les applications +utilisées par votre configuration. Une liste d'applications vous est +proposée ; si vous préférez un autre programme, vous pouvez aussi taper +directement son nom à la place des choix proposés. +
+ ++L'éditeur de textes est le +programme qui vous permet de créer et de modifier des fichiers texte. Le +choix que vous entrez ici détermine l'éditeur qui sera lancé lorsqu'un +programme voudra créer un fichier texte ; c'est par exemple ce qu'il se +passera lorsque vous voudrez écrire +un message dans forum. +
+ +
+La valeur par défaut est nano
. C'est le plus confortable des
+éditeurs en mode texte. Il est vivement recommandé de
+choisir un éditeur en mode texte dans cette zone : cela lui permettra
+d'être utilisable que vous soyez logué physiquement en salle
+informatique, ou depuis n'importe quel autre endroit (votre t(h)urne,
+chez vos parents, au labo...).
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Web » de votre barre +d'outils. +
+ +
+Si votre configuration remonte à 2001 ou avant, vous utilisez encore
+probablement le navigateur Netscape
. La technologie ayant
+évolué depuis, il est recommandé de choisir Mozilla
à la
+place.
+
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Courrier » de votre barre +d'outils. +
+ ++Une fois que vous serez habitué aux machines de l'École, pourquoi ne pas +essayer Mutt ? Une +documentation est à votre disposition sur ce site. Mutt est plus +rapide que Pine, vous sentirez la différence quand vous recevrez beaucoup +de courrier... +
+ +
+Choisissez ici le programme qui vous servira à lire les groupes de discussion
+extérieurs. KNews
est un lecteur graphique, c'est le
+choix qui vous est proposé par défaut. FLRN
est le même
+programme qui sert à lire forum. Vous pouvez avoir envie de l'utiliser
+également pour lire les groupes de discussion, si vous voulez éviter
+d'apprendre un logiciel de plus.
+
+Cette page vous propose de régler les couleurs de votre configuration. +Nous espérons que son fonctionnement est assez intuitif pour ne pas +nécessiter de long discours de notre part... +
+ ++Vous pouvez régler ici la façon dont se comporte la machine. +
+ ++Cette page contient une liste de thèmes que vous pouvez appliquer à votre +configuration. Chaque thème définit une partie de vos variables de +configuration ; pour les remettre toutes à leur valeur par défaut, +chargez le thème « Par défaut ». +
+ ++Pour charger un thème, il suffit de sélectionner son nom dans la liste et +de cliquer sur le bouton « Charger ». Vous pouvez aussi enregistrer un +thème à partir de votre configuration actuelle : pour cela, tapez dans +la zone de texte le nom sous lequel vous souhaitez l'enregistrer, et +choisissez « Enregistrer ». +
+ ++Cette page vous sert à mettre à jour votre configuration. Cela vous +permet à la fois : +
++Vous voyez en haut de cette page une liste un peu obscure ; c'est la +liste des fichiers de votre configuration qui ne sont pas à jour. +Chaque fichier contient deux indications : celle du numéro de version +actuel, et celle du dernier numéro de version ajouté dans la +configuration. +
+ ++Pour mettre à jour un fichier, il suffit de le sélectionner, et de +cliquer sur « Mettre à jour ». Deux cas sont alors possibles : +
++<<<<<<<+ Pour résoudre un de ces conflits, il vous suffit de remplacer tout le + bloc précédent, soit en gardant vos modifications qui décidément vous + plaisent bien, soit en adoptant la nouvelle version, soit en + mélangeant les deux à votre goût. Attention toutefois à ne pas laisser + traîner les marqueurs <<<<<<<, + ======= ou + >>>>>>>. Si vous laissez des +
+Ce que vous avez modifié dans le fichier
+...
+=======
+Les modifications proposées par la nouvelle version
+...
+>>>>>>>
+
+ Lorsque vous en avez fini, fermez votre éditeur, et choisissez + « Écraser ». Ceci choisira, pour chaque conflit, la version la plus + récente (en particulier, si vous avez résolu tous les conflits + vous-mêmes, il n'y en a plus, vous ne perdez donc rien...) +
+Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
+ + ++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+ ++Voici une présentation de votre écran tel qu'il apparaît juste après que +vous vous loguiez : +
+ +
+Vous pouvez taper des commandes dans les fenêtres terminal. Celles-ci affiche
+une invite (vous rencontrerez également le synonyme anglais prompt)
+avec le nom de la machine. Validez vos commandes par un retour à la ligne
+(Enter). Dans cet exemple, on est sur la machine drakkar
, et on
+tape fortune
:
+
+drakkar ~ $ fortune [Enter] +new, adj.: + Different color from previous model. +drakkar ~ $ ++ +
C'est certes une façon peu engageante de dialoguer avec l'ordinateur, +mais l'interface graphique des stations n'est pas assez fournie pour vous +permettre de vous en passer totalement. Il faudra notamment y avoir +recours pour changer votre +mot de passe.
+ +La quasi-totalité des fenêtres que vous ouvrez comporte une barre de +titre. elle sert de «poignée» pour la déplacer. En cliquant sur les +différents boutons de par et d'autre de la barre de titre, vous +découvrirez diverses fonctions (déplacer, redimensionner, iconifier...). +Pour en savoir davantage, nous vous conseillons de faire les exercices sur la config +conscrits.
+ ++Chacun de ces boutons décorés d'un petit dessin lance un programme lorsqu'on +clique dessus| : +
+ ++ | Ce bouton sert à se déloguer. Choisissez « Oui, je veux me + déloguer ». | +
+ | Lance le logiciel de courrier. Par défaut, c'est pine . On
+quitte en tapant «q». |
+
+ | Lance un gestionnaire de fichiers à la souris. | +
+ | Lance une nouvelle grande fenêtre terminal. | +
+ | Lance le navigateur Mozilla (attention, il est un peu lent à + démarrer). On quitte en sélectionnant «Exit» dans le menu «File». | +
+ | Lance le forum des + élèves (messagerie interne à l'École). On passe au message + suivant en appuyant sur la barre d'espace et on quitte en tapant + «q». | +
+ | Ce bouton ouvre le navigateur Mozilla sur une page d'aide du site des +tuteurs. | +
+La barre des tâches en bas de l'écran contient la liste de toutes les +fenêtres ouvertes. En ciquant sur le nom d'une des fenêtres, vous +l'amenez au premier plan. +
+ +La petite fenêtre terminal située en haut à droite de l'écran est un peu +spéciale, car elle affiche les messages d'erreur du système et +aussi des informations en provenance du réseau| : le menu du pot, les demandes +de connexion par talk, les +messages de l'imprimante, etc.
+ ++ | C'est un modèle réduit de l'écran et des fenêtres qu'il comporte. Son +intérêt consiste en le fait que l'écran réel n'occupe qu'un sixième de +l'espace (la case en haut à gauche), et en cliquant sur l'une des cinq autres +pages on obtient un écran vide dans lequel on peut lancer d'autres fenêtres. +À l'aide du bouton du milieu de la souris, on peut déplacer les modèles +réduits de fenêtres sur le plan du bureau, et ainsi disposer d'un bureau +virtuel qui fait six fois la taille de l'écran| ! + |
+Le menu propose divers logiciels, pour travailler comme pour jouer. Il permet +aussi de lancer de nouvelles fenêtres terminal, ainsi que de se déloguer. +
+ +Lorsque vous cliquez sur le fond gris de l'écran avec le bouton du +milieu ou de droite, vous faites apparaître le menu. Pour le faire +disparaître, recliquez dans le fond d'écran.
+ ++Dans toute cette section, on suppose que vous cliquez avec le bouton +gauche de la souris, sauf cas mentionnés. Nous résumons ici les +points essentiels concernant l'utilisation de la souris. Ses possibilités sont +cependant beaucoup plus riches. +
+ ++Déplacez la souris sur l'écran : vous remarquez que les cadres des +fenêtres changent de couleur. La fenêtre dans laquelle se trouve le pointeur +de la souris a son cadre coloré en rouge, cela indique qu'il s'agit de la +fenêtre active. C'est elle qui reçoit les touches que vous tapez au +clavier (essayez !), contrairement à ce qui se passe sous Windows et +MacOS. +
+ ++Les débuts sont pénibles (surtout quand quelqu'un déplace +malencontreusement votre souris...), mais c'est très pratique une fois +qu'on a l'habitude : d'un rapide mouvement de souris, vous passez d'un +programme à l'autre et l'ordre d'empilement des fenêtres ne change que si +vous en décidez ainsi. Cela permet par exemple de lire le contenu de la +fenêtre du dessus tout en écrivant dans une autre. +
+ ++Si vous avez déjà utilisé un ordinateur, vous pouvez passer directement à +la section suivante. Sinon, lancez un logiciel quelconque en cliquant par +exemple sur l'icône « Fenêtre » dans la boîte à +boutons, il nous servira d'exemple pour apprendre quelques +opérations simples à effectuer à l'aide de la souris : +
+ +Front
du clavier
+(si vous êtes sur une station Sun).
+Inversement, en cliquant dans la barre de titre avec le bouton droit de la
+souris, vous faites passer la fenêtre à l'arrière-plan.
+Pour vous familiariser avec les boutons de la barre de titre des +fenêtres, allez faire les exercices sur la config +conscrits.
+ + + + + + diff --git a/src/unix/config/2005/xconfiguration.png b/src/unix/config/2005/xconfiguration.png new file mode 100644 index 0000000..c3f7a0f Binary files /dev/null and b/src/unix/config/2005/xconfiguration.png differ diff --git a/src/unix/config/2005/xconfiguration.tml b/src/unix/config/2005/xconfiguration.tml new file mode 100644 index 0000000..7ab9a7e --- /dev/null +++ b/src/unix/config/2005/xconfiguration.tml @@ -0,0 +1,278 @@ + + + + +xconfiguration
xconfiguration
est le programme qui permet de changer
+certains des paramètres de sa configuration, et d'en mettre à jour les
+fichiers.
+Vous voyez apparaître devant vous la fenêtre ci-dessus. La partie haute, +divisée en plusieurs pages, vous permet de régler votre configuration. +Les boutons du bas ont l'effet suivant : +
+ ++Une fois que vous avez modifié votre configuration, les changements +effectués seront valables la prochaine fois que vous vous loguerez. +
+ ++Cette page vous permet de choisir quelles seront les applications +utilisées par votre configuration. Une liste d'applications vous est +proposée ; si vous préférez un autre programme, vous pouvez aussi taper +directement son nom à la place des choix proposés. +
+ ++L'éditeur de textes est le +programme qui vous permet de créer et de modifier des fichiers texte. Le +choix que vous entrez ici détermine l'éditeur qui sera lancé lorsqu'un +programme voudra créer un fichier texte ; c'est par exemple ce qu'il se +passera lorsque vous voudrez écrire +un message dans forum. +
+ +
+La valeur par défaut est nano
. C'est le plus confortable des
+éditeurs en mode texte. Il est vivement recommandé de
+choisir un éditeur en mode texte dans cette zone : cela lui permettra
+d'être utilisable que vous soyez logué physiquement en salle
+informatique, ou depuis n'importe quel autre endroit (votre t(h)urne,
+chez vos parents, au labo...).
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Web » de votre barre +d'outils. +
+ +
+Si votre configuration remonte à 2001 ou avant, vous utilisez encore
+probablement le navigateur Netscape
. La technologie ayant
+évolué depuis, il est recommandé de choisir Mozilla
à la
+place.
+
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Courrier » de votre barre +d'outils. +
+ ++Une fois que vous serez habitué aux machines de l'École, pourquoi ne pas +essayer Mutt ? Une +documentation est à votre disposition sur ce site. Mutt est plus +rapide que Pine, vous sentirez la différence quand vous recevrez beaucoup +de courrier... +
+ +
+Choisissez ici le programme qui vous servira à lire les groupes de discussion
+extérieurs. KNews
est un lecteur graphique, c'est le
+choix qui vous est proposé par défaut. FLRN
est le même
+programme qui sert à lire forum. Vous pouvez avoir envie de l'utiliser
+également pour lire les groupes de discussion, si vous voulez éviter
+d'apprendre un logiciel de plus.
+
+Cette page vous propose de régler les couleurs de votre configuration. +Nous espérons que son fonctionnement est assez intuitif pour ne pas +nécessiter de long discours de notre part... +
+ ++Vous pouvez régler ici la façon dont se comporte la machine. +
+ ++Cette page contient une liste de thèmes que vous pouvez appliquer à votre +configuration. Chaque thème définit une partie de vos variables de +configuration ; pour les remettre toutes à leur valeur par défaut, +chargez le thème « Par défaut ». +
+ ++Pour charger un thème, il suffit de sélectionner son nom dans la liste et +de cliquer sur le bouton « Charger ». Vous pouvez aussi enregistrer un +thème à partir de votre configuration actuelle : pour cela, tapez dans +la zone de texte le nom sous lequel vous souhaitez l'enregistrer, et +choisissez « Enregistrer ». +
+ ++Cette page vous sert à mettre à jour votre configuration. Cela vous +permet à la fois : +
++Vous voyez en haut de cette page une liste un peu obscure ; c'est la +liste des fichiers de votre configuration qui ne sont pas à jour. +Chaque fichier contient deux indications : celle du numéro de version +actuel, et celle du dernier numéro de version ajouté dans la +configuration. +
+ ++Pour mettre à jour un fichier, il suffit de le sélectionner, et de +cliquer sur « Mettre à jour ». Deux cas sont alors possibles : +
++<<<<<<<+ Pour résoudre un de ces conflits, il vous suffit de remplacer tout le + bloc précédent, soit en gardant vos modifications qui décidément vous + plaisent bien, soit en adoptant la nouvelle version, soit en + mélangeant les deux à votre goût. Attention toutefois à ne pas laisser + traîner les marqueurs <<<<<<<, + ======= ou + >>>>>>>. Si vous laissez des +
+Ce que vous avez modifié dans le fichier
+...
+=======
+Les modifications proposées par la nouvelle version
+...
+>>>>>>>
+
+ Lorsque vous en avez fini, fermez votre éditeur, et choisissez + « Écraser ». Ceci choisira, pour chaque conflit, la version la plus + récente (en particulier, si vous avez résolu tous les conflits + vous-mêmes, il n'y en a plus, vous ne perdez donc rien...) +
+Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
+ ++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+ +Depuis cette année, la config conscrit utilise (sur la plupart des +machines) l'environnement KDE. Les +tuteurs n'ont (à l'heure où j'écris) pas encore rédigé de documentation +spécifique à KDE, mais la configuration par défaut ne devrait pas être +trop déroutante si vous connaissez Windows ou MacOS. N'hésitez pas à +suggérer des choses à mentionner sur cette page, ni à demander aux +tuteurs si vous avez besoin d'aide.
+ +La nouvelle config conscrits n'est accessible que sur les PC sous Fedora +(en salles S et T, ce sont en gros les machines noires de marque Dell). +Sur les stations Sun, vous pouvez utiliser la config +de l'an dernier.
+ + + + + diff --git a/src/unix/config/2007/doc_rentree.pdf b/src/unix/config/2007/doc_rentree.pdf new file mode 100644 index 0000000..cf82894 Binary files /dev/null and b/src/unix/config/2007/doc_rentree.pdf differ diff --git a/src/unix/config/2007/index.tml b/src/unix/config/2007/index.tml new file mode 100644 index 0000000..5b30a6c --- /dev/null +++ b/src/unix/config/2007/index.tml @@ -0,0 +1,95 @@ + + + + +Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
+ +Vous pouvez télécharger une version + PDF de la documentation de base distribuée à la rentrée.
+ ++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+ + +La config conscrits utilise + l'environnement KDE. Les +tuteurs n'ont (presque) pas encore rédigé de documentation +spécifique à KDE, mais la configuration par défaut ne devrait pas être +trop déroutante si vous connaissez Windows ou MacOS. N'hésitez pas à +suggérer des choses à mentionner sur cette page, ni à demander aux +tuteurs si vous avez besoin d'aide. Vous pouvez aussi consulter la documentation officielle de +KDE.
+ ++ Cette section s'adresse principalement aux anciens qui voudraient mettre à jour + leur config. Pour les autres, elle vous permettra peut-être de repérer + les pages pas vraiment à jour de ce site... (N'hésitez pas à nous les + signaler !) +
+ ++ Le grand changement a eu lieu en 2006, avec l'arrivée de la nouvelle + config conscrits basée sur KDE. Les grandes nouveautés de 2007 sont le + suivantes. +
+La nouvelle config conscrits n'est accessible que sur les PC sous Fedora +(en salles S et T, ce sont en gros les machines noires de marque Dell). +Sur les stations Sun (qui devraient avoir disparu en octobre ou novembre +2007), vous pouvez utiliser la config 2005.
+ + + + + diff --git a/src/unix/config/2010/index.tml b/src/unix/config/2010/index.tml new file mode 100644 index 0000000..3561644 --- /dev/null +++ b/src/unix/config/2010/index.tml @@ -0,0 +1,60 @@ + + + + +Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
+ ++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+ + +La config conscrits utilise + l'environnement GNOME 2. Les +tuteurs n'ont (presque) pas encore rédigé de documentation +spécifique à GNOME, mais la configuration par défaut ne devrait pas être +trop déroutante si vous connaissez Windows ou MacOS. N'hésitez pas à +suggérer des choses à mentionner sur cette page, ni à demander aux +tuteurs si vous avez besoin d'aide.
+ ++L'environnement de la config ressemble beaucoup à la config par défaut +d'Ubuntu, et ne devrait guère vous surprendre. Firefox contient quelques +marque-pages utiles par défaut. Thunderbird est préconfiguré pour +accéder à votre messagerie ENS, et pour l'accès à forum. Le client de messagerie +instantanée Empathy vous permet de discuter avec les autres personnes +connectées utilisant cette config. +
+ + + + + diff --git a/src/unix/config/index.tml b/src/unix/config/index.tml new file mode 100644 index 0000000..f44242b --- /dev/null +++ b/src/unix/config/index.tml @@ -0,0 +1,45 @@ + + + + +Vous pouvez accéder à la documentation sur la config' conscrits de cette +année (la configuration par défaut en arrivant à l'École, gentiment +préparée par les gourous).
+Vous pouvez aussi accéder aux configurations des années précédentes : +
+ ++Voici une classification par niveau des degrés de connaissance de son éditeur. +Nous développons les deux premiers niveaux, en indiquant juste le nom de la +commande pour les niveaux suivants : nous estimons en effet qu'à partir +du niveau 3 vous êtes capables de trouver par vous-mêmes la façon de faire les +choses, et de chercher tout seuls dans les documentations... +
+ ++Trois éditeurs sont ici abordés : emacs, nano et vim. L'ordre de préséance +entre éditeurs répond à un critère alphabétique neutre. Nous nous sommes aussi +efforcés de ne mettre en avant que des fonctionnalités communes à au moins +deux éditeurs : les avantages spécifiques de chaque éditeur n'ont donc +pas leur place ici.
+ ++Enfin, quand nous disons «emacs», cela concerne bien entendu aussi +«xemacs». +
+ ++Pour noter les raccourcis claviers, on utilise des notations différentes +suivant les éditeurs, pour suivre la façon dont les touches sont indiquées +dans l'aide. On a donc: +
+C-x
pour control-x, c'est à dire
+la touche x avec le modificateur control en même temps. De même
+M-x
représente la touche x avec le modificateur méta.^X
pour control-x. CTRL-X
pour control-x. +Pour lancer son éditeur favori, la procédure est partout la même. Il faut +taper dans un terminal* le nom de +l'éditeur suivi du nom du fichier à éditer; par exemple : +
+ ++prao ~ $ emacs rapport.tex +prao ~ $ nano index.html +prao ~ $ vim monbofichier ++ +
+Pour emacs
, si vous êtes dans un xterm*, vous pouvez taper :
+
+prao ~ $ emacs -nw rapport.tex
+
++pour lancer emacs dans le terminal où vous vous trouvez (sans ouvrir de +nouvelle fenêtre graphique), ce qui est plus rapide mais vous n'avez pas +la souris. +
+ +C-x C-s
(save).
+Vous pouvez aussi cliquer sur le bouton Save
, ou
+sélectionner Save fichier
dans le menu
+File
. Pour sauver votre fichier sous un nom différent, tapez
+C-x C-w
ou sélectionner Save as...
dans le menu
+File
. Emacs vous demande alors un nom de fichier.^O
. Nano vous demande
+alors sous quel nom enregistrer le fichier. Appuyez sur la touche Entrée
+si vous voulez garder le même nom.:w
(write). Pour
+enregistrer sous un autre nom, faire :sav nouveaunom
.Quelle que soit l'application, vous devez la quitter +correctement, avec sa commande. Vous ne devez jamais fermer une fenêtre en +sélectionnant «Fermer» dans le cadre de la fenêtre; dans le cas d'un éditeur +mal configuré vous risquez de perdre votre travail. Des copies de sauvegarde +existent et permettent d'en récupérer la majeure partie, mais ce n'est pas un +pli à prendre... Quittez donc correctement votre éditeur.
+C-x C-c
ou cliquer sur Exit
+Emacs
dans le menu File
. Emacs vous demande si vous voulez
+sauvegarder votre texte.^X
. Cette commande
+quitte nano en vous demandant si vous voulez enregistrer en
+quittant.:wq
(write quit)
+pour quitter en sauvant. Si vous essayez de quitter vim sans avoir sauvé
+votre texte (avec :q
), il refuse; il faut taper
+:q!
pour forcer la sortie sans sauver le document.+Ce sont ces deux touches qui servent à alterner entre les deux modes. Vous +découvrirez plus tard les autres touches qui servent à insérer au début ou à +la fin de la ligne, avant ou après la ligne courante, etc. +
+ ++Pour effacer du texte en mode insertion, utilisez la touche Backspace. La +souris ne sert à placer le curseur qu'avec gvim. L'effacement de texte en +mode commande, beaucoup plus précis, relève du Deuxième +Cercle...
C-f
pour avancer (forward), C-b
pour
+reculer (backward), C-n
pour descendre (next) et
+C-p
pour monter (previous).Help
et
+choisissez ce qui vous plaît... Je vous conseille de commencer par le tutorial
+et la FAQ*. Vous pouvez aussi utiliser les
+commandes en C-h
suivi d'une lettre pour avoir de l'aide sur
+différent aspects d'emacs. Par exemple, C-h t
lance le
+tutorial, et C-h C-h
vous donne l'aide sur l'aide.^G
ou F1
.:h
+(help). La fenêtre se divise en deux, et un fichier d'aide
+apparaît. Son fonctionnement est décrit dans les premières lignes.
+
+
+Des thèmes sont indiqués entre barres verticales
+(par exemple, |quickref|
. Pour y accéder, placez le curseur sur le
+mot-clé entre barres et tapez CRTL-] (Controle-crochet fermant). Pour revenir
+au début de l'aide, taper CRTL-T (top). Je vous conseille de
+commencer par |howto.txt|
, qui classe par thèmes les commandes.
+Pour refermer l'écran d'aide, taper :q
(quit).
+
Undo
, ou
+sélectionner Undo
dans le menu Edit
. Vous pouvez aussi
+utiliser le raccourci clavier C-x u
+(qui n'est pas C-x C-u
...) ou C-_
ou C-/
.
+
++Il n'y a pas de commande spécifique pour refaire. Un moyen de s'en sortir est +de taper un caractère et de faire des Undo : il défera alors les Undo +précédents, i.e. refera ce qui a été défait. +
^K
, vous pouvez les
+insérer en faisant ^U
.u
(undo)
+défait la dernière commande. CTRL-R
(redo) refait la dernière
+commande. On peut ainsi faire et refaire l'ensemble des actions
+faites depuis que le fichier a commencé à être édité. C-f
, C-b
,
+C-n
et C-p
agissent différemment si on change de
+modificateur:
+M-f
et M-b
se déplacent par mot.M-n
et M-p
se déplacent par paragraphes.Home
ou C-a
placent le curseur en début de
+ligne.End
ou C-e
place le curseur en fin de ligne.
+M-a
placent le curseur en début de phrase.M-e
place le curseur en fin de phrase.C-v
/ M-v
fait
+respectivement avancer/reculer le texte d'un écran. M-<
/ M->
placent respectivement tout
+au début/tout à la fin du fichier.less
.
+
+$
place le curseur en fin de ligne.^
et 0
(zéro) placent le curseur en début de ligne
+(vous saurez plus tard la différence entre les deux commandes...).w
(word) / b
(back)
+avance/recule d'un mot, curseur au début du mot.e
(end) avance d'un mot, curseur en fin de
+mot.{
et }
(accolades) : respectivement,
+recule et avance d'un paragraphe.(
et )
(parenthèses) : respectivement, recule et avance
+d'une phrase.CTRL-D
(down) / CTRL-U
(up) fait
+respectivement avancer/reculer le texte d'un demi-écran. CTRL-F
(forward) / CTRL-B
(back fait
+avancer/reculer le texte d'un écran.CTRL-E
/CTRL-Y
fait avancer/reculer le texte d'une
+ligne.gg
ou [[
placent tout au début du
+fichier.G
ou ]]
placent tout à la fin du
+fichier.15w
+fait avancer le curseur de 15 mots. M-g
(méta) et indiquer
+le numéro de ligne.^_
(line) et
+indiquer le numéro de la ligne.G
à un
+numéro de ligne. Par exemple, 38G
place sur la ligne
+38.C-k
efface la fin de la ligne courante.Cut
, ou sélectionner Cut
dans le menu
+Edit
.C-w
à l'autre extrémité.^H
) efface le caractère à gauche du curseur.^D
) efface le caractère placé sous le curseur.^K
efface la fin de la ligne courante.x
détruit le caractère sous le curseur.X
détruit le caractère à gauche le curseur.dd
détruit la ligne courante.D
détruit la fin de la ligne courante.d
à une commande de déplacement : par
+exemple, dG
pour détruire toute la fin du fichier, d}
pour
+détruire la fin du paragraphe, d3w
pour détruire trois
+mots.v
et utiliser les
+touches de déplacement pour sélectionner un fragment de texte : le texte
+sélectionné est mis en valeur. Taper d
pour détruire le texte
+sélectionné.Edit
et cliquer sur Search
ou Search
+Backwards
, et taper le mot recherché. Il est quand même plus
+simple de taper C-s
(search) ou C-r
+(rear) pour chercher en arrière; indiquez le mot et tapez à
+nouveau C-s
(C-r
) pour aller à la prochaine
+occurrence du mot. Une fois arrivé en bas (ou en haut), emacs bippe et
+revient à l'autre bout du texte.^W
; indiquez
+le mot recherché./
) et indiquer le mot recherché (comme avec less
). La casse des caractères
+peut avoir de l'importance suivant votre configuration (tapez donc les
+mots clefs en minuscules), et vim sait revenir au début du texte quand il
+a atteint la fin du fichier. Pour aller à la prochaine occurrence du mot,
+taper n
(next). Pour aller à la précédente
+occurrence du mot, taper N
.?
puis le mot.
+On se sert de n
et de N
de la même façon.*
.
+
+M-%
et compléter, en validant
+chaque terme par un retour à la ligne. Vous pouvez aussi utiliser le bouton
+Replace
ou sélectionner Replace
dans le menu
+Edit
.y
pour accepter, n
pour refuser, !
+pour tout remplacer d'un coup et q
pour arrêter les
+remplacements.^\
. Entrez la chaîne à
+chercher puis la chaîne de remplacement. Nano demande confirmation pour chaque remplacement : taper y
pour
+accepter le remplacement, n
pour le refuser, a
pour
+remplacer toutes les occurrences restantes.:%s/mot1/mot2/g
. Le pour-cent signifie que le remplacement
+se fera dans tout le fichier, s/mot1/mot2/
signifie qu'il
+faut remplacer (substitute
) le mot1 par le mot2. La dernière
+lettre, g
, signifie que l'on veut remplacer toutes les
+occurrences présentes sur chaque ligne. En effet, sans le «g», seule la
+première occurrence serait traitée.:%s/mot1/mot2/gc
. Vim vous propose alors plusieurs
+réponses possibles : y
pour accepter le remplacement,
+n
pour le refuser, a
(all) pour tout
+remplacer d'un coup, q
pour quitter. Vous retrouvez aussi
+les commandes CTRL-Y
et CTRL-E
, pour faire reculer ou
+avancer le texte d'une ligne.
+Copy
. Cliquer avec le bouton du milieu de
+la souris à l'endroit où on veut coller le texte. Vous aurez reconnu ici
+la méthode standard pour copier/coller du texte d'une fenêtre à
+l'autre.C-w
ou
+C-k
peut
+être collé ailleurs en tapant C-y
(yank). Si on veut
+copier un bout de texte sans l'effacer, il suffit de l'effacer et de le
+recopier juste après là où il était (ce qui n'empêche pas de le recopier
+ailleurs en autant d'exemplaires qu'on veut). On peut récupérer un texte
+copié il y a longtemps avec C-y
suivis d'un ou plusieurs
+M-y
. On peut aussi copier la région sélectionnée sans la
+couper avec M-w
v
et utiliser les touches de déplacement pour sélectionner
+un fragment de texte. Appuyer sur y
(yank) pour
+copier le texte en mémoire. Placer le curseur à l'endroit où on veut
+coller le texte, et appuyer sur p
(put) si vous
+voulez coller après le curseur ou sur P
si vous voulez
+coller avant le curseur.
+yy
fait une copie de la ligne courante. On peut aussi utiliser
+y commande-de-déplacement
pour copier un fragment de texte, sans
+passer par une sélection visuelle.
+
+M-q
.^J
. Q
(si ça ne marche pas : gqap
).Inser
pour balancer entre les modes
+insertion et écrasement.r
et R
(replace).
+ s
et S
(substitute).M-l
et M-u
.~
(tilde).C-x ESC ESC
..
(point).J
(join).C-M-f
+/ C-M-b
.%
(pour-cent).
+M-x local-set-key
ou M-x
+global-set-key
.:map touche fonction
.C-x i
ou Insert file
dans le menu
+File
.^R fichier
.:r fichier
.M-x write-region
:w
+nouveau-fichier
).C-x 2
ou Split
+Window
dans le menu File
. Options du menu
+File
. C-x o
pour changer de fenêtre.-CTRL-W N
(window
+new). CTRL-W k
et
+CTRL-W j
pour monter/descendre d'une fenêtre interne.M-!
:!commande
C-u M-!
:r!commande
Ce tutorial est destiné aux gens souhaitant se familiariser avec +GNU Emacs. Un +aide-mémoire des principales commandes +d'emacs est disponible.
+ +Emacs est un éditeur de texte très puissant, qui est également +capable de beaucoup d'autres choses (invoquer une commande shell, +envoyer ou recevoir du courrier électronique, lire les news, se +transformer en psy, et même faire le café selon certaines mauvaises +langues). En contrepartie, Emacs est assez lourd (beaucoup plus en +tout cas que l'éditeur standard d'UNIX, vi) et souvent ésotérique.
+ +Emacs date de 1975. Il a été écrit par Richard M. Stallman qui +était alors au MIT. Emacs a été conçu à l'origine comme un ensemble de +macros pour un TECO, un vieil éditeur de texte. Emacs veut donc dire +« Editing MACroS ». Par la suite, plusieurs +versions d'Emacs ont été développées, mais la version la plus répandue +reste GNU Emacs (alias FSF Emacs), celle de M. Stallman, qui est +la réécriture du Emacs originel.
+ +Emacs est principalement utilisé sous les systèmes de type UNIX, +mais il existe également pour MS-DOS ou Windows.
+ +Les commandes d'emacs utilisent les touches
+Control
(souvent abrégé en Ctrl
sur la
+touche) ou Meta
de votre clavier. Si vous n'avez pas de
+touche Meta
ou que vous ne savez pas où elle est,
+utilisez la touche Escape
(ou Échap
). Comme
+les commandes sont assez complexes, on utilise des
+abréviations. Ainsi, C-c
signifie : appuyez sur
+Ctrl
et, en gardant la touche enfoncée, appuyez sur
+c
. M-g
signifie : appuyez sur la touche
+Meta
et, en gardant la touche enfoncée, sur
+g
.
ESC
à la place de
+la touche Meta
, il faut appuyer sur
+ESC
puis sur l'autre touche.En particulier, par exemple, C-x i
(insertion d'un
+fichier) ne fait pas la même chose que C-x C-i
+(qui décale une région sélectionnée d'un caractère vers la
+droite)... Taper des commandes complexes d'emacs requiert parfois un
+peu de doigté. Si vous vous êtes trompé de commande, vous pouvez
+annuler avec C-_
(cf. ci-dessous la gestion des
+erreurs).
Dernière précision : toutes les commandes emacs sont
+accessibles en utilisant leur nom complet, qu'on peut appeler en
+tapant d'abord M-x
. Certaines d'entre elles sont
+disponibles par le biais de raccourcis comme ceux cités plus
+haut : M-g
par exemple a pour nom complet M-x
+goto-line
. Mais beaucoup de commandes sont accessibles
+seulement par un nom complet. En outre, vous pouvez parfois retrouver
+une commande en passant par son nom complet (on retient mieux que
+M-c
met en majuscule la première lettre d'un mot quand on
+se souvient que le c est pour capitalize-word).
Emacs a la particularité d'avoir une aide en ligne importante. Pour
+y accéder, lancez emacs tout seul (cf. infra) ou
+tapez C-h
ou encore M-x help
.
C-h
+mais M-?
. Le remplacement est à faire pour toutes les
+commandes d'aide qui suivent.C-h k
vous permet d'obtenir des renseignements
+succincts sur une commande donnée. Exemple : vous voulez savoir ce
+que fait la commande M-g
. Tapez C-h k
. Emacs
+vous demande de décrire la commande (key en
+anglais) que vous souhaitez connaître. Tapez alors
+M-g
. Emacs ouvre en 2 la fenêtre et vous dit qu'il s'agit
+de la commande goto-line
, qu'on l'emploie comme
+ceci : M-g <nombre n>
et qu'il s'agit d'aller
+à la ligne n.
C-h t
lance le tutorial officiel d'emacs (en
+anglais).
C-h i
vous donne accès aux répertoires
+« info » qui contiennent de l'aide sur différents
+programmes, parmi lesquels emacs. Cette commande vous envoie
+directement sur la rubrique emacs. On navigue entre les fichiers grâce
+à des liens hypertexte. On passe de lien en lien avec TAB
+et M-TAB
, on suit un lien avec Enter
et on
+remonte vers le répertoire père avec u
;
Pour quitter l'aide, on utilise les commandes de manipulation des +buffers (cf. ci-dessous « Manipuler plusieurs buffers en +même temps »).
+ +Vous pouvez obtenir la liste des commandes d'emacs en tapant
+M-x describe-bindings
.
Emacs se lance comme n'importe quel programme sous UNIX. Si vous +tapez :
+ +sas ~ $ emacs
+
+Emacs se lancera dans une fenêtre. Pour lancer emacs dans votre
+terminal, utilisez l'option -nw
. Cette option est
+particulièrement pratique lorsque vous souhaitez travailler à distance
+sur un fichier qui est sur votre compte clipper, par exemple, mais
+elle vous privera de certaines possibilités (les menus déroulants et
+les boutons, par exemple). Si vous souhaitez travailler sur un fichier
+précis, tapez emacs puis le nom du fichier :
sas ~ $ emacs maitrise.tex
+
+Si vous observez la fenêtre d'emacs, vous pourrez voir un certain +nombre d'informations qui dépendent de la version d'emacs qui est +installée. À la date où cette documentation est écrite, c'est la +version 23.3.1 qui est installée par défaut sur sas.eleves. Pour savoir +quelle est votre version, tapez
+ +sas ~ $ emacs --version
+
+Les renseignements donnés ici valent pour cette version. Il est +possible que certaines choses ne fonctionnent pas avec des versions +plus vieilles.
+ +À l'heure actuelle, emacs ressemble à ceci :
+ + + +Tout d'abord, vous voyez en haut de la fenêtre des menus déroulants +(File, Edit, Options, Buffers, Tools, Help), et en-dessous quelques +icônes. Il est commode au départ d'utiliser menus déroulants et +icônes, mais il ne faut pas en abuser. C'est en apprenant les +raccourcis claviers que vous exploiterez au maximum les possibilités +d'emacs et que vous serez plus efficaces. Remarquez aussi en bas de la +fenêtre ce qu'on appelle le mini-buffer, qui sert à emacs pour +communiquer avec vous. Lorsque vous tapez une commande, elle s'affiche +dans le mini-buffer.
+ +Entre les deux se trouve, en gris sur l'image (avec « GNU +Emacs »), la « ligne de mode » (mode line en anglais). Elle donne de précieuses +indications telles que le nom du fichier en cours d'édition, le mode +majeur et le(s) mode(s) mineur(s) dans lequel vous vous trouvez +(cf. ci-dessous sur les modes d'emacs), éventuellement le numéro de la +ligne où se trouve votre curseur, etc.
+ +Emacs peut s'adapter au type de fichier que vous éditez. Ce sont
+ses « modes ». Le mode par défaut est appelé
+« fondamental », il n'a pas de comportement
+particulier. Il existe de nombreux modes, mais les plus important sont
+le mode texte, le mode C ou encore le mode LaTeX. Quand vous éditez un
+fichier, emacs choisit son mode en fonction de l'extension du fichier
+en question. Par exemple, si vous éditez un fichier en
+.tex
, il se mettra automatiquement en mode LaTeX. S'il ne
+peut pas déterminer quel type de fichier vous allez éditer, il se met
+en mode fondamental.
Les modes C, texte ou LaTeX sont des modes majeurs. Il existe aussi +des modes mineurs qui peuvent s'activer ou se désactiver à l'intérieur +d'un mode majeur. Par exemple, le mode « fill » +signifie qu'emacs va aller à la ligne dès que c'est nécessaire. Le +mode « overwrite » signifie qu'il va écrire +par-dessus les caractères déjà tapés au lieu de les insérer. Le mode +majeur et le(s) mode(s) mineur(s) dans lesquels vous vous trouvez sont +indiqués dans la ligne de mode.
+ +Tout d'abord, un rappel d'ordre général. Les éditeurs de texte
+n'éditent pas directement un fichier. Ils mettent le contenu de votre
+fichier dans un buffer (qu'on traduit parfois par
+« tampon ») temporaire, qu'ils éditent. Quand vous
+sauvegardez, l'éditeur retransfère les contenus du buffer dans votre
+fichier. Si vous quittez l'éditeur sans sauvegarder, le buffer est
+détruit et votre fichier demeure donc intact. C'est pourquoi, quand on
+lance emacs sans argument, il ouvre un buffer appelé
+*scratch*
: c'est un buffer sans fichier
+associé. *Help*
est un autre exemple de buffer non
+associé : c'est l'aide en ligne.
Que vous ayez lancé emacs tout court ou en lui demandant d'ouvrir +un fichier, vous pouvez insérer tout de suite du texte en tapant +directement ce que vous voulez.
+ +Vous pouvez ouvrir un fichier, comme nous l'avons vu, simplement en
+le donnant comme argument à emacs, ou encore le faire une fois emacs
+lancé. Pour cela, faites C-x C-f
(nom complet :
+M-x find file
). Emacs vous demande alors quel fichier
+vous voulez ouvrir. Il suffit de compléter le nom du fichier puis
+d'appuyer sur Entrée
, puis emacs crée un nouveau buffer
+qui porte le nom du fichier que vous voulez éditer. À noter que si
+vous jonglez entre plusieurs buffers, appuyer sur la flèche vers le
+haut après un C-x C-f
vous donne accès à l'historique de
+tous les fichiers déjà ouverts par ce moyen.
TAB
. Emacs essaiera de compléter le nom de
+fichier pour vous. C'est ce qu'on appelle la complétion.Avec un seul et même emacs, vous pouvez manipuler plusieurs buffers
+en même temps en utilisant le multi-fenêtrage, c'est-à-dire la
+capacité d'emacs à couper sa fenêtre en deux (ou plus) pour vous
+permettre d'avoir plusieurs buffers en regard. Pour ouvrir un deuxième
+buffer, tapez C-x 2
(la fenêtre se coupe en 2
+horizontalement dans ce cas, si vous préférez un découpage vertical,
+utilisez C-x 3
). Pour passer d'un buffer à l'autre,
+faites C-x o
. Pour faire disparaître le buffer où se
+trouve votre curseur, tapez C-x 0
. Pour faire disparaître
+l'autre c'est C-x 1
.
Le multi-fenêtrage est une fonctionnalité très utile d'emacs. Elle +vous permet de comparer facilement plusieurs fichiers, de faire +facilement des copier-coller depuis plusieurs fichiers vers un seul, +etc.
+ +Déplacez votre curseur jusqu'à l'endroit où vous souhaitez insérer
+un autre fichier. Puis tapez C-x i
(M-x
+insert-file
). Emacs suit la même procédure qu'avec C-x
+C-f
: il vous demande quel fichier insérer.
Si vous tapez C-x C-s
(M-x save-buffer
),
+emacs sauvegarde le buffer dans le fichier associé et indique à
+l'écran (dans le mini-buffer) « Wrote
+/users/00/litt/toto/maitrise.tex ». Si vous voulez
+sauvegarder vos modifications dans un autre fichier,
+il faut utiliser la commande C-x C-w
. Le nom complet,
+M-x write-file
est transparent : emacs écrit le
+contenu du buffer dans un fichier qui n'est pas nécessairement celui
+associé au buffer. C-x C-w
peut être pratique pour éditer
+un fichier que vous n'avez pas le droit de modifier.
Tapez C-x C-c
pour quitter emacs. Si vous avez édité
+un ou des buffers que vous n'avez pas sauvegardé(s), emacs vous
+demandera s'il doit le faire avant de se fermer.
Si vous désirez seulement quitter emacs temporairement (pour lire
+votre mail ou faire une pause dans l'édition de votre fichier), la
+meilleure solution est d'utiliser C-z
qui
+suspend emacs sans le fermer. Dès que vous voudrez reprendre
+emacs, tapez fg
dans le shell et vous retrouverez votre
+fenêtre avec le même buffer et le curseur exactement où vous l'aviez
+laissé. Si vous êtes en mode graphique, C-z
minimise la
+fenêtre d'emacs.
Les raccourcis claviers vous permettent de vous déplacer très +facilement dans votre fichier. Ils peuvent remplacer les touches +« flèches », certes, mais plus encore vous +permettre d'être beaucoup plus rapide que si vous n'utilisiez que les +touches de déplacement du clavier. Leur apprentissage est un peu +laborieux mais ils vous feront gagner beaucoup de temps.
+ +Bouger d'un(e)... | +Vers l'arrière | +Vers l'avant | +
---|---|---|
caractère | C-b | C-f |
+
mot | M-b | M-f |
+
ligne | C-p | C-n |
+
début/fin de ligne | C-a | C-e |
+
... à l'indentation près | M-m | - | +
phrase | M-a | M-e |
+
paragraphe | M-{ | M-} |
+
buffer | M-< | M-> |
+
Pour effacer quelques caractères, vous pouvez utiliser les touches
+delete
ou backspace
de votre
+clavier. Évidemment, vous pouvez aussi utiliser des commandes pour
+faire ce travail. C-d
efface le caractère sur lequel se
+trouve le curseur. M-d
efface la suite d'un mot à partir
+de l'endroit où se trouve le curseur (pour que le mot entier soit
+effacé, il faut placer le curseur au début du mot).
Au niveau d'une ligne, C-k
efface le reste de la ligne
+à partir de la position du curseur. Pour effacer la ligne entière, il
+faut placer le curseur au début de la ligne.
Commande | Nom complet | Action |
---|---|---|
C-d | M-x delete-char | Efface le caractère +sur lequel est le curseur. |
M-d | M-x kill-word | Efface le mot à partir du +curseur. |
M-backspace | M-x backward-kill-word | Efface le +mot précédent. |
C-k | M-x kill-line | Efface la ligne à partir du +curseur |
_ | M-x kill-paragraph | Efface le paragraphe à +partir du curseur. |
On peut faire une sélection (pour couper ou copier, par exemple)
+avec la souris dans emacs. Si vous ne pouvez/voulez pas sélectionner à
+la souris (par exemple vous utilisez emacs -nw
), vous
+pouvez utilisez le système de marquage d'emacs. On place une
+« marque » au début du texte à sélectionner avec
+C-espace
. Ensuite, déplacez le curseur jusqu'à la fin du
+texte à sélectionner (on appelle l'endroit où est le curseur le
+« point »). Votre sélection est faite (même si
+vous ne la voyez pas).
Commande | Nom complet | Action |
---|---|---|
C-espace | M-x set-mark-command | Poser une +marque |
C-x C-x | M-x +exchange-point-and-mark | Échanger la marque et le point |
M-h | M-x mark-paragraph | Sélectionner tout le +paragraphe |
Quand emacs efface quelque chose (mot, ligne, paragraphe, mais pas
+un caractère isolé), il le place en mémoire (dans ce qu'en anglais on
+appelle le kill ring). Vous pouvez ensuite
+« coller » tout ce qui a été effacé (que ce soit
+une seule grosse suppression ou plusieurs suppressions d'affilée) avec
+C-y
. Pour couper à proprement parler, il faut utiliser
+C-w
(ou M-x kill-region
).
À noter que M-y
permet de naviguer dans l'historique
+du kill ring. C-y
colle la dernière
+chose à avoir été copiée ou coupée, mais si vous voulez coller quelque
+chose coupé ou collé précédemment, utilisez M-y
+après.
Pour copier quelque chose (pour le coller ensuite), sélectionner ce
+qu'il faut copier puis faites M-w
.
Pour effectuer une recherche simple vers la fin du fichier, c'est
+C-s
suivi du mot ou de l'expression recherchée. Pour une
+recherche vers le début du fichier, c'est C-r
. Avec
+emacs, il est également possible de faire des recherches en utilisant
+des expression régulières (avec des métacaractères comme ., *, ?, $,
+etc.) : taper C-M-s
. Pour aller à l'occurence
+suivante du mot ou de l'expression correspondant à votre recherche
+(simple ou avec une expression régulière), tapez C-s
ou
+C-r
. Pour annuler votre recherche, tapez
+C-g
).
+
De même, pour les remplacements, emacs vous offre deux
+possibilités. Pour remplacer simplement un mot ou une expression,
+tapez M-%
. Pour faire un remplacement à partir d'une
+expression régulière, c'est M-x
+query-replace-regexp
. Dans les deux cas, une fois qu'emacs aura
+trouvé la première occurrence correspondant à votre demande, il vous
+demandera s'il doit effectuer le remplacement.
Répondez y
pour remplacer cette occurrence,
+n
pour ne pas le faire. Dans ces deux cas, après avoir
+effectué ou pas le remplacement, emacs passera à l'occurrence
+suivante. Pour faire de manière automatique le remplacement sur la
+suite du fichier, répondez !
. Pour abandonner le
+remplacement demandé, appuyez sur ESC
.
Quand vous êtes en mode Fill
(regardez votre ligne de
+mode), emacs coupe naturellement les lignes de la meilleure manière
+possible pour lui. Mais au fur et à mesure de l'édition de votre
+fichier, vous pouvez vous retrouver avec des lignes très courtes et
+d'autres trop longues. Une commande très utile est M-q
+qui réarrange le texte d'un paragraphe de manière harmonieuse.
Vous pouvez également changer la longueur des lignes. Par exemple,
+pour fixer à 20 caractères la longueur des lignes, tapez C-u 20
+C-x f
.
Emacs possède des commandes spéciales pour les problèmes de casse
+(vous tapez deux majuscules de suite au lieu de la majuscule initiale
+suivie de minuscules, etc.). Pour mettre en majuscules la première
+lettre d'un mot, tapez M-c
(c comme capitalize. Pour mettre un mot entier en majuscules,
+c'est M-u
(u pour uppercase). Pour le
+mettre en minuscules, c'est M-l
(l pour lowercase). Emacs effectue ces transformations à partir
+de l'endroit où se trouve le curseur, pour changer le mot entier, il
+faut donc se placer sur sa première lettre.
Comme beaucoup de gens, vous faites des fautes de frappe qui sont
+souvent dues à un manque de coordination entre les doigts. Vous tapez
+donc « poru » au lieu de
+« pour ». Emacs possède des commandes qui peuvent
+résoudre votre problème en vous permettant de permuter des lettres,
+des mots, des lignes, des phrases, et même des paragraphes. Ainsi,
+alors que votre curseur est sur le u de « poru »,
+tapez C-t
pour intervertir r et u.
Commande | Nom complet | Action |
---|---|---|
C-t | M-x
+transpose-chars | Intervertit deux lettres |
M-t | M-x
+transpose-words | Intervertit deux mots |
C-x C-t | M-x
+transpose-lines | Intervertit deux lignes |
_ | M-x
+transpose-sentences | Intervertit deux phrases |
_ | M-x
+transpose-paragraphs | Intervertit deux paragraphes |
Si vous vous êtes trompé et que vous souhaitez revenir à l'action
+précédente, tapez C-x u
(ou C-_
, plus facile
+à taper). Vous pouvez revenir en arrière ainsi jusqu'à l'ouverture de
+votre session emacs. Attention, C-_
ne s'applique qu'à
+une modification du buffer. Ainsi, on ne peut pas annuler le
+déplacement du curseur ou une opération de copier.
C-_
par erreur, la
+même touche peut servir à faire un redo (c'est-à-dire un undo
+d'undo !). Pour cela, il vous suffit de faire un déplacement
+quelconque du curseur (pour éviter de continuer la séquence d'undo
+commencée) et de retaper C-_
. Dans certains cas, les
+C-_
en série et imbriqués peuvent avoir des conséquences
+étonnantes.Pour revenir carrément à l'état où était votre fichier au moment où
+vous l'avez sauvegardé pour la dernière fois, tapez M-x
+revert-buffer
.
C-g
.Emacs affichera « Quit » dans le mini-buffer +et abandonnera la commande en cours.
+ +Il est possible d'exécuter une commande shell depuis emacs, par
+exemple pour compiler le fichier tex que vous êtes en train
+d'éditer. C'est la commande M-!
. Emacs vous demande dans
+le mini-buffer la commande que vous souhaitez lancer, et vous donne
+son résultat. Si la commande s'est effectuée sans compte-rendu, emacs
+vous dit « (Shell command succeeded with
+no output) ». Sinon, il coupe sa fenêtre en deux et
+vous donne la sortie de la commande.
Pour exécuter une commande shell puis insérer le résultat de cette
+commande dans le buffer, tapez plutôt C-u
+M-!
. Exemple : vous souhaitez insérer dans votre fichier
+la date exacte. Tapez C-u M-!
, puis emacs vous demande
+quelle commande vous souhaitez exécuter. Répondez
+« date ». Emacs insérera le résultat de la
+commande date
directement dans le fichier, au point où se
+trouve votre curseur.
Vous pouvez même demander un terminal dans un nouveau buffer, qui
+s'appelle précisément *Shell*, avec la commande M-x
+shell
. Attention, ce terminal ne traite pas les séquences
+d'échappement, pour cela il faut plutôt faire M-x term
+qui lance *terminal*.
Emacs permet de répéter autant de fois qu'on le souhaite le même
+caractère ou la même commande grâce à C-u
+<nombre>
. Ainsi, C-u 50 C-p
permet de
+répéter 50 fois la commande C-p
et donc de remonter de 50
+lignes. C-u 5 !
vous permet d'insérer 5 points
+d'exclamation.
Dans le cadre de commandes plus complexes, C-u
+<nombre>
agit comme un modificateur. On l'a vu par
+exemple pour changer la taille des lignes.
M-/
vous permet de compléter un mot en cours de
+frappe. Admettons que vous écriviez un article de droit
+constitutionnel et que vous deviez taper
+« anticonstitutionnellement » à plusieurs
+reprises. La deuxième fois, tapez simplement
+« anti » puis M-/
. Emacs complètera
+tout seul. Si d'autres mots commençant par
+« anti » apparaissent déjà dans le buffer, taper
+de nouveau M-/
permet de cycler entre tous les mots
+possibles.
On prétend qu'emacs sait aussi faire le café, en attendant, vous
+pouvez toujours vous faire psychanalyser par lui. Essayez donc
+M-x doctor
!
Emacs est extrêmement configurable. Pour modifier quelque chose à
+sa configuration, il faut modifier le fichier .emacs
se
+trouvant dans votre répertoire personnel. Le .emacs
de la
+config conscrits 2002 contient une petite introduction au langage
+utilisé ainsi qu'aux configurations de base que l'on peut faire.
Cet aide-mémoire a uniquement pour but de vous dépanner quand vous +demandez « Bon sang, c'est quoi déjà la commande pour +permuter deux caractères ? » Si vous débutez avec +emacs, il vaut mieux lire le tutorial qui est +conçu pour vous.
+ + Pour savoir comment décrypter les abréviations de commande
+(comment taper C-x C-c
), voir la section « Format des commandes emacs » du tutorial.
On lance emacs simplement en tapant :
+ +prao ~ $ emacs
+
+Pour éditer un fichier précis :
+ +prao ~ $ emacs monbofichier.html
+
+Commande | Commande étendue | Description |
---|---|---|
C-z | M-x suspend-emacs | Suspendre (ou +iconfier quand on est en mode graphique) emacs |
C-x C-c | M-x quit-window | Quitter emacs |
Commande | Nom complet | Action |
---|---|---|
C-h | M-x help | Aide d'emacs (M-? pour la config +conscrits 2002) |
C-h k | M-x describe-key | Brève description d'une +commande |
C-h i | M-x info | Lance les fichiers d'aide +info. |
C-h m | M-x describe-mode | Description d'un mode +majeur ou mineur |
C-h t | M-x help-with-tutorial | Lance le tutorial +d'emacs |
Commande | Commande étendue | Description |
---|---|---|
C-x C-f | M-x find-file | Ouvrir un (nouveau) fichier | +
C-x C-s | M-x save-buffer | Sauvegarder le buffer +courant |
C-x s | M-x save-some-buffers | Sauvegarder tous +les buffers en cours d'édition |
C-x C-b | +M-x list-buffers | +Avoir la liste de tous les buffers. | +
C-x b | +M-x switch-to-buffer | +Changer de buffer | +
C-x C-q | +M-x vc-toggle-read-only | +Passer le buffer en lecture seule, ou lecture-écriture (selon +l'état de départ) | +
C-x o | +M-x other-window | +Passer à une autre fenêtre | +
C-x 1 | +M-x delete-other-windows | +Faire disparaître toutes les fenêtres sauf la fenêtre courante | +
C-x 2 | +M-x split-window-horizontally | +Partage la fenêtre courante en 2, horizontalement | +
C-x 3 | +M-x split-window-vertically | +Partage la fenêtre courante en 2, verticalement | +
Bouger d'un(e)... | Vers +l'avant | Vers l'arrière |
---|---|---|
caractère | +
+ C-b
+ |
+
+ C-f
+ |
+
mot | +
+ M-b
+ |
+
+ M-f
+ |
+
ligne | +
+ C-p
+ |
+
+ C-n
+ |
+
début/fin de ligne | +
+ C-a
+ |
+
+ C-e
+ |
+
phrase | +
+ M-a
+ |
+
+ M-e
+ |
+
paragraphe | +
+ M-{
+ |
+
+ M-}
+ |
+
buffer | +
+ M-<
+ |
+
+ M->
+ |
+
Commande | Nom complet | Action |
---|---|---|
C-d | M-x delete-char | Efface le caractère sur +lequel est le curseur. |
M-d | M-x kill-word | Efface le mot à partir du +curseur. |
M-backspace | M-x backward-kill-word | Efface +le mot précédent. |
C-k | M-x kill-line | Efface la ligne à partir +du curseur |
_ | M-x kill-paragraph | Efface le paragraphe à +partir du curseur. |
M-z <c> | M-x zap-to-char | Efface jusqu'à la +prochaine occurrence de <c> (<c> compris) |
La sélection peut se faire à la souris mais aussi au +clavier :
+ +Commande | +Nom complet | +Action | +
---|---|---|
C-espace | +M-x set-mark-command | +Poser une +marque | +
C-x C-x | +M-x +exchange-point-and-mark | +Échanger la marque et le point | +
M-@ <n> | M-x mark-word | Sélectionne + <n> mots à partir de la position du curseur |
M-h | M-x mark-paragraph | Sélectionner tout le +paragraphe |
C-x h | M-x mark-whole-buffer | Sélectionner le +buffer entier |
Commande | Nom complet | Action |
---|---|---|
C-w | M-x kill-region | Couper la +sélection |
M-w | M-x copy-region-as-kill | Copier la +sélection |
C-y | M-x yank | coller |
M-y | M-x yank-pop | (uniquement après un
+C-y ) navigue dans l'history de la kill-ring |
Commande | Nom complet | Action |
---|---|---|
C-s | M-x isearch forward | Recherche simple vers +la fin du fichier |
C-r | M-x isearch backward | Recherche simple vers +le début du fichier |
C-M-s | M-x isearch-forward-regexp | Recherche +une expression régulière vers la fin du fichier |
C-M-r | M-x isearch-backward-regexp | Recherche +une expression régulière vers le début du fichier |
M-% | M-x query-replace | Remplacer |
_ | M-x query-replace-regexp | Remplacer en +utilisant une expression régulière |
Commande | Nom complet | Action |
---|---|---|
M-c | M-x capitalize-word | Met en majuscules la +premier caractère d'un mot |
M-u | M-x upcase-word | Met le mot en +majuscules |
M-l | M-x downcase-word | Met le mot en +minuscules |
C-x C-u | M-x upcase-region | Met la région en +majuscules (désactivé par défaut) |
C-x C-l | M-x downcase-region | Met la région en +minuscules (désactivé par défaut) |
Commande | +Nom complet | +Action | +
---|---|---|
+ C-t
+ |
+
+ M-x
+transpose-chars
+ |
+ Intervertit deux lettres | +
+ M-t
+ |
+
+ M-x
+transpose-words
+ |
+ Intervertit deux mots | +
+ C-x C-t
+ |
+
+ M-x
+transpose-lines
+ |
+ Intervertit deux lignes | +
+ _
+ |
+
+ M-x
+transpose-sentences
+ |
+ Intervertit deux phrases | +
+ _
+ |
+
+ M-x
+transpose-paragraphs
+ |
+ Intervertit deux paragraphes | +
Commande | Nom complet | Action |
---|---|---|
C-_ ou C-x u | M-x undo | Annule la dernière +action |
C-g | M-x keyboard-quit | Annule une commande en +cours de frappe ou d'exécution |
_ | M-x recover-file <fichier> | Récupérer +un fichier dont l'édition a été interrompue par une erreur +système |
_ | M-x revert-buffer | Récupérer le buffer dans +l'état de dernière sauvegarde |
Commande | Nom complet | Action |
---|---|---|
M-! | M-x shell-command | Exécute une commande +shell |
C-u M-! | _ | Insère le résultat d'une commande +dans le buffer courant |
M-| | M-x shell-command-on-region | Exécute une +commande sur la région sélectionnée |
C-u M-| | _ | Applique un filtre sur une région, +puis insère le résultat dans le buffer courant |
_ | M-x shell | Lance un shell dans terminal +rudimentaire (sans séquences d'échappement) |
_ | M-x term | Lance un terminal plus élaboré |
Commande | Nom complet | Action |
---|---|---|
M-$ | M-x ispell-word | Vérifie l'orthographe du +mot |
_ | M-x ispell-region | Vérifie l'orthographe de +la région |
_ | M-x ispell-buffer | Vérifie l'orthographe du +buffer entier |
_ | M-x ispell-change-dictionary | Change le +dictionnaire utilisé pour vérifier l'orthographe |
Commande | Nom complet | Action |
---|---|---|
M-q | M-x command fill-paragraph | Reformate le +paragraphe |
M-/ | M-x dabbrev-expand | Développe à la volée le +début d'un mot déjà tapé précédemment |
C-u <n> <commande> | _ | Répète +<n> fois la commande |
C-u <n> <c> | _ | Répète <n> +fois le caractère <c> |
M-g <n> | M-x goto-line | Va à la ligne +<n> |
_ | M-x calendar | Lance un calendrier du mois |
Commande | Nom complet | Action |
---|---|---|
_ | M-x spook | Génère une liste des mots clefs +censés confuser Echelon et la NSA (hum...) |
_ | M-x hanoi | Devant vos yeux ébahis, emacs +résout le casse-tête des tours de Hanoi |
_ | M-x handwrite | Transforme votre fichier texte +en PostScript prêt à imprimer, avec une écriture manuscrite |
_ | M-x dunnet | Jeu de type +« adventure » |
_ | M-x gomoku | Jeu de go |
_ | M-x doctor | Le psychanalyste d'emacs. Emacs +est votre ami. |
+Un éditeur de texte est un programme qui sert à... éditer des textes
+(c'est-à-dire à les créer et à les modifier). Contrairement à un
+traitement de texte, il ne sert pas à faire de la mise en
+forme, la mise en page qu'on peut y faire est seulement une question
+de lisibilité. Dans le monde Windows, par exemple, le Bloc-notes
+(notepad.exe
) est l'éditeur de texte (très rudimentaire)
+fourni avec le système. Sous UNIX, vous connaissez sans doute
+pico
, l'éditeur de texte utilisé par le lecteur de
+courrier pine
.
+
+Un éditeur de texte vous sert à : +
+ ++Donc, chaque fois que vous avez besoin d'écrire quelque chose, vous vous +servez d'un éditeur de texte. +
+ ++Voici les documentations que nous vous proposons : +
+ +pico
. Il ne déroutera pas les habitués des éditeurs
+Windows ou Mac.nano
(éditeur simple et convivial dérivé de
+pico
), emacs
et vim
(éditeurs
+plus puissants, mais plus compliqués)Emacs
, un éditeur très puissant et polyvalent :
+Vim
, un éditeur
+très puissant et rapide (encore en construction)
+Vous tapez le nom de l'éditeur, suivi du nom du fichier. Par exemple, pour
+écrire le fichier rapport.tex
avec l'éditeur nano
, on
+tape :
+
+corvette ~ $ nano rapport.tex
+
++Ce qui peut vous dérouter, c'est que certains éditeurs sont en +mode texte : ils se lancent dans la fenêtre où vous +avez tapé la commande, au lieu de se lancer dans une nouvelle +fenêtre. Quand on n'est pas habitué, on n'a pas l'impression d'être +«dans» un programme. C'est une question d'habitude! +
+ ++Dans tous les cas, il faut veiller à sauver son document très régulièrement +pendant qu'on l'écrit, et à quitter correctement l'éditeur (avec sa commande spécifique). +
+ ++Il y a plusieurs éditeurs, certains très simples et spartiates, +d'autres simples et à la souris, d'autres plus complexes... Le choix +dépend des goûts personnels, si on aime la souris ou non, les +raccourcis claviers, le syntax highlighting (colorisation +syntaxique), etc. +
+ +
+Pour les débutants, on conseille nano
(similaire à
+l'éditeur de pine
), joe
, ou, en mode
+graphique, nedit
et kwrite
. Si vous souhaitez
+un éditeur plus puissant, ou plus polyvalent, vous avez le choix entre
+Vim
et Emacs
.
+
pico
et continuer
+avec vim
ou autre.
+Nom | +Menus souris | +Couleur | +Remarques | +
---|---|---|---|
axe | +Oui | +Non | +Pas testé | +
cooledit | +Oui | +Oui | +Graphique et joli, peu connu. | +
elvis | +Oui | +Oui | +Vi en mode graphique. Peu testé. | +
emacs | +Oui | +Oui | +Intuitif ou puissant (les fonctions puissantes ne sont pas intuitives +et vice-versa). | +
joe | +Non | +Non | +Mode texte. Simple et puissant. | +
kwrite | +Oui | +Oui | +L'éditeur de KDE | +
kate | +Oui | +Oui | +Variante plus perfectionnée de kwrite |
+
mcedit | +Oui | +Non | +Pas vraiment testé. Mode texte cliquable. | +
nano | +Non | +Non | +Un clone amélioré pico |
+
NEdit | +Oui | +Oui | +Simple et intuitif | +
pico | +Non | +Non | +L'éditeur intégré de Pine | +
vim | +Non | +Oui | +Très puissant, très déroutant | +
xed | +Oui | +Non | +Simple et spartiate | +
xedit | +Oui | +Non | +Simple et spartiate | +
xemacs | +Oui | +Oui | +Presque identique à emacs. | +
gedit
.
+ +NEdit est un éditeur de texte en +mode graphique, disponible pour UNIX mais aussi MacOS X et Windows. Il +est simple et intuitif, et son fonctionnement ne devrait pas vous +poser trop de problèmes si vous êtes habitué à utiliser les éditeurs +Windows ou Mac. Bien que facile à apprendre, il est assez +puissant. C'est un bon choix si vous êtes effrayé par Emacs ou Vim. Gros +inconvénient quand même : comme il est en mode graphique, vous ne +pourrez pas le lancer à distance depuis un Windows ou un Mac. +
+ +
+On utilise les conventions suivantes dans cette page : « File >
+Open
» veut dire « cliquez sur File
, un menu
+déroulant va s'ouvrir, parcourez-le et cliquez sur
+Open
». « Ctrl+O
» signifie « tapez sur la
+touche Control (souvent abrégée en Ctrl
) puis sur la
+touche 'o' ». Shift+Ctrl+Z
veut dire « tapez sur la
+touche Shift (celle qui sert à faire les majuscules), puis la touche
+Control, puis la touche 'z' ».
+
+Voici un aperçu de ce que donne NEdit en train d'éditer un fichier +(ici, la page source de ce que vous êtes en train de lire). +
+ ++Observez que NEdit fait de la colorisation syntaxique, c'est-à-dire +qu'il colore les différents éléments du texte suivant leur +fonction. Ici, c'est un fichier XML (sorte de dérivé du HTML, le langage des pages +Web). Les « tags » sont de couleur différente du texte à proprement +parler, ce qui rend le tout beaucoup plus lisible. Cette +fonctionnalité est très utile quand vous tapez des fichiers LaTeX ou +HTML, par exemple, ou quand vous programmez... +
+ ++Rien de très différent des autres éditeurs ici. Si vous tapez : +
+ +
+sas ~ $ nedit
+
+
+NEdit va se lancer. Comme c'est un éditeur +graphique, il s'ouvre dans une nouvelle fenêtre. Vous pouvez aussi lui +indiquer directement le fichier à ouvrir : +
+ +
+sas ~ $ nedit index.html
+
+
+
+Pour ouvrir un fichier, vous pouvez indiquer le fichier à ouvrir en
+ligne de commande, comme vu plus haut, mais aussi utiliser File
+> Open
(ou Ctrl+O
). À chaque fois, le fichier
+s'ouvre dans une autre fenêtre. Il n'y a pas de
+limite au nombre de fichiers que vous pouvez ouvrir.
+
+NEdit garde en mémoire les fichiers que vous avez récemment
+édités. Pour en réouvrir un, choisissez parmi ceux que vous propose
+File > Open previous
.
+
+Si vous avez tapé nedit
tout court, vous avez à votre
+disposition une fenêtre sans titre (« Untitled »). Vous pouvez taper directement pour créer un
+nouveau fichier. NEdit vous demandera comment l'appeler quand vous
+sauvegarderez. Sinon, c'est File > New
(ou
+Ctrl+N
).
+
+C'est File > Save
ou Ctrl+S
. Si le fichier
+ne possède pas de titre (« Untitled »), NEdit vous
+demandera de lui en donner un. Pour sauvegarder sous un autre nom,
+File > Save As
.
+
+À noter que quand NEdit se ferme mal, il crée une sauvegarde du
+fichier que vous étiez en train d'éditer. Cette sauvegarde porte le
+nom ~monfichier
, ou « monfichier » est évidemment le nom
+du fichier que vous éditiez.
+
+Si vous souhaitez seulement fermer une fenêtre, c'est File >
+Close
(Ctrl+W
). Si vous souhaitez quitter
+définitivement NEdit (ce qui fermera toutes vos fenêtres, si vous en
+avez plusieurs), c'est File > Quit
(Ctrl+Q
).
+
+Pour effacer, utilisez les touches Del
(aussi appelées
+Suppr
) et backspace
(<-
) de
+votre clavier. Pour effacer tout un bloc de texte, sélectionner-le
+simplement à la souris, puis faites Ctrl-X
(ou appuyez
+sur Del
).
+
+Sélectionner avec votre souris l'expression à copier, puis tapez
+Ctrl+C
. Cette commande place l'expression sélectionnée
+dans le presse-papiers. Ensuite, cliquez à l'endroit ou vous voulez
+copier l'expression, et tapez Ctrl+V
. Pour couper-coller,
+même chose avec Ctrl+X
(couper) et Ctrl+V
.
+
+Pour inclure tout un fichier à l'endroit où se trouve votre curseur,
+utilisez File > Include file
(Alt+I
).
+
+Pour chercher une expression dans votre fichier, il faut passer par
+Search > Find
(Ctrl+F
). Différentes options
+sont possibles : faire une recherche simple, utiliser une expression
+régulière, rechercher en indiquant ou non la casse, etc. La recherche
+commence à l'endroit où se trouve votre curseur.
+
+Pour remplacer, c'est Search > Replace
+(Ctrl+R
). Indiquez d'abord l'expression à remplacer, uis
+la nouvelle expression. Vous aurez ensuite à choisir entre différentes
+manières de remplacer : pour remplacer seulement la première
+occurrence, cliquez sur « Replace ». Pour remplacer sur tout le
+document, cliquez sur « Window ». Si vous voulez pouvoir remplacer ou
+pas au cas par ca, cliquez sur « Replace and Find ». NEdit va
+rechercher chaque occurrence du terme à remplacer, puis vous
+l'indiquer en grisé. Vous devrez alors choisir entre remplacer
+(Ctrl+T
) ou passer à l'occurence suivante sans rien
+toucher (Ctrl+G
).
+
+Edit > Undo
(ou Ctrl+Z
) annule votre
+dernière action. Vous pouvez faire des Undo
successifs
+jusqu'à ce que mort s'ensuive.
+
+Vous pouvez aussi faire des Redo
. Cétikoi ? Imaginons que
+vous ayez collé un paragraphe à un endroit de votre fichier. Vous
+changez d'avis et faites un Undo
. Vous réfléchissez de
+nouveau et vous vous dites que non, il était très bien là. Vous voulez
+donc annuler l'opération « Annuler l'opération précédente » : c'est ce
+qu'on appelle un « redo », faisable avec Shift+Ctrl+Z
.
+
+Enfin, si vous n'aimez vraiment pas les modifications que vous avez
+faites à un fichier, vous pouvez revenir à létat où il était lors de
+sa dernière sauvegarde avec File > Revert to saved
.
+
Action | À la souris | Raccourci clavier | +
---|---|---|
Ouvrir un fichier | File > Open | Ctrl+O | +
Créer un nouveau fichier | File > New | Ctrl+N | +
Sauvegarder | File > Save | Ctrl+S | +
Fermer une fenêtre | File > Close | Ctrl+W | +
Quitter NEdit | File > Quit | Ctrl+Q | +
Couper la sélection | Edit > Cut | Ctrl+X | +
Copier la sélection | Edit > Copy | Ctrl+C | +
Coller la sélection | Edit > Paste | Ctrl-V | +
Rechercher | Search > Find | Ctrl+F | +
Remplacer | Search > Replace | Ctrl+R | +
Annuler la dernière action | Edit > Undo | Ctrl+Z | +
« Redo » | Edit > Redo | Shift+Ctrl+Z | +
+Cette page n'était qu'un simple tour d'horizon. NEdit a bien sûr,
+beaucoup plus de fonctionnalités. Pour en savoir plus, reportez-vous à
+la documentation fournie (Menu Help
), également
+disponible en ligne.
+
Cette page contient une collection d'astuces pour l'utilisateur +déjà rompu à GNU Emacs. Si vous êtes débutant et souhaitez vous +initier à Emacs, allez plutôt voir le tutorial de +tuteurs.
+ + Vous connaissez déjà la commande M-/
qui permet de
+compléter un mot en cours de frappe (sinon, voir le tutorial. Dans le même genre, emacs gère les
+abréviations.
Le mode mineur « abbreviation » vous permet, +comme son nom l'indique, de définir des abréviations qu'emacs se +chargera de développer au cours de l'édition du fichier. Par exemple, +vous pouvez définir l'abréviation ENS qui se développera en +« École Normale supérieure. »
+ +Essayons un peu. Tapez M-x abbrev-mode
pour basculer
+dans le mode « abbreviation » (Cf. la mode line). Tapez ensuite l'abréviation de votre choix
+(pour des raisons évidentes, ne choisissez pas un mot existant). Si
+vous souhaitez des abréviations locales (limitées au mode dans lequel
+vous vous trouvez), tapez ensuite C-x ail
. Pour les
+abréviations globales (qui s'appliquent à tous les modes), c'est
+C-x aig
. Tapez ensuite la version développée, puis
+appuyez sur ENTER
. Dorénavant, dans cette session, à
+chaque fois que vous taperez « ENS », emacs
+développera en « École Normale supérieure. »
+Pour sortir du mode abréviation, tapez M-x
+kill-all-abbrevs
.
+
On peut s'en servir pour faire comme dans MS Word et définir une +liste de mots sur lesquels on fait tout le temps des coquilles. Genre +« teh » pour « the » ou « poru » pour « pour ». Il suffit de dire à +Emacs que ce sont des abréviations pour qu'il les remplace au vol par +le mot orthographié correctement.
+ + Commençons par indiquer à emacs que l'on souhaite utiliser le mode
+abréviation par défaut, que l'on a un fichier d'abréviations qui
+s'appelle ~/.abrev
et que l'on souhaite sauvegarder ce
+fichier à chaque fois. D'abord, on crée le fichier
+.abrev
, vide pour l'instant.
+sas ~ $ touch .abrev
+
+
+ Puis on indique dans son .emacs
:
+(setq-default abbrev-mode t) +(read-abbrev-file "~/.abrev") +(setq save-abbrevs t) ++ +
Quittez puis relancez emacs tout seul, « Abbrev » figurera dans la
+mode line. Suivez la procédure décrite
+ci-dessus : on tape l'abréviation, puis C-x aig
ou
+C-x ail
, l'abréviation développée, puis
+Enter
. Répétez l'opération autant de fois que souhaité
+pour constituer votre liste d'abréviations. Ensuite, on sauvegarde
+cette liste : M-x write abbrev-file
puis
+Enter
. Emacs vous demande alors le nom de votre fichier,
+tapez donc ~/.abrev
puis Enter
.
+Par la suite, pour ajouter de nouvelles abréviations, contentez-vous +de les définir comme indiqué ci-dessus, emacs vous demandera si vous +voulez sauvegarder votre fichier d'abréviations. Il suffira de +répondre oui. +
+ +Pour effacer une abréviation, tapez M-x edit-abbrevs
+qui lance l'éditeur d'abréviations (pour simplement voir la liste,
+c'est M-x list-abbrevs
). Ladite liste ressemble à
+ceci :
+
+(global-abbrev-table) + +"gwb" 1 "George W. Bush" +"usa" 1 "États-Unis" +"pour" 1 "pour" ++ +
+Entre parenthèses, emacs vous dit qu'il s'agit d'abréviations globales
+(si elles avaient été locales, vous auriez vu
+(text-mode-abbrev-table)
, ou
+(fundamental-mode-abbrev-table)
, etc.). La colonne de
+gauche affiche les abréviations proprement dites, la seconde colonne
+est la cuisine interne d'emacs, la colonne de droite contient les
+abréviations développées. Pour effacer une abréviation, utilisez une
+commande standard pour effacer la ligne en question, C-k
+par exemple, puis sauvegardez.
+
Vous connaissez les bookmarks (alias « signets » pour Netscape ou +« favoris » pour Internet Explorer) dans un navigateur. Eh bien dans +emacs, il y en a aussi. Ils jouent très exactement le rôle de +marque-pages : vous pouvez ainsi retrouver exactement l'endroit +où vous en étiez d'une session à l'autre. +
+ +Commande | Commande complète | Action |
---|---|---|
C-x r m Enter | _ | Pose un bookmark à +l'endroit où se trouve le point | +
C-x r m <nom> Enter | M-x +bookmark-set | Pose un bookmark et lui donne un nom | +
_ | M-x bookmark-delete <nom> | Détruit le bookmark <nom> | +
C-x r b <nom> | M-x bookmark-jump | Aller au +bookmark <nom> | +
C-x r l | M-x bookmark-list | Lister tous les bookmarks | +
_ | M-x bookmark-file | Sauve les bookmarks | +
+Emacs vous permet d'agir sur vos répertoires : regarder le
+contenu d'un répertoire, effacer des fichiers, les renommer, les
+copier, etc. Bref, tout ce que vous faites d'ordinaire avec les
+commandes cp
, rm
ou encore mv
+sous UNIX. Tout cela, grâce à Dired (DIRectory EDitor)...
+
+Commençons par demander à Emacs de lire un répertoire. Par exemple, le
+répertoire armoire/
de tuteurs.
+
+sas ~ $ emacs ~tuteurs/armoire
+
+
+
+On obtient alors le résultat suivant, similaire à ce que vous aurait
+donné un ls -la
sur le même répertoire :
+
+ /users/staffs/tuteurs/armoire: + used 8 available 222601 + drwxr-xr-x 3 tuteurs 512 Jan 8 02:30 . + drwxr-xr-x 30 tuteurs 2560 Apr 1 20:06 .. + drwxr-xr-x 2 tuteurs 512 Jan 8 02:32 affiche + -rw-r--r-- 1 tuteurs 1334 Oct 14 2002 inventaire.txt + -rw-r--r-- 1 tuteurs 954 Nov 14 11:24 livres.txt ++ +
Vous pouvez vous déplacer dans Dired à l'aide de la touche
+n
, de la barre d'espace ou encore de
+C-n
. Pour éditer un fichier, appuyez sur
+e
. Pour simplement jeter un coup d'œil au fichier,
+v
demande à emacs d'afficher le fichier dans un buffer en
+lecture seule appelé « View ». On quitte ce buffer avec un simple
+q
.
+
+Autre remarque : si vous modifiez le contenu de votre directoire
+en dehors de Dired (par exemple, en suspendant emacs pour revenir au
+shell), il faudra relancer Dired pour prendre en compte les
+modifications du disque (C-x C-f <répertoire>
).
+
Le mécanisme est identique que celui pour effacer un buffer dans la
+liste des buffers (C-x C-b
). Placez votre curseur sur la
+bonne ligne puis tapez sur d
. Un « D » apparaît alors sur
+la ligne, tout à gauche :
+ /users/staffs/tuteurs/armoire: + used 8 available 222601 + drwxr-xr-x 3 tuteurs 512 Jan 8 02:30 . + drwxr-xr-x 30 tuteurs 2560 Apr 1 20:06 .. +D drwxr-xr-x 2 tuteurs 512 Jan 8 02:32 affiche + -rw-r--r-- 1 tuteurs 1334 Oct 14 2002 inventaire.txt +D -rw-r--r-- 1 tuteurs 954 Nov 14 11:24 livres.txt ++ +
+Pour aller plus rapidement, #
marque comme à effacer tous
+les fichiers d'auto-save (ceux dont le nom commence et finit par des
+#, précisément) et ~
, tous les fichiers de backup (dont
+le nom finit en ~). Pour enlever la marque d'effacement d'un fichier,
+appuyez sur u
(comme « undelete »).
+
+Quand vous avez fini, et que vous souhaitez vraiment détruire les
+fichiers, tapez x
. Emacs vous demandera de confirmer la
+destruction des fichiers marqués.
+
Pour copier, tapez C
(ou M-x
+dired-do-copy
) sur le fichier à copier. Emacs vous demande
+alors le nom du nouveau fichier. Pour renommer, même principe en
+tapant R
(ou M-x dired-do-move
).
Dired vous permet de faire quasiment toutes les opérations sur +fichier ou répertoire que les commandes UNIX standard. Le tableau +suivant récapitule des points déjà expliqués et vous présente d'autres +possibilités.
+ +Commande | Nom complet | Action | Équivalent UNIX | +
---|---|---|---|
e | _ | Éditer le fichier | emacs | +
R | M-x dired-do-rename | Renommer le +fichier | cp | +
C | M-x dired-do-copy | Renommer le +fichier | mv | +
d | M-x dired-do-delete | Marquer pour +l'effacement | rm | +
~ | _ | Marquer pour l'effacement tous les fichiers de +backup | rm *~ | +
# | _ | Marquer pour l'effacement tous les fichiers +d'autosave | rm *# | +
u | _ | Enlever la marque d'effacement | _ | +
+ | M-x dired-create-directory | Créer un +répertoire | mkdir | +
M | M-x dired-do-chmod | Changer les droits +d'accès | chmod | +
G | M-x dired-do-chgrp | Changer le +groupe | chgrp | +
O | M-x dired-do-chown | Changer le propriétaire du +fichier | chown | +
S | M-x dired-do-symlink | Faire un lien +symbolique | ln -s | +
H | M-x dired-do-hardlink | Faire un lien +dur | ln | +
Z | M-x dired-do-compress | Compresse un fichier (avec +gunzip) | gzip | +
Vous pouvez également lire des pages de man directement dans
+emacs, grâce à la commande M-x man
. Appuyez sur
+Enter
, puis emacs vous demandera quelle page de man vous
+souhaitez lire. Par défaut, il s'agit du mot sur lequel est placé
+votre curseur. Vous pouvez également spécifier la section dans
+laquelle se trouve la page recherchée. Par exemple, vous recherchez la
+page de man du test, célèbre distraction normalienne, qui se trouve
+dans la section I :
+Manual entry: test I ++ +
+Ce qui vous donne : +
+ ++Misc. Manual Pages TEST(I) + +NAME + test - distraction normalienne + +DESCRIPTION + Le test est une distraction spécifiquement normalienne. Le + test consiste à dire ou faire quelque chose avec l'intention + de tirer de son interlocuteur une réaction précise. Si + cette réaction se produit effectivement, on dira « test », +--11:%%-F1 *Man test I* { page 1 of 1} (Man)--L1--Top--------------------- ++ +
Il est plus facile de lire une page de man dans emacs qu'en
+invoquant la commande man
dans le shell. Seul
+inconvénient : vous ne pouvez pas interrompre emacs pendant qu'il
+est en train de mouliner à la recherche de la page de man demandée,
+pas même avec C-g
...
+Ce qu'on appelle time stamp ici, c'est la date +précise d'un événement. Emacs permet d'insérer automatiquement des +time stamps, typiquement pour indiquer la date de dernière +modification d'un fichier. +
+ +
+Par exemple, pour insérer automatiquement la date à chaque sauvegarde
+du fichier, commencez par écrire dans votre .emacs
:
+
+(add-hook 'write-file-hooks 'time-stamp) ++ +
+Ensuite, dans votre fichier, indiquez dans les 8 premières +lignes : +
+ ++Time-stamp: <> ++ +
+Lors de votre prochaine sauvegarde, emacs indiquera la date entre les +<> : +
+ ++Time-stamp: <2003-07-27 22:18:53 monlogin> ++ +
+Comme vous le voyez, par défaut la date est indiquée au format +année-mois-jour, suivie de votre login. À chaque fois que vous +sauvegarderez ce fichier, emacs mettra à jour la date. +
+ ++Non, je rigole...
+ + + + + diff --git a/src/unix/editeurs/unicode.tml b/src/unix/editeurs/unicode.tml new file mode 100644 index 0000000..134ec32 --- /dev/null +++ b/src/unix/editeurs/unicode.tml @@ -0,0 +1,353 @@ + + + + ++Nous allons voir ici comment taper de l'Unicode, ce qui recouvre plus ou +moins toutes les langues et tous les alphabets bizarres de la planète, et +peut-être même d'au-delà (l'intégration du Tengwar est en discussion). +
++Unicode, c'est une collection de caractères utilisés dans toutes les langues +du monde, avec un numéro pour chaque caractère. Ce qu'on entend par « taper +de l'Unicode », c'est taper un fichier texte qui utilise ces caractères, +probablement au delà de simplement les caractères latins. Pour bien +comprendre tout ce qui va suivre, il est probablement utile d'avoir lu +notre page théorique sur les +encodages. +
+ ++Les difficultés qui se présentent sont principalement de mettre en place un +environnement permettant de taper et d'afficher ces caractères, de choisir +et configurer un éditeur pour travailler en Unicode, et de taper des +caractères qui ne sont pas disponibles sur le clavier. +
+ ++Note : partout dans ce texte, quand il sera question d'un fichier en +Unicode, ça sous-entendra un fichier codé en UTF-8. +
+ ++La gestion d'Unicode demande un boulot non trivial de la part de l'éditeur, +c'est pourquoi la plupart n'en sont hélas pas capables. +
+ ++Parmi les éditeurs disponibles ici, seuls Vim et +Emacs en sont capables. Par chance, ce sont, de +loin, les deux meilleurs éditeurs, et vous avez tout intérêt à choisir l'un +d'eux même sans ça. +
++Sauf si vous comptez utiliser exclusivement Emacs en mode graphique, vous +avez besoin d'un terminal capable d'afficher de l'Unicode et d'en recevoir +de l'utilisateur. +
+ +
+L'émulateur de terminal par défaut proposé sur les machines de l'École
+(gnome-terminal
supporte l'Unicode.
+
+Un terminal Unicode est un terminal très particulier. Si vous lancez dedans +une application qui ne connaît pas Unicode, il est très probable qu'elle +fasse à peu près n'importe quoi (et le pire c'est que ça peut passer +inaperçu pendant un temps). Donc n'utilisez de terminal Unicode que pour des +applications prévues pour. +
++Ceci concerne en particulier Pine, ainsi que Flrn (Forum ; même si celui-ci +a un semblant d'options pour gérer Unicode). +
++Si on n'a pas à sa disposition le script uxterm, mais qu'on est sous Unix, +on peut quand même lancer xterm avec les bonnes options : +
+ +
+drakkar ~ $ LC_CTYPE=en_US.UTF-8 xterm \
+ -fn -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1 \
+ -fw -misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1 -u8
+
+
+
+Les deux polices indiquées sont fournies avec le projet
+XFree86, et sont des polices Unicode
+relativement complètes. Il est possible d'en utiliser d'autres, mais il faut
+les choisir en -iso10646-1
.
+
+Il se peut également que vous ayez le script uxterm, mais qu'il choisisse +des polices trop pauvres, avec lesquelles la moitié de vos caractères +apparaîtront comme des blancs ou des carrés : dans ce cas, précisez les +polices à utiliser avec la commande ci-dessus. +
+ ++Attention, si vous vous loguez à distance, +une commande est nécessaire pour informer les applications distantes que le +terminal est en Unicode : +
+drakkar ~ $ export LC_CTYPE=en_US.UTF-8
+
+
+Note : inutile d'essayer de changer le en_US
en autre chose,
+c'est le .UTF-8
qui est important ici, pour le reste il suffit
+que ce soit un code qui existe.
+
+Sous windows, avec
+PuTTY,
+il est possible d'avoir un terminal Unicode : dans les options de la
+connexion, dans la rubrique « Window », sous-rubrique « Translation »,
+indiquez UTF-8
à « Character set translation on received
+data ».
+
+Sous MacOS, avec Terminal.app, il est également possible d'avoir un terminal +Unicode : dans le menu « Terminal, Réglages de la fenêtre », sous-menu +« Affichage », sous-sous-menu « Codage du jeu de caractères », +choisissez « Unicode (UTF-8) ». +
+ +
+Si vous avez correctement mis en place votre terminal (en particulier le
+LC_CTYPE
si vous vous connectez à distance), il n'y a quasiment
+rien à faire.
+
+Avec Vim, après avoir lancé normalement votre éditeur, vous +pouvez vérifier qu'il est a bien détecté que vous étiez en Unicode avec : +
+:set encoding + encoding=utf-8+ +
+Si quand vous ouvrez un fichier, Vim écrit [converted]
à côté
+du nom, c'est qu'il a détecté que ce fichier n'était pas en Unicode ; il
+note quel était le codage de ce fichier, et l'utilisera pour sauver (et se
+plaindra s'il y a des caractères impossibles à sauver). On peut changer ça
+avec l'option fileencoding
.
+
+ Avec Emacs, si on l'utilise en mode graphique, il
+ n'arrive pas forcément à trouver tout seul les bonnes polices (on peut
+ taper correctement, mais tous les caractères exotiques sont affichés
+ comme des carrés). Une solution est de mettre la ligne suivante dans
+ votre fichier .Xresource
qui se trouve dans votre
+ répertoire personnel :
+
+Emacs.font: 9x15 ++ +
+Pour qu'Emacs veuille travailler en Unicode, le mieux est de le lancer en
+ayant positionné LC_CTYPE
. Si ce n'est pas fait, on peut le lui
+dire a posteriori avec M-x prefer-coding-system, puis
+mule-utf-8 ; cependant, certaines facilités (comme compose-o-e
+pour œ ne seront ainsi pas disponibles.
+
+Si on lance Emacs dans un terminal il faut faire une manipulation +supplémentaire : M-x set-keyboard-coding-system puis +mule-utf-8. +
+ +
+Quand vous ouvrez un fichier qui n'est pas en Unicode, Emacs va peut-être le
+détecter correctement. Pour le savoir, regardez en bas à gauche : un
+u
indique un fichier en Unicode, un 1
indique un
+fichier en latin-1. À la sauvegarde, Emacs tentera de garder le même codage,
+et à défaut passera en Unicode).
+
+Dans le cas de Vim comme d'Emacs, il est possible d'aider la détection +automatique et le choix du codage d'un fichier. Nous ne nous y attarderons +pas dans cette page : travaillez tout le temps en Unicode quand le latin-1 +ne suffit pas et tout se passera bien. +
+ + ++C'est bien d'avoir un terminal qui affiche de l'Unicode, mais sur un clavier +occidental normalement constitué, taper un Ω, un ҳ, un +פ, un ฆ ou un 鰻, ce n'est pas facile. Le problème se +résout avec ce qu'on appelle des méthodes d'entrée. Vous connaissez +certainement déjà celle qui utilise la touche Compose pour taper les accents +sur les claviers américains. +
+ +
+Si vous lancez uxterm
sur (ou depuis) une station Sun, vous
+remarquerez en bas à gauche une petite fenêtre où est écrit
+« English/European ». Cette fenêtre indique que le clavier est en mode
+occidental, il est possible de changer de mode.
+
+D'autres méthodes d'entrée sont disponibles, en tapant directement le numéro +Unicode du caractère ou en choisissant dans des tables thématiques. Il est +normalement possible d'utiliser cette fenêtre comme un menu pour changer le +mode, mais ça marche très mal. Ce système n'est hélas pas disponible sur les +PC. +
+ +
+Le fonctionnement exact ce ces méthodes d'entrées est décrit dans le fichier
+/usr/local/util/packages/xterm/lib/X11/locale/en_US.UTF-8/Compose
.
+Ce n'est pas très lisible, on en fera peut-être un jour un tableau
+récapitulatif. De toutes façons, il ne s'agit que d'une touche compose un
+peu enrichie (mode occidental), ou d'un simple changement des touches qu'on
+détermine en quelques essais.
+
+En plus des méthodes d'entrée fournies par le terminal (s'il est lancé en +mode texte) ou des mêmes méthodes d'entrée qu'uxterm (s'il est lancé en mode +graphique), Emacs propose son propre jeu de méthodes d'entrée. Elles +présentent deux avantages : elles sont locales à un buffer, il n'est donc +pas nécessaire de se soucier de les désactiver avant d'éditer un autre +fichier ou de taper une commande ; et elles affichent dans le minibuffer +des informations intéressantes, comme les différents caractères possibles +pour finir une frappe. +
+ ++On obtient la liste des méthodes disponibles avec M-x +list-input-methods, et on peut obtenir une description détaillée +d'une méthode particulière avec M-x describe-input-method. Il +faut faire attention à un point subtil : Emacs ne sait pas bien convertir +entre les différents codages, or beaucoup de ces méthodes d'entrée ne sont +pas prévues pour Unicode, il ne faut donc pas les utiliser. Il vaut mieux se +restreindre aux méthodes explicitement indiquées pour Unicode, ou dont le +nom contient « latin » (Emacs à partir de la version 21.3 sait convertir +entre unicode et les divers codages « latin »). +
+ ++Une fois la méthode choisie, il faut la sélectionner, ce qui se fait avec +M-x set-input-method (qui se dit aussi C-x RET c C-\ +(RET signifie « entrée »), Emacs demande alors d'entrer le nom +de la méthode dans le minibuffer (avec bien sur la complétion). Cela +sélectionne et active la méthode pour le buffer courant. On peut la +désactiver puis la réactiver avec C-\ ou M-x +toggle-input-method. Il est à noter que ces fonctions n'activent la +méthode que dans le buffer courant. +
+ ++Termim est un programme qui permet de donner des méthodes d'entrée à presque +n'importe quel terminal. Ces méthodes sont elles aussi capables d'afficher +le caractère en cours de construction en bas, et sont disponibles pour +n'importe quel programme tournant dans le terminal. +
+ ++Termim n'est pas spécifique à l'ENS, mais comme il a été développé par +d'anciens élèves, il est probable qu'il soit rarement installé ailleurs. +
+ +
+Pour utiliser termim, il suffit de taper termim
dans un
+terminal Unicode. On a alors la configuration par défaut (qu'il est possible
+de changer) :
+
+Pour plus de détails, consulter la page de man de termim, ainsi que les
+documentations des diverses méthodes d'entrée dans
+/usr/local/util/packages/termim/doc/
.
+
+Vim est un éditeur de textes difficile à prendre en main, mais extrêmement +puissant. Il s'agit d'un des nombreux héritiers (moraux) de l'historique Vi +des Unix ancestraux, et c'est dans cette famille probablement le plus +puissant. L'essentiel de ce qui sera dit ici sera aussi valable pour les +autres, mais pas tout ; la documentation de Vim précise pour chaque +commande si elle est spécifique ou pas. +
++Vi possède deux modes. En fait, ce n'est pas vrai, il en possède plus, et +Vim encore plus, mais il y en a deux qui sont plus importants que les autres +pour comprendre le fonctionnement. L'un de ces modes s'appelle le mode +insertion : c'est dans ce mode-là qu'on tape l'essentiel du texte. La +particularité de Vi est que ce mode propose très peu de fonctions de +manipulation du texte (recherche, copier-coller, sauvegarde). En effet, la +manipulation du texte se fait en mode normal : dans ce mode, à +peu près tous les caractères ont une signification et déclenchent des +modifications du texte ou un déplacement du curseur. +
+ ++Il est possible, avec Vi, de définir de nouvelles touches pour des actions. +Quand on débute, il est tentant de définir des touches pour les actions les +plus fréquentes (sauver, rechercher, quitter, copier, coller), et de rester +tout le temps en mode insertion. L'usage montre que c'est en général une +mauvaise idée : une fois l'habitude des deux modes prises, et l'automatisme +du changement de mode connu des doigts, l'efficacité croît avec +l'utilisation des commandes évoluées. Autant prendre l'habutude rapidement +donc. +
+ +
+On revient en mode normal avec la touche Escape
+
+Suivant la configuration, le changement peut ne prendre effet qu'au moment +où la touche suivante est tapée. En cas de problème, Ctrl-C +ramène toujours en mode normal. +
+ ++Beaucoup de commandes de Vi (en mode normal, donc) servent à déplacer le +curseur. Vers la droite ou la gauche, le haut et le bas bien sûr, mais aussi +de paragraphe en paragraphe, de mot en mot, en sautant à des marques +prédéfinies ou en recherchant rapidement un caractère donné, etc. +
+ ++Vi a aussi des commandes pour supprimer, copier, ou d'autres plus exotiques, +comme passer en majuscules. C'est bien beau, mais supprimer ou copier +quoi ? Faut-il une commande pour supprimer un mot, une autre pous supprimer +une ligne, encore une autre pour supprimer un paragraphe, etc. ? Là, on +découvre un des aspects les plus astucieux de Vi : les commandes d'action +définissent ce qu'il y a à faire, mais attendent ensuite une commande de +déplacement. L'action est alors appliquée à tout le texte parcouru par le +curseur dans le déplacement. +
+ ++Par exemple la commande w avance jusqu'au mot suivant, la +commande d est celle pour effacer. Alors dw supprime +tout du curseur au début du mot suivant. +
+ ++Avec ce système, connaître n commandes de déplacement et m commandes +d'action se conjuguent en n×m possibilités de manipulations différentes. +
+ + ++Voici un tableau récapitulant les principales commandes de Vim. Les +commandes marquées « action » attendent une commande de déplacement pour +agir (cette dénomination n'est pas standard), et agissent alors sur le texte +toucert par le déplacement ainsi désigné. Certains des termes utilisés dans +ce tableau seront expliqués un peu plus loin. Cette liste n'est pas +exhaustive du tout. +
+ +Commande | Sens | Type | Effet |
---|---|---|---|
i | insert | passe en mode insertion | |
a | append | passe en mode insertion en faisant avancer le curseur | |
o | open | passe en mode insertion en créant une nouvelle ligne sous le curseur | |
O | open | passe en mode insertion en créant une nouvelle ligne au dessus du curseur | |
R | replace | passe en mode remplacement | |
A | passe en mode insertion en allant à la fin de la ligne | ||
I | passe en mode insertion en allant au début de la ligne | ||
v | visual | passe en mode visuel | |
V | passe en mode visuel par ligne | ||
Ctrl-V | passe en mode visuel par bloc | ||
h | déplacement | déplace le curseur vers la gauche | |
j | déplacement | déplace le curseur vers le bas | |
k | déplacement | déplace le curseur vers le haut | |
l | déplacement | déplace le curseur vers la droite | |
w | word | déplacement | avance d'un mot |
b | back | déplacement | recule d'un mot |
e | end | déplacement | avance jusqu'à la fin d'un mot |
W | déplacement | avance d'un MOT | |
B | déplacement | recule d'un MOT | |
E | déplacement | avance jusqu'à la fin d'un MOT | |
fx | forward | déplacement | avance jusqu'au prochain x |
Fx | déplacement | recule jusqu'au x précédent | |
tx | déplacement | avance jusqu'à juste avant le prochain x | |
Tx | déplacement | recule jusqu'à juste après le x précédent | |
gg | déplacement | va au début du texte | |
G | déplacement | va à la fin du texte | |
$ | déplacement | va à la fin de la ligne | |
0 | déplacement | va au début de la ligne | |
{ | déplacement | va au début du paragraphe | |
} | déplacement | va à la fin du paragraphe | |
( | déplacement | va au début de la phrase | |
) | déplacement | va à la fin de la phrase | |
n | next | déplacement | continue une recherche |
N | déplacement | continue une recherche, en sens inverse | |
u | undo | annule la dernière action | |
Ctrl-R | redo | refait la dernière action annulée | |
. | redo | répète la dernière opération | |
x | supprime un caractère vers la droite (« delete ») | ||
X | supprime un caractère vers la gauche (« backspace ») | ||
s | substitute | supprime un caractère et passe en mode insertion | |
rx | replace | remplace un caractère par x | |
p | paste | colle un registre après le curseur | |
P | colle un registre avant le curseur | ||
~ | passe un caractère de majuscule en minuscule ou l'inverse | ||
/ | fais une recherche | ||
? | fais une recherche vers l'arrière | ||
* | cherche le mot sous le curseur | ||
# | cherche le mot sous le curseur vers l'arrière | ||
d | delete | action | supprime |
c | change | action | supprime et passe en mode insertion |
y | yank | action | copie dans un registre |
gu | action | passe en minuscules | |
gU | action | passe en majuscules | |
g? | action | passe en rot13 | |
< | action | décale vers la gauche | |
> | action | décale vers la droite | |
gq | action | recoupe les lignes | |
= | action | met en forme un programme | |
"x | sélectionne le registre x | ||
mx | pose la marque x | ||
'x | déplacement | va à la marque x (par ligne) | |
`x | déplacement | va à la marque x (par caractère) |
+La plupart des commandes peuvent être précédées d'un nombre, tapé +directement avec les chiffres : ce nombre va alors en général multiplier +l'action. Ainsi, puisque w avance d'un mot, 42 avance +de 42 mots. +
+ ++Le mode remplacement est similaire au mode insertion, mais les caractères +viennent remplacer ceux qui se trouvaient auparavant. Les modes visuels sont +des modes utilisés pour sélectionner du texte, nous verrons leur fonction +plus en détail plus bas. +
+ +
+Un mot est une suite de lettres et de chiffres, ou une suite de signes
+autres, exceptés les espaces. Un « MOT » est une suite de signe qui ne
+sont pas des espaces. Ainsi, tuteurs@sas.eleves.ens.fr
est un seul
+MOT, formé de sept mots.
+
+Quand on répète une touche correspondant à une action, le résultat est +souvent d'agir sur la ligne entière. Ainsi dd supprime une ligne. +Quand on la met en majuscule, elle agit souvent de la position du curseur à +la fin de la ligne (comme si la commande de déplacement était $. +Ainsi D supprime jusqu'à la fin de la ligne. +
+ ++Certaines commandes de déplacement sont dites horizontales alors +que d'autres sont verticales. Quand une action est suivie d'un +déplacement vertical, elle agit par lignes entières (par exemple +dj supprime la ligne où est le curseur et la ligne en dessous, en +entier). Cette distinction peut paraître difficile à saisir, mais à l'usage +le comportement est tel qu'on peut s'y attendre naturellement. +
+ ++Vim possède un certain nombre de registres qui peuvent contenir du texte. +Ils servent pour les opérations de copier-coller. Lors qu'une opération +supprime une portion de texte, celle-ci est automatiquement copiée dans le +registre sélectionné. La commande y sert à copier du texte dans +un registre sans le supprimer. +
+ +
+Si on ne précise rien, c'est le registre "
qui est sélectionné.
+La commande " permet de choisir le registre pour la prochaine
+opération. Il y a 26 registres génériques portant les lettres de
+a
à z
. Si on utilise une lettre en majuscule, le
+texte copié où coupé va s'ajouter au contenu du registre au lieu de le
+remplacer. Il est donc possible de maintenir 26 bouts de textes qu'on peut
+ensuite coller n'importe où.
+Par exemple, si on veut copier du texte dans le registre r
, on
+tape "ry.
+
+C'est la commande p ou P qui sert à coller le contenu
+d'un registre. Comme les autres, elle peut être précédée de "
+pour sélectionner le registre qui doit être collé.
+Par exemple, si on veut coller le contenu du registre r
, on
+tape "rp.
+
+À chaque fois qu'un registre est modifié, le registre 1
est
+rempli également, tandis que son ancien contenu est transféré dans le
+registre 2
, dont l'ancien contenu est à son tour transféré dans
+le registre 3
, et ainsi de suite jusqu'à 9.
+
+Attention. Un registre se souvient de la manière dont il a été rempli : par +une action verticale ou horizontale. Lors du collage, il s'insère de la +même manière : un registre copié verticalement s'insérera sur des lignes +entières, quelle que soit la position du curseur. Ça marche également pour +des copies faites en mode visuel par bloc. +
+ ++Le mode visuel, ou plutôt les modes visuels, permettent de sélectionner du +texte. Une commande de modification faite en mode visuel va agir sur la zone +sélectionnée au lieu d'un seul caractère, ou d'attendre un déplacement. Pour +les déplacements, le mode visuel fonctionne comme le mode commande. +
+ ++Le mode visuel normal sélectionne une zone qui va précisément de l'endroit +où se trouvait le curseur quand on a appuyé sur v à la position +curseur courante. Il est donc similaire à une commande de déplacement +horizontal. Le mode visuel par ligne sélectionne des lignes +entières, il est donc similaire à une commande de déplacement +vertical. +
+ +
+Le mode visuel par bloc sélectionne un rectangle de texte, indépendemment
+des coupures des lignes. Ceci peut servir pour des constructions en colonnes
+ou des alignements. Dans ce mode, les commandes de remplacement
+(c et s) et d'insertion (I et A
+au lieu de i et a) ont un fonctionnement
+particulier : le texte tapé sur la première ligne va être répété de la même
+manière sur toutes les lignes. Attention : pour que ça marche il ne faut
+pas utiliser de déplacement du curseur pendant l'insertion. Exemple : pour
+ajouter un >
au début de toutes les lignes d'un bout de
+texte, se placer au début, faire Ctrl-V, descendre jusqu'à la
+dernière ligne, faire I>, puis Escape.
+
+Vim est capable de poser des marques dans le texte, afin d'y revenir plus +tard facilement. On pose une marque avec m suivi d'une lettre. Il +y a donc 26 marques librement utilisables. +
+ ++On peut aller à une marque ainsi posée avec la commande ' suivie +de la lettre, ou ` pour un déplacement horizontal. Si la lettre +est donnée en majuscule, le saut peut faire changer de fichier si la marque +est dans un autre. +
+ ++Il existe deux marques spéciales, < et >, qui +désignent respectivement le début et la fin du dernier mode visuel. Elles +sont surtout utiles pour désigner un intervalle en ligne de commande. +
+ ++Pour les opérations plus complexes, en particulier celles qui agissent sur +la totalité du texte, Vim utilise une ligne de commande. Si on tape +: en mode normal, on peut taper une commande entière, qui ne sera +évaluée que lorsqu'on validera avec entrée. Avec Vim (et pas avec Vi), la +ligne de commande est complètement éditable, et comporte un hitorique. +
+ ++La plupart des commandes peuvent s'abréger. Les plus utilisées peuvent +descendre jusqu'à une seule lettre. +
+ +Commande | Abbréviation | Effet | +
---|---|---|
:write | :w |
+sauve le fichier en cours d'édition | +
:write fichier | :w |
+écrit le texte dans le fichier indiqué | +
:saveas fichier | :sav |
+sauve le fichier sous un nouveau nom | +
:edit fichier | :ed |
+édite un nouveau fichier | +
:quit | :q |
+quitte | +
:exit | :x |
+sauve si nécessaire et quitte | +
:wq | + | sauve et quitte | +
+La différence entre :w
avec un nom de fichier et
+:save
, c'est le nom qui sera utilisé pour les :w
+suivants : l'ancien nom dans le premier cas, le nouveau dans le second.
+
+Selon la configuration de Vim, ouvrir un nouveau fichier va soit fermer le +fichier en cours d'édition (avec confirmation, évidemment) soit simplement +le cacher, tout en permettant d'y revenir. +
+ +
+On peut insister pour quitter sans sauver, ou pour sauver sur un fichier qui
+existe déjà, en ajoutant !
à la fin de la commande, ce qui
+donne :w!
et :q!
.
+
+Les recherches ne se font pas en ligne de commande à proprement parler, mais
+le comportement de Vim y est le même. Une recherche se fait avec la touche
+/
. Vim passe alors dans un mode proche de la ligne de commande,
+et attend qu'on saisisse une expression rationnelle. On valide par entrée,
+et Vim saute à la premire occurence. On navigue alors entre les différentes
+occurences avec n
(comme next) et N
.
+
+Selon la configuration, Vim peut afficher la première occurence au fur et à +mesure de la saisie de l'expression cherchée. Attention toutefois : quand +on a trouvé, il faut bien valider, sinon on se retrouve au point de départ. +
+ + + + + + diff --git a/src/unix/exercices/contact.tml b/src/unix/exercices/contact.tml new file mode 100644 index 0000000..76aaf4d --- /dev/null +++ b/src/unix/exercices/contact.tml @@ -0,0 +1,57 @@ + + + + +qui
).qui
).qui
).date
).pot
).cal
).who
).mlnguyen
?
+De quelle promotion est-il ? (finger
).whoami
). write
et talk
?cp
et mv
Ces exercices sont des questions de cours : les solutions se +trouvent toutes dans les pages de man des commandes +en question. On suppose donc connues les commandes de less, qui servent à se +déplacer dans les pages de man... Testez les commandes sur des fichiers +et répertoires d'essai pour vous faire la main et comprendre ce qui se +passe.
+ ++Pour voir la solution, cliquer sur le bouton &icone.solution;. +
+ +cp
tentative/
de son répertoire essai/
, et que le
+répertoire tentative/
existe déjà ?+cp fichier1 fichier2 fichier3 repertoire/ ++ +
+Quel est l'effet de cette ligne ? +
+mv
est mv fichier1
+fichier2
; fichier1
est renommé en fichier2
.
+Mais que se passe-t-il si fichier2
existe déjà ?~/Rapport/docs/
.
+
+
+Comment faites-vous pour y amener Rapport.tex
qui se trouve dans
+le répertoire père ?
+Comment faites-vous ensuite pour ramener ce fichier à son emplacement +d'origine ? +
bla
en
+blo
? Que se passe-t-il si le répertoire blo
+existe déjà ?mv
avec les
+options -i
et -f
ensemble ?On n'a pas traité de la commande cat dans la page consacrée aux +commandes de base, parce que cat s'utilise le plus souvent avec des +redirections.
+ ++cat bla blo > blu ++
et
++cat bla blo >> blu ++ +
+Que se passe-t-il, pour chaque ligne, selon que le fichier blu +existe ou n'existe pas ?
find
Ces exercices sont des questions de cours : les solutions se
+trouvent toutes dans les pages de man des commandes
+en question. On suppose donc connues les commandes de less, qui servent à se
+déplacer dans les pages de man... Testez les commandes sur des fichiers
+et répertoires d'essai pour vous faire la main et comprendre ce qui se
+passe. Pour une présentation élémentaire de find
, vous
+pouvez aller lire le cours.
+
+Pour voir la solution, cliquer sur le bouton &icone.solution;. +
+ + +grep
Ces exercices sont des questions de cours : les solutions se
+trouvent toutes dans les pages de man des commandes
+en question. On suppose donc connues les commandes de less, qui
+servent à se déplacer dans les pages de man... Testez les commandes sur
+des fichiers et répertoires d'essai pour vous faire la main et comprendre
+ce qui se passe. Pour une présentation élémentaire de grep
,
+vous pouvez aller lire le cours.
+Pour voir la solution, cliquer sur le bouton &icone.solution;. +
+ +grep
grep
qui
+permettent d'obtenir des lignes de contexte (qui précèdent et/ou suivent la
+ligne où figure le mot) ?grep
ignore la casse
+des caractères (différence entre majuscules et minuscules) dans sa
+recherche ?grep
ne recherche
+que les lignes où figure le mot tel quel, et non pas ses variantes ? Par
+exemple : on cherche le mot «travail», mais pas «travailleur» ou
+«travailler».Les exercices portants sur les fenêtres, les réactions de la souris, etc, ont +été conçus pour des gens utilisant la config conscrits version 2000. Les +façons de procéder peuvent être différentes selon les configurations, et tous +les raccourcis claviers de la config conscrits n'ont pas été indiqués. +
+ +
+Plusieurs exercices utilisent le texte de la première partie de
+Germinal. Les fichiers se trouvent dans
+~tuteurs/exercices/
. Vous pouvez aussi récupérer zola.tgz
(à décompresser avec tar zxvf
+zola.tgz
).
+&icone.note; À plusieurs reprises, dans +les corrigés des exercices du début, vous rencontrerez des paragraphes +signalés par cette icône; ce 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.
+ ++Les corrigés sont accessibles par un lien placé avant chaque énoncé (icône +&icone.solution;).
+ + +cat
head
et
+tail
gamma
.gamma
.&icone.solution;Que +faut-il impérativement quitter ou fermer avant de se déloguer ?
+ + + + + + diff --git a/src/unix/exercices/less.tml b/src/unix/exercices/less.tml new file mode 100644 index 0000000..1dc3e95 --- /dev/null +++ b/src/unix/exercices/less.tml @@ -0,0 +1,79 @@ + + + + +less
+La commande less
sert à visualiser des fichiers sans les éditer.
+less
sert aussi à lire les pages de man. Pour une présentation
+élémentaire de cette commande, allez lire le cours des
+tuteurs.
+
less
?less
?less
d'ouvrir le fichier en
+plaçant en haut de l'écran la ligne n ?less
d'ouvrir le fichier en
+plaçant en haut de l'écran la première ligne où apparaît un motif
+donné ?less
qui
+permettent de chercher un motif dans un fichier, respectivement après et avant
+la position courante ?less
de chercher le mot à
+partir de la première ligne du fichier, et ce où que l'on soit dans le
+fichier ?-i
à
+less
? Quelle option faut-il mettre à la place de
+-i
pour chercher toTo
tout en ignorant la casse des
+caractères ?/
?ls
Ces exercices sont des questions de cours : les solutions se
+trouvent toutes dans les pages de man des commandes
+en question. On suppose donc connues les commandes de less, qui servent à se
+déplacer dans les pages de man... Testez les commandes sur des fichiers
+et répertoires d'essai pour vous faire la main et comprendre ce qui se
+passe. Vous pouvez aussi aller lire le cours sur
+ls
.
/usr/local/games/bin
..flnewsrc.forum
?-R
de
+ls
?Mail
? Qu'est-ce que cela signifie ?ls -l
.ls
vous affiche le contenu de votre
+répertoire avec des signes distinctifs qui permettent d'identifier plus vite
+le type de fichiers (slash /
pour les répertoires, arobase
+@
pour les liens, etc). Quelle est l'option qui ajoute ces
+caratères ?+drwx--x--x ++ + +
+Je ne suis pas propriétaire; puis-je afficher le contenu du répertoire ? +
mkdir
,
+rmdir
, cd
)Ces exercices sont des questions de cours : les solutions se +trouvent toutes dans les pages de man des commandes +en question. On suppose donc connues les commandes de less, qui servent à se +déplacer dans les pages de man... Testez les commandes sur des fichiers +et répertoires d'essai pour vous faire la main et comprendre ce qui se +passe. Vous pouvez aussi aller lire le cours sur les répertoires. +
+ +mkdir
et rmdir
+mkdir mkdir +
bla/
,
+dont ls
vous dit qu'il est vide. Cependant, quand vous tapez
+
++rmdir bla ++ +
la machine vous répond :
+ ++rmdir: bla: Directory not empty ++ + +
+Que faut-il faire ? +
+mkdir
peut prendre des
+options ?+mkdir Rapport/annexes ++
+peut fonctionner et créer effectivement ce sous-répertoire ? +
+mkdir
qui permette
+de créer à la fois un répertoire et un sous-répertoire de ce
+répertoire ?rmdir -p toto/tata/tutu/ +
toto/
et un sous répertoire tutu/
dans
+toto/
. Quelle option faut-il utiliser pour que :
+
+toto/
n'existe pas, le répertoire et son sous-répertoire
+soient créés;toto/
existe déjà, le sous-répertoire tutu/
+soit créé, sans message d'erreur.cd
+But de l'exercice : apprendre à se servir de .
et
+..
(«point» et «point point»). Supposons que vous avez
+l'arborescence suivante chez vous :
+
+ + +
+ +~/Rapport/docs/afaire/
.~/Rapport/docs/fait/
.~/Rapport/
.less
le contenu de ~/www/index.html
.~/Rapport/docs/
.~/Mail/
&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.
+ +Le nom de votre machine est indiqué dans le prompt (la série de
+caractères qui précède le curseur dans une fenêtre où on peut taper des
+commandes). Par exemple, le prompt de chaland
est, avec la
+config conscrits :
+bireme ~ $
+
+
+
+Le prompt (en bon français : l'invite) affiche également le répertoire où
+vous vous trouvez; par exemple, si vous travaillez sur drakkar
et
+que vous êtes dans votre répertoire Rapport
, le prompt
+sera :
+bireme ~/Rapport $
+
+
+&icone.note; Évidemment, tout dépend de votre configuration; il se peut
+qu'elle n'affiche pas le nom de la machine, et se limite à un
+$
. Pour afficher le nom de la machine si celui-ci n'est pas
+indiqué par défaut, vous avez plusieurs solutions :
+uname -n +bireme ++ +La commande
uname
affiche diverses informations sur le système;
+l'option -a
donne l'ensemble de ces informations (nom de la
+machine, système d'exploitation et sa version, etc).
+hostname
+bireme
+
+affiche le nom de la machine sur laquelle vous êtes logué. Cette commande fait
+en fait appel à uname
, et est parfaitement standard.HOSTNAME
avec
+echo
:
++echo $HOSTNAME +bireme ++ +Nota bene : la variable
HOSTNAME
n'est pas définie
+dans toutes les configurations.
+Repérez d'abord l'emplacement physique de l'imprimante. Ensuite tapez
+qui
et orientez vous.... L'imprimante est surnommée
+josianne
, vous n'aurez donc pas de mal à repérer
+prao
et felouque
.
+
vedette
, à Jourdan ?
+Il faut utiliser les options de qui
permettant de spécifier une
+salle. Ici, c'est Jourdan qui nous intéresse; on tape donc :
+
+bireme ~ $ qui -jourdan
+
+ou encore
+
+bireme ~ $ qui j
+
+
+
+Si quelqu'un est logué, son nom figure en dessous du nom de la machine,
+parfois entre crochets (s'il n'a pas touché son clavier depuis quelques
+minutes, mais aussi s'il travaille avec emacs
, s'il utilise
+Netscape, ou s'il joue à un jeu...).
+
Cette fois-ci, c'est la carte de l'Infi que l'on demande. On tape : +
+ +
+bireme ~ $ qui -46
+
+
++Avec la config conscrits, les tuteurs ont leur nom souligné, afin d'être +facilement localisables et joignables. +
+ +Il suffit de taper date
. Attention, par défaut la date est en
+anglais...
+Avec la plupart des horloges numériques, la date apparaît quand on clique sur +l'horloge.
+ +pot
par défaut affiche le menu du jour, midi et soir.
+Elle peut prendre différentes options : hier
,
+demain
, semaine
. Pour savoir quel était le menu
+d'hier, il faut taper :
+
+
+bireme ~ $ pot hier
+
+
+Vous disposez de la commande cal
(calendrier) pour savoir cela.
+Sans arguments, cal
affiche le calendrier du mois en cours. On
+peut aussi lui préciser le numéro du mois (entre 1 et 12) et l'année (entre 1
+et 9999). Si vous êtes né en mars 1982, vous tapez donc :
+
+bireme ~ $ cal 3 1982
+
+
+cal
lancé
+par défaut est différent de celui des stations Sun et a tendance à mettre
+des couleurs repoussantes. Pour pallier ce problème, tapez
+/usr/bin/cal
au lieu de cal
.
+drakkar
+ ?
+Vous voulez savoir qui se trouve présent informatiquement sur
+drakkar
; vous avez deux solutions :
+
drakkar
, en tapant :
+
+paquebot ~ $ drakkar
+
+
+
+Et tapez who
: une liste s'affiche, indiquant le nom de
+login de l'utilisateur, le type de terminal qu'il utilise, la date et l'heure
+à laquelle il s'est logué et depuis où il est connecté. Repérez votre nom
+dans cette liste...
+Les types de terminaux apparaissent sous la forme
+pts/numéro
, à l'exception d'un seul, qui s'appelle
+console
: c'est le terminal associé physiquement à la
+machine; la personne loguée sur la console est donc celle qui est physiquement
+loguée sur drakkar
.
finger
, sous la
+forme suivante :
+
+
+paquebot ~ $ finger @drakkar
+
+
+
+Vous obtenez ainsi des renseignements sur les personnes présentes sur
+drakkar
, de façon un peu plus complète qu'avec
+who
: nom de login, nom complet, type de terminal
+(TTY
-«ti ti ouaille»; TeleTYpe), idle time,
+date et heure du login, endroit depuis lequel la personne est loguée.
+
+L'idle time est théoriquement le temps depuis lequel la personne n'a
+pas touché son clavier; c'est cependant une donnée peu fiable, dans la mesure
+où des «jeux» comme xkobo
, emacs
ou
+Netscape
ne sont pas considérés comme utilisant le clavier.
+
+Vous auriez pu utiliser ces méthodes pour savoir qui se trouvait physiquement
+sur vedette
, dans l'exercice 3, en regardant qui se trouvait sur
+la console.
+
mlnguyen
? De quelle promotion est-elle ? Il faut taper
+ ++finger mlnguyen ++ + +
+Dans le texte qui s'affiche figurent divers renseignements : le nom de
+login (Login name: mlnguyen
), le nom complet (In real
+life: Marie-Lan Nguyen
) ainsi que la promotion et la
+branche :
+Directory: /users/98/litt/mlnguyen ++ +
+C'est une littéraire de la promotion 1998. +
+ ++Il y a aussi diverses indications : dernière fois qu'elle s'est logué sur +la machine sur laquelle vous vous trouvez, si elle a lu son mail récemment. +
+ +
+Il y a aussi une ligne Plan
, et une autre Project
.
+Elles correspondent à deux fichiers qui se trouvent sur le compte de
+l'utilisateur, qui y fait figurer diverses informations personnelles. Le
+.plan
contient plusieurs lignes, et le .project
en
+contient une seule.
+
C'est la commande whoami
qui permet de faire cela.
&icone.note; Autres manières de procéder :
+ +USER
, de la
+façon suivante :
+
++echo $USER ++ +
+Cependant, celle-ci n'est pas nécessairement toujours définie. +
id
, qui affiche le login et le groupe de
+l'utilisateur, accompagné de deux numéros, l'uid (user
+identification : le numéro de l'utilisateur) et le gid
+(group identification : numéro du groupe). id
se
+prononce aille-di.rwrite
et
+talk
? rwrite
envoie des messages qui apparaissent dans la console du
+destinataire (il faut donc qu'il soit logué). Exemple
+d'utilisation :
+bireme ~ $ rwrite toto@drakkar
+Salut, tu manges au pot?
+^D
+
+
++De son côté, Toto voit apparaître ceci dans sa console : +
+ ++Message from titi@corvette on /dev/pts/4 at 15:12 ... +Salut, tu manges au pot? +<EOT> ++ + +
+talk
(ou mieux : ytalk
) est une conversation
+interactive entre deux personnes ou plus. La demande de talk se fait de la
+même façon que pour écrire un rwrite
:
+bireme ~ $ ytalk toto@drakkar
+
+
++Toto reçoit un message dans sa console, et répond par +
+ +
+drakkar ~ $ ytalk titi@corvette
+
+
+On quitte la conversation en tapant ^C
.
+
+Pour une présentation complète de ce programme, allez voir le cours des +tuteurs sur ytalk. +
+ + + + + + + diff --git a/src/unix/exercices/solutions/cp_mv-sol.tml b/src/unix/exercices/solutions/cp_mv-sol.tml new file mode 100644 index 0000000..24f89e6 --- /dev/null +++ b/src/unix/exercices/solutions/cp_mv-sol.tml @@ -0,0 +1,262 @@ + + + + +cp
et mv
+Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans les
+pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
+
cp
+Oui, c'est à cela que sert l'option -r
(recursive).
+Supposons, suivant l'arborescence d'exemple,
+que vous voulez copier le répertoire Rapport
et ses
+sous-répertoires dans le répertoire www
. Il faut
+taper :
+cp -r Rapport/ www/ ++
+ou +
+ ++cp -R Rapport/ www/ +
tentative/
de son répertoire essai/
, et que
+le répertoire tentative/
existe déjà ?
+
+Quand on indique le nom d'un répertoire qui n'existe pas, cp
+considère qu'il s'agit du nom à donner à la copie du premier répertoire (ou
+fichier). Quand le répertoire existe déjà, cp
considère qu'il
+s'agit de l'endroit où il faut placer la copie du premier élément (la
+«cible» : target).
+Si donc on tape +
++cp -R essai/ tentative/ ++
+et que tentative/
existe déjà, on obtient une copie de
+essai/
, également appelée essai/
, placée dans le
+répertoire tentative/
.
+
+Le programme demande si vous voulez vraiment effacer le fichier déjà existant +pour le remplacer par celui dont vous faites la copie. +
+ + Il en est
+ainsi parce que vous avez un alias de cp
sur cp -i
,
+qui demande confirmation. Ce n'est pas nécessairement le cas partout.
+
&icone.note;Pour savoir quels sont vos
+alias, tapez «alias
» ou allez voir dans votre fichier
+.alias
. Avec la config conscrits, les alias sont dans le
+.zshrc
(le fichier de configuration du shell
+zsh
).
+cp fichier1 fichier2 fichier3 repertoire/ ++ +
+Les fichiers fichier1
, fichier2
et
+fichier3
sont copiés sous leur nom dans le répertoire
+répertoire/
, qui doit exister.
+
mv
+Si vous avez un alias de mv
sur mv -i
(cas de la
+config conscrits), le programme demande si vous voulez réécrire le fichier
+cible en remplaçant son contenu par celui du fichier de départ :
+
+bireme ~ $ ls +rapport.tex notes complements +bireme ~ $mv notes complements +mv: overwrite complements (yes/no)? y +bireme ~ $ls +rapport.tex complements ++
~/Rapport/docs/
.
+
+Rapport.tex
qui
+se trouve dans le répertoire père ?
++mv ../Rapport.tex . ++ +
Amener le fichier Rapport.tex
situé dans répertoire père
+(../Rapport.tex
) dans le répertoire où on se trouve
+(.
: ici).
+
+mv Rapport.tex .. ++ + +
Amener le fichier Rapport.tex
situé dans le répertoire courant,
+dans le répertoire père (..
).
bla/
en blo/
? Que se passe-t-il si le
+répertoire blo
existe déjà ?
+
+
+Il suffit de taper +
+ ++mv bla/ blo/ ++ +
+Si jamais blo/
existe déjà, bla/
devient un
+sous-répertoire de blo/
.
+
+Supposons que l'on veut amener Rapport.tex
dans le répertoire
+courant, et l'appeler stage
. On tape :
+
+mv ../Rapport.tex stage ++ +
+Rapport.tex
est à la fois déplacé et renommé; vous pouvez
+vérifier qu'il n'est plus dans Rapport
et qu'il y a désormais un
+fichier stage
dans docs/
.
+
+Si le fichier d'arrivée existe déjà, on se retrouve dans le cas vu tout au +début de cet exercice (remplacement ou non). +
+Pour déplacer et renommer, la syntaxe est la même que pour un fichier : +
+ ++mv ../bla ble/ ++ +
+déplace le répertoire bla/
du répertoire père dans le répertoire
+courant, et le renomme en ble/
. Si jamais ble/
+existe déjà, bla/
y est déplacé sous son nom, et devient un
+sous-répertoire de ble/
.
+
mv
+avec les options -i
et -f
ensemble ?
+.
+
+
+L'option -f
(force) sert à renommer le fichier
+impérativement, même si le fichier cible existe déjà, sans demander
+confirmation. L'option -i
(interactive) demande
+confirmation. Des deux options, c'est -f
qui l'emporte :
+
+bireme ~ $ ls +bla tutu Rapport/ +bireme ~ $ alias mv +mv='mv -i' +bireme ~ $ mv bla tutu +mv: overwrite tutu (yes/no)? n +bireme ~ $ mv -f bla tutu +bireme ~ $ ls +tutu Rapport/ ++
+ +Il suffit de taper les deux noms de fichiers à la suite; par exemple, pour +visualier bla puis blo, on tape :
+ ++cat bla blo +
+On demande à cat d'afficher le contenu d'un fichier, puis de placer +le résultat dans un fichier :
+ ++cat toto > copie +
+On demande à cat de rediriger sa sortie dans un fichier, puis on n'a +plus qu'à taper le texte et à indiquer la fin du texte avec ^D : +
+ ++galion ~ $ ls +maitrise.tex +galion ~ $ cat > notes +Faire la bibliographie +Revoir le chapitre 1. +^D +galion ~ $ ls +maitrise.tex notes +galion ~ $ cat notes +Faire la bibliographie +Revoir le chapitre 1. +galion ~ $ ++ +
+C'est bien sûr un moyen un peu spartiate pour écrire du texte, mais dans le +cas de choses très courtes dans ce style, ce peut être plus rapide que de +lancer un véritable éditeur. +
cat bla blo > blu
et
+cat bla blo >> blu+ +
+Que se passe-t-il, pour chaque ligne, selon que le fichier blu +existe ou n'existe pas ?
+ + + +cat bla blo > blu
+concatène les deux fichiers bla et +blo, et place le résultat dans un nouveau fichier appelé +blu. Si blu existe déjà, le shell affiche un message +d'erreur et ne fait rien.
+ ++cat bla blo >> blu place la concaténation de bla et +blo à la fin d'un fichier blu déjà existant. S'il n'existe +pas, le shell affiche un message d'erreur et en reste là, sans créer de +fichier blu.
+ ++Les deux redirections ne sont donc pas du tout équivalentes, mais leur action +dépend du shell, qui a des options qui modifie leur comportement par défaut. +
+Il faut utiliser l'option -n de cat. Par exemple : +
+ ++galion ~ $ cat bla +Pomme +Poire +Prune +galion ~ $ cat -n bla > blo +galion ~ $ cat blo + 1 Pomme + 2 Poire + 3 Prune +galion ~ $ +
+Il s'agit de donner le nom des fichiers en indiquant qu'ils commencent par +essai et qu'ils finissent par un chiffre. Il y a en fait plusieurs +façons de faire : +
+ ++Ici, on trouvera tous les fichiers commençant par essai, suivi d'un +unique caractère qui peut ne pas être un chiffre.
++On commande par créer un répertoire C avec mkdir, puis, avec +mv, on déplace tous les fichiers ayant un suffixe . et +dont le nom est fait d'une suite de caractères quelconques : +
+ + ++galion ~ $ ls +hello* zoinx* +hello.c zoinx.c +galion ~ $ mkdir C +galion ~ $ mv *.c C/ +galion ~ $ ls +C/ hello* zoinx* +galion ~ $ ls C/ +hello.c zoinx.c ++
+On commence par créer le répertoire Rangement avec mkdir. +Pour désigner les noms des fichiers, il faut indiquer la notion de +«minuscule». On pourrait écrire explicitement l'alphabet entre crochets, pour +dire «l'un de ces caractères», puis faire de même avec les majuscules. Mais on +gagne du temps en utilisant des intervalles ([a-z] et +[A-Z]). Le reste du nom du fichier, avant et après la minuscule puis +la majuscule, est indéfini. On écrit donc : +
+ + + ++galion ~ $ mkdir Rangement +galion ~ $ mv *[a-z][A-Z]* Rangement/ ++
+Le principe est le même, sauf que l'on indique explicitement les voyelles +entre crochets : +
+ + ++galion ~ $ mkdir Rangement +galion ~ $ mv *[aeiou][aeiou][aeiou]* Rangement/ ++
+On peut procéder de deux façons : utiliser ls seul et des jokers, ou +rediriger ls dans grep et utiliser les expressions +régulières de grep. +
+ +Dans la suite du corrigé, on suppose que l'on se trouve déjà dans +/bin/.
+ +On met des apostrophes autour des expressions de +grep pour les protéger contre le shell. Enfin, on ne détaille pas les +expressions régulières; à noter ces points importants à propos de +grep :
+ + ++On constate que grep est plus complexe mais bien plus puissant que +les jokers du shell. +
+ + ++ | Avec ls seul | +Avec ls et grep | +|
Commence par «a» et dont la deuxième lettre est «s» ou «t» | +ls a[st]* | +ls | grep '^a[st].*' | +|
Contient «un» et se termine par «t» | +ls *un*t | +ls | grep '.*un.*t$' | + +|
Contient «gre» ou «st» | +ls *(gre|st)* | +ls | grep '\(gre\|st\)' | +|
Contient exactement deux lettres «m» | ++ | ls | grep '[^m]*m[^m]*m[^m]*' | +|
Contient au moins deux lettres «m» | ++ | ls | grep '.*m.*m.*' | +|
Contient au moins quatre caractères et aucun chiffre | ++ | ls | grep '^[^0-9]\{4,\}$' | +|
Est constitué de deux lettres exactement | +ls ?? | +ls | grep '^..$' | ++ |
Commence et finit par un chiffre | +ls [0-9]*[0-9] | +ls | grep '^[0-9].*[0-9]$' | +
+Une ligne vide est différente d'une ligne ne contenant +que des blancs, c'est-à-dire des espaces ou des tabulations, même si pour un +oeil humain cela revient au même. La commande de recherche sera différente +selon le cas : +
+grep '^$' fichier
grep '^[[:space:]]$' fichier+
+Pour éliminer toutes les lignes blanches pour un oeil humain, on combine les +deux expressions et on utilise l'option -v qui inverse le sens de la +recherche. On n'a plus qu'à rediriger la sortie dans un fichier. On écrit +donc :
+ +grep -v '\(^[[:space:]]$\|^$\)' fichier1 > fichier2+
+en remplaçant éventuellement le motif par '^$' ou +^[[:space:]]$' selon que l'on veut ôter les lignes vides ou les +lignes contenant des blancs. +
+ + +On cherche la chaîne de caractère «mine», qui soit un mot, éventuellement +suivi d'un «s». On va donc désigner le début du mot avec le symbole +\<, la fin du mot avec le symbole \>, et le «s» +optionnel avec le point d'interrogation. On veut aussi faire apparaître le +nombre d'occurences du mot, dans chaque fichier du répertoire zola, +avec l'option -c de grep.
+ ++Les noms des fichiers de Germinal sont de la forme +zola1.txt, de 1 à 6. Pour chercher dans tous les fichiers de cette +sorte, on peut écrire, au choix (attention à ne pas confondre les +wildcards du shell avec les expressions régulières de grep). +
+ ++On peut donc écrire : +
+ +grep -c '\<mines?\>' *.txt+ + +
Et on obtient :
+ ++zola1.txt:5 +zola2.txt:0 +zola3.txt:3 +zola4.txt:3 +zola5.txt:1 +zola6.txt:2 ++ +
+Attention : les chiffres indiqués correspondent au nombre de lignes où figure +le mot «mine», mais pas au nombre réel d'occurences du mot. Pour un mot précis +comme celui-ci, la marge d'erreur est faible, mais si vous cherchez un article +défini, par exemple, cette méthode est insuffisante. C'est là qu'un langage +comme Perl est très utile. +
+ Une ligne blanche, c'est rien entre un début de ligne +et une fin de ligne, ou alors une ligne ne contenant que des espaces et des +tabulations. On va donc chercher toutes les lignes correspondant à ce schéma +(voir plus haut pour ces questions de définitions). +Comme il y a deux motifs à chercher, on utilise l'expression régulière qui +permet de chercher un motif ou un autre :
+ +\(motif1\|motif2\)+ + + +
+La commande à taper est : +
+ +grep '\(^[[:space:]]$\|^$\)' zola1.txt+ +
+Ensuite, on veut compter le nombre de lignes ainsi produites par +grep, avec la commande wc (word count); on va +utiliser l'option -l (lines, lignes). On tape donc : +
+ +grep '\(^[[:space:]]$\|^$\)' zola1.txt | wc -l+ +
+Et on obtient «81». Bien évidemment, on aurait pu se rappeler que l'option +-c de grep donne le nombre de lignes matchant la chaîne +recherchée, et obtenir le même résultat en ne lançant qu'un seul processus... +
+ +À propos du fichier /etc/hosts : les ordinateurs sur +l'Internet sont désignés par une adresse IP, constituée de 4 nombres entre 0 +et 255 séparés par des points. C'est cette adresse IP qui permet à un +ordinateur d'envoyer un message (datagramme IP) à un autre. +
+ ++Cependant, mémoriser les adresses IP n'est pas commode pour un humain. Pour +cette raison, les ordinateurs ont aussi un «nom», constitué d'un nombre +variable de composantes séparées par des points (par exemple, +research.att.com). +
+ ++Le mécanisme de conversion d'un nom en adresse IP (ou le mécanisme inverse) +s'appelle la «résolution de noms». Elle se fait normalement par +l'intermédiaire de nameservers, ordinateurs sur lequel tourne le +programme BIND, qui se chargent de répondre aux questions de résolution de +noms. +
+ ++Cependant, pour certaines machines très communément accédées depuis un +ordinateur donné (par exemple, les machines de la même salle) ou bien +pour éviter d'avoir à configurer un nameserver, on préfère parfois +utiliser le fichier /etc/hosts : celui-ci définit un certain nombre +de conversions nom -> adresse IP qui seront consultées avant les +nameservers.
+ ++La bibliothèque qui se charge de faire la traduction, et qui consulte d'abord +le /etc/hosts puis les nameservers, s'appelle la +libresolv.
+ + +head -15 /etc/hosts
tail -15 /etc/hosts
tail +15 /etc/hosts
head -20 /etc/hosts | tail -6
+ + +Il y a deux solutions : +
+ +head -9 fichier | tail -5+
tail -8 fichier | head -5+
+On utilise la commande head pour extraire les cinq premières +lignes du fichier, puis la commande tail pour ne conserver que la +dernière des cinq :
+ + +head -5 fichier | tail -1+ + + +
+C'est la commande sort qui permet de trier des fichiers selon un +ordre donné.
+ ++sort sans option trie automatiquement en fonction du premier caractère, +par ordre alphabétique si c'est une lettre, par ordre croissant si ce sont des +chiffres. Il suffit donc de taper : +
+sort fichier+
Pour cela, sans utiliser d'éditeur, on peut +utiliser la commande cut, qui élimine des champs dans une ligne. Par +défaut, le séparateur de champs est une tabulation. Ici, on peut demander à +cut de considérer le slash comme un séparateur de champs (option +-d, «délimiteur»), et de ne conserver que le deuxième champ du +fichier (option -f, field). On redirige ensuite la sortie +dans un autre fichier :
+ +cut -d/ -f2 fichier > fichier2+
sort -r fichier2
+La réponse n'est pas simple, car vous avez également des répertoires de +configuration, comme .netscape/ qui contient entre autres vos +marque-pages (bookmarks.html), vos préférences +(preferences), etc. On va compter le nombre de fichiers commençant +par un point situés dans votre répertoire principal, en éliminant les copies +de sauvegarde (qui finissent par un tilde). Il y a plusieurs manières de +procéder.
+ ++On peut penser à une solution complexe et bien lourde utilisant toutes ces +commandes, ce qui permet de les apprendre plus qu'autre chose... On affiche +une liste longue avec l'ensemble des fichiers (ls -la) puis qui +élimine tous les répertoires et les liens avec grep en ne gardant que +les lignes qui commencent par un tiret :
+ +ls -al | grep '^-'+ +
+Ensuite, on utilise tr pour ne conserver qu'un seul espace entre +chaque champ de la liste, en utilisant l'option -s (squeeze) +qui remplace par une seule occurence la répétition d'un caractère spécifié; on +met des apostrophes autour de l'espace pour qu'il soit compris comme tel et +non comme un simple espace : +
+ +tr -s ' '+ +
+On utilise cut pour conserver le dernier champ avec les noms de +fichiers (en l'occurence le neuvième champ), en indiquant que l'espace sert de +délimiteur de champ :
+ +cut -d' ' -f9+ +
+Enfin, on demande à grep de ne retenir que les fichiers commençant +par un point, et ne finissant pas par un tilde, et on les comptel'option +-c de grep. Cela donne pour finir :
+ +ls -al | grep '^-' | tr -s ' ' | cut -d' ' -f 9 | grep -c '^\..*[^~]$' ++ +
+Mais que de tourments pour si peu... :-) +
Il y a plus simple... On demande à +ls une liste des fichiers commençant par un point (avec l'option +-d pour ne pas descendre dans les répertoires de configuration), on +ne garde que les lignes ne finissant pas par un / ou un tilde, et on +compte :
+ +ls -ad .* | grep -vc '\(~\|/\)$'+
+On demande à find de chercher dans le répertoire courant +(.), sans descendre dans l'arborescence (-maxdepth 1), tous +les fichiers normaux (-type f : file), dont le nom commence +par un point (-name '.*'). On les compte ensuite avec wc : +
+ +find . -maxdepth 1 -name '.*' -type f | wc -l+ +
+Cette solution est préférable car elle ne lance que deux processus et non pas +au moins cinq comme la précédente. +
+ + +Il y a deux solutions, l'une faisant appel à ls et grep, +l'autre faisant appel à find. +
+ ++Le principe est le même que dans l'exercice précédent. La différence est que +grep va chercher les lignes qui commencent par un point +et finissent par un slash. Cela se fait de la manière +suivante :
+ +grep '^\..*/$'+ +
+.* signifie «n'importe quel caractère (point) répété zéro ou +plusieurs fois (étoile)». +
+ ++On tape donc :
+ +ls -ad .* | grep '^\..*/$' | wc -l+ +
+On part ici du principe que vous avez un alias de ls sur ls +-F (qui met un slash après les noms de répertoires, une étoile après les +noms d'exécutables et une arobase après les noms de liens). Si ce n'est pas le +cas, ajoutez-le dans un fichier .alias ou tapez ls -lF. +
+On demande à find de chercher tous les fichiers de type «répertoire» +(-type d : directory), et dont le nom commence par un point +(-name '.*', les quotes servant à protéger du shell le contenu de +l'expression), dans descendre dans l'arborescence. +
+ ++On tape donc :
+ +find . -maxdepth 1 type d -name '.*' | wc -l+
+Il y a une inexactitude dans le résultat : find compte aussi +./ dans le résultat. +
+ +C'est l'option -R de ls qui permet d'afficher +récursivement le contenu d'un répertoire et de ses sous-répertoires (à ne +pas confondre avec -r qui inverse le tri). Pour rediriger la +sortie d'une commande dans un fichier, on utilise le caractère +>. Pour mettre la liste de tous les fichiers de l'arborescence +dans un fichier toto, il faut donc taper :
+ +ls -R > toto+
+Il va s'agir de faire une liste récursive de l'ensemble de votre compte +(option -R de ls), incluant les fichiers de configuration +(option -a) et les renseignements donnés par l'option -l. +
+ ++De la longue liste obtenue, on ne veut retenir que les fichiers, dont les +droits commencent par un tiret (un d identifie les répertoires). On +va donc demander à grep de chercher toutes les lignes commençant par +un tiret. +
+ ++Enfin, on va placer le résultat dans un fichier appelé liste. On tape +donc :
+ +ls -alR | grep '^-' > liste+
+ +L'option -l de ls donne une liste longue des fichiers, +incluant les droits et le type des fichiers, identifiés par une +lettre : rien pour un fichier, «d» pour un répertoire +(directory), «l» pour un lien (link); par exemple : +
+ ++drwxr-xr-x 2 emilia users 1024 mai 10 02:27 www/ ++ +
+Pour obtenir la liste des fichiers du répertoire courant qui sont des liens +symboliques, il suffit donc d'afficher cette liste longue et de ne retenir +que les lignes qui commencent par un «l», grâce à la commande +grep. On utilise une expression régulière pour cela : le +chapeau (^) désigne le début de la ligne, et l'ensemble de +l'expression est placée entre apostrophes pour qu'elle ne soit pas +interprétée par le shell. On tape donc : +
+ + +ls -l | grep '^l'+
+ + +Il faut lancer le man de less, et ensuite chercher dedans le nombre +de lignes contenant le mot file («fichier» en anglais), avec +grep. C'est l'option -c (count) de grep +qui va servir. +
+ ++Finalement, on écrit :
+ +man less | grep -c file+ +
+Et on obtient 205. C'est le nombre de lignes contenant au moins une fois la +chaîne de caractères file, mais pas le nombre d'occurences du mot +dans le fichier : il pourrait y avoir plusieurs fois file sur la même +ligne. On atteint là encore la limite de ce que sait faire grep. +
+Il faut d'abord faire une liste des fichiers avec leurs tailles (option +-l de ls. Ensuite, il faut trier ces lignes en fonction de +la taille, avec la commande sort. Une ligne est de la forme +suivante : +
+ ++-rwxr-xr-x 1 root staff 5872 Jan 21 1994 /usr/bin/rm* ++ +
+C'est le cinquième champ, celui de la taille, qui nous intéresse. La +numérotation commençant à 0 (comme les étages), pour indiquer le cinquième +champ on écrit +4. Ensuite, on veut que le tri se fasse selon un +critère numérique (option -n) et à l'envers, en commençant par les +plus grandes valeurs (option -r, reverse). +
+ ++Pour finir, on veut les dix premières lignes du résultat. On les sélectionne +avec la commande head; par défaut, elle prend les dix premières +lignes d'un fichier, il n'est donc pas nécessaire de préciser le nombre de +lignes voulues. Finalement, on écrit : +
+ +ls -l /usr/bin | sort -nr +4 | head+
Une manière de résoudre cet exercice consiste à utiliser le programme
+sed
qui sert à manipuler du texte.
Nous allons utiliser la commande s
de sed
.
+Sa syntaxe est la
s/regexp/remplacement/
où regexp est une expression régulière et +remplacement une chaîne devant la remplacer.
+ +
+sas ~ $ cat /etc/hosts | sed -e "s/^.\{4\}\(.\).*/\1/"
+
+Le "^.\{4\}"
du début sert à filtrer les
+4 premiers caractères de chaque ligne. Ensuite, \(.\)
filtre
+n'importe quel caractère, le fait de mettre des parenthèses enregistre le
+caractère en question dans une variable que l'on peut utiliser dans
+la chaîne de remplacement avec "\1"
. Ensuite,
+.*
filtre le reste de la ligne.
+sas ~ $ cat /etc/hosts | sed -e "s/^.\{4\}\(.\{6\}\)..\(.\).*/\1 \2/"
+
+
+sas ~ $ cat /etc/hosts | sed -e "s/^.\{14\}//"
+
++Les pages jaunes (yellow pages) sont un système qui centralise +certaines bases de données communes à toutes les machines du système (logins +et noms utilisateurs, mots de passes, groupes d'utilisateurs, noms et adresses +des autres machines sur le réseau) sur un petit nombre de serveurs redondants; +cela permet de garder des bases de données cohérentes, plus facilement que si +on devait mettre à jour leur contenu sur plusieurs centaines de machines à la +fois. +
+ ++On dit plutôt aujourd'hui NIS ou Network Information System, Yellow Pages +étant une marque déposée de British Telecom.
+ ++La commande ypcat permet de visualiser une base de données: citons en +particulier: ypcat passwd, ypcat group, ypcat +hosts.
+ ++Ces bases de données sont les versions centralisées des fichiers +/etc/passwd, /etc/group et /etc/hosts, lesquels ne +contiennent alors plus que quelques informations; par exemple, le fichier +/etc/hosts contient tout de même des adresses de machines, ne +serait-ce que celle du serveur de pages jaunes.... +
+ ++ +Pour avoir une liste de tous les comptes, on tape
+ +ypcat passwd+ +
+On veut ensuite sélectionner les gens dont le répertoire personnel contient +/96/, et dont le login commence par l, et compter le nombre +de lignes (option -c de grep). On tape donc :
+ +ypcat passwd |grep c '^l.*/96/'+
+et on obtient 19. +
++ +On veut savoir si des chemins d'accès de répertoires personnels sont de la +forme
+ +/users/8[0-9]+ +
+On tape donc : +
+ +ypcat passwd | grep '/users/8[0-9]'
+ +On veut avoir une liste des gens dont le chemin d'accès du répertoire +personnel commence par /users/ et un numéro : /users/9[0-9] +(puisqu'on vient de voir qu'il n'y a pas de gens des promotions antérieures). +On utilise l'option -c (count) pour avoir le nombre de +personnes :
+ +ypcat passwd | grep -c '/users/9[0-9]/'+
+ + +Le numéro d'ID (user identification) identifie les utilisateurs, les +numéros les plus bas correspondant au système (l'UID de root est 0). C'est le +troisième champ, les champs étant séparés par des deux-points. +
+ ++On va utiliser sort pour trier, selon un critère numérique (option +-n). Par défaut, avec sort les champs sont délimités par des +blancs, il faut donc indiquer qu'ici ce sont des deux-points, avec l'option +-t. Enfin, on trie en fonction du troisième champ (2, +la numérotation commençant à 0).
+ ++On suppose aussi que l'on veut pouvoir lire le résultat du tri avec +less. On tape donc :
+ +ypcat passwd | grep '/users/9[0-9]' | sort -n -t: +2 | less+
grep
pour ne garder que les lignes des pages
+jaunes correspondant aux personnes ayant zsh
comme shell de
+login et on utilise sed
pour n'afficher que le login :
+
+bireme ~ $ ypcat passwd | grep "zsh$" | sed -e "s/:.*//"
+
+clipper
, tout le
+monde à /bin/sh
comme shell de login. Le shell (en général
+zsh
) n'est lancé qu'à partir du script
+.profile
. Il s'agit d'un choix de l'administrateur système.
+
+bireme ~ $ ypcat passwd | sed -e "s/:\/.*//
+s/.*://" | grep " .*[aeiou][aeiou].*"
+
++C'est la commande df qui donne des informations sur le disque et sur +les partitions montées. Pour rediriger la sortie d'une commande dans un +fichier, on utilise l'opérateur de redirection > suivi du nom du +fichier. Dans notre cas, pour conserver les informations dans un fichier +appelé disque, on écrira : +
+ ++df > disque +
+C'est la commande finger qui donne des renseignements sur les +utilisateurs. Si on tape +
+ ++finger martin ++ +
+ou mieux (plus rapide), +
+ ++finger -m martin ++ +
+les renseignements concernant l'utilisateur s'affichent. On y trouve la +date de son dernier login sur la machine où vous êtes, ainsi que la date de la +dernière fois où il a lu son courrier (mais ce à condition qu'il ait reçu du +courrier depuis...). +
+C'est la commande file qui permet d'afficher le type des fichiers. +Dans notre cas, il suffit d'écrire: +
+ ++galion ~ $ file /etc/passwd /usr/include/stdio.h /bin/ls . +/etc/passwd: ASCII text +/usr/include/stdio.h: C program text +/bin/ls: ELF 32-bit MSB executable, SPARC, version 1, stripped +.: directory +galion ~ $ ++
find
Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans les
+pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
+
find
+
+
+C'est l'option -name
qui permet de spécifier le nom du ou des
+fichiers recherchés. On peut indiquer le nom d'un fichier complet
+(bofichier.tex
), ou utiliser des expressions régulières (celles du
+shell, pas celles de grep
...) :
*
) désigne «un ou plusieurs caractères»;
+Dans notre cas, le premier caractère est un «a» ou un «A» ([aA]
),
+suivi de quelque chose (*
) et terminé par un chiffre entre 3 et 6
+([3456]
ou [3-6]
). On écrit donc :
+
+find . -name '[aA]*[3-6]' -print ++
+C'est l'option -mtime
qui permet de donner une indication en
+jours. La syntaxe varie selon ce que l'on souhaite :
+
-mtime 30
: le fichier a été modifié il y a 30
+jours;-mtime +30
: le fichier a été modifié il y a 30
+jours ou plus;-mtime -30
: le fichier a été modifié il y a 30
+jours ou moins.
+
+On utilise l'option -newer
(«plus récent»). Par exemple, on
+cherche un fichier .tex
modifié plus récemment que
+bofichier.tex
:
+
+find . -newer bofichier.tex -name '*.tex' ++ + +
+On peut raffiner la demande, en combinant cette option avec l'option
+-mtime
: cherchons les fichiers modifiés plus récemment que
+bofichier.tex
, mais il y a plus de 5 jours :
+find . -newer bofichier.tex -mtime +5 -name '*.tex' +
+On utilise l'option -type
pour spécifier le genre de fichier
+recherché : les principaux sont f
(file) pour un
+fichier normal, et d
(directory) pour un répertoire.
+On tape donc :
+
+find . -type d ++
+
+On utilise l'option -size
, suivie d'un nombre et d'une lettre
+indiquant l'unité de mesure (c
: octets,
+k
: kilo-octets). Comme pour -mtime
, on
+utilise +
, -
ou [rien]
pour indiquer
+que la taille est, respectivement, supérieure, inférieure ou égale à la valeur
+donnée.
+Par exemple, on recherche un fichier modifié il y a moins de 12 jours et dont +la taille soit supérieure à 30 K :
+ ++find . -type f -size +30k -mtime -12 -print +
+ + +La ligne utilisée pour trouver ces fichiers et la suivante : +
+ ++find . -mtime +30 -name '*~' ++ +
+Il y a deux façons de faire exécuter des commandes sur les fichiers trouvés
+par find
: utiliser l'option «-exec
+commande», ou utiliser un pipe avec xargs
.
+
-exec
commande exécute la commande
+sur le fichier courant. La commande est terminée par le marqueur
+;
, qu'il faut protéger du shell avec un backslash. Le fichier
+courant est désigné par la chaîne {}
.
+
++Pour effacer tous les fichiers de sauvegarde vieux de plus d'un mois, on tape +donc :
+ ++find . -mtime +30 -name '*~' -print -exec rm \; ++ + +
+On peut faire exécuter la commande de façon interactive en remplaçant
+-exec
par -ok
:
+find . -mtime +30 -name '*~' -print -ok rm \; ++ +
+Le programme demande, pour chaque fichier trouvé, si on veut bien exécuter la
+commande; la réponse doit être «y
» ou «Y
».
+
-exec
est en fait très lourde, car elle
+crée un nouveau processus pour chaque fichier; il vaut mieux
+rediriger le résultat de find
avec un pipe et
+xargs
. Dans notre cas, on tapera donc :
+
+
++find . mtime +30 -name '*~' | xargs -p rm ++ +
+L'option -p
de xargs
rend cette commande
+interactive. Il faut répondre «y
» ou «Y
» pour
+confirmer.
+
+Quelle différence y a-t-il entre un simple pipe et
+«| xargs
» ? Pour la comprendre, voici un
+exercice : cherchez tous les fichiers contenus dans
+/usr/local/lib/texmf/tex
et cherchez dedans le mot «supertab». Il
+y a deux solutions :
+
+find /usr/local/lib/texmf/tex -type f | grep supertab ++ +
+Vous obtenez une liste de fichiers contenant «supertab» dans leur nom. +
++find /usr/local/lib/texmf/tex -type f | xargs grep supertab ++ +
+grep
cherche dans chaque fichier passé en argument la chaîne de
+caractères «supertab», ce qui est très différent...
grep
: corrigés
+Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans les
+pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
+
grep
grep
+qui permettent d'obtenir des lignes de contexte (qui précèdent et/ou suivent
+la ligne où figure le mot) ? + +Il y en a plusieurs, qui se recoupent :
+ +-num
: le numéro indique le nombre de
+lignes de contexte que l'on veut voir figurer avant et après la ligne où
+figure le mot recherché. Par exemple, si on veut trois lignes de contexte,
+avant et après la mot (soit sept lignes au total), on tape :
+
++grep -3 ... ++
-A num
(after) : le numéro
+indique le nombre de lignes qui doivent suivre la ligne où figure le mot. Si
+on en veut quatre, on tapera :
+
+
++grep -A 4 ... ++
-B num
(before) : le
+numéro indique le nombre de lignes qui doivent précéder la ligne où
+figure le mot. Si on en veut dix, on tape :
+
++grep -B 10 ... ++
-C num
(context) : équivalent à
+ -num
. En fait, les trois lignes suivantes sont
+ strictement équivalentes :
++grep -2 ... +grep -C 2 ... +grep -A 2 -B 2 ... ++
+C'est l'option -n
(number) qui sert à cela; le numéro
+figure tout au début de la ligne, suivi d'un deux-points (:
) et
+du texte. Par exemple :
+bireme ~ $ grep -n violon verlaine.tex
+12:des violons de l'automne
+
++Quand on fait une recherche dans plusieurs fichiers, le nom du fichier figure +d'abord, puis le numéro de la ligne, et enfin le texte, le tout séparé par des +deux-points. Par exemple : +
+ +
+bireme ~ $ grep -n violon *
+verlaine.tex:12:des violons de l'automne
+orchestre:45:Cordes : contrebasse, violoncelle, alto, violons.
+
+
+Que se passe-t-il quand on demande également des lignes de
+contexte ?
+
+La disposition générale ne change pas, par contre, le signe utilisé pour
+séparer la ligne de son numéro est un tiret (-
) quand il s'agit
+des lignes de contexte, et un deux-points quand il s'agit de la ligne voulue.
+Par exemple :
+bireme ~ $" grep -nC violon verlaine.tex
+10-
+11-Les sanglots longs
+12:des violons de l'automne
+13-bercent mon coeur
+14-d'une langueur monotone
+
+
+
+On utilise l'option -c
(count) :
+
+bireme ~ $ grep -c violon *
+verlaine.tex:1
+orchestre:1
+
+grep
+ignore la casse des caractères (différence entre majuscules et minuscules)
+dans sa recherche ?
+
+Par défaut, grep
fait la différence entre les majuscules et les
+minuscules; pour invalider ce comportement, on utilise l'option
+-i
(ignorecase).
+C'est l'option -l
qui permet de faire cela : afficher les
+noms des fichiers où figure au moins une fois la chaîne de caractères
+recherchée.
+On veut en fait inverser le sens de la recherche : c'est l'option
+-v
qui fait cela.
+
+On utilise l'option -L
, qui affiche les noms de fichiers où ne
+figurent pas la chaîne de caractères recherchée. Il ne faut bien sûr pas
+confondre les options -l
et -L
...
+
grep
ne
+recherche que les lignes où figure le mot tel quel, et non pas ses
+variantes ?
+
+C'est l'option -w
(comme word) qui sert à cela : un
+mot complet est délimité comme suit :
+
+Si donc on veut chercher «travail» et aucune forme dérivée de ce mot, on +écrit : +
+ ++grep -w travail mon-fichier ++
+On veut chercher toutes les occurences des mots «terre» et «ciel» dans les
+deux premiers chapitres de la première partie de Germinal, avec les
+numéros des lignes. On propose deux solutions, la première utilisant les
+ressources de la syntaxe de grep
, la seconde utilisant l'option
+-f
avec un fichier.
grep
: La structure
+\(mot1\|mot2\)
permet de chercher plusieurs mots. Ici, on tape la
+ligne suivante :
+
++grep '\(ciel\|terre\)' fichier ++ +
+On met des apostrophes de part et d'autre de l'expression pour la protéger +contre le shell, c'est-à-dire pour que le shell ne cherche pas à interpréter +l'expression. +
-f
fichier» : dans un
+fichier quelconque, que nous appellerons liste
, on indique les
+mots que l'on recherche : «ciel» et «terre». Chaque ligne correspond à un
+mot recherché. Il ne faut donc pas mettre de ligne comme
+
++terre ciel ++ + +
+car le programme chercherait la chaîne de caractères «terre ciel», qui est +assez improbable en français. Il ne faut pas non plus laisser de ligne +blanche : le programme afficherait l'ensemble du texte. +
+
+Quelle que soit la solution retenue, on veut ensuite afficher le numéro des
+lignes (option -n
); d'autre part, pour que la recherche soit
+exhaustive, il vaut mieux que grep
ne fasse pas de différence
+entre les majuscules et les minuscules, avec l'option -i
+(ignore case, ignorer la casse des caractères). Il faut aussi décider
+si on cherche les mots tels quels, sans leurs variantes (comme «terre» au
+pluriel), ou si on accepte ces variantes. Si on ne veut que le mot sans ses
+dérivés, on utilise l'option -w
.
+
+Pour désigner les deux fichiers où faire la recherche, on peut les écrire +littéralement : +
+ ++zola1.txt zola2.txt ++
+ou, mieux, utiliser les joker du shell : +
++zola[12].txt ++ +
[12]
signifie «le caractère 1 ou le caractère 2».
+Finalement, on peut taper, au choix :
++grep -inw -f liste zola1.txt zola2.txt +grep -inw -f liste zola[12].txt +grep -inw '\(ciel\|terre\)' zola1.txt zola2.txt +grep -inw '\(ciel\|terre\)' zola[12].txt ++ +
+Et on obtient : +
+ ++zola1.txt:13:ciel, le pavé se déroulait avec la rectitude d'une jetée, au +milieu de +zola1.txt:36:brûlaient si haut dans le ciel mort, pareils à des lunes fumeuses. +Mais, au +zola1.txt:50:besogne. Les ouvriers de la coupe à terre avaient dû travailler +tar d, on +zola1.txt:124:terre, lorsqu'un accès de toux annonça le retour du charretier. +Le ntement, +zola1.txt:191:bleues en plein ciel, comme des torches géantes. C'était d'une +tristesse +zola1.txt:207: Le manoeuvre, après avoir vidé les berlines, s'était assis à +terre, +zola1.txt:222:fois avec tout le poil roussi, une autre avec de la terre jusque +dans le + +(...) ++ +
+Le résultat est un peu différent quand on n'utilise pas l'option
+-w
.
+grep
recherche des chaînes de caractères, qui peuvent être un mot
+complet («terre»), une suite de lettres («tre»), ou une expression régulière.
+Les expressions régulières sont des formules qui représentent des chaînes de
+caractères. On cherche alors non pas un mot précis, mais des suites de
+caractères correspondant aux critères demandés. Elles sont d'un usage fréquent
+avec grep
bien sûr, mais aussi avec des commandes comme
+less
, ou encore au sein d'un éditeur.
+
+«Expressions régulières» (Regular expressions en anglais) se +traduisent en bon français par «expressions rationnelles», mais l'usage est de +dire «régulières». +
+ ++Ces exercices n'entendent pas remplacer un cours sur les expressions +régulières, ni faire le tour de leurs possibilités. +
+ ++Il faut indiquer que l'on veut le début de la ligne, avec le chapeau +(caret en anglais). Ensuite, on veut préciser que la ligne commence +par un «a» minuscule ou majuscule. Il y a deux façons de le faire : +
+ +-i
qui fait ignorer la différence entre
+les majuscules et le minuscules.[abc]
signifie «a ou b ou c». Ici, ce sera
+[aA]
.+Enfin, il faut protéger les signes contre le shell, pour qu'il ne les +interprète pas; on met donc l'expression entre apostrophes. Remarque : +la protection des expressions régulières contre le shell est une question +complexe.... +
+ ++Il faut donc écrire : +
+ ++grep -i '^a' fichier ++ +
+ou +
+ ++grep '^[aA]' fichier ++
+
+
+C'est le dollar ($
) qui représente la fin de la ligne. Il faut
+donc écrire :
+grep 'rs$' fichier +
+
+
+Pour désigner un chiffre, on peut en indiquer une liste entre crochets :
+[0123456789]
. Il est plus simple d'utiliser une classe de
+caractères : [0-9]
qui désigne, comme la solution précédente,
+n'importe quel chiffre de zéro à neuf.
+
+Il faut donc taper :
++grep '[0-9]' fichier ++
+
+
+Comme on l'a vu, c'est le chapeau qui indique le début de la ligne. Pour
+indiquer que l'on cherche une majuscule, on peut soit en donner une liste
+([ABCDEFGHIJKLMNOPQRSTUVWXYZ]
), soit utiliser une classe de
+caractères : [A-Z]
, la seconde solution étant, de loin,
+préférable...
+
+Il faut donc taper : +
++grep '^[A-Z]' fichier ++
+ + +Il faut indiquer entre crochets les trois lettres recherchées : +
+ ++grep '^[BEQ]' fichier ++
+
+
+Le point d'exclamation n'a pas de signification particulière avec
+grep
, on peut donc le mettre tel quel :
+
+grep '!$' fichier ++
+ + +Il faut donner une liste de caractères, que l'on ne veut pas voir figurer; la +liste sera entre crochets, comme on l'a déjà vu, et c'est le chapeau qui +signifiera, dans ce contexte, «sauf». Par exemple, si on cherche tous les «a», +sauf ceux suivi de «b», «c» ou «t», on écrit : +
+ ++grep 'a[^bct]' ++ + +
+Il y a une seconde difficulté, qui vient de ce que certains caractères sont
+spéciaux avec grep
. Vous vous doutez que le chapeau est spécial
+quand il est placé au début de l'expression, et que le dollar l'est quand il
+est placé en fin d'expression. Dans notre cas :
+
egrep
, il fonctionne tout seul, avec
+grep
, il faut le faire précéder d'un backslash pour qu'il
+fonctionne; par exemple (avec grep
), pour chercher «charbon» ou
+«vagabond», on écrit :
++grep 'ar\?bo' fichier ++ +
+(chercher la suite de lettre «abo» avec un «r» facultatif entre le «a» et le +«b»).
+
+Pour que grep
interprète littéralement ces caractères, et ne les
+considère plus comme spéciaux, il faut les faire précéder d'un backslash
+(\
). Si par exemple vous cherchez toutes les lignes qui se
+terminent par un point, il faut taper :
+
+grep '\.$' fichier ++ + +
+Dans notre cas cependant, ces caractères sont protégés par les crochets. On +peut donc écrire : +
+ ++grep '[^.,;:?!]$' fichier ++ + +
+On peut aussi utiliser l'option -v
, qui prend toutes les lignes
+où ne figure pas une chaîne de caractères donnée; dans ce cas, on tape :
+
+grep -v '[.,;:?!]$' fichier ++
+
+On cherche une chaîne de caractères qui soit indifféremment au début ou au
+milieu d'un mot. N'importe quelle lettre, ce sont les classes de caractères
+[a-zA-Z]
ou [:alpha:]
, qui sont équivalentes.
+
+Il y a une petite subtilité avec l'emploi de classes du second type; elles +désignent un groupe de caractères, et il faut mettre une seconde paire de +crochets pour dire «n'importe quel caractère de cette classe prédéfinie». +On tape donc au choix : +
+ ++grep '[a-zA-Z]r' fichier' ++
+ou +
++grep '[[:alpha:]]r' fichier' ++ + +
+Attention, dans ces listes ne sont pas compris les caractères accentués... +
+C'est le symbole \<
qui désigne un début de mot. La première
+lettre du mot est indifférente, la seconde est un «r». On écrit donc :
+
+grep '\<.r' fichier ++ + +
+Il y a cependant un problème avec les caractères accentués, que
+grep
considère comme des blancs. Dans ce cas, il vaut mieux
+procéder autrement : un mot est précédé d'un début de ligne, ou d'un
+blanc ou d'une tabulation. Un début de ligne, c'est le chapeau, un blanc ou
+une tabulation, c'est la classe de caractères [:space:]
.
+
+On va se servir du pipe (|
) qui signifie «ou». Avec
+grep
, il faut backslasher le pipe, avec egrep
ce
+n'est pas nécessaire. On écrit donc (avec grep
) :
+
+grep '^.r\|[[:space:]].r' fichier ++ +
+Ce n'est quand même pas si simple; les mots peuvent être précédés d'un tiret
+(mots composés), d'une apostrophe, de guillemets divers (``
,
+"
, «
, <<
), et, si l'auteur du
+texte n'est pas respectueux des règles de typographie, d'une ponctuation. Il y
+a donc bien des cas à envisager...
+
Veuillez utiliser les liens présents dans le sommaire pour accéder aux +solutions.
+ + + + + diff --git a/src/unix/exercices/solutions/interface-sol.tml b/src/unix/exercices/solutions/interface-sol.tml new file mode 100644 index 0000000..e8a6b6b --- /dev/null +++ b/src/unix/exercices/solutions/interface-sol.tml @@ -0,0 +1,520 @@ + + + + +&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.
+ +&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.
+
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. +
+ + 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.
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 & +
Déplacement
et mettre la fenêtre où bon vous semble.
+Minimiser
dans le
+menu de la première case à gauche. 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.
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.
gamma
+ 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é).+Beaucoup ! Par exemple : +
+ +Front
(disponible
+uniquement sur les claviers des stations Sun) ;+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).
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).
+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.
méta-flèche
pour vous déplacer dans les écrans
+virtuels.+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/ &
+
+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...
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. +
+ +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.
+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).
+
+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 :
+ +joe
, pico
,
+(x
)emacs
,
+(x
)vi
(m
)...).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.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.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.
+
less
+On aborde ici less
, qui est une version plus élaborée de
+more
; ce dernier est toujours détaillé dans dans les ouvrages sur
+Unix, et de fait il est toujours présent sur ces systèmes, ce qui n'est pas
+forcément vrai pour less
(qui est quand même très courant).
+more
est beaucoup plus rudimentaire, alors que less
+a beaucoup de fonctionnalités appréciables : vidéo inverse pour les
+motifs recherchés, déplacements en avant et en arrière pour la recherche, etc.
+
less
?
+
+On tape h
ou H
pour afficher une page d'aide. On s'y
+déplace comme dans less
(flèches, ^D
,
+^F
, ^B
, ^P
, SPC
,
+j
, k
...). Pour quitter l'aide, ce sont les mêmes
+commandes que pour quitter less
: q
,
+Q
, :q
, :Q
, ZZ
.
+
+Il suffit de donner plusieurs fichiers en argument à la commande
+less
; par exemple, pour examiner sucessivement les fichiers
+toto
, bla
et blu
, on tape :
+
+less toto bla blu ++ +
+Pour passer au fichier suivant, on tape :n
(next); pour
+revenir au fichier précédent, on tape :p
(previous).
+:x
permet de revenir au premier fichier spécifié.
+
less
?
+
+Ce sont : q
, Q
, :q
, :Q
,
+ZZ
.
+
less
d'ouvrir le
+fichier en plaçant en haut de l'écran la ligne n ?
+
+
+
+On spécifie le numéro de la ligne après le signe +
; par exemple,
+pour ouvrir le fichier rapport
sur la ligne 57, on tape :
+
+less +57 rapport ++
less
d'ouvrir le
+fichier en plaçant en haut de l'écran la première ligne où apparaît un motif
+donné ?
+
+
+On utilise l'option -p
de la commande less
; par
+exemple, pour chercher le mot «toto» dans le fichier rapport
, on
+tape :
+
+less -p toto rapport ++ +
+On peut aussi indiquer le motif recherché de la façon suivante : +
++less +/toto rapport ++
less
qui permettent de chercher un motif dans un fichier,
+respectivement après et avant la position courante ?
+
+
+Pour chercher un motif plus en avant dans le texte, on utilise le slash (barre
+oblique vers la droite : /
). Par exemple :
+
+/mot ++ + +
+Pour chercher en arrière de la position courante, on utilise le point
+d'interrogation. Pour aller à la prochaine occurence du mot, il suffit de
+taper n
(next). Pour aller à la précédente occurence du
+mot, il faut taper N
. Évidemment, quand on cherche un motif avec
+?
, n
remonte dans le texte et N
+descend dans le texte.
+Une fois le début ou la fin du fichier atteint, la recherche s'arrête. On +peut utiliser les expressions régulières. +
less
de chercher le
+mot à partir de la première ligne du fichier, et ce où que l'on soit dans le
+fichier ?
+Il faut taper ^F
après avoir tapé /
. En fait,
+^F
fait commencer la recherche au premier fichier dont on a donné
+le nom; quand il n'y en a qu'un seul, cela place de fait tout au début du
+fichier. Par exemple, pour chercher toto
alors qu'on se trouve à
+la fin du fichier, on tape :
+/^F ++ +
+Le prompt devient alors : +
+ ++First-file / ++
+et il n'y a plus qu'à taper le motif recherché. +
-i
à
+less
? Quelle option faut-il mettre à la place de
+-i
pour chercher toTo
tout en ignorant la casse des
+caractères ?
+
+L'option -i
signifie ignorecase, c'est-à-dire ignorer la
+casse des caractères (différence entre majuscules et minuscules). Si donc
+je tape (au choix) :
+
+less -ip TOTO rapport +less -ip toto rapport +less -i +/toto rapport +less -i +/TOTO rapport ++ +
+less
ne fera pas la différence entre les majuscules et les
+minuscules, et je trouverai toto
comme TOTO
. Bien
+sûr, c'est la même chose si je lance less
avec l'option
+-i
et que je cherche ensuite le mot à l'intérieur du fichier avec
+/
ou ?
.
+
+Mais l'option -i
est invalidée si le motif
+recherché contient des majuscules et des minuscules : si, en
+lançant less
comme ci-dessus, je cherche le motif
+Toto
, je ne trouverai que Toto
et pas
+TOTO
par exemple. Pour contourner cette restriction, il faut
+lancer less
avec l'option -I
, qui est donc un
+ignorecase «robuste».
+
+Pour aller à l'occurence suivante (resp. précédente) d'un motif dans un
+fichier, on utilise n
(resp. N
). Pour faire la même
+opération mais sans passer manuellement de fichier en fichier, on tape
+ESC n
pour chercher en avant, et ESC N
pour chercher
+en arrière. ESC
désigne bien sûr la touche d'échappement
+(Escape
).
+
/
?
+Le caractère /
sert à chercher un mot dans le fichier. Si on tape
+
+// ++ +
+less
répond : Pattern not found
. Il faut donc
+dire à less
de considérer le /
comme un caractère
+ordinaire, et pas comme un caractère spécial. Comme avec toutes les
+expressions régulières, c'est le backslash (barre oblique vers la
+gauche : \
) qui sert à cela. Pour chercher un
+/
, on tape donc :
+
+/\/ ++ +
La page de man donne une liste de caractères qui sont spéciaux avec
+/
et ?
. Ces commandes de recherche utilisent les
+expressions régulières de ed
(et de vi
par
+conséquent).
+
ls
Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans les
+pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
/usr/local/games/bin
+
++ls /usr/local/games/bin ++ +
Vous obtenez une liste des jeux installés.
.flnewsrc.forum
?
+
+
+ls -al .flnewsrc.forum+ + +
+L'option -a
fait apparaître les fichiers de configuration, qui
+commencent par un point; l'option -l
affiche plusieurs
+renseignements, en particulier la taille. En fait, si vous indiquez le nom
+complet du fichier cherché, avec le point, l'option -a
est
+inutile; c'est le cas ici.
+
+Le .flnewsrc.forum
contient la liste de continua de forum avec
+des indications sur les contis auxquels vous êtes abonnés et les messages que
+vous avez déjà lus. Il est remis à jour à chaque fois que vous lisez
+forum : la date indiquée correspond donc à la dernière fois que vous avec
+lancé (ou plus précisément, quitté...) forum.
+
-R
de
+ls
?
+
+Cette option permet d'afficher une liste récursive, c'est-à-dire qui indique
+le contenu des répertoires listés, ainsi que de leurs sous-répertoires. Si
+vous tapez ls -R
dans votre répertoire personnel, vous aurez une
+liste de tout ce que vous avez chez vous.
+Pour savoir cela, il faut chercher le mot sort dans le man de
+ls
. La première occurence vous dit que par défaut le résultat est
+trié par ordre alphabétique, selon la première lettre des fichiers. De façon
+plus précise, l'ordre est le suivant : ponctuations, chiffres,
+majuscules, minuscules, selon l'ordre défini par la table des caractères
+ASCII.
+En continuant à chercher, vous trouvez des options intéressantes :
+-r
(reverse), qui inverse l'ordre de classement,
+-t
(time) qui trie en fonction de la date de dernière
+modification.
+ls -t ++
+si vous voulez juste modifier le critère de tri, sans plus de renseignements; +ou encore
+ls -lt+
+si vous voulez une longue liste. +
Mail
? Qu'est-ce que cela signifie ?
+
+
++La ligne ressemble à ceci : +
+ ++drwx------ 2 toto litt98 512 Apr 2 19:02 Mail ++ +
+Le d
indique qu'il s'agit d'un répertoire (directory).
+Suivent ensuite neuf caractères, allant par trois; r, w, x
+correspondent aux droits que vous avez sur le répertoire (ou le
+fichier) : r
(read) pour le droit de lecture,
+w
(write) pour le droit d'écriture, x
+(execute) pour le droit d'exécution.
+
+Les six tirets qui suivent correspondent aux droits qu'ont le groupe (ici
+litt98
) puis le reste des utilisateurs. Ici il y a des tirets, ce
+qui signifie qu'ils n'ont aucun droit sur ce répertoire.
+
+Cela veut dire que seul le propriétaire a le droit de lire et écrire dans son
+répertoire Mail/
, ainsi que d'y accéder. Les répertoires et les
+fichiers de courrier sont protégés contre les indiscrétions.
+
+Un fichier de texte standard a les droits suivants : +
+ ++-rw-r--r-- ++ + +
Il y a un tiret tout au début, ce qui signifie que c'est un fichier
+normal; vous avez le droit d'écrire et de lire (rw-
), votre
+groupe et les autres utilisateurs ont le droit de lire le fichier
+(r--
). La commande chmod
permet de
+changer ces droits, si l'on veut restreindre la lecture, ou rendre un
+fichier exécutable.
+Remarque : ne cédez pas à la paranoïa... vos camarades ne passent pas +leur temps à farfouiller sur les comptes des voisins, donc vous n'avez pas +besoin d'interdire à la lecture tout ce que vous avez chez vous. +
ls -l
.
+
++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++ +
Les dix premiers caractères détaillent les droits du fichier. Le premier +caratère identifie le type du fichier : ici, rien n'est spécifié, c'est +donc un fichier normal. L'exercice précédent détaille la signification des +lettres suivantes. Ce sont les droits normaux d'un fichier standard : +tout le monde (propriétaire, groupe et autres utilisateurs) peut lire le +fichier, seul le propriétaire peut écrire dedans. +
++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++ +
+Le chiffre indique le nombre de liens. Nous vous renvoyons aux exercices sur +les liens pour plus d'explications (qui peuvent attendre à un niveau +débutant...). +
+-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
+Le troisième champ donne le nom du propriétaire du fichier. Ici, il s'agit de
+l'utilisateur robin
.
+-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++ +
+Ce champ indique le groupe de l'utilisateur. Ici, nous apprenons qu'Émilia est +une littéraire de la promotion 1995. +
+-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++ +
+Ce chiffre donne la taille en octets du fichier considéré. Ici, le fichier +fait 754 octets, soit moins d'un Ko (1000 octets). C'est un petit fichier. +
+ ++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++ + +
Ce champ indique la date de dernière modification du fichier, ici le 22 mars +de l'année courante, à 11h59. Quand le fichier date d'une année antérieure, +celle-ci est indiquée et l'heure ne figure plus.
+ ++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
+Vient enfin le nom du fichier. Le suffixe .aux
montre qu'il s'agit
+d'un fichier produit par LaTeX lors de la compilation d'un fichier
+projet.tex
.
+Si on tape +
+ ++ls -l repertoire/ ++ +
+c'est le contenu du répertoire qui s'affiche, et pas son statut à lui.
+L'option -d
(directory) permet de lister le répertoire
+lui-même.
+
+Ce sont les caractères suivants : +
+ + +slash | +(/ ) |
+pour un répertoire | +
arobase | +(@ ) |
+pour un lien symbolique | +
étoile | +(* ) |
+pour un exécutable | +
pipe | +(| ) |
+pour un pipe nommé | +
égal | +(= ) |
+pour un socket | +
+C'est l'option -F
qui permet de les afficher.
+
+Avoir le droit d'«exécuter» un répertoire, c'est avoir le droit d'y accéder, +de s'y déplacer; mais je n'ai pas le droit de «lire» son contenu. Donc, à +moins d'en être propriétaire, je ne peux pas afficher le contenu d'un +répertoire ayant comme droits : +
+ ++drwx--x--x ++
mkdir
, rmdir
, cd
)
+Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans
+les pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
mkdir, rmdir
+Si vous voulez créer trois répertoires bla
, ble
et
+bli
, tapez
+
+mkdir bla ble bli +
+Il faut taper +
+ ++rmdir bla ble bli +
mkdir
+mkdir
?
+
+Vous créez chez vous un répertoire appelé mkdir
.
bla/
... mais ça ne marche pas.
+
+
+ls
vous dit qu'il est vide, et pourtant vous ne réussissez pas à
+l'effacer : c'est qu'il n'est pas vide. Il doit y avoir des fichiers
+cachés, commençant par un point, que vous ne voyez pas avec ls
+sans option. Il faut taper
+
+ls -a ++
+et effacer les fichiers trouvés. +
mkdir
peut prendre des
+options ?
+
+Oui, une : l'option -p
, dont on va parler tout de suite.
+
mkdir Rapport/annexes
» peut fonctionner et créer effectivement
+ce sous-répertoire ?
+
+
+Il faut que le répertoire Rapport
existe, pour que l'on puisse y
+créer un sous-répertoire.
+
mkdir
qui
+permette de créer à la fois un répertoire et un sous-répertoire de ce
+répertoire ?
+
+
+Oui, c'est l'option -p
. Quand vous tapez
+
mkdir -p Rapport/annexes ++ +
+un répertoire Rapport
est créé, et dans ce répertoire un
+sous-répertoire annexes
.
+
+On utilise l'option -m
(mode) de mkdir
.
+Par exemple :
+
+bireme ~ $ mkdir -m 700 Mail +bireme ~ $ ls -ld Mail +drwx------ 2 robin litt95 2048 Jun 2 15:27 Mail/ +
rmdir -p toto/tata/tutu/+ +
+Cette commande efface toute la hiérarchie des répertoires, à condition qu'ils
+soient vides; si par exemple tutu/
est vide mais
+toto/
ne l'est pas, tutu/
sera effacé mais pas
+toto/
, et le programme s'arrête.
+
+On achève avec ceci le tour de l'option -p
... Si donc on tape
+
+mkdir -p toto/tutu/ ++
+le sous-répertoire tutu/
est créé si toto/
existe
+déjà; et si toto/
n'existe pas, ce répertoire et son
+sous-répertoire sont créés. Il n'y a pas de message d'erreur.
+
cd
+But de l'exercice : apprendre à se servir de .
et
+..
(«point» et «point point»). ..
désigne le
+répertoire père du répertoire courant, et .
désigne le répertoire
+courant. ..
sert beaucoup avec cd
, pour remonter
+d'un niveau dans une arborescence; .
est très utile avec des
+commandes comme mv
ou cp
, où il signifie en fait
+«ici».
+
+ + + +
+ +
+Vous vous trouvez dans votre répertoire personnel, dans ~
(tilde).
+
~/Rapport/docs/afaire/
+
++Taper +
+ ++cd Rapport/docs/afaire +
~/Rapport/docs/fait/
+
+
++cd ../fait +
~/Rapport/
+
++Taper +
++cd ../.. ++
+ou +
++cd ~/Rapport +
less
le contenu de ~/www/index.html
+
+
++Il faut taper +
+ ++less ~/www/index.html ++
+ou +
++less ../www/index.html ++
~/Rapport/docs/
+
+
++cd docs/ ++
~/Mail/
+
+
++Il y a un petit piège dans cette question. En effet, si vous tapez
++ls -l Mail/ ++ +
+vous allez obtenir le contenu du répertoire Mail/
, mais pas le
+statut du répertoire lui-même. Il faut donc utiliser l'option -d
+de ls
:
+
+bireme ~ $ ls -ld Mail
+drwx------ 2 toto litt98 512 Apr 2 19:02 /users/98/litt/toto/Mail/
+
+
+Taper cd
, sans arguments.
+
+Strictement rien ! Ça n'a aucune importance. +
+chmod g+w fic1 ++
+chmod uog+x script +
+chmod u-wx toto +
+chmod og+wx toto +
+C'est l'option -R
. Par exemple, pour interdire tous les
+droits aux fichiers présents dans une branche du répertoire
+confidentiel
, on peut faire :
+
+chmod -R og-rwx confidentiel +
+C'est l'option -m
qui permet de le faire. Par exemple, pour
+créer un répertoire en lecture interdite aux autres :
+
+mkdir -m og-r repertoire +
+bireme ~ $ ll /usr/sbin/mount
+-r-xr-xr-x 1 root bin 27208 Jan 9 2000 /usr/sbin/mount*
+
+Il s'agit d'un fichier éxécutable par tout utilisateur.+ln tmp/bidon blo ++ +Les contenus sont identiques. Les noms de fichiers
tmp/bidon
+et blo
renvoient au même endroit sur le disque dur.
++ln -s tmp/bidon blo ++ +Le contenu semble être identique, cependant, à propos du +
blo
, le disque dur ne contient comme information que le nom
+du fichier vers lequel le lien pointe (tmp/bidon
).
+On vient d'en voir une. On en déduit que le temps d'accès au contenu +d'un lien dur est plus rapide que pour un lien symbolique. Une autre +différence notable est que, contrairement aux liens symboliques, un lien +dur ne peut pas pointer vers un répertoire.
+ +On ne peut pas faire de lien dur vers un répertoire. Dans ce cas, il faut +donc utiliser un lien symbolique.
++S'il s'agit d'un lien dur, les droits des deux fichiers liés +sont modifiés. En revanche, s'il s'agit d'un lien symbolique, les deux +fichiers peuvent avoir des droits différents. +
+ ++bireme ~ $ ps + PID TT S TIME COMMAND + 16970 pts/2 S 0:00 /usr/local/util/bin/zsh4 + 16992 pts/2 S 0:07 vim systeme-sol.tml + 17382 pts/3 R 0:00 /usr/local/util/bin/zsh4 +bireme ~ $ ps -l + F UID PID PPID %C PRI NI SZ RSS WCHAN S TT TIME COMMAND + 8 9625 16970 16967 0 48 20 4032 3152 mutex_ex S pts/2 0:00 /usr/local/u + 8 9625 16992 16970 1 58 20 4312 3760 mutex_ex S pts/2 0:07 vim systeme- + 8 9625 17382 17379 0 48 20 3912 2840 mutex_ex S pts/3 0:00 /usr/local/u ++
Les numéros apparaissant dans la colonne PID sont les numéros +des différents processus. Le PPID désigne lui le numéro du +processus père du processus en question. Par exemple, ici, le processus +16992 (vim) est un fils du processus 16970 (zsh). +
++Pour envoyer un signal à un processus, on peut faire : +
+
+bireme ~ $ kill -23 17382
+
++17382 désignant un numéro de processus (PID) et 23 le numéro d'un signal +(SIGSTOP). +
+ +Le processus est tué sans pouvoir de défendre.
+Le processus s'interrompt. +
+Le processus interrompu redémarre. +
+bireme ~ $ nice -19 ./calcul
+
+Pour vous aider à comprendre, vous pouvez afficher un arbre en +lançant la commande pstree (FreeBSD) ou ptree +(Solaris).
++Ce sont les processus associés aux commandes ps et wc +que vous venez de lancer ! +
++Vous disposez des commandes fg et bg. fg +permet de poursuivre le déroulement du programme. bg le fait +aussi mais il relance le programme en tâche de fond. +
++Il faut éditer un fichier saluer et le rendre ensuite +éxécutable :
++#!/bin/sh +if [ -n "$1" ]; then LOGIN=$1; else LOGIN=`whoami`; fi +echo "Bonjour, $LOGIN" ++
+chaland ~ $ params bla ble bli blo blu
+La commande params a 5 paramètre(s), que voici : bla ble bli blo blu
+
+
++#!/bin/sh +echo "La commande $0 a $# paramètre(s), que voici| : $@" ++
+#!/bin/sh +echo "J'ai reçu $# arguments" +echo "Le premier d'iceux est $1" ++
+drakkar ~ $ combien galion +Il y a 5 personne(s) loguées sur galion en ce moment. +drakkar ~ $ ++ +
+#!/bin/sh +N=`who | wc -l | sed -e "s/ *//"` +MACHINE=`whoami` +echo "Il y a $N personne(s) logués sur $MACHINE en ce moment" ++
+Le script suivant lancé avec "**/*.htm" comme paramètre devrait +fonctionner : +
++#!/bin/sh +for i in $@; +do +mv $i `echo $i | sed -e "s/htm$/html/"` +done; ++
+#!/bin/sh +for i in $@; +do +mv $i `echo $i | tr '[:upper:]' '[:lower:]'` +done; ++
+indice toto tata titi toto tutu ++ +
+renvoie l'indice de toto dans la liste tata titi toto +tutu, c'est-à-dire 3.
+ ++#!/bin/sh +ARG=$1 +shift +N=0 + +for i in $@; +do +N=`expr $N + 1` +[ x$ARG = x$i ] && echo $N +done; ++
+Dans ce fichier, vous avez : +45 mots contenant «r», «s» ou «t», et parmi eux, +12 contiennent deux de ces lettres au moins. +Il y a aussi 10 mots ne contenant aucune voyelle. ++ +
+#!/bin/sh + +RST=`grep "[rst]" $1 | wc -l` +DEUX=`grep "[rst].*[rst]" $1 | wc -l` +CONS=`grep -v "[aeiou]" $1 | wc -l` + +(echo "Dans ce fichier, vous avez| :"; +echo "$RST mots contenant «r», «s» ou «t» et parmi eux,"; +echo "$DEUX contiennent deux de ces lettres au moins."; +echo "Il y a aussi $CONS mots ne contenant aucune voyelle.") | +sed -e "2,3s/^ *// +\$s/i */i /" ++ +
+On veut aussi que le résultat soit placé dans un fichier, et que le résultat +soit classé : toutes les lignes qui contiennent «air», puis toutes celles qui +contiennent «eau», etc.
++#!/bin/sh + +FICHIER=resultat +MOTS="terre air eau feu" + +[ -w $FICHIER ] && echo "Le fichier $FICHIER existe déjà" && exit 1 + +for i in $MOTS; +do +echo "Lignes contenant $i" >> $FICHIER +grep $i zola*.txt >> $FICHIER +echo >> $FICHIER +done; + ++
+#!/bin/sh + +FICHIER=resultat + +[ -w $FICHIER ] && echo "Le fichier $FICHIER existe déjà" && exit 1 + +for i in zola[345].txt; +do +echo "Dans le fichier $i, voici les lignes contenant «mine»" >> $FICHIER +NB=`grep -n mine $i | tee -a $FICHIER | wc -l` +(echo "$NB lignes";echo ) >> $FICHIER +done; ++
+coupe fic 4 8 ++
+affichera les lignes 4 à 8 du fichier fic. Affichez des messages +en cas d'erreur (nombre de paramètres incorrect, fichier inexistant, etc). +
+ ++#!/bin/sh + +[ $# != "3" ] && echo "Nombre de paramètres incorrects" && exit 1 +[ ! -r $1 ] && echo "Fichier $1 inexistant" && exit 1 + +cat $1 | sed -n -e "$2,$3p" + ++
tar zcvf nouveaunom fichiersaregrouper+ + +
+Avant d'envoyer des fichiers tar, on utilise uuencode. +
+ ++Écrivez une commande tarmail qui prend deux arguments, une +adresse et un nom de répertoire, et qui envoie par mail le contenu de +l'arborescence du répertoire précédée d'un message expliquant comment la +récupérer.
+ + ++Note : pour récupérer un fichier uuencodé, on tape uudecode et +pour reconstruire l'arborescence, on utilise tar zxvf fichier. +
+ ++(echo "To: $1"; +echo "Subject: $2"; +echo " Pour lire ce document, sauvegardez ce mail (par exemple sous le " +echo "nom bidule) et faites "; +echo "uudecode bidule | tar tvzf -"; +echo "pour récupérer les fichiers du répertoire $2"; +tar cvf - $2 | gzip | uuencode /dev/stdout) | mail $1 ++ +
+find . -name '*~' ++ +
+Écrivez un script qui prend en argument un nom de répertoire et qui +détruit tous les fichiers :
+ ++#!/bin/sh + +for i in `find . \( -name '*~' -o -name 'core' -o -name 'a.out' -o -name '#*#' \) -type f` ; +do +rm -f $i +done; + ++ +
+#!/bin/sh + +if [ $# != "1" ]; then echo "Indiquez un nom de fichier";exit 1; fi +if [ ! -r $1 ]; then echo "Fichier $1 inexistant";exit 1; fi + +TRAVAIL=$1 + +while true; +do +read CMD +case $CMD in +end) exit 0;; + +cherche) echo -n "Motif ? ";read MOTIF; + echo -n "Fichier ? ";read FICHIER; + if [ -w $FICHIER ]; then + echo "Le fichier $FICHIER existe déjà"; + else + grep $MOTIF $TRAVAIL > $FICHIER + fi + ;; + +tete|fin) + echo -n "Lignes ? ";read LGN; + echo -n "Fichier ? ";read FICHIER; + if [ -w $FICHIER ]; then + echo "Le fichier $FICHIER existe déjà"; + else + case $CMD in + tete) head -n $LGN < $TRAVAIL > $FICHIER;; + fin) tail -n $LGN < $TRAVAIL > $FICHIER;; + esac + fi + ;; + +*) echo "Commande inexistante";; +esac +done + ++ +
&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.
+ +joe
, less
,
+ls
)premiertexte
contenant une ou
+deux phrases.
+
+
+Pour créer un fichier et écrire du texte dedans, il faut l'éditer avec un
+éditeur de votre choix. Nous proposons nano
aux débutants. Il
+faut donc taper
+bireme ~ $ nano premiertexte
+
+
+Utilisation de nano
: le prompt
+affichant le nom de la machine disparaît; vous avez à la place une page
+blanche où vous pouvez taper du texte. Le nom du fichier que vous éditez
+et le nom de l'éditeur sont affichés en haut.
+La liste des commandes disponibles est écrite en bas. Vous pouvez faire
+Ctrl-O
pour enregistrer et Ctrl-X
pour
+quitter.
+Vous pouvez maintenant taper ce que vous voulez et quitter en
+enregistrant (Ctrl-X
puis répondre y
au moment
+où nano
vous demande si vous voulez enregistrer le texte).
+
premiertexte
sans
+l'éditer
+
+
+C'est la commande less
qui permet de faire cela (ou
+more
, si less
n'est pas installée là où vous vous
+trouvez). Pour lire le contenu de premiertexte
, il faut taper
+
+bireme ~ $ less premiertexte
+
+
+
+Pour quitter less
ou more
, taper q
.
+
premiertexte
?
+
+
+C'est l'option -l
de ls
qui permet de savoir la
+taille d'un fichier, sa date de dernière modification, etc. Vous tapez
+donc :
+bireme ~ $ ls -l
+
+
+
+Cette commande sans arguments vous donne la liste de tous vos fichiers. Si
+vous voulez connaître les caractéristiques de premiertexte
et rien
+d'autre, tapez
+
+bireme ~ $ ls -l premiertexte
+
+
+
+La config conscrits propose l'alias ll
pour
+ls -l
.
+
PREMIERTEXTE
. Que
+constatez-vous ?
+
+
+Pour éditer PREMIERTEXTE
, vous tapez
+
+bireme ~ $ joe PREMIERTEXTE
+
+
+
+Vous constatez qu'il s'agit d'un nouveau fichier, et que vous ne retrouvez pas
+le contenu de premiertexte
. C'est normal : Unix est case
+sensitive, c'est-à-dire sensible à la casse des
+caractères : majuscules et minuscules ne sont pas interchangeables. C'est
+pourquoi premiertexte
et PREMIERTEXTE
sont deux
+fichiers différents.
+
cp
, ls
,
+mv
)premiertexte
appelée
+double
+
+
+C'est la commande cp
(copy) qui sert à faire une copie
+d'un fichier, en indiquant le nom du fichier à copier puis nom du nouveau
+fichier. Il faut donc taper :
+bireme ~ $ cp premiertexte double
+
+Comme dans l'exercice 1, c'est l'option -l
de ls
qui
+va servir. En tapant ls -l
sans argument, vous affichez le
+contenu du répertoire en entier. Si vous voulez limiter l'affichage aux deux
+fichiers souhaités, tapez
+
+bireme ~ $ ls -l premiertexte double
+
double
en
+introduction
+
+
+C'est la commande mv
(move) qui sert à renommer un
+fichier. Pour renommer double
, il faut donc taper :
+
+bireme ~ $ mv double introduction
+
+
+
+
+En tapant ls
, vous pouvez vérifier que le fichier
+double
a disparu au profit d'un fichier
+introduction
.
mv double introduction
et
+cp double introduction
?
+
+
+mv
(move) renomme un fichier : seul son nom est
+modifié, son contenu reste inchangé et aucun autre fichier n'est créé.
+double
disparaît au profit de introduction
.
+
+cp
(copy) fait une copie du premier fichier : un
+nouveau fichier est créé, son contenu est identique à celui du fichier
+d'origine, mais leurs noms sont différents. double
et
+introduction
existent de façon parallèle.
+
mkdir
,
+mv
, cp
, ls
,
+cd
)essai/
+
+ +Il faut taper +
+ +
+bireme ~ $ mkdir essai
+
+(make directory «essai»)
+ +
+Vous pouvez vérifier en tapant ls
que le répertoire a bien été
+créé.
+
double
dans essai/
+
+
+C'est mv
(move) qui sert à déplacer des fichiers, ainsi
+qu'à les renommer :
+bireme ~ $ mv double essai/
+
+
+
+Le slash (/
) n'est pas obligatoire, c'est en fait un agrément
+pour identifier plus vite les répertoires dans une liste de fichiers
+
&icone.note; C'est l'option -F
de ls
qui
+fait apparaître ce symbole; vous avez en fait un alias de ls
+sur ls -F
).
premiertexte
appelée
+copie
, et placez-la également dans
+essai/
.
+
++On peut faire ça de plusieurs façons : +
+ +essai/
:
+
++bireme ~ $ cp premiertexte copie +bireme ~ $ mv copie essai/ +
essai/
:
+
+
+bireme ~ $ cp premier texte essai/copie
+
essai/
. On pourrait d'abord faire la copie
+dans le répertoire père, puis amener cette copie là où on se trouve :
+
++bireme ~/essai $ cp ../premier texte ../copie +bireme ~/essai $ mv ../copie . ++ +
Ou plus simplement, on pourrait copier le fichier du répertoire père +directement dans le répertoire courant :
+ +
+bireme ~/essai $ cp ../premiertexte copie
+
essai/
+
++Si l'on est dans le répertoire personnel, on tape : +
+ +
+bireme ~ $ ls essai
+
+
+
+pour avoir une liste de ce que contient essai
. Le résultat
+ressemblera à ça :
+bireme ~ $ ls essai
+copie double
+
+
+
+Et si vous vous trouvez alors dans essai/
, le résultat sera le
+suivant :
+bireme ~/essai $ ls
+copie double
+
rmdir
, cd
,
+rm
)essai/
. Que se
+passe-t-il ? Que faut-il faire pour détruire un
+répertoire ?
+
+ C'est la commande rmdir
(remove directory) qui
+sert à détruire les répertoires. Cependant, on ne peut détruire un
+répertoire qu'à condition qu'il soit entièrement vide, c'est pourquoi le
+programme vous répond
+
+rmdir: essai: directory not empty ++ +
+Il faut donc vider le répertoire pour pouvoir le détruire.
essai/
+
+
+C'est la commande rm
qui permet de détruire des fichiers. Il faut
+donc taper :
+bireme ~/essai $ rm double copie
+
+
+
+
+Vous pouvez aussi vous servir de certains caractères spéciaux; ici, c'est
+*
(étoile) qui est utile. «Étoile» signifie «Tout chaîne de
+caractères ne commençant pas par un point». Donc, pour effacer d'un seul coup
+tous les fichiers du répertoire, vous pouvez taper :
+
+bireme ~/essai $ rm *
+
+
+ Il se trouve que votre configuration est ainsi faite
+que le programme demande confirmation avant d'effacer des fichiers . Cela
+vient de ce qu'il y a un alias de rm
sur
+rm -i
; l'option -i
est l'option «interactive»,
+qui demande confirmation.
+Soyez donc prudents : on a vite fait de confondre mv
+(move) et rm
(remove), et l'option
+-i
n'est pas systématiquement mise.
+
essai/
+
+
+Revenez dans le répertoire père (cd ..
) et tapez :
+
+bireme ~ $ rmdir essai/
+
+(remove directory «essai»)
+
+chaland ~ $ params bla ble bli blo blu
+La commande params a 5 paramètre(s), que voici : bla ble bli blo blu
+
+drakkar ~ $ combien galion +Il y a 5 personne(s) loguées sur galion en ce moment. +drakkar ~ $ +
+indice toto tata titi toto tutu ++ +
+renvoie l'indice de toto dans la liste tata titi toto +tutu, c'est-à-dire 3.
+Dans ce fichier, vous avez : +45 mots contenant «r», «s» ou «t», et parmi eux, +12 contiennent deux de ces lettres au moins. +Il y a aussi 10 mots ne contenant aucune voyelle. ++
+On veut aussi que le résultat soit placé dans un fichier, et que le résultat +soit classé : toutes les lignes qui contiennent «air», puis toutes celles qui +contiennent «eau», etc.
+coupe fic 4 8 ++
+affichera les lignes 4 à 8 du fichier fic. Affichez des messages +en cas d'erreur (nombre de paramètres incorrect, fichier inexistant, etc). +
tar zcvf nouveaunom fichiersaregrouper+ + +
+Avant d'envoyer des fichiers tar, on utilise uuencode. +
+ ++Écrivez une commande tarmail qui prend deux arguments, une +adresse et un nom de répertoire, et qui envoie par mail le contenu de +l'arborescence du répertoire précédée d'un message expliquant comment la +récupérer.
+ + ++Note : pour récupérer un fichier uuencodé, on tape uudecode et +pour reconstruire l'arborescence, on utilise tar zxvf fichier. +
+find . -name '*~' ++ +
+Écrivez un script qui prend en argument un nom de répertoire et qui +détruit tous les fichiers :
+ +joe
, less
,
+ls
)premiertexte
contenant une ou deux
+phrases.premiertexte
sans
+l'éditer.premiertexte
?PREMIERTEXTE
. Que constatez-vous ?cp
, ls
,
+mv
)premiertexte
appelée
+double
.double
en introduction
.+mv double introduction ++
et
++cp double introduction +
mkdir
,
+mv
, cp
, ls
, cd
)essai/
.introduction
dans essai/
.premiertexte
appelée copie
,
+et placez-la également dans essai/
.essai/
.rmdir
,
+cd
, rm
)essai/
. Que se passe-t-il ? Que
+faut-il faire pour détruire un répertoire ?essai/
.essai/
.+Une fois que vous avez compris qu'un script n'est rien d'autre qu'une +suite de commandes, vous avez fait un grand pas ; chaque script +consiste à poser des rails : l'utilisateur n'a plus qu'à les suivre +(si tout cela ne vous paraît pas évident, consultez la page d'initiation à la programmation en shell). +
+ +Toutefois, avoir posé les rails ne suffit pas toujours : il peut +importer de disposer de mécanismes d'aiguillage. Les structures de contrôle vous +permettront de réaliser ces mécanismes d'aiguillage, qui donneront à vos +scripts souplesse et efficacité.
+ + + +if
et case
if
+Robert le jardinier programme un hachoir en shell, et veut en interdire
+l'accès à tout autre utilisateur que lui-même, afin de protéger le petit
+Émile de ce dangereux instrument. Le programme hachoir
se
+pose la question suivante : est-ce que $USER
vaut
+« Robert » ?
+
+C'est pour les structures de type « si... alors... ou sinon »,
+la commande if
a été faite. Elle est constituée de cinq
+termes, dont trois sont obligatoires :
if
(si), qui marque la condition à remplir ;
+then
(alors), qui marque les conséquences si la
+condition est remplie ; elif
(contraction de else if, qui signifie
+« sinon, si... »), qui est facultatif et marque une
+condition alternative ;else
(sinon), qui est facultatif et marque le
+comportement à adopter si la condition n'est pas remplie ; fi
(if
à l'envers), qui marque la fin de
+la structure de branchement.On peut donc taper :
+ +if commande ; then commandes ; else commandes ; fi+ +
ou bien (car le point et virgule équivaut à un saut +de ligne) :
+ +if condition + then commandes +elif condition + then commandes +else commandes +fi+ + +
+Par exemple, pour le hachoir de Robert le jardinier, on aura : +
+ ++if test $USER = Robert + then echo "Le hachoir va se mettre en marche." + mettre en marche le hachoir +else echo "Quand tu seras grand, $USER." + echo "Et fais bien attention en traversant la rue." +fi+ + +
Comme vous pouvez le constater, à la suite des commandes
+then
et else
, vous pouvez mettre autant de
+commandes que vous le voulez. Le shell exécute tout ce qu'il
+trouve jusqu'à la prochaine instruction.
Par exemple, si la condition indiquée par if
est
+remplie, le shell va exécuter tout ce qui suit then
jusqu'à
+ce qu'il trouve l'une de ces instructions :
elif
,else
oufi
.Autre exemple :
+ ++#!/bin/sh +# Fichier "mon-pwd" + +if test $PWD = $HOME + then echo "Vous êtes dans votre répertoire d'accueil." +elif test $PWD = $HOME/bin + then echo "Vous êtes dans votre répertoire d'exécutables." +elif test $PWD = $HOME/bin/solaris + then echo "Vous êtes dans votre répertoire d'exécutables pour Solaris." +else echo 'Vous êtes dans un répertoire quelconque, qui n'est ni $HOME,' + echo 'ni $HOME/bin, ni $HOME/bin/solaris. '"Vous êtes dans $PWD." +fi ++ +
elif
successifs est
+illimité, alors qu'il ne peut (et c'est logique) y avoir qu'une
+seule condition if
, une seule instruction else
+et une seule instruction fi
correspondant au if
initial. $HOME
+est cité dans des guillemets simples, alors que $PWD
est
+cité entre guillemets doubles. Par conséquent, $HOME ne sera pas
+interprété (le mot « $HOME » apparaîtra tel quel), tandis que
+$PWD
sera interprété (il sera remplacé, par exemple, par
+/home/toto
).case
case
à if
?La structure de contrôle if
est très pratique, mais devient rapidement
+illisible lorsqu'un aiguillage offre plusieurs sorties, et que l'on doit
+répéter une condition pusieurs fois sous des formes à peine
+différentes. Typiquement, un programme comme celui-ci est pénible à
+écrire, à lire et à débuguer :
+if test $PWD = $HOME + then echo "Vous êtes dans votre répertoire d'accueil." +elif test $PWD = $HOME/bin + then echo "Vous êtes dans votre répertoire d'exécutables." +elif test $PWD = $HOME/bin/solaris + then echo "Vous êtes dans votre répertoire d'exécutables pour Solaris." +elif test $PWD = $HOME/prive + then echo "Vous êtes dans votre répertoire privé." +else echo 'Vous êtes dans un répertoire quelconque, qui n'est ni $HOME,' + echo 'ni $HOME/bin, ni $HOME/bin/solaris. '"Vous êtes dans $PWD." +fi ++ +
Pourquoi ce programme est-il pénible à écrire, à lire et à +débuguer ?
+ +test
+$PWD =
» ; et qui dit redondance dit possibilité de
+faute de frappe – erreur particulièrement difficile à repérer
+à l'œil nu ;if
correspond un fi
mais les elif
+n'ont pas besoin d'être ainsi « refermés », alors que logiquement les deux
+instructions le sont), ce qui nuit à la lisibilité.La structure de contrôle case
entend remédier à ces inconvénients. Il
+s'agit tout simplement de la simplification d'un usage fréquent de la
+structure if
. On peut récrire le programme suivant avec
+case
:
+case "$PWD" in +"$HOME") echo "Vous êtes dans votre répertoire d'accueil.";; +"$HOME/bin") echo "Vous êtes dans votre répertoire d'exécutables.";; +"$HOME/bin/solaris") echo "Vous êtes dans votre répertoire d'exécutables pour Solaris.";; +"$HOME/prive") echo "Vous êtes dans votre répertoire privé.";; +*) echo 'Vous êtes dans un répertoire quelconque, qui n'est ni $HOME,' + echo 'ni $HOME/bin, ni $HOME/bin/solaris. '"Vous êtes dans $PWD.";; +esac ++ +
Le gain de lisibilité est flagrant (si si, c'est flagrant, je vous +assure) :
+ +elif
;case
La structure case
adopte la syntaxe suivante :
+case chaîne in + motif) commandes ;; + motif) commandes ;; +esac ++ +
+La structure case
commence par évaluer la
+chaîne. Ensuite, elle va lire chaque motif. Enfin, et
+dès qu'une chaîne correspond au motif, elle exécute
+les commandes appropriées. En anglais, case signifie
+« cas » ; cette structure de contrôle permet en effet de
+réagir adéquatement aux différents « cas de figure »
+possibles.
+Vous observerez que : +
+ +case
est close par l'instruction
+esac
, qui n'est autre que le mot case
à
+l'envers (de même que la structure if
est terminée par
+l'instruction fi
).
+Un motif (pattern) est un mot contenant éventuellement
+les constructions *
, ?
, [a-d]
,
+avec la même signification que pour les raccourcis dans les noms de
+fichiers (les jokers). Exemple :
+
+case $var in + [0-9]*) echo "$var est un nombre.";; + [a-zA-Z]*) echo "$var est un mot.";; + *) echo "$var n'est ni un nombre ni un mot.";; +esac+ + +
Que faire si je veux aiguiller plusieurs motifs différents de la même +façon ? Le premier réflexe est de répéter, presque à l'identique, +des lignes, de la façon suivante :
+ ++#!/bin/sh +# Fichier "canards" + +echo "Quel est ton nom ?" +read nom + +case $nom in +"Riri") echo "Ton oncle s'appelle Donald, Riri.";; +"Fifi") echo "Ton oncle s'appelle Donald, Fifi.";; +"Loulou") echo "Ton oncle s'appelle Donald, Loulou.";; +*) echo "Tu n'es pas un neveu de Donald.";; +esac ++ +
+Mais il n'est jamais bon de répéter manuellement des lignes de +programmation, car c'est générateur de fautes. Il faut toujours +chercher des raccourcis, et ne se répéter qu'en dernier recours. On +utilisera donc le caractère « | », qui permet de mettre sur le +même plan différents motifs. On pourra donc écrire : +
+ ++#!/bin/sh +# Fichier "canards" + +echo "Quel est ton nom ?" +read nom + +case $nom in +"Riri"|"Fifi"|"Loulou") echo "Ton oncle s'appelle Donald, $nom.";; +*) echo "Tu n'es pas un neveu de Donald.";; +esac ++ +
On gagne ainsi en concision, et on évite bien des +fautes d'inattention, qui sont particulièrement coriaces à débuguer. +
+ +La structure case
exécute les commandes correspondant au
+premier motif correct, et ne parcourt pas les motifs
+suivants si elle en a trouvé un. Par conséquent, si le dernier
+motif est « * », cela revient à l'instruction
+else
dans la structure if
.
while
, until
+et for
Les structures if
et case
sont des
+structures d'aiguillage ; les structures while
,
+until
et for
sont des
+boucles. C'est-à-dire qu'elles soumettent à une condition déterminée la
+répétition (ou non) d'une suite de commandes.
while
+La boucle while
exécute les commandes de manière
+répétée tant que la première commande réussit ; en
+anglais, while signifie « tant que ».
while
La boucle while
adopte la syntaxe suivante :
while condition + do commandes +done+ +
Après l'instruction do
, vous pouvez mettre
+autant de commandes que vous le désirez, suivies de retours
+chariot ou bien de points et virgules (« ; »). Le shell
+exécutera tout ce qu'il trouve, jusqu'à ce qu'il tombe sur l'instruction
+done
.
+echo "Tapez le mot de passe :" +read password + +while test "$password" != mot de passe correct +do echo "Mot de passe incorrect." + echo "Tapez le mot de passe" + read password +done + +echo "Mot de passe correct." +echo "Bienvenue sur les ordinateurs secrets du Pentagone." ++ +
Les lignes qui suivent la boucle while
+seront exécutées si, et seulement si, la condition est remplie,
+c'est-à-dire si l'utilisateur tape le bon mot de passe. (En pratique, il
+est très fortement déconseillé de taper un mot de passe en clair dans un
+script, car rien n'est plus facile que de l'éditer !...).
+
while
Supposons que vous vouliez créer cinquante fichiers sous la forme
+fichier1
, fichier2
, fichier3
,
+etc. Un petit script vous fera ça plus vite que cinquante lignes de
+commande.
+#!/bin/sh +# Fichier "50fichiers" + +numero=1 + +while test $numero != 51 + do + # la commande "touch" permet de créer un fichier vide : + touch fichier"$numero" + + # cette commande ajoute 1 à la variable "numero" : + numero=$(($numero + 1)) +done ++ +
Avec ce script, la variable numero
est
+d'abord créée avec la valeur 1. Ensuite, le shell examine si la
+valeur de numero
est différente de 51 ; c'est le
+cas. Par conséquent, le shell exécute les commandes suivantes : il
+crée un fichier fichier1
, puis ajoute 1 à la variable
+numero
, qui vaut donc 2. Et c'est reparti pour un
+tour ! Le shell examine si la valeur de numero
,
+c'est-à-dire 2, est différente de 51, etc.
+
Petit conseil pour faire les choses le plus proprement +possible : dans le script qui précède, +remplacez « 51 » par une variable : le script sera +beaucoup plus lisible. Exemple :
+ ++#!/bin/sh +# Fichier "50fichiers" + +numero=1 +limite=51 + +while test $numero != $limite + do + # la commande "touch" permet de créer un fichier vide : + touch fichier"$numero" + + # cette commande ajoute 1 à la variable "numero" : + numero=$(($numero + 1)) +done ++ + + +
until
+Until signifie « jusqu'à ce que » en anglais. Cette
+boucle est le pendant de la boucle while
, à ceci près que
+la condition ne détermine pas la cause de la répétition
+de la boucle, mais celle de son interruption.
until
+until condition + do commandes +done ++ +
On aura ainsi :
+ ++echo "Tapez le mot de passe :" +read password + +until test $password = mot de passe correct +do echo "Mot de passe incorrect." + echo "Tapez le mot de passe" + read password +done + +echo "Mot de passe correct." +echo "Bienvenue sur les ordinateurs secrets de la NASA." ++ + +
Il revient en effet au même de répéter une suite de commandes +« tant que le mot de passe est +incorrect » ou bien « jusqu'à ce que +le mot de passe soit correct », car un mot de +passe déterminé ne peut être que correct ou incorrect. +
+ + +while
ou until
?Vous allez donc me demander que préférer entre while
et
+until
, si les deux sont si souvent équivalentes ? Eh
+bien, celle dont la condition sera la plus facile à écrire, à lire et à
+débuguer. Si, comme dans notre exemple, elles sont aussi simples
+l'une que l'autre, choisissez votre préférée ou prenez-en une au hasard.
+
for
+La boucle for
affecte successivement à une variable chaque
+chaîne de caractères trouvée dans une liste de chaînes, et
+exécute les commandes une fois pour chaque chaîne.
+
for
for var in liste de chaînes +do commandes +done+ + + +
+#!/bin/sh +# Fichier "liste" + +for element in * + do echo "$element" +done ++ +
+affiche les noms de tous les fichiers du répertoire courant, un par ligne. +
+ +Concrètement, le shell va prendre la liste des chaînes, en
+l'occurrence « * », c'est-à-dire tous les fichiers et
+répertoires du répertoire courant. À chacun de ces éléments, il va
+attribuer la variable element
, puis exécuter les commandes
+spécifiées, en l'occurrence echo
+"$element"
. Ainsi, si dans mon répertoire j'ai les
+fichiers a
, b
et c
, le shell va
+exécuter successivement echo "a"
, echo
+"b"
et echo "c"
.
for
+Comme while
et until
, for
est une
+boucle au sens propre. Mais il y a une différence notable entre ces deux
+groupes de boucle : while
et until
sont
+plus appropriés à la répétition à l'identique d'une séquence de
+commandes, tandis que for
convient particulièrement
+aux répétitions soumises à de légères variations.
+
+Prenons par exemple le script qui permettait, avec while
,
+de créer 50 fichiers rapidement. La numération des passages par la
+boucle était assez pénible, et éclatée en trois endroits :
+
numero
(et, éventuellement, de la valeur 51 à
+la variable limite
) ;test $numero != 51
ou
+test $numero != $limite
;numero
, avec la
+ligne numero=$(($numero + 1))
.
+Pourquoi dire en trois fois ce qui, dans les langages naturels
+(c'est-à-dire humains), s'énonce en une seule : « répéter
+n fois cette séquence de commandes » ? La boucle
+for
se révèle alors indispensable :
+
+#!/bin/sh +# Fichier "50fichiers-for" + +# la commande "seq a b" compte de a à b +for numero in `seq 1 50` + do touch fichier"$numero" +done ++ +
Avouez que le script est beaucoup plus simple de +cette manière !
+ + + +select
+Il est parfois utile de donner à l'utilisateur du script des formulaires +sous forme de questions à choix multiples.
+ +Par exemple, je suis sociologue et je veux dresser des statistiques +sur les opinions d'un échantillon représentatif de normaliens : +sont-ils favorables ou défavorables à la destruction du NIR (Nouvel +Immeuble Rataud) et à la reconstruction du VIR (Vieil Immeuble +Rataud, a.k.a. Pavillon) ? +
+ ++Spontanément, je fais le script suivant : +
+ ++#!/bin/sh +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" +echo "(Répondez « pour » ou « contre »)" +read opinion + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++ +
Seulement voilà, de nombreuses personnes vont faire des fautes de +frappe, et taper « poru » au lieu de « pour », +« cnotre » au lieu de « contre », +etc. Résultat : au lieu de laisser d'autres scripts traiter +automatiquement les résultats des statistiques qui me sont envoyés par +courriel, je devrai tout regarder à la main et cocher moi-même les +résultats pour ne pas en oublier. Dans ce cas, autant faire un sondage +classique à la sortie du Pot !
+ +Heureusement, il existe une parade : la boucle
+select
.
select
+select variable in valeurs possibles + do commandes +done ++ + +
+Voici le script de notre sociologue : +
+ ++#!/bin/sh +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" +select opinion in Pour Contre + do break +done + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++ +
+Les utilisateurs verront alors : +
+ ++Êtes-vous favorable au remplacement du NIR par le VIR ? +1) Pour +2) Contre ++ +
+Ils devront alors taper 1 ou 2, selon leur opinion. +
+ +Vous avez remarqué que l'instruction do
est suivie de la
+commande break
. Celle-ci indique de sortir de la boucle
+select
. Sans break
, select
est en
+effet une boucle, comme while
, until
et
+for
. Nous allons voir pourquoi.
select
comme boucle
+Par défaut, select
se comporte comme une boucle. Observons
+le comportement du script suivant :
+
+#!/bin/sh +# Fichier "piege" + +echo "Si tu arrives à sortir de ce script, je te donne 30 euros." +select issue in "Sortir" "Quitter" + # la commande "continue" est une commande vide : elle ne fait rien de spécial + do continue +done ++ +
Essayez maintenant d'exécuter ce script :
+ ++Si tu arrives à sortir de ce script, je te donne 30 euros. +1) Sortir +2) Quitter +#? 1 +#? 2 +#? 1 +#? 2 +#? 1 +(etc.) ++ +
Ce comportement est parfois utile, par exemple si vous programmez un +petit jeu, ou autre. Ou encore, pour prévenir les réponses non +valides. Exemple :
+ ++#!/bin/sh +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" +select opinion in Pour Contre + do + case $opinion in + # Laisser passer ceux qui répondent correctement à la question + "Pour"|"Contre") break;; + + # Au cas où des zozos tapent sur autre chose que 1 ou 2 + *) continue;; + esac +done + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++ +
Grâce à cela, si un normalien tape une réponse
+invalide, select
attend qu'il tape quelque chose de
+correct ; s'il tape quelque chose de correct, la réponse est
+envoyée au sociologue.
+Vous aurez remarqué au passage que l'on peut sans problème +imbriquer des structures de contrôle les unes dans les autres. +
+
+On remarque que la condition des commandes if
et
+while
est une commande. Chaque commande renvoie un code de
+retour (qui est ignoré en utilisation normale). Si le code est 0, la
+commande a réussi ; sinon, la commande a échoué. Par exemple, le
+compilateur cc
renvoie un code d'erreur non nul si le
+fichier compilé contient des erreurs, ou s'il n'existe pas.
+
+Les commandes if
et while
considèrent donc le
+code de retour 0 comme « vrai », et tout autre code comme
+« faux ».
+
+Il existe une commande test
, qui évalue des expressions
+booléennes (c'est-à-dire dont la valeur ne peut être que vraie ou
+fausse) passées en argument, et renvoie un code de retour en fonction du
+résultat. Elle est bien utile pour les scripts. Exemple :
+
+if test $var = foo +then echo 'La variable vaut foo' +else echo 'La variable ne vaut pas foo' +fi+ +
+Pour en savoir plus sur les opérateurs de test, consultez la page tests et calculs arithmétiques Ou bien vous pouvez +revenir à la page centrale sur le shell, d'où +vous pourrez vous orienter vers d'autres parties du cours. +
+ + + + + + diff --git a/src/unix/shell/commande.tml b/src/unix/shell/commande.tml new file mode 100644 index 0000000..b8107aa --- /dev/null +++ b/src/unix/shell/commande.tml @@ -0,0 +1,511 @@ + + + + +Le shell a la faculté de lancer de nombreux programmes, sinon +tous. C'est une des raisons pour lesquelles on peut dire que c'est un +outil extrêmement puissant. +
+ +Lancer un programme, c'est créer un +processus. Tautologisons : un processus est une +instance d'exécution d'un programme, c'est-à-dire +l'exécution particulière d'un programme universel (i.e qui +n'est pas réductible à l'une de ses exécutions).
+ +Par exemple, si je lance Mozilla, un processus se crée, du nom de
+mozilla
. Ensuite, sans fermer ce programme, je lance une
+deuxième fois Mozilla ; un nouveau processus se crée, du nom
+de mozilla
également. J'ai donc deux processus
+distincts, même s'ils concernent le même programme. Et à chaque
+fois que je lance un programme, un processus se crée.
+
Dans notre exemple, nous avons deux processus
+mozilla
. Ils sont indépendants l'un de l'autre :
+quoi qu'il puisse se passer dans l'un, cela ne devrait pas influer sur
+le comportement de l'autre.
+
Toutefois, s'ils sont indépendants l'un de l'autre, tous deux
+dépendent du processus qui les a lancés. Eh oui, le shell
+est un programme comme un autre, donc chacune de ses exécutions
+correspond également à la création d'un processus. Si
+vous lancez trois shells en même temps, par exemple dans trois
+terminaux différents, vous aurez trois processus shell
+distincts.
+Les processus entretiennent entre eux des relations de parenté. Mais +comme les processus ont tous le même sexe, chaque processus +n'a qu'un parent. Un processus peut avoir plusieurs enfants. +
+ + Le shell est, comme nous venons de le voir, un processus qui
+peut enfanter d'autres processus. Par exemple, à chaque fois
+que je tape mozilla
, mon shell crée un processus
+mozilla
.
+Par défaut, le shell met le processus enfant en +avant-plan. Cela veut dire que si je tape simplement : +
+ +
+chaland ~ mozilla
+
+
+
+le processus mozilla
prend la main, et le shell ne
+réagit plus (il n'affiche même plus l'invite de commande) avant
+la fin du processus enfant. Ce n'est que lorsque le processus
+mozilla
prend fin (si je ferme ce programme, par exemple)
+que le shell reprend la main.
+
Ce comportement par défaut n'est parfois pas très pratique. Par +exemple, si je veux lancer Mozilla, mais aussi Emacs et d'autres +programmes qui s'ouvrent dans leur propre fenêtre, je suis obligé +d'ouvrir à chaque fois un nouveau terminal avec un nouveau shell, et +ce uniquement pour y taper une commande, après quoi le shell se +retrouve inutilisable jusqu'à la fin de chacun de ces +programmes.
+ +Il faudrait donc que l'on puisse lancer des processus enfants en +arrière-plan, de telle sorte que ces processus se lancent +dans leur propre fenêtre et me permettent toutefois de dialoguer avec +le shell sans avoir à :
+Pour cela, il faut ajouter le signe « & » à la +fin d'une ligne de commande. On peut ainsi taper :
+ ++chaland ~ mozilla & +chaland ~ mozilla & +chaland ~ ++ +
et de la sorte, un même shell peut engendrer +autant de processus que vous voulez.
+ + +La vie est déjà plus pratique comme cela. Mais parfois, on
+aimerait que le processus enfant survive au processus parent. Car par
+défaut, la mort d'un processus parent entraîne celle de
+tous ses enfants. Par exemple, si le shell qui a enfanté les
+deux processus mozilla
vient à décéder (si je le
+ferme brutalement, ou s'il plante), les deux processus
+mozilla
le suivront dans la mort.
+Il faudrait donc qu'un processus parent puisse émanciper des +processus enfants, pour que sa propre mort n'entraîne pas les +leurs. Pour cela, il faut utiliser les symboles +« &! ». Par exemple, si je tape : +
+ ++chaland ~ mozilla &! +chaland ~ mozilla &! +chaland ~ ++ +
puis que je ferme brutalement le shell en tapant
+Ctrl-D et en ignorant d'éventuels avertissements, le shell
+disparaîtra, mais pas les processus mozilla
.
Jusqu'ici, l'exemple de processus enfant que nous avons pris
+était relativement simple : il s'agissait de la commande
+mozilla
, que l'on peut lancer en tapant simplement son
+nom.
+Jusqu'ici, on peut se dire que la ligne de commande, c'est comme quand +on clique sur une icône, sauf que c'est plus fatigant. Effectivement, +pourquoi se fatiguer à taper une suite de caractères quand il +suffit d'appuyer une ou deux fois sur le bouton d'une souris ? +
+ ++C'est dans l'usage des arguments et des options que la ligne de commande +commence à révéler une partie de sa puissance, et de sa nette +supériorité sur les interfaces graphiques. +
+ + +Un argument est une suite de caractères que l'on donne à une +commande et qui lui indique comment se comporter. Les options sont un +type d'argument.
+ + +Par exemple, si je veux ouvrir le fichier hermocrate.txt
+avec l'éditeur de texte nano
, j'ai le choix entre deux
+possibilités :
chaland ~ nano
+puis Ctrl-R pour indiquer d'ouvrir un fichier, puis Ctrl-T
+pour voir la liste des fichiers, puis les flèches pour choisir mes
+fichiers, enfin Entrée pour sélectionner
+hermocrate.txt
— mais tout cela est bien
+fastidieux ; chaland ~ nano hermocrate.txt
+Ou encore, pour reprendre l'exemple de Mozilla, si je veux aller voir +la page des tuteurs et que ce n'est pas ma page d'accueil par défaut +(ce qui est un tort !), je peux taper :
+ +chaland ~ mozilla http://www.tuteurs.ens.fr/
+
++Les options sont un cas particulier d'arguments, qui donnent au +programme que l'on exécute toutes sortes d'information, souvent +plus ou moins périphériques, en général moins importantes +que les arguments. +
+ +Sous Unix, les options commencent généralement par un +tiret. Certaines options peuvent à leur tour prendre des +arguments.
+ +Par exemple, si l'on veut ouvrir un fichier au format MS-DOS, on peut +taper :
+ +chaland ~ nano -D hermocrate.txt
+
+
+
+L'option -r
de nano
prend un argument ;
+ainsi, si l'on veut que Nano coupe les lignes au bout de 75
+caractères, on doit ouvrir Nano en tapant :
+
chaland ~ nano -r 75 hermocrate.txt
+
+
+Traditionnellement, et pour des raisons de concision, la majorité +des options, sous Unix, est composée d'un tiret et d'une seule +lettre. Toutefois, pour des raisons pratiques, il peut également +exister des noms d'option longs ; ils sont en général +précédés, non d'un, mais de deux tirets. Exemple :
+ +chaland ~ nano --fill=75 hermocrate.txt
+
+Dans cet exemple, il se trouve que l'option à nom
+long --fill=
équivaut à l'option à nom
+court -r
. Mais toutes les commandes courtes n'ont pas
+systématiquement leur équivalent à nom long, et vice versa.
+Il est souvent ennuyeux d'avoir à taper une longue liste de fichiers +pour les donner en arguments à une commande, comme : +
+ +cc -o foo bar.c gee.c buz.c gog.c+ +
+(pour les curieux, sachez que cette commande sert à compiler un +programme écrit en langage C, c'est-à-dire à le traduire en langage +machine. Mais avant de vous mettre au langage C, attendez de bien +connaître le shell, il vous apprendra plus facilement et plus +agréablement les bases de la programmation...) +
+ ++Pour éviter les problèmes liés à la frappe de longues lignes de +commandes, on peut utiliser des jokers (wildcards en +anglais). Pourquoi ce nom ? Eh bien, dans certains jeux de cartes, +le joker permet de remplacer n'importe quelle carte ; dans le +shell, les jokers permettent de remplacer n'importe quel caractère ou +n'importe quelle séquence de caractères. +
+ ++Il existe principalement trois types de jokers : +
+ +
+Une étoile *
dans un nom de fichier est
+interprétée par le shell comme « n'importe quelle séquence de
+caractères » (mais ça ignore les fichiers dont le nom commence par un
+point). Exemple :
+
cc -o foo *.c+ +
+Pour interpréter l'étoile, le shell va faire la liste de tous les noms de
+fichiers du répertoire courant qui ne commencent pas par .
et
+qui finissent par .c
. Ensuite, il remplace *.c
+par cette liste (triée par ordre alphabétique) dans la ligne de commande, et
+exécute le résultat, c'est-à-dire par exemple :
+
cc -o foo bar.c buz.c foo.c gee.c gog.c+ +
+On a aussi le point d'interrogation ?
, qui
+remplace un (et exactement un) caractère quelconque (sauf un point en début
+de nom). Par exemple, ls *.?
liste tous les dont l'extension
+ne comporte qu'un caractère (.c
, .h
...).
+
+La forme [abcd]
remplace un caractère quelconque parmi
+a
, b
, c
, d
. Enfin,
+[^abcd]
remplace un
+caractère quelconque qui ne se trouve pas parmi a
, b
,
+c
, d
.
+
echo /users/*+ +
+affiche à peu près la même chose que +
+ +ls /users+ +
+(La commande echo
se contente d'afficher ses arguments.)
+
+&icone.attention; Attention : +
+ +mv *.c
+*.bak
, car le shell va passer à mv
les arguments
+foo.c bar.c foo.bak bar.bak
, et mv
ne sait pas
+quel fichier remplacer. rm *
+~
, le shell remplace l'étoile par la liste des fichiers présents,
+et ils seront tous effacés. Si vous tapez rm *~
, seuls les
+fichiers dont le nom finit par un tilde seront effacés.
+Interlude : comment effacer un fichier nommé
+?*
? On ne peut pas taper rm ?*
car le shell
+remplace ?*
par la liste de tous les fichiers du répertoire
+courant. On peut taper rm -i *
qui supprime tous les
+fichiers, mais en demandant confirmation à chaque fichier. On répond
+n
à toutes les questions sauf rm: remove ?*
.
+Autre méthode: utiliser les mécanismes de citation.
+
+Avec tous ces caractères spéciaux, comment faire pour passer des
+arguments bizarres à une commande ? Par exemple, comment faire
+afficher un point d'interrogation suivi d'une étoile et d'un dollar par
+echo
?
+On ne peut pas les taper directement dans la ligne de commande (ici,
+avec le shell zsh
), car le shell essaye de les interpréter
+comme des jokers :
+
chaland ~ echo ?*$
+zsh: no matches found: ?*$
+
+Il faut donc indiquer au shell de ne pas interpréter ces caractères +comme des jokers. Pour cela, nous allons utiliser des mécanismes fournis +par le shell : les quotations (mot anglais +signifiant citation). +
+ ++Les mécanismes de citation sont les suivants : +
+ +\
), qui protège un caractère de
+l'interprétation par le shell ;'
), qui protègent une chaîne de caractères de
+l'interprétation par le shell ;"
), qui protègent également une chaîne de caractères
+de l'interprétation par le shell, mais avec plus de souplesse que les
+précédents ;`
), qui cite la
+sortie d'une commande.\
)+ Il suffit de précéder un caractère spécial d'un backslash, et le shell +remplace ces deux caractères par le caractère spécial seul. Évidemment, le +backslash est lui-même un caractère spécial. +
+ ++Exemples : +
+ ++chaland ~ $ echo \?\*\$ +?*$ +chaland ~ $ echo \\\?\\\*\\\$ +\?\*\$+ +
'
)
+Un autre moyen est d'inclure une chaîne de caractères entre apostrophes
+(simples quotes) '
. Tout ce qui se trouve entre deux
+apostrophes sera passé tel quel par le shell à la
+commande. Exemple :
+
+chaland ~ $ echo '$?*'
+$?*
+
+"
)+Les guillemets se comportent comme les apostrophes, à une exception près: les +dollars et les backslashes sont interprétés entre les guillemets. +Exemple : +
+ +
+chaland ~ $ echo "$HOME/*"
+/users/87/maths/doligez/*
+
++Une technique utile: Quand on juxtapose deux chaînes de caractères +quotées, le shell les concatène, et elles ne forment qu'un argument. +Exemple : +
+ +
+chaland ~ $ echo "'"'"'
+'"
+
+
+Quant aux interactions plus compliquées (backslashes à l'intérieur des
+guillemets, guillemets à l'intérieur des apostrophes, etc.), le meilleur moyen
+de savoir si ça donne bien le résultat attendu est d'essayer. La commande
+echo
est bien utile dans ce cas.
+
`
)
+Dernière forme de citation : `commande`
. Le
+shell exécute la commande indiquée entre backquotes, lit la
+sortie de la commande mot par mot, et remplace `
+commande `
par la liste de ces mots.
+Exemple :
+
+chaland ~ $ echo `ls` +Mail News bin foo lib misc mur notes.aux notes.dvi notes.log +notes.tex planar text +chaland ~ $ ls -l `which emacs` +-rwxr-xr-t 1 root taff 978944 Jul 16 1991 /usr/local/bin/emacs+ +
+La commande which cmd
employée ci-dessus affiche sur sa
+sortie le nom absolu du fichier exécuté par le shell quand on lance la
+commande it cmd :
+
+chaland ~ $ which emacs
+/usr/local/bin/emacs
+
+
+
+Vous êtes maintenant en mesure de faire ces exercices pour vous +entraîner. Ou bien vous pouvez revenir à la page +centrale sur le shell, d'où vous pourrez vous orienter vers d'autres +parties du cours.
+ + + + + + diff --git a/src/unix/shell/entreesortie.tml b/src/unix/shell/entreesortie.tml new file mode 100644 index 0000000..128efaf --- /dev/null +++ b/src/unix/shell/entreesortie.tml @@ -0,0 +1,399 @@ + + + + ++Un programme consiste à traiter des données, et à renvoyer des données +transformées : il transforme des informations, et c'est pourquoi +l'on parle d'informatique.
+ + Prenons un programme hachoir
, par exemple : on y
+fait entrer des choses, elles sortent sous une autre forme, et dans
+l'intervalle, elles subissent des transformations régulières. Par
+exemple, on fait entrer une vache, il en ressort du steak haché ;
+on y fait entrer des carottes, il en ressort des carottes rapées.
+
+Deux concepts permettent de modéliser cette transformation +d'informations : les concepts d'entrée et de +sortie. L'entrée, c'est la vache ou les carottes ; +la sortie, c'est le steak haché ou les carottes +rapées. +
+ ++Mais cette première distinction entre entrée et sortie ne suffit pas, +car la sortie d'un programme, c'est-à-dire les messages qu'il renvoie, +sont de deux ordres : il y a les messages normaux relevant +de la transformation d'informations (par exemple le steak haché ou les +carottes rapées), mais il y a aussi des messages d'erreur.
+ +Par exemple, si vous mettez, sur le tapis roulant qui mène au +hachoir, un objet trop gros pour y rentrer, le hachoir, s'il est bien +conçu, devra vous prévenir qu'il n'arrive pas à hacher un objet si +gros. Et ce message, quoiqu'il sorte aussi bien du hachoir que le steak +haché, ne doit pas être traité de la même façon à sa sortie, et n'est +pas suivi des mêmes conséquences. C'est pourquoi l'on distingue la +sortie standard et la sortie d'erreur. +
+ + + + ++Pour résumer, chaque commande a donc :
+Par défaut, l'entrée standard est le clavier, la sortie standard est +l'écran, et la sortie d'erreur est aussi l'écran.
+ +C'est sur le clavier que vous tapez ; ce que vous tapez et ce +que renvoient les programmes s'inscrit à l'écran ; les messages +d'erreur renvoyés par les programmes s'affichent à l'écran. +
+ ++Mais il ne s'agit là que du comportement par défaut, et pas d'un +comportement obligatoire. Vous pouvez tout à fait orienter différemment +vos programmes.
+ +Par exemple, si vous donnez une vache comme entrée au hachoir, vous +pouvez orienter la sortie vers une imprimante (au lieu de l'écran, +proposé par défaut), et vous imprimerez ainsi du steak haché.
+ +
+Ou encore, vous pouvez donner un plant de carottes comme entrée au
+programme cueillette
, et envoyer la sortie (c'est-à-dire
+les carottes cueillies) au programme hachoir
.
+
+Nous allons étudier successivement : +
+ ++Ces différentes configurations esquissent la grammaire d'une utilisation +très performante des fonctionnalités du shell ; vous saurez +en effet comment brancher un fichier sur l'entrée ou sur la sortie d'une +commande, et comment brancher la sortie d'une commande sur l'entrée +d'une autre. Il n'y a pas d'autre combinaison possible. +
+ + +>
+On peut rediriger la sortie standard d'une commande vers un
+fichier (caractère « >
»). Le résultat de la
+commande sera placé dans le fichier au lieu de s'afficher sur l'écran.
+Exemple :
+
chaland ~ $ ls -l > foo
+
+
+Le résultat de ls -l
ne s'affiche pas à l'écran, mais il est placé
+dans le fichier foo
. On peut alors taper
+
chaland ~ $ less foo
+
+
+(ou more foo
)
+pour lire le fichier page par page.
+
>>
On veut parfois ajouter la sortie d'un programme à un fichier, sans +effacer ce qui précède. Or, par défaut, si l'on tape plusieurs fois +
+ +chaland ~ $ ls -l > foo
+
+
+à chaque fois, le contenu antérieur du fichier foo
est
+écrasé par le contenu ultérieur.
+
+Pour éviter cela, il existe l'outil de redirection >>. Ainsi, si +vous tapez plusieurs fois +
+ +chaland ~ $ ls -l >> foo
+
+
+le fichier foo
contiendra à la suite tout ce que
+vous a renvoyé la commande.
+
<
+On peut aussi rediriger l'entrée standard d'une commande (caractère
+« <
»). La commande lira alors le fichier au
+lieu du clavier. Exemple :
+
chaland ~ $ elm leroy < foo
+
+
+envoie par mail à Xavier Leroy le résultat de la commande ls -l
de
+tout à l'heure.
+
+On peut aussi taper more < foo
qui est équivalent à
+more foo
car more
sans argument lit son entrée
+standard et l'affiche page par page sur le terminal.
+
|
+Il devient rapidement ennuyeux de taper : +
+ +chaland ~ $ ls -l > foo +chaland ~ $ less < foo +chaland ~ $ rm foo+ +
+On peut se passer du fichier intermédiaire (foo
dans notre
+exemple) grâce à un pipe (caractère
+« |
»). Un pipe connecte directement la sortie
+standard d'une commande sur l'entrée standard d'une autre commande.
+Exemple : pour afficher page par page la liste des fichiers du
+répertoire courant, faire
+
chaland ~ $ ls -l | less
+
++Le pipe, ou tube, est d'un usage très courant, et rend beaucoup de +services. +
+ + + +
+On a parfois besoin de savoir si une commande a réussi ou non avant d'en
+lancer une autre. Les indicateurs &&
et
+||
permettent, respectivement, de lancer une commande si
+(et seulement si) la précédente a réussi ou échoué.
+
+Par exemple, si j'ai un fichier foo
, j'obtiens :
+
+chaland ~ $ ls foo && echo "J'ai un fichier foo."
+foo
+J'ai un fichier foo.
+
+
+
+Si je n'ai pas de fichier foo
, le message ne s'affiche
+pas. En revanche, si je tape alors :
+
+chaland ~ $ ls foo || echo "Je n'ai pas de fichier foo."
+ls: foo: No such file or directory
+Je n'ai pas de fichier foo.
+
+
++Pour en savoir plus sur les structures de test, consultez la page sur +les tests et calculs arithmétiques. +
+ + +
+Il est parfois utile de rediriger la sortie standard et la sortie
+d'erreur vers un même endroit. Pour cela, on utilise le motif
+2>&1
avant la redirection.
+
Fonction | +Bourne shell (sh, bash) | +Z-shell (zsh) | +
---|---|---|
Redirige la sortie d'erreur (2) et la sortie standard (1) sur l'entrée +de la commande suivante | +2>&1 | |
+ |& |
+
Redirige la sortie d'erreur et la sortie standard vers fichier |
+ >fichier 2>&1 |
+ >& fichier |
+
Redirige la sortie d'erreur et la sortie standard à la fin de fichier |
+>>fichier 2>&1 |
+>>& fichier |
+
+Normalement, une redirection avec >
sur un fichier qui
+existe déjà efface le contenu du fichier avant d'y placer le résultat de la
+commande. Les shells ont des options pour demander confirmation, ou
+refuser d'effacer le fichier.
+
+Une ligne de commandes contenant des |
s'appelle un pipe-line.
+Quelques commandes souvent utilisées dans les pipe-lines sont:
+
less
, bien plus évolué) à la fin du pipe-line, affiche le
+résultat page par page, pour laisser le temps de le lire. fold
coupe les lignes de son
+entrée à 80 caractères et écrit le résultat sur sa sortie.
+cat glop buz > toto+ +
+Concatène les fichiers glop
et buz
et place le
+résultat dans toto
.
+
wc -w /usr/dict/words+ +
+Affiche le nombre de mots du dictionnaire Unix. +
+ +grep gag /usr/dict/words | tail+ +
+Affiche les 10 derniers mots du dictionnaire qui contiennent la chaîne
+gag
.
+
+La panoplie complète des redirections est la suivante : +
+ +>
: change la sortie standard de la commande pour la placer
+dans un fichier.
+<
: change l'entrée standard de la commande pour la prendre
+dans un fichier.
+|
: branche la sortie standard de la commande de gauche sur
+l'entrée standard de la commande de droite.
+>>
: change la sortie standard pour l'ajouter à la fin
+d'un fichier existant.
+||
: exécuter la commande suivante si la première a
+échoué.
+&&
: n'exécuter la commande suivante que si la
+première a réussi.
+Vous êtes maintenant en mesure de faire ces exercices pour vous +entraîner. Ou bien vous pouvez revenir à la page +centrale sur le shell, d'où vous pourrez vous orienter vers d'autres +parties du cours.
+ + + + + + diff --git a/src/unix/shell/fonction.tml b/src/unix/shell/fonction.tml new file mode 100644 index 0000000..adf6545 --- /dev/null +++ b/src/unix/shell/fonction.tml @@ -0,0 +1,441 @@ + + + + ++Vous savez qu'un script shell n'est rien d'autre qu'une série de +commandes (si vous ne le savez pas, lisez la page d'initiation à la programmation en shell). Mais +parfois cela pose des problèmes, car lorsqu'un script devient un peu +long et surtout lorsqu'il est obligé de se répéter, les risques de +bogues (dysfonctionnements) croissent. +
+ ++L'usage des fonctions permet de : +
+ +
+Utilisateur de TeX ou LaTeX
+(ou non), vous voulez effacer régulièrement tous les fichiers
+.aux
et .log
qui polluent vos répertoires.
+Pour ceux qui ne connaissent pas TeX, sachez que ce sont des fichiers
+construits automatiquement, et que l'on peut recréer facilement à partir
+du fichier .tex
: les supprimer permet donc de gagner
+de l'espace disque sans dommages.
+
+Votre script ressemble donc à ceci : +
+ ++#!/bin/sh + +# fichier "texcleaner" : efface les fichiers aux et log + +# Je prends chaque fichier .aux du répertoire courant +for fichier in *.aux + do + # J'affiche son nom et demande confirmation pour l'effacer + echo "$fichier" + echo "Voulez-vous vraiment l'effacer ? (o/n)" + + # Je lis la réponse de l'utilisateur + read reponse + + # Et s'il dit oui, j'efface + if [[ $reponse == "o" ]] + then rm -f $fichier + fi +done + +# Je prends chaque fichier .log du répertoire courant +for fichier in *.log + do + # J'affiche son nom et demande confirmation pour l'effacer + echo "$fichier" + echo "Voulez-vous vraiment l'effacer ? (o/n)" + + # Je lis la réponse de l'utilisateur + read reponse + + # Et s'il dit oui, j'efface + if [[ $reponse == "o" ]] + then rm -f $fichier + fi +done ++ +
+Vous venez de terminer ce programme, et vous êtes content, car il +fonctionne comme vous le voulez. +
+ ++rm -i *.aux *.log ++ +Mais ici, cet exemple à la limite est là pour illustrer d'une +façon simple l'intérêt des fonctions... Disons alors que cet exemple +permet de donner une version francisée de la commande +
rm -i *.aux *.log
!
++Ce programme présente certains aspects déplaisants : +
+ ++Il faudrait, pour pallier ces inconvénients, trouver un moyen de +centraliser les informations destinées à être répétées, afin que +l'on puisse s'y référer à chaque endroit où cela est +nécessaire. C'est pour cela que les fonctions existent. +
+ + + ++L'utilisation des fonctions se fait en deux moments : +
+ ++Dans le monde naturel, on peut comparer cela à l'horloge parlante : +celle-ci commence par dire « au quatrième top, il sera neuf heures +cinquante-deux », puis « top... top... top... top. » +
+ ++On pourrait dire que dans un premier temps, l'horloge parlante +définit une fonction, en assignant un signal (le quatrième top) +à ce qu'il signale (il est neuf heures cinquante-deux) ; une fois +cela clairement défini, l'horloge égrène les quatre +« top », et le quatrième renvoie à l'énoncé « il est +neuf heures cinquante-deux ». +
+ ++En langage naturel, définir une fonction équivaut à dire : +quand je dirai le nom de la fonction, vous l'exécuterez. C'est +un acte de langage, comme quand un arbitre dit aux athlètes : +« Go ! » ; car tous les athlètes savent que le +signifiant « Go ! » (ou le coup de pistolet tiré en +l'air) signifie qu'ils doivent partir (la fonction a été définie dans +le règlement officiel de leur sport). +
+ + ++Définir une fonction est extrêmement simple : +
+ ++nom () { +instruction1 +instruction2 +... +} ++ +
liste_des_fichiers
, effacer_fichier
, etc. Il
+est toutefois fortement recommandé :
+
+ls
, mutt
,
+etc. Cela pourrait en effet poser de graves problèmes, car les fonctions
+définies dans un programme sont prioritaires sur les commandes integrées
+du shell (cd
, alias
, etc.) et les commandes
+externes (mutt
, mozilla
, etc.). Le
+comportement devient difficilement prévisible, et surtout, le script
+sera très difficile à débuguer... +Comme l'interpréteur de scripts shell lit des scripts ligne à ligne, +il faut que la fonction soit définie avant d'être +appelée. Sinon, vous recevez un message de type : +« Command not found » (commande introuvable). Par convention, +il est préférable de placer toutes les définitions de +fonction vers le début du programme, avant toutes les +instructions. +
+ + ++Notre programme sera donc considérablement allégé : +
+ ++#!/bin/sh + +# fichier "texcleaner" : efface les fichiers aux et log + +# Je définis ma fonction effacer_fichier + +effacer_fichier () { + # J'affiche son nom et demande confirmation pour l'effacer + echo "$1" + echo "Voulez-vous vraiment l'effacer ? (o/n)" + + # Je lis la réponse de l'utilisateur + read reponse + + # Et s'il dit oui, j'efface + if [[ $reponse == "o" ]] + then rm -f $1 + fi +} + +# Je prends chaque fichier .aux du répertoire courant +for fichier in *.aux + do + # J'appelle la fonction effacer_fichier pour chaque fichier + effacer_fichier $fichier +done + +# Je prends chaque fichier .log du répertoire courant +for fichier in *.log + do + # J'appelle la fonction effacer_fichier pour chaque fichier + effacer_fichier $fichier +done ++ +
+On économise une dizaine de lignes, on gagne en lisibilité, et les +risques de bogues diminuent considérablement car s'il y a des +corrections à apporter, c'est à un seul endroit du script, et non d'une +façon disséminée sur l'ensemble du programme. +
+ +
+Un détail de la fonction effacer_fichier
peut vous
+étonner : nous utilisons l'argument $1
. Comme vous le
+savez sans doute (sinon, lisez la page sur
+les commandes shell et leurs
+arguments), $1
désigne le premier argument passé à une
+commande ; or les fonctions peuvent recevoir des
+arguments, exactement de la même façon que les commandes. C'est
+même tout à fait normal, car les fonctions sont en fait des
+commandes comme les autres, à ceci près qu'elles ne sont valables qu'à
+l'échelle d'un script, et non à celle d'un système tout entier.
+
+Sachez enfin que des fonctions peuvent appeler d'autres +fonctions, ce qui donne une extrême souplesse à leur +utilisation. +
+ ++En voici un bref exemple : +
+ ++#!/bin/sh + +# Je définis une première fonction + +ecrire_sur_une_ligne () { + echo -n $* +} + +# Je définis une deuxième fonction qui appelle la première + +saluer_utilisateur () { + ecrire_sur_une_ligne "Bonjour " + echo $USER +} + + +# J'appelle la deuxième fonction +saluer_utilisateur + ++ + +
+De là, passons à un conseil de programmation : abusez des +fonctions ! N'hésitez pas à créer des fonctions pour tout +et n'importe quoi. Vous en tirerez : +
+ ++Un programme sans fonction n'est lisible que s'il est très +petit : une vingtaine de lignes tout au plus. Dès qu'un +programme dépasse cette taille, il cesse d'être intelligible d'un seul +coup d'œil pour un humain. +
+ ++Supposons qu'un programme soit amené à répéter n fois un +même fragment de code comportant p lignes ; en +utilisant des fonctions on économise +(n - 1) x p lignes (toutes +les occurrences de la répétition, moins la définition de la fonction). +
+ ++Ce gain de lignes est indissociable d'un gain de lisibilité, car les +répétitions fatiguent inutilement le cerveau humain. +
+ + ++En recopiant « à la main » des fragments identiques de codes, +vous risquez toujours la faute de frappe. Or, la moindre coquille peut +avoir des conséquences, au mieux, imprévisibles ; au pire, +catastrophiques. +
+ ++En isolant les séries d'instructions dans des définitions de fonctions, +vous concentrez en un seul endroit la situation possible d'un bogue +donné. Vous pouvez circonscrire le bogue. +
+ ++En utilisant des fonctions, vous donnez à vos programmes une grande +souplesse. Si vous voulez apporter une modification d'ensemble à un +programme, vous n'avez plus à corriger autant de morceaux du script +qu'il y a d'occurrences du même fragment : vous apportez vos +modifications de manière centralisée. +
+ ++Pour décrire ce phénomène, on parle souvent de +modularité, ou encore +d'encapsulation. Il s'agit en effet de privilégier +l'assemblage simple d'éléments simples à l'assemblage complexe +d'éléments complexes. Ainsi, chaque fonction cache aux +fonctions qui l'appellent la complexité de son travail, pour leur offrir +une interface simple : le travail est divisé en autant de petites +tâches que nécessaires, au lieu d'une seule tâche gigantesque et +labyrinthesque. +
+ ++Pour toutes ces raisons, n'hésitez surtout pas à créer des fonctions et +à les emboîter entre elles. La programmation vous paraîtra de plus en +plus facile, à mesure que vous réaliserez des tâches de plus en plus +complexes. +
+ ++Vous pouvez revenir à la page centrale sur le +shell, d'où vous pourrez vous orienter vers d'autres parties du +cours. +
+ + + + + diff --git a/src/unix/shell/index.tml b/src/unix/shell/index.tml new file mode 100644 index 0000000..5354ea5 --- /dev/null +++ b/src/unix/shell/index.tml @@ -0,0 +1,129 @@ + + + + +
+Le shell est le programme que vous utilisez
+régulièrement sur les machines Unix de l'ENS (que ce soient les Sun, les
+PC sous Linux ou autres dérivés d'Unix), et qui interprète les
+commandes. Par exemple, vous y tapez pine
ou
+mutt
, forum
, cc
,
+mozilla
, etc. Le shell est ce programme qui attend vos
+instructions et vous dit quelque chose comme :
+
sas ~ $
+
+
++Le mot shell signifie « coquille » en anglais. Mais +quel rapport avec une coquille ? Eh bien, dans une coquille vous +pouvez mettre de l'eau, pour la porter ensuite à votre bouche ; +vous pouvez y mettre du sable avant de le verser dans des bocaux ; +en somme, une coquille est un récipient qui permet de manipuler toutes +sortes de contenus. Il en va de même du shell. C'est un outil en mode +texte qui permet l'exploitation d'un grand nombre de ressources de +l'ordinateur. +
+ + ++Ces pages vous donneront les rudiments pour exploiter les deux +principales fonctionnalités du shell : +
+ ++Ces deux usages du shell sont tout à fait complémentaires. Pour une +utilisation quotidienne, il est important de connaître quelques bases de +l'utilisation du shell en ligne de commande ; et l'écriture de +scripts shell permet de personnaliser son système en automatisant des +tâches répétitives et fastidieuses. +
+ ++Par ailleurs, la programmation en shell fournit un excellent marche-pied +pour apprendre la programmation. C'est un langage simple, qui permet +d'arriver rapidement à des résultats visibles. +
+ ++Les pages que nous consacrons ici à l'apprentissage du shell vous +apprendront à manipuler cet outil précieux et puissant. Elles +sont accessibles à des débutants, même s'ils n'ont aucune connaissance +préalable avancée en informatique, ni même en mathématiques ; elles +sont accessibles à ceux qui ont une formation littéraire. +
+ +Si vous souhaitez utiliser le shell en ligne de commandes, nous vous +recommandons en priorité la lecture des pages suivantes :
+ +Si vous souhaitez apprendre à programmer en shell (écrire des +scripts), alors nous vous conseillons de lire également :
+ ++Le shell, comme le normalien, ne connaît que deux états : +
+ ++Le shell, une fois lancé, est inactif : il attend qu'on lui donne +des ordres. Quand on lui en donne un, il l'exécute ; et quand il a +terminé, il retourne à son état d'inactivité, en attente d'un nouveau +commandement. +
+ ++Quand le shell est inactif, il affiche une invite +(prompt en anglais), qui ressemble à cela : +
+ +chaland ~ $
+
+
++Un curseur, parfois clignotant, indique que le shell attend que vous lui +tapiez des instructions. +
+ ++J'ai l'habitude de taper des commandes dans +le shell, et je vois qu'il réagit. Mais comment comprend-il ce que je +veux faire ? +
+ +
+Prenons un cas simple. Je tape la commande bonjour
à
+l'invite (prompt) du shell. Il va chercher à plusieurs endroits
+ce que j'entends par là :
+
bonjour
n'est pas une de
+ses commandes intégrées ; si c'est le cas, il l'exécute
+directement, sinon il passe à l'étape suivante ;PATH
, et
+qui indique le « chemin » où trouver les commandes que l'on
+appelle. Par exemple, si la variable PATH contient les
+répertoires :
+
+/usr/bin
/bin
et /home/toto/bin
,/usr/bin/bonjour
,/bin/bonjour
et /home/toto/bin/bonjour
;PATH
, il va renvoyer un message d'erreur
+en disant que désolé, il ne voit pas ce que l'on entend par
+bonjour
. Exemple :
+
+
+chaland ~ $ bonjour
+bonjour: Command not found
La variable PATH
consiste en une liste de répertoires
+séparés par des « :
». Si vous voulez voir à quoi
+ressemble votre PATH, tapez :
+
+chaland ~ $ echo $PATH
+
+
+
+
+Certaines commandes du shell ne sont pas des programmes mais des
+commandes internes (builtins functions). Comme nous
+l'avons vu, elles sont directement reconnues et exécutées par le shell.
+Un exemple de commande interne est cd
; elle modifie
+le répertoire courant du shell.
+
+Attention : si vous créez un script (c'est-à-dire un programme
+écrit en langage shell) qui utilise cd
, il ne modifie pas
+le répertoire courant du shell qui lance ce script, mais celui d'un
+shell qui est créé à l'occasion de l'exécution de ce script, et qui
+meurt à la fin de cette exécution.
Exemple : je crée un script aller
qui contient les
+lignes suivantes :
+#! /bin/sh +cd $*+ +
+Nous aurons alors : +
+ ++chaland ~ $ aller toto +chaland ~ $ cd toto +chaland ~/toto $+ +
+La répétition de commandes complexes en ligne de commande du shell est +rapidement fastidieuse ; aussi est-il très pratique de connaître +les bases de la programmation de scripts shell. Les scripts servent à +automatiser ou systématiser des tâches. +
+ + +.profile
+Il existe un script spécial, qui est exécuté au moment où on se connecte. Ce
+script est contenu dans le fichier $HOME/.profile
. C'est ce
+fichier qui vous dit si vous avez du courrier, etc.
+
+Ce fichier est normalement mis à jour automatiquement par les scripts de la +config conscrits. Il est néanmoins possible de le modifier pour changer des +options. +
+ +.xinitrc
Il existe encore le script .xinitrc
, qui lance X ;
+X est le gestionnaire de fenêtres classique sous Unix.
+
+Le nombre de scripts possibles est illimité ; vous pouvez en créer +autant que vous voulez, selon vos besoins : c'est ainsi que l'on +personnalise son système et qu'on l'adapte à ses exigences, plutôt que +l'inverse. Pour en savoir plus sur la programmation en shell, consultez +les pages consacrées à la programmation de scripts +en shell. Ou bien vous pouvez revenir à la page +centrale sur le shell, d'où vous pourrez vous orienter vers d'autres +parties du cours. +
+ + + + + + diff --git a/src/unix/shell/script.tml b/src/unix/shell/script.tml new file mode 100644 index 0000000..5a1680a --- /dev/null +++ b/src/unix/shell/script.tml @@ -0,0 +1,693 @@ + + + + ++Un shell, quel qu'il soit, peut exécuter des commandes prises dans un +fichier. Un fichier contenant des commandes pour le shell est appelé un +script. C'est en fait un programme écrit dans le +langage du shell. Ce langage comprend non seulement les commandes que +nous avons déjà vues, mais aussi des structures de contrôle +(constructions conditionnelles et boucles). +
+ +
+Pour la programmation du shell, nous allons utiliser le shell
+sh
, qui est le plus répandu et standard. Ce que nous avons
+vu jusqu'ici s'applique aussi bien à sh
qu'à
+zsh
et aussi à csh
, à quelques exceptions
+près, que nous vous signalerons en temps voulu.
+Un script shell est un fichier en mode texte. C'est-à-dire que ce n'est +pas un fichier binaire, exécutable directement par la machine, mais +il doit être interprété. +
+ ++L'interprétation signifie que chaque commande contenue dans un script +doit être lue par un programme, appelé interpréteur (et non +interprète, bizarrement) ; l'interpréteur analyse chaque commande +du script et la traduit « à la volée » en langage machine, ce +qui permet l'exécution du script. +
+ +Dans le cas des scripts shell, l'interpréteur, c'est le shell +lui-même. Dans d'autres langages, comme le Perl, l'interpréteur est un +programme indépendant du shell.
+ + +Un script étant un fichier en mode texte, il doit être créé avec un +éditeur de texte. Un éditeur de texte est un programme dont la fonction +est... d'éditer du texte. Pour savoir plus à leur sujet, consultez les +pages sur les éditeurs.
+ +Mais quel éditeur choisir ?
+ +Tout d'abord, il faut savoir que n'importe quel éditeur est +capable d'ouvrir et d'écrire des scripts shell, et vous pouvez +tout à fait modifier avec n'importe quel éditeur de texte ce que vous +avez écrit avec n'importe quel autre.
+ +Mais il faut savoir aussi que certains éditeurs de texte sont
+plus appropriés que d'autres à l'écriture de scripts shell. Par
+exemple, nano
permet d'éditer des scripts comme tout autre
+éditeur, mais quand un script fait plus d'une dizaine de lignes, on
+commence à s'y perdre un peu. À l'inverse, emacs
et
+vim
+offrent quelques fonctionnalités qui deviennent rapidement
+indispensables :
L'indentation consiste à « aérer » votre texte selon sa +construction logique. C'est très utile, en particulier, quand on a un +script qui ressemble à ceci :
+ ++#!/bin/bash +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" +select opinion in Pour Contre +do case $opinion in +# Laisser passer ceux qui répondent correctement à la question +"Pour"|"Contre") break;; +# Au cas où des zozos tapent sur autre chose que 1 ou 2 +*) continue;; +esac +done + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++ +
Même (surtout) si vous ne comprenez pas ce que tout cela veut dire, +vous conviendrez que ce n'est pas très lisible. Comparez donc avec +ceci :
+ ++#!/bin/bash +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" + +select opinion in Pour Contre + do + case $opinion in + # Laisser passer ceux qui répondent correctement à la question + "Pour"|"Contre") break;; + + # Au cas où des zozos tapent sur autre chose que 1 ou 2 + *) continue;; + esac +done + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++ +
Les deux scripts sont interprétés exactement de la même façon : +l'interpréteur ignore les espaces et les lignes vides. Mais avec +l'indentation, on perçoit immédiatement (en tout cas, beaucoup plus +vite) la structure logique du script.
+ + +Les éditeurs comme emacs
et
+vim
+analysent automatiquement le statut des différents mots et symboles que
+vous tapez et les colorent logiquement. Par exemple, avec emacs, vous
+pouvez avoir :
Ça n'a l'air de rien, dit comme cela, mais comparez vous-même et vous +verrez que ces outils sont indispensables, et que l'on y gagne au moins +la moitié du temps d'écriture et de débugage.
+ +emacs
ou vim
Apprenez donc, si ce n'est pas déjà le cas, les commandes de base +d'emacs ou de vim, ce sont des outils quasi incontournables au +programmeur shell, surtout débutant.
+ + Heureusement, les tuteurs vous ont concocté des pages
+d'initiation : le tutorial
+emacs
et le tutorial
+vim
.
Vous hésitez entre emacs
et vim
? Tout
+le monde est passé par là. Jetez un coup d'œil à chacun des deux,
+puis concentrez-vous sur celui qui vous paraît le plus sympathique et le
+plus pratique ; et si vous hésitez encore, tirez-en un au
+sort, ils se valent vraiment.
Pour que le shell sache comment l'interpréter, un script shell doit +commencer par la ligne:
+ +#!/bin/sh+ +
+Il doit aussi avoir être exécutable (bit x
). Le
+#!/bin/sh
sur la première ligne indique que ce script doit être
+exécuté par le shell sh
dont on indique le chemin
+d'accès. Pour rendre un fichier exécutable, tapez :
+
chaland ~ chmod u+x fichier
+
+
++(pour en savoir plus sur les droits attachés à un fichier, consultez la +page sur les droits +d'accès). +
+ + +
+Pour comprendre ce qui suit, vous devez savoir ce qu'est le
+PATH
. Si ce n'est pas le cas, lisez la présentation du shell.
+
+Quand vous exécutez un script, vous pouvez vous trouver à
+n'importe quel endroit de l'arborescence de vos répertoires. Si le
+répertoire courant ne se situe pas dans votre PATH
et
+que vous voulez exécuter un programme qui s'y trouve, vous ne pouvez
+pas taper :
+
+clipper ~ commande
+
+
+car si le répertoire courant n'est pas dans le
+PATH
, le shell n'ira pas y chercher
+commande
.
+Vous recevrez donc un message comme : +
+ +
+clipper ~ commande
+zsh: command not found: commande
+
+
++Pour que le shell comprenne où chercher votre commande, il faut donc +spécifier l'emplacement de la commande en donnant son chemin, qu'il +soit absolu : +
+ +
+clipper ~ /home/toto/repertoire/courant/commande
+
+
+ou relatif :
+ +
+clipper ~ repertoire/courant/commande
+
+
+ou encore sous la forme :
+ +
+clipper ~/repertoire/courant ./commande
+
+
+
+~/bin
+Il y a un certain nombre de commandes que l'on peut vouloir utiliser +depuis n'importe quel répertoire. Dans ce cas, il est fastidieux de : +
+ +Il suffit donc de mettre tous vos scripts dans un même
+répertoire, et de mettre ce répertoire dans le
+PATH
. Par convention, ce répertoire s'appelle
+bin
et se place dans votre répertoire personnel. Si
+votre répertoire personnel est /home/toto
, ce
+répertoire sera donc /home/toto/bin
.
+Commencez donc par créer ce répertoire : +
+ +
+clipper ~ mkdir bin
+
+
+
+Ensuite, vérifiez qu'il soit bien dans votre PATH
:
+
+clipper ~ echo $PATH
+
+
+Si vous voyez par exemple $HOME/bin
+dans votre PATH
, alors c'est bon, tous les fichiers
+exécutables situés dans ce répertoire seront accessibles depuis
+n'importe quel répertoire.
+
+Si ce n'est pas le cas, il faut ajouter ce répertoire au
+PATH
. Pour cela, ajoutez dans le fichier de configuration
+de votre shell, par exemple le fichier .zshrc
, la
+ligne :
+
PATH=$PATH:$HOME/bin+ +
Cette ligne indique que la prochaine fois que vous
+ouvrirez votre shell, le répertoire bin
figurera dans
+votre PATH
.
+
Si vous manipulez déjà le shell en ligne de commande, vous +pouvez commencer vos premiers scripts. Un script shell est en effet +avant tout une succession de commandes. +
+ +Par exemple, si vous avez coutume de taper successivement, quand +vous vous loguez à l'ENS : +
+ ++clipper ~ mozilla & +clipper ~ mutt ++ +
vous pouvez vous créer le script suivant dans le
+fichier ~/bin/amorce
:
+#!/bin/sh + +mozilla & +mutt ++ +
Ainsi, dès que vous vous connectez, vous pouvez taper
+amorce
dans le shell, et vos commandes s'exécuteront
+automatiquement.
+Presque tous les langages informatiques autorisent d'insérer des +commentaires ; le shell n'échappe pas à la règle. Pour +cela, il suffit de faire précéder chaque ligne de commentaire du +caractère « # ». Exemple : +
+ ++#!/bin/sh + +# Tout ce que j'écris ici ne sera pas lu. +echo "Ce que je tape ici sera lu." ++ +
+Les lignes de commentaire sont tout bonnement ignorées par +l'interpréteur. Alors, allez-vous demander, à quoi servent-elles si +elles ne servent à rien ? Elles sont indispensables pour tout +programmeur, car elles lui permettent de « commenter » son +programme, c'est-à-dire d'écrire ce qu'il veut, comme dans la marge d'un +livre. +
+ ++Les commentaires jouent pour beaucoup dans la lisibilité d'un programme +par un humain. Car les lignes de commande pures sont relativement +austères ; des commentaires permettent de les décrire à l'intention +d'un être humain. +
+ ++Sans doute allez-vous vous demander quel être humain cela peut bien +intéresser. Eh bien, quelqu'un d'autre que vous qui lit ce code ; +ou bien vous-même, dans un mois, un an, une décennie, ou plus, quand +vous aurez tout oublié de ce programme et de son fonctionnement. +
+ ++N'hésitez donc pas à recourir abondamment aux commentaires, qui +accroissent la lisibilité de votre programme, même s'ils n'ont +absolument aucune influence directe sur son fonctionnement intrinsèque. +
+ + ++Les lignes blanches ne sont pas interprétées non +plus. N'hésitez donc surtout pas à espacer votre script, les +lignes blanches ne consomment presque rien en termes d'espace disque, ce +n'est donc pas une ressource rare ; et elles facilitent +considérablement la lecture pour un être humain. +
+ ++Pourquoi espacer son script ? Pourquoi insérer des +commentaires ? Pour une seule et même raison : +votre script doit être lisible. Pourquoi être +lisible ?
+ +D'abord, pour autrui : si d'autres gens lisent votre script, il +doit être intelligible, et les passages complexes doivent être +explicités par des commentaires.
+ +Ensuite, pour vous-même ; au moment où vous écrivez un +script, vous comprenez tout, naturellement ; mais si vous le +relisez dans quelques mois, voire quelques années, les passages +obscurs risqueront d'être incompréhensibles, ce qui est +particulièrement pénible quand on essaye de débuguer +un programme, c'est-à-dire d'en corriger les erreurs. +
+ + +echo
+Maintenant que vous savez comment on peut exécuter un script, il s'agit +de le remplir... Commençons par ce qu'il y a de plus simple : +afficher du texte. +
+ +
+Traditionnellement, on commence par faire un programme qui affiche
+simplement la ligne « Hello world » (ce qui signifie en
+anglais : bonjour au monde entier). Faites donc un fichier
+helloworld
contenant les lignes suivantes :
+
+#!/bin/sh + +# Fichier "helloworld" +echo "Hello world" ++ +
+Exécutez ensuite ce programme, par exemple en tapant, dans le répertoire +où il se trouve : +
+ +clipper ~ $ ./helloworld
+Hello world
+
++Ça y est, vous avez créé votre premier programme ! Lancez-le autant +de vous que vous voulez, vous avez bien mérité d'être fier de vous. +
+ ++Exercice : francisez ce script. +
+ + +echo
+La commande echo
sert à afficher du texte. Chaque ligne de
+texte est écrite sur une ligne à part. Exemple :
+
+#!/bin/sh +# Fichier "bonjour" + +echo "Bonjour... " +echo "Comment allez-vous ?" ++ +
affiche les lignes suivantes :
+ ++Bonjour... +Comment allez-vous ? ++ +
et non :
+ ++Bonjour... Comment allez-vous ? ++ + +
+Si vous voulez annuler le retour chariot qui a lieu par défaut à la fin
+de toute commande echo
, il faut utiliser l'option
+-n
. Le programme sera alors :
+
+#!/bin/sh + +echo -n "Bonjour..." +echo "Comment allez-vous ?" ++ +
+Alors seulement, vous pourrez avoir : +
+ ++Bonjour... Comment allez-vous ? ++ + +
Faisons mieux encore : votre script va citer des variables. Pour +savoir ce que sont des variables, allez voir la page sur les variables.
+ +La variable USER
contient le login de
+l'utilisateur ; la variable PWD
(pour print
+working directory) affiche le répertoire courant. Faisons donc le
+script suivant :
+#/bin/sh +# Fichier "mon-pwd" + +echo "Bonjour $USER..." +echo "Tu es actuellement dans le répertoire $PWD." ++ +
Comme vous pouvez le remarquer, pour citer le contenu d'une variable, +on ajoute le signe dollar ($) devant son nom.
+ + + + +read
Parler c'est bien, écouter c'est mieux. Jusqu'ici, votre programme +est capable de parler, de dire bonjour, mais il n'est même pas capable +de vous appeler par votre nom, tout juste par votre login, ce qui n'est +pas très intime...
+ +
+Nous allons donc lui donner la faculté d'écouter, grâce à la commande
+read
. Prenons le script suivant :
+
+#!/bin/sh +# Fichier "mon-nom" + +echo "Bonjour... Comment vous-appelez-vous ?" +read nom +echo "Je vous souhaite, $nom, de passer une bonne journée." ++ +
Vous connaissez déjà la commande echo
. La commande
+read
permet de lire des variables. Si vous exécutez ce
+script, après avoir affiché la ligne
+Bonjour... Comment vous-appelez-vous ? ++ +
le shell va attendre que vous tapiez votre
+nom. Tapez par exemple Toto
, puis appuyez sur Entrée, et
+vous verrez :
+Bonjour... Comment vous-appelez-vous ? +Toto +Je vous souhaite, Toto, de passer une bonne journée.+ +
read
doit être suivie du seul nom de la
+variable, non précédé du signe dollar. Le signe
+dollar ne doit précéder le nom de la variable que lorsque l'on cite son
+contenu.
+
+La commande read
permet également de lire plusieurs
+variables. Il suffit pour cela d'indiquer à la suite les noms des
+différentes variables. Exemple :
+
+#!/bin/sh +# Fichier "administration" + +echo "Écrivez votre nom puis votre prénom :" +read nom prenom +echo "Nom : $nom" +echo "Prénom : $prenom" ++ +
Vous aurez :
+ ++Écrivez votre nom puis votre prénom : +Hugo Victor +Nom : Hugo +Prénom : Victor ++ + + +
Nous avons vu comment utiliser read
avec un seul
+argument et avec plusieurs arguments ; il reste à voir l'usage de
+read
sans argument. Oui, c'est possible !
+Cela équivaut simplement à attendre un réaction de l'utilisateur, mais
+sans mémoriser ce qu'il tape.
Concrètement, cela est très utile après un message « Appuyez +sur Entrée pour continuer. » Exemple :
+ ++#!/bin/sh +# Fichier "continuer" + +echo "Quelle est la différence entre un canard ?" +echo "(Appuyez sur Entrée pour avoir la réponse)" +read +echo "Les pattes, surtout la gauche." ++ +
+Vous connaissez maintenant les bases de la programmation en shell. Vous +avez déjà de quoi écrire de nombreux scripts qui peuvent vous faciliter +la vie de tous les jours. Pour cela, lorsque vous ressentez un besoin, +ne vous demandez pas si vous avez les connaissances requises pour écrire +un programme donné, mais plutôt comment, à partir de vos +connaissances actuelles, vous pourriez le réaliser. +
+ ++Pour poursuivre votre apprentissage, vous pouvez passer à la lecture des +pages suivantes : +
+ ++Ou bien vous pouvez revenir à la page centrale sur +le shell, d'où vous pourrez vous orienter vers d'autres parties du +cours. +
+ + + + + diff --git a/src/unix/shell/test.tml b/src/unix/shell/test.tml new file mode 100644 index 0000000..f3640d5 --- /dev/null +++ b/src/unix/shell/test.tml @@ -0,0 +1,428 @@ + + + + ++Un test est une opération dont le but est d'évaluer la valeur +d'une expression. Cette expression peut être simplement +l'existence de quelque chose (par exemple, d'un fichier, ou +bien d'une variable), ou ce peut être une proposition.
+ +Concrètement, cela veut dire qu'un programme n'est pas limité +à la possibilité de donner des ordres : il peut aussi poser des +questions, et agir comme vous le décidez en fonction des +réponses apportées aux questions.
+ +Posons par exemple le principe suivant : « Si Dieu n'existe +pas, alors tout est permis. » Nous allons ensuite tester si Dieu +existe, et s'il n'existe pas, nous saurons que tout est permis. Autre +exemple : posons que « si le train passe sous le tunnel avant +que j'aie compté jusqu'à dix, alors Manek est vivant. » Je vais +donc tester si le train passe sous le tunnel avant que j'aie compté +jusqu'à dix, et si c'est le cas, alors c'est que Manek est vivant. C'est +aussi simple que cela.
+ +Le shell propose deux principales façons de réaliser un test ; +ces deux méthodes sont équivalentes :
+ +test expression
[ expression ]
+Les deux commandes suivantes reviennent donc au même :
+ ++clipper ~ $ test -f foo || echo "Le fichier foo n'existe pas." +Le fichier foo n'existe pas. +clipper ~ $ [ -f foo ] || echo "Le fichier foo n'existe pas." +Le fichier foo n'existe pas. ++ + +
Un test renvoie un code de retour. Un code de retour
+est un nombre (0 ou autre), qui correspond à une réponse de
+type « vrai » ou « faux ». C'est ce code de
+retour qui permet la manipulation des tests dans des structures de
+contrôle comme if
, etc.
+Le code de retour 0 correspond à la réponse +« vrai ». Pour répondre « faux », le programme +répond... autre chose (ce peut être 1, 2, -1 ou autre). +
+ +Par exemple, un conducteur de voiture utilise le programme +suivant :
+ ++while [[ "$couleur_du_feu" != "vert" ]] +do attendre +done + +démarrer ++ + +
!
»L'opérateur logique « non » inverse le code de +retour d'une commande, c'est-à-dire renvoie vrai si elle +renvoie faux, et vice versa.
+ +On utilise cet opérateur en précédant une condition d'un point +d'exclamation (« ! »).
+ + +Pour illustrer l'usage de cet opérateur, voici quatre cas de figure +différents :
+ ++# Premier cas +[ -f foo ] && echo "Le fichier foo existe." ++ +
Dans l'exemple précédent, le shell teste si le
+fichier foo
existe. Comme il n'existe pas, le code de
+retour de ce test est faux (un nombre différent de 0). Or, l'opérateur
+« && » n'exécute ce qui suit que si le code de retour est vrai
+(i.e. 0) car si a
est faux
+alors a&&b
sera aussi nécessairement faux. Comme
+ce n'est pas le cas, les commandes ne sont pas exécutées.
+# Deuxième cas +[ -f foo ] || echo "Le fichier foo n'existe pas." +Le fichier foo n'existe pas. ++ +
Dans cet exemple, l'opérateur n'est plus
+« && » mais « || ». Les commandes ne s'exécutent que si le
+code de retour vaut faux (i.e. différent de 0); comme c'est le cas,
+elles sont exécutées. En effet si a
est vrai
+alors a||b
sera aussi nécessairement vrai, ce n'est pas la
+peine de l'exécuter.
+# Troisième cas +[ ! -f foo ] && echo "Le fichier foo n'existe pas." +Le fichier foo n'existe pas. ++ +
Ici, l'opérateur est de nouveau « && » ;
+mais contrairement aux deux exemples précédents, le test n'est
+plus [ -f foo ]
mais [ ! -f foo ]
. Par
+conséquent, le code de retour est vrai (i.e. 0), et les commandes sont
+exécutées.
+# Quatrième cas +[ ! -f foo ] || echo "Le fichier foo existe." ++ +
Voici la dernière combinaison possible. Le code de +retour est vrai (i.e 0), mais il fallait faux (e.g. 1) pour que les +commandes soient exécutées.
+ + + +Ces quatre exemples correspondent aux énoncés suivants :
+ +foo
existe, alors il faut
+écrire : « Le fichier foo existe. ».foo
existe, alors il
+faut écrire : « Le fichier foo n'existe pas. ».foo
n'existe pas, alors il
+faut écrire : « Le fichier foo n'existe pas. ».foo
n'existe pas,
+alors il faut écrire : « Le fichier foo existe. ».if
Dans un script, outre la formulation précédente, on pourra +écrire :
+ ++# Premier cas +if [ -f foo ] + then echo "Le fichier foo existe." +else continue +fi + +# Deuxième cas +if [ -f foo ] + then continue +else echo "Le fichier foo n'existe pas." +fi + +# Troisième cas +if [ ! -f foo ] + then echo "Le fichier foo n'existe pas." +else continue +fi + +# Quatrième cas +if [ ! -f foo ] + then continue +else echo "Le fichier foo existe." +fi ++ + +
-a
»L'opérateur « et » renvoie 0 (vrai) si et seulement si les +différentes conditions sont toutes réalisées ; si au moins l'une +d'entre elles ne l'est pas, le code de retour est 1 (faux). On note +cet opérateur en insérant « -a » entre les différentes +conditions. Exemples :
+ ++touch foo # donc foo existe +rm bar # donc bar n'existe pas + +# [ -f foo ] = vrai si le fichier foo existe +# [ ! -f bar ] = vrai si bar n'existe pas + +# à n'exécuter que si foo existe ET que bar n'existe pas. +[ -f foo -a ! -f bar ] && + mv foo bar ++ +
Autres formulations possibles : +
+ ++test -f foo -a ! -f bar +[ -f foo ] -a [ ! -f bar ] +[[ -f foo && ! -f bar ]] ++ +
Si vous débutez, vous n'êtes pas tenu de retenir par +cœur toutes les combinaisons possibles. Sachez simplement les +reconnaître si vous les lisez quelque part ; et pour vos +propres scripts, vous il vous suffit de savoir bien manipuler la syntaxe +qui vous paraît la plus lisible.
+ + +-o
»Pour réaliser la condition de l'opérateur « ou », il suffit +qu'une seule des conditions qu'il rassemble soit vraie :
+ +Exemple :
+ ++if [[ "$fichier" == "fichier_interdit" -o ! -f "$fichier" ]] + then echo "Je ne veux pas lire $fichier ou bien il n'existe pas." +fi ++ +
$fichier
vaut
+"fichier_interdit"
, il n'est pas lu ;$fichier
n'existe pas, il n'est pas lu ;$fichier
vaut
+"fichier_interdit"
et qu'en plus il n'existe pas,
+il n'est pas lu ;$fichier
ne vaut pas
+"fichier_interdit"
et qu'il existe bien, il est
+lu.+Le shell permet d'opérer des calculs arithmétiques, même s'il est moins +puissant que d'autres langages (Perl, Scheme, C, etc.) pour cela. +
+ ++Les opérateurs sont les suivants : +
+ +-eq
(equal) : « égal à » (signe
+« = ») ;-ne
(not equal) : « différent
+de » (signe « ≠ ») ;-gt
(greater than) : « strictement
+supérieur à » (signe « > ») ;-lt
(lesser than) : « strictement
+inférieur à » (signe « < ») ;-ge
(greater or equal) : « supérieur
+ou égal à » (signe « ≥ ») ;-le
(lesser or equal) : « inférieur
+ou égal à » (signe « ≤ ») ;+On utilise ces opérateurs entre deux nombres ou variables +numériques. Par exemple : +
+ ++#!/bin/sh +if test 2 -lt 3 +then echo "C'est normal." +fi + +if test 2 -gt 3 +then echo "C'est absurde." +fi + +petit=2 +grand=3 + +if test $petit -ne 3 +then echo "C'est normal." +fi + +if test 2 -eq $grand +then echo "C'est absurde." +fi ++ +
+Si vous exécutez ce programme, vous obtenez : +
+ ++C'est normal. +C'est normal. ++ + +
+Une grande partie de la puissance du shell se déploie dans sa faculté de +manipuler des fichiers. +
+ ++Les principaux opérateurs disponibles sont : +
+ +-e
(exists) : vérifie l'existence d'un
+fichier ;-f
(file) : vérifie l'existence d'un
+fichier, et le fait qu'il s'agisse bien d'un fichier au sens
+strict ;-d
(directory) : vérifie l'existence d'un
+répertoire ;-L
(link) : vérifie si le fichier est un
+lien symbolique ;-s
(size) : vérifie qu'un fichier n'est
+pas vide ;-r
(readable) : vérifie si un fichier peut
+être lu ;-w
(writable) : vérifie si un fichier peut
+être écrit ou modifié ;-x
(writable) : vérifie si un fichier peut
+être exécuté ;-nt
(newer than) : vérifie si un fichier
+est plus récent qu'un autre ;-ot
(older than) : vérifie si un fichier
+est plus ancien qu'un autre.Exemple :
+ ++#!/bin/sh + +if test -e ~/.emacs + then echo "~/.emacs existe." + else echo "~/.emacs n'existe pas." +fi + +if test -d ~/.emacs + then echo "~/.emacs est un répertoire." + else echo "~/.emacs n'est pas un répertoire." +fi + +if test -f ~/.emacs + then echo "~/.emacs est un fichier." + else echo "~/.emacs n'est pas un fichier." +fi + +if test ~/.vimrc -nt ~/.emacs + then "~/.vimrc est plus récent que ~/.emacs." +fi ++ + + + + + diff --git a/src/unix/shell/variable.tml b/src/unix/shell/variable.tml new file mode 100644 index 0000000..1464828 --- /dev/null +++ b/src/unix/shell/variable.tml @@ -0,0 +1,225 @@ + + + + +
+Une variable est l'assignation d'une étiquette à un contenu ; ce +contenu, comme l'indique le mot « variable », peut changer +autant que l'on veut ; l'assignation de l'étiquette à ce contenu, +elle, est fixe, aussi longtemps que l'on ne dissout pas la +variable.
+ ++La notion de variable est commune à presque tous les langages +informatiques, et en particulier aux langages de programmation. Ceux qui +ont déjà manipulé des langages sont donc familiers avec cette +notion. Pour les autres, un petit exemple les aidera peut-être à la +saisir. +
+ ++Mettons que vous programmiez un hachoir, comme nous le proposions sur la +page consacrée au shell en ligne de +commande. Un hachoir est un instrument dangereux, à ne pas mettre +à la portée des enfants. Robert le jardinier, qui a conçu ce +hachoir, veut être le seul à pouvoir l'utiliser, sans quoi le +petit Émile pourrait se blesser en y mettant le doigt.
+ + Ainsi, il va dire au programme hachoir
de vérifier la
+variable USER
, qui contient le nom de l'utilisateur. Si le
+nom « Robert » est associé à l'étiquette USER
,
+alors le programme se met en route ; sinon, il dit à l'utilisateur
+de ne pas utiliser cet instrument sans la présence d'un adulte, et de
+bien regarder des deux côtés avant de traverser la rue.
+
+Certaines variables sont prédéfinies, par exemple
+USER
; mais on peut en créer autant que l'on veut. Par
+exemple, si Robert veut autoriser d'autres adultes que lui à utiliser
+son hachoir, il peut faire que le programme demande à l'utilisateur quel
+âge il a ; la réponse est enregistrée dans la variable
+age
; ensuite, le programme va examiner le contenu de
+cette variable. Si age >= 18
, alors le hachoir peut se
+mettre en route ; mais si age < 18
, le hachoir
+refuse de se mettre en marche.
+
+En shell, pour désigner le contenu d'une variable, on écrit le nom de la
+variable précédé du signe dollar. Exemple : echo
+$HOME
affiche le nom du répertoire personnel de l'utilisateur,
+mémorisé par la variable HOME
.
+
+Par convention, les variables relevant du système, comme
+HOME
, USER
et beaucoup d'autres, sont en
+majuscules, tandis que l'on recommande d'écrire en minuscules les
+variables que l'on se crée soi-même. On évite ainsi la désagréable
+surprise de remplacer une variable importante et de casser tout ou
+partie de son système.
+
+Les noms de variables sont en effet sensibles à la casse :
+USER
, user
, User
,
+uSeR
etc. sont des variables différentes.
+
+La façon de donner une valeur à une variable varie selon le type de shell +utilisé : +
+ +
+C-Shell (csh
, tcsh
,
+lcsh
) : on utilise la commande setenv
:
+
+chaland ~ $ setenv foo bar +chaland ~ $ echo $foo +bar+ +
+Famille des Bourne Shell (sh
, bash
,
+zsh
, ksh
) : on utilise export
:
+
+chaland ~ $ foo=bar +chaland ~ $ export foo +chaland ~ $ echo $foo +bar+ +
+Les valeurs des variables sont accessibles aux commandes lancées par le
+shell. L'ensemble de ces valeurs constitue l'environnement.
+On peut aussi supprimer une variable de l'environnement avec
+unsetenv
(C-Shell) ou unset
(Bourne Shell).
+
+Quelques variables d'environnement: +
+ +DISPLAY
: L'écran sur lequel les programmes X
+travaillent. Cette variable est souvent de la forme :
+machine.somehost.somewhere:0.0
Si cette variable est vide,
+c'est qu'il n'y a pas d'affichage graphique possible. PRINTER
: pour les commandes d'impression. Contient le
+nom de l'imprimante sur laquelle il faut envoyer vos fichiers. EDITOR
: utilisée par mutt
,
+forum
, et beaucoup d'autres commandes. Contient le nom de
+votre éditeur de textes préféré. VISUAL
: la même chose qu'EDITOR
. SHELL
: contient le nom de votre shell. HOME
: contient le nom de votre répertoire personnel.
+USER
: contient votre nom de login. LOGNAME
: la même chose que USER
. PATH
: contient une liste de répertoires dans lesquels
+le shell va chercher les commandes.
+
+Exercice : Assurez-vous que /usr/local/games/bin
se trouve
+bien dans votre PATH.
+
+Dans les scripts, on peut utiliser des variables définies à l'extérieur
+(avec setenv
ou export
), mais aussi définir ses
+variables locales propres au script. On donne une valeur à une variable avec
+une commande de la forme
+nom-de-variable=valeur
. Les variables sont
+utilisées pour stocker des informations.
+
+On a aussi des variables spéciales, initialisées automatiquement au +début du script: +
+ +$0 |
+Le nom de la commande (i.e. : du script) | +
$1 , $2 , etc. |
+Le premier, deuxième, etc, argument passés au script. | +
$* |
+La liste de tous les arguments passés au script. | +
$# |
+Le nombre d'arguments passés au script. | +
$? |
+Le code de retour de la dernière commande lancée. | +
$! |
+Le numéro de process de la dernière commande lancée en tâche de fond. | +
$$ |
+Le numéro de process du shell lui-même. | +
La page que vous avez demandée n'existe pas.
+ +Pas de stages planifiés pour l'instant.
+ ++Ces pages présentent les machines Unix disponibles dans les salles +élèves libre-service (salle S, salle Infi, salle du 46, Jourdan, +Montrouge, salle T). Vous avez sans doute l'habitude d'utiliser des +Mac ou des PC sous Windows; nous allons ici vous présenter les machines +Unix (PC sous Ubuntu) que vous utiliserez tout au long de votre scolarité. +
++Pour tout savoir sur notre site, ses conventions graphiques, un plan, par ici ! +
++Si vous êtes déjà un peu rodé et que vous voulez mieux exploiter les +ressources informatiques de l'ENS, voici quelques pages qui vous +aideront : +
+clipper
, par exemple,
+et transférer des fichiers.
++Et voici quelques guides de survie. +
+
+ Les pages HTML du site web des tuteurs sont produites à partir de
+ fichiers dans un format XML maison appelé TML. Tout le contenu du site
+ est sous git, et l'arborescence HTML est
+ mise à jour automatiquement à chaque push
(de la branche
+ qui va bien) dans ~tuteurs/www.git
.
+
+ Cette page décrit les étapes pour effectuer un changement sur le site, + et donne au passage, sans explications, le strict minimum de commandes + git nécessaires. Il est cependant recommandé d'aller en apprendre un + peu plus sur la page consacrée à git ou + dans la doc de ce dernier. +
+
+ Le source TML du site web est géré par git, un système de contrôle de versions.
+ Pour y apporter des changements, on modifie sa propre copie du
+ source TML obtenue en clonant le dépôt git
+ ~tuteurs/www.git
, puis on envoie les changements au dépôt
+ central. Le plus simple est de travailler sur
+ son compte clipper
, mais il est possible de le faire
+ depuis une machine personnelle, voire avec quelques précautions depuis
+ le compte tuteurs
.
+
+ On ne modifie jamais directement les fichiers du répertoire
+ ~tuteurs/www
.
+
+ La meilleure façon est de commencer par mettre une clé ssh + chez tuteurs (si on n'en a pas déjà) puis de faire (de chez soi ou + d'une machine de l'école) +
+$ git clone tuteurs@sas.eleves:www.git
+
+ On peut aussi (ce n'est guère utile qu'aux gens qui n'ont plus de
+ compte clipper) cloner le dépôt git sur le compte tuteurs
+ lui-même, par exemple dans tmp/moi
.
+
+ Dans ce cas, il est important de veiller avant tout commit à régler + les nom et adresse utilisés pour identifier l'auteur du + commit : +
+$ export GIT_AUTHOR_NAME="Tartempion" +$ export GIT_AUTHOR_EMAIL="tartempion@phare"+
+ Quand on travaille depuis son propre compte, les valeurs par défaut + font généralement l'affaire, sinon, on peut les changer une fois pour + toutes via +
+$ git config --global user.name "Tartempion" +$ git config --global user.email "tartempion@clipper"+
+ Plusieurs programmes utiles aux tuteurs — notamment, mais pas
+ uniquement, pour travailler sur le site web — se trouvent dans
+ ~tuteurs/bin
. C'est donc une bonne idée de l'ajouter à
+ son $PATH
+
+ Pour ce faire, éditez le fichier .profile
à la racine de
+ votre compte, trouvez le passage qui parle du PATH et modifiez la fin.
+ Attention, ne pas oublier de mettre :\ (non suivi d'espace !) à la fin
+ de l'avant-dernière ligne, et de tester (en vous logguant une deuxième
+ fois) avant de se délogguer.
+
+PATH=\ +$HOME/bin/$SYSTEMNAME:\ +$HOME/bin:\ +$UTILPATH:\ +$MAINPATH:\ +$GAMESPATH:\ +$MISCPATH:\ +/users/staffs/tuteurs/bin ++
+ (Aucun de ces programmes n'est indispensable pour modifier le site
+ web. Pour travailler depuis chez soi, on a le choix de s'en passer ou
+ de les récupérer avec git clone tuteurs@sas.eleves:share/tml
+ et y faire les adaptations nécessaires : il y a des chemins à adapter
+ dans tml/lib/catalog.xml
, ainsi que $BASE
+ dans tmlcheck
, build
et
+ rebuild
.)
+
+ Supposons que vous souhaitiez créer ou modifier la page
+ unix/accents.html
. Pour cela, il va falloir écrire un
+ fichier unix/accents.tml
.
+
$ git pull
+ unix/accents.html
n'existe pas déjà, créez-le :
+$ cd unix +$ tmltemplate accents.tml "titre court" "titre long" +$ emacs accents.tml+ Le titre court est celui qui apparaîtra dans l'arborescence du + site à gauche des pages (choississez-le concis, car l'arbre de + navigation est étroit), le titre long apparaîtra en + haut de la page. Pour modifier un fichier existant, idem sauf le +
tmltemplate
.
+ xsltproc
qui, entre autres
+ choses, ajoute automatiquement à la page un plan du site sur gauche
+ et un sommaire en début de page.
+ La moulinette TML et la feuille de style tuteurs.css
+ permettent de faire facilement des encadrés, de jolis prompts,
+ etc. : voyez les pages existantes pour des exemples, et la feuille
+ de style elle-même (voire la moulinette) pour tous les détails. Les
+ liens internes au site des tuteurs ne doivent pas mentionner
+ l'adresse de la racine du site. Il faut soit faire des liens
+ relatifs, soit faire référence à la racine en utilisant l'entité
+ &url.tututeurs;
, ce qui donne des liens de la
+ forme :
+ <a href="&url.tuteurs;docs/hublot/typo.html">+ Il faut mettre à la fin du fichier des lignes du type: +
<div class="metainformation"> +Auteur : Comptes tuteurs. +<date value="from git" />. +</div>+ Pour le reste, c'est du XHTML 1.0 Strict. Vous pouvez vous aider du + tutoriel XHTML des + tuteurs. Rappelons juste que toutes les balises doivent être + refermées, que leurs noms s'écrivent en minuscules, et qu'il est de + mauvais goût d'aller à la ligne sauvagement avec +
<br>
.
+ $ tmlcheck accents.tml
+ et la convertir en html en faisant
+ $ build accents.tml
+ Si vous avez fait beaucoup de modifications, il peut être utile de
+ lancer
+ $ rebuild .
+ à la racine de votre copie de travail.
+ $ git add accents.tml +$ git commit+ Tâchez de mettre un commentaire explicite. +
$ make install
+ (essentiellement équivalent à git push
).
+ À l'autre bout, les fichiers tml modifiés seront validés par
+ tmlcheck
. Si tout va bien, le site web sera mis à jour
+ automatiquement. Sinon, votre commit sera rejetté : faites les
+ corrections nécessaires puis réessayez.
+ + Vous pouvez décider de ne pas faire apparaître une page dans l'arbre + de navigation qui se trouve sur la gauche des pages. +
+Pour cela, le script de génération des pages regarde dans chaque
+répertoire si un fichier nolinks
s'y trouve. Ce fichier doit
+contenir une liste séparée par des espaces ou des retours à la ligne de
+choses de la forme « fichier
» ou encore
+« répertoire/
». Cela désactivera les liens éventuels vers
+la page fichier.html
ou vers l'index de
+répertoire
.
Par exemple, pour ne pas faire apparaître cette page de documentation
+interne aux tuteurs (et quelques autres) dans l'index, la racine du
+CVS
contient :
+
sas ~tuteurs/www $ cat nolinks
+doc-interne
+aide
+404
+actualite
+plan_site
+
+ Pour supprimer un fichier nolinks
, procédez en
+ plusieurs étapes :
rebuild
(ou make
+install
) ;nolinks
.
+ La date et l'auteur de la dernière modification de chaque page sont
+ lus dans l'historique du dépôt git. Il est possible d'empêcher qu'un
+ commit donné soit pris en compte pour ce calcul. (C'est utile, par
+ exemple, si l'on a fait des modifications automatisées qui affectent
+ plein de pages sans assurer que leur contenu soit à jour.) Il suffit
+ pour cela de placer dans le message de commit la ligne magique
+ Last-change: ignore this commit
. On peut aussi ignorer un
+ commit après coup en ajoutant son identifiant (SHA) au fichier
+ .hidden_commits
.
+
Voir le fichier .mailmap
.
www
!
+
+ Lors de la mise à jour du site, il y a un mécanisme qui essaie de
+ faire une copie de sauvegarde des modifications parasites avant de les
+ écraser. Lancer git --git-dir=../www.git stash list
+ depuis ~tuteurs/www
et lire la doc de git
+ stash
+
+ Quelques informations sur les scripts qui gèrent tout ça sont ou + devraient apparaître peu à peu dans les divers fichiers README du + compte tuteurs. +
+ ++Il y a à droite de la barre d'espace de votre clavier une touche intitulée +« Compose » (touche Menu sur les claviers Azerty). Pour taper un accent, par +exemple un e accent aigu, appuyez successivement sur Compose, sur l'accent que +vous voulez mettre, puis sur la lettre que vous souhaitez accentuer. Il n'est +pas nécessaire de maintenir Compose enfoncée. Les accents sont : l'apostrophe +pour l'accent aigu, l'apostrophe inverse (en haut à gauche du clavier) pour +l'accent grave, le guillement double pour le tréma ; l'accent circonflexe, +lui, est accessible via Shilt+6. Ainsi par exemple : +
++Compose " e donne ë +Compose ` A donne À +Compose ^ u donne û ++
+Vous le voyez, il est ainsi possible de mettre les accents sur les capitales. +Rappelons qu'en français les capitales prennent les accents ; ceci permet +d'éviter « SALLE DES CONGRES » et autres « LARDONS SALES ». +
++Il est également possible d'utiliser Compose pour taper d'autres caractères +spéciaux. De façon générale, la combinaison évidente marche : ainsi +
++Compose , c donne ç +Compose < < donne « ++
+En cas de question, n'hésitez pas à nous contacter par mail :
+tuteurs@clipper
,
+
+Les tuteurs informatique +
+ +L'impression est hélas une des manœuvres les plus compliquées +sur les stations Unix. En fait, tout dépend du type de document que +vous voulez imprimer.
+%
, puis
+choisissez l'imprimante) ou Mozilla (menu Fichier).lpr
: par exemple, si votre fichier s'appelle
+rapport.ps
, tapez dans
+un terminal la commande suivante : lpr rapport.ps
lpr -Zdouble rapport.ps
dvips rapport.dvi -o+
+la rédac', pour les tuteurs informatique +
+ ++Ça a l'air bête, mais la chose la plus utile à savoir dans une salle +info, c'est comment trouver de l'aide en cas de pépin. Car les pépins, +ça arrive, ne serait-ce qu'un câble débranché ou un problème +d'impression... +
++Les tuteurs sont là pour vous aider ; il s'agit donc de dénicher l'un +d'entre eux. Il existe une commande qui vous permet de savoir qui sont vos +voisins en salle informatique, c'est la commande qui. Son usage est +simple : vous tapez simplement qui, suivi d'un espace, suivi du nom +d'une salle informatique. Les noms sont : +
++ s pour la salle S + t pour la salle T + i pour l'infirmatique + 46 pour la salle du 46 + j pour la salle de Jourdan + m pour la salle de Montrouge ++
+Dès que vous appuyez sur entrée, magie, apparaît un plan de la salle, +agrémenté de quelques noms en bleu. (Là, vous avez déjà appris en +bonus : « comment trouver le nom de la jolie brune/du beau blond assis +à côté de moi »). Parmi ces noms, si vous avez de la chance, certains +pouvez aller leur poser votre question. +
++Si par malheur il n'y a pas de tuteur dans votre salle, vous pouvez +toujours : +
+ Enfin, avant d'en venir à la troisième solution, essayez plutôt de
+contacter les tuteurs par mail. L'adresse est simplement tuteurs@clipper
, et
+vous êtes à peu près sûr de recevoir une réponse assez vite.
+Jérôme, pour la rédac et les tuteurs +
++La salle T est la salle des informatheux, à côté de la salle S. Mais les +tuteurs qui y vivent sont gentils quand même. +
+ +
+À votre entrée à l'École, on vous a attribué une magnifique adresse de la
+forme prenom.nom@ens.fr
, totalement équivalente à
+login@clipper.ens.fr
.
+Beaucoup d'entre vous possédent déjà une adresse
+trululu23@hotmail.com
.
+Alors, pourquoi changer ?
+
+Alors, comment lire son mail ? +
++Si vous êtes à l'École, le programme par défaut s'appele pine : pour le +lancer, vous pouvez cliquer sur l'icône boîte aux lettres. Les commandes sont +rappelées en bas de l'écran, mais n'hésitez pas à demander de l'aide. +
+
+Si vous êtes loin, vous pouvez soit vous connecter à clipper par un protocole
+sécurisé comme ssh, soit le lire par le Webmail : il s'agit d'une interface
+comparable à celle de yahoo, accessible à l'adresse
+www.ens.fr/mail/clipper
.
+
Les tuteurs informatique
+ +
+Il est très utile de classer son courrier électronique, pour les mêmes raisons
+que pour le courrier traditionnel : les risques de perte de courriers
+importants sont moindres, et on retrouve ceux-ci plus rapidement.
+Ceci est possible avec tous les logiciels de courrier électronique sérieux,
+mais limitons-nous au cas du logiciel pine
.
+
Vos courriers électroniques sont sauvegardés d'une part dans votre
+répertoire Mail
et d'autre part dans le fichier
+/var/mail/login
. Ce dernier fichier est votre boîte de
+réception, c'est le «dossier» que vous consultez probablement le plus
+souvent. Au départ, vous disposez aussi du dossier sent
qui
+contient les mails que vous avez envoyés. On peut afficher la liste des
+dossiers existants à partir de la commande Folder list (touche
+L
). On entre dans un dossier avec la touche
+>
ou avec Enter
et on en ressort avec
+<
.
Quand on est positionné sur un message ou qu'on en lit un, on peut le
+déplacer dans un autre dossier en utilisant la touche S
+(comme Save) puis en indiquant le dossier en question (si on ne
+se souvient plus de tous les noms de dossiers, on peut alors afficher la
+liste en tapant Ctrl-T
). Par ailleurs, on peut aussi effacer
+un message en appuyant sur la touche D
.
Notons que tous ces dossiers sont stockés dans le sous-répertoire
+Mail
de votre compte personnel (sur clipper
+a priori) à l'exception de votre boîte de réception qui se
+trouve sur un disque dur (au doux nom de /var/mail
) qui est
+partagé par tous les utilisateurs, ainsi il est importantissime de
+réduire autant que faire se peut la taille de vos boîtes de réceptions,
+puisque si le disque dur qui les contient venait à être plein
+(actuellement, il est plein à 85%), les conséquences pourraient être très
+désagréables : plus aucun élève ne pourrait recevoir de courrier
+électronique, de même qu'un agent de la Poste aurait des difficultés à
+déposer une lettre dans une boîte pleine !
+
Les tuteurs informatique
+ ++D'abord, des préliminaires théoriques, pénibles mais utiles. Il +existe plusieurs types de fichiers sur les machines Unix : +
+latex
) ;
+ Ceci donne une structure d'arborescence aux fichiers, ce qui permet
+de s'y retrouver plus facilement. Ainsi, tous vos fichiers sur les
+machines Unix de l'École sont rassemblés à l'intérieur d'un même
+répertoire, qui est votre compte personnel. Vous n'aurez probablement pas
+besoin de le savoir, mais le nom complet de ce répertoire est de la forme
+/users/02/pataphysique/vian
; vous pourrez aussi le désigner
+plus simplement par un tilde (~
) dans lescommandes
+ci-dessous. La barre oblique /
(et non \
)
+marque les sous-répertoires : ans l'exemple ci-dessus, vian
+est un sous-répertoire de pataphysique
, lui-même un
+sous-répertoire de 02
.
Maintenant, la pratique. Le moyen le plus simple de manipuler les +fichiers est de cliquer sur le bouton « Fichiers » en haut à gauche de +votre écran ; il lance unprogramme qui vous permet de tout manipuler à la +souris. Ce programme est facile à utiliser, on n'en parlera pas ici. Il +est également possible de manipuler vos fichiers en tapant des commandes +dans un terminal. Pourquoi, me direz-vous ? Parce que cette méthode +marche aussi quand vous vous connectez depuis chez vous, ou depuis le +labo dans lequel vous êtes en stage, et que vous ne disposez donc pas du +bouton « Fichiers ». La machine garde en permanence un répertoire qui est +le « répertoire courant », c'est-à-dire celui dans lequel sont +normalement effectuées les opérations sur les fichiers. Ce répertoire est +affiché avant chaque commande que vous tapez : ainsi,
+
+ clipper ~ $
+
+ signifie que vous êtes dans votre
+répertoire personnel ~
, alors que
+ clipper ~/prive $
+
+ signifie que vous êtes dans le
+sous-répertoire prive de votre répertoire personnel. Enfin, deux points
+(..
) désignent l'opération « remonter d'un niveau dans
+l'arborescence ». Ainsi, si votre répertoire courant est
+~/prive
, alors ../rapport.tex
désigne le
+fichier rapport.tex
de votre répertoire personnel ; dans ce
+cas, c'est donc un synonyme de ~/rapport.tex
.
+Les commandes décrites ci-dessous,comme beaucoup de commandes Unix, +prennent plusieurs paramètres qui leur disent sur quels fichiers +travailler. Pour entrer la commande, entrez le nom de la commande, puis +les paramètres, le tout séparé par des espaces (pensez : verbe,complément +d'objet).
++cp maitrise.tex dea.tex ++Exception : si le deuxième paramètre est le nom d'un répertoire qui +existe déjà, une copie du fichier sera créée dans ce répertoire, avec le +même nom de fichier quel'original. Par exemple, si dea est un +sous-répertoire de votre répertoire personnel, +
cp maitrise/intro.tex dea+ne clonera que la première partie de votre travail. +
mv
permet aussi de renommer un fichier. Par exemple,
+mv houba hoprenomme le fichier houba. +
+rm these.tex. ++
+Si cet exposé (quelque peu succinct) vous laisse sur votre faim,
+n'hésitez pas à poser vos questions par mail à
+tuteurs@clipper
, ou par
+agression verbale en salle S.
+
Jérôme, pour les tuteurs informatique
+ ++Vous pouvez accéder à votre compte depuis votre ordinateur. Cela peut +être utile pour lire son courrier, par exemple. Beaucoup d'entre vous +font cela avec telnet, mais ce protocole n'est pas sécurisé, et votre mot +de passe est accessible à tous ceux qui « écoutent » le réseau, de plus +comme vous avez dû le constater, l'affichage est laid (les couleurs et +les accents s'affichent mal). Pour sécuriser votre connection il suffit +d'utiliser un logiciel gratuit et téléchargeable facilement sur le net : +PuTTY sous windows +(http://www.chiark.greenend.org.uk/~sgtatham/putty/) et MacSSH sur mac +(http://www.macssh.com/).
+ Une fois le logiciel téléchargé il suffit de le lancer et de préciser
+comme hote « clipper.ens.fr
». Attention, PuTTY utilise par
+défaut le protocole telnet
,
+pour avoir une connection sécurisée, il faut donc sélectionner « SSH »
+dans la liste en dessous de l'hote. Le logiciel vous donne donc accès à
+votre compte à l'École. Une fois que vous avez fini, ne coupez pas le
+logiciel en cliquant sur la croix en haut à droite de la fenêtre : il
+faut dire à clipper que vous avez fini, sinon il continue à attendre des
+instructions de votre part. Il suffit donc de tapper exit
et
+le logiciel se coupe automatiquement :
clipper ~ $ exit
+
+ Ajoutons que préférer une connexion sécurisée ne relève pas (forcément) de la +paranoïa : les actes de piratages sont nombreux ; un outil d'écoute réseau +avait par exemple été installé clandestinement l'année dernière à la sortie du +réseau de Montrouge, pendant plusieurs mois. Les pirates avaient eu la +connaissance d'une centaine de mots de passe, et auraient très bien pu les +utiliser pour s'attaquer au réseau de l'École.
+Les tuteurs informatique
+ +Nombre d'entre vous, devant un problème informatique, ne savent pas à qui +s'adresser. Voici donc un petit carnet d'adresses qui vous aidera à contacter +directement le bon service. Notons que si vous envoyer un courrier à la +mauvaise adresse, cela n'est pas très grave, il sera généralement redirigé +vers les personnes concernées ; mais cela ajoute des délais.
+Dans tous les cas, il est préférable d'être précis. +« Je n'arrive pas à imprimer ! » n'aide guère -- en effet, cela peut +recouvrir une quantité impressionnante de problèmes possibles (par +exemple : quelqu'un a débranché l'imprimante pour brancher son +portable). Il est bien plus efficace de dire : « J'ai voulu imprimer +avec StarOffice vers l'imprimante de la salle S, mais celle-ci avait tous +ses voyants qui clignotaient et indiquait 'Bourrage papier' ». Vous +remarquez au passage qu'une observation attentive du phénomène met déjà +sur la piste et suggère une réparation (ici, ouvrir l'imprimante et +sortir le papier coincé -- à réserver aux presonnes adroites et +soigneuses).
+Ajoutons que si, par exemple, le réseau des salles machine de Jourdan ou +Montrouge est en panne, il est inutile d'envoyer un courrier électronique pour +le signaler ; celui-ci, devant passer par le dit réseau pour arriver à son +destinataire, ne parviendra pas. Aux heures ouvrables, appeler le SPI au +téléphone (Catherine Le Bihan est sur Ulm au 01 44 32 37 96). Si vous voyez +quelque chose de vraiment inquiétant matériellement (fuite d'eau, +court-circuits), il faut appeler la loge.
+Enfin, terminons par le fait que tuteurs n'est pas forcément à même de +répondre à des questions très techniques. Si vous avez des questions +comme « je veux taper en LaTeX un commentaire bilingue d'un +document théologique en moldo-valaque occidental » ou « je +cherche à faire des fits non linéaires », il est probable +que le forum des élèves (ens.forum.informatique) est un meilleur +endroit.
+Les tuteurs informatique
+ ++Pour transférer des fichiers entre un ordinateur d'une salle informatique de +École et un autre, il est très commode d'utiliser le réseau. Cependant, il est +également possible d'utiliser les lecteurs de disquettes pour transférer des +fichiers. +
+ Pour cela, insérez une disquette dans le lecteur et utilisez les
+commandes suivantes qui rappelleront des souvenirs aux utilisateurs de
+MS-DOS (à la différence près qu'il faut rajouter un « m
»
+au début de la commande) :
mdir
pour afficher la liste des fichiers présents sur la
+disquette ;mcopy rapport.tex A:
pour copier par exemple le fichier
+rapport.tex
du répertoire courant sur la disquette ;mcopy A:these.tex .
pour copier le fichier
+these.tex
présent sur la disquette dans le répertoire
+courant ;mcd A:rep
pour se placer dans le répertoire
+rep
sur la disquette. Vous pouvez aussi utiliser la commande mformat A:
pour
+formater la disquette, mren source but
pour renommer le
+fichier source
en but
ou encore
+mmd A:rep
pour créer un répertoire rep
sur la
+disquette.
Notez que vous pouvez effectuer ces opérations sur les stations Sun ainsi que +sur les PC Dell (noirs). Nous vous recommandons même d'utiliser ces derniers +(en effet, les lecteurs de disquettes des stations Sun n'ont plus leur +jeunesse originelle).
+Les tuteurs informatique
+ ++Voici un certain nombre de choses à faire et ne pas faire en salle +informatique : +
+/var/mail
qui contient ces courriers a atteint un taux
+d'occupation de 99%. Si jamais le vase débordait, nul ne sait précisément
+ce qui pourrait arriver (perte de mails...), donc essayez de classer vos
+courriers dès que possible (surtout s'ils contiennent autre chose que du
+texte brut). Nous rappelons que pour déplacer un mail dans un autre
+dossier, dans pine, il suffit d'appuyer sur S et d'entrer le nom d'un
+dossier (ou de faire ^T
pour sélectionner le dossier avec
+les flèches) ;Les tuteurs informatique
+ +L'année avançant, il est de plus en plus probable que vous ayez besoin de +rédiger des rapports ou des notes d'exposés... Les tuteurs informatique ont +pensé à vous : nous allons organiser un week-end de stages sur LaTeX dans +cette optique entre le 24 et le 26 janvier 2003.
+Pour que nous préparions les séances le plus efficacement possible, nous +aimerions recueillir toutes vos suggestions. Vous pouvez utiliser le +formulaire Web (en cliquant sur le bouton vert en forme de point +d'interrogation si vous avez la config' conscrits) pour nous en faire part et +préciser votre niveau (débutant, confirmé, ...). Vous pouvez également nous +contacter par courrier électronique.
+Les tuteurs informatique
+ ++Sur Internet, il existe un certain nombre de règles élémentaires de +courtoisie faisant partie de ce que l'on appelle la Netiquette. Nous allons +voir quelques unes des règles s'appliquant au courrier électronique. +
++Tout d'abord, quand on rédige un courrier électronique, il est indispensable +de mettre un titre et de bien le choisir, car cela permet au destinataire +d'avoir une idée assez précise de ce dont il est question et de retrouver +plus facilement le message. +
+
+Pour ce qui est du corps du texte, faites très attention quand vous citez le
+message auquel vous répondez : pour ne pas augmenter la taille du votre
+inutilement, ne citez que les passages auxquels vous répondez effectivement ;
+souvenez-vous que vous pouvez effacer les autres lignes en utilisant
+^K
si
+vous utilisez l'éditeur de pine
. De plus, il est extrêmement important de
+toujours mettre la citation avant la réponse.
+
Enfin, faites attention au ton que vous voudriez employer quand vous écrivez +des messages, car un lecteur inattentif pourrait mal l'interprêter et vous en +vouloir après. En cas de doute, vous pouvez rajouter en fin de phrase des +smileys avec parcimonie pour le préciser : +
+vous êtes content | +:-) | +
vous êtes mécontent | +:-( | +
vous faites un clin d'oeil | +;-) | +
vous tirez la langue | +:-p | +
Pour plus d'informations, http://www.eleves.ens.fr/tuteurs/docs/hublot/hublot02.html#netiquette. +
+Les tuteurs informatique
+ ++ La vénérable Armoire de la salle S s'est récemment enrichie de +plusieurs livres d'introduction à divers domaines de l'informatique, en +français : manuel de LaTeX, Unix pour les nuls (et les moins nuls), et +quelques autres. La liste en est disponible sur la porte de l'armoire +elle-même. Cette dernière étant fermée à clé, vous devez vous la faire +ouvrir par un porteur de clé, dont les noms sont également affichés +sur l'armoire.
++ Cette précaution fasciste a pour but de conserver les livres le plus +longtemps possible à la salle S, mais les porteurs de clés étant +nombreux et (surtout) glauques, vous en trouverez forcément un ou deux à +portée de main de l'Armoire, ou presque. Vous êtes évidemment encouragés +à les harceler et à consulter les livres de l'Armoire à votre guise, +mais ce, sans les sortir de la salle S, pour les mêmes raisons +évidentes.
+Vous trouverez, par ailleurs, dans la même Armoire, plusieurs CD : +l'un comporte une installation de Linux, une autre une distribution très +complète de LaTeX ; une troisième, enfin, contient divers logiciels libres +pour Windows.
+Les tuteurs informatique
+ +Il faut entrer l'incantation magique « op mount
+cdrom
». Elle a pour effet de « monter » le
+système de fichier contenu sur le CD dans le répertoire
+« /cdrom
». Cela veut dire que le contenu du
+CD apparaît désormais dans le répertoire
+« /cdrom
». Par exemple, si le CD contient un
+fichier nommé « bouh
», vous pourrez accéder à
+ce fichier sous le nom « /cdrom/bouh
».
A priori, vous voudrez commencer par voir ce qu'il y a sur le CD. Le
+plus simple pour cela est de vous placer dans le répertoire
+« /cdrom
» à l'aide de la commande
+« cd /cdrom
». Vous pouvez alors faire un
+« ls
» pour voir la liste des fichiers
+disponibles. Enfin quand vous avez trouvé les fichiers qui vous
+intéressent, vous pouvez lancer dessus la commande qui vous intéresse.
+Par exemple, pour rapatrier « bouh
» dans
+votre répertoire personnel, vous pouvez taper « cp bouh
+~
».
Une fois que vous aurez terminé, vous allez certainement vouloir
+récupérer votre CD. Si vous appuyez tout de suite sur le bouton, le
+système ne vous laissera pas faire, car le CD est toujours monté. Il faut
+donc commencer par le démonter, ce qui se fait avec la commande
+« op umount cdrom
».
Sur les stations Sun, il faut brancher vos écouteurs sur la prise
+adéquate du lecteur de CD, puis lancer le programme
+« workman
», qui ouvre une fenêtre dans
+laquelle vous pouvez cliquer sur des boutons... Pour les PCs sous
+freebsd, en revanche, il semblerait que l'on ne puisse pas lire des CDs
+audios.
+
Les tuteurs informatique
+ +Un virus informatique, c'est un machin qui va sur les ordinateurs, fait des +dégâts, et fait régulièrement la une des journaux. Mais à part ça, qu'est-ce +que c'est, comment ça peut agir ?
+Un ordinateur n'est pas un être vivant, c'est une machine, qui exécute des +instructions. Si un ordinateur fait quelque chose, c'est que celui qui l'a +programmé lui a dit de le faire, il n'y a pas d'autre possibilité. Pour +agir, les virus utilisent des erreurs des programmeurs ou des utilisateurs. +L'exemple le plus simple est celui d'un courrier électronique, qui disait en +substance « attention, il y a un virus qui circule, si vous avez tel +fichier (au nom barbare), c'est que vous êtes infecté, supprimez-le et +prévenez tous vos amis » ; le fichier en question était un fichier +nécessaire à windows, qui est le système d'exploitation le plus fréquent sur +les ordinateurs personnels. Évidemment, beaucoup de gens se sont laissés +prendre.
+Bien sûr, tous les virus ne sont pas aussi simples à comprendre : la +plupart utilisent des erreurs dans les programmes que les gens utilisent, +qui les conduisent à exécuter des instructions qu'ils ne devraient pas. Les +logiciels de microsoft, word et excel, et surtout le logiciel de courrier +outlook, sont spécialistes du fait : ils sont amenés à manipuler des +documents provenant de sources peu fiables (courriers électroniques reçus, +documents téléchargés sur le web...), ces documents peuvent contenir des +instructions, qui peuvent se retrouver exécutées imprudemment.
+Les virus ne sont donc pas une fatalité, au moins du point de vue +informatique : une programmation soigneuse et un minimum d'attention de +la part des utilisateurs les contreront bien plus efficacement que tous +les « anti-virus » du monde. Utiliser des logiciels mieux +conçus est bien sûr une mesure extrêmement profitable ; les logiciels +libres, en particulier, conçus souvent par des gens pour leur propre +usage et pas dans un but de marketing, sont en général bien moins sujets +aux virus.
+Au sujet des virus, voir aussi l'article de David +Monniaux dans le numéro 7 du Hublot.
+Les tuteurs informatique
+ +Vous trouverez ici les articles que nous avons publié dans le BOcal, l'hebdomadaire des élèves +de l'ENS.
++ +
+Voici le premier numéro du Hublot, le journal mensuel des tuteurs +informatiques. On va y parler de différentes choses : l'utilisation des +machines Unix, mais aussi la typographie, Internet, des astuces sur les +machines Unix... et de tout ce que vous nous proposerez! N'hésitez surtout pas +à nous écrire pour poser des questions, demander des compléments +d'information, proposer des sujets d'articles : tuteurs@clipper.ens.fr.
++ Vous pouvez aussi consulter notre page +Web : vous y trouverez des cours (commandes Unix, courrier +électronique, faire sa page Web, etc), ainsi que des exercices corrigés +(utilisation de l'interface, commandes, rudiments de programmation). Certaines +pages de notre site sont indiquées dans les articles; suivez les liens pour +vous y reporter. Enfin, allez voir les anciens numéros du Hublot. +
+Les systèmes Unix disposent d'interfaces graphiques, qui permettent d'exécuter +toutes ses opérations à la souris. Sous Linux (un Unix pour PC) existent ainsi +KDE et Gnome, pour les plus connues. À l'École, pour des raisons de +«gourmandise» de ces interfaces (il vaut mieux utiliser la puissance des +machines pour des calculs), elles ne sont pas installées. En revanche, il +existe des gestionnaires de fichiers qui s'utilisent avec la souris (voir Hublot, +n° 3).
++Il est néanmoins très utile de connaître les commandes clavier élémentaires +qui permettent de déplacer, effacer, renommer ses fichiers : si vous êtes +connectés depuis un Minitel ou un système distant via Telnet, vous ne disposez +pas de souris pour effectuer ces opérations. En outre, il est souvent bien +plus rapide de taper deux lettres que de déplacer la main.
+On tape ses commandes +dans une fenêtre (ou terminal) affichant une invite (ou prompt) comme +ceci :
+jonque ~ $
+
+ On tape sa commande, et on valide par un retour chariot; par exemple, la
+commande pot
affiche le menu du pot (ENTER
désigne la touche
+«Entrée») :
jonque ~ $ pot ENTER
+
+ Unix est un système d'exploitation «multi-utilisateurs» : différentes +personnes peuvent utiliser simultanénement l'ordinateur, de telle sorte que +personne ne peut modifier ou déplacer les fichiers d'un autre utilisateur, ou +usurper son identité.
++Chaque utilisateur est identifié individuellement par un nom de +login. L'accès à l'ordinateur est protégé par un mot de passe. Le nom de +login est le plus souvent une forme abrégée du nom de famille, avec +éventuellement des initiales du prénom au cas où plusieurs personnes auraient +le même nom de famille.
+Taper son login et son mot de passe donne accès à un «compte», c'est-à-dire un +«lieu» et des «droits» associés à ce lieu (créer des fichiers, lire le +courrier à son nom, etc). Est propriétaire d'un fichier celui qui l'a +créé : tous les fichiers que vous créez vous appartiennent, ce qui +signifie que par défaut vous êtes le seul à pouvoir les modifier ou les +effacer.
+Vous pouvez vous représenter votre compte comme un bureau aux murs et aux +meubles transparents. Vous laissez vos affaires sur la table, ou bien rangées +dans des armoires. Tout le monde peut jeter un coup d'oeil et voir ce qu'il y +a chez vous, mais vous seul pouvez entrer. Votre courrier est naturellement +dans une armoire opaque, si bien que personne, sauf vous, ne peut le lire. +Vous pouvez à volonté rendre opaque n'importe quel élément de votre bureau, +mais ne devenez pas paranoïaque : vos petits camarades ne passent pas +leur temps à espionner les comptes pour savoir ce qu'on y trouve...
++Tous les utilisateurs d'un système Unix ont les mêmes droits sur leurs +fichiers respectifs : ils ne peuvent modifier que leurs fichiers, et pas +ceux des autres. Ils ne peuvent pas non plus toucher aux fichiers «système», +c'est-à-dire aux programmes et à tout ce qui fait fonctionner l'ordinateur. +
+Il existe aussi un «super-utilisateur», appelé root
, qui a
+strictement tous les droits; lui seul peut modifier les fichiers dont il n'est
+pas propriétaire (fichiers des utilisateurs) et installer les programmes, par
+exemple. Seul l'administrateur-système a le droit de se loguer sous root.
+
Par sécurité, il vaut mieux changer régulièrement de mot de passe. Pour cela,
+vous avez la commande passwd
(ou yppasswd
). Tapez cette
+commande : la machine vous demande de taper votre mot de passe actuel,
+puis le nouveau, puis encore une fois le nouveau mot de passe, pour
+confirmation. Par exemple :
corvette ~ $ yppasswd +yppasswd: changing password for toto +enter login(NIS) password: +new password: +re-enter new password: +NIS(YP) passwd/attributes changed on clipper +corvette ~ $ ++
Bien évidemment, les mots de passe entrés n'apparaissent pas à l'écran. +
+La modification est à peu près immédiate en salle S; elle prend un peu +plus de temps pour atteindre l'Infirmatique, la salle du 46, la salle T15 et +Jourdan (la mise à jour se fait toutes les heures). Elle ne s'opère que le +lendemain à Montrouge.
+Tout d'abord, sachez que seuls les 8 premiers caractères de votre mot de +passe sont pris en compte. Ensuite, il y a des mots de passe à éviter +absolument :
+12345678
+ou qwertyui
.Un bon mot de passe doit contenir des majuscules et des minuscules, des +chiffres, des lettres, des ponctuations. Sachez que le SPI teste les mots de +passe des utilisateurs et prévient ceux qui en ont un trop simple.
+Il peut vous arriver d'oublier +votre mot de passe. Dans ce cas, il faut aller voir le SPI (passage bleu, au +rez-de-chaussée du bâtiment Rataud) qui vous en donnera un nouveau.
++Pour plus de renseignements : Guide des +premières fois : changer son mot de passe
+Votre nom de login et votre mot de passe vous donnent accès à votre compte, +qui contient vos fichiers personnels, votre travail, mais aussi votre +identité. Si quelqu'un vous pirate, il peut modifier vos données, mais surtout +faire des choses à votre nom, comme envoyer du courrier. C'est pourquoi il +est impératif de toujours veiller à se déloguer correctement. Pour cela, vous +avez plusieurs moyens (on suppose que vous utilisez la configuration des +conscrits) :
+Control
, Meta
et Backspace
. La touche Meta
+c'est le petit losange noir de part et d'autre de la barre d'espace.Il ne suffit pas de fermer toutes ses fenêtres pour être délogué : +n'importe qui peut ouvrir une nouvelle fenêtre et faire ce qu'il veut avec +votre compte.
+Quel que soit le moyen utilisé, vérifiez avant de quitter la salle que
+la machine affiche à nouveau Console login:
et une image.
+
Quelqu'un finira
+bien par s'en rendre compte et vous déloguera. S'il est gentil, il vous
+enverra un courrier électronique en votre nom pour vous avertir qu'il vous a
+trouvé non délogué. S'il est joueur, il mettra, en votre nom, un message dans
+le forum des élèves,
+dans un groupe de discussion appelé alt.pirates
. Dans ce cas,
+vous recevrez un message automatiquement envoyé par les tuteurs à la lecture
+de forum. Il vaut quand même mieux penser à se déloguer...
+Pour plus de renseignements : Prélude à Unix : +comment se loguer et se déloguer
+Cette rubrique a pour objectif d'exposer les normes de la typographie
+française telles qu'elles sont en usage dans l'Imprimerie Nationale. Pour plus
+de renseignements, voir le Lexique des règles typographiques en usage à
+l'Imprimerie nationale, Imprimerie nationale, 1990 (ISBN
+2-11-081075-0
). Ce premier article rappelle les grandes généralités sur
+les accents et la ponctuation.
Sachez que les majuscules prennent des +accents en français : nous sommes à l'École Normale, on dit +«À bientôt», etc. Il y a eu tolérance sur ce point tant que les +machines à écrire ne permettaient pas de taper ces accents. Depuis que les +ordinateurs le permettent, il est obligatoire d'accentuer les majuscules. +N'oubliez pas non plus les ligatures : «Lætitia».
++Le Hublot est +édité à l'origine avec LaTeX, et il n'y a pas de problème pour faire des «oe» +ligaturés majuscule et minuscule. Mais avec le passage au HTML et au codage des +accents en isolatin, on ne dispose plus de ce caractère...
+Les guillemets français sont des +guillemets carrés, «comme ça». Les guillemets de ce genre : "ça" ou +``ça'' sont des guillemets anglais, américains, ce que vous voudrez, mais ils +ne sont pas corrects en français, et donc à proscrire dans tous vos +documents... On abordera dans un article ultérieur la question des citations +et des guillemets de second niveau (voir Hublot, +n° 5).
+On rappelle au passage que, lorsque +l'on parle de typographie, le mot «espace» est féminin; par habitude, on ne +garde le féminin que pour l'espace fine (demi-espace)... Les ponctuations sont +toutes suivies d'un espace. Les ponctuations doubles (deux-points, +point-virgule, points d'interrogation et d'exclamation) sont précédées d'une +espace fine, sauf le deux-points qui est précédé d'un espace complet. À moins +que votre logiciel ne vous donne accès à des demi-espaces, mettez toujours un +espace, de préférence insécable, avant vos ponctuations doubles.
++Vous trouverez sur la page des tuteurs un tableau récapitulant la façon de +taper les accents sur les stations Sun : Taper les accents sur +les stations Sun.
+On nous demande souvent comment lire un fichier PostScript : pour cela,
+il faut utiliser le programme GhostView, que l'on appelle avec la commande
+gv
. Il faut donc taper, par exemple :
+gv rapport.ps ++
La commande qui
vous affiche un plan de la salle S, avec le nom
+de login des utilisateurs qui sont connectés physiquement aux machines
+(stations Sun et PC sous Linux). Les tuteurs ont leur nom souligné. Cette
+commande a différentes options :
qui -real
vous donne les noms complets des personnes
+connectées;qui -infi
vous donne le plan de l'Infirmatique; qui -46
donne le plan de la salle du 46;qui -t15
donne le plan de la salle T15 (en
+physique);qui -sallet
donne le plan de la salle T;qui -jourdan
donne la salle de Jourdan);qui -montrouge
affiche la salle de Montrouge).Ce cours, en plusieurs parties, va expliquer ce qu'est un réseau, et comment +les ordinateurs communiquent entre eux. En un mot, il explique ce qu'est +Internet... Ce premier article traite des données que les ordinateurs +échangent.
++Les ordinateurs n'ont que deux doigts, contrairement aux humains. Ils comptent +et manipulent l'information uniquement sous la forme de 0 et de 1; c'est le +choix fondamental, l'information minimale, qui s'exprime ainsi (vrai/faux, +ouvert/fermé, oui/non, etc). Une telle information est appelée un +bit. Comme un bit ne contient pas grand'chose, on groupe plusieurs +bits pour qu'ils forment, ensemble, une information plus complexe.
++Huit bits ensemble forment un octet. Chaque bit a une place +particulière dans l'octet, ce qui permet de faire 256 combinaisons +(28). Un octet est adapté pour coder un +caractère occidental (il y a suffisamment de place pour les 26 lettres, avec +les minuscules, les caractères accentués, les chiffres et quelques autres +signes typographiques).
+ Les quantités de données
+traitables par les ordinateurs se chiffrent désormais en millions et milliards
+d'octets. Les informaticiens ont donc conçu des unités adaptées. Le
+kilo-octet (Ko
) comporte 1024 octets
+(210). (et non 1000 : 1000 est un nombre rond en
+base 10, mais pas en base 2; en revanche, 1024 s'écrit 10000000000
+en base 2).
+Le méga-octet (Mo
) est constitué de 1024 Ko (plus d'un
+million de caractères), et le giga-octet (Go
) vaut
+1024 Mo. On commence à parler de téra-octet (To
) mais
+c'est encore un peu trop cher.
+Une image plein écran «pèse» environ 1 Mo, voire plus si on veut une +grande palette de couleurs. Une simple disquette contient environ +1.44 Mo, et un CD-ROM 660 Mo. Un DVD-ROM pèse jusqu'à 17 Go +(plus de 17 milliards de caractères). Pour donner une échelle de valeur, +disons que la Bible, correctement encodée, tient en 1 Mo (un peu moins +d'une disquette), et que l'Encyclopedia Universalis, avec schémas, photos et +quelques animations, rentre dans un CD-ROM.
++-- Thomas Pornin +
+Pour reprendre Corinne Gacon : la Netiquette est un ensemble de règles de +comportement et de conseils concernant la façon de s'exprimer par les moyens +informatiques (courrier électronique, groupes de discussion, etc). Il s'agit +donc surtout de bons sens et de courtoisie...
++Cette rubrique va, tout au long de l'année, détailler certains aspects de la +Nétiquette. Ce mois-ci, on parle des courriers collectifs et de la façon de +contacter plusieurs personnes à la fois.
+Tout d'abord, + +La Netiquette : premiers éléments, par +Corinne Gacon. Ensuite, la RFC 1855. +
+Les RFCs (Requests for comments) sont des textes plus ou moins +techniques maintenus par l'IETF (Internet Engineering Task Force) +visant à définir les standards et les protocoles utilisés sur Internet. Il +existe des RFCs aussi bien sur le protocole IP (Internet Protocol) ou +le protocole HTTP (HyperText Transfert Protocol : Web) que sur +la Netiquette. Vous pouvez consulter la liste des +RFCs.
+Imaginez la scène suivante : vous rentrez de +deux semaines de vacances, et votre boîte aux lettres déborde de prospectus en +tous genres, au milieu desquels se trouve votre convocation à l'agrégation. +Malheureusement, un tri trop hâtif de tout ce courrier envoie cette lettre au +panier. Si tout le monde pouvait envoyer des courriers collectifs, à l'ENS, ce +genre de situations deviendrait monnaie courante, et ceci pour deux +raisons :
+À ce problème pratique s'ajoute un problème technique : supposons qu'une
+personne envoie un courrier de 1 Ko à eleves@ens.fr
, soit plus
+de 1300 personnes en comptant les CST, SNA et archicubes ayant un compte. Cela
+nous fait donc 1 Mo (soit 1 million de caractères) de données
+redondantes qui encombrent l'unique disque qui contient le courrier de tous
+les élèves. pour une annonce qui va intéresser seulement 10 personnes, cela
+fait beaucoup.
+Si la place vient à manquer, plus personne ne reçoit de courrier électronique, +plus personne ne peut en envoyer (car les courriers en partance passent par +cette même place...). En outre, les courriers ainsi refusés (ceux en partance +ou ceux qui devaient arriver) ont une probabilité assez élevée de disparaître +silencieusement
+ C'est pourquoi les courriers
+collectifs sont «modérés» à l'ENS : les courriers autres que ceux de
+l'administration sont la plupart du temps redirigés dans le forum des élèves,
+dans le groupe de discussion annonces
, où ils seront accessibles à
+tous à moindre coût de ressources et sans imposer à tout le monde de les lire.
+Dans des cas plus rares, il arrive qu'un courrier mérite un envoi collectif et
+que le modérateur décide de le laisser passer.
+Pour ceux qui trouvent cette pratique abusive, je répondrai que cette +disposition est prévue par la Netiquette :
++Souvenez-vous que le courrier et les News consomment tous deux des +ressources. Tenez compte des règles particulières qui régissent leur usage +dans votre institution. (RFC 1855, paragraphe 3.1.1, alinéa 5.)
+ Vous
+pouvez d'abord utiliser le forum des élèves, en demandant la création d'un groupe de
+discussion spécifique, comme lettres.latin
par exemple. Si vous
+vous occupez d'une petite communauté de personnes (section du COF, club
+sportif, etc) désirant être tenues informées de ce qui se passe, vous pouvez
+aussi utiliser les listes de diffusion (mailing-list) qui permettent
+d'envoyer des courriers collectifs.
À la difference des alias tous@ens.fr
ou
+eleves@ens.fr
, l'on est libre de s'abonner et de se désabonner de
+ces listes, et elles ont toutes un sujet précis; cela permet à l'expéditeur de
+cibler ses lecteurs, et aux lecteurs de cibler les informations reçues. Pour
+créer une liste de diffusion, adressez-vous aux tuteurs.
+-- Pierre Corbineau +
+Si vous utilisez Pine, lorsque vous
+repondez a un courrier qui a plusieurs destinataires, Pine vous demande
+«Reply to all recipients?
», ce qui signifie : «dois-je
+envoyer la réponse à tous les destinataires ou seulement à l'expéditeur?». Si
+vous appuyez sur ENTER
, la réponse sera oui; mais il est rare que
+ce soit l'effet désiré... alors faites attention lorsque vous répondez à des
+courriers collectifs.
L'équipe «Réseaux, Savoirs, Territoires», dans le prolongement des activités +de l'Atelier Internet, organise un colloque les 3 et 4 décembre +1999 :
++ + | +
+ Colloque
+ + + + Comprendre +les usages d'Internet Vendredi 3 décembre 1999 de 9h30 à +18h30 + +Samedi 4 décembre 1999 de 9h30 à 18h30 + +En salle Dussane + |
+
Ce colloque a pour objet l'état des +lieux des recherches réalisées sur le thème des usages d'Internet par diverses +équipes (Université, CNRS, entreprises).
++Si ces journées sont centrées sur la mesure concrète des pratiques, étudiées +par le biais de questionnaires, d'enquêtes ethnographiques, de traces +informatiques et de témoignages, nous proposons aussi deux axes qui permettent +de vérifier la pertinence de ces mesures et de proposer quelques hypothèses +théoriques sous-jacentes :
++ +A- Comprendre l'aspect proprement intellectuel de ces usages : relation à +l'écriture et à la lecture, pratiques éditoriales, et plus généralement +apports cognitifs de l'ordinateur vu comme «bibliothèque-laboratoire» +(organisation des savoirs). En effet, une intuition largement partagée est que +les transformations liées à Internet et à l'informatique sont essentiellement +d'ordre intellectuel, ou encore cognitif.
++B- Étudier les contraintes (au sens neutre du terme) sociales et économiques +qui favorisent le développement de certains usages. Nous entendons par +là :
+ Le Service de Prestations Informatiques
+(spi@ens.fr
) a été créé en 1989. Ses fonctions officielles
+sont :
Il est composé de Jacques Beigbeder, responsable, Bertrand Goimard, +ingénieur, Catherine Le Bihan, technicienne, Jean-Claude Lovato, +technicien, Marc-Antoine Rey, technicien, Philippe Prat (sites de Jourdan +et de Montrouge).
+Voir le tableau vitré +dans le couloir à droite de l'Aquarium pour tous les renseignements sur les +activités des caïmans d'informatique littéraire.
+dbeguin@ens.fr
). Eric.Guichard@ens.fr
).+ +
+ls
+ + Dans ce numéro, vous trouverez les rubriques du mois précédent (Unix, +Internet, typographie, etc), et une nouveauté : un dossier, consacré ce +mois-ci aux claviers américains. Pour toutes questions, demandes +d'explications, idées d'articles, etc, n'hésitez pas surtout pas à nous +écrire : tuteurs@clipper.ens.fr Vous pouvez +aussi mettre un mot dans le casier d'Émilia Robin. +
++ +Certaines pages de notre site sont +indiquées dans les articles; suivez les liens pour vous y reporter. Vous +pouvez aussi consulter les anciens +numéros du Hublot. +
++ +Un stage informatique est organisé en décembre. +Inscriptions par courrier électronique. +
+Stage informatique | +|
---|---|
+ Netscape + | +(vendredi 10 décembre, 20h30, en salle S). On y +apprendra l'utilisation «intelligente» de Netscape (récupérer des fichiers, +gérer ses marques-page, configuration...). On verra aussi l'utilisation des +moteurs de recherche. | +
+ Recyclage en +LATEX + | +(lundi 13 décembre, +20h30, en salle S). En vous inscrivant, merci de préciser ce que vous +voulez apprendre exactement. + | +
Vous avez deux moyens pour taper les accents sur les claviers américains des +stations Sun.
+méta
La touche méta
+(le losange noir de part et d'autre de la barre d'espace), associée à une
+lettre; par exemple méta-i
pour un «é». On tient le méta en même
+temps qu'on tape la lettre (comme avec Shift et Control). C'est rapide,
+pratique, un peu ésotérique et incompatible avec emacs
, LyX
,
+Netscape
et quelques autres logiciels.
Compose
Nous vous
+conseillons la touche Compose
, à droite de la barre d'espace. Elle
+sert à associer un signe de ponctuation figurant un accent, à une lettre. Par
+exemple : «compose ' e
» donne «é». Il ne faut pas
+maintenir la touche Compose
appuyée. Appuyer une fois dessus (il ne
+se passe rien, c'est normal), puis taper tranquillement l'accent puis la
+lettre. Les principaux accents sont les suivants :
+ '
+ |
+ (apostrophe) | +accent aigu | +
+ `
+ |
+ (apostrophe à l'envers) | +accent grave | +
+ ^
+ |
+ (chapeau) | +circonflexe | +
+ "
+ |
+ (guillemets anglais) | +tréma | +
+ ,
+ |
+ (virgule) | +cédille | +
Par exemple : +
+
+ compose
+ |
+
+ `
+ |
+
+ a
+ |
+ donne | +
+ à
+ |
+
+ compose
+ |
+
+ ,
+ |
+
+ c
+ |
+ donne | +
+ ç
+ |
+
+ compose
+ |
+
+ ^
+ |
+
+ I
+ |
+ donne | +
+ Î
+ |
+
+ compose
+ |
+
+ ~
+ |
+
+ n
+ |
+ donne | +
+ ñ
+ |
+
+ compose
+ |
+
+ "
+ |
+
+ u
+ |
+ donne | +
+ ü
+ |
+
+ compose
+ |
+
+ <
+ |
+
+ <
+ |
+ donne | +
+ «
+ |
+
+ compose
+ |
+
+ >
+ |
+
+ >
+ |
+ donne | +
+ »
+ |
+
+etc. À votre avis, comment fait-on le æ ligaturé ?! +
+Ce système vous donne donc accès à toutes les combinaisons d'accents, +françaises et étrangères (europe de l'Ouest), sauf (pour de sombres raisons +historiques) le oe ligaturé minuscule et majuscule, et le Y tréma majuscule; +cette restriction n'est pas vraie avec LATEX.
+ Les deux systèmes vous permettent de taper des espaces insécables :
+M-SPC
(méta-barre-d'espace) ou C-SPC-SPC
+(Compose-barre d'espace-barre d'espace).
+
Dans vos pages Web, dans +vos écrits... Dans vos courriers également, après vous être éventuellement +entendu avec votre correspondant (surtout à l'étranger), pour vérifier que les +accents passent. N'en mettez jamais par contre dans les titres des courriers. +
+Enfin, rappelez-vous que les règles typographiques françaises +imposent les accents sur les majuscules. « Évidemment!» +«Ô temps suspend ton vol...», «À bientôt!», +«Ça va bien?», «Moyen Âge», etc.
+
+Vous retrouverez sur le site des tuteurs tous les renseignements concernant
+les accents, ainsi qu'un tableau des accents avec méta
,
+compose
, en HTML et en LATEX: Les accents sur les
+stations Sun.
+La méthode la plus simple est toujours la meilleure : c'est en tapant +qu'on apprend à taper! Si vous trouvez pour 10 francs chez un bouquiniste un +manuel de dactylographie des années 1950, il fera très bien l'affaire... même +s'il fait moins «branché» qu'un logiciel de dactylographie. Cela dit, il y a +des choses simples à appliquer pour gagner de la vitesse :
+Le jeu xletters
, développé à l'ENS par votre dévoué serviteur, est un
+cousin de tetris
destiné à vous aider à améliorer votre vitesse de
+frappe. Le jeu représente des mots (anglais) en train de tomber du haut d'une
+fenêtre, et qu'il faut taper (dans l'ordre qu'on voudra) avant qu'ils
+atteignent le bas, sans quoi vous perdrez une vie. Les mots les plus petits
+tombent le plus vite. Au bout d'un certain temps, vous passerez au niveau
+suivant, où les mots tombent plus vite, et ainsi de suite indéfiniment.
+Entre deux niveaux il y a des «niveaux bonus» dans lesquels les choses qui
+tombent ne sont plus des mots mais des suites aléatoires de caractères,
+beaucoup plus dures à taper ---heureusement, on ne peut pas perdre de vie dans
+ces niveaux bonus. Par ailleurs, vous pouvez faire une pause à tout moment en
+appuyant sur TAB
. Le jeu garde une table des high scores, ce
+qui vous permettra de vous mesurer aux meilleurs dactylographes de l'École.
+
Si tout cela vous semble trop stressant, vous pouvez lancer
+xletters
avec l'option -train
(entraînement),
+qui vous proposera simplement de taper des mots les uns après les autres
+sans contrainte de temps.
Enfin, pour ceux qui ne craignent vraiment rien, il y a
+le mode duel, que nous devons à Péter Horvai et Jean Marot, et qui se
+joue à plusieurs : cette fois, les mots ne seront plus envoyés par
+l'ordinateur mais par vos adversaires (l'ordinateur vérifiera toutefois
+qu'ils sont bien dans le dictionnaire), et vous avez le choix entre
+entrer un mot à envoyer à vos adversaires ou bien taper un mot qui tombe
+sur votre écran (on passe de l'une à l'autre possibilité avec la touche
+Backspace
, et la touche Entrée
permet d'envoyer
+à vos adversaires le mot que vous avez saisi). Pour jouer à
+xletters
dans ce mode, on commence par lancer un serveur
+avec «xletters-server
» sur une certaine machine, puis chaque
+jouer lance «xletters-wrapper
» avec comme argument le nom de
+la machine sur laquelle le serveur a été lancé.
-- David Madore
++ Le cours Unix se divise en trois parties : «Concept», «Commande», +«Usage». La partie «Concept» est, comme son nom l'indique, conceptuelle... +c'est-à-dire pas très simple au premier abord. Si vous n'êtes pas familiers +avec les ordinateurs, ce n'est pas la peine de la lire pour le moment. La +partie «Usage» n'intéressera que ceux qui sont déjà un peu familiers des +machines Unix. +
+On peut voir un +fichier comme une chemise avec une étiquette, et contenant des notes de cours, +ou des partitions de musique, ou encore des gravures. Dans le cas des fichiers +informatiques, cela correspondra respectivement à des textes, des sons et des +images.
++Ces informations sont écrites sur un support informatique (disquettes, +CD-ROMs, disques durs...) et sont rangées de façon ordonnée. L'idée consiste à +mettre à chaque morceau d'information une étiquette, disant à quoi il sert, de +quand il date, quelle taille il fait, etc. Un fichier est un «bloc» de données +doté d'une étiquette.
++En pratique, sur un ordinateur, chacun des objets que vous manipulez (courrier +électronique, image, musique, texte...) correspond à un fichier. Quand vous +écrivez du texte, dessinez avec un programme quelconque, etc, vous créez un +fichier.
+Un disque dur +contient souvent beaucoup de fichiers. Et mettre toutes ses chemises +en un seul énorme tas, même par ordre alphabétique, n'est pas vraiment la +meilleure façon de s'y retrouver. Quand on range ses papiers, on range ceux +qui se rapportent aux études dans un tiroir, ceux qui qui se rapportent aux +loisirs dans un autre tiroir, etc.
++Un ordinateur permet la même chose avec les répertoires (ou +dossiers sous Windows et sur les Macs). Les répertoires sont des +tiroirs qui contiennent des fichiers, mais aussi d'autres répertoires. Par +exemple, vous pouvez créer un répertoire «DEA», qui contiendrait votre +mémoire, et des sous-répertoires : «Documents», «Annexes», «Divers», ou +d'autres encore.
++Les répertoires servent à organiser ses documents, en rangeant par exemple +séparément les textes et les images, ou les différentes matières. +
++-- Nicolas George
+ls
+ La commande ls
vous permet d'afficher le contenu du répertoire où
+vous vous trouvez. Les fichiers apparaissent sous leur nom simple, les
+sous-répertoires ont leur nom suivi d'un slash (/
). Voici un
+exemple :
corvette ~ $ ls
+Mail/ dead.letter vocab vocab~
+
+ Les fichiers et les répertoires sont rangés par ordre alphabétique, les
+majuscules avant les minuscules. Ici, il y a un répertoire, appelé
+Mail/
, qui contient les courriers que vous avez rangés. Ensuite, il y
+a trois fichiers :
dead.letter
est un courrier électronique que vous avez commencé
+puis annulé, avec pine
; vocab
est un fichier, qui, vu son nom, contient des mots de
+vocabulaire, ou un lexique; vocab~
est une copie de sauvegarde du précédent, créée
+automatiquement par la plupart des éditeurs de textes (joe
,
+emacs
, vi
...).On peut représenter sous cette forme le répertoire que l'on vient +d'afficher :
++ +
+Le tilde, au sommet du schéma, représente le répertoire dans lequel vous vous +trouvez : il s'agit de votre répertoire personnel, de votre compte.
+ La commande ls
a différentes options, par exemple pour
+classer les fichiers par date, ou taille, etc. Une option très utile est
+l'option -l
(taper «ls -l
»). Elle affiche,
+entre autres choses, la date de dernière modification du fichier et sa
+taille.
Pour en savoir plus, vous pouvez consulter le cours sur
+ls
, et faire les exercices sur ls
.
Pour désigner un fichier, on utilise son nom. Cependant, il y a des cas où +l'on voudrait pouvoir généraliser le nom. Par exemple, pour afficher tous les +fichiers LaTeX d'un répertoire donné, on voudrait ne pas taper successivement +les noms, mais pouvoir dire «tout ce qui est un fichier LateX».
++Pour cela, on utilise les jokers. Il y en a beaucoup, mais on n'en abordera +que trois ici.
+*
»L'étoile veut dire
+«n'importe quelle suite de caractères» (qui ne commence pas par un point). Par
+exemple, pour afficher le nom de tous les fichiers LATEX
+(identifiés par leur suffixe .tex
), on écrit *.tex
:
+
brick ~ $ ls +MEMO annexes.dvi annexes.tex divers/ +essai.tex rapport.tex tp1.tex +brick ~ $ ls *.tex +annexes.tex essai.tex rapport.tex tp1.tex ++
?
»Le point
+d'interrogation signifie «un et un seul caractère quelconque». Par exemple,
+sur le compte des tuteurs, il y a un répertoire exercices/
avec
+dedans 6 fichiers, pour les 6 premiers chapitres de Germinal. Leurs
+noms sont zola1.txt
, zola2.txt
, etc, jusqu'à
+zola6.txt
. Leur nom est donc identique, à l'exception d'un seul
+caractère, le chiffre. On peut donc taper, pour afficher le nom de tous ces
+fichiers :
brick ~ $ ls zola?.txt
+zola1.txt zola2.txt zola3.txt
+zola4.txt zola5.txt zola6.txt
+
+
+On aurait aussi pu taper «ls zola*
».
[ ]
»Les crochets
+encadrent plusieurs caractères et veulent dire «l'un de ces caractères». Par
+exemple, pour afficher le nom des fichiers zola1.txt
,
+zola3.txt
et zola5.txt
, on tape :
brick ~ $ ls zola[135].txt
+zola1.txt zola3.txt zola5.txt
+
+ +Le mois dernier, nous avons fait un rappel des généralités sur les caractères +accentués et la ponctuation. À partir de ce numéro, nous allons aborder divers +points de typographie et de composition de textes. Toutes ces informations +proviennent du Lexique des règles typographiques en usage à l'Imprimerie +nationale, Imprimerie nationale, 1990.
+Viennent, dans l'ordre : +le titre, éventuellement une dédicace, l'avant-propos, l'introduction, la +préface, éventuellement une notice.
++Après le texte proprement dit, viennent, dans l'ordre : la postface, les +notes si elles sont regroupées à la fin, la bibliographie, le ou les index, la +table des illustrations. Le sommaire peut être placé après le titre ou tout à +la fin de l'ouvrage.
++Même si les mémoires de recherche ne comportent pas nécessairement tous ces +éléments, il vaut mieux s'efforcer de respecter cet ordre conventionnel.
++On supprime le point dans les titres, mais pas les points d'exclamation et +d'interrogation.
+Un ouvrage long se +décompose successivement en : tome ou volume, livre, partie, (titre), +(sous-titre), chapitre, (sous-chapitre), section, sous-section, (article), +paragraphe, alinéa, tiret (dans une liste). Les subdivisions plus rares sont +indiquées entre parenthèses.
+Dans le titre, les +chapitres sont numérotés en chiffres romains grandes capitales : +«Chapitre III: le congrès de 1956». Dans le texte, on écrit les numéros +des chapitres en petites capitales. +
+Les livres, tomes, sections, fascicules, annexes sont numérotés en chiffres +romains grandes capitales : l'annexe IV, dans le titre comme dans le +texte.
++Les figures sont numérotées en chiffres arabes : la figure 12.
+Nous citons ici le +Lexique, p. 153 : «Lors de la mise en page, on s'interdira +de placer une ligne creuse en haut de page, de laisser en bas de page la +première ligne seule d'un alinéa, de terminer une page (ou du moins une page +impaire) sur un deux-points, ou une page impaire sur une coupure de mot. On +proscrira également la présence d'un titre en bas de page s'il n'est pas suivi +d'au moins trois lignes de texte. De même, la dernière page d'un chapitre, +d'un livre, etc., devra comporter au minimum six lignes de texte».
+
+Une question revient souvent : comment fait-on pour regarder une image
+sur les stations Sun? Pour cela, il faut utiliser le logiciel xv
, qui
+connaît la majorité des formats standards. Il faut taper, par exemple :
+
corvette ~ $ xv photo.jpg
+
+
+Pour quitter xv
, il suffit de placer le pointeur de la souris sur
+l'image et de taper q
. En cliquant sur l'image avec le bouton droit
+de la souris, vous faites apparaître un panneau de contrôle. Pour tout
+quitter, cliquer sur Quit
.
+Si jamais xv
n'arrive pas à afficher l'image, vous pouvez utiliser le
+logiciel de retouche d'images gimp
, de la même façon que xv
.
+Pour quitter gimp
, sélectionner Quit
dans le menu
+File
.
+La commande date
affiche la date et l'heure précise. Il est rare,
+mais possible, que la machine sur laquelle vous êtes ne soit pas à l'heure; si
+vous avez un doute, connectez-vous sur clipper
, qui est toujours à
+l'heure.
+La commande cal
affiche le calendrier du mois en cours. Vous pouvez
+aussi lui indiquer un mois (de 1 à 12) et une année (de 1 à 9999); par
+exemple :
corvette ~ $ cal 2 2000
+ February 2000
+ S M Tu W Th F S
+ 1 2 3 4 5
+ 6 7 8 9 10 11 12
+13 14 15 16 17 18 19
+20 21 22 23 24 25 26
+27 28 29
+
+
+La dernière fois, on a expliqué que les ordinateurs échangeaient des 0 et des
+1, groupés en octets qui représentent chacun un caractère. Les unités de
+mesure principales sont le kilo-octet (Ko
, un peu plus de 1 000
+caractères), le méga-octet (Mo
, environ un million de caractères) et
+le giga-octet (Go
, environ un milliard de caractères).
+Dans ce numéro, on explique pourquoi les ordinateurs gagnent à être en réseau +pour échanger des informations, et sur quel modèle l'Internet est conçu. +
++Stocker des informations est bel et bon; mais il est tentant de pouvoir en +échanger, sans quoi la sclérose guette. On peut transporter des disquettes, +des CD-ROMs ou d'autres supports du même genre; c'est assez efficace en termes +de débit (exercice : calculer la quantité d'informations transportable +dans une camionnette qui serait pleine de CD-ROMs--- c'est tout simplement +colossal); mais le temps de réponse est long, très long. Et puis, +l'informaticien n'aime pas se lever de sa chaise s'il n'y est pas poussé par +une nécessité impérieuse (aller prendre sa dose de Coca-Cola par exemple). +
++Donc, il s'agit de doter les ordinateurs de moyens de communication. Pour +coder des 0 et des 1, certains protocoles adaptés sautent aux yeux : le +code Morse par exemple. On transmet des «longs» et des «brefs». Le seul +problème est que le débit n'est pas très satisfaisant : deux bons +opérateurs peuvent s'échanger 3 bits par seconde, et une visio-conférence +(de mauvaise qualité) en exige au moins 60 000. Même un téléphone +portable, à la qualité de son douteuse, doit échanger 9 600 bits par +seconde.
++Néanmoins l'analogie est riche. En effet, en regardant de plus près, quand un +message est envoyé en Morse par télégraphe, son texte est précédé du nom du +destinataire : au XIXe siècle, il n'y avait pas +de ligne directe de New-York à Los Angeles; le message devait passer par +différents opérateurs qui recevaient le message et le réexpédiaient +immédiatement dans la bonne direction. Un message pour San Francisco prenait +au début le même chemin. Ce principe de message, sautant de poste en poste, +redirigé à chaque poste en fonction de sa destination, est le fondement +d'Internet. C'est ce qu'on appelle un réseau par paquets, par opposition au +téléphone, qui est un réseau par circuits. On verra plus précisément la +différence dans le prochain numéro.
+-- Thomas Pornin
+Les textes de référence sur la Netiquette («communiquer avec courtoisie sur +Internet») sont La Netiquette : premiers éléments, par +Corinne Gacon, et la +RFC 1855. +
+Ce mois-ci, on va parler de la façon de communiquer par écrit par le courrier +électronique, et des conventions «graphiques» en usage.
+Il faut toujours donner un titre à ses
+courriers. Outre des raisons techniques, c'est une politesse envers son
+correspondant : un titre explicite permet de savoir immédiatement de quoi
+traite le courrier, et permet de le retrouver plus facilement dans sa boîte
+aux lettres. Si tous les courriers ont comme titre «No title
»,
+«<>
» ou une ligne blanche, rechercher un courrier précis est
+tout de suite plus fastidieux...
Il existe certaines règles
+formelles, dont la plus importante concerne les citations. Quand vous répondez
+à un courrier, vous avez la possibilité de reprendre dans la réponse le texte
+du courrier auquel vous répondez. Si vous le faites, il ne faut garder que les
+passages auxquels vous répondez effectivement. Le reste (formules de
+politesse, passages sans rapport) doit être supprimé (avec pine
et
+pico
, la commande ^K
permet de détruire la ligne sur
+laquelle vous vous trouvez).
+Pourquoi faut-il effacer les lignes inutiles? Des lignes supplémentaires +accroissent la taille du fichier, et donc contribuent à encombrer le réseau +pour rien. C'est aussi une question de politesse envers votre correspondant. +La connexion dont vous disposez à l'ENS est de bonne qualité, mais un +correspondant connecté par modem doit attendre plus longtemps pour récupérer +tout le courrier, et sa connexion lui coûte davantage. Pour la même raison, il +vaut mieux éviter les signatures trop longues; 4 ou 5 lignes sont +largement suffisantes.
++Par souci de clarté, il vaut mieux aussi laisser des lignes blanches entre les +paragraphes. Cela aère le texte et rend la lecture plus facile.
+Certaines conventions +graphiques permettent de nuancer visuellement ses propos. Il est utile de les +connaître pour ne pas commettre d'impair, et aussi pour interpréter +correctement les courriers qui les utilisent. Nous indiquons ici les +principales conventions en usage.
+Les majuscules servent à CRIER; il faut donc en +faire un usage discret et réfléchi.
+
+Pour insister sur un mot précis, vous pouvez le mettre entre étoiles («Tu
+veux *vraiment* que je te donne mon avis?
»), ou entre
+underscores («Oui, je veux _vraiment_ avoir ton avis.
»).
+Comme les underscores figurent un soulignement, ils servent aussi à
+délimiter un titre : «J'ai lu _Madame Bovary_ récemment.
».
Je cite ici Corinne +Gacon :
+:-)
(penchez la tête
+sur la gauche et vous verrez un visage qui vous sourit). Elles servent
+généralement à indiquer que le passage qui suit ou qui précède doit être pris
+au second degré ou, au moins, avec un peu de recul.
++Les smileys («emoticon» en français de l'Académie, +«souriards» ou «trombines» en français du Québec) sont donc des petits signes +qui servent à traduire une émotion. Les plus courants sont :
+Le bonhomme heureux | +
+ :-)
+ |
+
Le bonhomme triste | +
+ :-(
+ |
+
Le clin d'oeil | +
+ ;-)
+ |
+
Tirer la langue | +
+ :-p
+ |
+
Il arrive que le tiret du nez soit omis. On vous en cite ici quatre, +mais il y en a des centaines... Pour un aperçu, vous pouvez aller voir ce +site : Quelques +smileys.
++Si vous avez un problème, commencez par demander de l'aide dans la +salle : il s'y trouve sans doute un tuteur (volontaire pour dépanner) ou +un gourou (administrateur élève). Dans la moitié des cas, quelqu'un pourra +vous aider. Si personne ne peut vous dépanner, vous avez à disposition les +interlocuteurs suivants :
+gourous@clipper
.tuteurs@clipper
. spi@ens.fr
), sauf les Macs de l'Infirmatique qui dépense de
+l'Informatique littéraire (écrire à Élisabeth Labrousse :
+elisa@elias.ens.fr
).Donnez une description précise du problème, et indiquez clairement la machine +et la salle. Le cas échéant, laissez un papier sur la machine pour signaler la +panne, cela évitera aux autres utilisateurs de rencontrer le même problème et +de surcharger le SPI ou les gourous de messages d'erreur.
+ ++ +
+cd
+ + Jouez hautbois, résonnez musettes, jour de fête aujourd'hui sur Terre. +Enfin, un peu en retard, Noël est passé. Mais l'est-il vraiment ? Les +Orthodoxes suivent encore le calendrier de ce cher Jules, aussi ont-ils plus +de deux semaines de décalage avec nous autres, qui sommes en pays grégorien. +Le calendrier musulman est encore à six siècles de l'an 2000, le calendrier +juif nous met plus de trois millénaires dans la vue. Et il se trouve encore +des gens pour pinailler entre l'année 2000 et la deux-millième année, et le +compte des siècles et millénaires, tout ça en référence à un événement +religieux placé pifométriquement afin de remplacer des festivités païennes +liées au solstice d'hiver, qui, lui, arrive avec une précision de coucou +suisse. +
++ +Car c'est ce que rate tout le monde : nous arrivons dans cette joyeuse +période de l'année où la température devient enfin acceptable. Le givre pare +les arbres d'une robe blanche (enfin, en banlieue; à Paris, les arbres restent +moches), le ciel redevient sobre et abandonne son bleu tapageur, le monde +s'endort tel l'ours pantouflard. L'ordinateur, et ses avatars (le sacro-saint +Web notamment), restent parfaitement insensibles à cette poésie naturelle, et +le mieux qu'on attende d'eux, c'est justement de continuer comme si de rien +n'était. Ce n'est donc pas un ordinateur, mais un humain (moi-même) qui vous +souhaite un joyeux Noël et une bonne année 2000. +
+Thomas Pornin
++ Pour toutes questions, idées d'articles, etc, n'hésitez pas à nous +écrire : tuteurs@clipper. +Vous pouvez aussi mettre un mot dans le casier d'Émilia Robin. Certains mots +sont suivis d'un astérisque*; ils renvoient au lexique +en fin de numéro. +
++ Certaines pages de notre site sont indiquées dans les articles; n'hésitez pas +à vous y reporter. Vous pouvez aussi consulter les anciens numéros du +Hublot : Le Hublot +Online. +
+Vers 1990, des élèves avaient trop fait +les pitres sur Internet : deux gros incidents en quelques semaines. +C'était un problème nouveau : en 1990, l'ENS était relié depuis peu à +Internet par une liaison à... 9 600 bauds*, le tiers +d'un modem* actuel. On a craint que l'ENS soit interdite +d'Internet, cela est bien arrivé à une autre École en 1993.
++Après réflexion de la Direction, est donc parue une première version d'une +charte d'utilisation des machines et du réseau. Cette charte a été révisée en +1995, puis en 1999. Elle a aussi servi de modèle à d'autres établissements, et +c'est maintenant un mode de fonctionnement plus que répandu : toutes les +Universités, le CNRS ont leur charte. Voir les informations légales du +SPI.
++Est-ce à dire que l'informatique, se passant devant un écran, laisse croire à +un jeu vidéo, où tous les coups sont permis? Parfois on se le demande, en +voyant que ce qui ne se ferait pas dans la vie réelle devient normal +devant un écran? Arguer que les défenses de certaines machines sont faibles +n'est pas un argument : ma voiture aussi a un pare-brise faible, simple à +casser d'un bon coup de masse!
+La charte est donc un moyen de sensibilisation, rappelant ce qui devrait être +des évidences de vie en société : on partage des machines, on partage un +réseau, tout cela a son code de la route.
+Faut-il la +signer? Le secrétaire général explique que la charte est un acte +réglementaire, annexe du règlement intérieur de l'École approuvé par le +Conseil d'administration; cet acte s'applique à tout utilisateur des +ressources informatiques, dès lors qu'il demande un compte et se connecte, et +qu'il le veuille ou non. De ce fait, qu'une personne n'ait pas signé la +charte, par négligence ou refus délibéré, ne la libère pas des obligations et +devoirs prévus dans ce document : Règlement +d'utilisation des moyens informatiques de l'École normale supérieure +
++La charte est en fait applicable dès lors qu'elle a été publiée, elle l'est +sur le panneau d'affichage du secrétariat général, elle vient de fleurir au +DMA et au DI. La signer est un engagement moral de bonne conduite et de +confiance envers les responsables qui ont élaboré ces règles, elle rappelle en +outre de vrais points légaux, eux non spécifiques de l'ENS!
+Jacques Beigbeder
+Le mois dernier, on a vu comment se structurait un document long. Ce mois-ci, +on aborde les numérotations. Comme d'habitude, ces informations proviennent du +Lexique des règles typographiques en usage à l'Imprimerie nationale, +Imprimerie nationale, 1990.
+On ne colle jamais un numéro au nom qui +le suit : il faut laisser un espace, de préférence insécable*. De façon générale, un nombre ne doit jamais +être séparé du nom qu'il accompagne; il ne doit pas non plus être coupé en +deux, mais il vaut mieux détacher les centaines des milliers («285 000 +habitants», par exemple).
++Les numéros de téléphone se composent par groupes de deux chiffres séparés par +un blanc insécable*, sans points ni tirets; +l'abréviation correcte de «téléphone» est «Tél.». Par exemple :
++Tél. : 01 44 32 30 00 +
+Les abréviations sont les +suivantes : 1er, 1re, 2e, ce qui donne, +si on ne peut pas surélever la partie abrégée, 1er, 1re, 2e.
++On peut rencontrer des formes latines, comme Legio Septima Gemina, +que l'on abrège en Legio VIIa Gemina (ou +VIIa).
+On peut rencontrer parfois primo, secundo, tertio. Cela se lit primo, +secundo, tertio; le caractère surélevé est un petit «o» et +non un zéro; c'est la même chose pour n° (numéro).
++Les listes sont habituellement numérotées avec un chiffre suivi d'un point ou +d'un tiret : (1. ou 1-). Les bibliographies sont numérotées avec un +chiffre entre crochets ([1]).
+Les actes se numérotent en chiffres +romains grandes capitales; les scènes se numérotent en chiffres romains +petites capitales.
+On écrit les mois en toutes lettres («Le 14 +juillet 1789»), et sans majuscules, sauf dans les expressions consacrées («la +nuit du 4 Août»). On écrit les années sans abréger : «la guerre de +1939-1945», «les années 1940». On n'écrit jamais : «En 33, Hitler arrive +au pouvoir»; en 33, c'est Tibère qui est empereur.
++Les millénaires sont numérotés en chiffres romains grandes capitales : «le +IIIe millénaire commence en 2001.». Les siècles se composent en +chiffres romains petites capitales.
+Les armées, les calibres, les +arrondissements, sont numérotés en chiffres arabes. Les numéros des livres de +la Bible se composent en chiffres romains, grandes capitales. Les numéros de +manifestations (IVe concile du Latran, IIIe Salon du chocolat) sont +également numérotés en romain grandes capitales. Les régions militaires se +composent en chiffres romains.
+On nous demande régulièrement comment se connecter à l'École depuis le Grand
+Extérieur, par exemple pour lire son courrier. Pour cela, il faut utiliser le
+programme telnet
. Si vous êtes sur une machine Unix, il suffit de
+taper :
telnet galion.ens.fr
+
+ Vous pouvez vous connecter sur n'importe quelle machine de l'École
+(galion
, bireme
, brick
, etc.); il
+vaut mieux éviter de se connecter sur clipper
, pour ne pas
+le surcharger.
Si vous êtes sur un Mac, cherchez le telnet dans le lanceur. S'il n'y +est pas, allez dans le menu Pomme et utiliser «Recherche de fichiers» +pour le trouver.
+Si vous êtes sur un PC sous Windows, vous devriez trouver le telnet
+dans le menu «Démarrer». S'il n'y est pas, vous pouvez choisir «Exécuter»
+dans le menu «Démarrer», et taper telnet
. Vous pouvez aussi
+utiliser «Rechercher» dans le menu «Démarrer» pour trouver le programme.
+
Ensuite, vous indiquez le nom de la machine comme indiqué ci-dessus.
+La commande anniversaire
vous permet de connaître la date
+d'anniversaire d'une personne. Si vous tapez anniversaire
tout court,
+la commande affiche la liste des gens donc c'est l'anniversaire aujourd'hui.
+Vous pouvez aussi préciser votre demande avec des options pré-établies :
+
+anniversaire demain +anniversaire hier +anniversaire avant-hier +anniversaire apres-demain ++
+Vous aussi pouvez indiquer une date, sous la forme jj/mm
; par
+exemple, pour la liste des élèves nés un 12 avril, vous tapez :
anniversaire 12/04
+
+ +Enfin, vous pouvez indiquer explicitement le nom ou le prénom d'une personne. +
+ La base de données de anniversaire
est constituée à
+partir des fiches annuaires. Certaines personnes ont deux dates
+d'anniversaire : c'est que, d'une fiche à l'autre, elles ont donné des
+dates de naissance différentes...
+ Le cours Unix se divise en trois parties : «Concept», «Commande», +«Usage». Ce mois-ci, on achève l'étude des fichiers et des répertoires avec le +concept d'arborescence. La partie «Commande» concerne les répertoires (les +créer, les détruire, et se déplacer). Enfin, la partie «Usage» intéressera +ceux qui veulent utiliser la souris pour gérer leurs fichiers. +
+Une arborescence est une structure en +arbre, avec une racine, des noeuds, des branches et des feuilles. En première +approximation, le système de fichiers d'un ordinateur est organisé sur ce +modèle : les noeuds correspondent aux répertoires, et les feuilles aux +fichiers; par exemple :
++ +
++C'est sur ce modèle que l'on organise habituellement les données sur un +ordinateur : un répertoire pour ranger le courrier, un répertoire pour sa +page Web, un répertoire pour son DEA; ces répertoires contiennent à leur tour +des fichiers, et des sous-répertoires; par exemple, le répertoire «DEA» peut +contenir des sous-répertoires «bibliographie» et «Annexes».
+
+Il y a un seul chemin pour aller de la racine à un fichier recherché, si bien
+qu'on peut lui donner une «adresse», un «chemin d'accès».
+DEA/bibliographie/ref-BNF
désigne le fichier ref-BNF
placé
+dans le sous-répertoire bibliographie/
du répertoire DEA/
.
+
Sur un système Unix, les
+fichiers sont globalement organisés sur le modèle qui précède. La racine
+s'appelle /
(slash). Elle contient divers répertoires où
+sont répartis conventionnellement l'ensemble des fichiers. Ainsi, il existe un
+répertoire /users/
(à prononcer slash users) où se trouvent
+les comptes des utilisateurs; le répertoire /usr/
contient la plupart
+des programmes, le répertoire /tmp/
contient des fichiers
+temporaires, etc.
+ +
+
+Bien entendu, chacun de ces répertoires se subdivise en plusieurs répertoires.
+/users/
contient un répertoire pour chaque promotion
+(/users/92/
, /users/93/
, etc. Chacun de ces répertoires est
+ensuite divisés en maths/
, litt/
, bio/
, etc. Enfin
+viennent les comptes des utilisateurs, c'est-à-dire un répertoire par
+personne. Par exemple, Thomas Pornin est un informaticien de la promotion
+1994. Son compte se trouve à l'adresse suivante :
+/users/94/maths/pornin/
.
Quand vous vous loguez, vous
+vous retrouvez dans votre répertoire personnel (home directory), que
+l'on appelle «~
» (tilde). Pour Thomas, ~
c'est
+/users/94/maths/pornin/
, pour votre servante c'est
+/users/95/litt/robin/
.
+Ensuite, quand vous travaillez, vous vous déplacez dans vos sous-répertoires.
+On appelle «répertoire courant» ou «répertoire de travail» le répertoire dans
+lequel vous vous trouvez. Quand un membre du compte tuteurs
se logue,
+son répertoire courant est /users/staffs/tuteurs/
, ou ~
;
+quand il rédige Le Hublot, le répertoire courant est
+/users/staffs/tuteurs/hublot/
ou ~
/hublot/
.
+À partir de là, vous pouvez jouer avec les commandes qui donnent des
+renseignements sur l'adresse (ou chemin d'accès) des fichiers. La commande
+pwd
(print working directory) vous donne l'adresse complète,
+ou absolue, du répertoire dans lequel vous vous trouvez. La commande
+which
suivie d'un nom de commande vous indique où se trouve le
+programme en question; par exemple :
bireme ~ $ which pine /usr/local/util/bin/pine
+
+ cd
+ La dernière fois, nous avons vu la commande ls
, qui
+permet d'afficher le contenu d'un répertoire (fichiers et
+sous-répertoires). Ce mois-ci, on va voir plus précisément comment
+manipuler les répertoires.
Pour créer un
+répertoire, on utilise la commande mkdir
(make directory).
+Si par exemple vous voulez créer un répertoire appelé «Images», vous tapez
+mkdir Images
:
bireme ~ $> ls +Mail/ vocab vocab~ +bireme ~ $> mkdir Images +bireme ~ $> ls +Images/ Mail/ vocab vocab~ ++
Pour détruire un répertoire, il faut que celui-ci soit vide. Vous
+pouvez ensuite utiliser la commande rmdir
(remove
+directory) suivie du nom du répertoire à détruire :
bireme ~ $> ls +Images/ Mail/ vocab vocab~ +bireme ~ $> ls Images/ +bireme ~ $> rmdir Images +bireme ~ $> ls +Mail/ vocab vocab~ ++
On suppose que +vous avez l'arborescence suivante sur votre compte :
++ +
+
+C'est la commande cd
(change directory) qui permet de se
+déplacer dans les répertoires. Si vous voulez aller dans votre répertoire
+DEA/
, il suffit de taper «cd DEA/
». Par exemple :
+
bireme ~ $> ls +DEA/ Mail/ vocab vocab~ +bireme ~ $> cd DEA +bireme ~/DEA $> ls +notes rapport ++
Pour remonter, il faut savoir que le niveau au dessus (ou «répertoire
+père») s'appelle «..
» (point point). Si donc vous tapez
+cd ..
(avec un espace), vous remontez d'un niveau. Si vous
+tapez cd
tout court, vous revenez à l'origine de votre
+arborescence, c'est-à-dire dans ~
. Par exemple :
bireme ~/DEA $> cd +DEA/ Mail/ vocab vocab~ +bireme ~ $> ls +DEA/ Mail/ vocab vocab~ ++
+Exercice : pourquoi est-ce équivalent, dans cet exemple, de taper
+«cd
» tout court et «cd ..
» ?
+Pour en savoir plus, vous pouvez consulter le cours des tuteurs +sur les répertoires, et faire les exercices consacrés à ces commandes.
+Il est souvent plus rapide et plus efficace de connaître les commandes Unix
+qui servent à déplacer, renommer, copier, effacer, etc., les fichiers et les
+répertoires; mais certains utilisateurs sont habitués à effectuer ces
+opérations à la souris, avec une interface graphique*. Nous
+vous indiquons donc deux gestionnaires de fichiers à la souris, xfm
+et kfm
.
Pour lancer ces logiciels, il suffit de taper leur nom dans une
+fenêtre, en validant avec la touche Entrée
, bien sûr! Et
+veillez, comme avec tous les programmes, à les quitter correctement avec
+leur commande respective.
xfm
(X file
+manager)Il est efficace et rustique (avec un choix de +couleurs déplorable). Contrairement à l'habitude sous Unix, il faut +double-cliquer sur les icônes.
++ +
+Quand vous cliquez avec le bouton gauche sur un fichier, xfm
lance un
+éditeur dessus; le bouton droit vous permet d'effectuer certaines opérations
+sur le fichier.
Quand vous double-cliquez sur un répertoire, ce répertoire s'affiche. Pour
+remonter dans l'arborescence, cliquez sur le répertoire spécial appelé
+«point-point». Pour créer un nouveau répertoire, sélectionner New
+dans le menu Folder
.
Pour déplacer un fichier, il faut le sélectionner avec la souris (un
+cadre apparaît autour de l'icône) et le faire glisser dans le répertoire
+où on veut le mettre. Pour détruire un fichier, cliquez sur son icône
+avec le bouton droit, et choisissez Delete
(confirmation
+sera demandée). Vous pouvez aussi sélectionner le fichier avec le bouton
+gauche et sélectionner Delete
dans le menu
+File
. Le principe est le même pour renommer un fichier.
+
xfm
est gênant pour une raison: par défaut, sans configuration
+préalable, il ne sait qu'éditer un fichier; il ne sait donc pas lancer un visualisateur d'images*, par exemple, quand il a affaire à
+une image. En revanche, une fois configuré, il s'en sort très bien.
+ Pour quitter xfm
, cliquer sur File
,
+sélectionner Quit
et confirmer dans le cadre qui
+apparaît.
+
kfm
(KDE file manager)Il est très
+agréable et bien plus efficace. kfm
est un des éléments de
+l'interface graphique* KDE, qui donne à un PC sous
+Linux l'aspect d'un PC sous Windows (bouton «Commencer», gestion à la
+souris...).
+ +
+
+À la différence de xfm
, kfm
s'utilise avec un simple
+clic. Soyez patients! KDE est gourmand en mémoire, et il encombre le réseau,
+si bien que l'opération peut ne pas être instantanée; quand vous cliquez dans
+un menu ou sur une icône, surtout pas de double-clic, vous lanceriez deux fois
+la même opération/le même programme.
+Comme avec xfm
, on clique avec le bouton gauche de la souris,
+tandis que le bouton droit donne accès à d'autres fonctions. On déplace les
+fichiers et les répertoires de la même façon, en les sélectionnant avec la
+souris et en les faisant glisser. Vous pouvez de plus en sélectionner
+plusieurs à la fois avec la souris.
+Pour aller dans un répertoire, cliquez sur son icône. Pour remonter d'un
+niveau, cliquez sur la flèche vers le haut. Pour créer un répertoire, choisir
+New folder
en cliquant dans le menu File
ou dans le
+fond blanc.
+Pour toutes les opérations sur les fichiers, cliquez avec le bouton de droite +sur l'icône du fichier et choisir ce que l'on désire (copier, détruire, +déplacer). Vous pouvez aussi éditer les propriétés du fichier pour changer son +nom et ses permissions.
+kfm
lance les programmes correspondant à chacun des types de
+fichiers (un éditeur pour un fichier de texte, un visualisateur d'images* pour une image, etc). Il affiche
+lui-même les fichiers HTML.
+Si vous voulez utiliser un programme spécial (par exemple : écrire avec
+xemacs
plutôt que kedit
, regarder les images avec
+xv
plutôt que kview
), il suffit de cliquer avec le bouton
+droit sur l'icône du fichier, sélectionner Open with
et indiquer le
+nom du programme à utiliser.
Pour quitter kfm
, cliquer sur Close
+dans le menu File
. Attention, kfm
est
+un gestionnaire de fichiers intégré : Close
ferme la
+fenêtre du gestionnaire, mais les icônes cliquables
+Templates
, AutoStart
, etc. (en haut à gauche de
+l'écran), ne disparaissent pas. Pour terminer, tapez ^C
+(Control-C) dans la fenêtre où vous avez lancé le programme.
+La dernière fois, on a vu que les ordinateurs gagnaient à être mis en réseau +pour échanger plus rapidement et plus efficacement les données, à la façon du +télégraphe au XIXe siècle.
++Il existe deux types de réseaux : les réseaux par paquets et les réseaux +par circuits. Le premier type est celui du Morse décrit dans le numéro +précédent : chaque information est un message qui transite de centre de +tri en centre de tri, suivant l'adresse du destinataire; personne ne s'occupe +de l'intégralité de la transmission, et tout problème est par essence local. +
+Le deuxième type de réseau est celui du téléphone : un rendez-vous est +pris entre les deux parties, une communication physique est établie jusqu'à ce +que l'un des deux raccroche.
++Ces deux types de réseaux ont des avantages et des inconvénients opposés. +Essentiellement :
+Actuellement, France Telecom +utilise des réseaux par paquets pour toutes les communications nationales. En +effet, les possibilités de réutilisation de la bande passante et de résistance +aux pannes sont très appréciables; les caractéristiques habituelles en +téléphonie (conversation continue, pas de perte de son) sont assurées par des +protocoles de plus haut niveau, qui tentent de rétablir des garanties de +débit, de corriger les erreurs, enfin bref de faire au mieux. C'est une +émulation de réseau par circuits, par dessus un réseau par paquets (et, +bizarrement, ça marche).
+Thomas Pornin
+
+Figure 1 : Réseau par paquets reliant A à B
+Les textes de référence sur la Netiquette («communiquer avec courtoisie sur +Internet») sont La Netiquette : premiers éléments, par Corinne Gacon, et la RFC 1855. +
++Ce mois-ci, on va voir un aspect technique de la Nétiquette, concernant les +pages Web.
++Lors de l'écriture d'une page Web, la Netiquette peut se résumer à un principe +très simple. On veut une page qui soit :
++Quand on regarde plus en +détail, il y a trois points auxquels il faut faire attention.
+Oui, d'accord, +c'est beau de mettre des couleurs, que ce soit du rose et du vert fluo pour +une page vivante, ou des couleurs sombres pour donner à votre page un look +d'enfer. Mais avez-vous déja essayé de lire un texte un peu long écrit en +rouge sur fond noir? Cela donne en général assez vite des envies de meurtre +contre l'auteur de la page en question. LE principe de base est d'avoir un bon +contraste entre la couleur de fond et la couleur du texte. Texte clair sur +fond sombre ou l'inverse, à vous de choisir... Les couleurs intermédiaires +comme le rouge ne sont donc en pratique jamais vraiment utilisables, car trop +proches du noir et du blanc.
++Ensuite, quand vous redéfinissez une couleur, par exemple la couleur du texte, +redéfinissez les TOUTES, y compris les couleurs pour afficher les liens. Comme +chaque utilisateur peut configurer à sa guise les couleurs par défaut, si vous +changez juste le fond d'écran pour le mettre blanc au lieu de gris clair, +quelqu'un qui a pris comme couleurs par défaut blanc sur noir se retrouvera +avec un joli texte blanc sur blanc...
++Cela s'applique aux fonds d'écran, mais avec quelques détails en plus. En +premier lieu, un fond d'écran peut être dans l'ensemble assez clair, mais avec +des zones sombres qui rendront illisibles les bouts de texte qui se retrouvent +dessus. Et comme les images ne sont pas forcément affichées avec assez de +couleurs, les fonds d'écran peuvent subir un tramage qui va introduire des +points noirs qui deviennent à la longue assez désagréables. Pensez aussi, +quand vous mettez une image de fond, à spécifier comme couleur de fond la +couleur dominante de l'image en question, afin que ceux qui ne chargent pas +les images dans leur navigateur aient quand même les bonnes couleurs.
+
+Un dernier point : évitez à tout prix la balise <BLINK>ça
+clignote</BLINK>
, que je soupçonne d'avoir été créé sous la
+pression du lobby des opticiens...
Quand quelqu'un regarde une page Web, +il ne télécharge pas toujours les images qui sont présentes dessus, +principalement pour deux raisons :
+links
par exemple).Dans ce cas, le lecteur appréciera de
+savoir ce que représentent les images sans avoir à les charger : c'est là
+le but du champ ALT
dans la déclaration d'une image en HTML. Ce
+champ est trop souvent ignoré, alors que les spécifications du language HTML
+précisent bien qu'il est obligatoire.
+Évitez également de mettre des grosses images sur les pages qui ne sont pas
+explicitement désignées comme pages d'images. Si vous voulez inclure des
+images de taille importante, mieux vaut les regrouper dans une page sur
+laquelle n'iront que les personnes spécifiquement intéressées par les images
+en question; ou mieux, mettez dans votre page des versions réduites des images
+en question, très faciles à créer avec xv
ou gimp
,
+sur lesquelles vous placerez des liens vres les images en question.
En plus des balises +spécifiées dans le standard HTML, il en existe d'autres, qui ont été en +général introduites par Netscape ou Internet Explorer, et qui ne sont +reconnues que par le navigateur en question. Ces balises sont bien sûr à +éviter, parce qu'elles rendent la page prévue pour un navigateur particulier. +
++C'est ce qui se passe dans les pages affichant un logo comme «Optimisé pour +Netscape» ou «Best viewed with I.E.», et leur structure a aussi été étudiée en +tenant compte des particularités du navigateur pour obtenir un affichage bien +précis. Cela est totalement contraire au principe du HTML, qui veut qu'un +document soit parfaitement lisible quel que soit le navigateur utilisé.
++En réaction à cela, il est apparu sur le Web en 1996 la campage «Best viewed +with any browser», «Visible avec n'importe quel navigateur», à laquelle je ne +peux que vous recommander de participer... La page de la campagne, avec tous +les détails, se trouve sur : Viewable With Any +Browser. Campaign for a Non-Browser Specific WWW.
+Gilles Radenne
+
+Figure 3 : Exemples de logos de la campagne «anybrowser»
On mesure en bauds le +débit des modems. Grosso-modo, 1 baud équivaut à 1 bit par seconde. +Les modems actuels peuvent monter à 57 600 bauds, mais c'est rare (il +faut des lignes téléphoniques de très bonne qualité). Couramment, on fait du +28 800 bauds. Comme 8 bits font un octet (c'est-à-dire un +caractère), un modem courant fait du 3 600 caractères à la seconde, soit +environ 3,5 Ko.
+C'est un +espace spécial qui, placé entre une ponctuation et un mot, empêche le mot et +la ponctuation d'être séparés par un retour à la ligne.
++L'interface est ce qui permet la communication entre l'ordinateur et +l'utilisateur. Avec une interface graphique, un «geste» informatique +(déplacer un fichier, lancer un logiciel) correspond à un «geste» +physique (faire glisser une icône, cliquer sur un bouton qui représente +le logiciel).
++On utilise les ressources du graphisme pour ordonner le travail, par +exemple : une fenêtre pour chaque logiciel, une couleur pour ce qui est +activé et une autre pour ce qui n'est pas activé, une thématique pour chaque +icône, permettant de retrouver rapidement la fonction du logiciel (comme +papier et crayon pour un traitement de texte, palette pour un logiciel de +dessin, etc.).
+C'est un système électronique qui permet de +connecter un ordinateur au réseau téléphonique, pour lui donner accès à +l'Internet.
+ Un visualisateur d'images est un
+logiciel capable d'afficher des images. Sur les stations Sun, nous
+utilisons xv
. Un visualisateur d'images inclut le plus
+souvent des fonctions de retouche (agrandir, convertir en un autre
+format, etc.).
+ +
+chmod
+ Stage informatique les 3, 4 et 5 mars 2000 | +|
---|---|
Stage pratique | +Les sessions suivantes sont prévues : introduction +aux stations (pour ceux qui n'ont pas pu suivre le stage de rentrée), faire sa +page Web (débutants et habitués), LATEX, +création graphique sur les stations, utilisation courante d'Unix (enchaîner +des commandes, chercher des mots, etc). | +
Conférence | +Une conférence aura lieu le samedi 4 mars sur le +thème suivant : qui décide des standards sur Internet, comment est-il +régulé. | +
Pour s'inscrire : des formulaires seront +déposés dans les salles informatiques et près des casiers. Pour tous les +détails, voir en dernière page du Hublot. | +
+ Pour toutes questions, idées d'articles, etc, n'hésitez pas à nous +écrire : tuteurs@clipper. +Vous pouvez aussi mettre un mot dans le casier d'Émilia Robin. Certaines +pages de notre site sont +indiquées dans les articles; suivez les liens pour vous y reporter. Vous +pouvez aussi consulter les anciens numéros du +Hublot. +
++Le mois dernier, on a vu les conventions pour les numérotations. Ce mois-ci, +on va aborder en détail la ponctuation. Comme d'habitude, ces informations +proviennent du Lexique des règles typographiques en usage à l'Imprimerie +nationale, Imprimerie nationale, 1990.
+Il n'est pas +inutile de rappeler le nom de certaines ponctuations qui figurent sur les +claviers d'ordinateur, même si pour la plupart elles n'ont pas à figurer dans +un document sérieux comme un mémoire.
+
+
+ /
+
+ |
+ Slash ou «barre oblique vers la droite». Il arrive qu'on le +recontre, par exemple dans «et/ou». | +
+
+ \
+
+ |
+ Backslash, ou antislash, ou «barre oblique vers la +gauche». | +
+
+ _
+
+ |
+ Underscore ou «trait de soulignement», ou «souligné» tout +court. | +
+
+ @
+
+ |
+ Arobase. | +
+
+ |
+
+ |
+ Pipe (prononcer à l'anglaise), ou «barre verticale». | +
+Ces caractères n'ont rien à faire dans un mémoire, hors contexte informatique +(URL, adresses, etc). +
+
+Le &
(E commercial ou esperluette; ampersand en
+anglais) est n'est utilisé que pour les raisons sociales, comme
+«Marius & Fils». Il est à proscrire hors de ce contexte.
On met un espace après toutes les ponctuations. Les +ponctuations sont précédées, selon le cas, d'une espace complète, d'une +espace fine ou d'aucune espace. Dans tous les cas, l'espace qui précède +la ponctuation est insécable (voir le n° 2 du +Hublot pour savoir comment les taper).
++Dans la version en LaTeX +du Hublot, il n'y a aucun problème pour afficher des espaces fines... +Mais dans la version HTML, on ne peut pas.
++Au passage, signalons qu'en typographie, le mot «espace» est théoriquement +féminin; la plupart du temps, on ne féminise que «espace fine».
++Le point et la virgule ne sont précédés d'aucun espace. +
++Le point-virgule, le point d'exclamation et le point d'interrogation sont +précédés d'une espace fine (demi-espace); si le traitement de texte n'en est +pas capable, il faut choisir entre pas d'espace ou un espace complet +(insécable), et adopter la même disposition dans tout le texte.
++Le deux-points et le guillemet fermant sont précédés d'un espace complet. Le +guillemet ouvrant est suivi d'un espace. Le trait d'incise est précédé et +suivi d'un espace complet. On ne met pas d'espace à l'intérieur des +parenthèses et des crochets.
++On rappelle les guillemets français sont « et » (et non " ou `` et ''); pour +savoir comment taper les guillemets français sur un clavier américain, voir le +n° 2 du +Hublot. D'autre part, il ne faut pas confondre le trait d'union, le +tiret (dans un intervalle) et le trait d'incise.
++Encore une fois, dans la version en LaTeX du Hublot, on peut +montrer la différence. En HTML, non.
+Les listes sont +un recours visuel pour présenter de façon claire une énumération. La plupart +du temps, les termes énumérés font partie d'une même phrase : «Nous avons +invité ma mère, ma cousine et mon grand-oncle.»; c'est pour respecter cette +unité grammaticale que les éléments d'une liste sont terminés par une virgule +et que seul le dernier élément se termine par un point :
++Si les éléments sont un peu longs, on remplace les virgules par des +points-virgules :
++Quand les éléments deviennent trop longs et que l'on perd de vue l'unité +sous-jacente, les points sont autorisés pour conclure chaque élément. On met +des majuscules au début des éléments quand les listes sont numérotées. La +minuscule n'est de règle qu'avec les listes à tirets.
++On nous demande très souvent comment lire un fichier Word reçu par courrier +électronique. Vous pouvez le transférer sur un Mac ou un PC sous Windows +(via FTP ou disquette) pour le lire avec Word; cela a l'inconvénient +de devoir changer de machine voire de salle.
+ Il existe une autre
+solution, la suite bureautique ApplixWare, installée sur les stations Sun, qui
+comporte un traitement de texte. Elle se lance par la commande
+asterix
. Après l'avoir tapée (Cela peut prendre quelque temps,
+surtout si vous êtes dans une autre salle que la salle S), vous devriez
+voir apparaître une petite fenêtre, avec le logo ApplixWare, quelques menus,
+et surtout cinq boutons.
+
+ +
++Ces boutons permettent de lancer les divers logiciels de la suite, dans +l'ordre : le traitement de texte (ce qui nous intéresse ici), le logiciel +de dessin, le tableur, l'outil de courrier (à ne jamais utiliser), et +l'interface pour base de données. Pour lancer le traitement de texte, cliquer +(une seule fois!) sur le bouton de gauche.
+
+Pour quitter le logiciel, sélectionner Exit
dans le menu
+File
; n'oubliez pas, après avoir quitté le traitement de texte,
+de quitter également le lanceur.
On se retrouve avec
+une fenêtre de traitement de texte, très similaire à celle de Word, avec un
+fonctionnement similaire et une interface assez proche. Asterix utilise un
+format de fichier qui lui est propre, avec comme extension .aw
+(comme ApplixWare). La
+commande Open
du menu File
sert à ouvrir des
+fichiers au format .aw
.
+Pour lire un fichier d'un autre format, utilisez la commande
+Import
du menu File
.Une fenêtre s'ouvre, vous
+montrant le contenu de votre répertoire; cliquez sur le fichier à ouvrir. Si
+tout va bien, ApplixWare reconnaîtra le format du fichier, affichera
+éventuellement quelques informations sur ce qu'il fait et sur le fichier qu'il
+traite, et pour finir vous pourrez admirer votre superbe document...
ApplixWare connaît +divers formats, dont le HTML, le RTF, divers formats texte, WordPerfect +(jusque WordPerfect 7) et Word (jusque Word 97). Mais il ne connaît +que des formats propres : un format à moitié corrompu pour cause +de «sauvegarde rapide» est illisible... et vous ne pourrez pas ouvrir le +document.
++Mettez-vous donc d'accord avec votre correspondant pour qu'il vous envoie un +format propre, sans sauvegarde rapide, et de préférence un format standard, +comme le RTF.
+
+Asterix sait également «exporter» un fichier dans un autre format que le sien;
+pour cela, utilisez la commande Export
dans le menu File.
Des changements peuvent +survenir par rapport à l'original, pour des raisons complexes et souvent +obscures. Les accents peuvent avoir été remplacés par des points +d'interrogation, surtout si le fichier provient d'un Mac. Si le document +comporte des fontes que Asterix ne connaît pas, il les remplace par une fonte +standard.
++Le gras, l'italique et le souligné sur de telles fontes peuvent parfois +disparaître, vu que ces attributs sont considérés par Word ou Asterix comme +des variations sur les fontes. En revanche, tous les attributs de mise en page +(justification, centrage, marges variables, taille de caractère) sont +conservés.
+ Pour imprimer, sélectionnez
+Print
dans le menu File
. Le nom de l'imprimante
+sélectionnée est indiqué en vidéo inverse. Vous pouvez aussi cliquer sur le
+bouton en forme d'imprimante.
+Vous pouvez aussi vouloir créer un fichier PostScript, sans imprimer
+immédiatement. Pour cela, sélectionnez PostScript
dans la liste
+des imprimantes. Vérifiez le nom du fichier et son emplacement dans le cadre
+File Name
; par défaut, ApplixWare range les fichiers qu'il crée
+dans un répertoire axhome
, installé sur votre compte la première
+fois que vous lancez le logiciel.
+Vous obtenez un fichier PostScript, reconnaissable à son suffixe
+.ps
. Pour regarder un fichier PostScript, utilisez la commande
+gv
(voir le numéro 1 du Hublot). Pour l'imprimer,
+utilisez la commande lpr
.
Maintenant vous savez ouvrir
+un fichier Word... mais on vient de vous envoyer un fichier Excel. Hé bien, La
+marche à suivre pour l'ouvrir est exactement la même, sauf qu'il faut cliquer
+sur le bouton du tableur dans le lanceur de départ (bouton du milieu du
+lanceur). Le tableur est capable d'importer des fichiers .xls
.
+Mais n'ayant pas fait d'essais là-dessus, je ne sais pas ce qui passe
+correctement.
Gilles Radenne
+
+Deux commandes donnent accès à des dictionnaires en ligne. La première est
+webster
; elle interroge un dictionnaire anglais (disponible à
+l'adresse suivante : www.m-w.com/; Merriam-Webster Online):
vedette ~ $ webster eyebrow
+eye-brow [0xF5]^--,brau. n
+(15c)
+:the ridge over the eye or hair growing on it
+
+
+La commande hachette
interroge un dictionnaire français :
vedette-~ $ hachette anticonstitutionnellement
+anticonstitutionnel, elle adj. Contraire à la Constitution.
+
+anticonstitutionnellement adv. De manière contraire à la constitution, à
+ses principes. [Ce mot passe pour être le plus long de la langue
+française.]
+
+© Hachette Multimédia / Hachette Livre
+
+ + Le cours Unix se divise en trois parties : «Concept», «Commande», +«Usage». Ce mois-ci, on va parler des droits, c'est-à-dire de ce que les +utilisateurs ont le droit de faire avec leurs fichiers et ceux des autres. La +partie «Commande» explique comment on modifie les droits, et la partie «Usage» +parle de déontologie... +
+Nous avons vu dans le numéro 1 du Hublot qu'Unix est un système +multi-utilisateurs : +les utilisateurs sont individualisés, ils ont chacun un compte auquel ils +accèdent par un mot de passe. Chacun a le droit de faire ce qu'il veut sur son +compte, mais il n'a pas le droit de modifier les fichiers des autres +utilisateurs. C'est cette question des droits (ou permissions) que l'on va +aborder dans ce numéro.
+Sous Unix, on distingue +trois sortes de droits : le droit de lecture, le droit d'écriture, et le +droit d'exécution. Lire un fichier, c'est en prendre connaissance. Écrire dans +un fichier, c'est pouvoir le modifier. Le droit d'exécution ne concerne que +les programmes (aussi appelés, de ce fait, «exécutables»).
++Un fichier a toujours un propriétaire, qui est, en règle +générale, la personne qui l'a créé. Le propriétaire d'un fichier est le seul à +pouvoir tout faire avec ce fichier. Lui seul peut l'effacer, et lui seul +choisit qui a le droit de lire le fichier, de l'exécuter ou de le modifier. +
++On distingue donc différentes catégories d'utilisateurs, qui sont :
+litt95
,
+bio99
, math94
...);+Les autres utilisateurs n'ont le droit de faire que ce que le propriétaire +autorise. Un seul utilisateur a le droit de tout faire, et d'accéder à tous +les fichiers : c'est root, le super-utilisateur, +l'administrateur du système.
+ Pour savoir quels sont
+les droits d'un fichier, on utilise la commande ls
(voir
+numéro 2) avec l'option -l
. Les lignes affichées commencent
+toutes par quelque chose comme :
-rw-r--r--
+
+ +Ce sont ces caractères qui renseignent sur les droits. Le premier caractère +donne le type du fichier; ici, comme rien n'est dit, c'est un fichier normal +(donc pas un répertoire par exemple).
+
+Ensuite, vous avez trois séries de lettres : rwxrwxrwx
. Si
+on lit la lettre, c'est que le droit est donné, si on voit un tiret à la
+place, c'est que le droit n'est pas attribué :
r
c'est read
+(droit de lecture), w
c'est write (droit d'écriture),
+x
c'est execute (droit d'exécution). rwx
+indique les droits du propriétaire du fichier, le deuxième les droits de son
+groupe, le troisième les droits de tous les autres
+utilisateurs.
+On apprend donc que le propriétaire de ce fichier a le droit de le lire et de
+le modifier (rw-
); quand à tous les autres utilisateurs, groupe
+inclus, ils ne peuvent que lire le fichier (r--r--
). Ce sont là
+les droits d'un fichier normal. Voici comment ils sont affichés avec
+kfm
(voir n° 3 du
+Hublot) :
+ +
++Les droits habituels d'un répertoire sont les suivants : +
+drwxr-xr-x
+
+
+Le d
indique qu'il s'agit d'un répertoire (directory).
+Lire un répertoire, c'est pouvoir afficher son contenu; exécuter un
+répertoire, c'est pouvoir aller dedans.
chmod
+
+La commande chmod
(change mode) sert à modifier les
+droits d'un fichier, de la manière suivante :
chmod droits fichier
+
+ +Elle a deux syntaxes différentes, le mode symbolique et le mode octal. On ne +va parler ici que du mode symbolique.
++Des caractères désignent successivement l'utilisateur, l'opération à effectuer +et le droit considéré, suivant ce tableau :
+Utilisateur | +Action | +Droit | +
---|---|---|
u (user) |
+ + (ajouter) |
+ r (read) |
+
g (group) |
+ - (retirer) |
+ w (write) |
+
o (others) |
+ + | x (execute) |
+
+Ainsi, la commande suivante sert à rendre exécutable le fichier
+boprogramme
, pour son propriétaire :
chmod u+x boprogramme
+
+
+Ses droits étaient -rw-r--r--
, ils sont désormais
+-rwxr--r--
.
+Ou encore, celle-ci sert à interdire la lecture du fichier secret
+à tous les autres utilisateurs, groupe inclus :
chmod go-r secret
+
+
+Ses droits étaient -rw--r--r--
, ils sont maintenant les
+suivants : -rw-----
.
+Nous avons dit que, par défaut, tous les fichiers étaient lisibles par tout le +monde, à l'exception du courrier électronique et de quelques autres. Autrement +dit, tout le monde peut aller lire votre maîtrise ou vos programmes. +Cependant, cette possibilité technique ne doit pas être considérée comme un +incitation aux indiscrétions. La charte signée en début d'année est claire sur +ce point (paragraphe 2.4) :
++++Tout utilisateur est responsable, pour ses fichiers et répertoires, des droits +de lecture et de modification qu'il donne aux autres utilisateurs. En outre, +il est interdit de prendre connaissance d'informations détenues par d'autres +utilisateurs, quand bien même ceux-ci ne les auraient pas explicitement +protégées. +
+
+Le débat est toujours ouvert : faut-il être complètement paranoïaque, et +interdire complètement l'accès à son compte, y compris pour des données non +confidentielles? Ou alors faut-il conserver une certaine transparence et +n'interdire en lecture que ce qui est strictement privé, comme le courrier +électronique?
++C'est une question de responsabilité personnelle. Si vous préférez interdire +tout regard extérieur sur votre compte, vous êtes libre de le faire; la +commande est la suivante (en mode octal) :
+chmod 700 ~
+
+ ~
(tilde) c'est votre compte, 700
équivaut en gros à
+go-rwx
. Aucun de vos fichiers ne sera visible pour qui que ce
+soit, sauf vous; cela inclut votre page Web... Il faut cependant savoir que,
+en cas de problème, les tuteurs et les gourous ne vous seront d'aucune aide.
+Il faudra aller voir l'administrateur-système.
+Il vaut donc mieux ranger dans un répertoire spécial tout ce qui est
+confidentiel, et interdire l'accès à ce répertoire. Vous pouvez aussi réunir
+dans un répertoire tout ce que vous considérez comme public (texte d'une
+pétition, oeuvre commune, etc). Ce répertoire est ordinairement appelé
+Public/
, ou pub/
. Ou encore, vous vous contentez
+d'interdire en lecture tout ce que vous considérez comme personnel, en
+laissant le reste ouvert.
+ Dans cette section, vous trouverez la suite du cours de Thomas sur les +réseaux. La section Nétiquette est désormais remplacée par un cours progressif +sur l'utilisation de Netscape. Ce mois-ci, on parle de choses très +simples : lancer et quitter Netscape. Dans les numéros suivants, on +abordera la navigation, la gestion des marque-pages, le téléchargement de +documents et l'utilisation des moteurs de recherche. +
+
+Figure 1 : Réseau ethernet par câble coaxial
+Le mois dernier, on a vu comment on pouvait transmettre les données : +soit à la façon d'une communication téléphonique (réseau par circuits), soit à +la façon d'un télégramme (réseau par paquets). Ce mois-ci, on va voir comment +un réseau s'organise physiquement entre les ordinateurs.
+Pour +connecter deux ordinateurs, il faut tout d'abord pouvoir représenter +les 0 et les 1 sur un médium adapté. Actuellement, on utilise +principalement les méthodes suivantes :
+Le cas d'un modem +ne pose pas de problème, car c'est une communication point à point sur une +ligne réservée (aucun encombrement). En revanche, dans un réseau local, on +veut connecter plusieurs machines, éventuellement beaucoup, et on ne désire +pas tendre un câble pour chaque paire de machines. L'idée est donc de se +partager un conducteur commun, ce qu'on appelle d'habitude un bus. +Ensuite, il faut décider comment partager ce bus entre les différents +ordinateurs connectés dessus.
++En token-ring, un jeton (token) est transmis de station à +station; c'est le droit de parole. Chaque station ne peut conserver le jeton +que pendant un temps maximal donné, mais peut le relâcher immédiatement si +elle n'a rien à dire.
+En ethernet, +la méthode est plus simple qu'en token-ring : quand une station veut +émettre un message, elle espionne le bus jusqu'au moment où il se libère (plus +personne ne parle pendant un très court instant); elle prend alors la parole, +d'autorité. Ce faisant, elle continue d'espionner le bus, pour voir si la +communication passe bien; si elle est brouillée, c'est qu'une autre station a +eu la même idée en même temps. Dans ce cas, la station (et l'autre aussi, car +elle est également brouillée) s'arrête, attend un temps aléatoire, et +recommence. Avec une bonne probabilité, l'autre station a attendu un temps +aléatoire différent, et les deux messages partent sans brouillage. Après un +certain nombre d'essais infructueux, avec des délais de plus en plus grands, +le message est considéré comme n'ayant pas pu passer, c'est ce qu'on appelle +une collision.
++Bizarrement, l'ethernet est très efficace, et partage très correctement la +bande passante, même quand le bus est chargé. Il a l'avantage d'être très +décentralisé : aucune station n'a besoin de savoir qui, au juste, est +présent sur le bus, et une station éteinte n'empêche pas la communication. Son +défaut principal est l'absence de garantie de débit, chaque station se +contentant de faire au mieux, au lieu de faire bien.
++L'ethernet se pratiquait sur des câbles coaxiaux (façon câble d'antenne de +télévision), passant par toutes les stations et terminés aux deux bouts par +des résistances, avec une longueur maximale de 185 mètres (ou +550 mètres si on emploie du gros câble blindé, traditionnellement jaune). +Cette méthode a l'inconvénient d'occasionner une coupure du câble quand on +rajoute une nouvelle prise; et il n'est pas toujours facile de faire passer le +même câble par toutes les stations, suivant leur disposition.
++Maintenant, on établit des structures arborescentes : chaque station est +reliée, par un câble personnel, à un hub, une sorte de multiprise +amplifiée. Les hubs sont reliés entre eux via des câbles similaires; chaque +hub reproduit sur toutes les autres prises ce qu'il reçoit sur chacune +d'elles. On peut brancher une nouvelle machine sans perturber le +fonctionnement, et on peut plus facilement relier des machines distantes.
+Thomas Pornin
++Figure 2 : +Réseau ethernet arborescent (RJ45)
++Netscape est un logiciel qui sert à regarder les pages Web, codées dans un +langage appelé HTML (hypertext markup language). C'est ce qu'on +appelle un browser en anglais; en français, on dit le plus souvent +«navigateur», mais on rencontre aussi brouteur, fureteur, butineur... Par +pitié, ne confondez pas «Internet» et un logiciel donné! Le Web est un aspect +de l'Internet, mais Internet c'est aussi le courrier électronique, les +connexions à distance, le transfert de fichiers, etc. Et Netscape est un +logiciel particulier utilisé pour un aspect particulier d'Internet. Donc pas +de «Tiens, je ne connais pas cette version d'Internet»...
++J'ai utilisé Netscape 3 pour ce cours; Netscape 4 est également +installé sur les stations; les menus diffèrent légèrement.
+Avec la configuration +des conscrits, il suffit de cliquer sur le bouton «Web» (qui porte d'ailleurs +le logo de Netscape). Vous pouvez aussi choisir «Netscape» dans le sous-menu +«Utilitaires» du menu du fond d'écran (cliquer avec le bouton droit dans le +fond de l'écran). Attention, pas de double-clic...
+
+Netscape peut aussi se lancer au clavier : tapez netscape
+dans une fenêtre. Cette méthode est plus rapide quand vous voulez aller à une
+adresse précise; par exemple :
vedette ~ $ netscape www.bnf.fr
+
+ +Netscape se lance et affiche immédiatement la page d'accueil de la BNF.
++C'est le même principe quand vous voulez regarder un fichier HTML sur votre +compte. Il suffit de taper Netscape suivi du nom du fichier à afficher : +
+vedette ~ $ netscape cv.html
+
+ Il y a une seule et
+unique façon de quitter Netscape, c'est de sélectionner Exit
dans
+le menu File
, ou d'utiliser le raccourci clavier indiqué. Vous ne
+devez donc pas utiliser le menu de la fenêtre, ou vous déloguer sans avoir
+quitté le logiciel.
+ +
++Si cela vous arrive, vous ne pourrez pas lancer Netscape la fois +suivante : il vous dira qu'un fichier de lock existe; tant que ce fichier +n'aura pas été détruit, le message réapparaîtra. Si vous cliquez sur «OK», +vous passez outre l'avertissement, mais c'est tout.
+
+Le fichier à détruire se trouve avec tous les fichiers de configuration de
+Netscape, dans un répertoire caché appelé .netscape/
. Pour
+détruire le fichier, tapez la commande suivante :
vedette ~ $ rm .netscape/lock
+
+ +C'est quand même plus simple de prendre de bonnes habitudes...
+File
Explorons un
+peu mieux ce menu File
. Disons-le d'emblée : nous vous
+déconseillons fortement de lire votre courrier avec Netscape; en effet, il va
+déplacer votre courrier, et vous ne pourrez plus le lire qu'avec Netscape, à
+l'exclusion de pine
ou mutt
. D'autre part, Netscape
+envoie le courrier en un double format, un format texte simple lisible, et un
+format en HTML parfaitement illisible, ce qui encombre le réseau pour rien et
+gêne votre correspondant. Oubliez donc tout de suite les lignes New Mail
+message
et Mail document
...
+En revanche, New Web Browser
est très intéressant : c'est
+lui qui vous permet de lancer autant de fois Netscape que vous le voulez. Si
+vous lancez deux fois Netscape, par exemple en double-cliquant, vous
+rencontrez des problèmes de lock; le premier Netscape est le seul à pouvoir
+accéder à vos marque-pages, à l'historique des pages visitées, etc. En outre,
+cela lance deux fois le même programme, qui consomme donc deux fois plus de
+puissance sur la machine.
+Par contre, New Web Browser
vous permet de lancer plusieurs
+fenêtres Netscape, tout en lançant une seule fois le programme. Vous partagez
+également les marque-pages et autres. Petite astuce : quand vous avez
+plusieurs fenêtres Netscape à la fois, il faut sélectionner Close
+pour fermer une fenêtre, et non pas Exit
: Exit
ferme
+le programme, donc toutes les fenêtres...
+ +
+Open Location
affiche un petit cadre dans lequel vous pouvez
+taper l'adresse d'une page. Open File
vous permet d'afficher un
+fichier HTML présent sur votre compte. Save As
permet de
+récupérer sur votre compte le document que vous êtes en train de regarder.
+Print
permet d'imprimer la page.
Un stage informatique est organisé du vendredi 3 mars au dimanche +5 mars 2000. sur le site d'Ulm. Le stage se déroulera majoritairement en +salle S. Pour les images, il se peut que le groupe aille en salle +du 46, à cause du scanner.
+Horaire | +Thème | +Public | +
---|---|---|
+ +3 mars, 20h00 | +Utiliser les stations | +Tous ceux qui n'ont pas suivi de stage de +rentrée, ou ont besoin de réviser les bases de l'utilisation (souris, +fenêtres, menus, commandes élémentaires, programmes courants...). | +
4 mars, 9h00 | +Faire sa page Web | +Introduction au langage HTML pour ceux qui ne +le connaissent pas. | +
4 mars, 17h00 | +Faire sa page Web | +Suite du matin; perfectionnement (images, +couleurs, liens internes, tableaux...). | +
5 mars, 9h00 | +Images | +Retouche et création d'images avec le logiciel
+gimp . |
+
5 mars, 14h00 | +LATEX | +Deux niveaux différents : grands +débutants, et recyclage. Préciser votre niveau et vos attentes. | +
5 mars, 20h00 | +Unix | +Pour ceux qui connaissent les commandes de base +(créer, déplacer, détruire, renommer) et savent se servir d'un éditeur, et qui +veulent en savoir davantage (commandes de recherche, enchaîner des commandes, +scripts élémentaires, etc). | +
+Pour s'inscrire, envoyer un courrier aux tuteurs
+(tuteurs@clipper
), ou mettre un mot dans le casier d'Émilia
+Robin. Merci de préciser à quelles sessions vous voulez participer, et
+d'indiquer votre niveau.
Une conférence sera également prononcée par David Madore le samedi +après-midi (salle et heure à fixer), sur le sujet suivant :
+++Internet est un immense réseau d'ordinateurs, qui communiquent entre eux, et +qui communiquent avec des humains. Or pour communiquer, il faut une langue +commune : ces langages de l'Internet s'appellent les «protocoles», et ils +sont définis dans des «standards» qui en déterminent la grammaire et l'usage. +
++À travers un exemple simple (téléchargement d'une page en HTML sur le World +Wide Web), nous tenterons d'expliquer, pour chacun des protocoles mis en jeu, +comment il s'est élaboré historiquement, quels organismes ont autorité +normative dessus, et en somme «qui a décidé qu'on parlerait ainsi et pas +autrement».
+
+C'est une conférence tout public, qui ne demande pas de connaissance +particulière en informatique (si ce n'est d'avoir déjà utilisé Netscape!). +
+ ++ +
+ps
, top
et
+priorités
+ + Pour toutes questions, idées d'articles, etc, n'hésitez pas à nous +écrire : tuteurs@clipper.ens.fr. Vous pouvez +aussi mettre un mot dans le casier d'Émilia Robin. Certaines pages de notre site sont indiquées dans les +articles; suivez les liens pour vous y reporter. Certains mots sont suivis +d'un astérisque*; ils renvoient au lexique en fin de numéro. Vous pouvez +retrouver les anciens numéros du Hublot sur notre site : Le Hublot Online. +Dans ce numéro : +
++Le mois dernier, on a étudié l'espacement à laisser autour des ponctuations. +Ce mois-ci, on va aborder la façon de faire les citations. Comme d'habitude, +ces informations proviennent du Lexique des règles typographiques en usage +à l'Imprimerie nationale, Imprimerie nationale, 1990.
++Il existe des usages en matière de citations, mais aucune règle précise, +associant une façon de procéder à un type de citations. On peut en effet citer +du texte en le mettant entre guillemets, en le détachant du reste du texte, ou +en le mettant en italique.
++Tout dépend de l'équilibre général de la page, de la présence ou non de +citations dans la citation elle-même (citation de second niveau), de la +présence d'italique dans la citation, etc. Comme toujours, le plus important +est d'adopter une présentation uniformisée dans le document.
+Une citation +courte apparaît le plus souvent entre guillemets. La référence est donnée +après la citation, entre parenthèses, en dehors des guillemets.
++Ainsi, dans le dernier BOcal, il est écrit qu'«une dizaine de tickets +de cocktail» récompenseront les meilleurs déguisements (BOcal, +n° 327).
+Les passages longs +sont composés en romain d'un corps inférieur à celui du texte, sans +guillemets, et sont isolés du texte par des blancs :
++++Dans la plaine rase, sous la nuit sans étoiles, d'une +obscurité et d'une épaisseur d'encre, un homme suivait seul la grande route de +Marchiennes à Montsou, dix kilomètres de pavé coupant tout droit, à travers +les champs de betteraves. Devant lui, il ne voyait même pas le sol noir, et il +n'avait la sensation de l'immense horizon plat que par les souffles du vent de +mars, des rafales larges comme sur une mer, glacées d'avoir balayé des lieues +de marais et de terres nues. Aucune ombre d'arbre ne tachait le ciel, le pavé +se déroulait avec la rectitude d'une jetée, au milieu de l'embrun aveuglant +des ténèbres. (Émile Zola, Germinal.)
+
+Les vers sont cités de la même façon : pas de guillemets, caractères plus +petits, blancs avant et après la citation.
+Reproduits in extenso, +les textes épistolaires sont composés le plus souvent en italique; on +rencontre parfois aussi des lettres citées en romain d'un corps (taille) +inférieur. Ils sont séparés du texte par des blancs.
+Les citations en +latin ou en langue étrangère sont citées en italique. A fortiori, +l'italique s'emploie ad libitum pour toutes les locutions latines, +id est non francisées.
+Le +Lexique ne dit rien de bien clair sur ce sujet... Le cas ne se pose +évidemment que pour les citations guillemetées; dans le cas de l'italique ou +d'un texte détaché, on met des guillemets normaux.
+Dans le cas des citations entre guillemets, il est interdit de mettre des +guillemets à l'envers, »comme ça«, pour figurer une citation dans la citation. +On tolère des guillemets anglais, ``comme ceci'', dans ce cas précis. Il +semble que l'usage est de mettre des guillemets normaux : «Il dit +«J'arrive» et ouvrit la porte». Si les deux niveaux de guillemets se referment +à la fin de la citation, on n'en referme qu'un seul : «En arrivant, il +déclara: «Je suis là».
+Comment fait-on pour rediriger son courrier électronique vers une autre
+adresse? Cette opération s'appelle «forwarder» son courrier. Pour cela, il
+suffit de créer chez soi un fichier appelé .forward
qui contient
+la nouvelle adresse. Par exemple :
corvette ~ $ cat .forward
+toto_g@mit.edu
+
+
+C'est tout! Avec ça, le courrier sera automatiquement renvoyé à l'adresse
+toto_g@mit.edu
.
+Ce n'est pas la première fois qu'on vous parle de fichiers dont le nom
+commence par un point. Ce sont des fichiers «cachés», qui n'apparaissent pas
+naturellement quand on tape ls
. Pour les voir, il faut taper
+ls -a
(all). Ce sont des fichiers de configuration,
+qui personnalisent un certain nombre de programmes. Ils se trouvent dans
+~
(votre répertoire d'accueil). Surtout ne les effacez
+pas!
+La commande finger
vous donne des informations sur les
+utilisateurs du réseau. Elle peut aussi s'utiliser avec un nom d'ordinateur,
+mais on n'en parlera pas ici. Suivi d'un nom de login,
+finger
vous donne des informations sur la personne
+correspondante :
corvette ~ $ finger tuteurs
+Login name: tuteurs In real life: Comptes tuteurs
+Directory: /users/staffs/tuteurs
+Last login Thu Feb 24 15:46 on pts/12 from jonque
+New mail received Mon Mar 6 17:14:25 2000;
+unread since Sat Mar 4 11:31:38 2000
+No Plan.
+
+ +Vous avez donc le nom de login, le nom complet, le répertoire de cette +personne (ce qui vous donne sa promotion et sa branche), et des renseignements +techniques (dernier login sur la machine où vous vous trouvez, dernière fois +que le courrier a été lu).
+
+Attention avec la question du courrier : s'il est redirigé ailleurs, la
+personne peut avoir lu son courrier très récemment sans que cela apparaisse...
+Ainsi, un biologiste dont le courrier est redirigé sur horus
peut
+donner l'impression de n'avoir pas lu son courrier depuis six mois; c'est vrai
+sur clipper, la machine que vous interrogez, mais pas sur
+horus
.
+D'autre part, certains comptes sont un peu spéciaux, parce qu'une copie du
+courrier reçu est envoyé à un certain nombre de personnes. C'est le cas pour
+les tuteurs; aucun tuteur ne se logue tuteurs
pour lire le
+courrier, car il le reçoit directement. Le courrier est donc lu, mais ça
+n'apparaît pas sur le finger
.
+Vous voyez enfin l'indication No Plan
. Cela signifie que cet
+utilisateur n'a pas de fichier .plan
sur son compte; ce fichier
+sert à personnaliser les renseignements donnés par finger
+(coordonnées, etc). Attention, ne mettez pas d'accent dans ce fichier. On peut
+aussi créer un fichier .project
. Celui-ci ne contient qu'une
+seule ligne, par exemple pour une devise. Là encore, il ne faut pas mettre
+d'accents.
finger
s'utilise aussi avec des noms ou des prénoms. Pour savoir
+le nom de famille de toutes les Nathalie qui ont un compte, tapez
+finger Nathalie
.
+ Le cours Unix se divise en trois parties : «Concept», «Commande», +«Usage». Ce mois-ci, on va expliquer ce que signifie «multitâches». La partie +«Commande» explique comment on obtient des renseignements sur les processus; +la partie «Usage» indique comment gérer, en pratique, les processus que l'on +lance. +
++Deux personnes qui se promènent en bavardant sont en train de faire plusieurs +choses à la fois : leur attention est tournée principalement vers la +conversation, mais aussi sur les expressions de l'interlocuteur, sur l'heure +qui tourne, etc. De façon presque automatique, elles évitent les obstacles +courants (marche, racine d'arbre...). Quant à la marche elle-même (lever le +pied, lancer la jambe, déporter le poids d'une jambe à l'autre...), c'est un +geste purement mécanique.
++Un ordinateur est conçu globalement sur le même principe : plusieurs +programmes s'effectuent simultanément, à des niveaux différents : sur +votre ordinateur, vous pouvez lancer à la fois Netscape, un logiciel de +courrier, un éditeur de textes, une compilation... Tout cela est analogue au +niveau «conscient» de nos deux personnages.
++Mais il se passe autre chose, sur le modèle automatique ou végétatif d'un être +humain : afficher des fenêtres, réagir quand on déplace la souris, +maintenir l'horloge à l'heure, vérifier si un nouveau courrier est arrivé, +répondre si quelqu'un veut se connecter...
+
+Chacune de ces opérations s'appelle un processus : un processus est une
+tâche donnée, individualisée, identifiée, qui appartient à un utilisateur bien
+précis et qui doit accéder à des données bien précises. Le pine
+que vous avez lancé n'interfère pas avec le rapport que, d'autre part, vous
+êtes en train d'écrire. Ou encore, s'il arrive que l'horloge ne se lance pas,
+cela n'abîme pas votre boîte aux lettres.
+Unix est un système multitâche et multi-utilisateurs (voir Hublot, +n° 1), ce qui signifie que plusieurs tâches différentes et +appartenant à des personnes différentes, peuvent cohabiter. C'est possible +parce que le noyau* veille : si une tâche tente de +manipuler les données d'une autre tâche (ce que Windows appelle «effectuer une +opération non conforme»), la contrevenante se fait promptement éliminer. Sous +Unix, cela ne plante pas la machine.
+ps
, top
et
+priorités
+ ps
+ La commande
+ps
affiche la liste des processus lancés à votre nom sur votre
+machine, sous la forme d'un tableau.
corvette ~ $ ps
+ PID TT S TIME COMMAND
+29503 pts/6 S 0:01 /usr/local/util/bin/zsh
+29523 pts/6 S 0:14 xdvi hublot5.dvi
+29601 pts/6 S 0:04 vim5.new hublot5.tex
+29752 pts/7 S 0:01 /usr/local/util/bin/zsh
+
+
+Décrivons les principaux champs de ce tableau : le PID
est
+le numéro du processus (process identifier). La colonne
+TT
(teletype) indique à quel terminal est rattaché le
+procesus. La colonne S
indique l'état du processus : ici
+c'est S
(sleeping), car les processus attendent que
+quelque chose se passe. La dernière colonne indique la commande qui a lancé
+le processus. Ici, il y a un éditeur de textes (vim
), un DVI, et
+deux shells*.
top
+ top
+affiche un petit tableau remis à jour régulièrement, qui montre les processus
+qui consomme le plus de ressources; le plus gourmand figure en haut du
+tableau. Sont indiqués entre autres le numéro du processus (PID
),
+le login de son propriétaire (username
), les ressources
+consommées (CPU
), et enfin le nom de la commande qui a lancé le
+processus. Par exemple :
+
corvette ~ $ top
+(...)
+ PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
+13102 robin 27 0 1376K 1304K cpu 0:00 1.15% 0.92% top.5.5.sun4u
+11894 robin 33 0 8120K 6160K sleep 0:35 0.63% 0.66% Xsun
+12491 tuteurs 33 0 1592K 1360K sleep 0:04 0.64% 0.50% vim-5.4
+11895 robin 33 0 2288K 1720K sleep 0:01 0.06% 0.12% fvwm2
+(...)
+
+
+Dans cet exemple, c'est la commande top
elle-même, de numéro
+13102, qui consomme le plus de ressources (0,92%). L'état (STATE
)
+indique qu'elle est en cours d'exécution.
+
+Viennent ensuite le serveur X (pour l'interface graphique), l'éditeur
+vim
avec lequel je tape le Hublot au nom de
+tuteurs
, et le gestionnaire de fenêtres fvwm2
. Leur
+état dit qu'ils «dorment», c'est-à-dire qu'ils sont en attente.
+
nice
+ Deux colonnes sont
+intéressantes dans ce tableau : PRI
(priorité) et
+NICE
. La priorité est l'importance donnée au processus dans la
+répartition du temps du processeur. Pour pinailler : le
+nice
est statique, fixé par le propriétaire. La priorité est
+dynamique et calculée par le noyau en fonction des processus lancés et de
+leurs nices respectifs.
+
+C'est un aspect essentiel du partage des ressources des ordinateurs lorsque
+l'on est dans un environnement multi-utilisateurs : un calcul lancé en
+tâche de fond sur un ordinateur ne doit pas monopoliser le processeur au point
+d'empêcher l'utilisation de la machine par quelqu'un d'autre. Quand on lance
+une tâche de longue haleine, comme un calcul, on dispose de la commande
+nice
, pour fixer la priorité du processus. Plus le nice
+est élevé, moins le processus sera prioritaire.
kill
+ La commande
+kill
sert à envoyer un signal à un processus. Un de ses usages
+consiste à ordonner au processus de prendre fin. Mais ce serait une très
+mauvaise idée d'utiliser systématiquement kill
pour quitter un
+programme! Cette commande sert quand plus rien d'autre n'est possible.
+Un programme lancé dans un terminal peut être en mode texte, comme
+pine
, auquel cas il s'affiche dans la fenêtre où il a été lancé.
+Il peut aussi être en mode graphique, comme un jeu, Netscape, un DVI, et se
+lancer dans une nouvelle fenêtre. Dans ce cas, il se passe quelque chose comme
+ceci quand vous essayez de taper des commandes :
corvette ~ $ netscape www.bnf.fr
+ls
+toto
+
+ +Votre Netscape s'est lancé, et il immobilise la fenêtre dans laquelle vous +l'avez lancé; vous ne pouvez rien taper.
+
+Dans ce cas, tapez ^Z
. Cette commande suspend le processus qui
+est en cours d'exécution (ici, Netscape). Vous récupérez la main, c'est-à-dire
+que vous pouvez de nouveau taper des commandes. En l'occurence, tapez
+immédiatement bg
(background), pour mettre votre
+Netscape en arrière-plan (car pour le moment, il est toujours suspendu, et ne
+fonctionne pas). Ça donne, au total :
corvette ~ $ netscape www.bnf.fr +^Z +zsh: suspended netscape www.bnf.fr +corvette ~ $ bg +[1] + continued netscape www.bnf.fr ++
+Le plus simple est encore d'utiliser l'esperluette (&
), qui
+met le programme lancé en arrière-plan :
corvette ~ $ netscape www.bnf.fr &
+[1] 11321
+
+
+Le premier numéro indiqué est le job ID (numéro de tâche), le second
+est le PID, c'est-à-dire le numéro du processus. Vous pouvez ainsi lancer
+plusieurs processus qui tourneront en tâche de fond. La commande
+jobs
vous permet de savoir ce qui tourne en tâche de fond dans un
+terminal. Pour mettre au premier plan un processus donné, vous avez la
+commande fg
(foreground), en indiquant, le cas échéant,
+le numéro de tâche, précédé d'un pour-cent :
corvette ~ $ jobs +[1] - running xdvi hublot5.dvi +[2] + running netscape www.bnf.fr +corvette ~ $ fg %2 +[2] - running netscape www.bnf.fr ++
+ Dans cette section, vous trouverez la suite du cours de Thomas sur les +réseaux; ce mois-ci, il explique comme est organisé Internet. Dans la section +Netscape, on va parler de la navigation sur le Web. +
++Dans les numéros précédents, nous avons vu comment deux ordinateurs peuvent +s'échanger des données, puis les principes de l'organisation des couches +basses d'un réseau plus étendu : couche physique, transport de paquets ou +par circuit («couches basses» : voir niveau*). Dans +ce numéro, nous abordons le routage : suivre de bout en bout un paquet de +données de la machine origine à la machine destination.
++On a vu, dans la section précédente, comment relier ensemble deux stations +pour qu'elles puissent s'échanger des données, pas forcément de façon fiable, +et sans garantie de débit. Ces méthodes sont locales, et il convenait de +passer à un réseau global. Ceci a été effectué grâce au réseau Internet, +dérivé de l'Arpanet au cours des années 1970 (Arpanet était le réseau des +militaires américains).
++Le principe est le suivant : quand une station veut envoyer un message à +une consoeur, elle commence par examiner ses branchements, pour voir si la +destinatrice ne serait pas, par hasard, accessible directement. Dans ce cas, +elle lui envoie le message par le moyen physique présent. Dans le cas +contraire, elle envoie le message à une station dont elle sait qu'elle est +plus qualifiée qu'elle pour résoudre ce problème. La station qualifiée est +nommée routeur, ou aussi passerelle.
+
+Pour savoir qui est contactable et comment, chaque station est munie d'une
+adresse de 4 octets (chaque octet contenant un nombre entre 0 et 255).
+Ainsi, la station galion
, en salle S, est dotée de l'adresse
+129.199.129.10. Ces adresses sont mondiales, et toutes les adresses
+commençant par 129.199 sont réservées à l'ENS.
Prenons l'exemple
+de galion
, tentant d'envoyer un message (sous la forme d'un
+paquet IP, comme Internet Protocol) à aviso
, en salle
+Infirmatique.
galion
, d'adresse 129.199.129.10, sait qu'elle est reliée
+directement à toutes les stations dont l'adresse commence par 129.199.129. Or,
+aviso
a l'adresse 129.199.128.1; galion
, constatant
+cela, décide de transmettre le paquet à sa passerelle, à savoir
+clipper
(129.199.129.1, contactable par un lien ethernet direct
+depuis galion
). Puis galion
se lave les mains de ce
+qui se passe ensuite, ce n'est plus son affaire.
clipper
ne peut pas non plus contacter aviso
+directement, mais il peut parler sur un deuxième lien depuis son deuxième
+visage, clipper-gw
(129.199.1.22). Sur ce lien, il peut contacter
+finn
(129.199.1.128), qui est responsable des adresses en
+129.199.128. clipper
transmet donc le paquet à finn
,
+et se désintéresse lui aussi de la question.
finn
possède aussi deux visages, le second étant
+finn128
(129.199.128.254), relié directement aux stations de
+l'Infirmatique. finn
peut donc communiquer directement avec
+aviso
, et lui envoie le paquet.
Donc, pour que tout
+se passe bien, il suffit que chaque station sache reconnaître les adresses
+contactables directement, et une passerelle pour les autres cas. Les routeurs,
+eux, doivent avoir une notion locale de la hiérarchie (clipper
+doit connaître finn
, mais ce que finn
doit faire
+pour contacter aviso
ne le regarde pas).
+Il est même possible de reconstruire ces informations à la volée :
+clipper
peut tout envoyer sur la machine par défaut
+(renater
), qui lui signalera à chaque fois qu'il existe une route
+plus directe ne passant pas par lui; clipper
s'en rappellera
+pendant quelques minutes. Ce mécanisme, dit de routage dynamique, est un peu
+délicat à mettre en place, aussi on s'en sert avec parcimonie (il est aisé
+d'obtenir, à la suite d'un malentendu, une partie de ping-pong, où deux
+stations considèrent, pour un paquet donné, que l'autre station est la
+passerelle à utiliser).
+Et voilà, ceci est Internet : des stations qui s'échangent des paquets +(d'une taille maximale de 65 536 octets, mais souvent plus petits, +de l'ordre de 1 500 octets). Normalement, un paquet n'a pas à +effectuer plus de 30 sauts pour faire le trajet d'une station à une +autre. Les paquets peuvent être fractionnés et recombinés au gré des routeurs, +afin de s'adapter aux spécificités locales de la liaison.
++Le chemin entre deux stations n'est pas forcément unique; ceci permet une +tolérance aux pannes ou une adaptation aux embouteillages. Notamment, les +communications à grande échelle sont alors résistantes aux attaques nucléaires +(c'est ce qui plaisait aux militaires américains). Une conséquence de ce fait +est que deux paquets successifs ne suivent pas forcément le même chemin; ils +peuvent notamment arriver dans le désordre, et certains peuvent être dupliqués +(quand une passerelle cherche à savoir, via un protocole approprié, +si un paquet est arrivé, et, ne voyant rien venir, en émet un autre, alors que +le premier était simplement parti par un chemin détourné).
+Thomas Pornin
+
+Figure 1 : Une partie du routage à l'ENS
Le mois dernier, on a vu comment lancer et quitter proprement Netscape. Ce +mois-ci, on va envisager la navigation sur le Web. Comme d'habitude, j'utilise +la version 3 de Netscape.
+ Vous savez que
+le principe du Web est de mettre en relation des informations dispersées à
+travers le monde : par exemple, on crée un lien entre une page Web située
+en France vers une page située au Brésil, et suivre le lien vous emmène
+automatiquement sur la page brésilienne. C'est ce que l'on appelle
+l'hypertexte, et c'est ce que veut dire le http
placé au début
+des adresses Web : HyperText Transfer Protocol.
Sur le Web, une adresse
+s'appelle une URL (Uniform Resource Locator). Prenons pour exemple
+l'adresse du serveur
+des élèves de l'ENS : http://www.eleves.ens.fr:8080/
. Le
+http
au début indique le protocole à utiliser, et signale qu'il
+s'agit d'une page Web (cependant, toutes les pages Web ne sont pas servies par
+HTTP). Le .fr
est un nom de domaine, qui indique ici que la page
+se trouve en droit en France (mais il se pourrait que le serveur, en tant que
+machine physique, matérielle, soit aux États-Unis).
+www.eleves.ens
désigne en réalité une machine qui héberge le site
+des élèves de l'institution ENS. Le 8080
désigne un numéro de port*.
+Enfin, le /
(slash) qui termine l'adresse indique qu'on
+se rend au point de départ de l'arborescence du site, en pratique la page
+d'accueil.
+Tout ceci indique la machine à contacter pour rejoindre la page Web. Ensuite,
+il peut y avoir d'autres informations quelle page précisément on demande à
+voir. Par exemple, http://www.cof.ens.fr/cineclub/
+correspond la page d'accueil du Ciné-Club de
+l'ENS, elle-même un sous-ensemble logique de COF/
.
+Quand vous sélectionnez un lien, votre ordinateur envoie une requête sur le +serveur désigné par l'URL. Ce serveur renvoie la page demandée par votre +navigateur («client» du serveur).
+
+L'ensemble de ces données circulent sur des liens physiques, les câbles, qui
+ont un débit maximal. La réponse d'un serveur physiquement très éloigné mettra
+un peu plus de temps à arriver; une grosse quantité de données mettra plus de
+temps à arriver qu'une petite quantité; enfin, à certaines heures, le réseau
+est encombré par l'ensemble des données transférées par tous les utilisateurs
+connectés à ce moment-là. C'est ce qui explique que parfois, une page soit
+longue à charger. Vous pouvez toujours interrompre le transfert en cliquant
+sur le bouton «Stop
».
Il y a un certain
+nombre de noms de domaine. Une partie indique un pays, dont dépend en droit le
+serveur : .fr
pour les serveurs français, .es
+pour l'Espagne, .ru
pour la Russie, .jp
pour le
+Japon, etc.
+Il en existe d'autres, comme .edu
pour les universités
+américaines, .org
pour les institutions à but non lucratif,
+.gov
pour le gouvernement américain. .int
est
+utilisé en particulier par les organisations établies par traités
+internationaux, par exemple l'Union européenne.
+De nouveaux noms de domaines sont apparus avec l'engouement pour le Web. Par
+exemple, .com
désignait à l'origine des sites d'entreprises, et
+.net
des fournisseurs d'accès au réseau. Mais AOL, fournisseur
+d'accès, a comme adresse aol.com
(pour des raisons
+historiques, certes). D'autre part, des entreprises peuvent avoir un site avec
+un suffixe .net
, à cause de leur fournisseur d'accès.
+Un autre exemple : le suffixe .tv
est théoriquement réservé
+aux îles Tuvalu; mais le Web est quelque chose de rentable, et elles ont vendu
+quelques noms de domaines à des chaînes de télévision qui voulaient une
+adresse en .tv
...
Que faire quand vous
+voulez aller à une adresse précise, par exemple le site de l'UNESCO (
+http://www.unesco.org/
)? Cliquez dans le cadre rose
+«Location:
», effacez l'adresse de la page sur laquelle vous vous
+trouvez, et écrivez à la place l'adresse souhaitée.
+Vous pouvez aussi sélectionner Open Location
dans le menu
+File
(ou taper Alt-L
), et taper votre adresse dans
+le petit cadre qui s'affiche.
Netscape offre deux
+possibilités pour revenir sur des pages déjà visitées. Il s'agit d'abord des
+trois boutons Back
, Forward
et Home
.
+
+ +
+Back
vous ramène en arrière, vers la dernière page que vous avez
+visitée; Forward
vous ramène vers les pages visitées en dernier.
+Enfin, Home
vous replace sur votre page d'acceuil par défaut, qui
+est la page du serveur des élèves de l'ENS.
+Vous disposez aussi du menu Go
. Celui-ci reprend les fonctions
+Back
, Forward
et Home
, en indiquant les
+raccourcis claviers correspondants.
+ +
++Il propose ensuite la liste des pages visitées; les pages vues récemment sont +en haut de la liste, tandis que la toute première page visitée se trouve tout +en bas. Un petit carré indique sur laquelle de ces pages on se trouve. Il +suffit de cliquer sur le nom d'une page pour y revenir immédiatemment.
+Le Centre d'Études +Anciennes dispose de trois CD-ROM.
++Le TLG (Thesaurus Linguae Graecae) comporte les +textes de la littérature grecque depuis Homère jusqu'en 600 ap. J.-C., +plus des textes littéraires et techniques, ainsi que des recueils de scholies +de l'an 600 à 1453, soit 3 366 auteurs et 10 823 oeuvres.
++Le PHI n° 5.3, du Packard Humanities Institute, embrasse +la littérature latine depuis l'époque archaïque jusqu'aux environs de 200 +ap. J.-C. Il comporte 362 références d'auteurs, dont les grands textes +classiques, mais présente des lacunes pour la période postclassique. Quiconque +travaille sur la poésie latine aura intérêt à consulter plutôt le CD-ROM +Poesis (de l'éditeur italien Zanichelli) à la section latine +de l'Institut de Recherche et d'Histoire des Textes. Outre les textes +littéraires latins, Le PHI comprend la Bible juive (en hébreu), la +Septante et le Nouveau Testament grec (en caractères grecs), +la Vulgate (en latin), la Bible anglaise dans deux traductions, celle +du roi Jacques et la version standard révisée, et le Nouveau +Testament copte (en caractères coptes).
++Le PHI n° 7 renferme divers corpus +documentaires en caractères grecs et latins. Il s'agit des inscriptions de +l'université Cornell, ainsi que des papyri, ostraca et +tablettes du fonds documentaire Duke (186 références). Les inscriptions +couvrent la période grecque, la période romaine, l'Antiquité tardive jusqu'au +VIIIe siècle et la période byzantine jusqu'en 1453. On y trouve de plus, en +caractères coptes, la Bible sahidique et le fonds Nag Hammadi (64 +références d'apocryphes bibliques).
+ Ces disques sont
+consultables avec deux logiciels d'interrogation :
+Pandora (une pile HyperCard conçue aux États-Unis) et
+SNS Greek & Latin (une application programmée à la Scuola
+Normale Superiore de Pise), qui tournent sur le PowerMac 8500 de la
+cellule informatique du CEA. Les néophytes préfèrent Pandora pour la
+simplicité de son interface. Mais SNS est incontournable quand il faut définir
+des requêtes très précises, car la syntaxe de son langage d'interrogation est
+héritée du grep
en usage dans le monde Unix, et quand il faut
+extraire des oeuvres complètes (au format RTF) pour les récupérer dans un
+traitement de texte, par exemple si l'on travaille à une édition critique.
+
+Chaque année, en novembre, des stages d'initiation aux CD-ROM sont proposés +aux élèves antiquisants par D. Béguin, l'un des deux caïmans +d'informatique littéraire. On y montre que toute problématique peut se +reformuler sous forme d'une recherche de mots ou de parties de mot dans un +corpus d'oeuvres librement défini par l'utilisateur. Les réponses sont +fournies sous forme de listes d'occurrences où les mots recherchés sont +replacés dans un contexte dont la longueur est, elle aussi, définie par +l'utilisateur. Les CD-ROM font office d'index et de concordances, avec une +rapidité et une exhaustivité que ne sauraient égaler leurs prédécesseurs sur +support papier.
++ La page officielle du TLG à +l'Université de Californie +
+Daniel Béguin
+Est bas +niveau ce qui est proche du matériel. Est haut niveau ce qui est proche de +l'utilisateur.
+Le noyau +(kernel) est le coeur du système. C'est lui qui gère le matériel pour +les besoins des applications. Il est la partie principale du système +d'exploitation.
+Première +définition, pour expliquer à quoi ça sert : un port est une sous-adresse, +comme une boîte aux lettres dans un immeuble.
++Seconde définition, technique : un port est un numéro qui définit, à +l'intérieur d'une machine donnée, un point sur lequel un programme peut +attendre des connexions de l'extérieur ou depuis lequel il peut en établir. +La donnée du numéro IP de la machine et du port TCP constitue l'analogue d'un +numéro de téléphone vers lequel ou depuis lequel on peut établir des +connexions.
+ Le shell est
+le programme qui interprète les commandes tapées au clavier. Selon le cas, il
+peut exécuter le programme demandé (pine
, ls
,
+date
...), demander confirmation (avant d'effacer un fichier par
+exemple), corriger la syntaxe (netscape
et pas
+nestcape
), afficher un message d'erreur comme «command not
+found
», etc. On peut aussi écrire des programmes (appelés scripts),
+dans le langage du shell, pour créer de nouvelles commandes, automatiser des
+tâches, ou autres.
+Un shell est lancé dans chacun des terminaux que vous ouvrez. Pour quitter le
+shell, il suffit de taper ^D
, ce qui aboutit en pratique à fermer
+la fenêtre, car plus aucun programme ne tourne dedans.
+Parmi les choses qui m'énervent, et il y en a beaucoup bien que ça ne se voit +pas sur ma figure, car je suis d'un calme proverbial, c'est la confusion entre +le pingouin et le manchot. Le manchot, c'est cette espèce d'oiseau aux ailes +atrophiées et aux pattes encore plus petites, et qui vit là où il fait +vraiment froid, c'est-à-dire en Antarctique (le pôle Sud, pour les ignares). +Le pingouin ressemble un peu au manchot, mais il est plus petit, possède des +ailes bien développées qui lui permettent de voler aussi bien qu'une mouette, +il vit sur les côtes boréales, à des latitudes élevées (en Islande, par +exemple), et, pour tout dire, il n'a avec le manchot qu'un lointain cousinage, +autant qu'avec les canards, pour situer. Autrement dit, pingouin et manchot +n'ont rien de commun, et sont séparés de pas loin de 20 000 kilomètres. +
++Mais quand on montre un manchot à un quidam quelconque, il l'identifie +quasiment à coup sûr comme étant un pingouin, et il en est très content. +C'est terrible comme l'inculture est satisfaisante. La confusion est +certainement d'origine anglo-saxonne, d'abord parce que les Anglais ont +toujours tout fait pour nous pomper l'air, à nous autres Français, et ensuite +parce que chez eux, manchot et pingouin se traduisent tous deux par +penguin.
++J'en vois déjà qui se demandent ce que ces précisions ornithologiques et +linguistiques viennent faire là, il y en a même qui se sentent lésés, après +tout si on lit le Hublot c'est pour s'entendre dire qu'Unix c'est +Bien et que le piratage c'est Mal, pas pour disserter sur les qualités +aérodynamiques de volatiles même pas comestibles. Certes, je vous comprends, +mais rassurez-vous, il y a un rapport avec l'informatique en général et Unix +en particulier, j'y arrive de suite. Ce préambule était nécessaire pour bien +vous faire ressentir l'effort surhumain que je vais produire en parlant de +pingouins dans tout le reste de cet article, alors qu'il s'agit de manchots. +Et puis, vous aurez appris quelque chose, c'est toujours ça de gagné.
++Donc, la translation manchot/pingouin ayant été établie, j'aborde le vif du +sujet : il y a des pingouins partout. Vous ne l'aviez peut-être pas +remarqué, ce serait même tout à votre honneur, ça voudrait dire que dans les +kiosques à journaux, vous consultez des opuscules normaux tels que +Paris-Match ou Le Monde. Mais pour les dépravés qui se +repaissent de ce qu'on nomme vulgairement la «presse informatique», c'est +indubitable. Presque chaque mois apparaît un nouveau périodique dont le nom +est une variation quelconque autour du terme «Linux», et décoré avec un goût +très sûr de diverses effigies d'un pingouin rigolard, qui me filerait des +cauchemars si j'avais encore cinq ans (ah, vieillesse ennemie, etc).
++L'esprit inquisiteur, et je ne doute pas que vous soyez tous avides de +connaissances, aura certainement compulsé quelques unes de ces parutions, en +tout bien tout honneur et dans un but de recherche uniquement, j'en suis +persuadé. À l'intérieur, on trouve des concepts étranges, parlant de logiciel +qu'on donne mais qui rapporte des sous, de businessmen qui filent des ronds +alors qu'il n'y sont en rien obligés, d'un gourou chevelu qui joue du pipeau, +d'un esprit démoniaque américain qui serait autant mauvais programmeur qu'il +est bon vendeur, et autres articles constellés d'acronymes au goût étrange +venu d'ailleurs : Linux, BSD, Hurd, FUD, KDE, Tux, X11, etc...
++Qu'est-ce donc que tout cela? Et bien, synthétiquement, c'est la nouvelle +mode : le logiciel libre. Je vais ici tenter de détailler un peu ce qu'il +en est, car si l'honnête homme peut parfaitement se passer de ce genre de +détails, ça peut toujours servir pour briller en société, ou réhausser un peu +le niveau d'une fin de banquet.
++Le logiciel, en bon anglois software, c'est ce qui transforme un +ordinateur complètement crétin en station de travail parfaitement crétine. +L'ordinateur, à la base, c'est un amas savamment agencé de morceaux de +silicium, aluminium, cuivre, plastique, et autres composants. Ça sait exécuter +des ordres; des ordres simples, vraiment très simples, exprimés dans un +langage barbare qui n'a rien à voir avec nos complexes moyens d'expression +humains. Ces ordres, ont les appelle le logiciel.
++Le logiciel, c'est immatériel. Ça coûte très cher à produire, mais, in +fine, ce n'est jamais qu'une suite de 0 et de 1, comme tout ce qui rentre +dans un ordinateur, et on peut le reproduire autant de fois qu'on veut. Le +logiciel se vend bien, et il y en a partout où il y a l'ombre d'un semblant +d'ordinateur, donc dans les voitures, les fours à micro-ondes, les cartes +bleues, les lecteurs de CD, et bien d'autres objets, dont on n'aurait pas +imaginé tant de malice.
++La forme de logiciel compréhensible par les ordinateurs est, disons-le tout +net, immondissime. Alors les développeurs utilisent des outils informatiques +qui traduisent automatiquement en un logiciel utilisable sur un ordinateur, +des descriptions de ce logiciel en un autre langage, plus facilement +appréhensible (par un informaticien, hein, ce n'est quand même pas du +français). La forme compréhensible, c'est ce qu'on appelle le code source, ou +tout simplement le source (oui, au masculin -- même si certains déviants +l'utilisent au féminin). La traduction, on appelle ça la compilation, et le +logiciel tel qu'il est avalé par la machine, c'est le binaire.
++Au passage, évoquons le système d'exploitation : c'est ce logiciel +particulier qui sait parler au matériel; les autres logiciels (on dit +«applications», voire «progiciels» quand on veut faire pro), quand ils veulent +lire un fichier ou afficher un texte sur l'écran, se contentent de faire une +requête au système d'exploitation. L'équivalent sur une voiture, c'est le +tableau de bord : on tourne le volant quand on veut, en fait, tourner les +roues. Et si on change les pneus, qu'importe, c'est toujours le même volant et +ça se manipule pareil. Le conducteur n'a pas à connaître tous les types de +pneus, il peut se contenter d'identifier le truc rond, au milieu du tableau de +bord. Microsoft Windows est un système d'exploitation, Microsoft Word est une +application.
++Il y a 20 ans, quand une boîte quelconque fournissait un logiciel à une autre +boîte ou un particulier, elle vendait le binaire, et le binaire seulement, +pour plein de brouzoufs. Elle amortissait le coût de développement sur les +différentes ventes, et si le logiciel se vendait bien, jackpot, puisque la +reproduction ne coûte rien. D'ailleurs, ce coût nul (en fait presque, un +CD-ROM ça coûte 7 FF) de la copie a entraîné beaucoup de copies faites +par des tiers (tout bénef, pour eux, puisqu'il ont des coûts de développement +nuls), d'où une législation adaptée à base de licences d'utilisation.
++Depuis, un illuminé ricain, issu d'une université spécialisée dans ce genre de +cas, a eu une idée qui peut sembler idiote, mais qui doit contenir de vrais +morceaux d'intelligence dedans puisqu'elle se vend bien : le logiciel, on +va le fournir avec les sources. Oui, on file nos petits secrets de fabrication +avec. Et puis, tant qu'à faire, on autorise celui qui a récupéré le logiciel +d'en faire autant de copies qu'il veut. Il peut les donner, ces copies, ou les +vendre au prix qu'il veut à qui il veut. Le susdit amerloque a fait des +émules, fondé une religion (lui, il dit «fondation» mais c'est clairement une +secte), promulgué un dogme, et bien évidemment il y a eu des schismes et des +guerres. J'y reviendrai plus tard.
++Qu'est-ce que c'est que cette utopie, vous demandez-vous. On dirait un délire +communautaire issu tout droit des années 1970. Un poison crypto-communiste, +une pourriture bolchévique qui tente d'empêcher de braves gens de devenir +honnêtement richissimes. En effet, qu'est-ce qui empêche une société d'acheter +un exemplaire du logiciel libre d'une autre société, et de le revendre tel +quel mais moins cher? Plus de coût de développement, juste de la distribution, +et le marché est acquis. On dirait un encouragement au piratage, une +théorisation du masochisme. Ça ne peut pas tourner, une fantasmagorie +pareille.
++Et pourtant, elle tourne. Comment? Pourquoi? Que va faire le pingouin? Vous +le saurez au prochain épisode...
+Thomas Pornin
+ ++ +
+rm
+ + +La place disponible sur les disques durs est une question récurrente quand +on travaille en réseau. Après les problèmes du début du mois, le +Hublot revient sur ces questions, avec d'une part une mise en garde +du SPI, d'autre part un cours Unix consacré à ces questions. +
++ +Vous trouverez en fin de numéro le calendrier des stages du troisième +trimestre. Pour la fin de l'année, on ne fera pas un gros stage d'un week-end, +mais des petites séances hebdomadaires, le vendredi soir. Toutes suggestions +bienvenues! +
++ +Pour toutes questions, idées d'articles, etc, n'hésitez pas à nous +écrire : tuteurs@clipper. +Vous pouvez aussi mettre un mot dans le casier d'Émilia Robin. Certaines +pages de notre site sont indiquées dans +les articles; suivez les liens pour vous y reporter. Certains mots sont +suivis d'un astérisque*; ils renvoient au lexique en fin de numéro. Vous +pouvez aussi consulter les anciens numéros du Hublot. +
++L'espace disque pour l'ensemble des élèves est évidemment limité: sur sa +machine personnelle, on trouve facilement de nos jours 10 Go. Mais quand +vous êtes 1 000, cela ferait 10 To! Certes cela se vend, mais les +prix seraient hors de la petite enveloppe budgétaire du SPI, il faudrait +compter 1 million de francs par To.
++++ En informatique, l'unité de base est l'octet, sur lequel est codé un +caractère. Environ 1 000 octets font 1 kilo-octet (Ko); le méga-octet +représente un peu plus d'un million de caractères, soit un peu moins que la +Bible, mais aussi une petite minute de musique... Le giga-octet (Go) +représente plus d'un milliard de caractères (1 000 fois la Bible). Le +téra-octet pèse 1 000 gigas. (NDLR) + +
+
+Donc il faut économiser. La méthode que j'emploie actuellement est de laisser +4 Go par promotion, puis laisser faire.
+++Cela représente quand même environ 20 mégas par personne, +sachant que le texte d'une maîtrise dépasse très rarement les 500 Ko, et +que le Hublot fait en moyenne 40 Ko, soit 1/500e de la place +moyenne disponible par élève... (NDLR)
+
+D'abord en essayant de sensibiliser via le message mensuel de démon
+mange-disque; ensuite en intervenant en cas de situation critique. Ce fut le
+cas la semaine du 10 avril dans la partition /users/97/
.
+
+Unix permet une autre méthode, celle des quotas. Un utilisateur se +voit limiter à une taille définie par les administrateurs-système: c'est ce +que pratiquent les vendeurs Internet: volume des pages Web limité à 5 ou +10 Mo, boîte aux lettres limitée à 1 ou 5 Mo. Oui, c'est +vraiment très bas, dès que l'on part 2 semaines en vacances en étant abonné à +quelques mailing-lists... +
+
+Hélas, il se trouve que faire du ménage est en général très simple: on tombe
+rapidement sur un répertoire plein de fichiers MP3 (en général fichiers
+piratés) ou images licencieuses. La méthode est alors soit de prévenir le
+quidam, soit de déplacer en urgence des fichiers (cas du 10 avril); il y avait
+urgence car plusieurs d'entre vous ont perdu leurs archives de courrier (merci
+pine
, qui gère très mal ce symptôme). NB: on déplace, on ne
+détruit pas.
+
Néanmoins il m'est difficilement admissible de voir les disques +remplis de fichiers MP3 ou X! Stop! Les enquêtes judiciaires de la +gendarmerie, de la DST, cela existe: il serait temps +que les normaliens (élite de la nation?) soient responsables, et non +responsabilisés trop tard en justice après une maladresse.
+-- Jacques Beigbeder
++++ Depuis 1984, l'École a été impliquée au moins à 6 reprises dans des +affaires de piratage, soit comme victime, soit comme responsable (et là, il +s'agissait d'élèves); les cinq derniers incidents se sont produits depuis +1993. La DST s'est intéressée à l'École 5 fois... (NDLR) +
+
+Le mois dernier, on a abordé la typographie des citations. Ce mois-ci, on va +voir l'emploi des diverse fontes: italique, gras, etc. Comme d'habitude, ces +informations proviennent du Lexique des règles typographiques en usage à +l'Imprimerie nationale, Imprimerie nationale, 1990.
++Tout d'abord, une précision de vocabulaire. Une police de caractères +est la liste de tous les caractères d'imprimerie qui constituent un +assortiment. Une fonte est un «assortiment complet de caractères +d'une même type» (même corps ---«hauteur»---, même graisse, même style). Une +police de caractères regroupe donc diverses fontes (italique, gras, +12 points, etc). La police de caractères utilisée dans le Hublot +est la police standard de LATEX, New Computer Roman, +fonte romaine 10 points.
+L'italique sert à mettre +en valeur une portion du texte, afin d'attirer l'attention du lecteur. On +l'emploie dans les cas suivants:
+On utilise les +petites majuscules dans divers cas (oui, en HTML, on ne sait pas les +afficher):
+Le gras est un moyen pour insister +sur une phrase, ou un concept. C'est un recours graphique, pour mettre en +valeur la phrase qui résume le paragraphe, l'idée-clé, etc, un peu comme un +surligneur fluorescent. Tout ça pour dire que ce n'est pas une fonte à +employer systématiquement dans une maîtrise... On l'utilise pour les titres, +détachés du reste du texte. En revanche, dans le développement, il devrait +rester exceptionnel.
+Dans un document +dactylographié avec un logiciel disposant de l'italique et du gras, l'usage du +soulignement est interdit. On ne souligne que dans un document écrit à la +main, ou tapé à la machine. Dans un document tapé à l'ordinateur, on se sert +de l'italique, ou du gras. Le soulignement ne sert que dans un contexte +grammatical, linguistique, épigraphique, etc; par exemple: «Les deux formes +amaran et amasen sont +équivalentes».
+
+La commande pot
affiche le menu du pot. Par exemple:
+
steamer ~ $ pot
+ Menu du Lundi 17 avril 2000 (Ulm)
+
+Midi :
+ Artichaut vinaigrette
+ Bavette au poivre
+ Epinards
+ Salade - Edam
+ Glace
+
+Soir :
+ Concombres a la creme
+ Tomates farcies
+ Salade - Rondele
+ Tarte aux poires
+
+
+Vous pouvez taper «pot demain
», «pot hier
»,
+«pot
jour
», en remplaçant
+«jour» par un jour de la semaine (par exemple, «lundi»). Si vous êtes
+à Jourdan, la commande affiche le menu du pot de Jourdan. Vous pouvez aussi
+taper
pot Jourdan
+
+ Comment se déloguer quand la souris ne fonctionne pas? Vous
+avez un raccourci clavier pour vous déloguer: appuyez en même temps sur les
+touches Control
, Meta
et Backspace
(la
+touche Meta
est le losange noir de part et d'autre de la barre
+d'espace). Sur les PC sous Linux, c'est la touche Alt
et non la
+touche Meta
.
+Le résultat est le même qu'en cliquant sur le bouton «Quitter» ou qu'en +sélectionnant «Sortie» dans le menu du fond.
++ Le cours Unix se divise en trois parties: «Concept», «Commande», «Usage». +La partie «Concept» explique ce que signifie «place disque». Elle aborde +ensuite la notion de «partition», pour ceux qui connaissent déjà un peu Unix. +Ce passage est un peu ardu pour les débutants. Enfin, on donne quelques +renseignements techniques sur l'ensemble de la place disque à l'École. Dans +«Commande» et «Usage», on explique comment effacer des fichiers, et comment +les compresser pour gagner de la place. +
++ N'oubliez pas que le man* offre une documentation complète sur les +commandes Unix, en particulier leurs options; car dans ce résumé, on ne peut +pas tout dire sur les commandes indiquées... +
++Vos fichiers sont tous écrits sur un disque dur, dont la taille est limitée. +L'espace disponible est donc partagé entre tous les élèves. C'est la même +chose pour le courrier électronique, entièrement stocké sur un disque commun à +tous les utilisateurs (1 462 en ce moment). On ne se comporte donc pas +sur son compte comme on le ferait sur sa machine personnelle: le jour où il +n'y a plus de place, on ne peut plus rien écrire du tout, pas même +les scores d'un jeu, ou l'historique des messages lus dans les news. Pour +éviter d'en arriver là, il y a quelques règles de savoir-vivre à respecter: +
+du
(disk
+usage) affiche la taille prise par le répertoire et tous ses
+sous-répertoires. Pour être certain que le résultat est affiché en
+kilo-octets, taper du -k
;.aux
,
+.dvi
, .log
, .toc
...); voir la commande
+plus bas;On accède à tous les +fichiers des ordinateurs de l'École de manière semble-t-il identique, quelle +que soit la machine sur laquelle on est, ou le répertoire où ils se trouvent. +
++Mais physiquement, ils ne sont pas tous enregistrés dans la même structure de +données. D'une part, ils sont répartis sur différents disques durs, branchés +dans différents ordinateurs, et accessibles par le réseau. D'autre part, les +disques durs eux-mêmes sont découpés en morceaux, appelés partitions. +
++À quoi ça sert? Il est souvent pratique de pouvoir utiliser plusieurs disques +durs sur un même ordinateur: par exemple un disque pour Linux, un autre pour +Windows, ou encore un disque pour les fichiers systèmes et un autre pour les +données, ce qui simplifie la gestion au quotidien (sauvegardes, déplacements, +attribution de la place...) et les (ré)installations. +
+
+Il y a toutefois une astuce qui permet d'éviter d'acheter plusieurs disques,
+c'est de faire en sorte qu'un seul et même disque se comporte comme plusieurs
+disques distincts. À cette fin, on «découpe» le disque en morceaux disjoints,
+appelés partitions. Chaque partition peut être vue comme un disque distinct.
+Effacer le contenu d'une partition n'efface pas le contenu des autres, ce qui
+permet par exemple de réinstaller /users/97/
en douceur...
+
Une partition est «montée»
+dans un certain répertoire. Ainsi, clipper a 9 disques durs, à leur tour
+partitionnés. L'une des partitions de l'un des disques durs répond au doux nom
+de c1t1d0s1
, et contient tous les fichiers présents dans
+/users/98/
.
+ +
++Ce shéma explique la notion de montage: l'arborescence est divisée en +répertoires, comme on l'avait vu dans le numéro 3 du Hublot; ces +répertoires sont sur des disques (ou des partitions) différents, comme le +montrent les boîtes. «Monter» des partitions consiste à associer un lieu +physique (un bout du disque dur) à un lieu logique (un +emplacement dans l'arborescence).
+
+Chaque promotion a une partition séparée, ce qui évite que les anciens
+n'étouffent les nouveaux; les gourous ont leur propre partition, dans laquelle
+ils installent tous les merveilleux logiciels qui nous font tant plaisir; le
+courrier électronique est également sur sa propre partition, etc... Pour avoir
+une liste de toutes les partitions montées, tapez df
(disk
+file system). df
donne les informations sur chacune des
+partitions, en particulier leur remplissage. C'est utile à surveiller...
+
steamer ~ $ df
+(...)
+clipper:/var/mail 3595704 1465400 2094344 42% /var/mail
+clipper:/opt/gourous 2012384 1762136 189872 91% /opt/gourous
+clipper:/users/91 2569472 1740328 777752 70% /users/91
+clipper:/users/92 2569472 1740328 777752 70% /users/92
+clipper:/users/93 2056208 1558344 436176 79% /users/93
+clipper:/users/94 2010952 1792920 157704 92% /users/94
+clipper:/users/95 4352736 3155488 1153720 74% /users/95
+clipper:/users/96 4351720 3330544 977664 78% /users/96
+clipper:/users/97 4352736 2562800 1746408 60% /users/97
+clipper:/users/98 4352736 2627696 1681512 61% /users/98
+clipper:/users/99 4351720 2928128 1380080 68% /users/99
+(...)
+
+ Clipper a
+9 disques durs, qui totalisent 57 Go. 10 Go sont actuellement
+inutilisés, donc 4 Go prévus pour /users/2000
, et le reste
+pouvant remplacer en castastrophe un disque qui casse. 32 Go servent aux
+utilisateurs (/users/
, courrier électronique, forum des élèves);
+12 Go sont dévolus au système (système d'exploitation,
+/opt/local/
, /usr/local/util/
---les programmes,
+swap*, postgres
---base de données).
+
+À Jourdan, il y a 3 Go pour les utilisateurs, à Montrouge 4 Go, en +salle T15 9 Go. +
++Au total, l'ensemble des salles élèves comportent environ 70 disques durs, +soit 200 Go. On constate que sur ces 200 Go, 48 seulement sont +laissés aux utilisateurs. Le reste sert aux logiciels. +
+rm
+
+Vous disposez en revanche La commande rm
(remove) sert à
+effacer les fichiers; par exemple:
+
steamer ~ $ ls +Mail/ blo vocab vocab~ +steamer ~ $ rm vocab~ +rm: remove vocab~ (y/n)? y +steamer ~ $ ls +Mail/ blo vocab ++
+Comme vous le voyez, avec la configuration des conscrits, rm
+demande confirmation avant d'effacer un fichier, parce que rm
est
+en fait un alias (raccourci, si on veut) pour rm -i
+(interactif); la commande rm
tout court efface sans
+poser de questions; l'option -i
demande confirmation. Soyez donc
+prudents quand vous êtes ailleurs qu'à l'École, il n'y aura pas forcément
+d'alias pour rm
. Vous pouvez allez lire le cours des tuteurs
+sur cette commande
+
+L'interface proposée par la configuration des conscrits ne propose pas de
+«corbeille», c'est-à-dire de zone de transit où stocker les fichiers avant de
+les effacer définitivement. rm
efface définitivement le fichier.
+En cas de fausse manoeuvre, si vous effacez par mégarde un fichier,
+adressez-vous au SPI pour qu'on vous remette en place la dernière version
+sauvegardée du fichier.
+
+La commande qui sert à effacer un répertoire est rmdir
+(remove directory; voir le numéro 3 du Hublot). Un
+répertoire doit être complètement vide pour pouvoir être détruit.
+rm
a des options qui permettent de détruire récursivement un
+répertoire et son contenu; je vous renvoie aux pages du manuel (voir man*).
+
Les données informatiques +sont souvent volumineuses; par exemple, 30 secondes de son qualité CD +remplissent une disquette, soit 1,4 millions de caractères. Mais ces +données ont en général un sens, et ne sont pas des nombres tirés au hasard. +Ainsi, un texte français contiendra plus souvent les caractères « », «e» +ou «.» que les caractères «ø» ou «¶». De même, pour une image, il y a souvent +des zones relativement uniformes, et il n'est pas nécessaire de garder la +possibilité de coder toutes les couleurs, puisqu'elles ne sont pas utilisées. +On peut donc essayer de leur faire prendre moins de place. +
++Faire ceci, c'est comprimer les données. Il y a des méthodes plus ou moins +générales, plus ou moins efficaces selon le type de données sur lesquelles +elles sont utilisées (une image se comprime souvent nettement mieux qu'un +programme exécutable). Dans le cas où la donnée finale doit être interprétée +uniquement par un humain, on peut même s'autoriser à perdre certaines +informations pour mieux réduire la taille, à condition que ces informations +soient imperceptibles. Il s'agit là du son ou des images; si vous compressez +un fichier de texte, il sera identique avant et après compression. +
+-- Nicolas George
+gzip
et gunzip
Pour compresser un fichier,
+utilisez la commande gzip
:
steamer ~ $ ls +Mail/ blo rapport.ps vocab vocab~ +steamer ~ $ gzip image.ps +steamer ~ $ ls +Mail/ blo rapport.ps.gz vocab vocab~ ++
+Le suffixe .gz
a été ajouté, et indique que le fichier est
+compressé; sa taille a au moins diminué de moitié, sinon plus. Pour
+décompresser un fichier, utilisez la commande gunzip
. Il est
+inutile de chercher à compresser des images (formats GIF ou JPEG), car elle
+sont déjà compressées.
+
+Il y a aussi les commandes zip
et unzip
qui
+manipulent les fichiers Zip du monde Windows; ceux-ci peuvent être
+multi-fichiers (archives). Il y a aussi d'autres commandes pour compresser un
+fichier (comme bzip2
/bunzip2
). Pour toutes
+questions, n'hésitez pas à nous écrire.
+
+ Dans cette section, vous trouverez la suite du cours de Thomas sur les +réseaux; ce mois-ci, il explique les protocoles utilisés sur Internet. +Dans la section Netscape, on va parler de la gestion des +marques-pages. +
++Dans le dernier cours, on a vu comment Internet était organisé, et comment les +ordinateurs étaient capables d'envoyer une information à l'autre bout du monde +par le moyen de routeurs. Ce mois-ci, on va voir quels protocoles servent à +garantir que les informations arrivent à destination. Un protocole est aux +données ce que le langage est à une conversation: c'est le «règlement». +
++Nous voilà en position d'envoyer des paquets à travers le monde. Mais avec une +fiabilité douteuse. On a principalement deux problèmes: +
++Deux protocoles ont donc été créés. Le premier, UDP (User +Datagram Protocol) est une surcouche triviale d'IP: on envoie des +paquets, sans garantie, d'une taille maximale de 8 192 octets (pour +les données; il y a aussi un entête donnant entre autres l'adresse et le port +de destination).
++++ Surcouche triviale: couche supplémentaire reproduisant la structure +sous-jacente. +
+
TCP (Transmission Control Protocol) est une +mécanique complexe qui assure une sémantique de connexion: un tuyau +bidirectionnel, fiable, au flux contrôlé afin de ne pas provoquer +d'embouteillage, est établi entre deux stations, sur un certain port.
++TCP est le plus utilisé. UDP est utilisé pour certains protocoles où l'ordre +d'arrivée des données n'est pas important, ou quand les données sont +rapidement obsolètes. Par exemple, dans le cas de NFS (partage de disques par +réseau), l'ordre des requêtes n'est pas primordial; quand on fait du téléphone +par Internet, si un paquet se perd, autant l'oublier: sa doublure arriverait +trop tard pour s'intégrer dans le flux sonore.
++La face visible d'Internet est formée par les applications. Nous allons en +détailler quelques unes.
+
+Cette application est chargée de faire la correspondance entre les adresses
+numériques, et les noms de stations, noms qui sont destinés aux humains.
+Ainsi, c'est le système des DNS qui permet à toute station dans le monde de
+savoir que clipper.ens.fr
répond à l'adresse 129.199.129.1.
+Chaque site doit disposer d'un DNS, connaissant les machines locales, et
+pouvant interroger les autres DNS. Les DNS communiquent par paquets UDP sur le
+port 53.
Par connexion TCP sur le port 25,
+ce protocole permet d'échanger des courriers électroniques. De façon
+similaire au transport des paquets IP, un courrier peut effectuer quelques
+sauts (à chaque fois sous la forme d'une connexion TCP) entre serveurs de
+mails avant d'arriver à destination. Par exemple, à l'ENS, tout courrier
+sortant passe par nef.ens.fr
.
+Ce protocole de transfert de fichiers utilise deux connexions TCP, sur les +ports 20 et 21 (celle sur le port 20 sert aux données, celle +sur le port 21 transporte les commandes).
++Créé par Sun Microsystems, ce protocole de partage de disques permet, à l'ENS, +de pouvoir manipuler ses fichiers quelle que soit la station qu'on utilise. +Souvent décrié, ses versions modernes sont fort acceptables, pourvu que le +réseau sous-jacent soit rapide. Il utilise des paquets UDP, sur le port +2049.
+C'est le coeur du World Wide Web, qui
+n'est qu'une application d'Internet, récente de surcroît (1990). Par
+connexion TCP sur le port 80 du serveur Web, le client obtient le contenu
+d'une page (normalement en langage HTML) et divers autres types de fichiers
+(notamment les images). Une adresse Web (URL) commence par le mot-clé
+http
, indiquant le protocole utilisé, puis contient le nom du
+serveur Web, puis enfin le nom du fichier (avec éventuellement des répertoires
+et des sous-répertoires) sur ce serveur.
+
+Figure 1 : Consultation de
+http://www.ens.fr/index.html
-- Thomas Pornin
++Le mois dernier, on a vu la navigation sur le Web. Ce mois-ci, on va voir +comment créer des raccourcis vers une adresse (marques-pages). Comme +d'habitude, j'utilise la version 3 de Netscape. +
+ Les
+marques-pages sont des raccourcis vers des adresses fréquemment visitées, ou
+particulièrement intéressantes; plutôt que de noter l'adresse à la main dans
+un carnet ou un fichier, ou de suivre à chaque fois une série de liens sur des
+pages Web, ou de recourir à un moteur de recherche, on crée un raccourci vers
+la page. Il suffira alors de cliquer sur le nom de la page pour s'y rendre.
+Voici à quoi ressemble le menu Bookmarks
:
+ +
+
+Pour ajouter un marque-page pointant vers la page sur laquelle on se trouve,
+il suffit de sélectionner Add Bookmark
. Pour aller sur une page
+référencée, on clique sur son nom dans le menu.
À force d'ajouter des marque-pages,
+on finit par se retrouver avec une liste interminable. Il est possible
+d'éditer les marque-pages pour en détruire certains, les regrouper dans
+des sous-menus, les renommer, etc. Pour cela, sélectionnez
+Bookmarks
dans le menu Window
. Une fenêtre
+comme celle-ci s'affiche:
+ +
+
+Vous pouvez sélectionner une ligne avec la souris, puis la copier-coller, ou
+la détruire (sélectionner Cut
, Paste
ou Delete
dans
+le menu Edit
).
+
+Dans le menu Item
, vous trouverez deux lignes intéressantes:
+Insert Folder
permet de créer des sous-menus (comme le sous-menu
+ENS
dans la copie d'écran); Properties
permet d'éditer les
+propriétés d'un marque-page, par exemple pour changer son nom (sélectionner le
+marque-page avec la souris, puis cliquer sur Properties
).
+
+Pour quitter cette fenêtre: sélectionner Close
dans le menu
+File
.
+
+La Bibliothèque des Lettres dispose, dans la salle des périodiques, de quatre +postes de travail (1 Mac, 3 PC sous Windows) dédiés à la consultation des +CD-ROM. +
+Certains d'entre eux constituent +le prolongement des collections en «texte intégral » conservées au CEA (cf. le +précédent numéro du Hublot). Le CETEDOC permet d'interroger +les Pères de l'Église latins et plusieurs auteurs du Haut Moyen-Âge sur PC +(Windows). Les textes, présentés sans apparat critique, ni notes, ni +commentaires, sont issus, chaque fois que possible, du Corpus +Christianorum, et à défaut, de la vénérable édition de Migne. La +Database of Classical Bibliography, consultable sur Mac, renferme, dans +sa version actuelle, les volumes 45 à 60 (années 1974--1989) de L'Année +Philologique. Plus souple que le répertoire imprimé, la base électronique +donne accès aux références bibliographiques par l'intermédiaire de 19 index +(auteur, oeuvre, mot, titre, collection, date, lieu d'édition, rubrique APh, +etc.) qu'on utilise séparément ou en association. Dyabola est +constitué à partir des fichiers matières de l'institut d'archéologie allemand +de Rome: il couvre les domaines de l'archéologie et de l'histoire de l'art +dans l'Antiquité. Le logiciel d'interrogation, conçu pour PC, fournit des +références bibliographiques en fonction de mots-clés de sujets, de noms +d'auteurs, de titres de publications ou de dates. Il convient d'ajouter à +cette liste le LDAB (The Leuven Database of Ancient Books), qui n'est +pas un CD-ROM, mais un fichier FileMaker Pro pour Mac, et qui renferme une +base de références concernant les papyri, tant littéraires que scientifiques, +allant du IVe siècle av. J.-C. jusqu'au IXe siècle de notre ère. +
+Mais la politique de la Bibliothèque +consiste surtout à acquérir les outils bibliographiques fondamentaux. C'est +ainsi qu'elle possède le BN-Retrospect, un ensemble de 6 CD-ROM +installés dans une tour, et qui résulte de la fusion de plusieurs catalogues +imprimés ou accessibles en tiroirs à la BNF: le Catalogue général des Auteurs +(avant 1960), celui des Auteurs, Collectivités et Anonymes (1960-1969) et +celui des Périodiques (avant 1960). L'ensemble électronique constitue une +collection de 3 millions de notices répertoriant des ouvrages parus depuis +l'époque des incunables jusqu'à 1970. +
++Si l'on souhaite compléter sa recherche pour la période allant de 1970 jusqu'à +maintenant, il convient de se connecter à la base BN-OPALE PLUS grâce à +Internet (http://catalogue.bnf.fr/). La +description des périodiques et leur localisation dans les bibliothèques +françaises sont assurées, sur PC Windows, par Myriade. Les thèses +soutenues dans les universités françaises depuis 1972 (pour les Lettres et les +Sciences) ou 1983 (pour les professions de la Santé) sont répertoriées dans +les deux disques de DocThèses. Les hispanisants trouveront dans +Hispanam, consultable sur PC Windows, une bibliographie sur la langue +et la littérature espagnole en Europe et en Amérique. +
+Le +fonds comprend encore la version électronique des usuels incontournables. +Ainsi en est-il de l'Encyclopædia Universalis et du +Dictionnaire encyclopédique Hachette, interrogeables +tous deux sur Mac. D'autres titres se destinent plutôt à la +vulgarisation. La conquête de l'archéologie moderne +présente, sur Mac, l'histoire de l'École Française d'Athènes de 1846 à +1914, tandis que Délos renferme une base de +photographies numérisées d'après les clichés pris par les membres de +l'EFA sur le site entre la fin du XIXe siècle et 1914. Citons encore +L'Encyclopédie de la musique, ou La leçon +d'anatomie, qui comporte des documents iconographiques et des +textes illustrant les progrès de cette discipline dans les différentes +civilisations depuis l'Antiquité jusqu'à nos jours. L'acquisition de +cette catégorie de CD-ROM n'est pas une priorité pour la Bibliothèque +d'Ulm, en revanche, celle de Jourdan possède une remarquable collection +d'encyclopédies et de dictionnaires électroniques, ainsi que des titres +portant sur la littérature, la musique, l'histoire de l'art, tant sur +CD-ROM que sur vidéodisques.
+Bien qu'il ne s'agisse pas de +CD-ROM, il importe de mentionner quelques bases de données, conçues par le +personnel de la Bibliothèque sous forme de fichiers 4D, et consultables dans +la salle 2 (iMac Framboise), la salle 4 (iMac Mandarine) et la salle des +périodiques. Un catalogue mixte Ulm-Jourdan répertorie tous les titres de +périodiques, toutes les collections, ainsi que les ouvrages entrés à Ulm +depuis 1996, et à Jourdan depuis septembre 1998. D'autres bases spécialisées +cataloguent les thèses sur microfiches, les mémoires de maîtrise des élèves, +les tirés à part (en cours de constitution), et même une «bibliographie +normalienne » concernent spécifiquement l'ENS. +
++Les différents titres que possède la Bibliothèques des Lettres sont en nombre +insuffisant pour constituer une véritable section de ressources électroniques, +mais les principales références sont disponibles. Ils ne se positionnent pas +en concurrence, mais en complémentarité des instruments bibliographiques +traditionnels, assurant ainsi à l'usager des lieux un travail efficace et +fructueux. +
+-- Daniel Béguin
+C'est
+un ensemble de documentations, en anglais, pour chacune des commandes Unix
+existantes. Par exemple, pour la page de man de rm
, tapez
+man rm
. Les commandes de déplacement, recherche, etc, sont
+celles de less
(voir les exercices sur less
). Le man est une référence,
+et pas un guide d'apprentissage. Il est donc souvent difficile à comprendre
+quand on débute...
Zone du disque +dur où le système stocke automatiquement la mémoire peu utilisée, afin de +garder la vraie mémoire, rapide, pour ce qui sert vraiment. Par exemple, un +terminal auquel on n'a pas touché depuis longtemps est souvent vidé de la +mémoire, et met quelques secondes à revenir quand on veut s'en +servir.
+Au troisième trimestre, le stage intensif sur tout un week-end est +remplacé par un système de petits stages hebdomadaires, dont le calendrier +suit. Le stage «Introduction aux éditeurs de textes» est indispensable pour +ceux qui ne savent pas ce que c'est, mais qui voudraient suivre le stage +«Mutt» ou les stages de LATEX. Attention: on suppose que +les gens qui viennent à ces derniers stages savent se servir d'un éditeur de +textes, et utiliser plusieurs fenêtres à la fois. Au besoin, si vous ne pouvez +pas venir au stage sur les éditeurs, demandez un petit cours, ou consultez +notre page Web:Les éditeurs de texte.
+
+ Pour s'inscrire, envoyez un courrier aux tuteurs
+(
+
+ tuteurs@clipper
+
+ ), ou déposez un mot dans
+le casier d'Émilia Robin. Les stages auront lieu le vendredi soir, à
+20h30, en salle S.
+
Vendredi 28 avril | +Introduction aux éditeurs de texte | +Pour ceux qui n'en +connaissent aucun, et qui ne savent pas à quoi ça sert. | +
Vendredi 5 mai | +Mutt/Pine | +Logiciels de courrier. Deux groupes en +parallèle, selon le logiciel choisi. | +
Vendredi 12 mai | +Vim/Emacs | +Apprendre à se servir de ces éditeurs de +texte; deux groupes en parallèle, selon l'éditeur choisi. On suppose que les +participants savent déjà se servir d'un éditeur de texte élémentaire. | +
Vendredi 19 mai | +LATEX pour littéraires | +Gros documents, index, +bibliographie... | +
Vendredi 26 mai | +LATEX pour matheux | +Figures, formules mathématiques, +etc. | +
+ +
+ispell
et
+gospell
+ file
+ Voici le dernier numéro du Hublot pour l'année 1999--2000 et +l'épilogue de nos grandes sagas de l'année... On revient encore plus top mieux +en octobre, avec les conscrits, les vendanges, les bonnes résolutions... +D'ici là, on vous proposera au mois de juin les divers cours du Hublot +en fascicules séparés: typographie, cours Unix, réseaux, Netiquette, +Netscape.
+Nous sommes toujours à votre disposition pour toutes questions, et
+surtout pour toutes suggestions pour l'an prochain...tuteurs@clipper
. Vous pouvez aussi mettre un mot dans
+le casier d'Émilia Robin. Certaines pages de notre site sont indiquées dans
+les articles: on suppose que toutes les adresses indiquées commencent par http://www.eleves.ens.fr:8080/tuteurs/
. Certains mots sont suivis
+d'un astérisque*; ils renvoient au lexique en fin de numéro. Vous pouvez
+retrouver les anciens numéros du Hublot sur notre site:http://www.eleves.ens.fr:8080/tuteurs/docs/hublot/
Merci au SPI pour son soutien, à Jacques Beigbeder, Éric Guichard et +Daniel Béguin pour leurs articles, aux divers rédacteurs: Pierre Corbineau, +Nicolas George, David Madore, David Monniaux, Thomas Pornin, Gilles Radenne, +et aussi à tous ceux qui ont contribué, de près ou de loin, par leurs +relectures et/ou leurs conseils, à la rédaction du Hublot: Hélène, +Hélène encore, Marie-Lan, Étienne, Verzi, MXK, Éric, Éric encore, Zpeat, Max, +Isil, P'titboul, Olivier, Yann, Alain, Damien, Seb, Edd, Tmoy, Sbi... Et merci +à tous ceux qui ont pris la peine de nous écrire pour nous donner des conseils +et des encouragements!
+On parle beaucoup de virus en ce moment dans la presse, avec le récent +virus I Love You, qui s'attaquait aux machines fonctionnant sous +Windows et utilisant Outlook, par l'intermédiaire d'un fichier attaché. +Un courrier collectif avait été envoyé à ce sujet le 5 mai par Jacques +Beigbeder. Un filtre a été mis en place à l'entrée de l'École pour rejeter les +courriers électroniques ayant comme sujet ILOVEYOU; environ 35 courriers ont +été rejetés (ce qui est peu, sachant que l'ENS reçoit en moyenne 30 000 +courriers électroniques tous les jours...). Nous profitons de l'occasion pour +faire le point sur cette question des virus, et sur ce que la presse en a dit, +également... +
++Un virus informatique est un programme, de même qu'un traitement de textes ou +un logiciel de calcul scientifique. Sa particularité est qu'il opère en grande +partie à l'insu de l'utilisateur de la machine, et qu'il essaye de se +transmettre à d'autres machines ou d'autres utilisateurs. Il peut n'avoir +aucun comportement à part la réplication, ou créer des troubles plus ou moins +graves (animation non désirée sur l'écran, remplacement de certains mots dans +le texte du document édité, voire destruction complète de certaines données). +
+Il y a quelques années, les virus se transmettaient exclusivement par +l'utilisation de programmes déjà infectés, c'est à dire de programmes normaux +(traitement de textes, jeux...) modifiés par un virus afin de contenir une +copie de lui-même. Lors de l'utilisation du logiciel en question, le virus +s'active et essaye de se recopier au sein des logiciels installés sur le +disque dur de la machine, voire du système (p.ex. Windows) lui-même. Le +logiciel est ainsi installé à demeure sur la machine de l'utilisateur, qui ne +soupçonne rien. À chaque fois que l'utilisateur recopie un logiciel (ex: un +jeu) installé chez lui et le donne à un autre utilisateur, il copie le virus +par la même occasion1. +
++Certains virus récents, dont les très médiatiques Melissa et +I Love You, se reproduisent au travers du courrier électronique. Leur +mode d'action est le suivant: on peut attacher des documents (images, sons, +textes...) au courrier. Lorsque l'utilisateur demande la visualisation du +document, certains visualisateurs (p.ex. Microsoft Word, Microsoft Excel) +exécutent des commandes incluses dans le document. Le virus va ainsi se faire +passer pour un banal texte, et lorsque l'utilisateur va demander à voir ce +texte, il va lancer le virus au passage. Le virus va alors récupérer des +adresses de courrier électronique et se reexpédier et/ou s'installer au sein +du système. +
+La plupart des virus transmis par courrier électronique sont essentiellement +ennuyeux à cause du flot de courrier qu'ils génèrent. Le récent I Love +You efface certaines données des utilisateurs, dont les fichiers JPEG (images +photographiques), ce qui explique l'émoi qu'il a suscité auprès des +journalistes. +
++Il n'existe aucun obstacle technique à ce qu'un virus fasse des choses plus +insidieuses, comme récupérer des données personnelles (numéros de cartes +bancaires, adresses, textes contenant certains mots-clefs) sur le disque dur +et les renvoyer à l'auteur du virus... d'une manière éventuellement +intraçable! +
+Les systèmes d'exploitation Microsoft Windows +95, 98 et Millenium et Apple MacOS permettent à (presque) n'importe quel +programme fonctionnant sur la machine de modifier n'importe quelle partie du +système. Au contraire, Windows NT et 2000 et Unix (dont Linux) ne permettent +pas aux programmes lancés par de simples utilisateurs de changer des +paramètres globaux au système. Il est ainsi impossible (sauf bogues dans le +système) à un simple utilisateur des machines Unix de l'ENS de lancer un virus +qui se mettrait en place dans un traitement de texte utilisé par les autres +utilisateurs2. +
++En résumé, sous Windows, lancer le moindre programme de source inconnue +(ex: un petit gadget qui affiche une animation sur l'écran, un jeu...) +c'est s'exposer à ce qu'il installe des choses non désirées dans le +système. Il n'est donc pas étonnant que certaines entreprises interdisent +formellement à leurs employés l'installation de logiciels non approuvés! +
+Les logiciels de la société Microsoft +(Outlook, Word, Excel...) offrent souvent la possibilité d'adjoindre à un +document (texte, feuille de tableur...) des petites commandes (macros) +exécutées automatiquement à l'ouverture du document. Cela peut être pratique +par exemple pour offrir à l'utilisateur des options de remplissage automatique +dans un formulaire, des menus... Jusque là, rien que de très normal. Ce qui +l'est moins, c'est qu'une palette très large de commandes, y compris +l'écriture de fichiers sur le disque dur, est permise dans des documents +affichés directement depuis le courrier électronique. +
++On ne peut qu'être atterré par un tel manque de sérieux de la part d'une +société qui se veut aussi professionnelle que Microsoft. En résumé, +leur système de courrier électronique exécute n'importe quels ordres contenus +dans un courrier électronique de quelque provenance que ce soit lorsque +l'utilisateur demande à voir le contenu du courrier. C'est un peu comme si +dans une entreprise le service chargé du courrier payait n'importe quelle +facture lui arrivant par la poste, sans prendre la peine de vérifier son +bien-fondé! +
++Les virus naturels ont la particularité de pouvoir évoluer au cours du +temps, et la sélection naturelle favorise les souches résistantes aux +«contre-mesures». Dans le cas des virus informatiques, dans l'état +actuel des choses, rien de tel: les «mutations» sont en fait des +modifications apportées par des programmeurs au code du virus, afin de +produire leur propre version. Le virus I Love You effaçait les +images Jpeg et les sons MP3, mais des modifications minimes peuvent le +transformer en virus à effacer les documents Word (attention à vos +mémoires!). Comme de telles modifications sont à la portée de n'importe +quel programmeur moyen, le nombre de versions dérivées d'un virus à succès +peut être considérable, et il n'est pas sûr qu'un anti-virus capable de +détecter l'original détecte la version modifiée. +
+Comme nous l'avons vu plus haut, le problème des virus dans le courrier +électronique découle d'une faute grossière de conception du système de +courrier électronique de Microsoft. Une première parade est de ne pas utiliser +ce système. Les utilisateurs de machines Unix à l'ENS n'ont donc rien à +craindre. +
++Si on doit lire son courrier sous Windows avec Outlook, il faut désactiver +l'exécution automatique des attachements, ce qui est l'option par défaut. +
++Les logiciels anti-virus sont une parade souvent insuffisante. Ils sont +essentiellement faits pour découvrir des virus déjà connus, alors que des +nouveaux virus sont bricolés chaque semaine. De plus, on peut parfois se +demander (en étant vraiment mauvaise langue) s'il n'existe pas un lien entre +les auteurs de virus et les éditeurs de logiciels anti-virus (comment disent +les Dupon{d,t}: chercher à qui profite le crime!). +
++Il serait faux de dire qu'il est impossible d'écrire un virus pour Unix. +C'est simplement largement plus difficile (il faut trouver des problèmes +de sécurité compliqués à exploiter) et inefficace, notamment en raison des +dispositifs de sécurité empêchant à un utilisateur de modifier les données +d'un autre utilisateur. De plus, la diversité des environnements (Suns, PC +Linux, etc...) rendrait le virus encore plus compliqué à écrire. +
++Écrire un virus du type Melissa ou I love you ne nécessite pas +d'être un génie de l'informatique, loin de là. Mais il y a encore plus +simple: écrire un avertissement contre un virus... qui n'existe pas, lui +adjoindre un petit message du style «C'est vraiment très important, avertissez +tous vos amis», et attendre que des utilisateurs pleins de bonnes intentions +propagent le message. Il s'agit pourtant d'une sorte de virus, qui se +dissémine à l'aide de la naïveté de certains, et qui fait partie d'une famille +fort vaste de «lettres en chaînes». Outre les avertissements de virus, citons +aussi les rumeurs du style «des trafiquants de drogues distribuent des bonbons +au LSD aux enfants... avertissez tous les parents que vous connaissez». +
+
+Inutile de dire qu'il convient de ne pas disséminer ce genre d'«informations».
+L'école dispose du Service de Prestations Informatiques, dont les personnels
+se tiennent constamment au courant des problèmes de sécurité informatique.
+C'est à eux, et non pas aux élèves, de diffuser des avertissements concernant
+les virus. C'est eux (spi@ens.fr
) qu'il faut contacter en cas de
+doute.
+-- David Monniaux, Laboratoire d'Informatique +
++Dans Le Monde interactif, supplément informatique du journal Le +Monde, daté du mercredi 10 mai 2000, on lit en première page un grand titre +qui proclame: «Le virus I Love You révèle les faiblesses du Web». En un mot, +c'est du n'importe quoi, mais du n'importe quoi en première page d'un journal +réputé... +
++C'est quoi le Web? Le Web, c'est un réseau d'informations, reliées entre elles +par des liens (liens hypertexte si on veut faire branché). Quand on suit un +lien en cliquant dessus, on est amené sur une autre page. Il se peut que la +nouvelle page soit physiquement sur le même ordinateur, ou au contraire à +12 000 kilomètres de là, ça n'a aucune importance. +
++Le Web est l'un des aspects d'Internet. Internet, c'est la mise en réseau +mondiale d'ordinateurs. Ça implique une infrastructure matérielle (câbles, +routeurs...), et une série de protocoles pour faire transiter les +informations. Par exemple, le Web utilise le protocole HTTP. Mais Internet +c'est aussi le courrier électronique, le transfert de fichiers, la connexion à +distance (telnet), les news... Pour chacune de ces fonctions, on utilise un +logiciel: navigateur pour le Web, logiciel de courrier, etc. Si vous voulez, +Internet c'est comme une route que les gens utilisent pour différentes +fonctions (transport de marchandises, vacances, trajet boulot-dodo, balade à +vélo...), et ces fonctions c'est le courrier, le Web, etc. +
++Tout ça pour dire quoi? I Love You est un virus qui utilise un trou de +sécurité d'un logiciel de courrier électronique, Outlook. Pour +continuer la comparaison routière, imaginons qu'un fabricant de pneus +(appelons-le Pierralu) a commercialisé une série de pneus défectueux, qui +explosent. Les journaux parleraient de la mauvaise qualité des pneus Pierralu, +mais ne titreraient pas «Les pneus qui explosent révèlent les faiblesses de la +route»... +
++Il faudrait cesser de confondre Internet et le Web, et le réseau avec les +logiciels qui l'utilisent... +
+Le mois dernier, on a +expliqué l'emploi des diverses fontes. Pour clore ce cours de +typographie, on va voir quelles sont les principales règles françaises de +présentation d'une bibliographie. Ces informations proviennent d'une part +du Lexique des règles typographiques en usage à l'Imprimerie +nationale, Imprimerie nationale, 1990, d'autre part d'une mise au +point très claire de J.-M. Burlat et B. Prudhomme3.
+Il existe deux normes internationales de +présentation des références bibliographiques. L'ISO 690 (1987) décrit le +«contenu, la forme et la structure» des références bibliographiques, et +l'ISO 690-2, datant de 1995, traite du référencement des documents +électroniques4. +
++Ces deux normes de l'International Standard Organisation (ISO) définissent la +nature des informations à présenter et l'ordre dans lequel on les présente. +C'est une description logique. La typographie proprement dite, la mise +en page graphique n'est pas prescrite par la norme, et varie selon les +pays. Il n'existe d'ailleurs pas de norme en la matière, mais des usages, que +voici. +
+La bibliographie est placée le plus souvent en fin d'ouvrage, +avant le ou les index, et les tables (des matières, des figures, etc). Dans +les ouvrages d'érudition, on peut la trouver en début d'ouvrage, après les +introductions. +
+Une bibliographie se présente comme une liste numérotée, avec +les numéros entre crochets. Le classement interne dépend du contexte: ordre +alphabétique (bibliographie courte), classement thématique, classement selon +la nature de l'ouvrage... +
+On indique le nom de famille en petites capitales, suivi +d'une virgule et du prénom. Quand on connaît le prénom complet, on l'indique, +sinon on se contente des initiales. N'oubliez pas le tiret des prénoms +composés! +
++Quand il y a deux auteurs, on met «et» entre les deux noms; quand ils sont +trois, on n'écrit «et» qu'avant le dernier, comme dans une énumération +classique. Si l'ouvrage compte plus de trois auteurs, on n'indique +habituellement que les trois premiers, suivis de «et. al.». +
++La norme dit qu'il faut séparer les divers champs de la référence (auteurs, +titre, édition...) par des points, ou des points-virgules, en réservant la +virgule pour les distinctions à l'intérieur d'un champ. C'est une question +d'usages. Si on utilise le point comme séparateur, il va de soi que, le cas +échéant, on supprime le point d'abréviation (voir le dernier exemple +ci-dessous): +
+Le titre est écrit en italique. Dans le cas d'un article ou +d'une contribution, le titre du passage est indiqué entre guillemets, puis on +écrit en italique le nom de l'ouvrage ou de la revue dont le texte est +extrait. Faut-il mettre «in» ou «dans» entre le titre de l'article et +l'ouvrage? Ce n'est pas clair... L'important est d'être cohérent, et de s'en +tenir à la méthode choisie (pas comme dans nos exemples, donc).
+Pour citer un ouvrage écrit en caractères non latins (grec, russe, arabe, +chinois...), on a le choix entre utiliser une police exotique, ou recourir à +la translittération en usage. Dans tous les cas, on indique ensuite la +traduction du titre, entre crochets: +
++Quand on cite juste un chapitre ou un tome, on commence +par donner les références de l'ouvrage, puis on indique la sous-partie. +
+Après le titre, on indique le lieu d'édition, l'éditeur, +l'année. On peut mentionner la collection, mais ce n'est pas obligatoire. +Pour le lieu d'édition, il peut arriver que plusieurs villes soient indiquées; +vous pouvez ne mentionner que la première. +
++Dans le cas d'un article, on indique dans l'ordre, après le titre du +périodique, l'année, le volume et le numéro. +
+Pour un ouvrage, on donne le nombre de pages: «579 p.». Pour +un article, une contribution, on indique la pagination sous cette forme: +«p. 123--148»; on met un tiret et non un trait d'union entre les chiffres. +Attention: l'abréviation pour «page» est «p.» et non «pp.»; n'oubliez pas de +mettre un espace insécable entre l'abréviation et le numéro. +
+ispell
et
+gospell
+
+Le correcteur orthographique le plus répandu dans le monde Unix
+s'appelle ispell
. Il se manipule de manière très simple. Dans un
+terminal, il suffit de taper ispell fichier
, et la correction
+commence... En anglais, qui est la langue par défaut. Pour obtenir une
+correction en français, il faut préciser sur la ligne de commande:
+
bireme ~ $ ispell -d francais orthographe.txt
+
+ On a alors droit aux commandes de correction en plein écran: +
++Une grose faute d'orthographe. + + 0: glose 4: grouse + 1: grise 5: prose + 2: gros 6: rose + 3: grosse + +[SP] <number> R)epl A)ccept I)nsert L)ookup U)ncap +Q)uit e(X)it or ? for help ++
Le programme nous montre les mots mal orthographiés, et propose des +orthographes approchantes. Il va aussi souvent demander confirmation pour la +décomposition d'un mot, en particulier quand il y a des apostrophes. Les +options offertes sont alors: +
+espace
: ignorer la faute;numéro
: remplacer par un des mots
+proposés;R
: remplacer manuellement; le(s) mot(s) alors saisis seront
+corrigés à leur tour;A
: accepter ce mot pour le reste du texte;I
: insérer le mot dans le dictionnaire personnel; il sera
+alors accepté pour tous les autres textes;L
: chercher un mot dans un dictionnaire (hélas, toujours
+dans un dictionnaire anglais);U
: comme I
, mais en considérant le mot en
+minuscules;Q
: abandonner la correction;X
: arrêter là et sauver les corrections faites.gospell
+ Comme les accents posent des problèmes,
+on utilise un script* local à l'École, gospell
, qui lance
+ispell
avec les bonnes options. Il suffit de taper
+gospell -f
pour le français, ou gospell -e
+pour l'anglais.
Pour finir avec les remarques, il faut signaler que le dictionnaire
+français n'est pas installé sur les machines Linux (chaland
+en salle S, tremble
en salle T, buyse
en
+Infi, gondole
à Jourdan, polacre
et
+ponton
à Montrouge).
Emacs fait tout, même le
+café. Il sait notamment utiliser ispell
pour vous permettre
+de corriger confortablement le texte que vous êtes en train de taper.
+Pour cela, vous devrez d'abord probablement changer le dictionnaire à
+utiliser. Pour ce faire, tapez Méta-X
, puis
+ispell-change-dictionary
, et indiquez quel dictionnaire
+utiliser. Ensuite, vous pouvez lancer la correction par
+Méta-X
, puis ispell-buffer
. Avec
+XEmacs, vous pouvez également utiliser le bouton dans la barre
+d'outils.
+Une petite fenêtre s'ouvre alors au-dessus de votre document, dans laquelle
+apparaissent les propositions d'ispell
, qui sont les mêmes que quand on
+l'utilise tout seul.
+
-- Nicolas George
+En cette période de rapports, et +bientôt de vacances, voici quelques conseils de bon sens. +
++Les plantages des ordinateurs fonctionnant sous Windows ou MacOS peuvent +entraîner des pertes irréparables de données. Sachez que vous ne pourrez pas +vous retourner contre le fabricant du logiciel, car la licence vous avez +acceptée possède une clause qui exclut toute responsabilité pour les dégâts +que pourrait causer le produit. D'autre part, quel que soit le système, un +disque dur est un dispositif électromécanique pouvant être sujet à des pannes +matérielles. Vous devez donc faire des sauvegardes régulières de vos données, +au moins tous les mois5. Voici +quelques conseils: +
+
+ Ce mois-ci, on aborde la question des formats de fichiers. «Format»
+est un mot-valise, fourre-tout, bien pratique, et pas clair du tout... Dans la
+partie «Commande», on va voir la commande
+
+ file
+
+ , qui sert à identifier
+un fichier. Enfin, dans la partie «Usage», on passe en revue les principaux
+formats de fichiers, en indiquant quels logiciels utiliser.
+
+Les fichiers stockés sur le disque dur d'un ordinateur contiennent des +informations de nature diverses: textes, images, programmes... Toutes ces +informations sont toutes écrites sous la forme d'une suite de nombres compris +entre 0 et 255. Un format est une façon de décrire un objet informatique de +façon à conserver toutes les informations utiles. Par exemple, pour une image, +on veut la couleur de chaque point, mais aussi la taille de l'image, le nombre +de couleurs, etc. On peut en outre vouloir ajouter une brève description, ou +une notice de copyright. Bref, tout n'est pas si simple. +
++Au début, quand on écrivait un nouveau logiciel, on inventait une nouvelle +manière de représenter l'information, c'est à dire un nouveau «format de +fichiers». Mais quand il existe déjà un logiciel similaire, pour peu que le +format de fichiers qu'il utilise soit suffisamment général, et qu'on en +connaisse les spécifications, on a tout intérêt a utiliser le même format pour +garder la compatibilité. C'est pourquoi il existe aujourd'hui un certain +nombre de formats de fichiers très répandus, et compris par la plupart des +logiciels concernés. Il existe aussi un grand nombre de formats utilisés +spécifiquement par un logiciel. +
++Un fichier ayant un format donné est généralement découpé en deux parties: +d'une part l'entête, et d'autre part, les données elle-mêmes. L'entête +contient (souvent) un code identifiant le format, et permettant au logiciel de +vérifier qu'il est bien en train de travailler avec un de ses documents, des +indications sur la variante du format utilisée, des paramètres numériques +(taille par exemple), etc... Ensuite viennent les données, écrites selon le +code du format. +
+
+L'usage veut que l'on ajoute au nom des fichiers un suffixe qui identifie son
+format. Par exemple, un fichier de son au format MP3 a un nom qui se termine
+en «.mp3
»
+
Un fichier est dans un +format texte si les données qu'il renferme sont exprimées sous forme de +texte à peu près lisible par une personne avertie, codé en utilisant le +standard ASCII ou une de ses extensions internationales, à l'exclusion +notamment des caractères dits «de contrôle». En conséquence, un format +texte est utilisable dans un éditeur de texte basique et modifiable à la +main tandis qu'un format binaire ne l'est que par des outils spécifiques. +
++Un fichier est dans un format binaire si au contraire il utilise avant tout +le fait que les fichiers sont des séries de nombres. Il est illisible pour un +oeil humain, et ne peut être lu qu'avec un logiciel spécifique. +
+file
+
+La commande file
permet de connaître le format d'un fichier. C'est
+très utile lorsqu'un fichier est renommé par accident, ou quand on tombe
+sur un fichier inconnu dont on ne connaît pas l'extension. Il suffit de taper
+file
suivi du nom du fichier.
+
bireme ~ $ file hublot6.*
+hublot6.aux: ASCII text
+hublot6.dvi: TeX DVI file (TeX output 2000.04.21:1635 )
+hublot6.html: HTML document text
+hublot6.image.tex: ASCII text
+hublot6.log: TeX transcript text
+hublot6.ps: PostScript document text conforming at level 2.0
+hublot6.tex: data
+
+ Une remarque sur le format «data»: c'est ce que file
+répond quand il ne sait rien dire sur le fichier...
Il y a d'abord le format texte le plus élémentaire: juste
+des mots et rien d'autre... Le fichier peut avoir un suffixe «.txt
».
+Dans cette rubrique «textes ASCII» on inclut les fichiers correspondant à un
+langage spécifique, comme:
+
Fichiers LATEX | +: suffixe | +«.tex » |
+
Fichiers HTML | +: suffixe | +«.html » |
+
Langage C | +: suffixe | +«.c » |
+
Langage C++ | +: suffixe | +«.C » ou «.cc » |
+
Langage Perl | +: suffixe | +«.pl » |
+
Langage Fortran | +: suffixe | +«.f » |
+
+Pour un fichier de texte, vous avez deux solutions: soit ouvrir le fichier
+avec un éditeur de textes, et vous pourrez alors modifier le fichier; soit
+vous contenter de le regarder avec le programme less
(que l'on quitte
+en tapant q
):
+
bireme ~ $ less remarques
+
+ Les fichiers HTML sont un cas particulier: à moins de vouloir voir le +code, c'est le résultat qui vous intéresse. Dans ce cas, vous ouvrez le +fichier avec Netscape ou un autre navigateur.
+ Le format «.dvi
» (binaire) est le
+résultat de la compilation LATEX.
+Le PostScript («.ps
») est un langage de programmation utilisé pour
+décrire les documents imprimés. Grâce à son caractère généraliste, il s'est
+répandu très vite depuis sa création par Adobe Systems jusqu'à devenir un
+standard de fait.
+
+Le PostSript encapsulé («.eps
») est un fichier Postscript comportant
+en outre des indications, sous la forme de commentaires dans le langage
+Postscript, permettant d'obtenir des informations sur le fichier (telles que
+sa taille) sans avoir recours à la complexité d'un interpréteur Postscript.
+Il sert pour les fichiers PostScript destinés à être inclus dans un document.
+
+Le format PDF (Portable Document Format), de la société Adobe, +sert à diffuser des textes sans qu'il soit possible de les modifier (à moins +d'acheter le logiciel idoine). En revanche, le visionneur est gratuit. +
+«.dvi » |
+ : | +
+ xdvi
+ |
+
«.ps » |
+ : | +
+ gv
+ |
+
«.eps » |
+ : | +
+ gv
+ |
+
«.pdf » |
+ : | +acroread , xpdf |
+
Les traitements de textes produisent +des formats généralement binaires:
+Fichiers Word | +: suffixe | +«.doc » |
+
Fichiers ApplixWare | +: suffixe | +«.aw » |
+
Langage StarOffice | +: suffixe | +«.sdw » |
+
+Pour lancer ApplixWare, tapez asterix
, pour lancer StarOffice, tapez
+soffice
.
+Les traitements de textes créent un fichier dans leur propre format, qui n'est +pas lisible par les autres traitements de textes, à moins que ceux-ci ne +disposent d'un filtre d'importation. Pour que celui-ci fonctionne, il faut que +le fichier importé soit dans un format «propre», c'est-à-dire non corrompu par des +informations annexes. Désactivez donc la «sauvegarde rapide» de Word, qui ne +sauvegarde pas le fichier dans un format Word correct, et insère au passage +des extraits d'autres fichiers sans rapport. +
++Il existe un format particulier, appelé RTF (Rich Text +Format)6. C'est +un format créé par Microsoft pour servir de pivot entre différents formats de +traitements de textes. Il a en particulier l'avantage de conserver les +accents, d'être compris par tous les traitements de textes. En contrepartie, +il ne conserve pas forcément toutes les informations de mise en page, et n'est +pas toujours compatible avec lui-même. Cependant, nous ne saurions trop vous +conseiller d'envoyer vos documents au format RTF, au lieu d'imposer à votre +correspondant d'avoir telle version de tel traitement de textes. +
+Il existe un plusieurs formats de fichiers compressés, +dont: +
++Compresser | +Suffixe | +Décompresser | +
+ gzip
+ |
+
+ .gz
+ |
+
+ gunzip
+ |
+
+ compress
+ |
+
+ .Z
+ |
+
+ uncompress
+ |
+
+ bzip2
+ |
+
+ .bz2
+ |
+
+ bunzip2
+ |
+
+Les archives sont des «paquets» de fichiers rassemblés en un seul fichier: +
+«.tar » |
+ : | +Archive simple. Désarchiver avec tar xvf . |
+
«.tgz » |
+ : | +(ou «.tar.gz »). Archive compressée.
+Désarchiver avec tar zxvf |
+
«.zip » |
+ : | +Archive compressée. Se désarchive avec unzip . |
+
Il existe un grand nombre de formats d'images, texte ou
+binaires: XPM, XBM, JPG, GIF, PNG, TGA, BMP, TIFF... Pour visionner une
+image, utilisez le programme xv
. Vous pouvez aussi utiliser le
+logiciel de dessin gimp
, dont le format natif est «.xcf
».
+Les images vectorielles7 ont
+un suffixe «.fig
». On les regarde avec le logiciel de dessin
+xfig
.
+
Il existe différents formats: «.au
»,
+«.wav
», «.mp3
», fichiers pour séquenceur (MIDI), fichier
+modules «.mod
»,
+etc.
+
+Les formats vidéos sont le MPEG (divers suffixes: «.mpe
»,
+«.mpg
», «.mpeg
»), le format AVI («.avi
»), et le
+Quicktime («.mov
», «.qt
».)
+
Fichiers MP3 | +: | +
+ mpg123
+ |
+
Autres fichiers son | +: | +
+ xplay
+ |
+
Format MPEG | +: | +
+ xplay
+ |
+
Format AVI | +: | +
+ xanim
+ |
+
+ Dans cette section, vous trouverez la fin du cours de Thomas sur les +réseaux; ce mois-ci, il présente différents problèmes qui peuvent se produire +sur un réseau informatique. On termine le cours sur Netscape en expliquant +comment télécharger des documents. +
++On va clore ce cours avec un exposé des problèmes les plus fréquents sur un +réseau. Lisez au moins le «plantage du serveur NFS», c'est un problème assez +courant chez nous. +
++Bizarrement, tout cet édifice aux proportions bibliques fonctionne la plupart +du temps. Néanmoins, quand une rupture générale de la Force arrive, on peut se +retrouver avec beaucoup de problèmes, tous différents. Voici quelques +spécimens: +
+ Deux routeurs se renvoient des paquets, chacun
+ayant décidé que Le Bon Chemin passe par l'autre. Cela se diagnostique
+avec la commande Unix traceroute
. Solution: maudire Renater
+(le fournisseur d'accès Internet de l'ÉNS, grand spécialiste du tennis de
+table) et attendre que les routeurs oublient d'être stupides.
Les DNS forment une structure hiérarchique qui a
+tendance à s'écrouler d'un coup. Dans ces conditions, tout semble figé, sauf
+si on utilise directement les adresses numériques; mais il est difficile de
+retenir par coeur 4 milliards d'adresses... Le diagnostic: la commande
+host
sur un hôte connu (www.microsoft.com
par exemple)
+bloque et ne répond pas.
+
Votre station est bloquée, des messages
+«NFS server not responding, still trying
» apparaissent. C'est
+typique du serveur NFS (celui qui possède, physiquement, les disques partagés)
+qui a pris des vacances. Il faut attendre le reboot du serveur. NFS étant
+bien fait, cela débloquera les machines sans conséquence funeste pour les
+opérations en cours.
+
NIS, alias les Pages Jaunes, est le +protocole permettant de partager les mots de passe entre les stations. Pour +l'utilisateur final, les conséquences sont semblables à un plantage NFS: il +faut attendre le retour du serveur NIS. Une fois qu'il est revenu, tout +remarche, rien n'a été perdu. +
+Une partie du réseau est à genoux. La plupart des +paquets s'égarent, tout va lentement, c'est horrible. Pas de solution, sinon +espérer que de nouvelles lignes seront bientôt mises en place, pester contre +ces milliers de crétins qui ne pensent qu'à récupérer les dernières photos de +Pamela Anderson, et revenir se connecter à une heure plus adaptée (pour les +États-Unis, la bonne heure est 6 heures du matin: les Américains sont couchés, +les Européens pas encore levés). +
++Il existe beaucoup d'autres pannes possibles, plus ésotériques. Elles sont la +cause de certaines de ces discussions d'informaticiens, que personne ne +comprend mais qui semblent les amuser follement. +
+Le cours d'Architecture et Systèmes comprend une partie animée par Jacques +Beigbeder, qui décrit, entre autres, le fonctionnement du réseau. +
+
+Les gens motivés se référeront aux RFC (Request For Comments). Ce sont
+les documents de référence; on les trouve là:
+http://www.ietf.org/rfc.html
+
+Le protocole IP est décrit dans la RFC 791. +
++Thomas Pornin +
++Le mois dernier, on a vu comment créer des marques-pages. Ce mois-ci, pour +clore cette présentation des fonctionnalités principales de Netscape, on va +voir comment télécharger des documents. Jusqu'ici, j'ai utilisé la version 3 +de Netscape, mais par défaut nous sommes passés à la version 4. J'indique donc +en parallèle les deux versions. +
+Télécharger se dit to download en anglais, et quand on +veut faire pro, on dit «downloader un machin». Ça veut dire récupérer sur sa +machine le fichier que l'on est en train de consulter, et qui se trouve +physiquement sur un disque dur à l'autre bout du monde ou presque. +
++La page que vous consultez correspond en effet à un ou plusieurs fichiers +(texte, images...). Quand vous vous connectez sur un site, vous demandez au +serveur de vous envoyer telle page, c'est-à-dire tels ou tels fichiers. L'ordinateur +s'exécute et envoie les données qui sont stockées dans un cache* sur votre +machine. Quand on demande à sauvegarder les données, elles sont écrites sur le +disque dur, chez vous. +
+ Dans le menu File
de Netscape, vous trouvez
+une entrée Save As
(ou Alt-S
au clavier). Il suffit donc de
+sélectionner Save As
pour récupérer le fichier.
+
+ + | ++ + | +
Netscape 3 | +Netscape 4 | +
+Netscape 4 fournit une entrée supplémentaire pour récupérer le contenu d'un
+cadre quand on se trouve sur une page avec frames. Pour cela,
+cliquez sur le cadre à télécharger, puis sur Save Frame As
.
+
+Ensuite, une fenêtre apparaît, qui ressemble à celle-ci: +
++ +
+ Il y a deux choses importantes dans cette fenêtre. La première, c'est
+le format sous lequel on veut sauvegarder le document. Vous voyez ici
+«Source
». Ça veut dire qu'on va récupérer le fichier source,
+au format HTML, c'est-à-dire encodé pour être une page Web. Ce fichier au
+suffixe .html
pourra être regardé avec un navigateur comme
+Netscape ou Lynx.
+Vous pouvez aussi choisir «Text
» ou «PostScript
». Au format
+texte, vous ne récupérez que le texte, formaté en paragraphes, sans encodage,
+comme un courrier électronique. Ce sera un fichier au suffixe .txt
.
+Vous pouvez modifier à votre guise le HTML et le format texte.
+
+Le format PostScript est le format de fichier spécifique aux imprimantes.
+Vous obtenez un fichier .ps
, que vous pouvez regarder avec
+gv
et imprimer avec lpr
. Vous ne pouvez pas le modifier
+(enfin si, mais il faut le vouloir pour modifier du PostScript à la main!).
+
+Dans le cadre Selection
s'affiche le chemin d'accès du fichier que
+vous allez télécharger. Par défaut, le fichier est placé dans votre répertoire
+d'accueil. Vous pouvez modifier cette ligne pour mettre le fichier dans un
+sous-répertoire; par exemple, pour mettre ce fichier dans mon sous-répertoire
+tuteurs/
, j'écrirais dans le cadre:
+/users/95/litt/robin/tuteurs/hublot3.html
+
Quand une page Web s'affiche, elle est en fait +constituée de plusieurs fichiers: le fichier HTML qui la code, et les fichiers +des images qui ont éventuellement été insérées. À moins de télécharger le +fichier au format PostScript, les images ne sont pas récupérées avec +la page quand vous la sauvegardez chez vous. +
++Il est cependant possible de récupérer des images. Quand vous cliquez avec le +bouton droit sur une image, ces menus apparaissent (ils peuvent être plus +étoffés si l'image supporte un lien): +
++ + | ++ + | +
Netscape 3 | +Netscape 4 | +
+Il suffit de sélectionner «Save (this) Image (as)
» pour récupérer
+l'image elle-même, sans le texte.
+
C'est tout facile de récupérer plein de choses... Et +le principe est le même pour les sons... Donc la correction et la modération +s'imposent, comme le rappelle la charte signée en début d'année: +
++++ +Tout utilisateur s'engage à utiliser correctement les ressources mises à sa +disposition: mémoire à ne pas saturer, espace disque, bande passante des +réseaux, imprimantes, etc. (Règlement d'utilisation des moyens informatiques +de l'École normale supérieure, 1ier septembre 1999, article 5.1) + +
+
Comme on l'a vu dans le dernier numéro du Hublot, la place disque est +partagée entre les utilisateurs. Si vous tenez à posséder des séries de photos +intitulées «Pamela» ou «Samantha», ça vous regarde, mais ça n'a rien à faire +sur votre compte. +
++Il est aussi plus simple de créer un marque-page vers une page intéressante, +plutôt que de récupérer son contenu chez vous, dans la mesure où à l'École +vous disposez d'une connexion permanente. +
++D'autre part, il y a des questions de copyright. Avant de télécharger quelque +chose, vérifiez la nature du document. Certains cours ou articles sur le site +d'universités sont soumis à copyright, l'image des personnages de bandes +dessinées aussi. Le cas échéant, demandez l'autorisation à l'auteur du site +avant de récupérer le résultat de son travail, même pour un usage privé. +Nous ne parlerons pas des fichiers de musique piratée... Relisez les +articles 6.1 à 6.5 de la Charte. +
+Le cache est +un espace de stockage où le navigateur garde une copie des pages récemment +visitees, afin d'accélérer leur chargement lors de la consultation suivante +(il suffit alors de vérifier que la page n'a pas changé plutôt que de la +télécharger de nouveau). +
++Il y a en fait deux types de cache: d'une part un cache en mémoire vive, qui +ne conserve les données que durant une session de navigation, et d'autre part +un cache disque (parfois désactivé pour économiser de la place) qui est +conservé d'une session à l'autre. +
+Il +existe deux sortes de langages de programmation: les langages compilés et les +langages interprétés. Les langages compilés fonctionnent selon le principe +suivant: le programmeur écrit le code du programme, puis on passe par une +étape de compilation, c'est-à-dire de traduction du code en langage +machine. On dispose alors d'une part du code source du programme, que l'on +peut modifier et recompiler, d'autre part d'un exécutable, illisible par un +humain, mais compréhensible pour l'ordinateur.
++Quand vous achetez un logiciel dans le commerce, vous achetez un exécutable +produit à partir d'un code source, dont vous ne disposez pas. Vous pouvez +utiliser le logiciel, le recopier, mais pas le modifier. Ce n'est pas vrai +pour les logiciels libres.
+Un logiciel +libre est un logiciel que l'on peut copier, modifier et distribuer +librement. Le modifier implique de pouvoir disposer du code source du +logiciel, et pas seulement de l'exécutable*. On peut +revendre commercialement un logiciel libre; dans ce cas, c'est un service +que l'on vend (pressage du CD-ROM, documentation, service +après-vente...), et non pas le logiciel lui-même. Un logiciel libre n'est +donc pas obligatoirement gratuit.
++Là-dessus se greffe la notion de copyleft (par opposition à +copyright): en plus d'être libre, le logiciel est sous une licence (telle que +la GPL) qui garantit que les versions dérivées seront également libres. Des +exemples de logiciels libres: pine, mutt, LATEX, +netscape, linux, gimp, xkobo...
+Programme +servant à automatiser des tâches répétitives, généralement simple. Principales +caractéristiques: le langage utilisé interprète directement le script, de +manière transparente, sans avoir besoin de passer par un traducteur externe; +les constructions utilisées sont généralement de haut niveau par rapport à un +langage de programmation traditionnel, et collent plus avec la notion de +«faire telle tâche, puis telle autre».
++Un programme lancé dans un terminal peut être en mode texte, auquel cas il +s'affiche dans la fenêtre où il a été lancé. Pour sa mise en page, il utilise +le jeu de caractères disponibles, c'est-à-dire les caractères alphanumériques +et les ponctuations. Il peut être en couleurs ou en noir et blanc. Certains +logiciels en mode texte peuvent s'utiliser avec la souris, possèdent des menus +déroulants, etc. Ils s'utilisent cependant le plus souvent avec le clavier. +Pine est un logiciel de courrier en mode texte.
++Par opposition, un logiciel en mode graphique se lance dans une nouvelle +fenêtre, s'utilise avec la souris, et propose divers moyens graphiques +(fontes, couleurs, icônes) pour son utilisation, comme Netscape. +
++Cette année, les membres de l'Atelier Internet se sont avant tout consacrés à +l'organisation du colloque «comprendre les usages d'Internet», qui s'est tenu +à l'École les 3 et 4 décembre 1999. Cette manifestation a réuni quelques trois +cents experts des sciences humaines et exactes, ainsi que des responsables +d'entreprises, du gouvernement, pour faire le point sur les «usages». Il en +est ressorti, outre un grand nombre de collaborations et de programmes de +recherches, le désir de prolonger nos travaux suivant trois axes: +
++La convergence pressentie il y a deux ans entre sciences humaines et sciences +exactes nous apparaît aujourd'hui évidente après avoir rencontré à Toronto des +personnes comme:
++Tous sont persuadés que les sciences exactes ont développé des méthodes et des +outils, aujourd'hui suffisamment affinés pour permettre une étude intelligente +de ce qui était encore hier exclu de leur champ d'investigation: le langage, +l'écriture, la pensée. +
++Bon, nous n'allons pas racheter M$ demain! Mais dans quelques mois, nous +lancerons des recherches communes avec des élèves de plusieurs Grandes Écoles +(les normaliens sont bien sûr toujours bienvenus) pour développer tout d'abord +des systèmes d'aide à la navigation sur Internet (visualisation de +l'architecture de sites Web visités), des (petits) moteurs de recherche, des +mesures de la proximité sémantique entre serveurs, tout en prolongeant la +cartographie automatique du Web (lectorat de serveurs, localisation de tous +les serveurs d'une zone donnée, comme le RIPE), et des outils d'analyse +syntaxique (questions posées à un indexeur, analyse de pages Web). +
++En effet, nous voyons Internet comme un territoire, dont nous ne pouvons +prendre la mesure que si nous l'investissons pleinement: tout comme l'idée +d'un anthropologue qui ne fait pas de terrain se conçoit difficilement (ainsi +que celle de sa neutralité en milieu autochtone), nous ne concevons pas une +analyse des pratiques sociales et intellectuelles d'Internet sans nous +investir en tant qu'auteurs, éditeurs et lecteurs, bref en tant qu'acteurs à +part entière, dans ce nouveau territoire. +
++En attendant, il nous reste à publier les actes du colloque de décembre, ce +qui n'est pas une mince affaire. +
++Mais nous sommes impressionnés par la façon dont notre réseau national et +international se renforce cette année 2000, par le biais d'échanges solides +avec des acteurs majeurs de l'Internet; ces personnalités hors du commun +naviguent sans encombre entre diverses cultures: économistes, linguistes ou +philosophes, ils manipulent avec aisance les giga-octets et ont une activité +éditoriale de premier plan. Ils redonnent aux termes «information» et «base de +données» leurs lettres de noblesse, puisque l'une et l'autre sont des recueils +de Racine, des cahiers de Valéry, voire des bibliothèques entières, et non pas +des théories «sémiologiquement correctes» qui souvent élèvent au rang de +connaissance des séries télévisuelles ou des publicités crétinisantes. +
++Que dire de plus? Que les amoureux et amoureuses des langues vivantes, +soucieux d'intégrer dans nos dictionnaires des mots comme php3, Java, perl et +Kmel, les passionnés qui voudraient construire eux-mêmes un Littré en ligne, +les aventuriers à la recherche de terrains intellectuels quasi-jamais foulés, +tous peuvent venir nous rejoindre à l'Atelier Internet dès la rentrée +prochaine. +
++Éric Guichard +
+Entre un NASDAQ hoquetant et une presse spécialisée dithyrambique à défaut +d'être sérieuse, le monde du pingouin est en ébullition. En effet, l'Empire +Maléfique de Redmond tremble sur ses bases, le terrible Bill Gates est poussé +dans ses derniers retranchements par les chevaliers anti-trust, la bataille +finale approche, et elle décidera du sort du monde libre. On n'aurait pas cru, +vu d'ici, que les quelques démêlés d'un délinquant fortuné eussent pu +impliquer autant. Présentons ici les quelques factions qui se disputent le +fameux marché des systèmes d'exploitation, cela permettra de bien illustrer ce +que c'est au juste que ce fameux logiciel libre. +
+Rendons à César ce qu'il a dûment OPAté, +commençons par Microsoft. Cette société, ancienne startup des années 70, alors +nommée Traf-o-Data et spécialisée dans la numération des véhicules +individuels, prend son patronyme actuel en 1978. Parmi la dizaine d'associés +chevelus qui composent l'intégralité du personnel de cette société naissante, +un jeune homme probablement brillant, Bill Gates. En ces temps-là, IBM est +bien embêtée: Apple commence à bouffer du marché avec ses nouveaux ordinateurs +(Apple I et Apple II, pas encore le MacIntosh, faut pas rêver, j'évoque des +âges reculés). Les finauds de chez IBM conçoivent un plan machiavélique: +construire une machine pourrie, la lancer sur le marché pour bien jeter la +confusion, et le client hésitant se tournera tout naturellement vers la +tranquille pérennité des ordinateurs chers mais éprouvés d'International +Business Machines. D'où le premier PC. IBM refusera le 68 000, processeur +avancé de Motorola, et choisira Intel, qui fournit le 8086, chimère +monstrueuse, union contre-nature du passé et du futur, un peu comme le serait +un TGV à vapeur. Pour le système d'exploitation, pas question de choisir un +dérivé d'Unix (trop professionnel) ou de CP/M (trop évolutif); Billou arrive +alors avec sous le bras un code d'un pote à lui. Bill a acheté ce code 1 000 +dollars, il le revend pour un million (déjà on voit qu'il est doué). Et +surtout, il ne vend qu'une licence non exclusive, et il se garde le droit de +faire de nouvelles versions et de les vendre lui-même, comme un grand. Ce +code, c'est Ms-Dos. +
++C'est qu'il est visionnaire, l'ami Gates! Contrairement aux demeurés d'IBM, il +a bien vu ce qui allait se passer: le PC, boosté par son indigence totale en +matière de brevets, est copié, concurrentialisé, guerredesprisé, sur-diffusé, +et enfin conquiert le marché. Et on en est là: 95% des ordinateurs sont des +PC. Et IBM s'est fait enfoncer par Compaq sur le marché des PC, par Sun sur le +marché des stations de travail. Il y a au moins un peu de justice dans cette +affaire. Pendant ce temps, William Gates, IIIe du nom, a vendu diverses +versions de Ms-Dos, et du complément graphique de ce dernier, le bien connu +Windows, qui a connu moult opus, les derniers étant Windows 98 et Windows +2000. +
++Alors là, maintenant, suivez bien: Bill, c'est le méchant. Il profite +odieusement de sa position monopolistique pour vendre plein de copies de son +Windows, qu'il a truffé de bugs volontairement pour vendre plein de nouvelles +versions, il a fait pression sur les revendeurs10 pour les plier à ses +buts diaboliques de contrôle du monde, il s'est allié avec la mafia, il +soutient le terrorisme mondial, il a vendu son âme au Malin et il mange les +petits enfants. Bon, ok, il est possible que je sacrifie un peu de ma +légendaire objectivité afin de donner un peu d'emphase lyrique au personnage. +Mais quand on s'aventure chez le pingouin, il faut s'y faire, c'est le style +de la maison. Quand on arrive chez la Comtesse, on lui présente ses hommages; +quand on est invité dans l'antre du volatile, on crache sur Billou. C'est +l'usage. +
+Voyons donc son challenger actuel. En 1991, un +étudiant finlandais, Linus Torvalds, s'achète un PC. Il en est très content. +Mais il aimerait bien savoir comment ça marche. Comme c'est un étudiant, il a +du temps libre; alors il se met à programmer un nouveau système +d'exploitation, juste pour voir. Magie d'un Internet balbutiant, d'autres +oisifs se joignent à ses efforts, et, inconséquents qu'ils sont, décident de +se servir du nouveau joujou pour faire du vrai travail. En quelques mois, +Linux était né (même s'il a failli s'appeler Phreax, en fait). Le pingouin +lui-même sera désigné comme mascotte en 1996, sous l'impulsion du nordique +créateur sus-désigné, qui n'a jamais fourni de raisons sérieuses pour ce choix +pour le moins étrange. Probablement un traumatisme dans sa petite enfance. +
++Où en est ce Linux, maintenant ? Quelque part entre 2 et 10 millions +d'exemplaires en usage dans la nature. À la grosse louche, 3% du marché +mondial des systèmes d'exploitation sur micro-ordinateurs. C'est peu, face aux +fenêtres bi-millénaires. Mais suffisant pour remuer des capitaux dans un +marché un peu enthousiaste, voire même franchement téméraire, pour tout dire +absolument cinglé et digne de la camisole. Il faut dire que Linux, c'est de +l'informatique, donc c'est aussi une religion, et donc il y a des fanatiques. +Ce sont les Linuxiens. Le Linuxien, il vit pour et par Linux. Il installe +Linux partout où il peut, non pas parce que ça pourrait aider quelqu'un à +bosser (et pourtant, le logiciel du pingouin, il marche plutôt bien, souvent +mieux que les productions de Bill), mais parce que c'est Linux et que Linux +doit être partout, c'est ainsi. Le vrai Linuxien est à la fois attendrissant +et donne une envie irrésistible de taper dessus, c'est un Bisounours hi-tech. +Le Linuxien hait par dessus tout toute forme de production venant de chez +Microsoft, et également tout quidam qui pourrait évoquer, ne serait-ce qu'un +instant, l'idée d'utiliser Windows. Comme quoi rien ne change au cours des +siècles, on est toujours le païen de quelqu'un. +
+La secte Linux reconnaît une autorité philosophique supérieure: il +s'agit de GNU. GNU, c'est le mouvement de libération du logiciel. Attention, +c'est très sérieux: le vrai GNUiste peut mordre s'il estime qu'on attaque son +dogme. Le gourou de cette église, c'est Richard M. Stallman; il ressemble à un +hippie qui aurait découvert les bienfaits du courant électrique. C'est lui qui +a inventé le logiciel libre*, dont Linux est un parfait exemple et Windows pas +du tout (parce que Billou fait du logiciel propriétaire; bouh le méchant +Billou). L'idée est simplissime, lumineuse même: un logiciel, ça coûte très +cher à produire et rien du tout à reproduire, alors on va le donner, ce +logiciel, et se faire du fric sur le support technique. Mais, puisque RMS +était investi d'une mission divine, il ne suffisait pas de donner le logiciel, +il fallait encore convertir les égarés. Tel le virus de la variole, la +General Public License arrive à la rescousse: remarquable mécano de +juriste, cette licence d'utilisation d'un logiciel libre stipule qu'une fois +qu'on a mis le doigt dedans, on se fait arracher le bras avec. En gros, si on +intègre un morceau de logiciel GPL dans un autre logiciel, le tout devient +GPL. +
++Les cieux s'ouvrirent, la terre trembla, le logiciel libre était né. C'est +dingue comme une idée peut être à la fois aussi américaine (distribution +gratuite, pour bien s'emparer du marché) et aussi socialiste (les moyens de +production doivent être gratuits). RMS créa son temple, la Free Software +Fundation, afin de promouvoir le but grandiose de la libération planétaire, +que dis-je, galactique, des hackers. +
++Le projet de RMS, à l'origine (en 1983), c'était de refaire le monde. Pour un +informatheux, le monde, c'est l'informatique, bien sûr. Donc, RMS avait +constaté qu'il n'y avait pas de système d'exploitation à sa convenance. Alors +il fallait qu'il en fasse un qui serait mieux que tous les autres. Il a donc +commencé à écrire plein d'outils pratiques, notamment ce qu'il faut pour +développer un système d'exploitation11. +Ces outils ont été promptement adoptés et absorbés par le pingouin, et +maintenant, le prototype du système GNU (dénommé Hurd) est en train de +rejoindre le placard, comme tant d'autres projets géniaux avant lui. +
++Un hérétique, Eric S. Raymond, a fondé son propre culte réformiste. Lui, il +utilise le terme «Open-Source», qui veut dire à peu près autant de chose que +«Free Software», c'est-à-dire tout et rien. ESR est plus fourbe que RMS, et, +d'ailleurs, ses idées plaisent plus que celles de RMS dans le milieu des +entreprises (bien que ce soient les mêmes idées, au fond; comme quoi, tout est +affaire de marketing). +
+Pour parfaire ce tableau somptueux, évoquons BSD: dérivé du +travail d'une équipe de l'université de Berkeley, le code BSD se pose comme +une sorte de concurrent à la fois de GNU et de Linux, même si des échanges ont +lieu dans les deux sens. Bien évidemment, les BSDistes ne se privent pas pour +dire que leur code à eux il est bien plus libre que le code GNU. Les GNU-men +rétorquent qu'eux défendent bien plus la Cause que BSD. Querelle de clocher, +finalement. Le code BSD n'a pas le côté viral de la GPL, sinon c'est pareil. +
++Les systèmes de BSD (car il y en a plusieurs, il ne faudrait quand même pas +imaginer que les schismes n'existent pas) sont souvent décrits comme étant +beaucoup plus professionnels et performants que ceux du pingouin finlandais. +Ce qui est objectivement avéré, c'est qu'ils sont beaucoup plus austères. +C'est vrai que ça fait vraiment professionnel, parce que ça n'a vraiment +aucune chance de conquérir le grand public, un système d'exploitation qui +glorifie le mode texte*. +
+Quelle est la finalité de tout cela? La justice? L'équité? Le bonheur des +utilisateurs? Non, bien sûr, rien de tout cela. La charité, ça ne remue plus +les foules. Le Bien, le Mal, c'est très suranné. La vraie raison de toute +cette histoire, le moteur, le nerf, c'est le pognon. Le marché du libre est +juteux, dégoulinant même, c'est une terre de miel et de lait, et est arrosé de +fleuves dans lesquels un quelconque Midas a dû plonger les mains. +
++Et pourquoi cet engouement? L'humanité n'a-t-elle pas vécu plusieurs +millénaires sans logiciel libre (car sans logiciel du tout), et pas si mal que +ça quand on regarde de près? Et bien, ce n'est pas important. Que +l'ordinateur soit indispensable ou superflu, là n'est pas la question. La +seule Vérité, c'est que tout le monde en veut un, et puis c'est tout. Robert +Gropagu, agriculteur dans la Creuse, sait désormais que sans informatique ses +navets ne pousseront jamais, aussi il s'y met, et il consomme. Et comme il se +pique d'être un grand défenseur des libertés individuelles, il fait dans le +logiciel libre, parce que même quand on est paysan on a le droit de faire +smart. +
+Le logiciel libre est le symbole de l'esprit +révolutionnaire retrouvé, la Liberté montant à l'assaut des remparts +obscurantistes du logiciel propriétaire, tendance bourgeois. Alors ça fait +bien, de défendre de grands idéaux de formats libres, de logiciels de qualité +développés pour le simple plaisir de les voir tourner, et tout ça dans une +grand messe financière. Car la Liberté guidant le Peuple, c'était il y +a peu sur tous les bons billets de 100 francs. On réconcilie l'humanitaire et +le mercantile, c'est presque l'incarnation du bonheur prolétaire communiste. +Lénine en serait tout ému. +
++On aurait tort de prendre le marché des «nouvelles technologies» comme preuve +de l'ampleur du phénomène, parce que là-bas ils sont tous fous. Mais +il est vrai que tout ce qui est estampillé «logiciel libre» connaît une +inflation big-banguesque, tellement que la start-up moyenne a pour unique +destin et but d'être introduite en bourse, moment magique où elle rembourse +moult fois l'investissement en quelques jours. En fait, ladite start-up est +souvent vide de sens, et la vente d'actions est en soi une arnaque; citons par +exemple VA-Linux, produit de spéculation pure puisque la société fondée pour +l'occasion n'a pas l'ombre d'un début de commencement d'activité. Il n'empêche +qu'elle a multiplié par huit son cours le premier jour (mais le dit cours est +retombé plus bas que terre depuis, une sorte d'intrusion de la réalité dans +cette belle histoire). +
++Certes, une légère «correction», comme ils disent, a eu lieu, et un léger coup +de balai subséquent. Et Microsoft a des soucis et risque le démantèlement. +Mais il ne faut pas se leurrer: le fantasme de la conquête de l'Ouest, la ruée +vers l'or, existe encore, et on va continuer à voir fleurir des affiches dans +le métro, vantant des sites web avec beaucoup trop de k et de oo dans leur +nom. D'ailleurs, pour en revenir sur le cas de Microsoft: c'est le délire chez +les Linuxiens, en ce moment. Ça y est, la bête est morte! Bien évidemment, +ils oublient que ça ne va rien changer, Windows continuera d'être partout, le +format des documents Word ne sera pas plus spécifié, et puis, même si Word est +finalement porté sous Linux (hypothèse très probable, en fait: Linux, c'est un +marché aussi important que MacIntosh, maintenant), ça n'empêchera pas Word de +planter. Il est très significatif, dans ces conditions, que le démantèlement +soit prononcé non pas pour cause de fumisterie flagrante des programmeurs de +chez Microsoft, mais en vertu de la loi anti-trust, qui, en l'occurrence, +préfère avoir deux entreprises faisant du code propriétaire qu'une seule. +
++Alors, cette folie du logiciel psychotrope, à qui la faute? J'en vois déjà +qui cherchent des coupables. Cessez votre quête, la réponse est évidente: les +coupables, c'est vous. Oui, vous, lecteurs qui pensez être aussi purs que +l'agneau qui vient de naître et dont les défenses immunitaires ont déjà envoyé +ad Patrem des milliers de microbes innocents. Car c'est vous qui vous +émerveillez devant tous les gadgets qui clignotent, les révolutions des +informations autoroutières, les arbres de Noël virtuels. Panem and +circenses, comme toujours. Et c'est pour vous contenter, vous donner ce +divertissement que vous réclamez, que les banquiers allongent 20 plaques au +premier glandu qui arrive avec une idée en bois (mais c'est une idée +«Internet»). Quand on voit un premier ministre faire des discours sur un +thème, de toutes façons, il faut bien se dire que le thème en question est +démagogiquement porteur +
+C'est là qu'on rigole: les utilisateurs vont +souffrir. Et pourquoi? Mais c'est qu'ils n'intéressent personne! Oui, je sais, +toutes les pubs vous disent que l'informatique, c'est pensé pour +l'utilisateur, pour qu'il puisse s'instruire, s'informer et bosser. Et bien +c'est du pipeau! Et des deux côtés encore bien. +
++D'abord, du côté des vendeurs: ce qu'ils cherchent, c'est de la chair à canon. +Le grand public, ah, la belle affaire. Non, tous les linuxiens vous le diront +(sans honte et sans fard, c'est assez étonnant pour que ce soit noté), la +cible, c'est le décideur. Le décideur, c'est le gros bourgeois cigarifiant +qui, dans la boîte, décide ce qui sera acheté et ce qui ne le sera pas. Et +lui, le brave homme, il n'utilise pas d'ordinateur (il n'est pas fou). Le +logiciel libre, peu lui chaut. Pour ravir son coeur, il faut lui en mettre +plein la vue; pour cela, des gadgets (lui aussi, il aime ça), et surtout des +troupes. +
++C'est l'effet pervers du pingouin: se répandre tel le virus, demander à être +installé partout, recruter, entraîner, former des hordes de linuxiens à +envoyer dans la bataille. Qu'importe si Linux n'est pas plus adapté aux +besoins (même fictifs) des utilisateurs que Windows. Non, la Cause est tout ce +qui compte. Le-logiciel-libre, à-mort-le-code-propriétaire. Un mantra vidé de +son sens et scandé selon la grande tradition du martellement idéologique. +D'aucuns auraient invoqué Krishna; mais Linux est un meilleur dieu de nos +jours. Chez Microsoft, ils font pareil, de toutes façons, alors les Linuxiens +(et assimilés) se sentent pardonnés par avance. +
++Maintenant, les clients: certes, ils se font estamper, mais ils l'ont bien +cherché. Après tout, les pubs leur disent bien qu'un gros ordinateur, ça sert +à s'instruire, à créer et à travailler. Personne ne prétend jamais que ça sert +à jouer! Et, franchement, à quoi ça rime de pleurer sang et eau à cause du +prix d'une licence Windows, quand on allonge sans rechigner 400 balles pour +chaque version de Tomb Raider? Hypocrisie générale. Il n'y a pas +d'autre mot. +
++Les pigeons de l'affaire, ce sont les pauvres gars qui veulent simplement +travailler sur ce damné ordinateur qui n'est même pas le leur. Ils regrettent +la simplicité du temps où on utilisait des machines à écrire, et où on ne +multipliait pas les impressions, faute de photocopieuse (qui restait encore à +inventer). +
++Mais ceux là sont condamnés, parce que l'époque ne leur est pas favorable. +Faut dire, ah là là, y'a plus de saison, ma bonne dame. +
++Thomas Pornin +
+http://docinsa.insa-lyon.fr/refbibli/
>.http://www.eleves.ens.fr:8080/home/radenne/Docs/images/Images.ps
.emacs
(l'éditeur de textes), gnuchess
(le jeu
+d'échecs), gimp
(logiciel de dessin et de retouche d'images)...+ +
+Voici le premier numéro du Hublot pour l'année 2000--2001. De +nouvelles rubriques remplacent celles de l'an dernier, avec des articles sur +LATEX, Internet, le forum des élèves, la sécurité +informatique, et un grand cours à suivre sur les ordinateurs.
+http://www.eleves.ens.fr/tuteurs/
+
+
+ /tuteurs/docs/hublot/
+ Nous sommes toujours à votre disposition pour toutes questions et
+suggestions: tuteurs@clipper
. Vous pouvez
+aussi mettre un mot dans le casier de Marie-Lan Nguyen. Enfin, n'oubliez pas
+que quand vous tapez qui
, les tuteurs ont leur nom souligné:
+n'hésitez pas à nous solliciter!
+
+ Dans cette rubrique, on parle de l'utilisation pratique des machines +Unix et de LATEX. De numéro en numéro, nous indiquerons +diverses commandes Unix, qui avaient été abordées de façon détaillée l'an +dernier, et que l'on se contentera de présenter. La section «Config conscrits» +explique comment se servir de l'interface graphique des stations. Enfin, la +rubrique LATEX va passer en revue divers problèmes +classiques: insérer des figures, macros, réglages, etc. +
+Dans ce premier numéro de l'année, on revoit les commandes élémentaires +abordées dans les numéros de l'an dernier. Toutes les options possibles des +commandes ne sont pas indiquées; pour cela, reportez-vous soit aux anciens +numéros du Hublot, soit au site des tuteurs.
+pot
: affiche le menu du pot. Il existe aussi
+les options -jourdan
, hier
, demain
+(Hublot, n° 6, avril 2000; unix/divers.html
).
qui
: affiche le plan des salles informatiques.
+Il existe aussi les options -infi
, -46
,
+-jourdan
, etc (Hublot, n° 1, novembre 1999; unix/communiquer.html
).
+
anniversaire
: affiche la liste des gens dont
+c'est l'anniversaire aujourd'hui (Hublot, n° 3, janvier 2000; unix/communiquer.html
).
+
finger
login: donne des
+informations sur l'utilisateur dont on indique le nom de login
+(Hublot, n° 5, mars 2000; unix/communiquer.html
).
+
date
: affiche la date et l'heure exactes.
+(Hublot, n° 2, décembre 1999; unix/divers.html
).
+
cal
: affiche le calendrier du mois en cours
+(Hublot, n° 2, décembre 1999; unix/divers.html
).
+
hachette
mot: permet d'interroger un
+dictionnaire français (Hublot, n° 4, février 2000; unix/divers.html
).
+
webster
mot: permet d'interroger un
+dictionnaire anglais unilingue (Hublot, n° 4, février 2000; unix/divers.html
).
Le mois prochain, on présentera les commandes de base pour manipuler +fichiers et répertoires sous Unix.
+Sous Windows et MacOS, il +existe une seule interface*, identique sur tous les ordinateurs utilisant ce +système. Les utilisateurs peuvent ensuite la personnaliser, dans la limite de +ce que le fabricant a prévu.
++Sous Unix, il n'existe pas d'interface standard, commune à tous les systèmes, +même si chaque fabricant propose une interface par défaut*. Chaque utilisateur +est libre de choisir ses couleurs, le nombre et l'emplacement des fenêtres, le +contenu de ses menus, les réactions de la souris, les raccourcis claviers, +etc. Une «configuration» est l'ensemble de ces choix techniques.
+Comme il est en fait assez difficile de programmer soi-même son interface, +certains gourous ont créé une configuration spéciale que l'on installe sur les +comptes des conscrits: c'est la config conscrits. Elle comporte des choix +graphiques (taille et nombre des fenêtres, boutons disponibles, menus...) et +logiciels (logiciels lancés par défaut*, activation d'options particulières, +et un tas d'autres choses que vous ne voulez pas savoir).
++Éric Brunet est à l'origine de la config conscrits (rentrée 1997). La mise à +jour de la rentrée 2000 a été faite par Olivier Verzelen. Elle inclut un menu +de fond d'écran enrichi (accessible par un bouton «Menu»), un bouton +«Fichiers» pour gérer à la souris les fichiers, une fenêtre récapitulant +l'actualité de forum, etc.
+Il y a deux possibilités: vous n'avez pas du +tout la config conscrits, ou vous avez une version antérieure à la rentrée +2000.
+configuration
dans une fenêtre et suivez les instructions du
+programme. La config conscrits sera installée sur votre compte, et vous
+pourrez l'utiliser la prochaine fois que vous vous loguerez. bireme ~ $" configuration --get
+Les
+modifications prendront effet à la session suivante.Attention: cette commande installe toute la config
+conscrits. Pour savoir comment en récupérer une partie seulement, allez voir
+sur notre site: unix/config/2002/configure.html
+
Le mois prochain, on parlera des fenêtres: différents types, et +utilisation des boutons.
+Ce mois-ci, on présente brièvement le principe et les avantages de +LATEX, ainsi que des généralités bibliographiques: que +lire sur LATEX, sur le Web ou sur papier.
++LATEX1 est un logiciel qui permet de réaliser des documents +de haute qualité typographique, c'est-à-dire couramment des documents +«sérieux»: mémoires de maîtrise, thèses, lettres, CV. etc. Les matheux +l'utilisent abondamment parce qu'il est très fort pour taper des formules. Les +littéraires l'apprécient de plus en plus pour sa qualité et sa puissance, une +fois surmonté le premier contact parfois rebutant...
+Dans son principe, LATEX est très différent des +logiciels de traitement de textes grand public comme Word. Un traitement de +textes permet à la fois la saisie du texte, et sa mise en page: vous voyez +directement le résultat (c'est ce qu'on appelle un système WYSIWYG: What +you see is what you get).
++Au contraire, LATEX est basé sur un balisage du texte: +au milieu du texte proprement dit, vous insérez des commandes qui sont autant +d'indications de mise en page. Ce que vous tapez n'est pas directement mis en +page, il faut passer par une étape intermédiaire de compilation. +C'est très déroutant au début, car on n'a pas l'habitude de travailler avec +deux versions du document, une «brute», et une mise en page.
+À quoi bon se compliquer la vie? Un traitement de textes est bien plus +facile à utiliser et à prendre en main, surtout quand il s'agit de faire un CV +de deux pages, ou un petit document de cinq pages. C'est en fait sur la longue +durée (et le grand nombre de pages) que LATEX révèle sa +puissance: gestion intégrale et sans erreur de la mise en page, qualité du +résultat, gestion de tous les espacements, numérotations automatisées, +facilité à créer des macros, simplicité de saisie.
++On ajoutera à ça le fait que travailler avec LATEX +signifie en pratique travailler sur les machines Unix2, qui sont sauvegardées, +qu'il y a bien plus de personnes compétentes et disponibles pour vous aider +avec LATEX, et que ce logiciel (comme les systèmes Unix +en général) ignore les virus...
+
+Ce tableau récapitule les commandes à utiliser pour faire du
+LATEX (pour les commandes LATEX
+proprement dites, reportez-vous aux lectures indiquées ci-dessous). On a mis
+nedit
comme éditeur, mais vous pouvez prendre n'importe lequel.
+
Écrire | +
+ nedit
+bofichier.tex
+ |
+
Compiler | +
+ latex bofichier.tex
+ |
+
Voir | +
+ xdvi
+bofichier.dvi
+ |
+
Imprimer | +
+ dvips bofichier.dvi
+ |
+
+Vous pouvez aussi utiliser le logiciel xlatex
, qui réunit chacune
+de ces fonctions en une seule interface (cliquer sur la plume pour lancer
+l'éditeur, sur l'oeil pour afficher le DVI, etc). Attention,
+xlatex
ne tourne pas sur les PC Linux.
Il existe de nombreux ouvrages et textes en ligne consacrés à +LATEX. Voici les meilleurs:
+ftp://ftp.lip6.fr/pub/TeX/CTAN/info/lshort/french/flshort-3.20.dvi
+http://www.grappa.univ-lille3.fr/FAQ-LaTeX/
+/tuteurs/logiciels/latex/
Le mois prochain, on parlera de la compilation d'un document en +LATEX: principe, messages d'erreurs, fichiers annexes. +
+-- Nicolas George, Émilia Robin
++ Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on va expliquer comment on +«écrit» sur les machines Unix, c'est-à-dire ce que sont les éditeurs de +textes. Le mois prochain, on parlera des traitements de textes disponibles sur +les stations, et de l'interaction avec Word. +
+Vous avez sans doute +l'habitude d'utiliser un traitement de textes: ces logiciels permettent à la +fois d'écrire du texte (le modifier, le remplacer, etc), et de faire leur mise +en page (gras, listes, etc).
++Il existe aussi des traitements de textes sous Unix3, mais leur usage est en +fait assez marginal. On préfère utiliser des éditeurs de textes. Ces +logiciels servent à écrire le texte, uniquement, sans mise en page +particulière. C'est ce qui les différencie des traitements de textes. On se +sert d'un éditeur de textes dès qu'on a besoin d'écrire du texte: taper un +cours, noter des idées au vol, écrire un courrier, faire une page Web...
++Dans le cas des documents dits «sérieux» (rapports, etc), l'étape de mise en +page se fait avec LATEX.
+ Pour lancer un éditeur,
+vous tapez son nom dans une fenêtre, suivi du nom du fichier que vous voulez
+éditer. Par exemple, vous utilisez nedit
pour écrire le fichier
+exercice
:
bireme ~ $ nedit exercice
+ Si le +fichier n'existe pas, il sera créé, si le fichier existe, il est ouvert et +vous pouvez continuer à écrire du texte dedans.
++Il existe un certain nombre d'éditeurs de textes, qui se distinguent par leur +apparence, leur complexité, leurs performances. Pour ne pas rentrer dans les +guerres de religion entre partisans de tel ou tel éditeur, nous en resterons +ici à des critères esthétiques pour différencier les éditeurs.
+La +première grande différence est celle du «mode texte» et du «mode graphique»: +
+pine
ou de forum
. Les logiciels en mode texte ont généralement un aspect plus austère que les +logiciels en mode graphique; ils s'utilisent le plus souvent avec le clavier. +Leur utilisation est donc moins aisée dans un premier temps. En contre-partie, +ils sont souvent bien plus rapides (à fonctionnalités identiques).
++Surtout, ce sont les seuls à pouvoir s'utiliser à distance: quand vous vous +connectez par telnet depuis un Mac de l'Infi ou une machine aux États-Unis, +vous pouvez lancer ces programmes et les utiliser comme si vous étiez à +l'École; ce n'est pas possible avec un logiciel en mode graphique.
+ Il existe un certain nombre d'éditeurs en mode texte: pico
,
+nano
, joe
, vim
, et d'autres en mode
+graphique, plus conviviaux: nedit
, kedit
.
emacs
et xemacs
sont capables de se lancer en mode
+texte ou en mode graphique, selon les possibilités. xemacs
est
+beaucoup plus joli, et aussi beaucoup plus lourd, qu'emacs
.
La seconde différence +concerne la mise en couleur du texte. Quand on écrit en +LATEX ou en HTML, il y a un certain nombre de commandes +spécifiques, qui ne sont pas du texte proprement dit, mais des commandes de +mise en page. La colorisation syntaxique consiste à mettre ces +commandes en valeur avec des couleurs, pour faciliter la frappe du texte4. C'est dix +fois plus confortable...
+
+Les éditeurs identifient le type de syntaxe en fonction du suffixe du fichier
+(par exemple, un fichier LATEX a un suffixe
+.tex
). N'oubliez donc pas le suffixe dans le nom du fichier.
+Les éditeurs en couleur sont vim
, xemacs
et
+nedit
(si on active l'option).
Tout dépend de vous,
+de vos goûts, de vos habitudes, si vous aimez la souris ou pas, si vous aimez
+la couleur ou pas. Essayez plusieurs éditeurs, et faites votre choix...
+Les éditeurs sont compatibles entre eux: commencer à écrire
+avec joe
n'impose pas de continuer avec joe
. Vous
+pouvez changer en cours de route sans problème, le texte restera identique. Il
+n'y a pas de problèmes de compatibilité entre éditeurs (contrairement aux
+traitements de textes).
+Nous présentons ici deux éditeurs simples: pico
, l'éditeur
+intégré de pine
, et nedit
, un éditeur graphique
+facile à utiliser.
pico
+ C'est l'éditeur
+intégré de pine
, et l'un des plus simples que l'on puisse
+imaginer; c'est aussi l'éditeur par défaut* de la config conscrits.
+pico
est un éditeur en mode texte, et en noir et blanc. Les
+commandes qui suivent peuvent bien sûr servir aussi dans pine
,
+sauf ^X
(qui sert à envoyer le courrier). On rappelle que
+^X
se lit «Control-X» et signifie «appuyer sur la touche Control
+en même temps que la touche x
».
+ ^O
+ |
+ + WriteOut + | +Sauver le texte | +
+ ^X
+ |
+ + Exit + | +Sauver et quitter | +
+ ^J
+ |
+ + Justify + | +Reformater le paragraphe | +
+ ^K
+ |
+ + Cut + | +Détruire la ligne | +
+ ^U
+ |
+ + Uncut + | +Restaurer la ligne. Si on a détruit plusieurs lignes à la suite, +elles sont toutes restaurées d'un seul coup. | +
+ ^W
+ |
+ + Word + | +Chercher un mot | +
nedit
+ C'est un éditeur +graphique, qui permet d'utiliser la souris (menus déroulants, placement du +curseur, copier-coller, etc). Il existe également des raccourcis clavier. +Voici les deux fonctions les plus importantes:
+Sauver | +Save dans
+le menu File |
+
Sauver et +quitter | +Exit dans le menu
+File |
+
+Les autres fonctionnalités se déduisent aisément des menus
+(Search
, Undo
...). Le copier-coller
+se fait de la manière suivante:
Cut
et Copy
, sélectionnez celui qui vous
+intéresse; Paste
.nedit
ne met pas automatiquement la
+couleur. Pour activer la colorisation syntaxique, sélectionnez Syntax
+highlight
dans le menu Preferences
.
+ Cette rubrique consacrée à Internet aborde deux grands sujets: d'une part +elle présentera au fil de mois les divers aspects d'Internet, en commençant ce +mois-ci par des généralités (vous pouvez d'ores et déjà vous reporter à notre +site, rubrique Internet). D'autre part, elle expliquera progressivement +comment lire le forum des élèves; ce mois-ci, on essaye de vous montrer que ce +n'est pas qu'un «truc pour informaticiens», et que vous avez tout à gagner à y +jeter régulièrement un coup d'oeil... +
+L'Internet n'est pas géré par une entreprise centralisée, comme le +réseau Minitel (Transpac) de France Télécom. C'est une interconnection de +divers réseaux, certains à grande distance, gérés en général par des +compagnies téléphoniques, d'autres locaux... comme le réseau interne de +l'ENS. Le point commun de ces réseaux est qu'ils utilisent tous le même +protocole de communication*, appelé TCP/IP. +Divers services ont été bâtis dessus, qui sont:
++Tous ces services correspondent à des logiciels spécifiques, que nous +citerons. On insistera aussi sur le principe de fonctionnement, les règles de +sécurité et les codes de bonne conduite en usage.
+Le mois prochain, on parlera du courrier électronique.
+-- David Monniaux
++Forum est un système de discussions interne à l'ENS: c'est un lieu de +bavardages entre élèves (et anciens élèves, magistériens, pensionnaires +étrangers). On y parle de choses sérieuses et moins sérieuses: de +l'informatique aux problèmes de société, de l'orthographe aux questions de +scolarité, de la théorie de l'Évolution aux derniers ragots entre normaliens. +
+Forum est +d'abord une source d'informations: par exemple, les messages collectifs y sont +redirigés6, +les annonces de séminaires, de spectacles, de soutenances de thèse, de +soirées, y ont des groupes dédiés.
++D'autre part, c'est un moyen efficace d'obtenir des renseignements sur nombre +de sujets, informatiques mais pas seulement (ah, les cours de droit de +Marie-Lan...).
+
+C'est également un lieu de discussion sur divers sujets polémiques. Parmi les
+discussions enflammées de cette année, citons «Le calvinisme et la
+prédestination» (conti religion
), «Différence entre gauche et
+droite, libéralisme et progressisme» (conti politique
),
+«L'Académie fait-elle autorité sur le français» (conti
+orthographe
), etc. Belle occasion de confronter des points de
+vue...
Les discussions +de forum se déroulent dans des groupes de discussion, appelés, pour des +raisons historiques, contis (continuum, continua).
+
+Un conti est censé regrouper les messages tournant autour d'un sujet donné.
+Comme forum en possède beaucoup, il sont organisés suivant une hiérarchie
+thématique (ce sera l'objet du prochain numéro). Quand vous lancez forum pour
+la première fois, vous êtes abonnés à trois contis: bienvenue
,
+annonces
(lequel regroupe les annonces importantes) et
+syst.annonces
. Cela signifie que forum vous proposera de lire les
+nouveaux messages de ces groupes au fur et à mesure de leur apparition:
bienvenue
contient dix messages, qui présentent forum.
+annonces
contient les annonces de l'administration. C'est
+aussi là que sont redirigés les courriers collectifs. syst.annonces
contient les annonces concernant les moyens
+informatiques (fermeture et occupation des salles, nouveaux logiciels,
+etc). Quand vous
+vous loguez7,
+vous avez une petite fenêtre appelée Forum
, qui vous indique
+l'état de votre lecture de forum:
+ +
+
+Ici, il est indiqué que le groupe de discussion
+divers.traductions
a été créé depuis la dernière fois que vous
+avez lu forum; vous avez 10 messages non lus dans bienvenue
+(ce sont des messages d'aide), et 1 message dans annonces
.
+
+Il se peut qu'il y ait un tas d'autres messages dans d'autres groupes, mais +tant que vous n'y êtes pas abonnés, vous ne les lisez pas automatiquement en +lançant forum, et ces messages ne sont pas annoncés par ce petit logiciel. +Enfin, quand vous lisez forum, vous ne lisez pas les messages vieux de plus +d'une semaine.
+ Pour lancer forum, il suffit de cliquer sur «Lire forum
», ou
+encore sur l'icône Forum (boutons en haut à gauche), ou bien de taper
+forum
dans une fenêtre.
+Vous vous retrouvez dans un groupe de discussion auquel vous êtes abonné; +appuyez sur la barre d'espace pour lire le message suivant. Vous passez +automatiquement d'un conti où tous les messages sont lus au conti suivant. +
++Quand il n'y a plus rien à lire dans les contis auxquels vous êtes abonnés, +forum affiche «Rien de nouveau».
+Pour quitter, il suffit de taper q
.
Lancer | +Icône «Forum» ou taper
+forum |
+
Lire | +Barre d'espace | +
Quitter | +Taper q |
+
Outre les Gentils Tuteurs, vous avez diverses +façons de vous renseigner sur le forum des élèves:
+internet/forum/
+?
») contient
+beaucoup de choses, mais est parfois un peu difficile. La section 8 de
+l'aide est la plus lisible. bienvenue
, dont cette série d'articles s'inspire.
+Le mois prochain, on présentera les différents groupes de discussion.
+-- David Madore, Émilia Robin
++ Ce cours va s'étendre sur toute l'année. Il va passer en revue les +différentes composantes d'un ordinateur, écran, mémoire, clavier, disques, +etc, pour expliquer à quoi ils servent, quelles sont leurs caractéristiques, à +quoi correspondant les sigles cabalistiques qui leur sont associés, etc. Il +est destiné à des non-spécialistes, qui ont envie d'en savoir un peu plus sur +cette chose qui encombre leur bureau... +
++L'ordinateur, sujet de tant de fantasmes chez les auteurs de science-fiction +des années 1950, est désormais une bestiole mieux connue, maîtrisée, +domestiquée autant que le serait un chat. Tout d'abord, disons-le tout net: +l'ordinateur est partout, et on ne peut plus vivre en l'an 2000 sans savoir ce +que c'est.
++Oh, bien sûr, on peut subsister sans cette grosse boîte métallique reliée à +une sorte de télévision. Mais avez-vous déjà utilisé un magnétoscope? Conduit +une voiture récente? Payé vos courses avec une carte bleue? Regardé l'heure +sur une montre à quartz? Dans tous ces gestes qui semblent simples, vous avez +fait tourner un ordinateur. Un discret, un insidieux, un fourbe, certes. Mais +un ordinateur quand même.
++Aussi, cette entité étant aussi répandue que les cafards dans les égoûts, +mieux vaut se renseigner sur cette infection électrotechnique de notre belle +société. Nous allons donc nous approcher de la bête, l'amadouer, puis +l'assommer, lui ouvrir les tripes et regarder dedans.
++En première approche, l'ordinateur est une grosse boîte en métal et plastique; +sur l'avant, des fentes, des lampes, quelques boutons. Sur l'arrière, d'autres +fentes, des prises électriques de formats divers, un fouillis de câbles. Au +bout des câbles, on trouve divers autres appareils: une sorte de télévision +(qu'on appelle écran, ou moniteur), une plaque avec une centaine de touches +couvertes de glyphes (le clavier), un petit boîtier rondouillard tenu en +laisse (ah, ça, c'est le «mulot»!). Des gros câbles relient l'écran et la +boîte centrale à des prises murales: apparemment, ce truc marche à +l'électricité.
+
+On appuie sur le plus gros des boutons de la face avant de la grosse boîte
+(car un sidérant instinct nous apprend que c'est probablement la commande
+d'allumage): gagné, quelque chose bouge. La boîte vrombit, des lumières
+clignotent, de l'air chaud sort par les fentes à l'arrière; soit la bête
+respire, soit il y a un ventilateur dedans. Des lumières vertes s'allument sur
+le clavier. L'écran s'agite, se couvre d'indications cabalistiques; certains
+mots semblent écrits en une langue humaine. Ça bouge. Au bout de quelques
+minutes, l'écran se vide à peu près, et ne contient plus qu'une obscure
+référence, et l'énigmatique mot login
. Plus rien ne semble
+bouger, sauf le ventilateur.
+On touche à la souris: un petit rectangle gris apparaît. Il reproduit sur
+l'écran les mouvements du mulot. Amusant. Mais ça ne semble pas très utile. On
+essaie le clavier; on appuie sur une touche: le glyphe correspondant apparaît
+à l'écran. On appuie sur d'autres touches: d'autres glyphes s'inscrivent à la
+suite. Magique! On rigole bien cinq minutes avec ça. Mais la machine s'entête
+à ne rien faire, sinon déclarer login incorrect
.
On ne progresse pas ainsi; l'heure est venue de passer à une méthode plus +intrusive. On maîtrise l'animal en l'affamant (on débranche la prise +électrique), puis on le ceinture et on l'ouvre avec un tournevis.
++À l'intérieur, un spectacle grandiôôse apparaît: un enchevêtrement de fils, +des plaques bariolées de traits en couleur, des pustules noires rectangulaires +partout. En regardant de plus près, on commence à entrevoir une structure. On +retrouve une boîte qui doit contenir un des ventilateurs; elle est reliée au +gros bouton d'allumage, et le courant électrique arrive dedans. Au fond de la +boîte, une grande plaque en plastique, sur laquelle sont collés des petits +boîtiers de plastique noirs; d'autres plaques de plastique, semblables mais +plus petites, sont plantées dedans. Au centre se dresse une ziggourat de +tubulures et de petits ventilateurs; elle est encore chaude: c'est le cerveau +du bestiau, certainement.
++À côté, il y a quelques boîtes annexes, grisâtres, reliées par des nappes de +fils à la plaque centrale, et à la boîte du ventilateur. Elles sont +différentes entre elles, leur usage est obscur; certaines débordent sur la +face avant et correspondent aux fentes étranges qu'on avait précédemment +observées.
+Un quidam passe par là, et nous parle. Une chance! C'est un habitué des +lieux. Il nous annonce être le propriétaire de l'animal que nous avons +découpé, et ce meurtre ne l'enchante guère. Mais, après une rapide inspection +du corps, il dit que nous n'avons pas définitivement endommagé la bête. Afin +de calmer son esprit, nous expliquons notre démarche, strictement +scientifique. Alors il maugrée un peu, semble pester contre un asile de fous +où on laisserait rentrer n'importe qui (le Ciel nous préserve d'y aller +nous-mêmes), puis se décide à nous guider dans ce monde merveilleux de +l'informatique.
++Notre Guide prend la parole d'un ton solennel, et entonne le premier vers du +chant qui changera à jamais notre connaissance du monde: «Au commencement +était le Verbe...»
+-- Thomas Pornin
++ Cette rubrique va traiter de sécurité informatique, sous différents +aspects: protection des données personnelles, sécurité sur le Web, cryptage, +etc. Ce sont des questions importantes, qui ne concernent pas seulement les +informaticiens, ou ceux qui voyagent beaucoup. Même le «simple utilisateur» +qui ne se connecte que pour lire son courrier, éventuellement parfois à +distance, est concerné par la sécurité informatique. Ne faites donc pas +l'impasse sur cette section... Ce mois-ci, on vous parle des mots de +passe. +
++Un mot de passe sert à vous identifier avant de vous donner accès à des +ressources ou à des données. Un certain nombre de règles, qui peuvent paraître +contraignantes ou arbitraires, surtout quand on n'est pas un accro des +ordinateurs, régissent son usage.
++D'une part, en signant la charte au début de l'année, vous vous êtes engagés à +la vigilance et à la confidentialité en ce qui concerne votre mot de passe, et +votre droit d'accéder au système informatique:
++++ 2-1. L'utilisation des ressources informatiques de l'École +est soumise à autorisation préalable. Cette autorisation est concrétisée par +l'ouverture d'un compte. +
++ +4-1. Tout utilisateur doit choisir des mots de passe sûrs respectant les +recommandations de l'administrateur-système. Ces mots de passe doivent être +gardés secrets, ne doivent pas être écrits et en aucun cas être communiqués à +des tiers. À la demande des administrateurs-système, ils doivent être +changés. +
++ +4-7. Les utilisateurs doivent s'abstenir de toute tentative de falsification +d'identité. +
+
Mais au delà de ces considérations juridiques, comme dit la RATP, «La +sécurité est l'affaire de tous». Si vous communiquez votre mot de passe, si +vous ne vous déloguez pas, si vous n'utilisez pas les logiciels sécurisés que +l'on vous détaillera au fil de l'année, vous pouvez vous faire pirater, et un +pirate peut faire ce qu'il veut avec la machine, volontairement ou pas.
++Par exemple, écraser par erreur un beau mémoire de maîtrise avec des +programmes qui lui serviront à pirater d'autres machines.
++Par exemple, envoyer des courriers électroniques embarrassants.
++Par exemple, stocker des logiciels ou des fichiers multimédia piratés qui +risquent d'attirer des ennuis tant du point de vue de la saturation des +ressources de la machine (on ne peut plus travailler) que du point de vue +légal.
++Par exemple, s'en servir comme «camp de base» pour pirater d'autres machines, +ce qui est toujours gênant lorsqu'on doit convaincre le reste du monde que non +ce n'est pas moi qui ai essayé de pirater le FBI.
++ On reprend ici un article paru dans le numéro 1 du +Hublot, en novembre 1999. +
++Tout d'abord, sachez que seuls les 8 premiers caractères de votre mot de +passe sont pris en compte. Ensuite, il y a des mots de passe à éviter +absolument:
+12345678
ou qwertyui
.Un bon mot de passe doit contenir des majuscules et des minuscules, des +chiffres, des lettres, des ponctuations. Ne mettez pas de caractères accentués +ou bizarres dans votre mot de passe, vous pourriez avoir des problèmes quand +vous passez d'un système à l'autre.
++Votre mot de passe ne doit pas non plus être trop difficile, sans quoi vous +mettriez trop de temps à le taper, et quelqu'un pourrait le surprendre.
++Sachez que le SPI teste les mots de passe des utilisateurs et prévient ceux +qui en ont un trop simple. En outre, par sécurité, il désactive les mots de +passe de ceux qui ne se sont pas logués depuis plus de trois mois. Dans ce +cas, il faut se rendre physiquement au SPI pour se faire rouvrir son compte. +
+Il peut vous arriver +d'oublier votre mot de passe. Dans ce cas, il faut aller voir le SPI (passage +bleu, au rez-de-chaussée du bâtiment Rataud) qui vous en donnera un nouveau. +
+C'est un sigle anglais +(Frequently Asked Questions, questions fréquemment posées»), adapté +en français comme «Foire Aux Questions». Comme son nom l'indique, cela désigne +une liste de questions courantes à propos d'un sujet donné.
++Quand vous arrivez quelque part sur Internet (un groupe de discussion, une +page Web, etc), il faut commencer par lire la FAQ: dans 90% des cas, quelqu'un +d'autre a déjà rencontré le même problème que vous, et la réponse existe +déjà...
+L'interface est ce qui +permet la communication entre l'ordinateur et l'utilisateur. En pratique, +c'est «ce à quoi ressemble votre écran quand vous vous connectez». +
+Se dit d'une option, d'un +comportement, etc, qui est choisi tant que l'utilisateur n'a pas fait +explicitement mention du voeu contraire. Ces choix ont été faits par +l'administrateur (dans le cas de la config conscrits, par des gourous).
+
+«Par défaut, le logiciel de courrier de la config conscrits est
+pine
» (c'est lui qui est lancé quand on clique sur «Courrier»).
+«Par défaut, la config conscrits lance une seule grande fenêtre». «Par défaut,
+la fiche annuaire figure aussi dans l'annuaire électronique».
Dialecte commun à des +machines pour permettre leur communication.
+
+Le Hublot est le journal des tuteurs
+informatiques de l'ENS. Il paraît chaque mois à 300 exemplaires. Il est
+également disponible sur le Web:
+http://www.eleves.ens.fr/tuteurs/docs/hublot/
.
+
+Rédaction: Émilia Robin.
++Ont collaboré à ce numéro: Denis Auroux, Nicolas George, David Madore, David +Monniaux, Thomas Pornin.
++Merci à Laurent Bercot, Hélène Duquennoy, Annick Grandemange, Catherine Le +Bihan, Vincent Nesme, Jérôme Plût pour leurs relectures.
+xforumco
+pour afficher cette petite fenêtre.+ +
+Tout d'abord, merci à tous les conscrits qui ont répondu au sondage sur le +stage de début d'année; leurs suggestions sont très utiles pour le +Hublot... Les résultats complets seront affichés sous peu, avec nos +commentaires.
++En attendant, un point important mérite réponse dès maintenant : certains +conscrits nous ont dit, dans le sondage de rentrée, qu'on était «lourds» à +force de mettre en garde à propos du piratage : «on n'est pas concernés, +on sait à peine se servir des machines, comment voulez-vous qu'on aille +pirater...». Certes. Mais vous pouvez toujours vous faire pirater... +C'est pour l'éviter autant que possible que nous vous conseillons de lire +attentivement la rubrique «Sécurité».
++ +Pour suivre vos conseils, nous avons essayé de renvoyer le plus précisément +possible aux documentations déjà existantes, que vous avez parfois du mal à +dénicher. Le reste est classique : +
+
+ Nous sommes toujours à votre disposition pour toutes questions et
+suggestions : tuteurs@clipper
. Vous pouvez
+aussi mettre un mot dans le casier de Marie-Lan Nguyen. Enfin, n'oubliez pas
+que quand vous tapez qui
, les tuteurs ont leur nom
+souligné : n'hésitez pas à nous solliciter!
+
+ Dans cette rubrique, on parle de l'utilisation pratique des machines +Unix et de LATEX. Ce mois-ci, on présente les commandes pour manipuler les +répertoires. La section «Config conscrits» explique comment se servir du +système de fenêtrage. Enfin, la rubrique LATEX parle de la compilation d'un +document. +
++Ce mois-ci, on présente les commandes qui servent à se repérer sur son compte +(afficher le contenu, créer des répertoires, se déplacer). On suppose connue +la différence entre répertoires (ou dossiers dans le monde Mac et Windows) et +fichiers. Pour plus de détails, consultez le numéro 3 du Hublot ou les +cours des tuteurs indiqués pour chaque commande. +
+ls
+ ls
(list) affiche le contenu d'un
+répertoire. Si vous tapez ls
tout court, vous obtenez une liste des
+fichiers dans le répertoire courant (c'est-à-dire là où vous vous trouvez). Avec la
+config conscrits, les sous-répertoires seront en bleu, et suivis d'un
+/
.
+
+Vous pouvez indiquer à ls
un ou plusieurs noms de répertoires à
+afficher. Dans ces noms, vous pouvez utiliser le caractère *
pour
+remplacer une partie (*
veut dire en gros «n'importe quelle suite de
+lettres»).
+
+Vous pouvez donner diverses options à ls
; en particulier, -l
+fait afficher une liste détaillée, avec date de modification, taille, droits,
+etc... -a
indique à ls
que vous voulez également les
+fichiers dont le nom commence par un point, qu'il vous épargne en général. Ce
+sont des fichiers de configuration*, qu'il ne faut surtout pas effacer.
+
+Vous trouverez sur notre site des cours
+(cours/unix/cours/unix/repertoires.html#ls
) et des exercices corrigés
+(exos/ls.html
) consacrés à ls
. Pour l'utilisation de l'étoile
+et des jokers, consultez le numéro 2 du Hublot
+(hublot/hublot2/hublot2.html#usage
).
+
cd
+ cd
(change directory) permet de se
+déplacer dans les répertoires. Si vous tapez cd répertoire
, vous
+entrez dans le répertoire indiqué.
+
+On peut utiliser l'abréviation ~
, pour son répertoire personnel, ainsi
+que ~
nom pour celui de la personne dont le login est «nom».
+
+Le répertoire ..
représente celui immédiatement au dessus du
+répertoire dans lequel vous vous trouvez (répertoire père). Avec cd
+tout court, vous revenez directement dans votre répertoire personnel.
+
+Vous trouverez sur notre site des cours (cours/unix/repertoires.html#cd
)
+et des exercices corrigés (exos/mkdir_cd.html
) consacrés à cd
.
+
mkdir
et rmdir
mkdir
(make
+directory) permet de créer un nouveau répertoire vide. Il suffit de la faire
+suivre du nom du répertoire à créer (par exemple : mkdir DEA
).
+
+La commande rmdir
(remove directory) fait l'action inverse :
+elle supprime un répertoire. Il suffit là encore de lui indiquer le nom du
+répertoire. Attention toutefois : rmdir
ne peut supprimer que les
+répertoires vides.
+
+Vous trouverez sur notre site des cours
+(cours/unix/repertoires.html#mkdir
) et des exercices corrigés
+(exos/mkdir_cd.html
) consacrés à ces deux commandes.
+
+ ls
+ |
+ Liste des fichiers du répertoire actuel | +
+ ls
+ ~
+ tuteurs
+ |
+ Liste des fichiers chez les tuteurs | +
+ ls -l *.tex
+ |
+ Liste détaillée de tous les fichiers LATEX | +
+ ls -a
+ |
+ Liste de vraiment tous les fichiers | +
+ mkdir DEA
+ |
+ Créer un répertoire «DEA/ » |
+
+ rmdir DEA
+ |
+ Supprimer le répertoire DEA/ |
+
+ cd
+ |
+ Retour dans le répertoire-maison | +
+ cd DEA
+ |
+ Entrer dans le répertoire DEA |
+
+ cd ..
+ |
+ Monter d'un niveau dans les répertoires | +
+Le mois prochain, on présentera les commandes qui servent à effacer, déplacer +et renommer les fichiers. +
+-- Nicolas George, Émilia Robin
++Les fenêtres de la config conscrits ont un aspect et une utilisation un peu +différente de ce que vous connaissez sous Windows ou sous MacOS. Pour vous +aider à vous y retrouver, on présente ici le rôle des différents boutons. +Dans toute cette présentation, on suppose que vous cliquez avec le bouton +gauche de la souris. +
+(tiret en relief) Il donne accès à un menu, avec les +fonctions suivantes : Iconifier, Devant, Derrière, Déplacer, Dimensionner. Il y +a aussi «Fermer», dont nous allons reparler dans un instant. +
+ (tiret en creux) Il rend la fenêtre sticky. La
+fenêtre ainsi «collée» restera affichée, quel que soit l'écran virtuel dans
+lequel vous vous trouvez; pour savoir ce que c'est, lisez
+premiere-fois/config.html#desk
et faites les exercices sur les écrans
+virtuels (exos/interface.html#virtuels
).
+
(avec le nom de la fenêtre écrit dedans) Cliquez dessus +et faites glisser la souris pour déplacer la fenêtre. +
+(rond en relief) Il sert à iconifier la fenêtre, c'est-à-dire +suspendre son affichage; donc la fenêtre disparaît. Mais attention, le +programme tourne toujours, vous ne l'avez pas quitté. +
++Dans la «colonne des tâches» (rectangles verts), le nom de la fenêtre apparaît +désormais en gris et entre parenthèses, et non plus en jaune. Cliquez sur le +bouton correspondant pour faire réapparaître la fenêtre. +
+(carré en relief) Donner à la fenêtre sa taille +maximale. C'est une maximisation verticale, et c'est normal : la plupart +des programmes (logiciels de courrier, éditeurs, forum...) sont prévus pour un +affichage 80 colonnes, ce qui est la taille standard des fenêtres. Si vous +élargissez la fenêtre, ça ne change rien à l'affichage en largeur. Mais vous +pouvez augmenter la taille verticale. +
+
+Ceci n'est pas vrai pour les logiciels graphiques : vous pouvez élargir
+Netscape, gimp
(retouche d'images), xv
(affichage d'images),
+xdvi
, par exemple.
Chaque programme possède une commande
+spécifique pour terminer : «Q» pour pine
,
+mutt
, forum
, xv
,
+xdvi
; Exit
ou Quit
dans le menu
+File
pour la plupart des logiciels graphiques (Netscape,
+(x)emacs
, gv
, etc). Le bouton «Fermer» ne doit
+vous servir que si vraiment vous ne parvenez pas à fermer la fenêtre (cas
+de certaines fenêtres lancées par Netscape par exemple).
+Vous aurez remarqué, d'ailleurs, que quand vous cliquez sur «Fermer», une +petite fenêtre se déroule pour vous demander si vous voulez vraiment faire +cela : ce n'est pas pour le plaisir de vous retarder, mais pour vous rappeler, +vraiment, de ne pas le faire... +
+
+Ce n'est pas une coquetterie : certains logiciels, comme pine
,
+supportent mal qu'on les quitte abusivement, sans passer par la procédure
+normale, qui leur laisse le temps de tout ranger (détruire vraiment les
+courriers par exemple). Certains logiciels, comme Netscape, continuent à
+tourner. Vous vous en rendez compte quand, la fois suivante, une petite
+fenêtre apparaît pour vous dire qu'un Netscape tourne toujours en votre nom
+sur telle machine.
+
Vous trouverez un tableau récapitulatif de la façon dont on quitte
+les logiciels courants sur la page «Les trois choses à ne jamais faire»
+(premiere-fois/jamais.html
). Le tableau présentant chaque
+élément du menu du fond d'écran indique également comment quitter chaque
+logiciel (premiere-fois/menu.html
). D'autre part, le message
+d'erreur de Netscape a été abordé dans le numéro 4 du Hublot
+(hublot/hublot4/hublot4.html#netscape
). Enfin, vous
+trouverez sur notre site une présentation de l'interface des conscrits
+(premiere-fois/config.html
), ainsi que des exercices
+corrigés portant sur les fenêtres, les menus, etc
+(exos/interface.html
).
+Le mois prochain, on parlera du copier-coller. +
+
+ ! Undefined control sequence.
+ |
+ La commande que vous tentez d'utiliser n'existe pas. Le plus souvent une +faute de frappe. | +
+ ! LaTeX Error : Missing \begin{document}.
+ |
+ Vous avez mis des caractères imprimables avant le début du document
+proprement dit (indiqué par \begin{document} ). |
+
+ ! Paragraph ended before \cmd was complete.
+ |
+ Il y a un marque de paragraphe (une ligne blanche)dans
+l'argument de la commande \cmd , ce qui signifie probablement que vous
+avez oublié un } à la fin. |
+
+ ! Too many }'s.
+ |
+ Il y a un } qui ne correspond à aucun { . |
+
+ ! LaTeX Error : \begin{quote} on input line 7
+ + ended by \end{cite}.
+ |
+ Les types d'environnement ouverts et fermés ne se correspondent pas. Vous
+avez probablement oublié de mettre le \end qui va avec un
+\begin , ou bien vous avez changé une extrémité et pas l'autre. |
+
+ ! LaTeX Error : Something's wrong--perhaps
+ + a missing \item.
+ |
+ C'est un message un peu générique dès qu'il y a des problèmes dans des +environnements structurés, comme des listes ou des tableaux. Bonne chance. | +
Table 1 : Les messages +d'erreur courants de LATEX
+
+Ce mois-ci, nous allons étudier les problèmes liés à la compilation,
+c'est à dire à la transformation du document source LATEX en un fichier
+typographié DVI. On suppose ici que vous savez déjà rédiger un document
+source. Pour les bases de LATEX, nous vous renvoyons aux ouvrages indiqués
+dans le dernier numéro du Hublot, ainsi qu'à notre site
+(cours/latex/latex.html
).
+
Si votre fichier source (appelons le
+bofichier.tex
) est prêt, vous pouvez demander que LATEX calcule la
+mise en page avec la commande :
+
chaland ~ $ latex bofichier.tex
+
+ Avec cette ligne, vous demandez au programme latex
+d'interpréter votre fichier. Il va le lire ligne à ligne, interpréter les
+commandes de mise en page, et créer un fichier qui contient le résultat
+de la compilation. Si tout se passe bien, LATEX
+affiche quelque chose qui ressemble à ça :
+This is TeX, Version 3.14159 (C version 6.1) +MLTeX v2.2 enabled +(bofichier.tex +LaTeX2e <1997/06/01> +(/usr/local/lib/texmf/tex/latex/base/article.cls +Document Class : article 1997/06/16 v1.3v Standard + LaTeX document class +(/usr/local/lib/texmf/tex/latex/base/size11.clo)) +(/usr/local/lib/texmf/tex/latex/babel/babel.sty +(/usr/local/lib/texmf/tex/latex/babel/babel.def +(/usr/local/lib/texmf/tex/latex/babel/switch.def)) +(/usr/local/lib/texmf/tex/latex/babel/frenchb.ldf)) +(/usr/local/lib/texmf/tex/latex/base/inputenc.sty beta test version +(/usr/local/lib/texmf/tex/latex/base/latin1.def)) +(/usr/local/lib/texmf/tex/latex/base/fontenc.sty +(/usr/local/lib/texmf/tex/latex/base/t1enc.def)) +No file bofichier.aux. +[1] (bofichier.aux) ) +Output written on bofichier.dvi (1 page, 412 bytes). +Transcript written on bofichier.log. ++
Les premières lignes expliquent de quelle version de
+LATEX il s'agit. Ensuite, les lignes
+/usr/local/...
indiquent quels fichiers de base et quels
+packages* sont chargés.
+Les deux dernières lignes sont les plus intéressantes pour nous : le résultat
+(output) de la compilation se trouve dans le fichier
+bofichier.dvi
, et fait une page. Vous pouvez regarder le DVI avec le
+logiciel xdvi
:
+
chaland ~ $ xdvi fichier.dvi &
+
+ L'utilisation de xdvi
est exposée sur le site des tuteurs
+(logiciels/latex/xdvi.html
).
+
Il y a deux types de «mise en garde» de +LATEX lors d'une compilation : les erreurs, qui interrompent la compilation, +et les avertissements (warnings), qui ne gênent pas la compilation. +On va d'abord s'intéresser aux erreurs, car elles bloquent tout. Quand ça +arrive, LATEX signale l'erreur et son emplacement; la compilation s'arrête, +avec un point d'interrogation en début de ligne. +
++(...) +! Undefined control sequence. +l.15 Du texte... \emhp + {C'est important}. +? ++
Vous pouvez d'abord essayer de passer outre et de continuer la compilation, en +tapant sur Entrée. Si vous tentez d'ignorer les erreurs, ça vous permettra +souvent de voir la suite de votre document (et de faire les corrections en une +seule fois), mais il se peut qu'une erreur ignorée entraîne en cascade une +flopée d'autres. +
+
+Vous pouvez aussi interrompre la compilation : tapez x
(exit)
+ou q
(quit), suivis d'Entrée. Il est aussi utile de taper
+h
(help) pour demander à LATEX davantage de précisions sur
+l'erreur. Dans tous les cas, il va falloir corriger les erreurs signalées.
+
LATEX n'est pas toujours très explicite dans +ses messages d'erreur, c'est le moins qu'on puisse dire. Le +tableau 1 indique comment décrypter les +plus courants. +
+Les avertissements ne gênent pas la compilation, +mais ils signalent que la mise en page risque d'être ratée par endroits. +
++Les plus courants sont les overfull hboxes ou les underfull +hboxes (horizontal box). La ligne est considérée comme une boîte qui +dépasse de la marge fixée. En fait, le moteur typographique de LATEX n'a +pas trouvé de manière satisfaisante de couper les mots d'un paragraphes, et +mord un peu sur la marge, ou au contraire n'y arrive pas tout à fait. Il vous +indique le bout de texte incriminé, avec toutes les possibilités de césure. +Dans le cas d'une overfull hbox, il précise aussi de combien ça dépasse +(en points, soit 1/72 pouces, environ un tiers de millimètre). +
+
+Le plus souvent, ce sont les mots accentués qui posent un problème, car
+LATEX ne sait pas très bien couper. Vous pouvez l'aider en ajoutant aux
+endroits adéquats la séquence \-
, qui indique un point de césure
+possible; par exemple : or\-di\-nateur
.
+
+Une cause classique de underfull hbox, ce sont les \\
+abusifs, pour changer de paragraphe (alors qu'il suffit de laisser une ligne
+blanche). Cette commande ne sert qu'à l'intérieur d'environnements
+spécifiques, comme tabular
(tableaux), array
(matrices),
+verse
(poèmes), etc.
+
+Il existe aussi des overfull et underfull vboxes («v» pour +vertical) qui signifient que la mise en page des paragraphes sur la page n'est +pas tout à fait satisfaisante. Dans le cas de textes sans trop de fioritures, +c'est nettement plus rare que les autres. +
+Les toutes dernières lignes des messages +d'erreur indiquent précisément l'endroit où on se trouve : +
++! Undefined control sequence. +l.15 Du texte... \emhp + {C'est important}. ++
L'erreur s'est produite à la ligne 15. +
+
+Pour les overfull hboxes, une option de classe très utile est l'option
+draft
(«brouillon» en anglais). Cela vous met un trait noir épais
+dans le DVI aux endroits où des boîtes dépassent (n'oubliez pas de l'ôter
+avant l'impression finale!). Pour l'utiliser :
+\documentclass[draft]{article}
+
LATEX crée en fait plusieurs fichiers lors de
+la compilation : le .dvi
contient le résultat graphique, les
+.aux
et .log
contiennent des informations annexes utiles à
+LATEX. En particulier, les lignes affichées lors de la compilation se
+trouvent dans le fichier .log
.
+
+Lors que vous faites une table des matières, LATEX génère un fichier
+.toc
(table of contents); c'est la même chose avec les tables
+des figures (.lof
: list of figures) et les «tables de tables»
+(.lot
: list of tables). D'autres utilisations (BiBTeX,
+Makeindex) génèrent encore d'autres fichiers (.bbl
, .idx
,
+.ind
...).
+
+Le mois prochain, on parlera des packages de LATEX : qu'est-ce que +c'est, quels sont les plus courants et à quoi servent-ils. +
+-- Nicolas George, Émilia Robin
++ Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on va parler des traitements de +textes disponibles sur les stations, et de l'interaction avec Word. +
++Le traitement de textes est l'«ensemble des opérations qui permettent de +saisir, mettre en forme, modifier, stocker et imprimer des documents», et le +«logiciel permettant d'effectuer ces opérations» (dictionnaire Hachette). En +anglais ça se dit word processor, en allemand +Textverarbeiterung, en espagnol procesador de textos. +
++Il en existe plusieurs, qui, selon les cas, tournent sur différentes +plate-formes, ou non : +
++ | Windows | +MacOS | +Unix | +
ApplixWare | +? | +? | +Oui | +
StarOffice | +Oui | +Oui | +Oui | +
Word | +Oui | +Oui | +Non | +
WordPerfect1 | +Oui | +Oui | +Oui | +
+Il existe également Axene, Koffice (la suite bureautique de l'interface +KDE*), +AbiWord. Ceux-là tournent sous Unix. +
+Une suite bureautique est un logiciel intégrant +différents outils de bureautique (traitement de textes, tableur, etc). L'un +des concepts fondamentaux en est les liens dynamiques entre +applications : par exemple, les modifications effectuées sur une feuille de +calcul peuvent se répercuter sur le graphique affiché par le traitement de +texte, par une sorte de «copier-coller» permanent. L'interface similaire et +le partage de certains modules (vérification de l'orthographe, entre autres) +ont contribué au succès commercial de ces suites. +
++La plus célèbre est le pack Office de Microsoft, avec Word, Excel, Powerpoint +et Access. +
++Le traitement de textes le plus courant en France est Word. Aux États-Unis, +c'est plutôt WordPerfect, et en Allemagne, StarOffice. +
++Deux traitements de textes sont installés sur les machines Unix, ApplixWare et +StarOffice. ApplixWare est le plus léger, et il est facile à prendre en main. +On vous indique les commandes pour lancer ces logiciels, mais vous pouvez +aussi les retrouver dans le menu de fond d'écran (conscrits 2000). +
+ Il se lance
+avec la commande asterix
. Un lanceur apparaît, avec cinq boutons.
+Pour le traitement de textes, cliquez sur le bouton tout à gauche. Asterix
+crée chez vous un répertoire appelé axhome/
, dans lequel il rangera
+les nouveaux fichiers.
+
+Pour ouvrir un fichier Word, sélectionnez Import
dans le menu
+File
, et choisissez le fichier à ouvrir dans la fenêtre qui s'ouvre;
+le piège diabolique est que Open
ne sert à ouvrir que les fichiers au
+format ApplixWare.
+
+ApplixWare connaît divers formats, dont le HTML, le RTF, divers formats texte, +WordPerfect (jusque WordPerfect 7) et Word (jusque Word 97). Mais il ne +connaît que des formats propres : un format à moitié corrompu pour cause +de «sauvegarde rapide» est illisible... et vous ne pourrez pas ouvrir +correctement le document. +
+
+Asterix sait également «exporter» un fichier dans un autre format que le sien;
+pour cela, utilisez la commande Export
dans le menu File
.
+Les fichiers créés seront par défaut dans le répertoire axhome/
.
+
C'est ce qu'on appelle une usine à gaz... On le lance avec
+la commande soffice
. La première fois que vous le lancez, il installe
+chez vous un répertoire Office51/
, qui contient environ 3 Mo de
+choses apparemment indispensables... Il vous demande de confirmer un certain
+nombre de choses, ne remplissez rien et dites «OK» partout. Une fois que tout
+est installé, le logiciel se ferme. Relancez-le pour commencer à travailler.
+
+StarOffice est un logiciel très gros, qui consomme beaucoup de ressources +(processeur et mémoire). Choississez donc une bonne machine : les Sun Ultra, +mais certainement pas les Sparc 4 ou 5. Pour les reconnaître, c'est facile : +c'est écrit dessus...
+
+Une fois lancé, ça ressemble beaucoup à Microsoft Office. Tout se fait à la
+souris, avec des fonctionnalités comparables. Des études expérimentales
+montrent que StarOffice sait afficher des fichiers Excel et des fichiers
+PowerPoint. Il s'en sort bien avec les formats Word divers, y compris
+corrompus. Les fichiers créés seront placés par défaut dans
+Office51/work/
.
+
Les fichiers Word ont un suffixe .doc
. Quand vous voulez
+en regarder un, commencez par essayer avec ApplixWare, beaucoup moins
+lourd que StarOffice. Si le résultat ne vous satisfait pas (rendu
+incorrect, format non reconnu ou non accepté, etc), essayez avec
+StarOffice.
Soit par paresse, soit par ignorance, vos +correspondants vous envoient le plus souvent des formats Word-n : 95, +97, ou telle version pour tel système. Ça vous arrive aussi... Et c'est Mal. +
++Ne confondez pas l'information et ce qui la véhicule : quand vous communiquez +un document à quelqu'un, c'est pour qu'il prenne connaissance de son contenu, +pas pour se voir obliger de racheter un logiciel pour avoir la même version +que vous. Votre correspondant est libre de choisir le logiciel qui lui +convient le mieux, pour des raisons d'ergonomie, de rapidité, de confort ou +autres, dont il est seul juge. Vous n'avez pas à lui imposer votre +logiciel, en envoyant un fichier que seul votre logiciel peut relire. +Et ce n'est pas parce que votre logiciel est le plus répandu dans +votre pays que c'est le cas ailleurs... +
++De fait, les versions de Word sont conçues pour être globalement, mais +pas totalement compatibles les unes avec les autres. Les échanges de +version à version, et de système à système marchent en gros, mais pas tout à +fait. Les filtres (pour permettre à WordPerfect de relire du Word 97 par +exemple) ne sont pas fiables à 100%, et pas seulement pour des raisons de +difficulté de programmation; c'est aussi un choix des sociétés, pour lier les +gens à leur format. +
++En pratique, pour être sûr de pouvoir relire les fichiers écrits dans une +version plus récente, vous devez donc racheter régulièrement le logiciel, et +posséder le même logiciel que vos correspondants. +
++Il y a un autre problème, plus grave qu'une question d'économies et de rachats +périodiques : vos documents sont sauvés et transmis dans un format que seul +Microsoft connaît. Il n'existe pas de document public, accessible à n'importe +qui, qui explique comment on reconstitue le contenu et la mise en page d'un +document à partir du fichier lui-même; pourtant, expliquer comment le fichier +est codé ne révèle pas pour autant comment fonctionne Word, et ses secrets de +fabrication... +
++Les nouvelles versions de Word relisent les fichiers anciens, globalement... +Souvent, les utilisateurs passent un certain temps à transformer leurs +fichiers d'un format à l'autre, pour «être à jour». Mais en fait, rien ne +prouve que Word 2010 sera capable de relire vos données. Et ce n'est pas un +problème technique, c'est un choix délibéré de Microsoft. C'est là toute la +problématique des formats propriétaires* par +opposition aux formats libres*, +ou en tout cas documentés. Ce n'est d'ailleurs pas propre à Microsoft. +
++Tout ceci a pour but de vous faire réfléchir sur la nécessité de choisir des +formats que tout le monde peut relire, y compris dans vos actes courants, +comme communiquer un CV ou une fiche de lecture. +
+Word possède une fonctionnalité de «sauvegarde +rapide», qui pose deux problèmes : +
+Pour ces deux raisons, il vaut mieux désactiver l'option de sauvegarde +rapide, qui cause plus de problèmes qu'elle ne gagne de temps.
+C'est un format créé par Microsoft, +documenté3, pour servir de +pivot entre différents formats de traitements de textes. Il a en particulier +l'avantage de conserver les accents, d'être compris par tous les traitements +de textes. En contrepartie, il ne conserve pas forcément toutes les +informations de mise en page, et n'est pas toujours compatible avec lui-même +d'une version à l'autre. +
++Cependant, nous ne saurions trop vous conseiller d'envoyer vos documents au +format RTF, qu'il pourra relire quel que soit son logiciel, qui ne posera pas +de problème d'accents, et qui sera bien plus économique en termes de place : +soit un fichier Word, sans mise en page complexe, avec juste du texte et +quelques formules de maths. Il fait 162 Ko. Une fois en RTF, il n'en fait plus +que 46. Une fois en texte simple, il est réduit à 26 Ko (mais c'est aussi que +les formules ont disparu). +
++Quand il s'agit de transmettre ça par le réseau, cela devient une question de +politesse envers votre correspondant, dont la connexion n'est pas +nécessairement rapide. +
+Vous rencontrerez deux autres formats +courants, le PDF (Portable document format) le PostScript (plus courant +dans le monde Unix). Le PS et le PDF ont été inventés par la société Adobe. Le +PostScript est en fait le langage des imprimantes. +
+
+Ces deux décrivent la mise en page, et les logiciels qui les affichent sont
+gratuits. Ce sont Acrobat Reader pour le PDF (acroread
) et
+GhostScript (gv
) pour le PS.
+
+Leur caractéristique est de pouvoir diffuser un texte sans qu'il soit +modifiable. C'est vrai pour le PostScript (sauf s'il est écrit à la main...). +On peut modifier un fichier PDF, à condition d'acheter le logiciel ad +hoc (Adobe Acrobat Editor). +
++ Ce mois-ci, on présente le courrier électronique : vous savez déjà vous +en servir, mais vous ne savez peut-être pas où trouver les renseignements qui +vous manquent... Dans la rubrique «Forum», on détaille les groupes de +discussion (ou «contis») qui existent. +
+ La plupart des élèves utilisent pine
, montré en
+début d'année et lors des stages. Il a l'avantage d'être très répandu et
+d'usage assez intuitif. Pour ceux que cela intéresse, pine
a été
+traduit en latin (pour les commandes usuelles). Pour une documentation,
+reportez-vous à internet/courrier/mail-pine.html
.
+
+Signalons l'existence de mutt
(à notre avis bien mieux) : il est en
+couleurs, classe les messages en fonction des discussions (enfilade de
+messages se répondant), est plus simple dans la mesure où il gère moins
+d'écrans intermédiaires. Pour l'utiliser, consultez notre site :
+internet/courrier/mail-mutt.html
.
+
Il existe un «bon usage» sur Internet, appelé la +Netiquette; entre autres choses : +
+hublot/hublot2/hublot2.html#netiquette
.
+
+Vous trouverez une présentation de la Netiquette à l'adresse suivante :
+http://www.usenet-fr.net/fr.usenet.reponses/usenet/netiquette.html
+
Il est possible de joindre un ou plusieurs fichiers au
+courrier proprement dit : images, fichiers divers. C'est ce qu'on appelle des
+attachements. On nous demande souvent comment sauvegarder les attachements
+avec Pine; la réponse se trouve sur notre site :
+internet/courrier/mail-pine.html#attachments
+
+Dans forum, les discussions se passent dans des groupes de discussion, appelés +conti (un continuum, des continua), classés thématiquement. Ce mois-ci, on va +présenter les contis existants. Ceux-ci forment une hiérarchie thématique +dont le détail doit beaucoup au hasard des demandes de création et n'est pas +toujours aussi systématique qu'on le voudrait. +
+
+Les noms des contis sont constitués d'éléments séparés par des points (par
+exemple, ens.forum.sciences.biologie
); dans tout ce qui suit, on omet
+systématiquement le ens.forum
du début. Voici donc une présentation
+détaillée des contis existants. Pour lire un conti précis, il suffit de taper
+forum
suivi du nom court du conti; par exemple, pour lire le conti
+ens.forum.loisirs.cinema
:
+
chaland ~ $ forum cinema
+
+ Que faut-il lire? Les contis annonces
et syst.annonces
sont
+indispensables pour vous tenir au courant des annonces adressées à tout le
+monde, et des informations concernant les moyens informatiques ---coupures,
+salles, etc.
+
+Il faut connaître l'existence de annonces.petites-annonces
pour
+annoncer la vente de votre frigo ou la perte de votre stylo. Sinon, une bonne
+partie des questions adressées à tuteurs auraient plutôt leur place dans
+informatique.html
(écrire les pages Web),
+informatique.materiel
(choisir son ordinateur) ou encore
+informatique.tex
(utiliser LATEX).
Je regroupe trois contis dans cette catégorie :
+bienvenue
qui contient les messages d'aide,
+aide
pour poster des demandes d'aide concernant forum, et
+essais
pour faire des essais de postage avant de se lancer
+«en vrai».
+
annonces
Elle regroupe 4 contis :
+annonces
(conti modéré), où sont redirigés entre autres les courriers
+collectifs. Vous pouvez aussi y poster vos annonces; à cause de la modération,
+le message mettra un peu plus de temps à appararaître4.
+
annonces.petites-annonces
accueille les petites annonces diverses et
+variées, annonces.seminaires
les horaires et dates de séminaires
+(toutes matières confondues), annonces.theses
les soutenances de
+thèse. Il existe un autre conti d'annonces : syst.annonces
, qui
+regroupe les annonces concernant le système informatique (coupures, nouveaux
+programmes, etc).
+
cof
Elle regroupe 8 contis. cof
est
+le plus général, pour discuter du fonctionnement du COF et de ses clubs. Ce
+conti revit régulièrement après les AG... Les autres contis ont des noms
+transparents : cof.annuaire
(élaboration de l'annuaire des élèves),
+cof.as
, cof.bdtheque
, cof.dg
, cof.k-fet
,
+cof.mega
, cof.soirees
.
+
divers
Elle regroupe 6 contis : +
+divers
, «pour parler de tout et de n'importe quoi»;
+divers.aumonerie
traite de pratiques chrétiennes;
+voir aussi societe.religion
; divers.bonnes-adresses
sert à s'échanger de bonnes
+adresses de restaurants entre autres; voir aussi
+loisirs.gourmandises
; divers.news
pour discuter des news Usenet;
+divers.traductions
pour demander comment on dit
+«capillotracté» en slovène; divers.www
a pour but de s'échanger des adresses Web
+intéressantes. Ne le confondez pas avec
+informatique.internet
(aspects techniques du réseau),
+informatique.html
(écriture des pages Web) et
+syst.webmaster
(le fonctionnement du site Web des élèves).
+histoire
se trouve dans cette hiérarchie pour des
+raisons... historiques; on n'avait pas pu se mettre d'accord pour savoir
+si l'Histoire est une branche des lettres ou des sciences.loisirs
Elle regroupe 15 contis pour le moment : +
+
+ loisirs
+ |
+ Loisirs en général | +
+ loisirs.anime
+ |
+ Dessins animés | +
+ loisirs.astro
+ |
+ Astronomie | +
+ loisirs.cinema
+ |
+ Septième art | +
+ loisirs.cirque
+ |
+ Cirque | +
+ loisirs.gourmandises
+ |
+ Bonnes recettes | +
+ loisirs.jeux
+ |
+ Jeux de table | +
+ loisirs.jeux.bridge
+ |
+ Bridge | +
+ loisirs.jeux.jdr
+ |
+ Jeux de rôle | +
+ loisirs.musique
+ |
+ Musiques | +
+ loisirs.robot
+ |
+ Club Robot | +
+ loisirs.sf
+ |
+ Science-fiction | +
+ loisirs.sports
+ |
+ Sports variés | +
+ loisirs.traques
+ |
+ La Traque par Tmoy | +
+ loisirs.tv
+ |
+ Programmes télé | +
sciences
Elle regroupe 9 contis :
+sciences
(pour parler des sciences en général), et des sous-groupes
+spécialisés (on sous-entend le préfixe sciences
) : biologie
,
+chimie
, informatique
, maths
, medecine
,
+physique
. Pour des raisons historiques, on y trouve également
+linguistique
et sciences-sociales
.
+
lettres
Elle regroupe 3 contis pour le moment :
+lettres
tout court, lettres.orthographe
et
+lettres.philo
. Il existe d'autres contis concernant des matières
+littéraires, même s'ils ne sont pas des sous-ensembles de lettres
;
+c'est le cas de histoire
, des contis de linguistique et de sciences
+sociales de la hiérarchie sciences
, et d'un certain point de vue de
+divers.traductions
.
+
scolarite
Elle regroupe 3 contis :
+scolarite
pour la scolarité à l'École en général,
+scolarite.agreg
pour les informations sur l'agreg,
+scolarite.debouches
pour échanger des vues sur cette question
+brûlante. Cela dévie souvent vers societe.paperasse
...
+
societe
Elle regroupe 9 contis. S'y déroulent
+de nombreux débats, souvent très vifs, au sujet de la société :
+societe
tout court pour les questions générales,
+societe.culture
pour les questions culturelles,
+societe.droit
, societe.economie
, societe.education
,
+societe.ethique
pour causer de morale et d'éthique,
+societe.paperasse
pour les démarches administratives,
+societe.politique
, societe.religion
.
+
syst
Elle regroupe 13 contis qui traitent des
+prestations informatiques à l'ENS. syst
est le plus général, et est
+lu notamment par le SPI. syst.annonces
accueille les annonces
+concernant les salles, le système, les nouveaux programmes, les incidents,
+etc.
+
+ syst.config
+ |
+ Config conscrit | +
+ syst.forum
+ |
+ Fonctionnement de forum | +
+ syst.games
+ |
+ Jeux installés | +
+ syst.gourous
+ |
+ Activités des gourous | +
+ syst.rezo
+ |
+ Le rezo des élèves | +
+ syst.salle_46
+ |
+ Problèmes en salle du 46 | +
+ syst.salle_s
+ |
+ Problèmes en salle S | +
+ syst.salle_s.quatra
+ |
+ Le 4a (machine des élèves) | +
+ syst.salle_t
+ |
+ Problèmes en salle T | +
+ syst.tuteurs
+ |
+ Activités des tuteurs | +
+ syst.webmaster
+ |
+ Site Web des élèves | +
informatique
Elle regroupe 27 contis, qui
+traitent de l'informatique pratique (car il existe aussi
+sciences.informatique
pour l'informatique théorique). C'est la
+hiérarchie «sérieuse» la plus développée.
+
+ informatique
+ |
+ Questions générales | +
+ informatique.crypto
+ |
+ Crytpographie | +
+ informatique.postscript
+ |
+ Langage PostScript | +
+ informatique.shell
+ |
+ Le shell | +
+ informatique.x11
+ |
+ L'interface graphique | +
+ informatique.libre
+ |
+ Les logiciels libres | +
+ informatique.mail
+ |
+ Courrier électronique | +
+ informatique.html
+ |
+ Pages Web | +
+ informatique.internet
+ |
+ Internet... | +
+ informatique.materiel
+ |
+ Matériel informatique | +
+ informatique.tex
+ |
+ LATEX | +
+ informatique.typo
+ |
+ Typographie | +
informatique.lang
regroupe les contis consacrés à la programmation
+(lang.c
, lang.c++
, lang.caml
, lang.java
,
+lang.perl
, lang.sql
). Les questions concernant des langages
+sans conti spécifique vont dans informatique.lang
tout court.
+
+La hiérarchie informatique.os
regroupe les contis consacrés à des
+systèmes d'exploitation (Operating System en anglais) :
+os.linux
, os.macos
, os.microsoft
, os.unix
.
+
informatique.editeurs
accueille les discussions sur l'utilisation des
+éditeurs de texte en général; informatique.editeurs.emacs
est
+consacré à l'éditeur (x)emacs, informatique.editeurs.vi
à l'éditeur
+vi(m).
+
alt
Cette hiérarchie «alternative» regroupe 38
+contis à ce jour; ce sont les groupes les moins sérieux de forum, ceux où le
+jargon de salle S et les private jokes d'informaticiens s'en donnent à coeur
+joie, en particulier dans la sous-hiérarchie alt.bavardage
.
+
alt
est très hétéroclite : alt.alexandrins
(pour cultiver le
+goût du ternaire), alt.disparition
(le «e» est interdit),
+alt.revenentes
(le «e» est la seule voyelle autorisée),
+alt.roman
sont l'occasion d'exprimer ses talents littéraires.
+alt.questionaze
accueille les questions saugrenues (cours en euros du
+franc belge, pourquoi les films sortent-ils le mercredi en France, en dessous
+de quelle température la respiration se condense-t-elle, etc). Dans
+alt.pirates
on trouve les messages de ceux qui se sont fait piratés
+parce qu'ils ont oublié de se déloguer (si ça vous arrive, vous recevrez un
+courrier des tuteurs).
+
+Il y a d'autres contis dans alt
, vous les découvrirez bien assez
+tôt...
+
Vous trouverez aussi la hiérarchie
+ens.forum.archeo-forum.*
, qui contient les groupes de discussion de
+l'ancien forum (avant 1998), ens.mailing-lists.*
(liste de diffusion
+extérieure postées automatiquement dans forum; informatique pour la plupart).
+control
et junk
sont deux groupes spéciaux qu'il ne faut pas
+lire.
+
+Le mois prochain, on expliquera comment aller de groupe en groupe, et comment +s'abonner. +
+-- David Madore, Émilia Robin
++ Ce cours va s'étendre sur toute l'année. Il va passer en revue les +différentes composantes d'un ordinateur, écran, mémoire, clavier, disques, +etc, pour expliquer à quoi ils servent, quelles sont leurs caractéristiques, à +quoi correspondent les sigles cabalistiques qui leur sont associés, etc. Il +est destiné à des non-spécialistes, qui ont envie d'en savoir un peu plus sur +cette chose qui encombre leur bureau... +
++Ainsi parle le cyber-patriarche : +
++«Il est certains objets et certaines matières qui possèdent une valeur en +elle-même, que cette valeur soit tangible, comme dans le cas d'un Pomerol +19795, ou symbolique, +ainsi que le serait un lingot d'or. Mais ces choses-là ne nous intéressent pas +ici, car il est une denrée qui est la clé de bien plus de pouvoir, et l'enjeu +de bien des conflits qui ont tiraillé notre monde; cette entité, c'est +l'information. Et l'ordinateur, c'est fondamentalement une machine à +emmagasiner, thésauriser, traiter et diffuser de l'information (d'où le nom : +informatique). Avec lui, on peut enfin réaliser pleinement cet adage +politique : les chiffres, on leur fait dire ce qu'on veut. +
++ +L'ordinateur, cependant, n'a pas la puissance de compréhension du cerveau d'un +humain, et d'ailleurs il se fait également écraser par le chimpanzé, le +dauphin et le desman des Pyrénées. Contre le cafard, il se défend +correctement. En revanche, la mémoire de l'ordinateur est remarquable, et, +sans être infaillible, on peut la qualifier de fiable. +
++ +Afin de faire comprendre une information à un ordinateur, il faut d'abord la +présenter sous une forme qu'il peut appréhender. Cette forme, c'est le +binaire. Dans la machine, tout est 0 ou 1, vrai ou faux. Cette information +fondamentale s'appelle un bit. L'ordinateur traite des bits, beaucoup, +et les retient.» +
++ «Mais rien n'est binaire dans la vie!», s'exclame l'apprenti. +
++«Certes non, répond le maître. Mais ça peut s'arranger. Plusieurs bits +ensembles permettent de faire beaucoup de combinaisons. Certaines combinaisons +seront des lettres. D'autres représenteront des couleurs. Des sons. Des +images. Avec quelques centaines millions de bits, on peut représenter un clip +entier de Michael Jackson.» +
++ «Mais si j'ai ces myriades de bits, que puis-je en faire? Quelle est +l'information?» +
++«L'information, c'est que dans ces mêmes bits, j'aurais pu mettre une +prestation de The Artist (formerly known as Prince). C'est cela, +l'information : une possibilité. L'information est unique, mais sa puissance +réside dans le fait qu'elle aurait pu être autrement. Et à bien des égards, +elle est tout autant manipulable quelle que soit sa forme. On peut la copier, +la transporter, dans les mêmes conditions, car un 0 pèse autant qu'un 1. Et +c'est bien ce que va faire l'ordinateur.» +
++ «Mais ces 0 et ces 1, où est-ce que l'ordinateur les stocke?» +
++«Là.» Et le sage tend son doigt vers des petites plaquettes grisâtres, +alignées dans la carcasse de la machine éventrée. «C'est dans ces modules que +l'information vit et meurt. Chaque bit est dans un système qui peut prendre +deux états différents; le premier état code un 0, le second code un 1. On +appelle ça un bistable. +
++Pour bien expliquer ça, prenons le cas du Normalien; il possède deux états +stables : allongé dans son lit, et vautré sur un canapé de la KFêt. Quand il +est dans un des deux états, il y reste, sauf au prix d'un effort (se lever et +marcher); cet effort ne se prolonge jamais indéfiniment, et, rapidement, il +retombe dans un de ses deux états stables. Dans l'ordinateur, c'est pareil : il +y a une circuiterie, qui fait passer un courant, ou pas, et qui +s'auto-entretient : quand il y a du courant, un jeu de transistors s'assure que +le courant continue. Quand il n'y en a pas, les même transistors détruisent +toute velléité de création spontanée d'un tel courant. La circuiterie conserve +la mémoire de son état antérieur, tant qu'on ne la force pas, extérieurement, +à changer d'état. +
++Une autre méthode est d'utiliser une toute petite batterie, qui a deux états : +pleine, et vide. Elle est trop petite pour être raisonnablement à moitié +pleine; de plus, elle fuit, et un système spécialisé s'occupe de refaire le +plein, régulièrement, dans les batteries partiellement déchargées. +
++Tout ça revient à des transistors et des condensateurs, qui se fabriquent avec +de fins fils de cuivre et d'aluminum, et du silicium. Le silicium, c'est un +produit très courant : c'est le constituant principal du sable. Dans la puce +que vous voyez là, pas plus large qu'un haricot, il y a un peu plus de +64 millions de bits, de quoi écrire l'intégrale des oeuvres de Balzac.» +
++ «Et si on coupe le courant, il se passe quoi?» +
++«La même chose que si Dieu éteint le soleil : ça craint très fort. Dans le cas +de cette mémoire, ça la vide. L'information meurt.» +
++ «Et comment est-ce que les informations rentrent et sortent? Je suis sûr +qu'Honoré, quand bien même il accepterait de le faire, ne pourrait pas rentrer +dans le haricot, ni même dans un ananas.» +
++«Les données font comme tout le monde : elles prennent le bus. Regarde ces +fils, jeune disciple, c'est ça le bus. Dans ces fils vrombissent des +impulsions électriques qui codent les 0 et les 1; car on peut faire plusieurs +sortes d'impulsions. Ces impulsions sont très rapides, et se propagent comme +des vagues à la surface de l'eau. C'est là qu'on voit toute l'intangibilité de +l'information : même agitée, l'eau reste de l'eau. L'information, dans le bus, +est une agitation d'électrons dans du cuivre. +
++La vitesse, et le débit des informations, sont des éléments cruciaux, vitaux, +fondamentaux et primordiaux de la bonne marche de la machine. C'est ce qui +justifie la mort de Philippidès6. Tout est +fait pour que l'information circule le plus vite possible, et le plus +facilement possible, entre les différents éléments de l'ordinateur, sans pour +autant rentrer en collision avec d'autres informations qui emprunteraient les +mêmes voies. Chaque seconde, ce sont quelques milliards de bits qui parcourent +allègrement ces câbles. Et pas un ne se perd! Un tel peuple en marche est la +réalisation d'une utopie maoïste. +
++Médite bien cela, et après je t'expliquerai où et comment on modifie +l'information.» +
+-- Thomas Pornin
+Unix est un système multi-utilisateurs : les utilisateurs sont +individualisés, ils ont chacun un compte auquel ils accèdent par un mot de +passe. Chacun a le droit de faire ce qu'il veut sur son compte, mais il n'a +pas le droit de modifier les fichiers des autres utilisateurs. C'est cette +question des droits (ou permissions) que l'on va aborder dans ce numéro. On +reprend ici un article paru dans le numéro 4 du Hublot, février 2000.
+Sous Unix, on distingue trois sortes de droits : le droit +de lecture, le droit d'écriture, et le droit d'exécution. Lire un fichier, +c'est en prendre connaissance. Écrire dans un fichier, c'est pouvoir le +modifier. Le droit d'exécution ne concerne que les programmes (aussi appelés, +de ce fait, «exécutables»). +
++Un fichier a toujours un propriétaire, qui est, en règle générale, la +personne qui l'a créé. Le propriétaire d'un fichier est le seul à pouvoir +tout faire avec ce fichier. Lui seul peut l'effacer, et lui seul choisit qui +a le droit de lire le fichier, de l'exécuter ou de le modifier. On distingue +donc différentes catégories d'utilisateurs, qui sont : +
+litt95
, bio99
, math94
...);+Les autres utilisateurs n'ont le droit de faire que ce que le propriétaire +autorise. Un seul utilisateur a le droit de tout faire, et d'accéder à tous +les fichiers : c'est root, le super-utilisateur, l'administrateur du +système. +
+ Pour savoir quels sont les droits d'un fichier, on
+utilise la commande ls
avec l'option -l
.
+Les lignes affichées commencent toutes par quelque chose comme :
+
+-rw-r--r-- ++
Ce sont ces caractères qui renseignent sur les droits. Le premier caractère +donne le type du fichier; ici, comme rien n'est dit, c'est un fichier normal +(donc pas un répertoire par exemple). +
+
+Ensuite, vous avez trois fois la même série de lettres : rwxrwxrwx
. Si
+on lit la lettre, c'est que le droit est donné, si on voit un tiret à la
+place, c'est que le droit n'est pas attribué :
+
r
c'est read
+(droit de lecture), w
c'est write (droit
+d'écriture), x
c'est execute (droit d'exécution).
+rwx
indique les
+droits du propriétaire du fichier, le deuxième les droits de son groupe, le
+troisième les droits de tous les autres utilisateurs.
+On apprend donc que le propriétaire de ce fichier a le droit de le lire et de
+le modifier (rw-
); quand à tous les autres utilisateurs, groupe
+inclus, ils ne peuvent que lire le fichier (r--r--
). Ce sont là les
+droits d'un fichier normal.
+
+Les droits habituels d'un répertoire sont les suivants : +
++drwxr-xr-x ++
Le d
indique qu'il s'agit d'un répertoire (directory).
+Lire un répertoire, c'est pouvoir afficher son contenu; exécuter un
+répertoire, c'est pouvoir aller dedans. Votre répertoire Mail/
, qui
+contient les courriers que vous avez sauvegardés, a les droits suivants :
+
+drwx------ ++
+Ça veut dire que vous, et vous seul, pouvez accéder à votre courrier, et le
+lire. Le répertoire prive/
des conscrits a les mêmes droits.
+
+La commande chmod
(change mode) sert à modifier les droits
+d'un fichier, de la manière suivante :
+
+chmod droits fichier ++
Elle a deux syntaxes différentes, le mode symbolique et le mode octal. On ne +va parler ici que du mode symbolique. +
++Des caractères désignent successivement l'utilisateur, l'opération à effectuer +et le droit considéré, suivant ce tableau : +
+Utilisateur | +Action | +Droit | +
u (user) |
+ + (ajouter) |
+ r (read) |
+
g (group) |
+ - (retirer) |
+ w (write) |
+
o (others) |
+ + | x (execute) |
+
+Ainsi, la commande suivante sert à rendre exécutable le fichier
+boprogramme
, pour son propriétaire :
+
+chmod u+x boprogramme ++
Ses droits étaient -rw-r--r--
, ils sont désormais
+-rwxr--r--
.
+
+Ou encore, celle-ci sert à interdire la lecture du fichier secret
à
+tous les autres utilisateurs, groupe inclus :
+
+chmod go-r secret ++
Ses droits étaient -rw--r--r--
, ils sont maintenant les suivants :
+-rw-------
.
+
+Nous avons dit que, par défaut, tous les fichiers étaient lisibles par tout le +monde, à l'exception du courrier électronique et de quelques autres. +Autrement dit, tout le monde peut aller lire votre maîtrise ou vos programmes. +Cependant, cette possibilité technique ne doit pas être considérée comme un +incitation aux indiscrétions. La charte signée en début d'année est claire +sur ce point (paragraphe 2.4) : +
++++ +Tout utilisateur est responsable, pour ses fichiers et répertoires, des droits +de lecture et de modification qu'il donne aux autres utilisateurs. En outre, +il est interdit de prendre connaissance d'informations détenues par d'autres +utilisateurs, quand bien même ceux-ci ne les auraient pas explicitement +protégées. + +
+
Le débat est toujours ouvert : faut-il être complètement paranoïaque, et +interdire complètement l'accès à son compte, y compris pour des données non +confidentielles? Ou alors faut-il conserver une certaine transparence et +n'interdire en lecture que ce qui est strictement privé, comme le courrier +électronique? +
++C'est une question de responsabilité personnelle. Si vous préférez interdire +tout regard extérieur sur votre compte, vous êtes libre de le faire; la +commande est la suivante (en mode octal) : +
++chmod 700 ~ ++
~
(tilde) c'est votre compte, 700
équivaut
+en gros à go-rwx
. Aucun de vos fichiers ne sera visible pour
+qui que ce soit, sauf vous. Il faut cependant savoir que, en cas de
+problème, les tuteurs et les gourous ne vous seront d'aucune aide. Il
+faudra aller voir l'administrateur-système.
+Il vaut donc mieux ranger dans un répertoire spécial tout ce qui est
+confidentiel, et interdire l'accès à ce répertoire. Les conscrits en ont déjà
+un, qui s'appelle prive/
. Mettez-y les documents que vous souhaitez
+protéger, et personne ne pourra les voir.
+
Vous pouvez aussi réunir dans un répertoire tout ce que vous
+considérez comme public (texte d'une pétition, oeuvre commune, etc). Ce
+répertoire est ordinairement appelé Public/
, ou
+pub/
. Ou encore, vous vous contentez d'interdire en lecture
+tout ce que vous considérez comme personnel, en laissant le reste ouvert.
+
Fichier
+définissant et personnalisant le comportement de certains programmes
+(.pinerc
, .ytalkrc
...). Le rc
veut dire
+run command.
+Ce sont aussi les fichiers de configuration qui définissent la taille, la
+couleur et l'emplacement des fenêtres, les menus de fond d'écran, les couleurs
+de ls
, etc. On détaillera ces fichiers de configuration dans le
+numéro 13 du Hublot, en mars 2001.
C'est un environnement graphique +développé pour Unix, et très ressemblant à Windows, tant par l'aspect que par +les ressources qu'il consomme. Il regroupe à la fois un bureau, un certain +nombre d'applications de base (courrier électronique, gestion des fichiers...) +et des applications plus lourdes (traitement de textes...).
+
+L'environnement lui-même n'est pas installé à l'École, mais certaines des
+applications le sont quand même (jeux, utilitaires comme le gestionnaire de
+fichiers kfm
, le générateur de fractales kfract
,
+etc).
+Il y a d'autres projets proposant une interface graphique agréable pour +machines Unix; citons Gnome, Afterstep, WindowMaker.
+Appliqué à un logiciel, +signifie que quiconque en possède un exemplaire est autorisé à en user à peu +près comme bon lui semble, en particulier le redistribuer (gratuitement ou +pas) et le modifier. En particulier, ça siginfie que le code source (les +secrets de fabrication) est disponible. Un logiciel libre n'est pas +nécessairement gratuit. D'autre part, diffuser le code source d'un logiciel ne +remet pas en cause les droits d'auteur.
++Il existe un certain nombre de licences sous lesquelles sont +distribuées les logiciels libres; la plus connue est la GPL (General +Private Licence).
+netscape
, pine
, Nethack,
+LATEX, gimp
, Linux sont des logiciels
+libres.
Contraire de libre... Le +logiciel et son code source appartiennent à une société. On parle aussi de +«matériel propriétaire» : les ordinateurs TotoTM n'acceptent que du matériel +TotoTM (barrettes de mémoire, cartes, etc).
+Ensemble de fonctions qui +peuvent être incorporées à LATEX pour faire une tâche +particulière (police spéciale, colonnes, etc...). Les packages +LATEX seront expliqués dans le prochain numéro. +
+Le Hublot est le journal des tuteurs informatique de l'ENS. +Il paraît chaque mois à 350 exemplaires. Il est également disponible sur +le Web :
+
+
+ http://www.eleves.ens.fr/tuteurs/docs/hublot/
+
+
+Rédaction : Émilia Robin. +
+Ont collaboré à ce numéro : Nicolas George, François Kahn, David +Madore, Jérôme Plût, Thomas Pornin, Cédric Ware.
+Merci à Hélène Duquennoy, Nadia Feraoun et Gilles Radenne pour leurs +relectures.
+Word est un +produit de Microsoft, WordPerfect de Corel, StarOffice est un logiciel libre +maintenu par Sun microsystems (après avoir été racheté à StarDivision), +ApplixWare de Applix, Axene de Axene Inc.
+ L'utilisation
+d'ApplixWare a été présentée dans le numéro 4 du Hublot, en
+février dernier. Reportez-vous à notre site Web pour cet article :
+hublot/hublot4/hublot4.html#asterix
.
Spécifications
+à l'adresse suivante : http://msdn.microsoft.com/library/en-us/dnrtfspec/html/rtfspec.asp
.
La modération +sera abordée le numéro 11 du Hublot, au mois de +janvier.
+Il est temps +de le boire, soit dit en passant.
+Euclès, selon +Plutarque.
++ +
++ Dans ce numéro, on achève de présenter les commandes Unix de base, +et on se lance dans les choses sérieuses en matière de sécurité +informatique. On attaque aussi des sujets plus techniques en +LATEX. +
+
+
+À suivre au mois de janvier, le prochain stage informatique: on y
+parlera de LATEX, de forum, du logiciel de dessin
+
+ xfig
+
+ ... et de
+ce que vous nous suggérerez!
+
+ +Comme dans chaque numéro, les conseils de lecture et les bonnes +adresses: +
+http://www.eleves.ens.fr/
+ http://www.eleves.ens.fr/tuteurs/docs/hublot/
+ Nous sommes toujours à votre disposition pour toutes questions et
+suggestions: tuteurs@clipper
.
+Vous pouvez aussi mettre un mot dans le casier de Marie-Lan Nguyen.
+Enfin, n'oubliez pas que quand vous tapez qui
, les tuteurs
+ont leur nom souligné: n'hésitez pas à nous solliciter!
+
Cette rubrique porte sur l'utilisation pratique des machines Unix et de +LATEX. Ce mois-ci, on présente les commandes pour renommer, déplacer copier +et détruire des fichiers. La section «Config conscrits» explique +comment faire du copier-coller. système de fenêtrage. Enfin, la rubrique +LATEX explique ce que sont les packages, et quels sont les plus +courants.
+
+On achève ce mois-ci le tour d'horizon des commandes Unix de base, pour la
+gestion quotidienne des fichiers. Les mois suivants, on verra divers petits
+logiciels, ainsi que la façon d'enchaîner des commandes, et les «jokers».
+Si vous êtes allergiques au clavier, n'oubliez pas qu'il existe aussi des
+gestionnaires de fichiers à la souris sur les stations (le spartiate
+xfm
et le plus joli et plus lourd kfm
). Cela dit, si vous
+êtes connectés à distance, vous ne pourrez utiliser que les commandes clavier;
+il est donc utile de les connaître...
Sert à faire une copier d'un fichier, selon la +syntaxe suivante:
+brick ~ $ cp fichier nouveau
+
+ fichier
est le nom du fichier existant, nouveau
+est le nom de la copie.
Cette commande sert à la fois à renommer et à +déplacer les fichiers. Pour renommer, la syntaxe est la suivante:
+ brick ~ $ mv fichier nouveau
+ Le
+premier nom est le nom actuel du fichier, nouveau
est le
+nouveau nom du fichier. Pour déplacer un fichier, on indique le nom du
+fichier, suivi du nom du répertoire où l'on veut placer le fichier:
brick ~ $ mv commentaires DEA/
+
+ Cette commande place le fichier commentaires
dans le
+sous-répertoire DEA/
de votre compte.
rm
sert à effacer un fichier, avec la
+syntaxe suivante:
brick ~ $ rm fichier
+rm: remove fichier (yes/no)? y
+
+ À la demande de confirmation, répondez pas yes
ou simplement
+y
. Si vous répondez autre chose, le fichier ne sera pas
+effacé.
mv
et
+rm
. rm
ne fonctionne pas sur le principe de la corbeille des
+Macs ou des PC Windows, il ne déplace pas les fichiers dans un «endroit» de
+stockage avant destruction. Un fichier effacé est vraiment effacé (mais
+le SPI fait des sauvegardes toutes les nuits, adressez-vous à eux si vous
+effacez un fichier par mégarde: spi@clipper
).cp
, mv
et
+rm
sont en fait des alias* sur les commandes cp -i
,
+mv -i
, rm -i
(ou, pour le dire autrement, par défaut,
+l'option -i
est mise). C'est l'option interactive, qui demande
+confirmation avant d'écraser un fichier, ou de l'effacer. C'est donc une
+sécurité.
+Mais cette option n'est pas activée partout: le plus souvent, quand vous vous
+retrouverez sur un système Unix hors de l'ENS, il n'y aura pas cette sécurité,
+et rm
effacera vos fichiers sans demander confirmation. Soyez donc
+prudents...
+
Ces trois commandes sont expliquées sur le site des tuteurs:
+/tuteurs/unix/fichiers.html
. Vous trouverez également des
+exercices corrigés sur mv
et cp
:
+/tuteurs/unix/exercices/cp_mv.html
.
+Le mois prochain, on présentera l'utilitaire less
, qui sert à
+regarder des fichiers texte sans les modifier.
Le copier-coller consiste à recopier un bout de texte pour le +coller ailleurs, soit dans le même document, soit ailleurs. Les logiciels +manipulant du texte comportent des commandes permettant de faire du +copier-coller, avec raccourcis claviers ou menus; on peut aussi utiliser la +souris (ce que la souris sélectionne est gardé en mémoire, le «presse-papier» +des Macs et de Windows).
+On ne va parler ici que du copier-coller à la souris, sans évoquer les +commandes spécifiques des éditeurs et des traitements de textes. D'autre +part, il ne s'agit que de copier du texte, et rien d'autre.
+Pour faire du copier-coller, on sélectionne le texte avec +le bouton gauche, et on colle avec le bouton du milieu:
+Un double-clic sur un mot le sélectionne +automatiquement. C'est particulièrement utile pour des noms de fichiers, +des adresses électroniques, ou encore des URL*. Un +triple clic sélectionne toute la ligne. Ça ne sert pas à grand chose, +mais c'est rigolo.
+Voici quelques conseils pour utiliser plus +efficacement le copier-coller avec les logiciels courants:
+pine
, pico
: rien à dire de spécial... N'oubliez pas
+l'existence de la commande ^J
(«justifier») pour reformater un
+paragraphe, quand les lignes sont de longueur inégale. Pour l'utiliser,
+placez-vous au début du paragraphe et tapez ^J
.netscape
: vous pouvez récupérer le texte de pages Web en
+utilisant le copier-coller. Il est cependant souvent plus simple de
+télécharger le document, en sélectionnant Save As
dans le menu
+File
.Location
, commencez par
+effacer l'adresse de la page courante (sélectionnez-là avec le bouton gauche
+et appuyez sur Backspace
). Ensuite, coller la nouvelle adresse dans
+le cadre.nedit
: le principe «sélectionner avec le bouton gauche, coller
+avec le bouton du milieu» fonctionne; le texte sera collé à l'endroit où vous
+cliquez avec le bouton du milieu (comme avec emacs
).Cut
, Copy
et
+Paste
.emacs
: sélectionner le texte avec le bouton gauche. Le texte
+sera collé à l'endroit où vous cliquerez avec le bouton du milieu. Vous n'avez
+donc pas à placer préalablement le curseur à l'endroit voulu.vim
: il faut être en mode insertion pour coller un bout de
+texte avec la souris.Pour les éditeurs en général, n'oubliez pas qu'ils incluent des commandes pour
+insérer des fichiers extérieurs (^R
avec pico
donc
+pine
, ^I
ou Include File
dans le menu File
+pour nedit
, :r
fichier
avec vim
, ^XI
+ou Include File
dans le menu File
de
+emacs
).
+Le mois prochain, on parlera des raccourcis clavier de la config conscrits. +
+
+Les packages sont des ensembles de commandes qui permettent d'étendre
+les fonctionnalités de LATEX ou de changer son comportement. Certains
+s'appliquent automatiquement à l'ensemble du texte, d'autres rendent
+simplement disponibles des commandes particulières. Ils correspondent à des
+fichiers qui ont un suffixe .sty
.
+Note: «package» est un mot anglais, et comme tel, nous devrions le mettre en
+italiques dans tout ce texte... Mais comme l'alternative francophone
+«paquetage» est très rare et guère plus explicite, nous assumons l'usage de
+package en français dans le texte.
+
Pour charger un package, on utilise la
+commande \usepackage{
nom
}
, où nom est le
+nom du package. Cette commande se place dans le préambule du document, avant
+le \begin{document}
.
+Certains packages prennent des options; celles-ci sont écrites entre crochets,
+avant le nom du package lui-même; quand il y a plusieurs options, on les met à
+la suite, séparées par des virgules:
+\usepackage[
option1,option2
]{
package
}
+
Pour garantir que vos accents passent bien +d'une machine à l'autre, et que votre DVI aura des accents, et pour franciser +vos documents (titres prédéfinis, typographie, etc), voici les trois packages +à utiliser dans tous vos fichiers:
++\usepackage[francais]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} ++
inputenc
, c'est l'encodage des accents du fichier source (le fichier
+.tex
). On lui donne l'option latin1
, car l'encodage standard
+des accents occidentaux est l'isolatin1. C'est le même principe pour
+fontenc
(encodage de la fonte dans le DVI).
babel
est un système qui permet de gérer une ou plusieurs langues
+dans un même document; ici, on lui passe l'option francais
. Il
+connaît un certain nombre de langues (bahasa
, breton
,
+catalan
, croatian
, czech
, danish
,
+dutch
, english
, esperant
, estonian
,
+finnish
, galician
, german
, greek
,
+irish
, italian
, lsorbian
, magyar
,
+norsk
, polish
, portuges
, romanian
,
+russian
, scottish
, slovak
, slovene
,
+spanish
, swedish
, turkish
, usorbian
,
+welsh
, ouf).
+Note importante: c'est bien francais
et pas french
que
+l'on vous conseille; french
n'est pas tout à fait compatible
+avec le reste de Babel, et il redéfinit des choses, comme l'espacement à
+l'intérieur des listes, qui n'ont rien à voir avec la francisation. Les
+Français qui l'ont écrit ont un peu trop intériorisé la notion
+d'«exception culturelle»...
Ce que gère Babel, ce sont les titres des parties et des tables
+générées automatiquement, la date écrite dans la langue choisie (commande
+\today
), et aussi certaines macros spécifiques. Pour le
+français, en voici quelques-unes: 1\ier
: 1er; 2\ieme
: 2e;
+1\iere
: 1re.
+Quand on lui passe plusieurs langues en argument, celle qui domine dans le
+texte est la dernière indiquée. Des commandes spécifiques servent à passer
+dans l'autre langue; par exemple, \textgreek{}
pour mettre des mots en
+grec, ou \cyr{}
pour mettre des mots en cyrillique (en supposant que
+vous avez indiqué greek
ou russian
dans les options de
+babel
).
+
Il en existe un tas, qui font un tas de choses... On +va voir ici les plus courants, et les plus utiles:
+amsmath,amsfonts,amssymb
+ Ces trois packages définissent des +commandes vraiment indispensables pour taper des maths avec LATEX. Et +également quelques symboles qui peuvent servir ailleurs. AMS, c'est +l'American Mathematical Society.
+epsfig
+ Pour inclure des images au format EPS (PostScript
+encapsulé), avec la commande \epsfig{}
. On en parlera au mois de
+février.
multicol
+ Pour faire un document en plusieurs colonnes. Pour
+cela, on utilise l'environnement multicols
(avec un «s», piège
+diabolique). Par exemple, pour un document écrit sur trois colonnes:
+%BEGIN LATEX +\begin{multicols}{3} +%END LATEX +Le texte... +%BEGIN LATEX +\end{multicols} +%END LATEX ++
url
+ Pour afficher correctement des adresses électroniques et +des URL.
+vmargin
+ Pour redéfinir la taille de la page. On le verra plus +précisément dans le prochain numéro.
+ Bien sûr, il ne s'agit que d'une très petite
+partie de tous les packages existants. En fait, chaque fois que quelqu'un
+écrit une fonctionnalité supplémentaire pour LATEX (par exemple,
+supertabular
pour faire des tableaux sur plusieurs pages), il écrit
+un package.
Le LATEX companion, dont on trouve +normalement un exemplaire (souvent en très mauvais état hélas) dans +toutes les salles informatiques, contient une énumération beaucoup plus +complète, ainsi qu'une description beaucoup plus détaillée des +possibilités.
+
+Notons qu'il y a aussi quelques notices pour les packages les plus utiles
+installés chez gourous, dans le répertoire
+/usr/local/util/tex/doc
.
+Le mois prochain, on expliquera comment régler la taille de la page. +
+Nicolas George, Émilia Robin
++ Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on va expliquer ce que sont les +disquettes, et comment on s'en sert sur les stations. +
++Voyons un peu la longue histoire des disquettes, aussi appelées floppy +disk, c'est-à-dire disques souples. J'en vois déja me dire que les disquettes +que vous utilisez sont en plastique rigide, mais ce terme désigne en fait le +disque magnétique souple qui se trouve à l'intérieur de l'enveloppe rigide. +Il s'oppose aux disques durs (hard disk en anglais), dans lesquels les +disques magnétiques (appelés des plateaux) sont rigides.
+Il y a bien longtemps, il n´existait pas de CD-ROM, ni +de disques durs ou même de disquettes. On utilisait des cartes perforées. +C'était un moyen de stockage et de transmission peu efficace et peu pratique, +mais il n'y avait rien d'autre.
++On a alors eu l'idée d'utiliser le même principe que pour le stockage de +musique, à savoir une surface magnétisée, constituée d'une multitude de +minuscules aimants. Ces aimants peuvent être orientés à volonté, et ils +gardent alors cette orientation, stockant ainsi de l'information. On a +commencé par garder la même forme que pour les cassettes, c'est à dire des +bandes magnétiques enroulées sur des bobines, et qu'on déroule pour lire +l'information dessus. Ça marchait, mais c'était assez lent, et pour lire les +données placées à un endroit précis il fallait dérouler toute la bobine pour +atteindre le bon endroit. +
++Cela avait quand même quelques bons côtés, comme une capacité assez +importante. D'ailleurs, le principe est encore utilisé aujourd'hui. Par +exemple les sauvegardes des comptes sur clipper sont faites sur des cassettes +DAT (Digital Audio Tape, qui sont à la base des cassettes utilisées pour +l'enregistrement numérique de musique). D'autres systèmes utilisent des +cassettes de caméscope.
+Pour pallier ces défauts, on a donc pris cette +fois comme surface magnétique un disque souple, qui tournait autour de son +axe, qu'on a inséré dans une pochette en plastique souple, laquelle gardait +des ouvertures pour accéder à la surface magnétique. De cette manière, on +pouvait accéder (presque) instantanément à n'importe quelle partie du disque +en question, simplement en le faisant tourner et en déplaçant la tête de +lecture le long d'un rayon. +
++C'est ainsi qu'est apparue la première disquette, qui était alors un +mastodonte, connu sous le nom de disquette 8" (lire «8 pouces», c'est à dire +un peu plus de 20 centimètres de large, le pouce mesurant exactement 2,54 +centimètres) Ce monstre possédait une capacité absolument délirante pour +l'époque, à savoir 80 Ko.
++Plus tard sont apparues les disquettes 5"1/4 (cinq pouce un quart), qui +avaient à la base une capacité de 180 Ko par face, et qui furent utilisées par +la majorité des micro-ordinateurs du début des années 1980 (IBM PC, Commodore +64...).
+En 1982, Sony créa un nouveau type de disquette qui +devait très vite s'imposer, la disquette 3"1/2 (trois pouce et demi), toujours +en usage actuellement, et donc la capacité pouvait alors aller jusqu'à 720 Ko. +Outre sa taille réduite et sa plus grande capacité, elle comportait deux +innovations:
+Du fait de leur plus grande capacité et fiablité (même si la fiabilité d'une +disquette n'est jamais très élevée), ces disquettes furent rapidement adoptées +par Apple (dont le Macintosh fut la première machine à l'utiliser), puis par +Atari et Commodore (dans les Ataris ST et les Amigas), puis arrivèrent sur les +PC avec le PS/2 d'IBM, et devinrent le standard.
++Les disquettes 5"1/4 et 3"1/2 ont vu par la suite leurs capacités portées à +1,2 Mo et 1,44 Mo (en 1984 et 1987), et ce sont les capacités utilisées +actuellement. Il y a eu une tentative infructueuse pour introduire des +disquettes 3"1/2 à 2,88 Mo, mais devant le peu d'enthousiasme du public, cela +fut abandonné.
++Signalons également le format 3", qui ressemble au format 3"1/2, avec une +capacité de 180 Ko par face. Très peu répandu, il ne fut utilisé que par +quelques machines (Stratos ou Téléstrat, et surtout l'Amstrad CPC), et à cause +du succès soudain de l'Amstrad, ces disquettes connurent des périodes de +pénurie assez mémorables pendant lesquelles les prix s'envolèrent.
++La première chose à savoir quand on utilise des disquettes est leur manque +total de fiabilité: quand on copie un fichier sur une disquette, on n'est +jamais sûr de pouvoir le relire. C'est pourquoi il est fortement déconseillé +d'utiliser les disquettes comme sauvegarde principale ou comme archive; et +quand l'on transfère des fichiers à l'aide de disquettes, il est préferable de +tout transférer en double sur des disquettes séparées pour avoir des chances +raisonnables d'avoir au moins un exemplaire lisible de chaque +fichier.
++Une disquette est en effet très sensible aux conditions extérieures, à savoir +température, humidité et surtout champs magnétiques. Bon nombre de disquettes +ont succombé à un séjour au soleil, dans une pièce humide, ou simplement à un +passage à côté de haut-parleurs mal isolés... +
++De plus, une capacité de 1,44 Mo peut se réveler insuffisante, et s'il existe +des outils pour répartir un fichier entre plusieurs disquettes, cela n'est +jamais pratique. +
++Aussi les disquettes possèdent maintenant un certain nombre d'alternatives: +
+On reprend ici un article paru dans le numéro 7 du +Hublot, en mai 2000.
++Les plantages des ordinateurs fonctionnant sous Windows ou MacOS peuvent +entraîner des pertes irréparables de données. Sachez que vous ne pourrez pas +vous retourner contre le fabricant du logiciel, car la licence vous avez +acceptée possède une clause qui exclut toute responsabilité pour les dégâts +que pourrait causer le produit. D'autre part, quel que soit le système, un +disque dur est un dispositif électromécanique pouvant être sujet à des pannes +matérielles. Vous devez donc faire des sauvegardes régulières de vos données, +au moins tous les mois1. Voici +quelques conseils:
++Enfin, sachez qu'à l'ENS, le Service de Prestations Informatiques effectue une +sauvegarde des comptes des élèves (sur les Suns et les PC sous Linux) toutes +les nuits, sur des bandes magnétiques. +
+On vous montre ici une façon d'utiliser +les disquettes qui peut paraître barbare et pas simple. Mais des commandes au +clavier sont le seul moyen de partager un lecteur de disquettes entre +plusieurs machines, et de pouvoir l'utiliser à distance. Les Suns, +traditionnellement, n'avaient pas de lecteur, seule une machine dans la salle +en avait un, utilisé par tout le monde.
++En revanche, les interfaces graphiques pour Unix, comme KDE, que vous pouvez +avoir sur votre PC Linux, permettent une gestion à la souris des disquettes, +pour copier des fichiers ou les mettre sur la disquette. Unix ne se réduit pas +à ce que vous en voyez à l'École...
+Pour utiliser les disquettes au format PC sur les +stations Sun, il existe une ensemble de commande appelées mtools. Il +faut savoir qu'à l'ENS les machines Unix ne sont pas toutes équipées d'un +lecteur de disquettes, mais on peut se servir du lecteur d'une station sans +être physiquement devant. Pour cela, il suffit d'introduire la disquette dans +le lecteur (en essayant de ne pas trop déranger la personne devant le +clavier), et de se connecter à distance sur la machine en question.
++Pour indication, voici la liste des machines équipées de lecteurs de +disquettes en salle S (galion, kayak, bireme, brick, jonque, chaland et +drakkar), au 46 (belandre et barge), en Infi (jangada, plate, aviso, allege, +buyse) à Jourdan (vedette, chaloupe, nave, selandre, gondole), montrouge +(ponton, polacre). Cela évolue en fonction des nouvelles machines installées +(les Ultra 5 ont toutes des lecteurs). +
++Une fois la disquette dans le lecteur, voici quelques commandes utilisables +(il peut y avoir des fichiers et des répertoires sur une disquette): +
+
+
+ mdir
+
+ |
+ + Affiche le contenu de la disquette + | +
+ mcd toto
+ |
+ Se déplacer dans le répertoire toto
+de la disquette |
+
+ mmd toto
+ |
+ Crée le répertoire toto |
+
+ mrd toto
+ |
+ Supprime le répertoire toto , à
+ condition que celui-ci soit vide |
+
+ mcopy a:bla .
+ |
+
+ Copie le fichier bla de
+la disquette vers la station dans le répertoire courant
+ |
+
+ mcopy bla a:
+ |
+
+ Copie le fichier bla vers la
+disquette
+ |
+
+ mdel bla
+ |
+ Supprime le fichier bla |
+
+ mdeltree toto
+ |
+ Supprime le répertoire toto ,
+ ainsi que tous les sous-répertoires et fichiers qu'il contient (à
+ utiliser avec précaution!) |
+
+ mformat a:
+ |
+ Formate la disquette, donc efface tout. | +
+Ceux qui connaissent les commandes MS-DOS les auront reconnues dans les
+mtools, précédées d'un «m» (pourquoi un «m», personne ne le
+sait). Le lecteur de disquettes est désigné par a:
, et la syntaxe
+pour les répertoires est la syntaxe habituelle, c'est-à-dire que les
+répertoires sont indiqués par /
, et ..
+correspond au répertoire précédent.
+L'utilisation des disquettes est détaillée sur le site des tuteurs,
+avec des exemples: /tuteurs/cours/unix/disquettes.html
.
Gilles Radenne
++ Ce mois-ci, nous nous étendons sur le Web, ses principes et ses +fonctionnement, des conseils pour identifier les bons sites, et une +présentation des moteurs de recherche. Dans la rubrique «Forum», on continue +à expliquer comment lire forum, en abordant ce mois-ci la façon d'aller de +conti en conti. +
++Le Web, c'est le truc dont on parle à la télé: les pages, les machins +multimédia, les «savoirs en ligne», etc. On en parle tellement qu'on dit +«Internet» à la place de «Web» («Je surfe sur Internet», «J'ai trouvé un super +site Internet»). Pire encore, il y a des gens qui confondent le logiciel +utilisé pour naviguer sur le Web, et le réseau lui-même (ce qui donne des +«Tiens, je ne connais pas cette version d'Internet»). +
+Le Web est l'un des aspects d'Internet. +Internet, c'est la mise en réseau mondiale d'ordinateurs. Ça implique une +infrastructure matérielle (câbles, routeurs...), et une série de protocoles +pour faire transiter les informations. Par exemple, le Web utilise le +protocole HTTP (hypertext transfert protocol, protocole de transfert +des fichiers hypertexte). +
++Mais Internet c'est aussi le courrier électronique, le transfert de fichiers, +la connexion à distance (telnet), les news... Pour chacune de ces fonctions, +on utilise un logiciel: navigateur pour le Web, logiciel de courrier, etc. +
++Si vous voulez, Internet c'est comme une route que les gens utilisent pour +différentes fonctions (transport de marchandises, vacances, trajet +boulot-dodo, balade à vélo...), et ces fonctions c'est le courrier, le Web, +etc. +
+Sur le Web2, une
+adresse s'appelle une URL (Uniform Resource Locator). Prenons
+pour exemple l'adresse du serveur des élèves de l'ENS: http://www.eleves.ens.fr/
.
+Le http
au début indique le protocole à utiliser, et signale
+qu'il s'agit d'une page Web (cependant, toutes les pages Web ne sont pas
+servies par HTTP). Le .fr
est un nom de domaine, qui indique
+ici que la page se trouve en droit en France (mais il se pourrait que le
+serveur, en tant que machine physique, matérielle, soit aux États-Unis).
+www.eleves.ens
désigne en réalité une machine qui héberge le
+site des élèves de l'institution ENS. Le 80
désigne un
+numéro de port.
+Enfin, le /
(slash) qui termine l'adresse indique qu'on se
+rend au point de départ de l'arborescence du site, en pratique la page
+d'accueil.
+Tout ceci indique la machine à contacter pour rejoindre la page Web. Ensuite,
+il peut y avoir d'autres informations quelle page précisément on demande à
+voir. Par exemple, http://www.cof.ens.fr/cineclub/
+correspond la page d'accueil du Ciné-Club de l'ENS, elle-même un sous-ensemble
+logique de COF/
.
+Quand vous sélectionnez un lien, votre ordinateur envoie une requête sur le +serveur désigné par l'URL. Ce serveur renvoie la page demandée par votre +navigateur («client» du serveur). +
++L'ensemble de ces données circulent sur des liens physiques, les câbles, qui +ont un débit maximal. La réponse d'un serveur physiquement très éloigné mettra +un peu plus de temps à arriver; une grosse quantité de données mettra plus de +temps à arriver qu'une petite quantité; enfin, à certaines heures, le réseau +est encombré par l'ensemble des données transférées par tous les utilisateurs +connectés à ce moment-là. C'est ce qui explique que parfois, une page soit +longue à charger. +
+ Il y a un certain nombre de noms de domaine. Une
+partie indique un pays, dont dépend en droit le serveur: .fr
pour
+les serveurs français, .es
pour l'Espagne, .ru
pour la
+Russie, .jp
pour le Japon, etc.
+
+Il en existe d'autres, comme .edu
pour les universités américaines,
+.org
pour les institutions à but non lucratif, .gov
pour le
+gouvernement américain. .int
est utilisé en particulier par les
+organisations établies par traités internationaux, par exemple l'Union
+européenne.
+
+De nouveaux noms de domaines sont apparus avec l'engouement pour le Web. Par
+exemple, .com
désignait à l'origine des sites d'entreprises, et
+.net
des fournisseurs d'accès au réseau. Mais AOL, fournisseur
+d'accès, a comme adresse aol.
com
(pour des raisons
+historiques, certes). D'autre part, des entreprises peuvent avoir un site avec
+un suffixe .net
, à cause de leur fournisseur d'accès.
+
C'est aussi une question de modes: .com
est à la mode en
+ce moment, donc les sites veulent absolument un suffixe en
+.com
, y compris si c'est aberrant. Je pense ici au Mur pour
+la Paix (au Champ de Mars). Le monument a un site Web, sur lequel on peut
+déposer des messages, qui seront ensuite affichés sur les écrans du
+monument. Et leur adresse est http://www.murpourlapaix.com/
,
+alors que c'est un suffixe .org
, réservé aux organisations à
+but non lucratif, qui s'imposait...
+Un autre exemple: le suffixe .tv
est théoriquement réservé aux îles
+Tuvalu; mais le Web est quelque chose de rentable, et elles ont vendu quelques
+noms de domaines à des chaînes de télévision qui voulaient une adresse en
+.tv
...
+
+Le site des tuteurs propose un certain nombre de cours sur le Web: comment
+écrire les pages Web, y insérer des images, concevoir son site
+(/tuteurs/internet/html/
, comment utiliser Netscape (cours du
+Hublot l'an dernier: /tuteurs/docs/hublot/index.html#annee-1999-2000
).
+
+Qu'est-ce qu'un «bon» site ? En laissant de côté le top site méga cool avec +mes photos de vacances, on peut essayer de dresser une liste de choses qu'un +site sérieux se doit d'avoir. +
++On peut d'emblée résumer la qualité principale d'un tel site sous le +mot: lisibilité. Et dans le monde des pages Web, ce mot contient la +notion d'accessibilité. On en tire les implications suivantes: la page doit +pouvoir être lue par n'importe quel navigateur, les informations doivent être +précises, la mise à jour doit être régulière, et enfin il doit être facile de +circuler non seulement dans le site mais aussi vers l'extérieur. +
++C'est pourquoi les sites qui respectent ces principes sont agréables et +intéressants à consulter. Les «bons» sites possèdent en général 7 traits +distinctifs. +
+1. Le lien permettant de revenir à la page d'accueil, ou +«Home»: en général, il se trouve sous la forme d'une icône avec le logo +du propriétaire du site, et se trouve conventionnellement en haut à gauche de +la page Web; on le trouve parfois en toutes lettres («Home», «Retour à la page +d'accueil») en bas au centre de la page. Un tel lien permet de commencer une +nouvelle recherche dans l'arborescence du site. +
+2. Le plan du site («Site map», «Site index»): +très utile pour se répérer, il permet d'avoir une vue d'ensemble du site, et +d'orienter sa recherche en fonction des catégories (par ex.: météo, loisirs, +arts, sports, info). +
+3. Un moteur de recherche intégré au site +(«searchable») permet un accès rapide à un concept, permet d'être fixé +rapidement sur nos attentes vis-à-vis de ce site. +
+4. La rubrique help/FAQ (frequently asked +questions, «foire aux questions» en français) ou «Présentation»: il peut être +utile de commencer la consultation d'un site par cet endroit. On peut y +trouver le mode d'emploi du site, son fonctionnement, la périodicité de mise à +jour, le nom du propriétaire, les liens. +
+5. Quoi de neuf? / «Nouveau» (What's new): indique
+les dernières modifications de la page, notamment les nouveaux services qui
+viennent d'être ajoutés, ou encore une réorganisation du site. Il est possible
+d'être tenu au courant de l'actualité d'un site grâce à une lettre
+d'information («newsletter») par courrier électronique. Pour cela, il
+suffit de s'inscrire en laissant son adresse électronique (voir par exemple le
+site du Monde diplomatique: http://www.monde-diplomatique.fr/
).
+
6. Les liens (links): si par malheur vous n'avez pas +trouvé ce que vous cherchiez sur un site, allez visiter ses liens, qui +normalement vous dirigeront vers des thèmes similaires à ceux qui vous ont +amené là. +
+7. Contact (feedback): c'est la rubrique qui permet +de prendre contact avec les concepteurs du site. Attention! Adressez-vous à +la bonne personne et à bon escient. La personne qui a rédigé le contenu de la +page (par ex., un article sur les élections présidentielles américaines) n'est +pas (pas forcément en tout cas) la même que celle qui a mis la page en langage +HTML. À la première personne vous poserez des questions concernant l'article, +à la deuxième vous exprimerez vos plaintes ou vos louanges à propos de la mise +en page. Dans ce dernier cas, il est recommandé de lire les FAQ au préalable, +pour ne pas être le 37e à poser la même question. +
+Yann Tholoniat
++NDLR: on peut ajouter un huitième critère:«lisible» veut le plus souvent dire +«sobre»... Pas de débauche de couleurs, pas de trucs qui clignotent, pas de +choses écrites en petit dans tous les sens, pas de publicités dans tous les +coins, pas de «gratuit!» ou «pas cher!» aux quatre coins de la page, etc. +
++Il est presque impossible de trouver une information sur le Web sans utiliser +de moteurs de recherche. Ce sont des sites qui permettent d'interroger +des bases de données constituées par des robots qui +parcourent le Web et référencent les pages visitées. Mais il faut bien être +conscient que les moteurs de recherche ne référencent au mieux que 15% des +pages existantes. +
+
+Voici un exemple d'utilisation du moteur de recherche Altavista
+(http://www.altavista.com/
). Je demande «Iran», sans plus de détails;
+j'obtiens 430 665 réponses. Je demande alors que la recherche se fasse
+uniquement sur des fichiers en français; je n'ai plus que 12 085 réponses.
+Ensuite, je raffine la demande, en la précisant progressivement; voici les
+résultats:
+
+ Iran
+ |
+
+ :
+ |
+ 12 085 | +
+ +Iran +1979
+ |
+
+ :
+ |
+ 1 722 | +
+ +Iran +1979 +révolution
+ |
+
+ :
+ |
+ 616 | +
+ +Iran +1979 +révolution +Shah
+ |
+
+ :
+ |
+ 48 | +
+Le signe +
veut dire que le mot qu'il précède (sans espace) doit
+obligatoirement figurer dans la page référencée. Vous pouvez également
+utiliser le signe -
, pour exclure impérativement le mot des pages
+recherchées. En règle générale, quoi que l'on recherche, il est utile
+d'ajouter -hotel -restaurant
... Enfin, si vous recherchez une
+expression telle quelle, mettez des guillemets américains autour
+("guerre et paix"
par exemple). Ces signes s'appellent des
+opérateurs booléens.
+
+Raffinez le plus possible vos requêtes: si vous avez plus d'une centaine de +pages à consulter, vous ne vous en sortirez pas. D'autre part, soyez +conscients que votre requête sera nécessairement ambiguê, même si vous ne vous +en rendez pas compte: une recherche sur «cirque» trouvera «arts du cirque» +comme «cirque glaciaire». +
+
+Tous les moteurs de recherche ne s'utilisent pas comme Altavista. Avec Google
+(http://www.google.com/
), il est inutile de mettre des +
.
+Yahoo (http://fr.yahoo.com/
pour le site français) classe ses adresses
+selon une arborescence. Lycos (http://www.lycos.fr/
) utilise les
+opérateurs booléens et aussi une arborescence.
+
+Nous avons présenté le mois dernier les contis (groupes de discussion) +existant dans forum. Ce mois-ci, on va voir comment lire forum, au delà de la +commande de base (barre d'espace) expliquée dans le numéro d'octobre. +
+ Pour lancer forum, tapez forum
, cliquez sur
+l'icône forum ou sur le bouton «Lire forum» de la fenêtre d'information
+(xforumco
, conscrits 2000). Si vous voulez lire un conti
+spécifique, par exemple kfet
, il suffit de taper:
+
brick ~ $ forum kfet
+
+ Forum se présente comme ceci: une barre avec le nom du groupe de +discussion, et à droite le numéro du message, suivi du nombre total de +messages, et entre parenthèses le nombre de messages non lus dans le +groupe de discussion.
+
+En bas, vous avez une autre barre avec les commandes les plus courantes:
+barre d'espace pour aller de message en message, «R
» pour
+répondre à un message, «m
» pour en poster un, et «q
»
+pour quitter. Sous cette barre, vous avez un prompt «À vous», où
+s'affichent les commandes que vous tapez.
+
+Le message lui-même ressemble à un courrier électronique, avec le nom de +l'auteur, la date et le sujet du courrier, éventuellement le nom de la +personne à qui l'auteur répond, et parfois d'autres informations: +
++ +
++Une fois le message lu, appuyez sur la barre d'espace pour aller au prochain +message. Quand tous les messages du conti sont lus, forum affiche «Fin du +newsgroup». Si vous rappuyez sur la barre d'espace, forum vous place sur +le prochain conti auquel vous êtes abonné, et dans lequel il vous reste +des messages non lus. Quand tout est lu, forum affiche «Rien de nouveau». +
+
+Vous n'avez plus qu'à taper «q
» pour quitter forum. Lire forum
+se résume donc à deux touches: la barre d'espace pour lire, et
+«q
» pour quitter.
+
Les messages de forum sont des +discussions: un premier message a des réponses, d'autres répondent à ces +réponses, et cela donne ce que l'on appelle une enfilade (thread +en anglais). Certains messages ont plusieurs réponses, et de fil en +aiguille la conversation dérive souvent sur d'autres sujets. +
+
+Le schéma (ou arbre) de la discussion est représenté en haut à droite de
+l'écran: les «O
» majuscules représentent les messages encore à
+lire, les «o
» minuscules ceux qui sont lus; l'arobase
+«@
» représente le message sur lequel vous vous trouvez. On peut
+se déplacer dans l'arbre avec les flèches, et taper sur «Entrée» pour
+lire le message ainsi sélectionné.
+
+Enfin, on peut utiliser la touche «N
» pour avoir une vue plus
+grande de l'arbre de discussion (refaire «N
» pour revenir à la
+vue normale).
+
Quand vous lisez forum à la barre d'espace, vous +lisez les messages dans l'ordre de la discussion. Quand celle-ci est +terminée, vous passez à une autre discussion. +
++À l'inverse, la touche «Entrée» affiche les messages dans l'ordre de leur +publication, indépendamment de leur ordre logique. +
+ Pour se rendre dans un conti donné, tapez
+«G
» suivi du nom du conti et de la touche «Entrée». S'il y a
+plusieurs possibilités (par exemple, les contis d'annonces), le programme
+proposera un menu; utilisez les flèches du clavier pour vous déplacer
+dans le menu et appuyez sur «Entrée» pour sélectionner le conti à lire.
+
Une fois dans un conti (ou dans la liste de +ceux-ci) on peut utiliser «A» pour s'abonner et «D» pour se désabonner. +
+
+Quand on s'abonne à un nouveau conti, on risque de trouver qu'il y a un
+nombre considérable de messages non encore lus; les conscrits 2000 sont
+chanceux, ils n'auront à lire que les messages vieux de sept jours au
+plus (ne vous laissez pas impressionner par ce qu'affirme
+xforumco
sur les 1 420 messages non lus).
+
+Cela dit, si vous ne voulez pas lire tous les messages en retard (surtout
+si vous n'êtes pas conscrit), utilisez la touche «z
» (comme
+zapper), suivie d'«Entrée», pour marquer tous les messages comme lus.
+
On peut avoir la liste des contis en
+tapant «L
» suivi d'«Entrée». Plusieurs listes s'affichent à la
+suite:
+
Pour quitter ces listes, tapez q
jusqu'à récupérer le
+prompt «À vous» en bas d'écran. S'il y a deux listes, c'est pour avoir
+plus rapidement accès à celle des contis que vous fréquentez
+habituellement.
Vous remarquez des lettres devant les noms de certains contis: un
+«T
» veut dire que vous êtes abonné (vous lisez tout
+ce conti), un «U
» veut dire que vous êtes désabonné
+(unsubscribe)3. Quand il n'y a aucune lettre, c'est que vous n'avez
+jamais mis les pieds dans ce conti. Pour les promotions antérieures, ces
+marqueurs peuvent être différents.
Maintenant que vous connaissez les deux +listes de contis, sachez que vous pouvez les utiliser pour vous rendre +dans un conti donné: sélectionnez-le avec les flèches et tapez «Entrée». +
+Barre d'espace | +Aller au prochain message | +
+ N
+ |
+ Afficher/cacher l'arbre de la discussion | +
+ L
+ |
+ Afficher les listes de contis | +
+ G
+
+ conti
+
+ |
+ Aller dans ce conti | +
+ z
+ |
+ Zapper tous les messages du conti | +
+ A
+ |
+ S'abonner au conti | +
+ D
+ |
+ Se désabonner du conti | +
+ R
+ |
+ Répondre | +
+ m
+ |
+ Poster un message | +
+ q
+ |
+ Quitter | +
+Le mois prochain, on expliquera comment poster dans forum. +
+David Madore, Émilia Robin
++ Ce cours explique progressivement ce qu'est un ordinateur. Le mois +dernier, on a vu en quoi consistait la mémoire, et comment l'information +circulait à l'intérieur de la bête. Ce mois-ci, on va voir à quoi sert le +processeur. +
+«Grand Maître, maintenant que nous savons où est l'information, et +comment elle voyage, où donc va-t-elle?» +«Elle affronte son destin, jeune apprenti. Le sort de toute information est +d'être répétée, amplifiée, déformée, cuisinée et pressée jusqu'à ce que sa +substantifique moëlle en soit extraite. Et le morceau responsable de cela, +c'est le processeur.»
++«Il n'est point de domaine de la pensée qui échappe à la logique militaire. +C'est en vertu de cet adage que l'informatique est universelle et le champ du +manipulable par ordinateur est étendu (et, réciproquement, les choses qui +échappent aux militaires sont aussi celles à propos desquelles l'ordinateur +n'est d'aucun secours). Car le processeur est le vrai tâcheron de l'affaire, +le composant qui sait faire le plus de choses et qui a le moins +d'initiative.
++Le processeur, souvent dit central, ou encore CPU (Central Processing +Unit), est une puce de format classique (c'est-à-dire un peu de sable dans +une boîte en plastique), et il est caché sous un amoncellement de ventilateurs +et de circonvolutions métalliques (structure destinée à le refroidir, car il +chauffe beaucoup). Son boulot: le règlement, tout le règlement, rien que le +règlement. Il comprend des ordres simples, ordres qui sont codables par des 0 +et 1, et que le processeur va chercher en mémoire. +
++Chaque ordre, il l'exécute à la lettre, sans chercher à comprendre le +sens de cet ordre, si tant est qu'il en ait un. La machine n'a pas +d'objection a afficher que deux et deux font cinq. Elle peut le faire +plusieurs millions de fois par seconde, si on lui demande. Elle peut +aussi calculer que deux et deux font quatre si un tel calcul est ordonné. +Elle n'est ni psychotique, ni névrosée. +Les ordres compréhensibles par le processeur sont de deux types: ceux qui +demandent d'effectuer un vrai travail (additionner deux nombres, par exemple), +et ceux qui servent à faire tourner la machine, c'est-à-dire de +l'administration interne; et, comme sa grande soeur en uniforme, le +processeur passe beaucoup de temps à s'occuper de lui-même. Plus précisément, +voyons au juste quels sont les ordres possibles. +Le processeur peut aller chercher des données en mémoire; c'est-à-dire envoyer +sur un bus en direction de la mémoire une requête disant «envoie-moi le +contenu à l'adresse numéro tant» (car chaque bit de la mémoire a une adresse, +qui l'identifie uniquement). +
++En réponse, la mémoire renvoie la donnée requise, ou un code de protestation +si les données demandées n'existent pas (comme cela peut arriver si le +processeur demande le bit 1 934 675 208 et que la mémoire ne contient que +805 306 368 bits). Dans la pratique, le processeur demande ainsi des suites +de quelques dizaines de bits consécutifs (guère plus, car ils ne tiendraient +pas tous dans le bus). +Le processeur peut envoyer des données à la mémoire, pour stockage. Le +mécanisme est similaire à celui de la lecture. +Le processeur peut additionner, soustraire, multiplier, voire diviser et +trifouiller de quelques autres manières des nombres. Ces nombres sont +représentés par des suites de 0 et de 1, et ne peuvent pas dépasser certaines +valeurs (car le processeur ne peut pas manipuler des suites trop longues d'un +seul coup -- il reste limité). +Le processeur va chercher ses instructions en mémoire, à la suite: il peut +recevoir pour ordre d'aller dorénavant les chercher à une autre adresse. On +appelle ça un saut, c'est comme un renvoi dans un formulaire de la Sécurité +Sociale («Si vous n'êtes pas demandeur d'emploi, ne remplissez pas le cadre +suivant et allez en 11»). +
++Toutes ces fonctions ont des ordres spécifiques, représentés par des suites +bien définies de 0 et de 1. Et une suite d'ordre, c'est un programme. Parfois, +on appelle le programme un logiciel si on veut faire smart, ou +software si on veut faire smart et british à la fois.» +
+«Mais, Guide Suprême, si les données et les ordres sont des suites de 0 +et de 1, comment le processeur distingue-t-il les données des ordres?» +«Et comment fais-tu la différence entre une averse et un crachin +fortement vivifiant?» +«C'est une question de contexte; le crachin n'apparaît qu'en Bretagne et +Normandie. Dans le Midi, là, il pleut.» +«Ben là c'est pareil, petit scarabée. Si le processeur a demandé une +instruction, ce qu'il a obtenu, c'est pour lui une instruction. S'il a demandé +des bits censés coder un nombre, il a obtenu un nombre. D'ailleurs, les +différents ordres exécutés par le processeur passent leur temps à utiliser des +informations pour ce qu'elles ne sont pas; par exemple, un nombre devient +rapidement une adresse d'un bit en mémoire, et vice-versa. +
++Et si un jour le processeur tombe sur quelque chose qu'il ne comprend pas (par +exemple, une donnée qu'il prend pour un ordre, mais ces 0 et 1 ne codent aucun +ordre valide), alors le règlement prévoit des instructions alternatives +d'urgence, à exécuter. +
++Ainsi travaille le processeur, toujours obéissant, sans initiative, il est +l'exécutant irresponsable qui amplifie toute erreur jusqu'à l'absurde, +éventuellement jusqu'au suicide; le processeur n'a pas de capacité propre +d'auto-destruction4 mais peut se stopper et ne plus +fonctionner jusqu'à ce qu'on coupe et remette le courant. Et paf le rapport de +vingt pages. Et c'est la faute du programmeur, qui a conçu une suite d'ordres +absurdes. +
++Une telle erreur de programmeur, ça s'appelle un bug. Tout logiciel un +tant soit peu utile à un quelconque travail comporte des dizaines de +bugs5, voire même beaucoup plus. +Ainsi va le Monde.» +
+Thomas Pornin
++ Le problème de base du chiffrement, c'est la confiance... De même +qu'on fait confiance à des gens pour envoyer des jolis programmes, et pas +des virus. Ou qu'on fait confiance à son destinataire pour ne pas faire +n'importe quoi avec les messages qu'on lui envoie. Ou qu'on fait +confiance à l'administrateur système pour ne pas regarder n'importe où. +Quand on se rend compte que tout le monde il est pas Beau et tout le +monde il est pas Gentil, on se dit qu'on voudrait bien un peu de +confidentialité... Ça s'appelle le chiffrement. NDLR: ce qui suit est +parfois dit sur un ton ironique; ne vous laissez pas abuser, son auteur +est un spécialiste de cryptographie... +
+rendre inintelligible une donnée à toute personne ne +connaissant pas un certain secret, nommé «clé».
+utiliser la clé pour rendre à nouveau intelligible une +donnée chiffrée.
+rendre à nouveau intelligible une donnée chiffrée, sans +connaissance préalable de la clé (action normalement impossible si le +protocole de chiffrement est correct).
+ce terme n'existe pas ; il est néanmoins souvent employé en +lieu et place de chiffrer. Au bûcher les crypteurs.
+art du chiffrement, de la signature, de +l'authentification et de la vérification d'intégrité.
+art du décryptage, de la production de faux, de la +tromperie et de la corruption silencieuse des données.
+science regroupant la cryptographie, la cryptanalyse et +l'analyse scientifique de ces deux domaines.
+On a envie de chiffrer ses données dès que l'on +transfère des choses privées: informations personnelles, mots de passe, +numéro de compte en banque, etc. Sans chiffrement, tout ceci circule +comme des cartes postales, lisible par qui veut s'en donner la peine.
++Le chiffrement assure un peu de confidentialité aux données sensibles. Il +permet aussi de se la jouer superhéros défenseur de la liberté quand on +n'a pas de données sensibles à protéger.
++Signer/authentifier/vérifier servent à faire des opérations légales, et +surtout du commerce, sur un support informatique aléatoire, espionnable +et falsifiable à loisir par des hordes de méchants dont on n'imagine pas, +d'habitude, le nombre ni l'acharnement (exemple: Internet).
+Le chiffrement est utile pour certaines +entités. Un exemple-type est un réseau informatique entre une entreprise +et ses filiales délocalisées. +
++Signature/authentification/vérification: oui. Ça permet de lire son +courrier sereinement depuis l'université de Pétaouchnok-les-oies. +
++Mais la cryptographie ne fait pas tout; par exemple, la meilleure +cryptographie n'empêche personne d'espionner un écran à 200 mètres de +distance avec un télescope.
+Ça dépend du pays. En France, pour la plupart des +systèmes, oui. Le décret du 17 mars 1999 règle les modalités d'usage, de +fourniture, d'importation et d'exportation des systèmes cryptographiques; il +en ressort qu'un particulier a accès, légalement, à des outils dont la +sécurité est à l'épreuve de l'espèce humaine (dans son intégralité), au regard +du niveau technologique atteint actuellement par ladite espèce.
++Une loi libéralisant totalement l'usage de la cryptographie a été +promise par Lionel Jospin pour la fin 1999 (là c'est raté) puis +repromise par Laurent Fabius pour «courant 2001».
++Dans la plupart des pays, l'usage est libre, l'import/export réglementé. Dans +certaines contrées (Chine, Iran, Syrie...), la possession et l'usage sont +sévèrement interdites.
+En termes de sécurité, on sait fabriquer des +systèmes inviolables. Il existe aussi plein de systèmes parfaitement +nuls. D'autre part, la cryptographie établit des tuyaux sécurisés entre +deux points de l'espace-temps, mais ne protège pas ces points. Si +l'information existe, en clair, quelque part à un moment donné, elle y +est vulnérable. Attention aux gens qui regardent par dessus votre épaule. +N'écrivez pas vos mots de passe sur un post-it collé sous le clavier. +
++En termes de performances, c'est raisonnable pour lire son courrier à +distance via un ssh ou chiffrer un courrier avec +PGP6. C'est encore trop lourd pour faire une sécurité +complète et transparente dans certains cas (chiffrement automatique d'un +disque dur, par exemple).
+Pour l'utilisateur de base, oui, ce n'est pas +difficile. Sinon, la cryptographie rentre dans le cadre de la sécurité +informatique, ce qui est un métier et ne s'improvise pas.
+Les deux prochains numéros +détailleront l'utilisation de logiciels sécurisés: en janvier, PGP (pour +encrypter le courrier électronique), et en février ssh (pour sécuriser +les connexions à distance).
+On mélange tout, suivant une méthode précise, un peu +comme une recette de cuisine. La recette, tout le monde la possède, mais +les proportions exactes utilisées, c'est la clé. On peut faire, quand on +est très fort, un chiffrement dit «asymétrique», où la clé pour chiffrer +et celle pour déchiffrer ne sont pas la même (elles sont liées ensemble, +forcément, mais on ne peut pas deviner l'une en fonction de l'autre). Ça +permet de rendre une des clés publiques (on la publie dans un annuaire, +par exemple) tout en gardant l'autre secrète. Ceci permet de réaliser +des opérations intrinsèquement asymétriques: +
+Les méthodes de chiffrement asymétriques demandent des constructions +mathématiques un peu lourdes; dans la pratique, ça va nettement moins +vite que les méthodes de chiffrement symétriques, où la même clé sert +pour le chiffrement et le déchiffrement. Donc des outils tels que PGP +(chiffrement et signature de mails) et SSL (établissement d'une connexion +authentifiée et chiffrée) utilisent une mixture: de l'asymétrique pour +arriver à transmettre de façon sûre un secret commun, utilisation de ce +secret commun pour chiffrer efficacement les données.
+Thomas Pornin
+
+On appelle alias une traduction que vous définissez
+pour un mot que vous tapez en ligne de commande; c'est le plus souvent un
+raccourci. Par exemple, si vous tapez rm
, la machine comprendra
+rm -i
. Les alias qui sont définis de façon permanente le sont
+dans le fichier .zshrc
de votre compte (config conscrits). La
+commande alias
permet d'avoir la liste des alias actuellement
+définis.
Uniform Resource Locator. C'est ce que les médias
+appellent une «adresse Web», C'est un bout de texte, possible à taper au
+clavier, qui indique comment accéder à un document ou une autre donnée.
+Les plus courantes sont en «http://
», ce qui indique le
+protocole (pour ce mot, voir le numéro 9 du Hublot) à utiliser, et
+précisent un ordinateur à contacter et le fichier à lui
+demander.
Le Hublot est le journal des tuteurs informatique de l'ENS. Il paraît +chaque mois à 350 exemplaires. Il est également disponible sur le +Web:
+
+
+ http://www.eleves.ens.fr/tuteurs/docs/hublot/
+
+
+Rédaction: Émilia Robin. +
++Ont collaboré à ce numéro: Marc Espie, Nicolas George, David Madore, Thomas +Pornin, Jérôme Plût, Gilles Radenne, Yann Tholoniat. +
+Merci à Olivier Verzelen pour ses relectures.
+Une sauvegarde tous les mois, ça veut dire que +vous vous autorisez à perdre, éventuellement, un mois de +travail.
+On reprend ici un article paru dans le +numéro 5 du Hublot, en mars 2000.
+On l'a déjà dit ailleurs, on le redit: il y +a une certaine part d'arbitraire, et aussi d'habitudes antérieures, dans +le choix des commandes de forum, de l'emplacement des contis, ou encore +ici des marqueurs.
+Enfin, quelques-uns si, mais on préfère éviter, +parce qu'après ça fait des histoires.
+Tous sauf un: car +Knuth est Grand.
+Patience, ces termes mystérieux seront expliqués dans les +prochains numéros.
++ +
+qui
+ less
+
+ Le premier stage info de l'année a lieu les 16, 17 et 18 février 2001.
+Pour tous les détails, voir en
+page ??.
+On avait annoncé un cours sur PGP: en l'absence de rédacteur,
+c'est annulé... Si ça vous intéresse, vous pouvez toujours aller voir
+cette page:
+http://www.madore.org/~david/misc/best_of_GroTeXdieck/PGP
+À part ça, le Hublot est aussi tout fier d'étrenner sa classe de document
+hublot
, écrite par Nicolas George et Florent Hivert, qui automatise
+plein de choses et permet d'écrire «Hublot» comme des pros!
+Comme dans chaque numéro, les conseils de lecture et les bonnes adresses:
+
+
http://www.eleves.ens.fr/
http://www.eleves.ens.fr/tuteurs/hublot/
Nous
+sommes toujours à votre disposition pour toutes questions et suggestions:
+tuteurs@clipper
. Vous pouvez
+aussi mettre un mot dans le casier de Marie-Lan Nguyen. Enfin, n'oubliez
+pas que quand vous tapez qui
, les tuteurs ont leur nom
+souligné: n'hésitez pas à nous solliciter!
+Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on présente les différentes +sortes de calculs, et les logiciels existants.
++Selon le type de calculs que vous faites, vous aurez recours à des +logiciels différents. Pour des opérations élémentaires, vous avez besoin +de calculatrices, équivalentes aux calculatrices de bureau, dont +elles adoptent d'ailleurs la présentation. Il existe aussi des logiciels +de calcul numérique en mode texte, ainsi que des tableurs pour certains +cas. Enfin, les langages de programmation comme le C ou le Perl +permettent d'écrire des petits programmes pour analyser vos données +(statistiques, etc). +
++Les logiciels de calcul numérique travaillent uniquement sur des +nombres réels ou complexes (par exemple: 45, 1,456), le plus souvent +approchés en machine en virgule flottante. Le calcul numérique est +utilisé pour simuler des phénomènes naturels (ex: météorologie, +résistance d'édifices...).
++Faire des calculs en virgule flottante veut dire que l'on fait une +approximation des nombres réels en machine en gardant «un certain nombre +de chiffres après la virgule». La virgule est alors rendue flottante, +c'est-à-dire qu'on la place au niveau du premier chiffre significatif et +que l'on ajoute un exposant (ex: 1 milliard équivaut à 1· 109). La perte de +précision est ainsi relative au nombre manipulé. +
++Il existe aussi des logiciels qui savent faire des calculs exacts, et +même se débrouiller avec des variables. Ce sont des logiciels de +calcul formel (ou symbolique). Ceux-ci font des calculs sur des +objets algébriques contenant éventuellement des inconnues (polynômes, +etc...); par exemple: cos(x+y). +
+
+ Il y a xcalc
et
+kcalc
. Ce sont de petits programmes qui se présentent comme une
+fenêtre imitant une calculatrice, avec ses touches et son écran. Pour les
+lancer, il suffit de taper leur nom. Les conscrits 2000 trouveront
+kcalc
dans le sous-menu Utilitaires
du menu de fond d'écran.
+Les autres ont xcalc
.
+
xcalc
est installé sur toutes les machines Unix, stations
+Sun et PC Linux. Pour le quitter, mettre le curseur sur la fenêtre de la
+calculatrice et taper q
.kcalc
n'est pas installé sur les PC Linux (c'est en fait un
+lien vers xcalc
). Il est plus joli et plus complet, et aussi plus
+lourd, que xcalc
. Pour le quitter, une fois n'est pas coutume, il
+faut sélectionner Fermer
dans le menu de la fenêtre.Il est possible de faire un copier-coller depuis
+les calculatrices (cliquez avec le bouton gauche pour sélectionner, collez
+avec le bouton du milieu1. Avec kcalc
, on peut aussi faire du
+copier-coller vers la calculatrice (coller le nombre avec le bouton du
+milieu dans l'écran de la calculatrice).
+
Il s'agit ici de bc
, qui se lance dans le terminal, sans
+nouvelle fenêtre (donc y compris quand quand vous êtes connecté depuis
+l'extérieur par telnet ou SSH). C'est un logiciel austère, mais très
+pratique quand on veut faire des opérations rapidement. Lancez-le avec
+l'option -l
pour avoir des chiffres après la virgule, et
+avec l'option -q
pour vous épargner le texte de copyright.
+Pour le quitter, tapez ^D
.
+Ensuite, vous tapez littéralement vos opérations (espaces indifférents), et +vous appuyez sur Entrée pour avoir le résultat :
+brick ~ $ bc -lq
+34 * (2+1)
+102
+
+ Pour les nombres décimaux, on met un point et pas une virgule. Les opérateurs +sont les suivants:
+
+ +
+ |
+ (addition) | +
+ -
+ |
+ (soustraction) | +
+ *
+ |
+ (multiplication) | +
+ /
+ |
+ (division) | +
+ ^
+ |
+ (exposant) | +
+ %
+ |
+ (modulo) | +
+ s(
+
+ n
+
+ )
+ |
+ (sinus de n) | +
+ c(
+
+ n
+
+ )
+ |
+ (cosinus de n) | +
+ a(
+
+ n
+
+ )
+ |
+ (arctangente de n) | +
+ l(
+
+ n
+
+ )
+ |
+ (logarithme de n) | +
+ e(
+
+ n
+
+ )
+ |
+ (exponentielle de n) | +
+ sqrt(
+
+ n
+
+ )
+ |
+ (racine carrée de n) | +
+Vous pouvez utiliser des variables pour conserver des résultats en mémoire, et +les réutiliser plus tard:
+brick ~ $ bc -lq
+a = (3+4)/2
+b = 5
+c = a + b
+print a
+3.50000000000000000000
+print b
+5
+print c
+8.50000000000000000000
+
+
+ Si vous utilisez régulièrement bc
,
+nous vous conseillons de le lancer avec l'utilitaire ile
(input
+line editor), un petit logiciel qui permet l'édition de la ligne de commande.
+Ça veut dire que vous pouvez utiliser les flèches pour remonter dans les
+opérations que vous avez tapées auparavant, ou pour vous déplacer dans celle
+que vous êtes en train d'écrire. Pour ce faire, tapez:
brick ~ $ ile bc -lq
+
+ Le reste est inchangé. Il existe aussi ledit
(line
+editor), qui s'utilise exactement de la même façon, et semble plus
+efficace, mais plus lourd. Ce type de logiciel s'utilise avec des
+logiciels interactifs en mode console, comme civserver
.
+
+Ce sont des logiciels destinés à réaliser simplement des programmes de calcul +numérique: résolution d'équations, manipulation de grosses matrices, +optimisation, résolution de systèmes linéaires ou non linéaires, traitement de +signal. L'utilisateur peut y programmer des applications complètes, avec +éventuellement une interface graphique (cartes, coupes...). +
+matlab
.scilab
, ou scilab -nw
en mode texte. http://www-rocq.inria.fr/scilab/
Il
+existe aussi GNU Octave (http://www.octave.org/
),
+un autre clone libre de Matlab.
xmaple
, ou maple
en mode texte.
+http://www.maplesoft.com/
mathematica
. Le site Web correspondant est
+http://www.wolfram.com/
xmupad
, ou mupad
en mode texte. http://www.mupad.de/
Il serait très difficile d'en dire plus sans dépasser largement le +cadre de cet article. De toute façon, vous ne risquez absolument rien à +essayer tout et n'importe quoi avec ces logiciels.
+ Les tableurs permettent de faire rapidement des
+tableaux de calculs, en mettant en page les résultats. Nous avons deux
+tableurs sur les stations, intégrés à StarOffice (soffice
) et
+ApplixWare (asterix
). Avec StarOffice, on le lance en choisissant
+«Nouveau classeur»; avec ApplixWare, on clique sur le bouton à carreaux
+(bouton du milieu). Ces deux logiciels sont capables d'importer des fichiers
+Excel.
+Ce genre d'applications est censé être facile à utiliser. Tout ce qu'il faut +savoir, c'est que les cases acceptent du texte, des nombres et des formules. +Les formules seront automatiquement tenues à jour quand les cases dont elles +dépendent changent. Il est possible de copier une formule d'une case à une +autre (en particulier dans toute une colonne), et dans ce cas, les références +aux autres cellules sont déplacées également. +
+gnuplot
+ C'est un logiciel libre* pour tracer des graphes, avec des sorties dans
+un tas de formats. Le «gnu» du nom n'est pas une référence au projet GNU*. On le lance en tapant gnuplot
.
+http://www.gnuplot.org/
Ce mois-ci, on papote sur Internet: vous trouverez une présentation des +news (les groupes de discussion mondiaux), une explication de ce +qu'est la «modération», et vous apprendrez comment poster dans le forum +des élèves.
+
+Il existe divers moyens de papoter sur Internet, soit de manière
+synchrone (ICQ, IRC, les chats divers et variés), soit de manière
+asynchrone (courrier électronique, news). Les news sont des groupes de
+discussion thématiques, exactement comme le forum des élèves, à ceci près
+que forum est interne à l'ENS, tandis que les news sont mondiales... Ce qui
+suit est une présentation succinte, pour les détails, nous vous renvoyons à
+notre site: /tuteurs/internet/news.html
.
+
On va vous parler ici des news Usenet, qui +n'appartiennent pas à des sociétés (il existe aussi des hiérarchies de +news appartenant à des fournisseurs d'accès). +
+
+Les newsgroups ont un nom composé de plusieurs mots séparés par
+des points. Ces mots forment des hiérarchies à la fois thématiques et
+nationales. Si le nom ne commence pas par un préfixe «national», le
+groupe est anglophone: comp.os.unix
est un groupe anglophone
+pour parler d'ordinateurs (computers), et plus précisément du
+système d'exploitation* (OS) Unix en anglais; fr.comp.os.unix
+parlera d'Unix en français.
+
+Exemples de préfixes nationaux: es
(espagnol), it
+(italien), de
(allemand). Exemples de hiérarchies thématiques:
+biz
(business), rec
(loisirs), soc
(questions
+de société).
+
+Chaque groupe de discussion a une charte, qui dit précisément de quoi
+parle le groupe: fr.education.divers
parle de pédagogie et
+d'enseignement, fr.education.entraide
est fait pour pleurer
+qu'on ne sait pas faire sa dissert (et aider ceux qui pleurent). Le
+premier n'est donc pas censé accueillir des messages demandant de l'aide
+pour un devoir.
+
Il existe différents logiciels pour lire les news
+à l'ENS, principalement trn
, slrn
, flrn
+(logiciels en mode texte), et knews
(logiciel graphique en
+français).
+Si vous n'avez jamais lu les news, c'est sans doute knews
qui
+vous semblera le plus intuitif. C'est d'ailleurs lui qui se lance quand
+vous cliquez sur le bouton «News» de la config conscrits. Cliquez sur «Tous
+les groupes» pour afficher la liste des groupes auxquels l'École est abonnée.
+Ensuite, pour lire un groupe, sélectionnez son nom avec la souris et cliquez
+sur «Aller groupe». Les titres des différentes enfilades s'affichent dans le
+cadre du haut; sélectionnez-en une et cliquez sur «Voir enfilade» pour voir
+les messages qui se répondent. Ensuite, vous pouvez lire les messages:
+
+ +
+Pour quitter, cliquez sur le bouton «Retour», jusqu'à ce qu'il devienne +«Quitter», et cliquez sur «Quitter». +
+Les règles de politesse du courrier électronique +s'appliquent encore plus sur les news: réfléchissez avant de répondre, ne +citez que les parties intéressantes du message auquel vous répondez, en +éliminant les lignes inutiles2, restez courtois, ne faites jamais d'insultes ad hominem, +postez au bon endroit, et comme toujours, «Soyez exigeant pour ce que vous +envoyez et tolérant pour ce que vous recevez». L'ensemble de ces usages +s'appelle la Netiquette. +
+ En règle générale, avant de vous mettre à poster dans les news,
+commencez par lire le groupe pendant quelques jours, pour vous faire une
+idée du ton et des interlocuteurs habituels. Et lisez les
+documentations et les FAQ disponibles à l'adresse suivante:
+http://www.fdn.fr/aux/doc-misc/
+
Ne rêvez pas: les gens ne sont pas plus polis
+et plus réfléchis parce qu'ils postent «sur Internet». L'orthographe est
+souvent approximative, les discussions dégénèrent souvent, beaucoup de
+gens postent des messages hors-sujet par rapport au groupe, etc. 50% du
+trafic de fr.soc.histoire
est constitué de batailles avec des
+négationnistes ou de débats sur des questions d'actualité sans rapport
+avec le but originel du groupe. Il faut donc apprendre à faire le tri...
+
+Le mois prochain, on verra comment se connecter à distance avec telnet, par +exemple pour lire son courrier. +
++Voilà un mot bien étrange. Prenez quelqu'un au hasard, (non pas celui qui est +en train de lire cet article par dessus votre épaule, ça ne marchera pas), et +demandez ce que le mot modération lui évoque, et il vous parlera à coup sûr +d'alcool. «À consommer avec modération»... +
++Pourtant quand on commence à s'intéresser un peu à Internet, ce mot +réapparaît... Internet serait-il une annexe des Alcooliques anonymes? Non? +(Quoi que...) Alors que doit-on consommer avec modération? C'est pourtant +assez simple, ce que l'on doit consommer avec modération, c'est la liberté qui +nous est offert par ce média de communication. +
++Qui n'a jamais entendu les mots Internet et Liberté mis côte à côte? Les +média ne se gênent pas pour le faire. On a même un fournisseur d'accès qui +s'est nommé Liberty Surf... Mais enfin, c'est bien beau tout ça, mais +«Liberté», ce n'est qu'un mot, très fortement connoté certes, mais ça ne reste +qu'un mot. Or un mot, sans rien de plus, ça n'est pas très lourd. Alors +quelle est cette fameuse liberté? La principale liberté que nous offre +Internet, c'est celle de publier sur un médium et d'avoir la possibilité +d'être lu. Quand vous envoyez un courrier électronique à une liste de +personnes, quand vous écrivez sur Usenet, quand vous mettez une page HTML en +accès public, vous êtes publié. Mais ce faisant, vous court-circuitez toutes +les instances de contrôle qui existent pour les autres média. Il n'y a pas de +comité de relecture, il n'y a pas de CSA... Vous êtes en mesure de publier ce +que vous voulez, c'est là qu'il y a liberté. +
++Maintenant, dans un monde idéal, on n'aurait guère besoin d'aller plus loin. +Tout le monde serait responsable, publierait des informations utiles, et +respecterait son interlocuteur. Je vais vous dire un secret, dans le monde qui +nous entoure cela ne se passe pas comme ça. +
++Les raisons sont multiples. Que ce soit parce qu'une conversation dévie et +sort du cadre dans laquelle elle a commencée, ou parce qu'un individu ne veut +pas respecter les règles en vigueur, l'expérience montre que si on laisse +faire, très rapidement on voit apparaître un nombre important de messages hors +sujet sur le médium utilisé. Si il y a des endroits où l'on décide d'accepter +ces hors-sujets, il y en a d'autres où l'on veut les éviter pour différentes +raisons. +
++La modération sur Internet, c'est la réapparition d'un comité de relecture. +C'est une atteinte à la liberté totale que nous vantent les média, mais c'est +un moyen efficace d'assurer une certaine lisibilité à un médium qui ne l'est +pas toujours sans cela. +
++ La modération apparaît sous différentes formes.
+eleves@clipper
ou
+tous@clipper
sont modérés par le SPI et par les gourous qui le
+souhaitent3. Il n'est pas souhaitable que ces adresses soient utilisées pour
+n'importe quel broutille (on a déjà vu un élève y envoyer des images de plus
+ou moins bon goût). ens.forum.bienvenue
, ens.forum.annonces
et
+ens.forum.syst.annonces
. Ces groupes sont censés être des groupes
+sérieux, sans hors-sujet:
+bienvenue
contient des messages d'aide et n'est accessible qu'en
+lecture (vous ne pouvez pas écrire dedans);annonces
a vocation à être à contenu très
+informatif;syst.annonces
accueille les annonces sur le système
+informatique. Sur le forum, il existe un autre type de modération dans les groupes
+«sérieux» (tous sauf la hiérarchie alt.
); c'est le blast. On
+en parlera au mois de mars dans la rubrique «Forum».
Il existe en dehors de l'école d'autres supports qui +sont modérés:
+Le but de la modération est toujours le même: augmenter la qualité des +messages échangés en stoppant le hors-sujet.
+Benjamin Lerman
++Maintenant que vous savez lire forum, vous avez certainement envie de répondre +à certains messages, de poser des questions, ou de faire vos annonces à votre +tour. Pour cela, voici la marche à suivre: +
+m
» (comme «message»), suivi de
+Entrée;Sujet:
. Tapez le sujet de votre message, puis
+Entrée;pico
). Tapez votre message
+comme vous taperiez un courrier électronique. Pour finir, tapez ^X
,
+puis «y
» pour sauvegarder le texte, et enfin Entrée (c'est
+pico
qui veut ça).P
» (poster), «E
» (éditer: reprendre le texte du message) et
+«A
» (annuler le message).Pour répondre à un message, tapez «R
» (grand R), puis
+Entrée. Forum lance votre éditeur sur le message auquel vous répondez, en
+le citant. N'oubliez pas de détruire les lignes inutiles, avec
+^K
.
+Si vous voulez poster pour vérifier que tout marche bien, donc sans dire
+quelque chose de précis, le conti adapté est ens.forum.essais
, qui
+sert précisément à cela.
+Le mois prochain, on présentera la Netiquette en usage sur forum. +
+David Madore, Émilia Robin
+
+Cette rubrique porte sur l'utilisation pratique des machines Unix et de
+LATEX. Tout d'abord, on vous donne tous les détails sur la nouvelle
+version du programme qui
, ainsi que sur l'utilisation de
+l'utilitaire less
. On présente ensuite divers raccourcis
+clavier dans la partie «Config conscrits». Enfin, dans la partie LATEX,
+on explique comment régler la taille de la page.
+
qui
+
+Le programme «qui
» a récemment changé de version. Désormais, il est
+capable d'afficher également le nom de ceux qui sont connectés depuis les Macs
+via telnet, et de ceux qui travaillent sur les PC sous Windows. Le
+changement se traduit aussi par l'apparition de formes courtes pour les
+options (mais les versions longues sont toujours valides):
+
Version longue | +Version courte | +
+ -salles
+ |
+
+ s
+ |
+
+ -sallet
+ |
+
+ t
+ |
+
+ -46
+ |
+
+ 4
+ |
+
+ -infi
+ |
+
+ i
+ |
+
+ -t15
+ |
+ p (physique) |
+
+ -jourdan
+ |
+
+ j
+ |
+
+ -montrouge
+ |
+
+ m
+ |
+
+Les nouvelles options s'utilisent sans tiret devant. Vous pouvez aussi
+les omettre devant les options longues.
+qui
sait maintenant afficher la liste des gens du rézo: l'option pour
+cela est r
(ou -rezo
). Si vous avez une machine sur le rézo
+et que vous voulez apparaître sur la liste, ou pouvoir consulter
+«qui
» sur votre machine, récupérez-le ici:
+
+http://www.eleves.ens.fr/home/plut/qui-5.0.tar.gz
Si vous avez une config conscrits 98 ou antérieure, il est possible
+que vous ayez des problèmes d'affichage (affichage en noir et blanc).
+Dans ce cas, réparez votre config, soit en récupérant une config
+conscrits 2000 complète (tapez configuration --get
), soit à
+la main, en remplaçant dans le fichier .Xresource
de votre
+compte la ligne
+XTerm*termName: xterm ++
par:
++XTerm*termName: xterm-color ++
+Pour toutes les options de qui
, tapez qui -help
, ou
+consultez la page de man (man qui
). Pour toutes remarques ou
+suggestions, n'hésitez pas à m'écrire: plut@clipper
.
+
Jérôme Plût
++NDLR: ce programme, développé en interne à l'École, a été à l'origine +créé par Marc Espie, et développé par Joël-Yann Fourré. Jérôme Plût l'a +intégralement réécrit, et mis sous licence GPL*. +
+less
+
+On a présenté les éditeurs de textes dans le numéro 8 du Hublot
+(octobre 2000). Ceux-ci servent à modifier un texte, mais il y a des cas
+où vous voulez juste regarder un fichier, sans le modifier. Pour cela, on
+utilise souvent un visualisateur de textes (pager en
+anglais). Le plus courant est less
. C'est également
+less
qui est utilisé pour regarder les pages de man*.
+
+Pourquoi ce nom? À l'origine il y avait le programme more
, pour
+en savoir davantage sur un fichier. Une version plus évoluée a été
+faite, qu'on a appelée less
par analogie. Dans certains
+endroits, vous n'aurez que more
à disposition. Si vous avez le
+choix, utilisez less
.
+
less
On utilise less
sur un
+fichier de la même façon qu'un éditeur; par exemple, pour regarder le
+contenu du fichier commentaires.txt
, vous taperez:
+
brick ~ $ less commentaires.txt
+
+ Un certain nombre de commandes sont disponibles, y compris pour lancer un +éditeur sur le texte, ou manipuler plusieurs fichiers. Voici les +commandes vraiment indispensables:
+
+ q
+ |
+ Quitter | +
+ SPC
+ |
+ Avancer d'une page | +
+ ^F
+ |
+ Avancer d'une page (forward) | +
+ ^B
+ |
+ Reculer d'une page (backwards) | +
+ p
+ |
+ Revenir à la première ligne | +
+ /
+
+ mot
+
+ |
+ Chercher le mot | +
+ n
+ |
+ Aller à la prochaine occurence de mot | +
+ N
+ |
+ Aller à la précédente occurence de mot | +
+Pour en savoir plus, consultez le cours
+(/tuteurs/unix/fichiers.html#less
) et faites les exercices
+(/tuteurs/unix/exercices/less.html
).
+less
sert à regarder le contenu des fichiers texte, quels qu'ils
+soient (du texte simple, du RTF, du PostScript, des PDF, etc); il vous
+montre ce que contient réellement le fichier, sans rien interpréter ni
+mettre en page. C'est utile pour regarder rapidement ce que contient un
+fichier, sans lancer de gros logiciels, ou bien pour savoir à quoi
+ressemblent du RTF ou du PDF «en dessous» du logiciel.
+En revanche, ne cherchez pas à afficher le contenu de fichiers binaires +(la plupart des fichiers d'images, sons, fichiers compressés par +exemple), ils n'utilisent pas la table de caractères ASCII, en un mot +c'est illisible.
+
+Utilisez un traitement de textes comme ApplixWare (asterix
) pour
+afficher du RTF, Acrobat Reader (acroread
) pour du PDF et
+Ghostview (gv
) pour du PostScript. Pour les images, utilisez
+xv
.
+
+Le mois prochain, on verra comment lancer un long calcul sur une machine
+(screen
).
+
+Dans cette partie, on aborde ce mois-ci les raccourcis claviers utiles de +la config conscrits. Ce sont des exemples d'options très pratiques qui +ont été activées dans cette config pour faciliter la vie aux +utilisateurs; vous ne trouverez pas forcément ces raccourcis sur d'autres +sites. +
+Il existe un certain nombre de notations +conventionnelles pour désigner les touches du clavier:
+
+ TAB
+ |
+ La touche de tabulation, au dessus du Shift
+gauche. |
+
+ SPC
+ |
+ La barre d'espace. | +
+ M-i
+ |
+ La touche Méta (losange noir de part et
+d'autre de la barre d'espace), associée à la lettre i minuscule.
+Se lit «méta i». |
+
+ ^C
+ |
+ La touche Control (en bas du clavier à gauche
+et à droite), associée à la touche c (par convention, on écrit
+la lettre en majuscule). Se lit «control C». |
+
+ alt-B
+ |
+ La touche Alt (à gauche du Méta ),
+associée à la lettre b (même convention de notation que pour
+Control ). |
+
Les flèches (entre le clavier +proprement dit et le pavé numérique) permettent de remonter dans les +dernières commandes tapées. C'est pratique par exemple quand vous faites +du LATEX, et que vous ne voulez pas retaper la ligne à chaque fois. +
+ La touche TAB
permet de compléter le
+nom d'un fichier dont vous avez tapé les premières lettres:
+
brick ~ $ ls +annexes.tex rapport_1999.tex resume.tex +brick ~ $ nedit ra<TAB>pport_1999.tex ++
Si plusieurs fichiers commencent par les mêmes lettres, les noms sont +proposés les uns après les autres.
+ Pour vous déplacer entre les écrans virtuels à l'aide du clavier,
+utilisez les flèches du pavé numérique en appuyant simultanément sur la
+touche Méta
.
Pour aller de fenêtre en fenêtre, utilisez Méta-TAB
(appuyez sur
+Méta
et TAB
en même temps).
Lorsque les claviers des stations font
+«bip» et que l'écran reste noir, taper ^W
vide le buffer
+du-dit clavier, qui redevient opérationnel.
+Dans d'autres cas, ça ne bippe pas et l'écran reste noir. Il faut alors
+débloquer le clavier à distance, en se loguant sur la machine en
+question, et en tapant kbd_mode -a
(remettre le clavier
+-- KeyBoarD --- dans le bon mode).
+Le mois prochain, on verra comment modifier sa configuration avec le programme
+configuration
.
+Si on ne lui dit rien, LATEX met des marges démesurées: en fait, il centre +sur la page le texte sur un format de l'ordre de celui d'un livre, ce qui en +général ne convient pas du tout. En outre, LATEX est d'origine américaine, +et aux États-Unis le papier n'a pas un format A4 (21 × 29,7 cm), mais +21,6 × 27,9 cm (8,5×11 pouces). C'est le cas aussi au Canada, +mais leur format n'est ni A4 ni américain. +
++En fait, le format A4 est une standardisation de l'ISO (International +Standard Organisation), sous le doux nom de «standard ISO 216». +
+ Si vous utilisez du papier américain,
+ne précisez rien; si vous voulez être vraiment sûr que c'est cette taille que
+LATEX va prendre en compte, utilisez l'option de classe
+letterpaper
:
+\documentclass[letterpaper]{article}+
+Attention: si vous devez envoyer un PostScript d'un fichier LATEX à un +Américain, imprimez-le avec la ligne suivante, pour que les lignes du haut ne +soient pas coupées4: +
+brick ~ $ dvips -t letter chalala.dvi -o chalala.ps
+
+ +Si vous utilisez du papier A4, vous pouvez l'indiquer comme +option de classe:
++\documentclass[a4paper]{article} ++
+Ou alors, vous pouvez charger le package a4
:
+
+\usepackage{a4} ++
+En fait, ce package redéfinit un certain nombre de dimensions, davantage que +l'option de classe. Il se peut aussi qu'il soit considéré comme obsolète. +
+Il y a plus de dimensions dans une page que +n'en rêve votre philosophie:
++ +
++Voici à quoi correspondent ces lettres:
++ a + | +Marge de gauche | +
+ b + | +Marge du haut | +
+ c + | +Marge de droite | +
+ d + | +Marge du bas | +
+ e + | +Espace à gauche | +
+ f + | +En-tête | +
+ g + | +Espace à droite | +
+ h + | +Pied de page | +
+Les «espaces à gauche et à droite» sont l'endroit où l'on met les notes de
+marge (commande \marginpar{
texte
}
). Dans
+l'en-tête, on trouve les titres de sections courantes (quand on met
+\pagestyle{headings}
dans le préambule); dans le pied-de-page, on
+trouve le numéro de la page. En revanche, les notes de bas de page sont en bas
+de l'espace réservé au texte.
+
vmargin
+ Ce package a été développé par Volker
+Kuhlmann (université de Canterbury). C'est une première solution pour
+régler la taille de la page. Dans le préambule du document, utilisez la
+commande \setmarginsrb
avec la syntaxe suivante (les lettres
+correspondent aux dimensions dont nous venons de parler):
+\setmarginsrb{a}{b}{c}{d}{e}{f}{g}{h} ++
vmargin
est facile à utiliser. Il a l'inconvénient (ou l'avantage,
+selon les cas), de ne pas tenir compte des spécifications sur la taille du
+papier. Pour le moment, le Hublot l'utilise, avec les valeurs suivantes
+(comprendre: des marges de 1,5 cm partout, et 1 cm en bas de page pour le
+numéro de la page):
+\setmarginsrb{1.5cm}{1.5cm}{1.5cm}{1.5cm}{0cm}{0cm}{0cm}{1cm} ++
geometry
+ Ce package a été développé par Hideo Umeki +(Japon). C'est une autre solution pour régler la taille de la page, avec +l'avantage de se rappeler quand on a dit qu'on voulait du A4. +
+Attention: pour le moment, la version de geometry
installée
+par le SPI est vieille, et ne marche pas ainsi. Elle sera bientôt remise
+à jour. Vous avez deux solutions:
tex
, syst.annonces
).export TEXINPUTS=/usr/local/util/tex/inputs//:
/usr/local/util/
est le répertoire où sont
+installés les programmes des gourous*.
+Pour utiliser geometry
, on indique entre crochets les valeurs et
+les options souhaitées:
++\usepackage[
+ +valeurs
+ +]{geometry}
+
+Voici les options les plus communes (dimension
désigne ici une
+longueur, indiquée avec son unité: cm
, mm
,
+pt
...):
+
+ left=
+
+ dimension
+
+ |
+ : | +marge de gauche | +
+ right=
+
+ dimension
+
+ |
+ : | +marge de droite | +
+ top=
+
+ dimension
+
+ |
+ : | +marge du haut | +
+ bottom=
+
+ dimension
+
+ |
+ : | +marge du bas | +
Comme on l'a dit, l'en-tête est le texte figurant éventuellement en haut +de page (titre de la section en cours, numéro de page, etc). Le «corps», +c'est le corps du texte:
+
+ head=
+
+ dimension
+
+ |
+ : | +taille de l'en-tête | +
+ headsep=
+
+ dimension
+
+ |
+ : | +espace entre l'en-tête et le corps | +
+ nohead
+ |
+ : | +équivaut à head=0pt, headsep=0pt |
+
Le pied de page contient généralement le numéro de page; le Hublot y +met également la référence du numéro que vous avez dans les mains. +
+
+ footskip=
+
+ dimension
+
+ |
+ : | +Espace avant le pied de page | +
+ nofoot
+ |
+ : | +équivaut à footskip=0pt |
+
+ noheadfoot
+ |
+ : | +équivaut à nohead, nofoot |
+
Il faut préciser si on veut des notes de marge ou pas. Par défaut, les
+notes de marge sont à droite du texte. Si le document est prévu en
+recto-verso (option de classe twoside), l'option
+reversemp
mettra les notes de marge du côté de la pliure du
+papier. Le «mp
» de ces options veut dire «margin
+paragraph».
+ includemp
+ |
+ : | +active les notes de marge | +
+ reversemp
+ |
+ : | +active les notes de marge, de l'autre +côté | +
+ marginparwidth=
+
+ dimension
+
+ |
+ : | +largeur des notes de marge | +
+ marginparsep=
+
+ dimension
+
+ |
+ : | +espace entre le corps et les notes +de marge | +
+Pour un document simple (classe article
), qui prenne «toute la
+page», on peut utiliser les valeurs suivantes (vous pouvez laisser de
+l'espace après les virgules):
+
\usepackage[left=1.5cm,right=1.5cm,top=1cm,bottom=2cm,nohead]{geometry}+
+En réglant la taille de la page, rappelez-vous toutefois que l'oeil +humain a du mal à suivre une ligne de texte si celle-ci est trop longue, +c'est-à-dire généralement au delà de 80--90 caractères par ligne (espaces +inclus).
+ Il est possible de fixer toutes ces dimensions
+en manipulant directement les dimensions de LATEX (avec des
+\setlength\
dim
\
valeur
) pour
+toutes les dimensions. C'est une méthode plus compliquée, plus difficile et
+plus précise, dont nous ne parlerons pas ici.
+Le mois prochain, on expliquera comment insérer des images. +
++Ce cours explique progressivement ce qu'est un ordinateur. Le mois +dernier, on a vu à quoi servait le processeur. Ce mois-ci, Thomas explique +comment fonctionnent l'écran, le clavier et la souris. +
++Il est de l'informatique comme de beaucoup d'autres domaines: quels que +soient les mérites d'un quelconque système, il se doit de les afficher +dans une sarabande pyrotechnique digne de Jean-Michel Jarre. C'est +particulièrement frappant quand on va au cinéma: les ordinateurs qui y +sont représentés sont toujours prompts à faire virevolter des images +tridimensionnelles aux moments les plus inappropriés. Les terminaux +texte en vert sur noir, et les touches de clavier qui font tic-tic, sont +réservés aux systèmes «professionnels», donc spartiates, forcément. +
++Donc l'ordinateur, qui il y a un demi-siècle était gros comme un +immeuble et ne communiquait que par une série de boutons et quelques +cliquetis, est désormais surmonté d'une espèce de télévision, qu'on +nomme aussi écran, ou moniteur. Ça ressemble a un banal écran de +télévision, et d'ailleurs c'en est un. Bien que ce soit la partie la +plus grosse du système informatique (après l'utilisateur), c'est aussi +la plus bête (après l'utilisateur). On aurait tort d'y voir le siège de +la pensée de la machine. +
++Fonctionnellement, c'est un tube en verre sous vide, avec un canon à +électrons, pointé sur la tête de l'humain qui le regarde. Le canon, +comme son nom l'indique, envoie des électrons à grande vitesse; +diverses bobines électromagnétiques dévient ces électrons pour les +faire frapper des endroits bien précis d'un substrat fluorescent déposé +sur une surface de verre. Tout cet assemblage va en fait illuminer +successivement tous les points de l'écran, en balayant de gauche à +droite et de haut en bas; afin de blouser l'humanoïde qui regarde la +chose, le balayage est reproduit plusieurs fois par seconde, genre +70 fois, en tous cas trop vite pour que l'oeil humain puisse suivre. +Du coup, on voit une image fixe. +
++Pour former l'image, l'ordinateur envoie, de façon synchronisée avec +le balayage, l'intensité lumineuse de chaque point, c'est-à-dire la +puissance de tir du canon. Pour être précis, il y a trois canons, qui +vont frapper des points teintés en rouge, vert ou bleu, ce qui permet +de fabriquer de subtils mélanges, qui donnent une image en couleurs. +
++Dans l'ordinateur lui-même, il y a un processeur dédié, qui gère une +certaine mémoire qui maintient la couleur de chaque point, et qui joue le +rôle de l'hortator; on l'appelle occasionnellement carte +graphique. À cause de restrictions sur la taille de cette mémoire et le +degré de finesse de ce processeur, la machine ne peut envoyer sur l'écran +qu'un nombre limité de points différents (qu'on appelle pixels), +couramment de l'ordre d'un million, et est parfois limitée dans le nombre +de couleurs différentes qu'elle peut afficher simultanément. +
++Il existe d'autres types d'écrans, tels que les écrans à cristaux +liquides (LCD) ou à plasma, qui permettent d'obtenir de meilleures +images et un encombrement réduit (pratique, pour un ordinateur portable) +à des prix inversement proportionnels à l'épaisseur de l'engin, et donc +astronomiques. +
++L'être humain est un éternel insatisfait, parfaitement contradictoire +dans ses actions et ses décisions. Il possédait la télévision, et il a +voulu la transformer en un système de communication bidirectionnel, où +il pourrait également donner son avis à la machine. Ainsi, l'ordinateur +fut doté de ce qu'on appelle des périphériques d'entrée; d'entrée +parce qu'il s'agit de faire rentrer des données dans la machine, +périphérique parce qu'il n'y a jamais de place de parking libre +intra muros5. De façon assez ironique, une fois en possession de ces +périphériques, l'Homme Moderne6 n'aspire +qu'à une chose, c'est de ne pas avoir à s'en servir. +
++Donc le clavier fut inventé. Comme son ancêtre à vocation musicale, +il est constitué de touches, qu'il s'agit non pas de toucher mais de +frapper; cependant, comprenons-nous bien, ce n'est pas un acte martial, +et la frappe doit être aussi douce que le frottis du zéphyr sur les +ailes du colibri. Sinon, vous défoncez le clavier et ça coûte un max à +remplacer. +
++Quand on frappe (délicatement, j'insiste) une touche, le clavier envoie +un signal, via le fil idoine, à la machine, indiquant qu'une +touche à été enfoncée, et sa position. En effet, le clavier n'a pas la +moindre idée de ce qui est gravé sur les touches, et l'ordinateur doit +reconstituer la bonne lettre en fonction de sa position. À ce sujet, +précisons que le placement abominable des lettres sur le clavier a été +conçu pour ralentir la frappe (ça date du temps des machines à +écrire mécaniques, qui se coinçaient facilement), et ceux d'entre vous +qui ont essayé de taper un texte sur un ordinateur ont pu constater +combien ce but était rempli avec succès. Cela fait du bien de voir le +progrès en action. +
++Précisons enfin que contrairement à une croyance répandue, le clavier +n'est pas supposé recevoir les éléments suivants: café, coca-cola, +miettes de pain, bière, sang. +
++On remarque souvent, à droite du clavier, un boîtier rondoïde avec un +fil; ce bloc de plastique a été baptisé après le nom d'un sympathique +rongeur, la souris, cousin pas trop éloigné du campagnol et du mulot. En +revanche, les musaraignes et les taupes sont une branche plus distinctes. +Les éléphants aussi, mais je ne pense pas que vous confondriez, de toutes +façons. La souris, donc, a pour particularité de détecter ses propres +mouvements (alors que le clavier, par exemple, ne détecte rien du tout). +Chaque fois qu'elle bouge, elle indique via son fil à l'ordinateur +qu'elle a bougé; elle indique dans quelle direction, et sur quelle +distance. +
++La plupart des souris possèdent cette faculté de repérage stérique grâce +à une boule qui frotte sur le sol; vous pouvez apercevoir cette boule en +retournant l'animal (ne vous inquiétez pas, ce n'est pas mortel pour +lui). D'autres souris travaillent en optique, avec des diodes rouges, ça +s'encrasse moins et ça fait ressembler le mulot à une chaussure Nike, +autant dire que ça s'arrache dans les magasins, et qu'au bureau tout le +monde en veut une. +
++Car décidément, le singe préfère la souris rouge. +
+Thomas Pornin
+ Les gourous sont un groupe d'élèves ou d'anciens
+élèves volontaires pour installer un certain nombre de logiciels sur les
+machines Unix, comme pine
, mutt
, gnuplot
,
+xfig
, ytalk
, les éditeurs de texte, les jeux, les
+gestionnaires de fenêtres, des utilitaires comme less
,
+screen
, ledit
...
+Ils s'occupent également, en collaboration avec le SPI, de la modération +des courriers collectifs. Ce sont aussi les gourous qui font la config +conscrits. +
+ C'est un acronyme qui veut dire
+«GNU's not Unix». Le projet GNU est un projet visant à écrire un système d'exploitation* libre*
+complet. Ses participants ont commencé par écrire un certains nombres de
+logiciels et d'utilitaires permettant le développement du système
+proprement dit (Hurd), dont la sortie est une arlésienne... En attendant,
+ces utilitaires existent (GNU emacs, GNUchess, gzip
, des
+versions de less
, grep
, tar
, etc).
+
+Les promoteurs du projet sont la Free Software Fundation (FSF), avec +Richard Stallman à sa tête. +
+General Public License. C'est une des licences de +diffusion des logiciels libres*, notamment Linux et les utilitaires GNU. +Un logiciel couvert par cette licence peut être utilisé, recopié, +modifié, redistribué (gratuitement ou non) ou inclus dans un autre, à +condition que le code source du logiciel avec ses modifications +éventuelles soit tenu à la disposition de tout récipiendaire, aux termes +de cette même licence. +
++Le but de cette licence est de promouvoir le logiciel libre, en empêchant +de réutiliser tout ou partie d'un logiciel sous GPL dans un logiciel qui +ne le soit pas. +
+Le terme s'oppose à «commercial». On peut diffuser, +dupliquer et modifier un logiciel libre sans contraintes. Une +caractéristique essentielle est que le logiciel est disponible et diffusé +sous deux formes: la forme immédiatement exécutable, utilisable, et le +code source qui contient les «secrets de fabrication» (le source est le +programme proprement dit, tapé par le programmeur). +
++«Libre» ne signifie pas «gratuit»: on peut vendre des logiciels libres. +Dans ce cas, on paye le support (CD-ROM), le service après-vente, etc. +
+ Les logiciels libres sont diffusés sous diverses licences
+réglementant leur mode de diffusion. L'une des plus connues est la GPL*. pine
, mutt
, Linux,
+LATEX, xv
, gimp
(par
+exemple) sont des logiciels libres.
+ C'est une abréviation pour «manuel». Les pages de man
+sont les pages qui documentent un programme, ou une commande. Par
+exemple, pour connaître toutes les options de ls
, tapez
+«man ls
».
+
+Les pages de man sont des références, et pas des didacticiels. +Elles sont donc souvent difficiles à lire, d'autant qu'elles sont en +anglais. Dans les distributions francophones de Linux, un certain nombre +de pages de man ont été traduites. +
+C'est le logiciel qui fait tourner +l'ordinateur «en dessous» des applications dont se sert l'utilisateur +(comme les logiciels de courrier, les traitements de texte), et en +dessous de l'interface graphique. On dit aussi «OS» (operating +system). +
++Le système d'exploitation d'Apple pour Macs s'appelle MacOS, celui d'IBM +pour PC s'appelle OS/2. Le système d'exploitation de Microsoft pour PC +est DOS/Windows; à l'origine il n'y avait que le DOS, qui fut complété +par Windows, interface graphique désormais complètement intégrée au +système d'exploitation. +
+Un autre type de système d'exploitation est le système Unix. Unix est +en fait une famille qui comprend entre autres Solaris (Unix de la société +Sun), AIX (Unix de la société Hewlett-Packard), Linux (Unix libre*, disponible gratuitement, et aussi commercialisé +par des sociétés comme RedHat, SuSE, Caldera, Debian...), FreeBSD, +OpenBSD et NetBSD (d'autres Unix libres), Hurd (Unix libre du projet +GNU).
+Le premier stage des tuteurs pour l'année 2000--2001 a lieu les 16, 17 et +18 février 2001. Son contenu a été décidé d'après les résultats du +sondage de début d'année: LATEX à gogo, utiliser le forum des élèves, +un cours magistral appuyé sur des transparents et des documentations +photocopiées distribuées lors du stage. Les TP auront lieu en salle S; +le cours de LATEX aura lieu dans une salle encore +indéterminée:
+Horaires | +Thème | +Observations | +
+ +Vendredi 16 février, 20h30 | +Utilisation des machines Unix | +Manipulation +des fenêtres, commandes de base, utilisation d'un éditeur de textes. Si +vous ne connaissez pa ça et que vous voulez faire le stage LATEX, il +faut absolument être là. | +
Samedi 17 février, 10h00 | +Cours de LATEX | +C'est un +cours magistral avec transparents. On présentera le principe de ce +logiciel, et les commandes principales. Ceux qui font un stage LATEX le +samedi doivent obligatoirement y assister. | +
Samedi 17 février, 14h00 | +LATEX pour débutants | +Cette +session s'adresse à ceux qui n'ont jamais fait de LATEX, ou bien n'ont +rien compris en début d'année. | +
Samedi 17 février, 16h30 | +Recyclage LATEX | +Cette +session s'adresse à ceux qui se souviennent du principe, de quelques +commandes, mais qui veulent rafraîchir leur mémoire. On ne verra pas les +maths à cette occasion. | +
Dimanche 18 février, 14h00 | +LATEX pour scientifiques | +Les maths et +tout ce qu'il faut, pour les gens qui connaissent déjà les bases. | +
Dimanche 18 février, 16h30 | +Outils associés à LATEX | +BibTeX +(bibliographies) et MakeIndeX (index), pour ceux qui connaissent déjà les +bases. | +
Dimanche 18 février, 20h00 | +Le forum des élèves | +Comment +lire forum et poster dedans. | +
+Pour vous inscrire, envoyez un courrier électronique à
+tuteurs@clipper
. Si vous avez du mal à déterminer votre niveau
+en LATEX, le test est simple: si les mots «compilation», «préambule»,
+«fichier source», «environnement» sont clairs, vous venez au recyclage de
+16h30, et le cours du matin vous aura remis les idées en place. Sinon,
+vous venez dans le groupe des débutants.
+
Si vous avez un problème, commencez par demander de l'aide dans la salle: il +s'y trouve sans doute un tuteur (volontaire pour dépanner) ou un gourou +(administrateur élève). Dans la moitié des cas, quelqu'un pourra vous aider. +Si personne ne peut vous dépanner, vous avez à disposition les interlocuteurs +suivants:
+Le logiciel ne fonctionne pas | +
+ gourous@clipper
+ |
+
Vous ne savez pas vous servir d'un logiciel | +
+ tuteurs@clipper
+ |
+
Vous n'arrivez vraiment pas à vous loguer | +Allez voir le SPI | +
Il n'y a plus de papier | +En réclamer aux services de l'administration +(couloir Dussane) | +
+ +Il n'y a plus de toner | +Écrire au SPI (spi@clipper.ens.fr ) |
+
Adressez-vous au service compétent, suivant le tableau suivant:
++ +Stations Sun | ++ |
PC sous Windows | +SPI : spi@clipper.ens.fr |
+
PC sous Linux | ++ |
+ +Macs | +Élisabeth Labrousse (elisa@elias.ens.fr ) |
+
+ | Jean-Claude Lovato (lovato@dmi.ens.fr ) |
+
+ | SPI si non-intervention dans la journée | +
Imprimantes | +elisa@elias.ens.fr pour l'Infirmatique |
+
+ | spi@clipper.ens.fr pour les autres salles |
+
+Globalement, adressez-vous au SPI pour toutes les machines
+(spi@clipper.ens.fr
), sauf les Macs de l'Infirmatique qui dépendent de
+l'Informatique littéraire (écrire à Élisabeth Labrousse:
+elisa@elias.ens.fr
; bureau 10, poste 3003).
+
+Donnez une description précise du problème, et indiquez clairement la machine +et la salle. Le cas échéant, laissez un papier sur la machine pour signaler +la panne, cela évitera aux autres utilisateurs de rencontrer le même problème +et de surcharger le SPI ou les gourous de messages d'erreur. +
++Le Hublot est le journal des tuteurs informatique de l'ENS. Il +paraît chaque mois à 350 exemplaires. Il est également disponible sur le Web: +
++Rédaction: Émilia Robin. +
++Ont collaboré à ce numéro: Xavier Bertou, Éric Brunet, Augustin Chaintreau, +Nicolas George, Florent Hivert, Guillaume Lapeyre, Catherine Le Bihan, +Benjamin Lerman, David Madore, David Monniaux, Jérôme Plût, Laurent Rineau, +Olivier Terneaud, Olivier Verzelen, Cédric Ware. +
++Merci à Jean Marot, Gilles Radenne et Marie-Charlotte Zanotti pour leurs +relectures. +
++ +
+screen
+ slogin
+ +Un peu de retard pour le Hublot de février, qui sort en mars... Ce mois-ci, +on s'intéresse particulièrement aux imprimantes: les divers types existants, +les commandes pour imprimer, et quelques rappels de savoir-vivre. On insiste +aussi sur la sécurité avec SSH, pour vous connecter à distance sans risquer de +vous faire pirater. +
+
+Enfin, à plusieurs reprises, on parle de la config conscrits 2000. Si vous
+voulez la récupérer, n'oubliez pas qu'il suffit de taper
+configuration --get
(voir le numéro d'octobre du Hublot pour tous
+les détails).
+
+Comme dans chaque numéro, les conseils de lecture et les bonnes adresses: +
+http://www.eleves.ens.fr/
http://www.eleves.ens.fr/tuteurs/docs/hublot/
Nous sommes toujours à votre disposition pour toutes questions et
+suggestions: tuteurs@clipper
.
+Vous pouvez aussi mettre un mot dans le casier de Marie-Lan Nguyen.
+Enfin, n'oubliez pas que quand vous tapez qui
, les tuteurs
+ont leur nom souligné: n'hésitez pas à nous solliciter!
+Cette rubrique porte sur l'utilisation pratique des machines Unix et de
+LATEX. Dans la partie Unix, une présentation de screen
, utilitaire
+qui permet de lancer des calculs sur une machine. Ensuite, dans la partie
+LATEX, on va voir comment insérer des images dans un document.
+
screen
+
+Si vous lancez un calcul sur une machine, au moment où vous vous déloguerez,
+tous les processus lancés à votre nom seront tués et votre calcul avec. Vous
+voudriez donc «détacher» le calcul et le laisser tourner sur la machine, même
+une fois que vous vous serez délogué. C'est à cela que sert l'utilitaire
+screen
, un logiciel en mode texte.
+
screen
+ Pour lancer screen
, il faut
+taper... screen
. Le programme affiche quelques lignes concernant
+son auteur, sa version, etc. Appuyez sur «Entrée» pour quitter cette
+présentation. Votre fenêtre est inchangée, rien n'est différent.
+
+Ensuite, lancez votre programme, avec sa commande. +
+
+Pour quitter, tapez ^A
(qui introduit toutes les commandes
+internes de screen
) suivi de d
. Vous pouvez aussi taper
+^A^D
tout court. Le «d» veut dire «détacher». On rappelle que
+^D
se lit «control-D» et signifie «taper d en tenant la touche
+Control».
+
+ Vous voulez récupérer le screen que vous aviez lancé.
+Loguez-vous, physiquement ou à distance, sur la machine concernée. Si vous
+n'avez qu'un seul screen lancé sur la machine, tapez screen -r
(«r»
+comme «récupérer»). Vous récupérez la fenêtre dans l'état où vous l'aviez
+laissée.
+
+S'il vous avez lancé plusieurs screens différents, tapez screen
+-ls
(«ls» comme «liste») pour trouver ceux qui existent. Ensuite, lancez
+screen -r
suivi de l'identificateur donné dans la liste.
+
+Pour mettre fin à un screen, quittez-le en tapant exit
ou
+^D
.
+
+ Vous avez donc lancé un calcul, qui est une nouvelle +«tâche» pour l'ordinateur. Chacune de ces tâches (loguer quelqu'un, lancer une +fenêtre, faire tourner l'horloge...) s'appelle un processus; ils ont tous un +numéro (PID: process identifier), et un propriétaire (la personne qui +l'a lancé). En lançant votre calcul, vous avez créé un nouveau processus. +
+
+Pensez que d'autres vont utiliser cette machine. Si votre processus consomme
+90% de sa puissance, elle sera presque inutilisable, tellement elle sera
+ralentie... Il faut donc «nicer» (de l'anglais nice) le programme, pour
+donner la priorité aux autres programmes. Ainsi, la machine s'occupe de votre
+calcul, mais dès que quelqu'un d'autre en demande pour quelque chose de
+prioritaire (se loguer, lancer pine
, etc), elle relègue momentanément
+votre calcul au second rang.
+
+C'est la commande nice
qui sert à fixer la priorité d'un programme.
+Plus le nombre est petit, plus le programme est prioritaire; plus le nombre
+est grand, moins le programme est prioritaire. Pour nicer notre calcul
+ci-dessus, on tapera (dans le screen):
+
brick ~ $ nice -19 ./calcul
+
+ Le programme nice
s'occupe de lancer votre calcul en lui donnant
+la priorité 19, c'est-à-dire la priorité la plus basse. Vous pouvez aussi nicer
+votre programme a posteriori avec:
brick ~ $ renice 19 <PID>
+
+ où <PID>
est le numéro du processus correspondant
+au calcul lancé (tapez top
pour le trouver).
+renice
ne peut que rendre le processus moins
+prioritaire.
La charge que représente un calcul pour une machine ne se mesure pas
+simplement en puissance consommée. Si votre processus utilise 5% de la
+puissance du processeur, mais occupe trop de mémoire, la machine sera
+inutilisable. La mémoire occupée est indiquée dans la colonne «Size» du
+tableau affiché par top
.
brick ~ $ screen +(...) +(quelques lignes: version, date, auteur, etc) + +[Press Space or Return to end.] +brick ~ $ nice -19 ./calcul +brick ~ $ ^Ad +[detached] +brick ~ $ +brick ~ $ screen -ls +Your inventory: + 9906.pts-16.clipper (Detached) +1 Socket in /tmp/S-robin. ++
+Le mois prochain, on verra les jokers (raccourcis pour les noms de +fichiers). +
+ Nous allons ce mois-ci voir comment insérer des figures ou des images
+dans un document LATEX grâce au package
+epsfig
. Il en existe d'autres, qui ont la même fonction (par
+exemple graphicx
). Leur utilisation est assez semblable, et
+nous ne la présenterons pas ici.
+
Une figure ou une image, c'est un fichier
+informatique, stocké sous un certain format. On reconnaît en général le
+format à l'«extension», la fin du nom du fichier. Le format correspond à
+la manière dont on code la couleur de chaque point. Pour être insérées
+dans un document LATEX, les images doivent être dans le format
+PostScript encapsulé, soit l'extension .eps
.
+
+Pour obtenir un tel format, la première chose à faire, c'est de regarder
+si le logiciel que vous utilisez ne propose pas directement cette option:
+le PostScript ainsi produit a des chances d'être plus efficace et/ou de
+meilleure qualité. Sinon, ouvrez l'image dans xv
ou
+gimp
, demandez à sauvegarder l'image, et choisissez PS ou EPS
+(mieux) comme format. Pour la suite, nous supposerons que nous avons un
+fichier qui s'appelle image.eps
.
+
Rien de plus facile ici. On commence par +charger le bon package, comme d'habitude: +
++\usepackage{epsfig} ++
+Ensuite, il suffit d'utiliser la commande suivante pour insérer +l'image: +
++\epsfig{file=image.eps} ++
+Elle se trouve alors insérée dans le texte, exactement comme si c'était +une (très) grosse lettre (le bas de l'image est aligné avec la +ligne de base du texte; rappelons que la ligne de base est ce qui +correspond à la grosse ligne du quadrillage d'un cahier d'écolier). +
++On peut aussi contrôler un petit peu l'aspect de l'image, en ajoutant des +options; par exemple, cette ligne incorpore l'image en la +réduisant ou en l'agrandissant jusqu'à 3 cm de large: +
++\epsfig{file=image.eps,width=3cm} ++
+Les options les plus utiles sont: +
+
+ width
+ |
+ Largeur de l'image | +
+ height
+ |
+ Hauteur de l'image | +
+ angle
+ |
+ Angle de rotation | +
+ clip
+ |
+ Empêche l'image de déborder | +
+Si la hauteur et la largeur ne sont pas toutes les deux indiquées, l'image
+conservera son rapport largeur/hauteur. L'angle est donné en degrés, dans
+le sens des aiguilles d'une montre. L'option clip=
(qui doit
+s'écrire avec le =
et rien d'autre) sert à se prémunir contre des
+fichiers PostScript mal faits, on n'en a pas souvent besoin.
+
La plupart du temps, on ne se contente +pas d'insérer l'image dans le texte; il faut qu'elle soit centrée, lui +adjoindre une légende, la répertorier dans une table. Voilà comment +LATEX procède. +
+
+Pour isoler la figure à un endroit précis, il suffit de mettre l'image
+dans un environnement figure
(donc entre un
+\begin{figure}
et un \end{figure}
). On pourra également
+ajouter un environnement center
si on veut centrer l'image.
+Ensuite, la légende s'ajoute avec la commande
+\caption{
La légende
}
. Par exemple, pour
+centrer une image en lui donnant une légende:
+
+\begin{figure} +\begin{center} + +\epsfig{file=image.eps,width=0.8\linewidth} +\caption{Évolution récente} + +\end{center} +\end{figure} ++
+Quelques commentaires sur cet exemple: les environnements s'emboîtent +comme les parenthèses (premier ouvert, dernier refermé); dans les +conventions françaises, la légende se place en dessous de ce +qu'elle désigne, et on ne met pas de point à la fin. Enfin, vous voyez +que j'ai donné comme largeur à l'image une valeur relative (80% de la +longueur de la ligne de texte), et non pas absolue (9 cm, par exemple). +
+
+L'environnement figure
place ce qu'il contient comme un
+objet flottant, qui peut se retrouver à une certaine distance de
+l'endroit où il est inséré. On peut indiquer à LATEX à quel endroit on
+veut le voir en précisant en option une ou plusieurs lettres parmi:
+
+ h
+ |
+ + here + | +Là où la commande apparaît | +
+ t
+ |
+ + top + | +En haut de la page | +
+ b
+ |
+ + bottom + | +En bas de la page | +
+ p
+ |
+ + page + | +Sur une page dédiée | +
+Ainsi, \begin{figure}[hp]
insérera la figure à l'endroit exact où la
+commande apparaît ou, à défaut, sur une page spécifique (c'est-à-dire avec
+seulement des figures). Le défaut est tpb
. On peut aussi mettre
+h!
pour insister vraiment pour ce que ce soit h
.
+
+Pour obtenir une table des figures, à l'instar d'une table des matières, on +utilise la commande: +
++\listoffigures ++
S'il n'est pas question d'images complexes, de photos, une possibilité est +de définir les images directement avec des commandes LATEX. Ainsi, on +peut facilement faire une petite maison: +
++ +
+
+Si vous voulez savoir comment faire ça avec des commandes LATEX,
+reportez-vous aux chapitres correspondants des manuels LATEX (chapitre 10 du
+LATEX companion), qui expliquent comme se servir des packages
+figure
, efig
et pstricks
. C'est ce dernier que j'ai
+utilisé; il permet en outre des effets très spectaculaires, comme des flèches
+qui vont d'un bout à l'autre de la page en contournant le texte.
+
+En ce qui concerne les figures, n'hésitez pas à vous reporter à notre site:
+/tuteurs/logiciels/latex/figures.html
Nicolas George
++Le mois prochain, on expliquera comment se faire des macros. +
++Ce mois-ci, on va voir un aspect très utile d'Internet, qui est la connexion à +distance, pour lire son courrier électronique ou autres. La partie +«Forum» va s'étendre sur des questions de «Netiquette» communes à tous les +moyens de communication sur Internet (news et courrier électronique). +
++Se connecter à distance permet de lire son courrier, le forum des élèves, +lancer un calcul sur une machine distante, travailler sur ses fichiers, etc. +Vous pouvez donc travailler sur un ordinateur précis sans vous trouver +physiquement devant. +
+Et un peu de théorie au passage, aussi. +Ores donc, au départ, il y a les terminaux. Un terminal, c'est un écran +et un clavier, avec un tout petit cerveau. Un minitel, par exemple. Il +est possible de brancher un terminal sur un ordinateur, et (pour peu que +l'ordinateur sache faire, ce qui est le cas sous Unix) de l'utiliser +ainsi comme un second poste de travail. Les possibilités sont certes plus +limitées qu'avec un écran haute résolution relié par un câble vidéo, mais +si les applications sont prévues pour, ça peut rendre de fiers services. +
+
+Une grande partie des applications que vous utilisez à l'École sont
+justement prévues pour: pine
, forum
(flrn
),
+etc. D'ailleurs, les fenêtres nommées xterm
, large
,
+alpha
, etc, ont pour unique rôle d'imiter un terminal (on
+appelle ça un émulateur; c'est également pour ça qu'il ne faut pas les
+fermer avec le menu du coin: ça revient exactement à couper le courant
+brutalement).
+
+De nos jours, la technologie fait bien mieux que les câbles qui reliaient +les terminaux à leur ordinateur hôte: les ordinateurs peuvent être reliés +efficacement d'un bout du monde à l'autre par Internet. Néanmoins, le +modèle du terminal reste une approche à la fois simple à utiliser, facile à +programmer, et efficace. C'est pour ça qu'on a rapidement songé à utiliser +des connexions via Internet pour relier un programme qui imite un +terminal (encore un émulateur) à un ordinateur hôte. +
++C'est à ça que sert le protocole telnet. En général, il laisse +simplement passer ce qui se tape d'un côté jusqu'à l'autre bout, et aussi +ce qui revient de l'autre bout pour affichage. Il comprend aussi quelques +rares codes pour faire passer des informations importantes, comme le +modèle de terminal simulé à une extrémité, la taille de l'écran, etc... +
++On appelle serveur l'ordinateur sur lequel on essaie de se +connecter, et client celui qui sert à se connecter (et donc simule +un terminal). +
++Bref, telnet, c'est comment afficher la sortie «mode texte» d'un ordinateur +sur l'écran d'un autre. +
+
+ Quand vous êtes en interne à l'École (entre
+les salles S, t15, du 46, Jourdan, Montrouge), il suffit de taper le nom
+de la machine pour s'y connecter. Si vous êtes ailleurs, il faut utiliser
+le programme Telnet. Pour vous connecter sur la machine galion
,
+par exemple, il suffit de taper:
+
+telnet galion.ens.fr ++
+Vous pouvez ainsi vous connecter sur n'importe quelle machine de l'École
+(galion
, bireme
, brick
, horus pour les
+biologistes, etc.). Il existe aussi rlogin
(remote login), que
+l'on utilise exactement de la même façon.
+
Vous devriez trouver le Telnet dans le menu
+«Démarrer». S'il n'y est pas, vous pouvez choisir «Exécuter» dans le menu
+«Démarrer», et taper telnet
. Vous pouvez aussi utiliser «Rechercher»
+dans le menu «Démarrer» pour trouver le programme. Ensuite, vous indiquez le
+nom de la machine comme indiqué ci-dessus.
+
+Le Telnet par défaut de Windows fonctionne mal. On recommande plutôt TeraTerm, +quand il est installé. +
++ À l'École, cherchez le Telnet dans le lanceur (NCSA Telnet). +S'il n'y est pas, allez dans le menu Pomme et utiliser «Recherche de fichiers» +pour le trouver. +
++Telnet n'est pas installé par défaut sur les Macs. Il se peut donc que, hors +de l'École, vous vous retrouviez sur des machines qui ne l'ont pas. +
+Si vous utilisez AOL comme fournisseur d'accès, +vous ne pourrez pas faire de Telnet. En effet, AOL utilise son propre +protocole maison, propriétaire et non documenté, pour faire communiquer les +modems des abonnés avec leurs machines à eux. +
++Du coup, certaines opérations sont impossibles. Techniquement parlant, +Telnet est un logiciel qui utilise Internet (le protocol natif, dit +TCP/IP), et, quand on est connecté à AOL, on n'est pas connecté à +Internet. C'est un autre réseau un peu séparé, et la firme AOL fournit +une passerelle transparente vers les pages Web qui sont sur Internet. +
++Les usages dans le forum des élèves ne sont guère différents de ceux qui +ont cours ailleurs sur Internet. On va donc voir les usages communs à +toutes les formes de communication asynchrone, puis les usages +spécifiques aux groupes de discussion (news et forum), et enfin les +usages propres à forum. +
+Il s'agit ici des codes de politesse pour toute +forme de communication électronique asynchrone: courrier électroniques, +newsgroups. Pour la communication en temps réel (chats, talks, IRC, +ICQ, etc), c'est différent. +
++Tout d'abord, faites des phrases. Les abréviations («vs» pour «vous») sont +proscrites, ainsi que l'écriture phonétique («c cool ici, tu fé koi ce soir»). +Vous avez le temps de rédiger vos messages, donc écrivez du français et +orthographiez correctement. +
++Utilisez les majuscules avec beaucoup de parcimonie. Si vous en busez, on +pensera que vous criez et ON VOUS CRIERA DESSUS EN RETOUR. +
+
+Formellement, limitez la longueur de vos lignes à environ 70 caractères, pour
+faciliter la lecture. De plus, si un correspondant vous répond en citant votre
+message, les lignes citées ne seront pas coupées. Si vous utilisez les
+éditeurs pico
et nedit
reformatent automatiquement les
+paragraphes quand vous tapez ^J
(Control-J).
+
+Laissez des lignes blanches entre les paragraphes, ce sera plus lisible pour +votre correspondant. +
+
+Citez le moins possible du message auquel vous répondez, lorsque vous postez
+une réponse à un message. Il n'est nécessaire de citer que lorsque vous
+voulez clairement faire comprendre que votre réponse se rapporte à une partie
+précise du message précédent. Surtout, ne laissez pas de lignes citées
+inutiles par paresse. Essayez la touche ^K
(Control-K) si votre
+éditeur est pico
(ou emacs
).
+
+Pour représenter du gras, utilisez des étoiles, *comme ceci*
. Pour
+représenter le souligné, utilisez des traits de soulignement,
+_comme ceci_
.
+
+Utilisez des smileys pour indiquer les passages de vos messages à prendre au
+second degré si ce n'est pas évident. Par exemple, «:-)
» est le smiley
+générique; certains préfèrent «:)
». Le smiley «;-)
» signale un
+clin d'oeil.
+
Quand vous postez dans les news, ou +bien dans forum, il arrive que le message ait sa place dans plusieurs +groupes différents à la fois, et qu'on le poste donc «transversalement». +C'est ce qu'on appelle un cross-post, ou «multipostage» (X-post +dans le jargon). Dans tous les cas, il faut décider du groupe dans +lequel la discussion se poursuivra. +
+ Par exemple, vous postez un message dans lequel vous vous demandez
+si, dans un État laïque, il est légitime d'enseigner les religions à
+l'école. Vous décidez de multiposter dans
+fr.education.divers
, fr.soc.politique
et dans
+fr.soc.religion
. Le message figurera dans ces trois groupes,
+mais la discussion ne doit se poursuivre que dans un seul groupe, que
+vous signalez. C'est ce que l'on appelle un follow-up («fu2»
+dans le jargon).
Outre ce que l'on vient de dire, +voici quelques usages qui ont cours dans le forum des élèves. +
+
+Tout d'abord, évitez de signaler leurs fautes d'orthographe aux autres en
+dehors du conti lettres.orthographe
. Et si vous le faites,
+que ce soit dans un français irréprochable...
+
+D'autre part, il y a un certain jargon en usage. Une partie est constituée +d'abréviations anglicisantes d'usage fréquent dans les news: ROTFL: +Rolling on the floor laughing («mort de rire»), IMHO: In my +humble opinion («à mon humble avis», ou AMHA). Vous rencontrerez aussi les +abréviations ou le jargon informaticiens (dont le fameux RTFM, «regarde dans +ton foutu manuel»). Enfin, il y a un jargon plus ou moins spécifiquement +normalien (groumph, grassouille, test...). +
+
+On est en droit de ne pas aimer. Dans ce cas, on évitera les hiérarchies
+alt.*
, archeo-forum.*
, et, dans une certaine mesure,
+informatique.*
. Si vous n'aimez pas les private jokes, restez
+également en dehors de la hiérarchie alt.*
: le reste de forum en est
+relativement exempt. Cependant, soyez compréhensif s'il y en a quand même çà
+et là...
+
+Si vous voulez comprendre un peu ces blagues internes, vous pouvez consulter
+le Petit Lexique Normalien, avec l'explication des mots et la présentation des
+habitués de forum
+(http://www.madore.org/~david/ens/lexique.html
).
+
+Le mois prochain, on expliquera ce qu'est le «blast». +
+David Madore, Émilia Robin
++Ce cours explique progressivement ce qu'est un ordinateur. On connaît +désormais la mémoire, les bus, le processeur, l'écran, le clavier, la +souris... Ce mois-ci, on s'attaque aux éléments de stockage, disquettes, +disques durs et CDROMs. +
++Qu'un ordinateur fonctionne, admettons. Ce pourrait être un effet de la +science moderne. La technologie nous habitue à la voir aligner plus de +miracles qu'un bataillon de messies arpentant la Palestine. Nous +considérerons donc que l'ordinateur allumé, cela existe, et qu'il +effectue de menus travaux intéressants quoique peu ménagers (ce qui +serait vraiment utile, pour le coup). +
++Qu'un ordinateur ne fonctionne pas quand il n'y a pas de courant, c'est +tout aussi compréhensible. Achille était frileux du talon et Popeye n'est +qu'un pirate d'eau douce sans ses légumes verdâtres; aussi il est +raisonnable de penser que l'ordinateur puise sa force d'une certaine +source, et même, imaginer que cette source soit le courant électrique, ne +semble pas être l'idée la plus stupide qui soit. +
++Mais rallumons un ordinateur qui a été préalablement éteint et débranché. +Stupeur! Après avoir repris sa configuration opérationnelle, il semble +contenir des informations qu'on avait soi-même rentrées avant cette +éclipse forcée. Qu'est-ce à dire? Il y aurait, dans cette boîte, une +entitée douée de mémoire qui résisterait à la pénurie de jus? Tout ne +serait pas transistors et condensateurs, silicium et métal? +
++Eh bien oui, en effet, il y a des mécanismes de stockage de données qui +subsistent sans la fée électricité. Les principaux, ceux qu'on rencontre +le plus souvent sur une station de travail, sont les disques durs et les +disquettes. Il y a aussi les CDROMs et les bandes magnétiques. +
++Pourquoi «disque»? Parce que c'est rond. Comment ça, rond? Ben oui, le genre +circulaire. Mais y'a rien de rond dans la machine! Ah effectivement, c'est +caché dans une boîte rectangulaire. Appréhendons la chose autrement. Le disque +dur, c'est le truc qui fait crrcrrcrr de temps en temps quand la machine est +allumée, comme si des cafards pédalaient pour la maintenir en vie. À +l'intérieur, il y a en fait plusieurs disques, qu'on nomme «plateaux», rigides +et recouverts d'une substance magnétisable, comme une cassette. Ces plateaux +sont empilés et tournent très vite autour d'un même axe. Entre les plateaux +circulent des sortes de bras mécaniques qui portent des «têtes» de lecture, à +savoir des assemblages électromagnétiques qui peuvent émettre et recevoir des +champs magnétiques. +
++Car dans le support magnétisable, il y a des molécules contenant des +atomes de fer; ces atomes peuvent être orientés, et on peut savoir, avec +une tête de lecture, dans quel sens ils sont orientés. Et, plus fort +encore, on peut changer cette orientation en appliquant un champ +magnétique avec une tête de lecture (qui, du coup, est une tête +d'écriture). Enfin, c'est là l'astuce suprême: notre atome orienté ne va +pas changer spontanément de sens. Il conserve son orientation, courant ou +pas courant. Voilà comment une mémoire peut survivre entre deux +allumages: comme pour le tricot, on a des atomes à l'endroit et des +atomes à l'envers, ils représentent des 0 et des 1. +
++Le disque est dans une boîte hermétique afin d'éviter la poussière: la +tête se déplace très près du disque, qui tourne très vite; l'analogie +courante, c'est d'imaginer un Boeing 747 (ou un Airbus A340, ne boudons +pas notre chauvinisme) voletant gaiement à une dizaine de centimètres du +sol. Et il ne faut pas que ça touche! Sinon après ça ne marche plus du +tout. C'est pour ça que faire tomber un ordinateur en marche n'est pas +conseillé du tout (déjà, éteint, c'est plutôt mal vu, mais allumé, c'est +l'assurance que les têtes de lecture vont faire un bel atterrissage sur +les plateaux). +
++Par comparaison, une disquette est un disque dur à l'air libre, d'où un +espace beaucoup plus important entre la tête et le disque (qui, pour +l'occasion, est souple), ce qui rend la lecture et l'écriture plus lentes +et moins précises (on ne peut plus viser aussi finement les atomes; du +coup, une disquette contient beaucoup moins de données qu'un disque dur). +
++Mais pourquoi cet assemblage mécanique? Ben c'est parce qu'il faut bien +amener la tête là où il y a les atomes à orienter. On s'en passerait +bien: la mécanique ça s'use, ça fait du bruit et ça tombe en panne. Mais +on ne sait pas faire autrement. +
++Les disques permettent donc de stocker des 0 et des 1. En pack. Comme des +billes dans un sac. Combien peut-on en stocker? Pas loin de douze +millions sur une disquette, et le moindre disque dur peut en contenir +plusieurs centaines de milliards. N'essayez pas d'imaginer ça, car le +milliard est une notion qui échappe à l'esprit humain1. Disons plutôt +qu'une disquette suffit à stocker un texte comportant un bon million de +lettres, soit un millier de pages. +
++En faisant attention à ne pas gaspiller, on peut mettre plus, la métaphore +usuelle étant que la Bible tient sur une disquette, tout juste. Un CDROM peut +contenir 700 bibles. Un disque dur de base à 1 000 balles contiendra +30 000 bibles2. Par comparaison, une image, une musique, +ou un film, c'est très gros: un DVD contiendra deux heures de film sur +6 giga-octets (plus précisément, 4.7 Go pour la première couche, et 8.5 Go +pour un DVD mono-face bi-couche). C'est là qu'on voit que dans un film il y a +autre chose que le script. +
+1 octet | +1 caractère | +
1 Ko (kilo-octet) | +environ 1 000 caractères | +
1 Mo (méga-octet) | +environ 1 million de caractères | +
1,4 Mo | +1 disquette; la Bible | +
600 Mo | +1 CDROM: 600 fois la Bible | +
+ | 1 CD audio: 1 h. de musique | +
1 Go (giga-octet) | +environ 1 milliard de caractères | +
8.5 Go | +1 DVD. | +
+ | Matrix: 1 DVD | +
+ | Les 10 commandements: 2 DVDs | +
+On utilise souvent l'octet pour désigner un groupe de huit bits; un octet +peut prendre 256 configurations différentes, voilà qui est suffisant pour +représenter une lettre (en comptant les majuscules, les minuscules, les +chiffres, les signes de ponctuation et les lettres accentuées). On +possède aussi des multiples: le kilo-octet contient 1024 octets (et non +1000, car 1024 est un nombre plus «rond» quand on compte en binaire, +comme les ordinateurs; et, par ailleurs, les informaticiens sont +joueurs). Le méga-octet représente 1024 kilo-octets, et le giga-octet +fait 1024 méga-octets. Le téra-octet, qui fait (surprise) +1024 méga-octets, est encore trop cher pour qu'on en parle ici. Un disque +dur moderne fait quelques dizaines de giga-octets, la mémoire centrale +d'un ordinateur quelques dizaines de méga-octets. +
++Une question qui se pose légitimement, c'est pourquoi diable la machine +travaille-t-elle sur une mémoire qui disparaît quand on coupe le courant, +alors qu'elle en a une autre qui résiste, et qui est en plus mille fois +plus abondante? Parce que celle-ci est bien plus de mille fois plus +lente, tout simplement. C'est pour ça qu'on édite un texte en mémoire, et +que de temps en temps il faut «enregistrer le fichier», c'est-à-dire +envoyer le résultat sur un support plus permanent, à savoir le disque +dur. +
++Parlons-en des fichiers, justement. On l'a vu, les octets sont en vrac +sur le disque dur. Or, un tel chaos, ce n'est pas intéressant. On a envie +de trier tout ça, de faire des sections et des sous-sections, et des +index qui permettent de retrouver un ensemble de fiches sans avoir à +relire toute la bibliothèque, etc... pas de panique, c'est prévu! La +machine est livrée avec un logiciel spécial, le système d'exploitation, +qui sait faire ce rangement. Il récupère un peu des octets du disque pour +se fabriquer des étiquettes, et hop, il fournit des dossiers et +sous-dossiers, et dedans des fichiers. Dans le monde informatique, on dit +«répertoire» plutôt que «dossier», mais des réformistes essayent +d'assurer la suprématie de ce dernier terme. Notons bien que le système +d'exploitation n'est pas du tout intéressé par le contenu des fichiers; +pour lui, ce sont des 0 et des 1, c'est tout. +
++Vous avez probablement déjà manipulé des fichiers sans savoir ce que +c'était. C'est presque aussi banal que de faire de la prose, de nos +jours. Que cela ne vous donne pas la «grosse tête» (ça m'est réservé). +
+Thomas Pornin
++Cette rubrique a pour but de présenter diverses utilisations des +machines Unix, en indiquant à chaque fois les logiciels disponibles, et en +présentant certains d'entre eux. Ce mois-ci, on va parler de l'impression de +documents, en présentant les différents types d'imprimantes, les commandes +Unix qui servent à imprimer, et les modalités d'impression à l'École. +
++ La tête d'impression, ou chariot, se déplace +ligne par ligne de gauche à droite (voire aussi de droite à +gauche3) et imprime les caractères un par un. +
++Elle comporte une pièce appelée marguerite comportant les caractères +imprimables gravés dessus. Cette pièce pivote afin de présenter le bon +caractère face à la feuille, puis est frappée sur la feuille de papier, +un ruban encré avançant au fur et à mesure de l'impression étant placé +entre la feuille et la marguerite. Le papier est entraîné, souvent par +engrènement sur des picots, afin de présenter d'abord le haut, puis le +bas de la page à la tête d'impression. +
++C'est le système le plus ancien; les machines à écrire électriques +fonctionnaient sur le même principe. +
++Elle a comme avantages d'être simple (notamment au niveau de +l'électronique de commande), et d'avoir une bonne qualité d'impression. +En revanche, elle est bruyante, et changer de police de caractères +(italique, gras, caractères mathématiques...) oblige à changer la +marguerite temporairement. Elle est généralement restreinte aux polices +mono-espacées4. +
++ L'image est constituée d'un grand nombre de +petits points, comme sur les écrans informatiques. Plus les points sont +petits, meilleure est la qualité car on ne remarque pas les points. Au +contraire, dans le cas des modèles à faible qualité d'impression (caisses +enregistreuses...), les points sont très visibles. La résolution, c'est à +dire la finesse des points, est mesurée en points pour pouce (dots +per inch ou dpi), un pouce valant environ 2,54 cm. À titre de +comparaison, un écran informatique a une résolution de l'ordre de 75 à +100 dpi. +
+On distingue plusieurs sous-types d'imprimantes matricielles, qui sont +les imprimantes à aiguilles, les imprimantes à jet d'encre et les +imprimantes laser.
+Comme dans une imprimante à marguerite, la tête d'impression, ou chariot, se déplace ligne par ligne +de gauche à droite, voire aussi de droite à gauche. Au lieu de porter une +marguerite, elle porte une rangée verticale d'«aiguilles», régulièrement +espacées, généralement au nombre de 9, ou 24 pour les imprimante de +qualité. Ces aiguilles appuient ou non sur un ruban encré placé entre la +tête d'impression et le papier.
++Ce type d'imprimantes était courante pour les ordinateurs personnels +pendant les années 1980; il a même existé des modèles couleur avec rubans +quadrichromiques. Actuellement, on s'en sert pour les tickets des +distributeurs automatiques et aussi pour des factures, bordereaux, +etc.
+Le papier utilisé est +chimiquement traité pour réagir à la chaleur. L'imprimante contient des +aiguilles qui chauffent ou non localement le papier et provoque ou non +son noircissement. Ce type d'imprimantes est souvent utilisé dans les +télécopieurs, les terminaux cartes bancaires... en raison de son relatif +silence.
+La tête d'impression est formée +d'une rangée de buses microscopiques laissant ou non sortir de l'encre. +
++De nos jours, toutes les imprimantes jet d'encre sont couleur +(quadrichromie) et de nombreux modèles offrent une impression de qualité +«photo» à l'aide d'encres et/ou de papier spécial. +
+Procédé analogue aux photocopieuses. +De la poudre d'encre (toner) est déposée à l'endroit où il faut +noircir le papier. Elle est ensuite fondue sur le papier par chauffage +par le four ou fuser. Certains modèles impriment en couleur.
+imprimantes de très haute qualité +destinées à fournir les films pour l'impression professionnelle +(offset...). Leur résolution typiquee est comprise entre 1 200 et +2 400 dpi.
+L'impression de la couleur se fait +généralement en quadrichromie (dit aussi CMYK, Cyan, Magenta, +Yellow, blacK). Pour chacune de ces composantes, on imprime un nuage de +points, avec plus ou moins de densité pour faire les nuances. +Normalement, on pourrait reproduire toutes les teintes avec seulement le +cyan (bleu-vert), le magenta et le jaune; on met du noir pour assurer des +couleurs sombres profondes et économiser de l'encre.
++L'impression couleur est chose délicate; il est rare que l'on retrouve +exactement les mêmes couleurs à l'écran. Ce domaine est un maquis de +brevets, où la qualité professionnelle se paye souvent au prix fort. +
++Toutes les imprimantes bureautiques, à jet d'encre comme à laser, +demandent que la page à imprimer soit présentée sous la forme d'une image +de petits points. Dans le cas des imprimantes couleur, on doit fournir +4 images, correspondant aux 4 couleurs d'encre. Pour obtenir de bons +résultats, notamment avec les imprimantes jet d'encre couleur, il est +recommandé que la génération de ces images se fasse en tenant compte des +particularités spécifiques du modèle d'imprimante utilisé. +
++Il y a deux approches: +
+Cela impose d'embarquer dans +l'imprimante un véritable micro-ordinateur, auquel l'ordinateur +bureautique envoie des ordres de haut niveau («trace une ligne», «affiche +les caractères ABC en police Times italique corps 12»). Dans le monde +professionnel, les imprimantes comprennent surtout le langage de +description de page PostScript. Celui-ci permet au logiciel +bureautique d'envoyer à l'imprimante une description de la page très +indépendante du modèle particulier d'imprimante utilisé; l'imprimante se +débrouille ensuite pour imprimer au mieux.
++Il existe 3 versions de PostScript: PostScript niveau 1, 2 et 3. Toutes +les imprimantes de l'ENS comprennent au moins le PostScript niveau 2; il +est recommandé d'utiliser du PostScript niveau 2 lorsque c'est possible, +notamment en cas d'inclusion d'images scannées ou de copies d'écran. +
+
+Un des gros avantages du PostScript est qu'il permet de produire des
+fichiers décrivant une page ou une partie de page qui sont totalement
+portables: une figure PostScript produite avec Adobe Illustrator peut
+être inclue dans un document LATEX sans difficulté. Il existe des
+visualisateurs de PostScript pour Unix (par exemple gv
)
+et pour Windows (gsview
;
+http://www.cs.wisc.edu/~ghost/gsview/
).
+
+Il est possible d'imprimer du PostScript sur une imprimante non
+PostScript en faisant interpréter le PostScript sur l'ordinateur
+(typiquement en utilisant GhostScript (gs
)).
+
C'est le cas avec les imprimantes bon +marché. Sur l'ordinateur est alors installé un programme spécifique au +modèle d'imprimante, généralement fourni par le fabricant d'imprimante. +
++La grande difficulté des systèmes d'exploitation autres que Windows +(BeOS, Linux, FreeBSD...) avec les imprimantes est dûe à la politique des +fabricants d'imprimantes. En effet, ceux-ci ne fournissent généralement +pas de pilote* d'imprimante pour ces systèmes et fournissent rarement les +informations indispensables à l'écriture de pilotes par des tiers. Dans +certains cas, ces imprimantes ne peuvent pas du tout fonctionner sous +Linux; dans d'autres, elles fonctionnent, mais la qualité d'impression +est moyenne car les concepteurs du pilote n'ont pas eu accès à +l'information nécessaire à une bonne exploitation des capacités de +l'imprimante (p.ex. pour le rendu des couleurs).
+David Monniaux
+La première salle informatique libre-service date de +la fin des années 1980; elle comprenait 5 MacIntoshs. Elle prenait à l'époque +la place de l'infirmerie (d'où le terme «infirmatique»)5. +
++L'expérience a vite montré que cette salle, près de l'entrée de l'École, +sans controle d'accès, imprimait beaucoup! Vraiment beaucoup. Plus que ce que +faisaient uniquement les normaliens... +
++C'est ainsi que l'on a cherché --- et trouvé -- un filtre: les cartes (oui, +payantes; à noter que la somme encaissée n'est pas ré-intégrée au budget du +SPI). Durant les quelques mois où la salle du 46 a été sans filtrage, on a +remarqué la différence! +
+Il y a donc des lecteurs de cartes:
+À noter que les imprimantes HP 4000 actuelles ont un bouton
+Annuler
, qui limite un des soucis longtemps présents: je
+mets ma carte, et c'est un autre travail qui sort.
+ En 2000, on a changé 32 cartouches (18 en salle S, 6 à +Jourdan, 4 au 46, 1 à Montrouge, 1 en Infi). Ceci a eu un coût de +25 000 france annuels, le prix de 2 machines neuves. La salle S imprime au +rythme de 230 000 pages par an, 800 pages par jour... +
++À vous de voir où l'argent est le mieux dépensé! +
+Jacques Beigbeder
+
+Tout d'abord, un certain nombre de logiciels ont des commandes d'impression:
+bouton «Imprimer» de Netscape, bouton «Print» de gv
, éditeurs de
+textes, etc. Ensuite, il existe des commandes plus ou moins
+spécifiques.
dvips
+ dvips
sert à imprimer des fichiers DVI
+(taper dvips
fichier.dvi
). L'option -pp
suivie d'un
+numéro imprime la page correspondante, l'option -p
indique le numéro
+de la première page à imprimer, et -l
le numéro de la dernière page à
+imprimer:
+
+ dvips -pp 3
+ |
+ Imprimer la page 3 | +
+ dvips -p 3
+ |
+ Imprimer à partir de la page 3 | +
+ dvips -l 3
+ |
+ Imprimer jusqu'à la page 3 | +
lpr
+ lpr
sert à imprimer les fichiers PostScript
+(taper lpr
fichier.ps
). Si vous ne voulez imprimer que
+certaines pages d'un fichier PostScript, ouvrez-le avec gv
+(gv
fichier.ps
), et marquez les pages à imprimer en les
+cochant avec le bouton droit de la souris. Ensuite, cliquez sur Print
+marked
pour imprimer.
+
a2ps
+ C'est un utilitaire qui sert à imprimer. Par +défaut, il imprime le document sur une demie-page (si bien que 2 pages A4 se +retrouve côte à côte). Il imprime «au mieux» le fichier qu'on lui donne en +entrée: si c'est un PostScript ou un DVI, il l'imprime, si c'est un fichier +TeX, il le compile d'abord, si c'est simplement du texte, il l'imprime tel +quel.
+Question liminaire: voulez-vous vraiment +imprimer ce courrier? Si c'est le cas, pensez à le récupérer: on trouve à côté +de l'imprimante des piles de messages personnels, parfois vraiment intimes, +que leurs destinataires ont oublié de prendre... +
+
+Donc: avec pine
, appuyez sur %
(la touche «pour-cent»). Avec
+mutt
, appuyez sur p
(print). Dans les deux cas, le
+logiciel demande confirmation.
+
C'est très facile: il suffit +de se rendre à la photocopieuse la plus proche. +
+ L'imprimante de la salle S fonctionne en
+recto-verso. On utilise la commande lpr
avec l'option
+-Zdouble
(c'est tellement barbare que c'en est poétique...). Par
+exemple, pour imprimer rapport.ps
en recto-verso, tapez:
+
brick ~ $ lpr -Zdouble rapport.ps
+
+ Pour imprimer un fichier Word, il faut +ouvrir ce fichier, avec StarOffice ou ApplixWare (voir le numéro 9 du +, novembre 2000). Ensuite, chacun de ces logiciels possède un bouton +«Imprimer» ou «Print».
+C'est un logiciel qui a ses vapeurs, et +qui parfois refuse d'imprimer. Des fois, ça marche. Souvent, ça ne marche pas. +
+
+Quand il ne veut pas imprimer, il crée un fichier PostScript dans son
+répertoire axhome/
(Hublot, n° 9). Par exemple, s'il ne parvient
+pas à imprimer rapport.rtf
, il va créer dans axhome/
le
+fichier rapport.rtf.ps
. Un PostScript s'imprime avec
+lpr
6.
+
Il suffit de mettre le transparent +dans le tiroir à la place du papier. Attention! N'utilisez que des +transparents certifiés HP, pour imprimantes, sinon le plastique fondra. +
+Émilia Robin
+Vous pouvez aussi consulter la page des tuteurs appelée «Imprimer»: /tuteurs/unix/imprimer.html
.
+
Comme d'habitude, le risque n'est pas tant de +pirater que de vous faire pirater. Quand vous vous connectez à distance, +vous tapez votre mot de passe, que les câbles transportent docilement +jusqu'à la machine sur laquelle vous voulez vous connecter. Comme les +lettres transitent en clair, sans chiffrement, il est très facile +d'espionner ce qui circule sur un câble et de récupérer les mots de +passe (que ce soit lors d'un telnet ou quand vous vous connectez à un +serveur POP ou IMAP pour lire votre courrier). +
++Il est même possible de reconstruire des sessions telnet afin par exemple +de prendre les mots de passe, et aussi d'espionner ce que fait la +personne qui se connecte. +
+Donc, quand vous vous connectez depuis une grande +université avec un gros réseau ou quelque chose comme ça, vous courrez +toujours un risque. Il y a donc deux mesures qui s'imposent: +
+slogin
à la place de rlogin
, il y a
+juste une lettre à changer, et les transmissions seront chiffrées.
+Évidemment, il faut que ce logiciel soit installé.Enfin, et c'est ce que nous allons expliquer ici, utilisez des logiciels +sécurisés. Utiliser ssh n'est pas plus difficile qu'utiliser telnet. En +particulier, le programme ssh pour Windows, en plus d'être sécurisé, est +nettement plus agréable à utiliser que le telnet standard.
+slogin
+
+Une des principales activités auxquelles sert telnet, c'est se loguer sur
+un ordinateur. Ce qui implique que le serveur envoie la question
+«login:
» et «password:
» au client, et que l'utilisateur
+saisisse tout ça (exactement comme s'il était directement devant l'autre
+ordinateur). Certaines étapes peuvent être économisées. En particulier,
+le login (et éventuellement le mot de passe) peuvent être indiqués une
+bonne fois pour toutes au client, pour qu'il les envoie automatiquement
+au serveur.
+
+Pour introduire quelques points de confort supplémentaires, le protocole +SSH (Secure SHell) a été mis au point. Il utilise des techniques +de cryptographie solides pour assurer l'authenticité et la sécurité de ce qui +circule. +
+
+La commande slogin
(secure login) repose sur SSH. Deux
+cas: si vous avez des clés SSH, il s'en sert et demande votre passphrase
+(voir plus bas); si vous n'avez pas de clé SSH, il chiffre l'ensemble de
+la transmission (mot de passe et toutes les données qui circulent).
+
Sur une machines Unix, pour se
+connecter à une machine nommée (au hasard, clipper.ens.fr
), il suffit
+de taper:
+
chaland ~ $ telnet clipper.ens.fr +chaland ~ $ slogin clipper.ens.fr +chaland ~ $ ssh clipper.ens.fr ++
Par défaut, SSH et slogin
utilisent votre login actuel.
+Pour en préciser un autre (par exemple si vous avez un login différent à
+la fac et ici), il faut utiliser l'option -l
(«l» comme
+«login»):
chaland ~ $ ssh -l george clipper.ens.fr
+
+ +J'en vois déjà qui essaient le login de leur voisin; il restera +évidemment à votre charge de prouver que vous avez le droit de vous +connecter.
+ Notons enfin qu'à certains endroits (en France), il faudra écrire
+ssf
au lieu de ssh
(SSF est une version de SSH
+déposée au Ministère de l'Intérieur).
+À l'École, comme nous avons un administrateur (très) compétent, +et pas trop de gens mal intentionnés, certaines facilités sont proposées: +d'une part, entre les machines du réseau élèves le mot de passe est +inutile, et d'autre part des liens ont été mis en place, qui permettent +de se connecter directement en tapant le nom de la machine: +
+chaland ~ $ vedette
+
+ On trouve du SSH pour Windows:
+http://www.zip.com.au/~roca/ttssh.html
.
+
+Sur un Macintosh, on peut télécharger un programme pour SSH (qui fait
+aussi telnet):
+http://www.lysator.liu.se/~jonasw/freeware/niftyssh/
.
+
+La première fois que vous vous connectez depuis une machine A vers une +machine B, A va relever la «signature» de B, et vous demander si vous +l'acceptez. Si vous vous connectez sous Unix, il faut pour ça taper «yes» +en toutes lettres. Les fois suivantes, A se contentera de comparer la +signature de B avec celle qu'elle connaît, pour vérifier l'authenticité. +
++À noter, pour l'École: comme les signatures sont gardées dans un fichier +sur votre compte, le fait de connaître une machine donnée est commun à +toute une salle (mais pas le fait d'être connue). +
+
+ SSH connaît un mécanisme de clés un peu compliqué, mais très
+pratique à la longue. À la base, on a un programme, ssh-keygen
+(générateur de clés de SSH). Ce programme crée deux fichiers, qui contiennent
+respectivement une clé publique et une clé privée.
+
+La clé privée est secrète, et doit être gardée jalousement. Elle reste +sur la machine A. +
++La clé publique n'est pas particulièrement secrète, mais il n'est pas non plus +utile de l'exposer au grand jour. Pour s'en servir, il suffit de mettre la clé +publique au bon endroit sur une machine, et quiconque a la clé privée peut s'y +connecter. Elle se trouve donc sur la machine B, et en fait partout où vous +voulez vous connecter. En outre, la clé privée peut être elle-même dotée d'un +mot de passe (passphrase). +
+ En pratique, on commence par lancer ssh-keygen
sur la
+machine A, et on bouge la souris jusqu'à ce qu'il ait fini7.
+
+Il nous demande alors le nom d'un fichier où sauver les clés nouvellement
+créées. Par défaut, il propose ~/.ssh/identity
. Si vous ne comptez
+utiliser qu'une clé publique (qui peut servir sur plusieurs ordinateurs),
+c'est un nom pratique. Il demande également une passphrase pour la clé.
+La passphrase est en théorie nécessaire à chaque fois qu'on utilise la
+clé, mais nous verrons un peu plus loin comment alléger ça. On peut
+aussi ne pas mettre de passphrase du tout.
+
+Quand c'est fini, ssh-keygen
écrit la clé privée dans le
+fichier ~/.ssh/identity
, et la clé publique dans le fichier
+~/.ssh/identity.pub
(ou tout autre paire de noms formée de la même
+manière que vous auriez indiquée). Chacun de ces fichiers contient en
+fait une longue ligne de texte.
+
Pour vous loguer avec SSH sur la machine B, il suffit d'ajouter le
+contenu de identity.pub
de la machine A dans le fichier
+~/.ssh/authorized_keys
de la machine B. Attention à ne pas
+laisser ce fichier en lecture libre pour le reste du monde (voir le
+numéro 4 du Hublot: /tuteurs/docs/hublot/hublot4.html#concept
).
+
+Vous pouvez maintenant vous loguer sur la machine B en tapant
+ssh clipper.ens.fr
. SSH vous demande votre passphrase, à moins
+que vous n'en ayez pas mis.
+
Pour simplifier ces
+histoires de clés, et de mots de passe, il existe quelque chose qui
+s'appelle l'agent SSH. C'est un programme, ssh-agent
, qui tourne
+en arrière plan sans déranger personne. Quand SSH a besoin d'une clé,
+il la lui demande d'abord, vous n'avez donc pas à l'indiquer
+explicitement. En outre, vous ne tapez qu'une seule fois votre
+passphrase.
+Ceci est un peu abstrait, voyons d'abord comment lancer ce fameux client
+SSH. Si vous avez la config conscrits 2000, ssh-agent
est
+déjà lancé quand vous vous loguez physiquement sur une machine du réseau
+élèves. Si vous n'avez pas cette config, il faut alors modifier le fichier
+.profile
: cherchez une ligne disant exec $STARTX
, et
+insérez: exec ssh-agent $STARTX
(mais récupérer la config conscrits
+serait aussi une bonne idée). Ceci signifie qu'il restera actif tant que
+startx
continuera à tourner, ce qui veut dire jusqu'à ce que vous
+partiez.
+Ensuite, tapez ssh-add
pour fournir votre passphrase à l'agent
+SSH. Tant que vous resterez logué, vous n'aurez plus besoin de fournir
+cette passphrase; c'est l'agent SSH qui se charge de la donner lors de
+vos connexions vers les machines B.
+
+Si vous êtes conscrits 2000, éditez votre fichier .xinitrc
et
+décommentez* cette ligne, en supprimant le dièse du début (cherchez cette
+ligne vers la ligne 92):
+
+#sleep 3 && ssh-add </dev/null & ++
+Au moment où vous vous loguerez sur la machine A, celle-ci vous demandera +votre passphrase, et vous n'aurez plus rien à taper pour toutes vos +connexions. +
+Nicolas George
+%
, en HTML les commentaires sont insérés entre
+<!--
et -->
. Dans les fichiers de
+configuration qui indiquent la taille de vos fenêtres, leur couleur, etc,
+les lignes de commentaires commencent le plus souvent par #
+ou "
.+Le Hublot est le journal des tuteurs informatique de l'ENS. Il +paraît chaque mois à 350 exemplaires. Il est également disponible sur le Web: +
++Rédaction: Émilia Robin. +
++Ont collaboré à ce numéro: Jacques Beigbeder, Nicolas George, David Madore, +David Monniaux, Thomas Pornin, Laurent Rineau, Olivier Verzelen. +
++Merci à Nicolas Thiéry pour ses relectures. +
++ Le Hublot est le journal des tuteurs informatique de l'ENS. + Il paraissait tous les mois depuis la rentrée 1999 et ce jusqu'en + février 2001. Il était tiré à environ 250 exemplaires ; rédactrice en + chef : Émilia Robin, rédacteurs adjoints : Thomas Pornin, Nicolas + George. +
++ Nous mettons à votre disposition ces numéros sous forme de pages Web + et aussi au format PostScript. +
+Ces tableaux ne proposent pas un sommaire complet du Hublot, +mais un sommaire des principales rubriques au long de l'année. +Reportez-vous aux Sommaires complets, et aux +Autres sujets, pour les autres articles.
+Numéro | +Commandes utiles | +Config conscrits | +LaTeX | +Comment... | +Internet | +Forum | +Cours ordinateurs | +Sécurité | +
---|---|---|---|---|---|---|---|---|
8 | ++ pot, qui, anniversaire, etc + | ++ Récupérer la config + | ++ Bibliographie + | ++ Écrire (éditeurs de texte) + | ++ Introduction + | ++ Qu'est-ce que c'est + | ++ Présentation + | ++ Mots de passe + | +
9 | ++ ls, cd, mkdir, rmdir + | ++ Les fenêtres + | ++ Compilation + | ++ Écrire: traitements de texte + | ++ Courrier électronique + | ++ Les contis + | ++ La mémoire et les bus + | ++ Droits + | +
10 | ++ cp, rm, mv + | ++ Copier-coller + | ++ Packages + | ++ Disquettes + | ++ Web + | ++ lire les contis + | ++ Le processeur + | ++ Crypter + | +
11 | ++ qui-5.0, less + | ++ Raccourcis claviers + | ++ Taille de la page + | ++ Calculer + | ++ News + | ++ Poster + | ++ Écran, clavier, souris + | ++ PGP (sur la page de David Madore) + | +
12 | ++ screen + | ++ | + Images + | ++ Imprimer + | ++ Telnet + | ++ Netiquette + | ++ Le disque dur, les disquettes + | ++ ssh + | +
+En dehors des rubriques habituelles et du lexique, +le Hublot propose divers articles : +
+Ils sont là, ils sont parmi nous, depuis toujours ils nous observent. +Plus fort encore que le scoop sur la lactation des ornithorynques, voici +toute la vérité sur l'odieuse machination qui menace le monde libre, j'ai +nommé le Complot du Grand Pingouin. La fin des Temps est proche.
+hublot
écrite par
+Nicolas George et Florent Hivert ;hevea
par Olivier Verzelen. On appelle alias une
+traduction que vous définissez pour un mot que vous tapez en ligne de
+commande; c'est le plus souvent un raccourci. Par exemple, si vous tapez
+rm
, la machine comprendra rm -i
. Les alias qui
+sont définis de façon permanente le sont dans le fichier
+.zshrc
de votre compte (config conscrits). La commande
+alias
permet d'avoir la liste des alias actuellement
+définis.
On mesure en +bauds le débit des modems. Grosso-modo, 1 baud équivaut à 1 bit par +seconde. Les modems actuels peuvent monter à 57 600 bauds, mais c'est +rare (il faut des lignes téléphoniques de très bonne qualité). +Couramment, on fait du 28 800 bauds. Comme 8 bits font un octet +(c'est-à-dire un caractère), un modem courant fait du 3 600 caractères à +la seconde, soit environ 3,5 Ko.
+Le cache est un espace de stockage +où le navigateur garde une copie des pages récemment visitees, afin +d'accélérer leur chargement lors de la consultation suivante (il suffit +alors de vérifier que la page n'a pas changé plutôt que de la télécharger +de nouveau).
+Il y a en fait deux types de cache: d'une part un +cache en mémoire vive, qui ne conserve les données que durant une session +de navigation, et d'autre part un cache disque (parfois désactivé pour +économiser de la place) qui est conservé d'une session à l'autre. +
+%
, en HTML les commentaires
+sont insérés entre <!--
et -->
. Dans les
+fichiers de configuration qui indiquent la taille de vos fenêtres, leur
+couleur, etc, les lignes de commentaires commencent le plus souvent par
+#
ou "
.+C'est un espace spécial qui, placé entre une ponctuation et un mot, +empêche le mot et la ponctuation d'être séparés par un retour à la ligne. +
+Il +existe deux sortes de langages de programmation: les langages compilés et +les langages interprétés. Les langages compilés fonctionnent selon le +principe suivant: le programmeur écrit le code du programme, puis on +passe par une étape de compilation, c'est-à-dire de traduction +du code en langage machine. On dispose alors d'une part du code source du +programme, que l'on peut modifier et recompiler, d'autre part d'un +exécutable, illisible par un humain, mais compréhensible pour +l'ordinateur.
+Quand vous achetez un logiciel dans le commerce, +vous achetez un exécutable produit à partir d'un code source, dont vous +ne disposez pas. Vous pouvez utiliser le logiciel, le recopier, mais pas +le modifier. Ce n'est pas vrai pour les logiciels libres.
+C'est un sigle anglais +(Frequently Asked Questions, questions fréquemment posées»), +adapté en français comme «Foire Aux Questions». Comme son nom l'indique, +cela désigne une liste de questions courantes à propos d'un sujet donné. +
+Quand vous arrivez quelque part sur Internet (un groupe de +discussion, une page Web, etc), il faut commencer par lire la FAQ: dans +90% des cas, quelqu'un d'autre a déjà rencontré le même problème que +vous, et la réponse existe déjà...
+ Fichier
+définissant et personnalisant le comportement de certains programmes
+(.pinerc
, .ytalkrc
...). Le rc
veut
+dire run command.
Ce sont aussi les fichiers de
+configuration qui définissent la taille, la couleur et l'emplacement des
+fenêtres, les menus de fond d'écran, les couleurs de ls
,
+etc. On détaillera ces fichiers de configuration dans le numéro 13 du
+Hublot, en mars 2001.
C'est un acronyme qui veut dire
+«GNU's not Unix». Le projet GNU est un projet visant à écrire un système
+d'exploitation libre complet. Ses participants ont commencé par écrire
+un certains nombres de logiciels et d'utilitaires permettant le
+développement du système proprement dit (Hurd), dont la sortie est une
+arlésienne... En attendant, ces utilitaires existent (GNU emacs,
+GNUchess, gzip
, des versions de less
,
+grep
, tar
, etc).
Les promoteurs du +projet sont la Free Software Fundation (FSF), avec Richard Stallman à sa +tête.
+ Les gourous sont un groupe
+d'élèves ou d'anciens élèves volontaires pour installer un certain nombre
+de logiciels sur les machines Unix, comme pine
,
+mutt
, gnuplot
, xfig
,
+ytalk
, les éditeurs de texte, les jeux, les gestionnaires de
+fenêtres, des utilitaires comme less
, screen
,
+ledit
...
Ils s'occupent également, en collaboration +avec le SPI, de la modération des courriers collectifs. Ce sont aussi les +gourous qui font la config conscrits.
+General Public License. +C'est une des licences de diffusion des logiciels libres, notamment +Linux et les utilitaires GNU. Un logiciel couvert par cette licence peut +être utilisé, recopié, modifié, redistribué (gratuitement ou non) ou +inclus dans un autre, à condition que le code source du logiciel avec ses +modifications éventuelles soit tenu à la disposition de tout +récipiendaire, aux termes de cette même licence.
+Le but de cette +licence est de promouvoir le logiciel libre, en empêchant de réutiliser +tout ou partie d'un logiciel sous GPL dans un logiciel qui ne le soit +pas.
++L'interface est ce qui permet la communication entre l'ordinateur et +l'utilisateur. Avec une interface graphique, un «geste» informatique +(déplacer un fichier, lancer un logiciel) correspond à un «geste» +physique (faire glisser une icône, cliquer sur un bouton qui représente +le logiciel).
+On utilise les ressources du graphisme pour +ordonner le travail, par exemple : une fenêtre pour chaque logiciel, une +couleur pour ce qui est activé et une autre pour ce qui n'est pas activé, +une thématique pour chaque icône, permettant de retrouver rapidement la +fonction du logiciel (comme papier et crayon pour un traitement de texte, +palette pour un logiciel de dessin, etc.).
+C'est un environnement graphique +développé pour Unix, et très ressemblant à Windows, tant par l'aspect que +par les ressources qu'il consomme. Il regroupe à la fois un bureau, un +certain nombre d'applications de base (courrier électronique, gestion des +fichiers...) et des applications plus lourdes (traitement de textes...). +
+ L'environnement lui-même n'est pas installé à l'École, mais
+certaines des applications le sont quand même (jeux, utilitaires comme le
+gestionnaire de fichiers kfm
, le générateur de fractales
+kfract
, etc).
Il y a d'autres projets proposant +une interface graphique agréable pour machines Unix; citons Gnome, +Afterstep, WindowMaker.
+Un logiciel libre est un logiciel +que l'on peut copier, modifier et distribuer librement. Le modifier +implique de pouvoir disposer du code source du logiciel, et pas seulement +de l'exécutable. On peut revendre commercialement un logiciel libre; +dans ce cas, c'est un service que l'on vend (pressage du CD-ROM, +documentation, service après-vente...), et non pas le logiciel lui-même. +Un logiciel libre n'est donc pas obligatoirement gratuit.
++Là-dessus se greffe la notion de copyleft (par opposition à +copyright): en plus d'être libre, le logiciel est sous une licence (telle +que la GPL) qui garantit que les versions dérivées seront également +libres. Des exemples de logiciels libres: pine, mutt, +LATEX, netscape, linux, gimp, xkobo...
+ C'est une abréviation pour
+«manuel». Les pages de man sont les pages qui documentent un programme,
+ou une commande. Par exemple, pour connaître toutes les options de
+ls
, tapez «man ls
». Les commandes de
+déplacement, recherche, etc, sont celles de less
(voir les
+ exercices sur
+less
).
Les pages de man sont des +références, et pas des didacticiels. Elles sont donc souvent +difficiles à lire, d'autant qu'elles sont en anglais. Dans les +distributions francophones de Linux, un certain nombre de pages de man +ont été traduites.
+C'est un système électronique qui +permet de connecter un ordinateur au réseau téléphonique, pour lui donner +accès à l'Internet.
+Est bas +niveau ce qui est proche du matériel. Est haut niveau ce qui est proche +de l'utilisateur.
+Le noyau +(kernel) est le coeur du système. C'est lui qui gère le matériel +pour les besoins des applications. Il est la partie principale du système +d'exploitation.
+Ensemble de fonctions qui +peuvent être incorporées à LATEX pour faire une +tâche particulière (police spéciale, colonnes, etc...). Les packages +LATEX seront expliqués dans le prochain numéro. +
+Se dit d'une option, d'un +comportement, etc, qui est choisi tant que l'utilisateur n'a pas fait +explicitement mention du voeu contraire. Ces choix ont été faits par +l'administrateur (dans le cas de la config conscrits, par des gourous). +
+ «Par défaut, le logiciel de courrier de la config conscrits est
+pine
» (c'est lui qui est lancé quand on clique sur
+«Courrier»). «Par défaut, la config conscrits lance une seule grande
+fenêtre». «Par défaut, la fiche annuaire figure aussi dans l'annuaire
+électronique».
Première +définition, pour expliquer à quoi ça sert : un port est une +sous-adresse, comme une boîte aux lettres dans un immeuble.
++Seconde définition, technique : un port est un numéro qui définit, à +l'intérieur d'une machine donnée, un point sur lequel un programme peut +attendre des connexions de l'extérieur ou depuis lequel il peut en +établir. La donnée du numéro IP de la machine et du port TCP constitue +l'analogue d'un numéro de téléphone vers lequel ou depuis lequel on peut +établir des connexions.
+Contraire de libre... Le +logiciel et son code source appartiennent à une société. On parle aussi +de «matériel propriétaire» : les ordinateurs TotoTM n'acceptent que du +matériel TotoTM (barrettes de mémoire, cartes, etc).
+Dialecte commun à des machines +pour permettre leur communication.
+Programme servant à automatiser +des tâches répétitives, généralement simple. Principales +caractéristiques: le langage utilisé interprète directement le script, de +manière transparente, sans avoir besoin de passer par un traducteur +externe; les constructions utilisées sont généralement de haut niveau par +rapport à un langage de programmation traditionnel, et collent plus avec +la notion de «faire telle tâche, puis telle autre».
+ Le shell est
+le programme qui interprète les commandes tapées au clavier. Selon le
+cas, il peut exécuter le programme demandé (pine
,
+ls
, date
...), demander confirmation (avant
+d'effacer un fichier par exemple), corriger la syntaxe
+(netscape
et pas nestcape
), afficher un message
+d'erreur comme «command not found
», etc. On peut aussi
+écrire des programmes (appelés scripts), dans le langage du shell, pour
+créer de nouvelles commandes, automatiser des tâches, ou autres.
Un shell est lancé dans chacun des terminaux que vous ouvrez. Pour
+quitter le shell, il suffit de taper ^D
, ce qui aboutit en
+pratique à fermer la fenêtre, car plus aucun programme ne tourne dedans.
+
C'est le logiciel qui fait tourner l'ordinateur «en dessous» des +applications dont se sert l'utilisateur (comme les logiciels de courrier, +les traitements de texte), et en dessous de l'interface graphique. On dit +aussi «OS» (operating system).
+Le système +d'exploitation d'Apple pour Macs s'appelle MacOS, celui d'IBM pour PC +s'appelle OS/2. Le système d'exploitation de Microsoft pour PC est +DOS/Windows; à l'origine il n'y avait que le DOS, qui fut complété par +Windows, interface graphique désormais complètement intégrée au système +d'exploitation.
+Un autre type de système d'exploitation est le +système Unix. Unix est en fait une famille qui comprend entre autres +Solaris (Unix de la société Sun), AIX (Unix de la société +Hewlett-Packard), Linux (Unix libre, disponible +gratuitement, et aussi commercialisé par des sociétés comme RedHat, SuSE, +Caldera, Debian...), FreeBSD, OpenBSD et NetBSD (d'autres Unix libres), +Hurd (Unix libre du projet GNU).
+Zone du disque dur où le système +stocke automatiquement la mémoire peu utilisée, afin de garder la vraie +mémoire, rapide, pour ce qui sert vraiment. Par exemple, un terminal +auquel on n'a pas touché depuis longtemps est souvent vidé de la mémoire, +et met quelques secondes à revenir quand on veut s'en servir.
+Un programme lancé +dans un terminal peut être en mode texte, auquel cas il s'affiche dans la +fenêtre où il a été lancé. Pour sa mise en page, il utilise le jeu de +caractères disponibles, c'est-à-dire les caractères alphanumériques et +les ponctuations. Il peut être en couleurs ou en noir et blanc. Certains +logiciels en mode texte peuvent s'utiliser avec la souris, possèdent des +menus déroulants, etc. Ils s'utilisent cependant le plus souvent avec le +clavier. Pine est un logiciel de courrier en mode texte.
+Par +opposition, un logiciel en mode graphique se lance dans une nouvelle +fenêtre, s'utilise avec la souris, et propose divers moyens graphiques +(fontes, couleurs, icônes) pour son utilisation, comme Netscape. +
+Uniform Resource Locator.
+C'est ce que les médias appellent une «adresse Web», C'est un bout de
+texte, possible à taper au clavier, qui indique comment accéder à un
+document ou une autre donnée. Les plus courantes sont en
+«http://
», ce qui indique le protocole (pour ce mot, voir le
+numéro 9 du Hublot) à utiliser, et précisent un ordinateur à
+contacter et le fichier à lui demander.
Un visualisateur d'images est un
+logiciel capable d'afficher des images. Sur les stations Sun, nous
+utilisons xv
. Un visualisateur d'images inclut le plus
+souvent des fonctions de retouche (agrandir, convertir en un autre
+format, etc.).
ls
+ cd
+ chmod
+ ps
, top
et
+priorités
+ rm
+ ispell
et gospell
+ file
+ qui
+ less
+ screen
+ slogin
+ Cette partie du site des tuteurs informatique contient diverses +documentations papier que nous avons rédigées depuis la création des +tuteurs.
+Vous y trouverez notamment tous les numéros du Hublot (le journal des +tuteurs informatique), les guides de survie (des petites documentations +d'une page sur divers sujets) et les articles que nous avons publié dans +le BOcal. +
+Les numéros du Hublot sont disponibles sous +formes de pages Web et en PostScript. Les guides de +survie le sont uniquement en PostScript tandis que les articles du BOcal le sont seulement sous forme de pages Web. +
+ ++Sur cette page, vous trouverez des guides de survie sur différents +sujets. Ils consistent en une présentation synthétique en une page. +
+flrn
+(écrit par Damien Massé, ancien élève de l'École) pour lire les articles du
+forum des élèves et pour poster dedans.
+clipper
à
+Jourdan/Montrouge ?
+
+ .procmailrc
sur clipper
, que
+dois-je en faire maintenant ?
+ +Cette FAQ s'adresse à vous si vous êtes thurné à Jourdan ou +Montrouge. Il y a en effet des problèmes particuliers liés au fait que +ce ne sont pas les mêmes systèmes de fichiers qu'à Ulm. Nous avons +essayé d'expliquer les choses de la manière la plus claire +possible. Si toutefois vous n'y comprenez rien, n'hésitez pas à nous +écrire. +
++C'est normal : les fichiers à Jourdan et à Montrouge ne sont +pas les mêmes que ceux que vous avez à Ulm. Ce sont trois +systèmes de fichiers différents, en quelque sorte trois mondes +distincts. La raison est simple. +
+
+Il y a dans chaque salle informatique une machine unique qui
+centralise les fichiers, de telle sorte que toutes les machines de la
+salle soient équivalentes pour les utilisateurs. C'est pour ça que
+vous avez les mêmes fichiers d'une machine sur l'autre à Ulm : ils
+sont centralisés par la machine clipper
. À Jourdan, les
+fichiers sont centralisés par vedette
, et à Montrouge,
+par paquebot
.
+
+Mais la connexion Jourdan-Ulm et Montrouge-Ulm est plus lente que celle entre
+deux machines du même site, ce qui rend difficile de centraliser les fichiers
+entre les sites. C'est pour ça que votre lecteur de mail ne voit pas de
+courrier : celui que vous avez reçu jusqu'alors est à Ulm, sur
+clipper
.
+
Comme depuis l'extérieur de l'école.
++Il est aussi possible de transmettre votre mail d'Ulm à Montrouge/Jourdan, +pour qu'il arrive vraiment sur les machines de Montrouge/Jourdan à la place +(ou en plus) de celles d'Ulm. C'est ce qu'on appelle forwarder son mail. Réfléchissez bien avant de le faire : +vos archives de mail vont être plus compliquées à gérer si elles sont +réparties entre Ulm et Montrouge/Jourdan, et la lecture de votre mail depuis +Ulm (l'an prochain, ou quand vous y êtes de passage) risque d'être plus +difficile. +
+.forward
local (nedit .forward
par
+exemple), effacez son contenu et écrivez à la place
+monlogin@paquebot
(si vous êtes à Montrouge) ou
+monlogin@vedette
(si vous êtes à Jourdan)sas
(en tapant
+sas.eleves
) depuis votre ordinateur à Jourdan/Montrougesas
un fichier .forward
+(lancez un éditeur de texte comme nano
et sauvegardez le
+fichier comme .forward
, n'oubliez pas le point du début,
+il est important) et dans ce fichier, écrivez
+monlogin@paquebot
(si vous êtes à Montrouge) ou
+monlogin@vedette
(si vous êtes à Jourdan)N'oubliez pas l'étape 3. Sinon, vos mails seraient +renvoyés sans cesse entre clipper et paquebot/vedette, et vous n'en +verriez jamais la couleur...
+clipper
à
+Jourdan/Montrouge ?
+
+
+Attention, la procédure est un tantinet longue et compliquée. Ceci est
+nécessaire pour éviter d'abîmer vos données, ou de perdre des mails en
+route. Dans toute la procédure qui suit, utilisez
+'paquebot'
si vous êtes à Montrouge, mais remplacez par
+'vedette
' si vous êtes à Jourdan.
+
paquebot ~ $ lockfile -ml
+
+
+Vérifiez que votre boîte aux lettres sur paquebot
est
+vide (encore une fois, si ça n'est pas le cas, ne
+continuez pas, vous perdriez votre courrier !).
+
+paquebot ~ $ du -a /var/mail/monlogin
+0 /var/mail/monlogin
+
+
+Pas de problème également si du
vous répond : « No such
+file or directory ».
+paquebot
, éditez votre fichier
+.forward
(nano .forward
par exemple) pour y
+taper monlogin@paquebot
. Effacez le reste.
+sas
(il suffit de taper « sas.eleves »)
+puis tapez :
+
+sas ~ $ scp paquebot:.forward ~
+
+
+sas ~ $ lockfile -ml
+
+
+sas ~ $ scp /var/mail/monlogin paquebot:/var/mail
+
+
+Évidemment, remplacez 'monlogin' par votre propre login.
+paquebot
, tapez :
+
+paquebot ~ $ lockfile -mu
+
+
+puis, une dernière fois sur sas
:
+
+sas ~ $ lockfile -mu
+
+
+
+Pour information, lockfile -ml
verrouille votre boîte aux
+lettres, et lockfile -mu
la déverrouille.
+
.procmailrc
sur clipper
, que
+dois-je en faire maintenant ?
+
+Il suffit de transférer votre fichier .procmailrc
sur
+vedette
/paquebot
(suivant que vous êtes
+respectivement à Jourdan ou Montrouge). Depuis votre ordinateur à
+Montrouge/Jourdan, tapez :
+
vedette ~ $ scp sas.eleves:.procmailrc .
+
+
+N'oubliez pas le point final, qui indique à scp
qu'il
+doit copier votre fichier ici. Si vous souhaitez davantage
+vous familiariser avec ssh
et scp
(transfert
+de données sécurisé), lisez notre page SSH.
+
clipper
depuis Montrouge
+
+C'est possible avec ssh
, qui peut exporter des programmes
+graphiques (vous lancez un logiciel sur une machine, et l'affichage se
+fait sur une autre machine). Mais attention : la connexion entre Ulm
+et les autres sites est lente, ce n'est pas donc pas très
+souhaitable. Le mieux est de transférer le(s) fichier(s) concernés sur
+votre machine à Jourdan/Montrouge, et de lancer le programme graphique
+localement. Vous pouvez faire le transfert avec ssh
.
+
+C'est que vous avez utilisé xpdf
ou acroread
+en « export display » (c'est-à-dire lancé depuis Ulm via ssh
). Le
+logiciel croit que vous êtes à Ulm, il imprime donc à Ulm, c'est
+normal.
+
+Pour pouvoir imprimer le fichier en question, il faut d'abord le +transférer sur la machine locale (celle que vous utilisez à +Jourdan/Montrouge) : +
+vedette ~ $ scp sas.eleves:monfichier.pdf .
+
+ +Vous pouvez ensuite imprimer tranquillement à Jourdan/Montrouge. +
+
+Vous pouvez obtenir cette information avec la commande
+lpq
. Par exemple, sur vedette
:
+
vedette ~ $ lpq
+Printer: jourdan@vedette 'lp'
+ Queue: no printable jobs in queue
+ Status: server finished at 10:48:02
+
+
+Ceci vous indique que l'imprimante de Jourdan s'appelle
+jourdan@vedette
(et que par ailleurs, personne n'a lancé
+d'impression).
+
+À noter que vous n'avez pas besoin de préciser le nom de +l'imprimante : par défaut, l'impression se fait sur l'imprimante de la +salle où vous êtes logué. Vous pouvez lire notre page « Imprimer » pour en savoir +plus. +
+
+Attention à ne pas lancer d'impression dans une fenêtre où vous avez
+une connexion à distance ! Vérifiez sur quelle machine vous êtes en
+regardant le prompt (ou « invite de commande »), qui donne cette
+indication. Sur brick
, par exemple, vous voyez ceci :
+
+ brick ~ $
+
+
+Au pire, si vous vous apercevez que, par exemple, vous avez lancé une
+impression sur clipper
, annulez-la :
+
lpq
pour savoir quel numéro d'identité (dans
+la colonne « Job ») a été attribué à votre demande d'impressionlprm <numéro>
, où <numéro> est
+celui relevé avec lpq
++ Les protections mises en place par le CRI ne sont pas les mêmes sur les différents sites. + Il y a fréquemment problèmes à Jourdan et Montrouge avec les logiciels utilisant le protocole UDP (en particulier jeux vidéos et logiciels de VoIP), car ce protocole est fortement restreint sur les sites de Jourdan et Montrouge, alors qu'il l'est bien moins à Ulm. +
++ Essayez de lancer le logiciel en allant en salle informatique au C7. La salle informatique est gérée par le SPI, et n'a pas les mêmes restrictions que le rézo des thurnes. +
+
+Pour toute question précise, n'hésitez pas à poster dans le conti
+ens.forum.aide
de forum. Pour savoir ce qu'est forum,
+allez ici. Vous gagnerez
+aussi à lire le tutorial flrn avant
+cette FAQ si vous débutez. Enfin, vous pouvez lire avec profit les
+pages suivantes :
+
flrn
est un lecteur de news écrit par deux archicubes,
+Damien Massé et Joël-Yann Fourré, spécialement pour lire forum. Il
+peut avidemment être utilisé pour lire les news extérieures
+(Usenet). À l'heure actuelle, c'est Damien Massé qui maintient ce
+programme.
+
flrn
commencent toutes
+par « \ », sauf les commandes qui changent localement la
+configuration, lesquelles commencent par « : ». flrn
peut compléter
+les commandes. Ainsi, \art-m
suivi de TAB
+complètera en \art-msgid
.
+Pour des raisons historiques, on appelle « contis » (comme continuum) ce que sur Usenet on appelle des « groupes de +discussion » ou des « forums »). +
+Voir notre doc sur crosspost et +followup.
+Un « crosspost » (Xpost en abrégé) est le fait de poster un même +message dans plusieurs groupes à la fois. Il est normal de +cross-poster dans le cadre d'un Followup (voir ci-dessus), mais c'est +Mal si on se contente de spammer forum : si les gens ne font pas +attention, le crosspost se perpétuera, gênant ainsi les lecteurs des +groupes non concernés et gaspillant des ressources. Mieux vaut mieux +cibler le conti dans lequel on écrit.
+Deux cas de figure :
+g
+(goto), et flrn
passe au groupe suivantz
+comme zap, et tout le conti est marqué comme lu
+Reportez-vous à notre page « Créer un nouveau
+conti », tout y est indiqué en détail. Vous pouvez également vous
+reporter à la source, le message du Compte Forum
+(<bpik14$5mg$12@clipper.ens.fr> alias
+syst.forum:7237
)).
+
Si vous avez des remords, il faut annuler votre article, ce qu'on
+appelle « faire un cancel ». Pour annuler l'article
+que vous lisez, appuyez sur e
. flrn
demande confirmation
+du cancel.
On ne peut annuler que ses propres messages. Pour les autres, dans +le cas des contis sérieux, c'est le blast qui +existe.
+Il faut faire un supersedes (pour savoir d'où vient le nom, voir
+notre doc sur les
+en-têtes de Forum). Un supersedes annule un article et en reposte
+un autre dans la foulée. Il est utile si vous avez oublié quelque
+chose dans votre message, si vous souhaitez corriger des fautes
+d'orthographe... Il suffit de taper \supersedes
sur le
+message, puis de reposter. Attention : le deuxième article ne garde
+pas le même message-ID. Si quelqu'un répond à votre premier article
+pendant que vous tapez le second, le fil de la discussion sera
+brisé...
C'est ce qu'on appelle le Message-ID de l'article, ID pour identité
+(voir notre doc sur les en-têtes de
+Forum). Il faut utiliser la commande \art-msgid
+(touche y
dans la config conscrits) suivi du message-ID
+(ne pas oublier les cornets < >
qui en font
+partie).
+
+De manière générale, quand vous indiquez dans forum la référence d'un +message, donnez aussi bien le message-ID que la référence dans le +conti. Ainsi, pour le message dont il est question, il vaut mieux +dire : « Va voir histoire:458 (alias +<8ja3ro$97m$1@clipper.ens.fr>). » +
+Il est bon de modifier le sujet d'une discussion lorsque celle-ci
+dévie de son sujet d'origine. La modification obéit à des règles
+précises. Prenons un exemple. La discussion de départ porte sur la
+hausse des prix de l'essence. Le champ Subject:
ressemble
+alors à ça :
+Subject: Re: prix de l'essence ++
+La discussion passe ensuite à la couleur des Schtroumpfs, puis à la +masse des neutrinos. On a alors successivement :
++Subject: couleur des Schtroumpfs (was: Re: prix de l'essence) ++
puis :
++Subject: masse des neutrinos (was: Re: couleur des Schtroumpfs) ++
+Si vous ne changez pas de sujet, comment pourrez-vous retrouver plus +tard une discussion sur la masse des neutrinos si elle s'appelle +« prix de l'essence » ou « couleur des Schtroupmfs » ? Inversement, il +est pénible pour les autres que la discussion change de sujet tout le +temps. Et pensez à mettre des titres clairs, qui donnent une bonne +idée de la discussion, en vous abstenant de blagues et jeux de mots +vaseux.
++Notez qu'il ne faut pas accentuer les caractères dans une en-tête, +sous peine de se retrouver avec des caractères bizarres. +
+La touche J me permet de marquer tout l'arbre de messages (le
+thread) comme lu. flrn
passe au thread suivant dans le conti.
+Pour marquer un message comme lu, utiliser la touche k
+(comme kill
).
Le blast est le système de modération adopté par Forum depuis +2000. Pourquoi, comment, tout vous expliqué dans notre page sur la +modération. +
+Qu'est-ce que le .flrnrc
? C'est le fichier de
+configuration de flrn
. Vous en avez déjà un qui contient la
+configuration par défaut définie pour vous par les gourous
+responsables de la « config conscrit. » Votre .flrnrc
+peut se trouver directement dans votre compte
+($HOME/.flrnrc
ou dans un répertoire .flrn
+($HOME/.flrn/.flrnrc
) suivant la config dont vous disposez.
+Il est possible de poster dans forum avec un surnom. Cela ne conduit +pas à l'anonymat, car le login demeure entre parenthèses à côté du +surnom. Pour utiliser un pseudonyme, ajouter dans le .flrnrc :
++name forum set post_name Sauron ++
Si vous avez envie de vous appeler Sauron, bien sûr.
+
+Créez un fichier dans lequel vous écrivez votre signature (appelons le
+.sig_flrn
pour l'exemple). Ajoutez ensuite dans votre
+.flrnrc
:
+
+name forum set sig_file .sig_flrn ++
Votre .sig_flrn
doit contenir le séparateur standard
+de signature, à savoir deux tirets suivis d'une espace :
+-- +Sauron +« Un Anneau pour les gouverner tous » ++
Notez cependant qu'il n'est pas d'usage dans forum d'inclure une +signature, c'est une habitude plutôt venue de Usenet.
+Par défaut, flrn
ne cite pas les signatures des messages (ce qui
+est le comportement standard d'un lecteur de news). Si on veut,
+localement, citer une signature, il faut taper
:set quote_sig+
avant de répondre (notez le
+:
au début de la commande pour modifier une option). Pour
+que ce comportement soit permanent, il faut ajouter dans son
+.flrnrc :
name forum set quote_sig+
Pour sauver un article, il faut appuyer sur
+s
(comme save). flrn
demande alors dans quel fichier on
+veut sauvegarder l'article. Pour que les articles soient sauvegardés
+dans un répertoire spécial, il faut ajouter dans son
+.flrnrc :
+name forum set savepath=/le/bon/chemin/ ++
Le rot13 est une méthode de chiffrement très simple
+qui consiste à décaler toutes les lettres de 13 rangs. a devient ainsi
+n. Le rot13 est parfois utilisé dans forum pour donner la fin d'un
+film, la solution d'une devinette... Ainsi seuls ceux qui veulent
+vraiment lire le font. Si vous avez la config conscrits, la touche
+X
lance un filtre qui vous permet de déchiffrer la partie
+du message en rot13.
Sinon, vous pouvez ajouter dans votre .flrnrc :
++bind X filter rot13 ++
Deux cas de figure :
+\mail-answer
(rappelez-vous, flrn
complète les
+commandes).Cc:
(comme
+« carbon copy », comme dans les en-têtes de mail).Il faut ajouter une en-tête Followup-To:
+poster
quand on répond. La réponse des autres à ce message est
+alors envoyée à l'adresse contenue dans le champ
+From:
Non.
+Un kill-file permet de vous éviter de lire les
+messages de certaines personnes (flrn
marque les messages de cette
+personne comme lus). Pour kill-filer une personne dont le login est
+pikachu, il vous suffit d'éditer .flrn/.flrnkill.forum
et
+d'ajouter les lignes suivantes :
+:.*: +*From: pikachu +Tkilled ++
+Certains groupes de forum sont très gros. Comme flrn
+charge à chaque fois tous les articles du groupe, vous avez droit à
+« Patientez... » pendant 5 minutes avant que flrn
ait
+fini de charger alt.bavardage
. Il y a un moyen de
+remédier au problème : demander à forum de ne charger que les n
+derniers messages. Dans votre .flrnrc
, ajoutez :
+
+name forum set max_group_size <n> ++
...avec <n> le nombre de messages à charger
+à chaque fois. Attention, cette manière de faire à quand même un gros
+défaut : si vous voulez remonter au-delà des n articles, il faut
+quitter flrn
, changer l'option et relancer
+flrn
...
+
Il y a une interface
+web pour faire une recherche. On peut également utiliser la
+commande forumsearch
dans un xterm. Par exemple, vous
+recherchez le terme « Narsil » (l'épée d'Aragorn dans le livre Le
+Seigneur des Anneaux) :
+
sas ~ $ forumsearch Narsil
+
+
+Au bout d'un certain temps (plus ou moins long suivant la recherche),
+forumsearch
vous répond ceci :
+
sas ~ $ forumsearch Narsil
+Exec: /usr/local/util/bin/glimpse -e 'Narsil' -H /var/forum/index-glimpse/ -w
+-i -L 100 -y 2>&1 |
+ens.forum.loisirs.fantasy.tolkien: 265: > Dans le film, cet empoté d'Aragorn
+ a oublié d'emporter Narsil,
+ens.forum.loisirs.fantasy.tolkien: 262: Dans le film, cet empoté d'Aragorn
+ a oublié d'emporter Narsil,
+ens.forum.loisirs.fantasy: 220: also was thrown down, and with the hilt-shard
+ of Narsil [l'épée
+ens.forum.loisirs.cinema: 2554: also was thrown down, and with the hilt-shard
+ of Narsil [l'épée
+
+ Ce qui signifie que vous pouvez trouver le mot
+Narsil dans les article 265 et 262 de
+loisirs.fantasy.tolkien
, dans l'article 220 de
+loisirs.fantasy
et l'article 2554 de
+loisirs.cinema
. Ignorez la première ligne, elle dit
+seulement ce que forumsearch
vient de faire.
+Vous cherchez un message dans un conti donné, mais tout ce dont vous
+vous souvenez, c'est qu'il est écrit par Robert Dugenou. Pour une
+faire une recherche, dans un conti, sur tous les messages postés par
+Robert, tapez /
. flrn
affiche ensuite :
+
+(menu-search) : ++
+Tapez ensuite From:
suivi du nom recherché. flrn
affiche
+ensuite la liste des messages de Robert Dugenou.
+
Il faut d'abord « -- », ensuite une espace (on a dit : +ensuite une espace), ensuite aller à la ligne. Ce qui +donne l'aspect général suivant :
++-- +Pikachu ++
+Ceci est le format standard d'une signature sur les news (les lecteurs
+de news reconnaîtront votre signature comme telle). C'est la
+colorisation prévue dans votre configuration de flrn
pour les
+signatures qui la colore en bleu (ou violet, ou rouge, etc.).
+
Il suffit d'éditer le fichier .flnewsrc.forum
et de
+mettre les contis dans l'ordre où l'on souhaite les lire.
Il arrive parfois, pour des raisons obscures, que flrn
ne
+reconnaisse pas la liste des contis auxquels on est abonné. Ceci se manifeste
+par l'affichage du message inquiétant : « Newsgroup inconnu, supprimé ! ». Il
+faut alors quitter avec la touche Q (majuscule) pour éviter l'enregistrement de
+cette suppression malencontreuse, en espérant qu'au prochain lancement de
+flrn
, les choses rentrent dans l'ordre. Si on a déjà quitté avec
+q, c'est trop tard et il faut se réabonner à la main. Voir
+ens.forum.syst.forum:12728 (alias <h3ceei$d78$1@clipper.ens.fr>).
Remarque à propos de la touche Q : l'utilisation involontaire de la touche Q
+pour quitter est à l'origine d'une autre surprise : On croyait avoir lu certains
+messages, et ils nous sont à nouveau proposés au lancement suivant de
+flrn
.
+Les Foire Aux Questions (FAQ) des tuteurs compilent les questions +fréquemment posées par les élèves. Si vous avez une question à poser +aux tuteurs, la réponse se trouve peut-être déjà dans ces FAQs. +
+Le courrier électronique : comment lire +son courrier à distance, comment ouvrir des attachements divers et +variés, que faire face à une annonce de virus, etc. +
+Lire forum avec
+flrn
. Attention, si vous ne savez pas ce
+qu'est forum exactement, reportez-vous à notre présentation de forum. Si vous
+maîtrisez mal flrn
, mieux vaut lire d'abord notre tutorial à ce sujet.
+
Bien utiliser les salles +informatiques : les réponses à vos problèmes quotidiens +en salle info (imprimer, transférer des fichiers, se loguer et se +déloguer, que faire si une machine est dans les choux, etc). +
++Utiliser les salles de Jourdan et +Montrouge. Jourdan et Montrouge possèdent des systèmes de +fichiers différents de ceux d'Ulm. Cette FAQ vous montre comment lire +votre mail depuis l'un de ces deux sites, transférer vos fichiers, etc. +
+Unicode, UTF-8. Cette FAQ aborde quelques questions +informatiques auxquelles un polyglotte peut être confronté. +
+ +clipper
?
+ Checkpoint file failure - no space left on
+device
?
+ /users/00/maths/toto/profile/USER.DAT
...
+ prenom.nom@ens.fr
.
+ +Cette Foire Aux Questions (FAQ) rassemble les questions fréquemment +posées dans le mail des Tuteurs. Sauf problème exotique, vous +trouverez probablement une réponse à vos questions ici. Nous présumons +que vous utilisez Pine, le +logiciel de mail par défaut de la config conscrits. Dans cette FAQ, on +utilise « toto » pour désigner votre login. +
++N'hésitez pas à nous contacter si cette FAQ vous semble obscure ou +encore incomplète. La seule question idiote est une question qui n'est +pas posée ! +
++Pour toute question concernant des outils Windows, adressez-vous aux +WinTuteurs, qui +seront mieux à même de vous répondre.
+Vous pouvez lire votre mail de l'ENS directement depuis les salles info en +libre service d'Ulm. Pour le lire depuis un autre ordinateur, par exemple +depuis votre thurne, depuis les salles libre-service de Jourdan ou Montrouge, +ou depuis l'extérieur de l'école, il y a essentiellement trois grandes +méthodes.
+ssh
.
+Si vous êtes sous Windows, vous pouvez utiliser PuTTY (cf. la documentation des
+ WinTuteurs). Enfin, si vous utilisez un ancien Mac, il vous faut installer
+NiftySSH. clipper
jusque chez vous. C'est possible
+ avec la plupart des logiciels de mail. Pour un exemple avec Thunderbird,
+ consultez la page sur
+ le courrier électronique.Ce sont essentiellement les trois mêmes méthodes que pour +la lecture :
+smtp.free.fr
pour Free et mail.club-internet.fr
pour
+ Club-Internet). Il suffit d'indiquer ce nom comme « serveur SMTP » à votre
+ logiciel de mail, et vous pourrez envoyer du courrier sans problème. Notez de
+ plus que cela ne vous oblige absolument pas, en général, à utiliser une
+ adresse électronique fournie par votre fournisseur d'accès comme adresse
+ d'expédition. Vous pouvez très bien continuer à écrire en tant que
+ Prenom.Nom@ens.fr
, et à recevoir les réponses sur
+ clipper
.
+clipper
?
+
+Le plus simple est de sauvegarder votre mail ou votre attachement dans
+un fichier (avec Pine,
+utilisez la touche E
comme export). Ensuite, rapatriez-le et
+imprimez-le.
+
Avant tout, sachez que ce n'est pas toujours une bonne idée de faire suivre +son courrier n'importe où : voyez l'argumentaire sur le site du SPI. +
+Si vous désirez toutefois rediriger votre courrier électronique, vous
+pouvez suivre les instructions suivantes, si vous êtes étudiant à l'école
+(c'est-à-dire, si vous disposez d'un compte clipper). La redirection de courrier électronique se fait par le biais d'un
+fichier appelé .forward
, sur le compte de départ. Si vous
+voulez faire suivre votre courrier de l'ENS vers votre labo de
+recherche, c'est sur sas
qu'il faut créer ce
+fichier.
+
sas
, soit physiquement sur une des
+ machines des salles informatiques, soit par le biais de SSH/+nano .forward ++
Ctrl+X
).
+Ajoutons que cela fait suivre le courrier sans +en laisser de copie à l'ENS. Si par sécurité, vous souhaitez +garder une copie de votre courrier, indiquez plutôt :
++\monlogin, lanouvelleadresse ++
Si votre login est toto
et que
+la nouvelle adresse est toto@monlabo.fr
, le contenu du
+fichier .forward
sera donc :
+
+\toto, toto@monlabo.fr ++
Cas pratique : vous voulez faire suivre votre courrier de clipper +vers Montrouge, à cause de la connexion qui rame. Reportez-vous à la +FAQ spéciale Jourdan-Montrouge, qui +vous indiquera en détail comment procéder. +
++Mails en russe, en chinois ou en indien... Tout ce qui est dans un +alphabet non latin vous apparaît en caractères bizarres quand vous +lisez votre mail. C'est une question d'encodage (manière dont +l'ordinateur représente les différents alphabets). Il est possible de +lire du courrier dans d'autres alphabets que le nôtre à +l'ENS. Reportez vous à notre documentation sur les courriers +internationaux. +
+
+Ce n'est pas une bonne idée. Si vous savez ce que vous faites, vous pouvez
+utiliser le programme vacation
. Lisez la page d'aide (en tapant :
+man vacation
). De manière générale, c'est dangereux : imaginez que
+votre correspondant fasse la même chose que vous. Nous serions tous submergés de
+messages disant « Bonjour, je suis en vacances ».
+
man commande
. Pour en
+savoir plus, consultez notre page sur l'aide en ligne d'Unix. Il faut utiliser procmail
, un logiciel de tri et de
+filtrage des mails. Vous pouvez trouver un manuel sur nos
+pages. Si le manuel vous semble peu clair, n'hésitez pas à le
+signaler, comme d'habitude.
+Les clubs du COF et les séminaires d'élèves doivent s'adresser au +SPI pour demander une liste. +
++Le meilleur moyen est d'envoyer le mail, et de voir s'il bounce (quand +l'adresse n'existe pas, on reçoit un message d'erreur appelé +« bounce »). Il n'existe pas vraiment de moyen de vérifier la validité +d'une adresse sans envoyer de mail... +
+Ce ne sont pas les Tuteurs qui gèrent le mail collectif. Les +Tuteurs n'ont aucun pouvoir d'administration, ils se contentent +d'apporter de l'aide aux élèves. C'est une partie des Gourous (administrateurs +élèves) et le SPI qui sont les +modérateurs. +
++Le mieux à faire est d'envoyer directement son message, et les +modérateurs jugeront eux-mêmes s'il faut le faire passer ou l'ignorer +(cf. les buts +et modalités de la modération). +
+Checkpoint file failure - no space left on
+device
?
+ Commencez par vérifier (en tapant df
) s'il
+n'y a pas un problème de place disque. Sinon, deux possibilités :
/tmp
plein), ce qui pose
+des problèmes à votre logiciel de mail+Réessayez en vous loguant sur une autre +machine. Si le problème persiste, contactez-nous. +
+/users/00/maths/toto/profile/USER.DAT
...
+ Tout d'abord, précisons que vous n'êtes pas personnellement
+visé. Il s'agit d'un message généré automatiquement. Ensuite, le
+répertoire profile
contient des fichiers utilisés par
+Windows (quand on se connecte depuis les PC sous Windows du 46). Le
+répertoire peut être éliminé sans risque.
Deux solutions.
+
+Avec pine, allez
+dans la rubrique intitulée « SETUP - Configure Pine Options ». Dans les options,
+choisissez 'config' (touche C
). Ensuite, dans la liste d'options,
+en descendant de quelques pages, vous devriez trouver une ligne qui ressemble
+à :
+customized-headers = <No Value Set> ++
Positionnez-vous dessus, et avec a
ajoutez une entrée,
+ici Reply-To:
Quand c'est fait, sortez du Setup. Pour
+rajouter ce champ dans un mail, quand vous êtes en train de l'écrire,
+il suffit de se mettre dans les en-têtes et de taper
+Ctrl+R
. Il vous sera alors proposé des en-têtes en plus
+(Bcc:
par exemple), dont les en-têtes définies dans le
+setup, donc Reply-To:
.
edit_headers
+on a accès à la liste des en-têtes quand on écrit son mail. Sinon, on
+peut taper E
dans l'écran d'envoi du courrier pour
+l'éditer avec tous les en-têtes.
+prenom.nom@ens.fr
.
+
+C'est une bonne idée, car d'une part c'est plus clair, d'autre part
+parce que si en fin de scolarité, vous continuez de travailler à l'ENS
+dans un département quelconque, il est possible de garder l'adresse
+prenom.nom@ens.fr
.
+
+Si vous utilisez Pine, procédez comme suit : +
+Setup
(touche S)
+puis Configure
(touche C)
+customized-hdrs
(il
+est possible de faire une rechercher avec la touche W, pour le
+trouver)
+From:
, qui indique la
+provenance du mail) : avec la touche A, vous Ajoutez une nouvelle
+en-tête, dont le texte est :
+
++From: Prénom Nom <prenom.nom@ens.fr> ++ +Évidemment, à l'intérieur des chevrons (< >) remplacez +« prenom » et « nom » par vos propres coordonnées, et ne mettez pas de +majuscules ni d'accents. Exemple : + +
+From: Charles Péguy <charles.peguy@ens.fr> ++
Non, ce n'est pas possible. En revanche, vous pouvez archiver le +répertoire et envoyer l'archive. Ça présente en outre l'avantage de +permettre de compresser les données. Pour faire ça, si votre +interlocuteur est sur un système Unix ou Linux, taper depuis le +répertoire parent du répertoire à envoyer :
++tar zfc repertoire.tar.gz repertoire/ ++
et envoyer le fichier repertoire.tar.gz. S'il est +sur un PC Windows ou un mac, il est plus portable de faire :
++zip -r repertoire.zip repertoire/ ++
+et d'envoyer le fichier .zip. Dans les deux cas, une fois le mail +envoyé, on peut effacer le fichier .tar.gz ou .zip.
++Vous avez peut-être reçu le message suivant : +
++DON'T DELETE THIS MESSAGE -- FOLDER INTERNAL DATA + +This text is part of the internal format of your mail folder, and is not +a real message. It is created automatically by the mail system +software. If deleted, important folder data will be lost, and it will +be re-created with the data reset to initial values. ++
Ce message survient parfois quand on lit son mail avec un autre +logiciel de mail que d'habitude. C'est un pseudo-message généré par +Pine. Vous +pouvez l'effacer sans crainte.
++Il ne fallait pas créer le dossier vous-même. C'est votre logiciel de +courrier qui se charge de le créer dans les règles. Commencez par +supprimer le répertoire que vous avez créé : +
++rmdir Mail/Toto ++
+puis, dans Pine, sur un
+message, appuyez sur S
, et donnez « Toto » comme nom. Il
+vous demandera confirmation avant de créer le dossier.
+
+Pour Pine, +en effet, les « folders » ne sont pas des répertoires, mais des +fichiers obéissant à un format bien défini.
+Référez-vous à notre page +anti-spam, qui vous présentera les solutions possibles à l'ENS et +vous indiquera comment se protéger.
+
+Non, le SpamAssassin du SPI est
+installé sur une machine différente de clipper
, il ne
+peut par lire, en l'état, d'éventuels fichiers de configuration que
+vous pourriez mettre sur votre compte.
+
+Vous pouvez écrire au SPI pour lui demander de mettre en place un +système configurable par l'utilisateur. +
++Malheureusement, vous n'êtes pas le seul. Les spammeurs ont toujours +de nouveaux trucs pour contrer les filtres anti-spam. Vous avez dû +recevoir par exemple des spams vous proposant du « Vi@gr@ » ou encore +du « \/a|ium » : c'est un truc pour contourner les gens qui filtrent +sur ces mots. +
++Vous pouvez combiner SpamAssassin (l'anti-spam de l'ENS) et Procmail (qui +permet de trier son courrier). +
++Pour davantage de renseignements pratiques sur les virus, lisez notre +page pratique à ce +sujet. Vous pouvez aussi consulter le dossier +sur les virus (plus technique) de David Monniaux, paru dans le +Hublot n°7. +
+Non. Il ne faut jamais diffuser ce genre de +messages. Quand un courrier électronique demande à être +diffusé en autant d'exemplaires que possible, la seule réponse valable +est de le jeter, en avertissant éventuellement l'expéditeur. +D'abord, la plupart des alertes au spam sont des plaisanteries de +mauvais goût. L'adresse indispensable dans ce genre de cas est +Hoaxbuster, qui répertorie tous les fausses alertes au virus et autres +canulars : http://www.hoaxbuster.com/. +
+Quand bien même le message serait vrai, il ne faut pas le diffuser, +il fait bien plus de mal que le mal qu'il annonce. Les gens qui +désirent être tenus au courant des messages d'alerte liront les +newsgroups ou les mailing-lists adaptées à cela, ou consulteront des +sites Web qui en parlent. Diffuser une alerte sans discrimination ne +peut être qu'irritant et ne peut pas avoir l'effet escompté.
+Il y a pire : c'est en fait l'alerte elle-même qui est le virus, +dans un certain sens. Car quelqu'un qui reçoit un message de ce type +va avoir tendance à le renvoyer sans réfléchir. Il n'y a plus alors +moyen de stopper la diffusion de ce spam inutile et encombrant. Pour +en savoir plus, consultez notre page sur les virus.
++D'abord, mettez à jour votre anti-virus et scannez votre disque. Si ça +se trouve, vous êtes déjà infecté. Ensuite, vous pouvez regarder un +site d'éditeur d'anti-virus (Norton, Symantec, Kapersky, etc.)pour +voir quels sont les virus en circulation. Chaque virus possède sa +propre fiche descriptive, présentant ses caractéristiques. Notre page sur les virus peut +aussi vous renseigner à ce sujet. +
++Contexte : un ami vous accuse de lui avoir « envoyé un virus », vous +recevez des messages de rejet de la part d'anti-virus (genre « failure +notice » ou « Virus in your mail for Untel »). Pourtant, vous n'êtes +pas fou, vous n'avez jamais envoyé ces mails ! Pire : vous n'utilisez +que les ordinateurs de l'ENS, ou encore vous avez déjà mis à jour +votre anti-virus et scanné votre disque dur, sans voir de +virus. Pourquoi alors ? +
+
+Il faut bien comprendre ceci : la ligne From:
d'un mail
+n'est pas un indicateur fiable de l'identité de l'expéditeur. De fait,
+un mail n'est pas très différent d'une bonne vieille lettre : qui vous
+empêche d'indiquer n'importe quoi au dos de votre enveloppe ?
+Pensez-vous vraiment que la Poste vérifie que c'est bien
+« Jean-Paul II, Vatican » qui a posté cette lettre ? Il est facile
+d'indiquer un faux expéditeur dans un mail, et c'est ce que font les
+virus spammeurs la plupart du temps.
+
+Généralement, ces virus récupèrent les adresses contenues dans votre +carnet d'adresses, le cache d'Internet Explorer, etc. Le virus +s'expédie à ces adresses, et choisit au hasard une adresse qu'il +indique comme expéditrice du mail infecté. +
++Si vous lisez sur les machines Linux, il y a vraiment très, très peu de +chances. Les auteurs de virus préfèrent écrire des virus pour Windows, +et plus particulièrement Outlook Express (question de gloriole). +
++Pour mieux découvrir les commandes et approfondir les concepts +découverts ici, nous vous conseillons de lire les pages suivantes : +
+ssh
, les caractères
+accentués s'affichent n'importe comment ‽
+ Cette Foire Aux Questions (FAQ) rassemble entre autres des +questions fréquemment posées dans le courrier électronique adressé aux +tuteurs concernant Unicode, qui est un standard qui se répand de plus en +plus, notamment dans les +distributions Linux grand +public (et aussi sous Windows).
+Le Standard Unicode est produit +par une organisation à but non lucratif (le Consortium Unicode) ayant +pour objectif d'attribuer un numéro à tout caractère utilisé dans une langue +humaine. Cette entreprise vise à une certaine universalité. Les alphabets +de beaucoup de langues sont déjà inscrits dans ce standard. On y trouve +évidemment les alphabets latins, grecs et cyrilliques (avec certaines de +leurs variantes, par exemple, un caractère comme « œ » y figure, +bien qu'il ne soit pas utilisé dans la plupart des autres langues +européennes utilisant l'alphabet latin). Beaucoup de langues parlées en +Asie figurent aussi dans le standard : des dizaines de miliers de +caractères chinois, japonais ou coréens sont définis. Le standard +contient bien d'autres alphabets, la consultation des tableaux de +caractères (dans la version imprimée du standard ou sur le site officiel) est une +véritable source d'émerveillement...
+Un caractère Unicode est un caractère défini dans le Standard Unicode. +On y fait souvent référence par son numéro écrit en hexadécimal précédé +de «U+». Par exemple, la lettre latine « a » correspond à U+0061, la lettre +cyrillique « Я » correspond à U+042F et le "DEVANAGARI OM" +« ॐ » correspond à U+0950. Certains de ces caractères ne +s'affichent peut-être pas correctement sur votre écran, cela dépend de +plusieurs paramètres, nous reviendrons sur ce point dans les questions +suivantes ; il faut cependant garder une chose à l'esprit, le Standard +Unicode définit des listes de caractères, donne un nom à chaque +caractère (pour « a », c'est "LATIN SMALL LETTER A"), mais en aucun +cas, le glyphe devant représenter chaque caractère n'est normalisé, en +effet, plusieurs fontes de caractères peuvent être utilisées.
+"UTF" est formé des initiales de "Unicode Transformation Format". +Les ordinateurs stockent et échangent leurs données le plus souvent +sous forme de suite d'octets, un octet étant constitué 8 bits. Un +octet peut donc être représenté comme un nombre entier compris (au +sens large) entre 0 et 255. Si on veut stocker sur un support +informatique un texte constitué de caractères Unicode, il faut choisir +un procédé transformant une suite de caractères Unicode en une suite +d'octets et réciproquement avoir un procédé pour retrouver la suite de +caractères à partir d'une suite d'octets bien formée, ces données +constituent ce que l'on appelle +un encodage. +
+L'encodage le plus pratique pour échanger des textes constitués de +caractères Unicode est UTF-8. Il associe à tout numéro Unicode +une suite d'un ou plusieurs octets (jusqu'à quatre octets pour un seul +caractère). Cet encodage est décrit dans la RFC 2279. +Une des propriétés importantes de cet encodage est que les caractères +dont les numéros sont compris entre 32 et 126 possèdent la même +représentation en UTF-8 et dans l'encodage ASCII. L'encodage UTF-8 est +donc compatible avec ASCII, dans la mesure où il n'y a rien à faire pour +convertir un fichier encodé en ASCII vers UTF-8. Réciproquement, si un +octet représentant un nombre compris entre 32 et 126 apparaît dans un +fichier encodé en UTF-8, alors c'est forcément pour encoder le caractère +ASCII du même numéro.
++La question de savoir si un logiciel gère bien Unicode n'a de sens que +si celui-ci manipule du texte. Les logiciels les plus concernés sont +notamment les éditeurs de texte, +les logiciels de traitement de texte, +les logiciels de courrier électronique +et les navigateurs Web. +
+Un terminal (ou un émulateur de terminal) consiste en une interface +qui permet de saisir et d'afficher du texte, divers programmes peuvent +« tourner » à l'intérieur de ce terminal : un interpréteur de +commandes (shell), un logiciel pour gérer ses mails, un +éditeur de texte, etc... Le terminal et les programmes qui tournent à +l'intérieur d'icelui doivent se mettre d'accord d'une manière ou d'une +autre pour savoir dans quel encodage le texte est échangé entre eux, +et ce de façon cohérente avec les caractères effectivement affichés à +l'écran et le texte saisi par l'utilisateur.
+ Un terminal Unicode (ou UTF-8) est un terminal où cet encodage est
+UTF-8, par opposition aux terminaux « ordinaires » où l'encodage
+est mono-octet (c'est-à-dire ne permet de représenter qu'un peu moins de
+256 caractères différents), le plus souvent latin-1
en
+France.
+Dans un terminal Unicode, on peut ainsi afficher beaucoup plus de
+caractères différents que dans un terminal latin-1
. Cela
+reste néanmoins une interface en mode texte, on ne pourra ainsi pas
+afficher correctement du texte dans des langues dont l'écriture utilise
+des systèmes de ligatures complexes ; pour le reste, cela
+fonctionne très bien. Il y a quelques subtilités, les caractères
+chinois/japonais/coréens occupent ainsi deux cases contiguës au lieu
+d'une seule.
+
Il existe beaucoup d'émulateurs de terminaux sous Unix, certains
+savent gérer Unicode, d'autres non. Le programme
+de référence xterm
sait faire, pour le lancer de façon à
+obtenir un terminal Unicode, le plus commode est d'utiliser la commande
+uxterm
qui est en général un script qui lance
+xterm
avec les bonnes options.
+
Sous Windows, notons que le programme PuTTY qui +est à la fois un client SSH et un émulateur de terminal sait gérer +Unicode, il suffit de choisir UTF-8 comme encodage. +
+
+La manière la plus rapide est probablement de taper la suite de
+touches
+«xxd<Enter><Compose><apostrophe>
e<Enter><Control-D>
».
+Autrement dit, on lance le programme xxd
qui va servir à
+afficher la représentation en hexadécimal du texte que l'on va
+saisir : on saisit un e accent aigu avec la touche compose,
+on valide et on ferme avec <Control-D>
. Si on se trouve dans
+un terminal latin-1
, on va voir :
+
sas ~ $ xxd
+é
+0000000: e90a ..
+
+ tandis que dans un terminal Unicode, on +verra :
+sas ~ $ xxd
+é
+0000000: c3a9 0a ...
+
+ Le 0a
que l'on voit dans les deux
+résultats représente le caractère U+00A0
LINE FEED (LF) qui
+s'encode de la même manière en latin-1
et en UTF-8. La
+différence porte donc sur l'encodage du caractère U+00E9
LATIN
+SMALL LETTER E WITH ACUTE (le e accent aigu), en
+latin-1
, on le
+représente par un seul octet de valeur hexadécimale e9
+tandis qu'en UTF-8, on a deux octets : c3
puis
+a9
.
+
+Une autre manière de le déterminer consiste à utiliser la sortie du
+terminal plutôt que son entrée. On va envoyer sur la sortie la
+représentation en UTF-8 du e accent aigu, si on voit effectivement un e
+accent aigu, on sera dans un terminal UTF-8, si on voit deux caractères
+qui n'ont rien à voir (en l'occurence «Ã©»), cela voudra probablement
+dire que l'on est dans un terminal latin-1
.
+Pour faire ce test, on peut
+utiliser la commande suivante :
+
sas ~ $ printf '\xc3\xa9\n'
+
+
+La seule méthode vaguement standardisée pour spécifier aux programmes
+dans quel encodage est encodé le terminal dans lequel ils fonctionnent
+est donné par les locales. Pour connaître le réglage des
+locales que les
+programmes vont subir, on peut utiliser la commande locale
+(qui existe au moins sous GNU/Linux et sous Solaris). Dans un terminal
+Unicode, j'obtiens ceci :
sas ~ $ locale
+LANG=
+LC_CTYPE=fr_FR.UTF-8
+LC_NUMERIC="C"
+LC_TIME="C"
+LC_COLLATE="C"
+LC_MONETARY="C"
+LC_MESSAGES="C"
+LC_ALL=
+
+ Ce qui est important ici, c'est ce qui figure en face
+de LC_CTYPE
. La valeur fr_FR.UTF-8
signifie en gros
+que j'utilise du français de France (et non du français de Suisse par
+exemple) encodé en UTF-8. Si LC_CTYPE
contenait
+une valeur n'indiquant pas un encodage UTF-8, comme C
,
+en_US
ou encore fr_FR
, je pourrais changer
+cette locale en tapant la commande suivante qui permet de modifier la
+variable d'environnement LC_CTYPE
:
+
sas ~ $ LC_CTYPE=fr_FR.UTF-8;export LC_CTYPE
+
+ La modification s'appliquera pour les applications
+lancées par la suite dans ce terminal. La variable d'environnement
+LC_MESSAGES
peut également être utile, elle indique aux
+programmes qui en sont conscients dans quelle langue on souhaite qu'ils
+nous parlent. Par exemple, si on est dans un terminal Unicode et que
+l'on a défini les variables d'environnement LC_CTYPE
et
+LC_MESSAGES
à fr_FR.UTF-8
,
+les messages qu'affichera un logiciel de courrier électronique comme
+mutt
+seront en français.
ssh
, les caractères
+accentués s'affichent n'importe comment ‽
+ De plus en plus de distributions Linux ont par défaut des terminaux
+Unicode.
+Si on se logue sur une autre machine Unix, il faut y faire un
+réglage de locales pour pouvoir utiliser
+convenablement certains programmes. Il n'y a rien de prévu au niveau
+de ssh
(tant mieux, ça pourrait être pire que rien...) pour
+définir sur la machine distante une locale cohérente avec l'encodage du
+terminal dans lequel on travaille. Si ce n'est pas fait, les programmes
+auront tendance à fonctionner comme dans un terminal latin-1
,
+d'où le n'importe quoi. En principe, on doit donc faire manuellement le
+réglage de locales évoqué ci-dessus.
+
LC_CTYPE
à
+fr_FR.UTF-8
ce qui évite d'avoir à faire à chaque fois le
+réglage de locales manuellement. Pour éviter toute ambiguité,
+cette détection d'encodage ne concerne que les connexions vers
+un ordinateur de l'École.
+Certains logiciels ne gèrent pas bien du tout Unicode, il faut donc
+les lancer dans un terminal encodé en latin-1
. Mais si on
+est en train de travailler dans un terminal Unicode, on a pas forcément
+envie d'ouvrir une nouvelle fenêtre de terminal. Le programme
+luit
permet d'émuler un terminal latin-1
à
+l'intérieur d'un terminal Unicode. Si on est dans un terminal
+Unicode, on peut ainsi utiliser la commande suivante :
+
corvette ~ $ LC_CTYPE=fr_FR luit
+
+ Cela ouvre un nouveau shell. Les programmes
+lancés « à l'intérieur » se comporteront vis-à-vis de
+l'utilisateur comme si celui-ci travaillait dans un terminal encodé en
+latin-1
(on peut faire le test pour
+s'en assurer). On peut lancer par exemple pine
(qui ne gère
+pas Unicode) dans ce luit
. Une fois que l'on en a fini avec
+ces programmes ne gérant pas Unicode, on peut revenir au terminal Unicode
+de départ en quittant le shell (exit
ou
+<Control-D>
).
+
+Le logiciel de courrier électronique mutt
+fonctionne bien dans un terminal Unicode. Grâce à lui, on peut lire ou
+envoyer des messages dans des langues exotiques ; Mozilla
+Mail sait aussi faire, mais c'est en mode graphique.
+
Le logiciel pine
ne gère pas Unicode. Il ne peut pas bien
+fonctionner dans un terminal Unicode. Si on travaille dans un terminal
+Unicode, mais que l'on souhaite quand même lancer pine
, il
+faut absolument transformer provisoirement son terminal
+en terminal latin-1
avec luit
.
pine
dans
+un terminal Unicode, le programme luit
soit utilisé pour
+émuler un terminal latin-1
, ce qui fait que l'on peut quand
+même utiliser normalement pine
; cependant, on ne
+pourra pas y voir ou saisir de caractères exotiques.
+Les dernières versions de Vim et Emacs gèrent bien
+Unicode, on peut les utiliser pour éditer des fichiers encodés en UTF-8
+(ou dans d'autres encodages). La page taper de l'Unicode
+donne quelques informations sur l'utilisation de ces éditeurs. On peut
+aussi utiliser yudit qui est un très
+mauvais éditeur, mais qui est cependant extrêmement bon pour ce qui est
+du rendu du texte dans beaucoup de langues (on peut lui spécifier une
+fonte pour chaque alphabet, il gère très bien l'écriture de droite à
+gauche, les systèmes complexes de ligatures, et il propose un large choix
+de méthodes d'entrées).
+En revanche, pico
(et nano
) ne
+gèrent pas Unicode.
+
On détecte souvent qu'un programme n'est pas conscient qu'un fichier
+est encodé en UTF-8 quand chaque caractère accentué est remplacés par
+deux caractères bizarres (exemple : « Caractéristique
+d'Euler-Poincaré »).
+Il faut alors dire à l'éditeur de reconsidérer le fichier pour le traiter
+comme de l'UTF-8. Dans Vim, on peut taper :edit ++enc=utf-8
+en mode commande. Dans Emacs, aller dans le menu Options, choisir Mule,
+puis Set Coding System For Reverting This File Now
+(C-x RET r
),
+taper utf-8
et valider.
Dans Vim, la variable spécifiant l'encodage du fichier que l'on édite
+est fileencoding
, on peut ainsi faire :set
+fileencoding=latin-1
ou set fileencoding=utf-8
si on
+veut changer d'encodage ; cela prendra effet au prochain
+:w
. Dans Emacs, aller dans le menu Options, choisir Mule,
+puis Set Coding System For Saving This Buffer
+(C-x RET f
), entrer le nom de
+l'encodage et valider.
Avec LaTeX, on peut mettre en page du texte écrit dans des langues +exotiques. Sur notre page +LaTeX sur les langues exotiques, on trouve la marche à suivre pour +obtenir ce résultat à partir d'un fichier TeX encodé en UTF-8 (au moins +pour du grec, du cyrillique, du chinois et du japonais). +
++Des variantes de TeX/LaTeX ont été développées récemment : Omega/Lambda +puis Aleph/Lamed, aujourd'hui abandonnées, puis +XeTeX et LuaTeX. +Toutes ces variantes ont pour but de supprimer la limitation de TeX à +256 caractères par police. Aleph gère ainsi des suites de deux octets +(65536 valeurs possibles), XeTeX et LuaTeX lisent par défaut les +fichiers encodés avec UTF-8. Le succès de XeTeX et LuaTeX est dû +notamment à la possibilité d'y utiliser à la fois les polices +fournies avec TeX et les polices TrueType ou OpenType plutôt utilisées +dans les logiciels de traitement de texte traditionnels. Il devient +ainsi possible de taper des textes multilingues, ou dans les langues à +idéogrammes sans devoir affronter le casse-tête de la gestion des +polices avec LaTeX. +
+XeTeX permet en outre, grâce à un système appelé TeCKit, +d'appliquer des filtres aux fichiers sources. Cela permet +d'utiliser une translittération dans le fichier source tout en +obtenant les bons caractères dans le fichier d'arrivée. +
+Grâce à XeTeX, on a pu ainsi réaliser l'Annuaire +des élèves qui contient quelques citations dans des langues +n'utilisant pas l'alphabet latin. +
+En mode graphique, beaucoup de programmes sont concernés par Unicode,
+de façon plus ou moins importante.
+Les émulateurs de
+terminaux comme xterm
le sont évidemment. Plus généralement,
+beaucoup de programmes doivent afficher du texte dans des
+langues exotiques, par exemple s'ils ont été conçus pour pouvoir
+avoir des messages et des menus dans d'autres langues que l'anglais
+(voir le réglage de la locale
+LC_MESSAGES
). Les programmes utilisant les bibliothèques
+GTK+
disposent
+naturellement d'un très bon support d'Unicode ; en effet, les
+chaînes de caractères manipulées sont encodées en UTF-8 et la
+bibliothèque Pango (faisant partie de GTK+
) se charge
+d'afficher convenablement le texte, ce qui n'est pas trivial du tout
+(par exemple pour les langues indiennes) même si on a de bonnes fontes de
+caractères.
+
On peut trouver des fontes
+TrueType libres (packagées par la plupart des distributions Linux),
+elles couvrent notamment la plupart des langues utilisées en Europe
+(alphabets latin, cyrillique et grec). Pour utiliser la fonte
+FreeMono
dans xterm
, en supposant que les
+fontes évoquées ici soient convenablement installées, on peut utiliser la
+commande uxterm -fa FreeMono
(pourvu que la version
+de xterm
utilisée soit suffisamment récente). Si on veut
+afficher des caractères provenant d'alphabets non couverts par ces
+fontes, il faut évidemment utiliser d'autres fontes... On peut regretter
+que xterm
ne soit actuellement pas capable d'utiliser
+plusieurs fontes simultanément (on pourrait lui spécifier une fonte à
+utiliser pour les alphabets latin, cyrillique et grec et une autre fonte
+pour les idéogrammes chinois par exemple) ; en revanche,
+l'émulateur de terminal rxvt-unicode
+peut le faire.
+
Il y a deux méthodes. La première consiste à utiliser des entités
+HTML : si on insère la chaîne de caractères
+«‽
» dans un fichier HTML, le navigateur
+affiche «‽» comme vous pouvez le constater, si le navigateur
+est en mesure d'afficher ce caractère Unicode, on devrait ainsi voir le
+caractère U+203D INTERROBANG. Pour un caractère Unicode quelconque, il
+suffit de remplacer 203d
par la représentation en
+hexadécimal du numéro du caractère Unicode. On peut aussi utiliser le
+numéro sous sa forme décimale : ‽
(‽).
+
+La deuxième méthode consiste à encoder tout le fichier HTML en UTF-8. On +saisit alors le caractère Unicode comme n'importe quel autre caractère +(ce qui nécessite d'avoir un éditeur UTF-8). Cela +suppose d'avoir convenablement déclaré l'encodage du fichier HTML. Cela +peut se faire en insérant la balise suivante +
++<meta http-equiv="Content-Type" content="text/html; charset=utf-8" > ++
+dans les en-têtes du fichier HTML (entre <meta>
et
+</meta>
). Si le fichier est en XHTML, il faut fermer
+la balise <meta>
:
+
+<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> ++
+et il est +recommandable de définir l'encodage du fichier en faisant de plus +une déclaration XML sur la première ligne du fichier : +
++<?xml version="1.0" encoding="UTF-8"?> ++
+S'il ne s'agit d'insérer qu'une poignée de caractères exotiques, il +est sans doute plus pratique d'utiliser des entités HTML pour insérer ces +caractères. S'il y en a beaucoup, il devient commode d'utiliser la +deuxième méthode pour éditer directement le fichier HTML dans un +éditeur gérant l'encodage UTF-8. Notons que les deux méthodes ne sont pas +incompatibles, on peut mettre des entités HTML du type ci-dessus dans un +fichier HTML, quelque soit son encodage, y compris UTF-8. +
+Certains navigateurs (comme Mozilla) permettent de +spécifier une fonte à utiliser pour tel ou tel groupe de langues. Quand +on insère du texte dans une langue exotique, on a ainsi intérêt à +déclarer la langue dans laquelle est écrit le texte, cela permet au +navigateur de choisir directement la bonne fonte à utiliser pour afficher +les caractères, au lieu de parcourir toutes les fontes existantes jusqu'à +en trouver une qui associe un glyphe au numéro Unicode voulu. Ceci peut +donner des résultats horribles : imaginons que vous ayez un texte en grec +ancien avec beaucoup d'accents et d'esprits et que la fonte par défaut ne +contienne que les caractères grecs de base (sans les accents), on risque +de se retrouver avec un mélange du plus mauvais effet entre deux fontes +de caractères, la fonte de base utilisée pour les caractères non +accentués et une autre pour les caractères plus compliqués ; si le +navigateur est prévenu dès le départ que c'est du grec ancien, il fera +sans doute mieux. +
++ +Pour insérer le mot Hindi बिरयानी +dont une transcription est « biryânî », on a utilisé le code +suivant : +
++<cite lang="hi" xml:lang="hi">बिरयानी</cite> ++
+Les attributs lang
et xml:lang
s'appliquent à
+beaucoup d'autres éléments (X)HTML, <p>
et
+<a>
notamment. Sauf cas particuliers, le code de la langue
+(dans l'exemple, c'est hi
) doit être un code à deux
+lettres figurant dans le standard ISO 639.
+
On peut utiliser la page de test +Unicode sur le site de David A. Madore. Attention, cependant, ce +n'est pas parce que vous voyez plein de caractères exotiques disposés un +peu partout que votre navigateur gère parfaitement les langues étrangères +censément représentées sur la page, si on regarde plus attentivement +certains détails, il arrive souvent que l'on voie des bugs (problèmes +dans les fontes de caractères, support rudimentaire de certaines langues, +mélange disgracieux entre plusieurs fontes de caractères pour afficher le +grec, absence de certaines ligatures, etc...).
+C'est une très mauvaise idée de vouloir mettre des caractères +accentués (ou exotiques) dans les noms de fichiers. Le fait de mettre des +espaces pose déjà des problèmes, des caractères comme «/», «\» ou «:» +sont prohibés sur certains systèmes de fichiers, alors vouloir mettre +des accents, ce n'est que chercher des ennuis supplémentaires (notamment +quand on veut transférer des fichiers sur un autre ordinateur ou sur une +disquette). Bref, à éviter absolument.
+ +ssh
+ne me demande pas mon mot de passe a chaque fois ?
+ telnet
?
+ +Cette Foire Aux Question (FAQ) rassemble les questions fréquemment +posées dans le mail des tuteurs. Sauf problème exotique, vous +trouverez probablement une réponse à vos questions ici. N'hésitez pas +à nous contacter si cette FAQ vous semble obscure ou encore +incomplète. La seule question idiote est une question qui n'est pas +posée ! +
++Les PC des salles info en libre service sont sous Linux, et plus +précisément (lors de la mise à jour de cette entrée, en 2008... mais ces +dernières années, ça a changé assez régulièrement) sous Ubuntu. Ubuntu +appartient à la grande famille des distributions Linux, qui sont des +systèmes d'exploitation inspirés d'Unix et architecturés autour du noyau +Linux. +
++Unix a été créé à la fin des années 1960 +par un laboratoire d'AT&T, qui était à l'époque la compagnie nationale +américaine de télécommunications (cf. notre brève histoire d'Unix). +C'est un système stable, performant et flexible, qui pour ces raisons +est beaucoup utilisé entre autres par les universités et +établissements d'enseignement. Pour en savoir plus, lisez +notre présentation d'Unix pour les débutants, ou plus technique si +vous vous y connaissez un peu en informatique. +
++Jusqu'à récemment, on trouvait aussi dans les salles info des PC sous +Fedora (une autre distribution Linux), et avant cela sous FreeBSD (un +système Unix non basé sur Linux), ainsi que stations +Sun fonctionnant sous encore un autre Unix appelé Solaris. Certaines +docs, notamment sur le site des tuteurs, y font encore référence. Il +devrait s'agir principalement de pages d'intérêt historique et +explicitement marquées comme obsolètes, les autres ayant été adaptées à +Ubuntu... mais, les mises à jour du site des tuteurs étant ce qu'elle +est, ce n'est pas toujours le cas. Notons cependant que Fedora et Ubuntu +sont assez proches, de sorte que les instructions destinées à Fedora ont +des chances de s'appliquer avec peu de changement à Ubuntu. C'est un peu +moins vrai de FreeBSD, et encore un peu moins de Solaris. N'hésitez pas +à nous contacter en cas de doute. +
++Unix peut vous désorienter un peu au début, c'est normal. Quand on ne +connaît pas, on ne connaît pas, tout le monde est passé par là. Les +Tuteurs ont précisément pour rôle de vous apprendre à utiliser ce +système au mieux. Vous pouvez lire la partie « Débutants » de notre site. +Vous avez également à votre disposition des logiciels graphiques +faciles à utiliser. +
++Il y a plusieurs raisons différentes. Elles sont exposées en détail +dans notre présentation technique +d'Unix. En bref, on peut dire que : +
++Notez que l'ENS n'est pas la seule à avoir des ordinateurs sous Unix. La +plupart des universités américaines, par exemple, le font aussi (d'ailleurs, +FreeBSD est à l'origine une version d'Unix développée par l'université de +Berkeley). De nombreuses universités françaises ont également des salles +informatique en libre service sous Unix. +
++Ce n'est pas parce que l'ENS est sous Unix que vous êtes coupé du +reste du monde, en particulier de ceux qui travaillent sous +Windows. De nombreux logiciels vous permettent de partager votre +travail avec ces derniers, ou de lire des documents Windows ou +Mac. Vous disposez également des quelques PC Windows. +
++Les fichiers des utilisateurs sont partagés entre les machines d'une +même salle info, ainsi qu'entre les trois principales salles en libre +service (S, T et infi). Mais la salle T15, de même que les salles de +Jourdan et Montrouge, sont indépendantes de ces trois-là. +
+
+Il faut utiliser ssh
pour transférer des fichiers de
+manière sûre d'une machine à une autre. Pour apprendre à l'utiliser,
+se reporter à notre tutorial
+ssh
. Un exemple, pour envoyer un fichier de la salle
+S vers paquebot, à Montrouge :
+
+scp monfichier paquebot: ++
+N'oubliez pas les deux points (:
), ils sont importants.
+
+Pour ceux qui utilisent la config KDE (soit quasiment tout le monde +depuis la promo 2006), il est aussi possible de taper une adresse du +genre +
++sftp://paquebot ++
+dans Konqueror ou Dolphin (les gestionnaires de fichiers de KDE), voire +en fait dans n'importe quelle fenêtre de manipulation de fichiers de +KDE. +
+Tout dépend de ce que vous voulez faire. Si vous voulez simplement
+récupérer des choses comme la complétion automatique avec Tab, le
+rappel des dernières lignes avec la flèche haut, il faut d'abord voir
+si zsh
est installé (taper zsh
,
+Entrée
, et voir si ça marche). Si c'est le cas, il suffit
+de récupérer le fichier ~/.zshrc
, et de lancer
+zsh
à chaque fois.
+S'il y a d'autres choses que vous voulez importer, c'est probablement
+dans d'autres fichiers de configuration (.profile
,
+.xinitrc
, .Xressource
...). Mieux vaut nous
+contacter et nous dire précisément ce que vous voulez.
+C'est ce qu'on appelle faire de l'« export display », ou encore
+« exporter l'affichage ». Vous pouvez vous connecter sur la machine
+distante grâce à ssh
. Par
+défaut à l'ENS, ssh
exporte l'affichage. Tous les
+logiciels graphique que vous lancerez sur la machine distante
+s'afficheront sur la vôtre. Attention, si la connexion entre les deux
+machines est lente, ce n'est pas une bonne idée. Vous n'apprécierez
+pas de voir plusieurs secondes de décalage entre une action de votre
+part et ce qui s'affichera.
+
À l'intérieur de l'ENS, vous pouvez aussi utiliser +la méthode suivante : tapez, sur la machine distante : +
+export DISPLAY=machine:0+
tandis que que la machine sur laquelle vous êtes, +tapez : +
+xhost +machinedistante+
Il n'est pas possible d'exporter l'affichage depuis un PC Windows +ou un vieux Mac. Explication technique : les machines Unix utilisent un +système d'affichage appelé X-Window, qui est capable de passer par +réseau. Les machines Windows ou les vieux Macs utilisent un système qui +d'une part est assez différent dans son fonctionnement (et qui sont +différents entre eux), et d'autre part qui n'est pas capable de passer +par réseau. Sous Mac OS X, on peut installer X-Window en option.
+ssh
+ne me demande pas mon mot de passe a chaque fois ?
+
+Tout est expliqué sur notre tutorial
+ssh
.
+
+Vous pouvez (vous devez, même) changer le mot de passe attribué par le SPI à
+l'aide de la commande passwd
.
+
+Vous devrez d'abord, pour des raisons de sécurité, taper votre ancien +mot de passe. +
+sas ~ $ passwd
+passwd: Changing password for toto
+Enter login(NIS) password:
+
+ Si le mot de passe que vous avez tapé n'est pas le
+bon, passwd
refusera d'aller plus loin :
+
+passwd(SYSTEM): Sorry, wrong passwd +Permission denied ++
Si vous vous êtes correctement identifié,
+passwd
vous demandera le nouveau mot de passe que vous
+avez choisi. Celui-ci doit faire au minimum 6 caractères, et par
+ailleurs contenir au moins une lettre et au moins un chiffre (vous ne
+pouvez pas choisir que des chiffres ou que des lettres), sinon il sera
+refusé.
+
+Faites bien attention à ne pas choisir des mots de
+passe faciles à percer, tels que votre date d'anniversaire, le nom de
+votre chien... Pour la même raison, évitez les mots existant dans une
+langue (il est facile à un pirate d'essayer tous les mots de plusieurs
+dictionnaires). Nous vous conseillons d'utiliser apg
, un
+générateur aléatoire de mots de passe, avec les options -M
+N
(inclure un ou des chiffres dans le mot de passe) : vous
+obtiendrez une liste de 6 propositions. Si aucune ne vous plaît,
+recommencez...
+
sas ~ $ apg -M N
+CAN NOT USE RANDOM DEVICE TO GENERATE RANDOM SEED
+USING LOCAL TIME AND PID FOR SEED GENERATION !!!
+negguj6 (negg-uj-SIX)
+atbooc (at-booc)
+tyctecu (tyct-ec-u)
+yotzet (yot-zet)
+cegyoi (ceg-yoi)
+eyzosh4 (eyz-osh-FOUR)
+
+
+Pour éviter les coquilles, vous devrez taper deux fois votre nouveau
+mot de passe. Si tout se passe bien, passwd
vous dira
+qu'il a changé votre mot de passe. Attention, celui-ci peut mettre
+quelques heures à se propager dans toutes les salles informatiques.
+
+New password: +Re-enter new password: +NIS passwd/attributes changed on sas ++
+D'abord, réessayez, lentement et en faisant attention, de taper de +nouveau votre mot de passe. Avez-vous respecté les majuscules et les +minuscules ? Est-ce le même clavier (attention aux confusions +qwerty/azerty) ? Est-ce le bon mot de passe ? Attention aussi en tapant +des chiffres, la touche Caps Lock (verrouillage majuscule) +verrouille bien le clavier en majuscules :par exemple, +Shift+é produit É et non pas 2. +
+Si, hélas pour vous, ça ne marche toujours pas, il vous faudra +contacter le SPI, seul à même de vous donner un nouveau mot de +passe. Il faut savoir que le SPI, pour des raisons de sécurité, +suspend les comptes non utilisés depuis trop longtemps. Il fait de +même avec les connexions venant de pays exotiques (pour éviter les +piratages). Si vous partez en stage long dans un endroit peu habituel, +songez à prévenir le SPI. +
+Non, les tuteurs n'ont pas le droit de déloguer quelqu'un +d'autre. En revanche, vous pouvez très bien le faire vous-même :
+ssh machineplantée
(voir le tutorial sur
+ssh
).kill -1 -1
pour demander gentiment à tous
+vos processus de se terminer.kill -9
+-1
.
++Si vous n'y arrivez pas, ou si vous êtes pressé, adressez-vous aux gourous, qui eux ont le +droit de tuer des processus qui ne leur appartiennent pas. +
+Tout d'abord, appuyez sur Entrée
. Ça peut débloquer la
+souris. Sinon, Ctrl-Alt-Backspace
.
Écrivez au SPI.
+Non ! Vous n'êtes sans doute pas le seul à
+utiliser cette machine. Il y a souvent des gens logués à distance (ce
+qui peut se vérifier grâce à la commande w
). Parfois,
+un PC Linux peut avoir l'air planté sans être
+réellement planté. Les gens qui travaillent à distance
+apprécieraient moyennement de se voir délogués brutalement sans
+explications.
+
+Or on voit souvent traîner à côté des imprimantes des piles entières +d'impressions qui n'ont pas été récupérées. Parmi celles-ci, un nombre +impressionants de messages électroniques, dont parfois certains très, +très privés. Souhaitez-vous réellement envie que toute la salle S lise +votre courrier intime ? Avez-vous réellement besoin d'imprimer des +kilomètres de mail ou de pages Web ? Ne forçons pas le SPI à installer +des cartes sur toutes les imprimantes... +
++Pour plus de renseignements, lire la page de tuteurs « Imprimer. »
+L'imprimante de la salle S fonctionne en recto-verso. Il faut taper +
+lpr -Zdouble+
Chaque imprimante porte un nom. Vous pouvez, en étant en T15,
+imprimer en salle S, imprimer en salle T à partir de l'Infirmatique,
+etc, si vous précisez le nom de l'imprimante à lpr
. Par
+exemple, pour imprimer en salle T à partir de la salle S, tapez
+lpr -P lwsallet@sequoia nom_de_fichier ++
+À noter que, par défaut, si vous n'indiquez pas de nom d'imprimante, +l'impression sort sur celle de la salle où vous êtes logué. +
+Tapez lpq
pour savoir quelles sont les tâches déjà
+envoyées à l'imprimante.
C'est la commande lprm
. Si vous l'utilisez seule, elle
+supprimera la dernière tâche que vous avez envoyée. Avec lprm
+[votre login]
, vous supprimez toutes les tâches vous
+appartenant. Si vous souhaitez supprimer une tâche précise (par
+exemple, si vous avez envoyé plusieurs fois la même requête par
+erreur), lprm [ID de la tâche]
. Vous obtiendrez l'ID de
+la tâche en tapant lpq
.
Oui, c'est possible. Mais il faut des transparents +certifiés pour les HP Laserjet, sinon le transparent risque +de fondre et de mettre l'imprimante HS (l'incident s'est déjà +produit). Attention, pour des questions de contrat de maintenance, il +faut que ce soient bien des transparents HP. Sinon en cas de problème +le SPI y sera de sa poche.
+Nulle part : il faut apporter son propre papier.
+Il faut s'adresser au SPI (spi@ens.fr
): notez que si
+personne ne signale que l'imprimante n'a plus d'encre, il est probable que
+personne ne vienne en remettre.
Il n'y en a pas en libre-accès à l'ENS. Vous ne pouvez imprimer en +couleur que si votre labo possède une telle imprimante et que vous y +avez accès.
++Si vous voulez préserver la mise en page, ouvrez le document Word avec +OpenOffice.org (OOo, une suite bureautique libre qui sait lire les +formats de Microsoft Office), puis lancez l'impression à partir de +là. +
+
+Si seul le contenu vous intéresse et que la mise en page ne vous est
+pas indispensable, vous pouvez utiliser le programme AntiWord, un
+filtre qui traduit les documents Word en fichier texte. Pour imprimer
+le fichier machin.doc
en passant par AntiWord :
+
sas ~ $ antiword -p a4 machin.doc | lpr
+
+ +En salle S, il y a des prises réseau disponibles (une réserve : l'une +d'entre elles ne marche pas), c'est également le cas dans les salles +de Jourdan et Montrouge. Vous n'avez pas besoin d'attribuer une +adresse IP, il y a un serveur DHCP qui vous alloue automatiquement une +IP. Traduction : normalement, vous branchez votre portable, vous +démarrez et vous êtes connecté. +
++Attention, ne débranchez surtout pas une autre +machine pour utiliser son câble réseau. Plusieurs personnes +peuvent travailler à distance sur cette machine, ils ne seraient pas +contents de se voir brutalement interrompus. +
+Dans un terminal, il faut utiliser la commande pdftk
.
Supposons que vos fichiers s'appellent partie1.pdf
,
+partie2.pdf
, partie3.pdf
, et que vous voulez les
+assembler en un seul document memoire.pdf
, dans cet ordre. Il
+faudra taper :
sas ~ $ pdftk A=partie1.pdf B=partie2.pdf C=partie3.pdf cat A B C output memoire.pdf
+
+ +Pour mieux découvrir les commandes et approfondir les concepts +découverts ici, nous vous conseillons de lire les pages suivantes : +
+-h
.clipper
, etc.ssh
pour se
+connecter, transférer des fichiers avec scp
.+Ce sont les ordinateurs avec « Sun » marqué dessus. Ce ne sont ni des +PC, ni des Macintosh mais des ordinateurs différents (on parle +généralement d'« architecture » différente), fabriqués par Sun +(l'entreprise qui produit par exemple Java, qui vous connaissez sans +doute par les applets Java sur Web). Ce sont des machines beaucoup +plus robustes et plus fiables que les PC. En particulier, ils plantent +beaucoup moins. +
++Tout ça, ça coûte cher, ce qui explique qu'on les renouvelle peu. Ceci +explique pourquoi il y a également, à côté des stations Sun, des PC noirs +(de marque Dell), qui sont généralement plus rapides parce qu'ils sont plus +récents. Aujourd'hui, les stations Sun ont disparu des salles informatique +élèves, mais il est possible d'en trouver dans les laboratoires de l'École. +
+Se loguer sur une machine possédant un lecteur CD, mettre son CD +dans le lecteur, brancher son casque, appuyer sur le bouton de gauche +du lecteur (>/>>).
+Ça veut dire qu'il y a un ou des processus qui sont plantés. Très +souvent, il s'agit de Netscape, Mozilla ou StarOffice qui sont partis +aux fraises et qui continuent à tourner bien que leur utilisateur se +soit délogué. Que faire ?
+top
(programme qui affiche dans l'ordre
+les processus qui occupent le plus de capacité de calcul de la
+machine. Ce que vous voyez ressemble à ça :
+
++ PID USERNAME THR PRI NICE SIZE RES STATE TIME CPU COMMAND +27106 forum 4 21 4 8176K 4760K run 0:07 1.20% nnrpd + 8314 forum 6 36 4 4640K 3848K sleep 0:00 0.95% nnrpd + 8511 sys 14 28 0 0K 0K cpu1 0:00 0.87% in.identd + 479 forum 4 46 4 8504K 5216K sleep 0:03 0.66% nnrpd ++Il faut chercher le(s) programme(s) qui occupe(nt) une part +anormalement élevée (genre plus de 90%) du CPU.
Il y a plusieurs solutions en cas de machine « bloquée ». Il faut
+d'abord regarder si la machine marche bien en faisant un
+ping
:
+
+ping machineplantée ++
+Si la machine ne répond pas au ping (si ping ne vous dit pas « machineplantée is alive ») ça veut dire qu'elle est bel +et bien plantée et il faut envoyer, si ce n'a pas été fait, un mail au +SPI en décrivant bien le +problème. N'oubliez pas, après avoir envoyé votre mail, de laisser un +petit mot sur la machine, histoire que le SPI n'ait pas 50 messages +identiques.
++Si elle répond, la manoeuvre courante est de taper :
++ssh /usr/bin/X11/kbd_mode -a machineplantée ++
ou alors il faut se loguer d'abord sur la
+machine coincée et ensuite taper kbd_mode -a
. Ceci est
+censé décoincer le clavier (ne faites jamais de kbd_mode
+-a
pendant que quelqu'un est sur la machine, ça lui mettrait
+tout en l'air et nous serions dans l'obligation de vous écarteler
+au-dessus du bassin).
+Si ça ne marche pas c'est peut-être l'écran qui est coincé, dans ce
+cas-là il faut taper sur la machine coincée Ctrl+D
. Si
+ça ne marche toujours pas, demander à un gourou s'il y en a un dans la
+salle ou envoyer un mail au SPI.
Il faut se loguer (physiquement ou à distance) sur une
+machine avec un lecteur de disquette utiliser les mtools
+(lire le cours de
+tuteurs ou taper man mtools
pour en savoir plus).
+
man
. Ainsi, taper man mtools
vous donne
+accès à la page de man(uel) concernant les
+mtools
. Reportez-vous à notre page sur l'aide en ligne pour en savoir
+plus.
++Par exemple, pour copier un fichier de son compte vers une disquette, +c'est :
++mcopy fichier.txt A: ++
+Inversement, pour récupérer un fichier en provenance d'une +disquette :
++mcopy A:fichier.tex . ++
telnet
?
+ Ce n'est pas une bonne idée : telnet
+n'est pas sûr. N'importe qui peut espionner et récupérer votre mot
+de passe. Utilisez
+plutôt ssh
:
+
Dans un des menus en haut, il faut sélectionner
+eject
. Sinon, mettre l'icône de la disquette dans la
+corbeille : ça éjectera la disquette.
+Bienvenue sur la page web des tuteurs informatique de l'École normale +supérieure. Nous sommes des élèves et anciens élèves bénévoles, dont +le but est d'aider les autres à utiliser les ressources informatiques +de l'ENS, particulièrement le système Unix. Si vous avez une question, +sans doute nos Foires aux questions (FAQ) +peuvent-elles vous aider. +Si vous ne maîtrisez pas encore les notions de base de l'utilisation des +machines Unix, vous pouvez consulter le guide +des premières fois. +Si vous cherchez à retrouver une page précise, le mieux +est sans doute d'aller voir le plan du + site. +
++Pour le reste, le contenu de ce site est organisé en grands thèmes. Les +pages les plus importantes ou les plus populaires de chaque section sont +mentionnées ci-dessous. +
++Attention, la documentation n'est pas forcément à jour. Si une page vous +semble étrange, contrôlez la date de dernière modification indiquée en +pied de page. Si vous êtes gêné par des informations périmées, contactez-nous. +
+
+
+ unix/
+
+
+Comment utiliser les ordinateurs de l'École fonctionnant sous Unix : +présentation de la config conscrits, +les éditeurs de texte, ce que sont les fichiers, comment imprimer, utiliser le shell (la ligne de commande), ou encore +consulter l'aide en ligne... +
+
+
+ internet/
+
+
+Tout ce qui concerne les communications entre ordinateurs et entre +utilisateurs de ces ordinateurs : le +courrier électronique (et la +lutte contre le spam), le +Web, les +news, +forum, +utiliser FTP, se +connecter à distance, se +protéger contre les virus... +
+
+
+ logiciels/
+
+
+Documentation sur d'autres logiciels : le formatteur de texte +LaTeX ; comment gérer différentes +versions de documents — +avec Subversion (SVN) ou git — ; +comment utiliser certains navigateurs +(Mozilla) ou logiciels de messagerie +instantanée (TKabber +et Gaim)... +
+
+
+ theorie/
+
+
+Tout ce qui n'est pas directement lié à l'utilisation des +ordinateurs (qu'est-ce qu'un compte, qu'est-ce qu'un réseau, formats +de fichiers, sécurité informatique...). +
+
+
+ docs/
+
+
+ Nos documentations « papier » prêtes à imprimer : + la dernière doc de rentrée, + des guides de survie d'une page sur + divers sujets, le Hublot, des + articles pour le BOcal. +
++Nos activités sont décrites ici. +Nous vous incitons aussi à lire la charte des +tuteurs et autres meta-informations. +
+ +Le spam, c'est le courrier électronique non sollicité, généralement +commercial (Unsolicited Commercial E-mail ou +UCE en anglais). Le nom vient de SPAM, une charcuterie (Spicy Pork And Ham) anglo-saxonne, plus précisément d'un +sketch +des Monty Python (tiré du Flying Circus) où les +gens répètent sans cesse « SPAM SPAM SPAM » à des clients d'une +auberge demandant s'il n'y pas de plat sans SPAM. +
+Il existe plusieurs types de spam :
+Il existe encore bien d'autres types de spam, +généralement vous pouvez les reconnaître assez vite. Le spam touche +également les newsgroups, mais c'est essentiellement du spam par +courrier que nous parlerons ici.
++Le spam est nuisible car l'essentiel de son coût est supporté par la +communauté, c'est-à-dire les serveurs de mail et routeurs, les +fournisseurs d'accès ainsi que vous. En outre, le spam est +une sérieuse perte de productivité : il inonde vos boîtes aux +lettres et vous oblige à passer du temps à le trier du vrai courrier, +et à le jeter. Ensuite, le spam engorge les réseaux mondiaux. Pour 100 +vrais courriers qui transitent dans les tuyaux, combien de centaines +de spams ? +
++Enfin, la plupart du temps le spam est illégal +puisqu'il exploite des base de données obtenues frauduleusement (scan +de pages Web ou de newsgroups, ventes illégales de fichiers, +etc.). Rappelons qu'au terme de l'art.226-18 du Code +pénal : +
++++Le fait de collecter des données par un moyen frauduleux, déloyal ou +illicite, ou de procéder à un traitement d'informations nominatives +concernant une personne physique malgré l'opposition de cette +personne, lorsque cette opposition est fondée sur des raisons +légitimes, est puni de cinq ans d'emprisonnement et de 300000 euros +d'amende. +
++En cas de traitement automatisé de données nominatives ayant pour fin +la recherche dans le domaine de la santé, est puni des mêmes peines le +fait de procéder à un traitement : +
++
+- Sans avoir préalablement informé individuellement les personnes +sur le compte desquelles des données nominatives sont recueillies ou +transmises de leur droit d'accès, de rectification et d'opposition, de +la nature des informations transmises et des destinataires des +données ;
+- Malgré l'opposition de la personne concernée ou, lorsqu'il est +prévu par la loi, en l'absence du consentement éclairé et exprès de la +personne, ou, s'il s'agit d'une personne décédée, malgré le refus +exprimé par celle-ci de son vivant.
+
+Quand vous croisez un inconnu, dans la rue, lui donnez-vous votre +adresse et votre numéro de téléphone ? Non ? Eh bien sur l'Internet, +c'est pareil. Sans tomber dans la paranoïa (le but premier de +l'Internet est de communiquer et d'échanger avec autrui), ne divulguez +pas des renseignements plutôt confidentiels au premier venu.
++Vous vous êtes certainement déjà inscrit à un site ou un service +gratuit ou non, qui vous demandait vos coordonnées, dont votre adresse +e-mail. Avez-vous regardé sérieusement les petits caractères ou la +case à décocher qui disait que votre adresse serait revendue à +kinenveut ? Ça explique certainement une partie de votre spam. +
+Méfiez-vous particulièrement du système vicieux de +l'Opt-Out, pratiqué dans les formulaires +d'inscription à un service. On vous demande si vous voulez vous +abonner à une newsletter, ou si vous souhaitez « recevoir des offres +exclusives » de la part des partenaires du site. Dans un système dit +d'Opt-In, c'est vous devez cocher la case +pour accepter. L'Opt-Out, c'est quand la case est +déjà cochée. Par défaut, vous serez spammés si vous +ne pensez pas à décocher la case. +
++Outre son caractère retors, le système de l'Opt-Out est également +illégal au sein de l'Union européenne depuis la directive 2002/58/CE +du 12 juillet 2002 (lire +la directive, format PDF). +
+Vous avez fait votre page Web, vous êtes tout content et vous +affichez votre adresse e-mail partout pour que les gens vous disent à +quel point elle est bien. Aïe. Vous allez ainsi tendre la batte de +cricket pour vous faire spammer : la méthode de base des spammeurs +pour récupérer des adresses est d'envoyer des robots scanner le Web à +la recherche d'innocentes adresses sans défense comme la vôtre.
+Solution : encoder son adresse de telle sorte que des humains puissent la lire, +mais pas un robot, en utilisant du CSS. Par exemple : +
++ Mon adresse : jean.paul.sartre<span style="display:none;">NOSPAM</span>@ens.fr ++
Dans un navigateur moderne avec support du CSS, le "NOSPAM" ne sera pas visible. En revanche, un robot collecteur d'adresses le verra et ne comprendra pas qu'il s'agit d'une adresse email. Un humain utilisant un navigateur en mode texte le verra aussi... mais on compte sur son intelligence pour comprendre qu'il s'agit de quelque chose à supprimer.
+Vous pouvez aussi opter pour la solution suivante :
++Mon adresse : jean-paul POINT sartre AT ens POINT fr ++
Le lecteur devra lui-même taper votre adresse en +faisant la traduction (AT->@, etc.) dans son logiciel de +courrier.
+Même problème sur Usenet que pour votre page Web : des robots +parcourent Usenet à la recherche d'adresses non protégées. Les +spammeurs sont très rapides : la rédactrice de cette doc a un +record à 4 jours entre un message sur Usenet-fr avec une nouvelle +adresse et le premier spam.
+Vous pouvez obtenir une adresse qui vous servira uniquement pour +les news. Première solution : une adresse poubelle (chez un +hébergeur gratuit, par exemple), que vous regardez de temps à autres +pour vérifier si par miracle il n'y a pas un vrai courrier dans le tas +d'ordures. +
+Autre solution : demander une adresse chez Alussinan. C'est un service +gratuit géré bénévolement par Florent Faessel, un habitué de Usenet, +où le courrier entrant est filtré drastiquement (des domaines comme +AOL, Noos ou encore Orange sont filtrés à cause de leur manque de +réactivité dans la bataille anti-spam). Demandez-lui gentiment une +adresse. +
+Admettons que vous ne vouliez pas prendre une adresse genre
+pikachu125756@hotmail.com
, mais recevoir les vrais
+courriers de gens qui vous répondent sur votre adresse ENS. Vous
+pouvez quand même vous protéger, mais c'est un poil plus compliqué.
+
Modifiez votre champ From (celui qui donne votre nom et votre
+adresse e-mail) dans votre lecteur de news. La manière de procéder
+dépend évidemment de votre lecteur de news. Avec flrn, ajoutez
+simplement une ligne dans votre .flrnrc
:
+
+name flrn my_hdr From: Luke Skywalker <adresse@anti.spam> ++
Où évidemment, vous remplacez « Luke Skywalker »
+par ce que vous voulez (prénom + nom, ou pseudo). Pour l'adresse
+anti-spam, ajoutez ce que vous voulez à votre véritable adresse. Il
+faut bien qu'on voie que l'adresse n'est pas valide, pour ne pas
+égarer les honnêtes gens qui voudraient vous répondre. Par exemple,
+Luke pourra indiquer comme adresse anti-spam :
+SPAM.IS@DARK.SIDE.invalid
.
Pourquoi le .invalid
? C'est une
+convention pour dire précisément qu'une adresse est invalide. De cette
+façon, les logiciels de mail préviennent immédiatement l'étourdi que
+l'adresse en question n'est pas valide.
+
« Oui mais je veux que les gens normaux puissent +me répondre ! » C'est l'étape 2.
+On utilise un champ appelé Reply-To
qui sert à ça :
+les gens qui répondront verront leur mail envoyé à l'adresse du
+Reply-To
et pas celle du From
. La commande
+XOVER,
utilisée généralement par les spammeurs pour
+récupérer des adresses, ne renvoie pas le Reply-To
, qui
+est donc protégé. En contrepartie, il faut que l'adresse du
+Reply-To
soit valide. Avec flrn, on fait ainsi (toujours
+en éditant le .flrnrc
) :
+
+name flrn my_hdr Reply-to: lskywalk@clipper.ens.fr ++
Avec cette méthode, vous n'échapperez pas à 100% du spam,
+malheureusement... Il semblerait qu'une poignée de robots se mettent à
+récupérer les adresses des Reply-To
(par un XHDR
+Reply-To
). Vous pouvez combiner la solution « adresse
+spéciale » et celle-ci, pour plus de sécurité.
+
C'est trop tard, vous êtes inondé par le spam. Que cela ne vous +empêche pas de vous protéger par les moyens décrits ci-dessus, ça ne +mange pas de pain et ça vous épargnera du spam supplémentaire à +l'avenir. +
++Parfois vous recevez du spam qui prétend que vous êtes inscrit sur une +mailing-list, et qui vous propose gentiment de vous désinscrire si +vous ne souhaitez plus être spammé. Ne répondez surtout +pas ! Ce sont en fait des leurres. Quand le spammeur reçoit +votre demande de désinscription, il sait que votre adresse est valide, +et vous serez spammé de plus belle.
+Pour endiguer le flot du spam, vous n'avez que deux solutions +complémentaires, deux types de filtres utilisables à l'ENS, Procmail +et SpamAssassin. Combinés et bien configurés, ces deux filtres vous +sauveront de l'inondation. +
+Procmail est un outil qui permet de filtrer son mail selon certains +critères que vous spécifiez vous-même. Il peut être utilisé dans le +cadre de la lutte anti-spam. Pour savoir comment utiliser Procmail, +lisez notre documentation à ce +sujet. Attention toutefois à ce que vous faites : plus vous +filtrez, moins vous aurez de spam, mais plus vous aurez des chances de +jeter de vrais mails.
+SpamAssassin est un +filtre anti-spam installé au niveau global à l'ENS. Tous les mails qui +vous arrivent sont filtrés par SpamAssassin qui se fonde sur des +techniques dont on sait qu'elles sont utilisées par les +spammeurs. SpamAssassin ajoute aux en-têtes de vos mails ses propres +en-têtes comme : +
++X-Spam-Status: Yes, hits=11.0 .... +X-Spam-Level: *********** +X-Spam-Checker-Version: SpamAssassin... ++
Les « hits » sont des « points spam » que SpamAssassin attribue à +chaque mail. Par exemple, quand le mail a un sujet entièrement en +majuscules, SpamAssassin attribue n points, n autres quand le mail est +uniquement en HTML, etc. +
++L'idée est d'utiliser ces en-têtes comme critère de filtre dans +Procmail. Lisez donc notre Doc Procmail +pour connaître son fonctionnement en général.
++L'intérêt du dossier « spam » (appelé couramment « spambox », boîte à +spam), c'est que vous pouvez ne le lire que toutes les semaines, par +exemple, pour vérifier s'il n'y a pas du vrai courrier caché dedans +(votre directeur de thèse qui vous écrit en HTML seulement depuis un +PC en Corée). La boîte à spam vous évite d'être dérangé toutes les +deux minutes par du spam quand vous êtes logué. +
+Vous pouvez affiner votre filtrage en utilisant l'en-tête
+X-Spam-Level
pour dire, par exemple, qu'au-delà de 15
+points spam, les courriers concernés partent à la poubelle (attention
+à ce que vous faites en renvoyant du courrier vers
+/dev/null
, vous pouvez perdre tout votre
+courrier).
+
+Bien évidemment, on place toujours la règle la plus stricte +avant l'autre. Ici, vous envoyez d'abord les +courriers à plus de 15 points dans le vide interstellaire, +puis vous mettez les courriers à plus de 5 points dans le +dossier « spam ». +
++# Tous les mails avec un score ≥ 15 passent à la poubelle +:0: +* ^X-Spam-Level: \*\*\*\*\*\*\*\*\*\*\*\*\*\*\* +/dev/null ++
+Pour plus de renseignements, reportez-vous à notre documentation sur procmail
.
+
Animé d'une juste colère, vous souhaitez ne plus subir passivement +le spam mais en découdre avec les vilains. Vous pouvez, dans une +faible mesure. Le spam est réprimé par la plupart des fournisseurs +d'accès à l'Internet (alias « FAI » comme Free, Wanadoo, etc.). Chaque +FAI a un service appelé « abuse » (oui, c'est de l'anglais) qui est +chargé de veiller au respect de la Nétiquette par les abonnés. Une +solution consiste donc à trouver le FAI qu'utilise le méchant spammeur +et à vous plaindre auprès du FAI, pour que celui-ci lui coupe sa +connexion. Ne vous leurrez pas, ce n'est souvent que les petits +poissons qu'on attrape comme ça...
+Pour identifier le FAI du spammeur, il faut lire les en-têtes du
+message de news, ou du courrier. Les en-têtes sont des
+méta-informations qui ne concernent pas le contenu du courrier ou de
+l'article de news, mais sa forme. Par exemple, l'encodage du message,
+le logiciel de mail ou de news utilisé, etc. Dans flrn, tapez
+V
pour voir les en-têtes. L'en-tête
+X-Complaints-To
vous indiquera, comme son nom l'indique,
+auprès de qui déverser votre courroux. Pour le courrier, tapez
+h
dans pine ou mutt pour avoir les en-têtes. Décrypter
+les en-têtes d'un mail est relativement difficile et dépasse le cadre
+de cette documentation. Le mieux à faire est de demander sur forum (dans le groupe
+informatique.mail
) comment on fait.
+
Une fois que vous savez à qui vous plaindre, envoyez un mail en +expliquant bien le contexte : date, heure, groupe s'il s'agit de +Usenet, etc. Joignez dans le corps du message (souvent les services +abuse n'acceptent pas les attachements) une copie des en-têtes du +spam. Ensuite, eh bien... Disons que certains services abuse sont +efficaces et rapides, et que d'autres envoient directement vos +courriers à la poubelle. +
+Chercher à vous venger plus avant (inonder le spammeur de mails par +exemple) est inutile, dangereux et illégal. De plus, vous pouvez vous +tromper et pourrir la vie de quelqu'un qui n'y est pour rien : +les spammeurs falsifient très souvent l'adresse de retour.
++De nombreuses documentations, FAQ et tutoriaux concernant la lutte +contre le spam sont disponibles sur Internet. En particulier, beaucoup +de FAQs sont liées à Usenet. Parmi celles-ci, vous gagnerez à lire : +
++Voici un résumé en quelque points de l'essentiel de ce qu'il faut savoir pour +envoyer des annonces collectives aux élèves. Nous recommandons évidemment la +lecture complète de cette page si vous en avez le temps. +
+tous@clipper
tous@clipper.ens.fr
,
+ servant à faire passer toutes les annonces
+ concernant la vie à l'école (clubs, conférences et séminaires, etc.).
+ Des listes plus spécifiques lettres@clipper.ens.fr
et
+ sciences@clipper.ens.fr
sont également disponibles.tous@clipper.ens.fr
,
+ même si elles n'ont pas vocation à être transmises directement à tous.moderators@clipper.ens.fr
. Nous vous demandons de ne pas envoyer
+ vos annonces à cette adresse !
+On appelle ici « courrier collectif » tout courrier envoyé à un alias
+tel que eleves@clipper
ou encore litt15@clipper
. À
+l'ENS, le courrier collectif est modéré, c'est-à-dire qu'il n'est
+transmis qu'une fois approuvé par une équipe de modération. La modération est
+assurée par Jacques Beigbeder (plus connu sous le nom de « Beig »), responsable
+du SPI, et par une équipe de modérateurs élèves.
+Lorsque vous envoyez un courriel à un alias, il est d'abord transmis aux
+modérateurs qui décident s'il est pertinent ou non de le transmettre. S'il
+n'est pas transmis, vous serez normalement averti par un courriel de refus. En
+cas de question ou de problème, vous pouvez contacter la modération en écrivant
+à moderators@clipper
.
+
+La modération se justifie par des raisons techniques : À l'ENS, le
+courrier de tous les utilisateurs d'un compte clipper est stocké sur un disque
+commun. Pour les comptes anciens, il s'agit de boîtes au format mbox stockées dans la partition
+/var/mail
. Pour les comptes depuis 2014, il s'agit de boîtes au
+format Maildir stockées dans
+/d
.
Si un disque collectif est plein, plus personne ne peut ni envoyer, ni + recevoir de message. Un des buts de la modération est d'empêcher les disques de + se remplir trop rapidement.
+Au passage, on vous rappelle la commande df
qui
+vous permet de voir l'état d'un disque. Ainsi, pour vérifier où en est
+/var/mail
:
sas ~ $ df /var/mail
+Filesystem kbytes used avail capacity Mounted on
+/dev/dsk/c0t0d0s6 3595709 3291260 268492 93% /var/mail
+
+ sas ~ $ df /d
+Filesystem 1K-blocks Used Available Use% Mounted on
+kvm11.spi.ens.fr:/a 2113787904K 642279424K 1364133888K 33% /d
+
+
+Ceci vous indique qu'il ne reste que 7% d'espace libre sur le disque
+collectif... Or le courrier collectif coûte cher en
+ressources. Imaginons un courrier de 10Ko envoyé à
+eleves@clipper
. Cet alias regroupe plus de 1500
+personnes. À l'arrivée, on a un courrier qui pèse plus de 15Mo
+sur le disque réservé au courrier. La modération permet en outre de
+bloquer le spam adressé aux alias collectifs de l'École, ce qui gagne
+de la place disque et vous évite d'être (trop) inondé.
+
+La modération, outre son importance technique, permet également d'éviter +de submerger les gens de messages mal ciblés, sans intérêt, ou +simplement trop nombreux. +
+Prenons un exemple : vous souhaitez envoyer un courrier à +votre promotion littéraire. Il suffit d'adresser votre courrier +directement à l'adresse concernée. Votre courrier arrivera chez les +modérateurs qui devront statuer sur son compte. Trois +possibilités :
+Les modérateurs peuvent également vous demander des précisions,
+vous signaler une erreur (vous avez écrit à litt@clipper
alors que
+ça ne concerne que les littéraires 2002, cf. infra les alias
+ disponibles), etc. Attention, les modérateurs ne peuvent pas
+modifier ou corriger vos messages. Si nous vous demandons d'effectuer des
+changements ou de transmettre à un autre alias, il faut envoyer un nouveau
+courriel.
+La modération ne doit pas être une censure. Elle se fait dans l'objectif +d'économiser de la place disque et d'éviter d'inonder les utilisateurs +de trop nombreux mails. De manière générale, quand un modérateur a un +doute sur le sort du message, il se concerte avec les autres modérateurs +et ils procèdent à un vote. Il n'existe pas de règles strictes pour la +modération, la prise de décision dépend plutôt de chaque cas. Néanmoins, +quelques grands critères peuvent être dégagés : +
++Chaque courrier doit être adressé le plus précisément possible (cf. +ci-dessous la partie sur les alias). Si un message +ne concerne que les physiciens, il doit être adressé aux physiciens +uniquement et non à eleves@clipper. De la même manière, les messages +personnels (type petites annonces) sont prohibés sur les listes +collectives. +
++Le courrier doit être le plus léger possible. Les pièces jointes sont +interdites. Si vous avez absolument besoin de transmettre un fichier, +reportez-vous à [1]. +
+
+Votre courrier doit être lisible par tous. Si vous
+utilisez un logiciel de mail graphique (Outlook Express, Eudora...),
+vérifiez votre configuration pour que vos envois soient en texte brut
+(pas de copie en HTML, inutile donc nuisible) sans encodage exotique
+(pas de quoted-printable
en particulier). Si vous avez
+besoin d'aide à ce sujet, reportez-vous au guide
+sur le format des messages sous Outlook Express des WinTuteurs.
+
+Le courrier collectif est normalement réservé à l'administration, au corps +enseignant et aux élèves, dans le cadre d'activités concernant directement l'école : +
++Les différents groupes et associations de l'école peuvent occasionnellement +envoyer des mails sur les listes collectives, à conditions que ceux-ci +concernent plus que leurs membres propres et qu'ils aient un intérêt +informatif. +
++Ainsi, on autorise aux groupes et associations de l'école un courrier collectif +par an, pour se présenter. +
++Les différents élus de l'école ont le droit d'envoyer des mails en rapport avec +leurs statuts d'élus. +
++Ajoutons que le courrier collectif n'a pas vocation à être un lieu de débat. +Par conséquent tout message purement polémique (ne rentrant pas dans le cadre +des communications autorisées - c'est à dire informatif et en rapport direct +avec l'école) est refusé. Encore une fois, il ne s'agit pas de censurer mais +d'éviter des flots de réponses (baptisés « droit de réponse » par leurs +auteurs) sur un alias collectif. Si vous voulez discuter politique ou autre, +faites-le en privé. +
++Dans tous les cas, chacun doit faire preuve de la plus grande correction à +l'égard de ses interlocuteurs dans tous les échanges électroniques. D'autres +médias sont à votre disposition (BOcal) si votre message ne remplit pas +ces critères. +
+Ces alias sont modérés par les modérateurs élèves.
+tous@clipper
+ guests@clipper
+ Très basiques : c'est phy@clipper
pour toucher
+tous les physiciens, ou encore 15@clipper
pour toucher la
+promotion 2015.
Pour les disciplines, existent : maths
,
+phy
, bio
, litt
,
+informatique
(à la place de l'obsolète
+info@clipper
, qui attirait plus de spam que de vrai
+courrier), geologie
.
Un cas un peu particulier est sciences@clipper
qui
+touche tous les scientifiques et litt@clipper
qui
+touche tous les littéraires.
La plus grande partie d'entre eux consiste à spécifier une promo à
+un alias de spécialité. Exemple : vous voulez toucher les matheux
+2015, vous utilisez maths15
. Pour les physiciens 2014, ce
+sera phy14
. Il est à noter que les alias
+bioXX@clipper
et bio@clipper
renvoient
+directement vers l'équivalent vers horus
, le serveur du
+magistère de biologie. Ces alias sur horus
sont gérés par
+Pierre Vincens.
+La modération de ces alias est d'abord effectuée par une équipe qui ne
+comprend pas les modérateurs élèves, et, si le message est accepté, passe
+par l'équipe des modérateurs élèves pour décider de transmettre ou non le
+message sur tous@clipper
.
+
tous@ens
+ eleves@ens
+ eapd@ens
+ La liste complète des alias fins se trouve dans la documentation +du SPI (disponible uniquement à partir de l'ENS).
+
+Vous pouvez savoir dans quels alias vous vous trouvez avec la commande
+moncompte
(à exécuter dans un terminal depuis un poste en salle informatique). Vous pouvez consulter la liste des alias de clipper et
+les personnes qu'ils touchent en regradant dans le répertoire
+/usr/local/lib/mail/aliases/
.
+
La modération ne gère pas :
+@ens.fr
crées par le SPI (le plus souvent
+ pour des clubs) et gérées par le système SYMPA. Deux systèmes SYMPA
+ coexistent à l'ENS : l'ancien (sympa@ens.fr
) voué à
+ disparaître, et le nouveau https://lists.ens.fr/wws. Elles sont
+ parfois modérées par le responsable de la liste (et non par les modérateurs
+ élèves).@quatramaran.salle-s.org
sont utilisés par certains
+ clubs et sont gérées par le quatramaran, une machine
+ appartenant à d'anciens élèves. Elles sont parfois modérées par le
+ responsable de la liste (mais jamais par les modérateurs élèves).tuteurs
correspondent en
+ réalité à de véritables comptes clipper. Les messages leur sont donc
+ transmis directement, sans modération.+Commencez par mettre en place une liste de diffusion (à demander + au SPI). Ensuite, il vous + choisir sur quelle liste envoyer ce message : sciences@ s'il s'agit + d'un message à destination des scientifiques, lettres@ si c'est pour + les littéraires, 14@ pour toucher la promotion entrée en 2014, + etc. Il est important de bien choisir votre public afin de limiter + le nombre de message. + +Dans votre courriel de présentation, n'oubliez pas de fournir +l'adresse de votre liste de diffusion pour ceux qui désirent en savoir +plus.
++Vous pouvez aussi, bien entendu, faire passer vos annonces sur la page /tous/. +
++Si vous trouvez que vous recevez trop de messages de certains expéditeurs, vous +pouvez contacter la modération. Cependant, en cas de désaccord persistant, il +vous faudra peut-être vous adresser à l'expéditeur du message. Vous pouvez aussi +filtrer les messages de cet expéditeur à l'aide de procmail. +
+Rappelons que vous avez signé une charte concernant l'utilisation +des moyens informatiques de l'École, donc vos droits sont déjà +restreints. Ensuite, les modérateurs font ce travail sur demande du +SPI qui n'a pas le temps de s'en occuper. Enfin, la modération se fait +sur des critères techniques et pas à la tête du client.
++L'utilisation du courrier collectif pour des messages urgents n'est pas +recommandé. D'une part, les élèves ne consultent pas forcément leur mail avec +une régularité suffisante pour être informés à temps. D'autre part, la +modération étant assurée par des élèves bénévoles sans garantie de +disponibilité, votre message ne sera pas transmis avant qu'un modérateur ait le +temps d'en prendre connaissance. +
++Il arrive que certains courriels échappent à l'attention des modérateurs. Si +vous n'avez pas vu passer votre courriel, que vous n'avez pas reçu de message de +refus, et que votre envoi date d'il y a plusieurs jours, vous pouvez contacter +les modérateurs pour leur demander ce qui se passe. +
+
+S'il a déjà été transmis, c'est bien évidemment trop tard. Sinon, contactez
+immédiatement moderators@clipper
en indiquant le message concerné
+pour que nous ne le transmettions pas. Si vous souhaitez envoyer une nouvelle
+version du message en remplacement, envoyez-la à l'alias, pas aux
+modérateurs.
[1] +Évitez les formats difficilement lisibles à l'École, tels que Word ou +Excel, qui de plus sont très volumineux : préférez le texte brut, le +HTML ou au pire le PDF). Pour communiquer à vos correspondants +l'emplacement d'un fichier, utilisez l'une des deux solutions +suivantes : +
+~monlogin/seminaire.pdf
».www/
et
+indiquer ensuite l'URL. Exemple : « pour le programme du
+séminaire, cf.
+http://www.eleves.ens.fr/home/monlogin/seminaire.pdf »Reportez-vous à cette page pour plus d'informations sur les pages élèves.
+ +Le fonctionnement du courrier élctronique, ou « courriel » +(en anglais e-mail, pour electronic mail) présente de +nombreuses similitudes avec le courrier papier : il y a des +adresses, des enveloppes, des messages, des classeurs pour ranger le +courrier que vous recevez, une signature...
+Malheureusement, comme dans vos boîtes aux lettres, il y a aussi de +la publicité (le fameux « spam »). Pour savoir comment vous +protéger du spam, et comment essayer d'endiguer le flot si vous êtes +déjà atteint, reportez-vous à +notre documentation contre le spam.
+ Une adresse électronique est toujours de la forme
+utilisateur@machine
. Par exemple :
+Raymond.Aron@gmail.com +Jean-Paul.Sartre@ens.fr +Pierre.Caron-de-Beaumarchais@hotmail.fr +kikoo-lol324@hotmail.com ++
Le caractère @
s'appelle
+un arobase (ou « a » commercial) et se lit
+« at ». Donc, l'adresse president@whitehouse.gov
se lit
+« president at whitehouse point gov » ; on
+prononce « point » comme en français.
L'arobase sépare la partie désignant un humain (à gauche de
+l'arobase) de la partie désignant un ordinateur (à droite de
+l'arobase) :
Dans nos exemples, les noms d'utilisateurs sont +donc « Raymond.Aron », « Jean-Paul.Sartre », +« Pierre.Caron-de-Beaumarchais » et +« kikoo-lol324 ». La partie droite de l'adresse, après +l'arobase, désigne le serveur de messagerie, +c'est-à-dire la machine sur laquelle on est inscrit. Dans nos exemples, +ce sont « ens.fr », « gmail.com », +« hotmail.fr » et « hotmail.com ».
+Attention : Comme on peut le +voir, les noms d'utilisateurs ne sont pas nécessairement des +noms d'état-civil : ce peuvent être de simples +pseudonymes. Par conséquent, rien n'empêcherait un pirate de prendre +pour nom d'utilisateur votre propre nom, et de se faire ainsi passer +pour vous. Et inversement : si vous recevez un message signé +Jacques Chirac, il se peut tout à fait que ce ne soit pas l'homme +politique qui vous écrive, mais quelqu'un qui se fait passer pour +lui.
+
+À l'ENS, vous recevez un identifiant, qui est
+généralement composé à partir de votre nom de famille. Par exemple, pour
+Jean-Paul Sartre, ce sera sartre
. Cet identifiant sert
+également de nom d'utilisateur pour le courrier électronique ;
+Jean-Paul Sartre pourra donc recevoir des messages envoyés à
+l'adresse
sartre@ens.fr+
+Mais il existe également des alias, c'est-à-dire des +redirections automatiques de courriel, qui utilisent vos prénom et nom, +sous la forme +Prenom.Nom@ens.fr (avec ou sans majuscule, peu importe). Ce qui +nous donnera par exemple : +
++Jean-Paul.Sartre@ens.fr ++
Attention : La
+forme sartre@ens.fr
est potentiellement ambiguë si vous
+avez un homonyme dans l'ENS (par exemple s'il existe un Pierre
+Sartre). Il est donc préférable d'utiliser la forme
+développée Prenom.Nom@ens.fr
. C'est cette dernière
+adresse qu'il vaut mieux communiquer à vos correspondants, car elle est
+indépendante de votre nom de login et de tout nom de machine. Ainsi, si
+dans quelques années vous devenez chercheur à l'ENS et perdez votre
+compte sur clipper pour en retrouver un autre, sur un autre réseau, avec
+un autre nom de login, votre adresse restera valide ; et vous êtes
+également à l'abri de changements dans les noms des machines.
Remarques typographiques :
+Un expéditeur normalien, envoyant son courrier en interne à l'École, +pourra se contenter d'écrire :
++Jean-Paul.Sartre +sartre +sartre@clipper ++
Les entêtes sont une série de lignes qui contiennent tous les +renseignements nécessaires au bon acheminement du courrier : auteur, +date, machine qui envoie, etc. Certains de ces renseignements sont +donnés par l'auteur du courrier, comme le destinataire ou le sujet. Pour +chaque courrier envoyé, il y a ainsi plusieurs +champs à remplir. Les plus courants sont :
+
+ To
+ |
+ le destinataire. Vous pouvez en mettre plusieurs, +séparés par des virgules. | +
+ Subject
+ |
+ le sujet du courrier. Il faut obligatoirement en +mettre un, ne serait-ce que pour donner à votre correspondant une idée +de ce que vous allez lui dire. | +
+ Cc
+ |
+ la copie carbone. C'est là que l'on met les +adresses des personnes auxquelles on veut envoyer une copie +conforme de votre courrier mais qui n'en sont pas destinataires +principaux. On peut également indiquer plusieurs personnes, en séparant +les noms par des virgules. | +
+ Attachments
+ |
+ Ce sont les pièces jointes, fichiers que vous +joignez éventuellement à votre courrier (image, rapport, etc.), et qui +seront envoyés sous forme codée avec le courrier électronique. | +
+Il y en a d'autres, plus techniques, qui servent en d'autres +circonstances : +
+
+ Bcc
+ |
+ blind carbon copy : copie conforme +aveugle. C'est ce champ que l'on remplit si l'on veut envoyer +des copies du courrier à plusieurs personnes sans qu'elles sachent à qui +d'autre des copies ont été envoyées. Ce champ peut être très utile si +vous voulez envoyer un message à des personnes qui ne se connaissent pas +entre elles : ce n'est pas à vous de divulguer les adresses +électroniques de vos contacts à des gens qu'ils ne connaissent +pas. Ainsi, vous pouvez envoyer un message à Bip-Bip et au Coyote sans +que le Coyote apprenne l'adresse de Bip-Bip. | +
+ Reply-To
+ |
+ adresse de réponse. C'est l'adresse à laquelle +vous voulez que l'on vous réponde, si elle est différente de celle d'où +vous écrivez. Cela ne sert pas dans l'usage courant. | +
+ Fcc
+ |
+ dossier de rangement. Ce champ indique dans quel +dossier (folder) une copie du courrier envoyée est +automatiquement copiée. | +
+ PGP
+ |
+ Pretty Good Privacy : indique si votre message est +chiffré ou signé cryptographiquement. | +
+La partie située à droite de l'arobase représente soit un nom de
+machine, comme clipper.ens.fr
, soit un nom de
+domaine comme ens.fr
. Il y a un moyen de distinguer
+les uns des autres, et de savoir à quelle machine sera envoyé le
+courrier en connaissant l'adresse de destination : la
+commande host
. Supposons que vous vouliez savoir qui
+traite le courrier de la machine
+jupiter.ecoledoc.ibp.fr
. Tapez dans une
+fenêtre terminal :
+
+host jupiter.ecoledoc.ibp.fr ++
+La réponse pourrait être : +
++jupiter.ecoledoc.ibp.fr has address 132.227.65.9 +jupiter.ecoledoc.ibp.fr mail is handled (pri=20) by pascal.ibp.fr +jupiter.ecoledoc.ibp.fr mail is handled (pri=30) by shiva.jussieu.fr +jupiter.ecoledoc.ibp.fr mail is handled (pri=40) by soleil.uvsq.fr +jupiter.ecoledoc.ibp.fr mail is handled (pri=10) by ibp.ibp.fr ++
+Ceci indique d'abord l'adresse numérique (ou IP) de la station
+jupiter.ecoledoc.ibp.fr
de Jussieu, puis les machines traitant le
+courrier électronique qui lui est adressé (la priorité indique l'ordre de
+préférence : soleil.uvsq.fr
sera donc utilisé en dernier
+recours, si toutes les autres sont inaccessibles).
+
+Lorsque cette commande ne renvoie pas d'adresse sur la première ligne du
+compte-rendu, c'est que le paramètre fourni était un nom de domaine (essayez
+avec host ecoledoc.ibp.fr
); la présentation des hôtes traitant le
+courrier de ce domaine est identique.
+
+Les listes de diffusion (en anglais, mailing lists) +sont des automates de distribution de courrier électronique qui permettent de +discuter sur des sujets variés. On envoie un courrier électronique spécial, +contenant un ordre bref et codifié, à l'automate pour qu'il nous inscrive, on +reçoit alors tous les courriers envoyés à la liste et on peut soi-même en +envoyer. +
++Il n'existe pas d'index des listes de diffusion, et on obtient leurs adresses +et leur mode d'emploi en lisant des documentations sur le Web ou bien par +bouche-à-oreille. C'est ce caractère de « bonnes adresses » qui filtre les +inscriptions et garantit aux listes de diffusion un contenu informatif de +grande qualité. Quelques règles pour respecter cette qualité : +
++Dans le temps, rares étaient les élèves qui avaient un ordinateur connecté au réseau dans leur thurne. On allait en salle +informatique pour lire son mail avec +pine ou mutt, des programmes sobres mais efficaces. +
+
+Puis, à l'occasion des vacances ou d'un stage loin de l'alma mater, on apprenait à se connecter par ssh
(voir aussi le tutoriel des Wintuteurs sur PuTTY), ce qui permettait de continuer à utiliser pine
ou mutt
confortablement depuis Oxford, Nice ou Tokyo.
+
+Aujourd'hui c'est plus pareil ; ça change, ça change. De plus en plus nombreux sont ceux qui préfèrent l'aspect familier du Webmail, ou, pour les plus dégourdis, un lecteur de courriel sur leur ordinateur personnel. +
++Cette deuxième catégorie sera peut-être intéressée par +le tutoriel des WinTuteurs. +
+Insistons sur le fait que le Webmail ne devrait idéalement être utilisé que +comme solution de secours. Ce n'est pas un outil performant (vous vous en +rendrez forcément compte si un jour vous devez faire un gros ménage dans vos +mails pas triés depuis deux ans (situation qu'il vaut mieux éviter de toutes +façons)). Nous vous conseillons donc d'apprendre à vous servir d'un vrai +lecteur de courriel pour votre usage quotidien.
++Tout d'abord, il ne faut pas utiliser d'accents ni dans l'adresse, ni le +sujet, ni généralement dans l'en-tête du courrier électronique. Ceci +parce que le protocole d'acheminement du courrier électronique y +interdit l'usage d'un jeu de caractères autre que celui de l'anglais, et +que la présence d'un accent provoquera des résultats bizarres sur +certaines machines chargées de transmettre votre courrier : les +« é » deviendront des « i » par exemple, ou bien le +sujet sera coupé à cet endroit, ou bien même votre message vous sera +renvoyé (cas rarissime). +
++Pour ce qui est de l'emploi d'accents dans le corps d'un courrier +électronique, il faut simplement respecter les précautions suivantes : +
+pine
réalise la conversion automatiquement au
+moment de la lecture du texte, mais pas au moment de la sauvegarde, ce
+qui fait que vous risquez un jour de vous retrouver nez à nez avec ce
+genre de chose (a fortiori si vous décidez de changer de
+logiciel de courrier électronique).
++C'est très simple. Utilisez l'une des méthodes suivantes : +
++Ce n'est pas très difficile, en fait ; il suffit de ne pas faire +attention à ce que l'on fait : +
+Le courrier électronique, ou courriel (en +anglais, e-mail : electronic mail) est le service +Internet le plus ancien. Il a même été, à une époque, le service +Internet le plus utilisé : en 1992, il représentait presque 50% du +trafic mondial en volume. Mais ce score est aujourd'hui écrasé par le +World Wide Web : les utilisateurs actuels d'Internet consultent +plus de sites web qu'ils n'envoient de messages électroniques.
+Si cette page n'a pas répondu à vos questions, vous pouvez consulter + la FAQ des tuteurs sur le + courrier électronique.
+ +Cet article précise juste le fonctionnement du courrier électronique à + l'ENS ; il ne rappelle pas les généralités sur le + courrier électronique. Il s'adresse uniquement aux étudiants à + l'École, c'est-à-dire ceux qui disposent d'un compte sur clipper.
+En entrant à l'ENS, vous disposez de deux adresses électroniques :
+login@clipper.ens.fr
, où login est votre nom d'utilisateur sur clipperprenom.nom@ens.fr
, sans accents sur vos
+ prénoms et noms, et avec des règles particulières en cas d'homonymie, ou si
+ votre nom comporte des espaces ou des tirets (demandez au SPI en cas de
+ doute).Ces deux adresses désignent la même boîte aux lettres électronique. Autrement + dit, le courrier adressé à n'importe laquelle de ces deux adresses arrive au + même endroit.
+Par la suite, si vous restez à l'ENS en thèse ou dans un autre cadre, vous
+ obtiendrez un compte de messagerie sur un autre serveur que clipper (par
+ exemple mail.dma.ens.fr), et vous pourrez conserver l'adresse
+ @ens.fr
(mais pas celle @clipper.ens.fr
) pour la
+ faire pointer vers l'adresse que vous aurez sur l'autre serveur. Ainsi, parce
+ qu'elle est plus pérenne et plus professionnelle, nous vous recommandons
+ d'utiliser uniquement l'adresse @ens.fr
. Le reste de cet article
+ suppose que vous disposez d'une adresse @clipper.ens.fr
: si
+ votre mail est déjà géré par un autre serveur, consultez l'aide pour votre
+ messagerie ou essayez d'adapter ces instructions. Les adresses
+ @clipper.ens.fr
cessent d'être valables environ un an après la
+ fin de votre scolarité, et celles @ens.fr
environ un an après la
+ fin de votre affiliation à l'ENS.
En plus de votre adresse à l'ENS, vous pouvez bénéficier d'une boîte aux
+ lettres électronique et d'une redirection de courrier en
+ @normalesup.org
valables à vie avec l'association des anciens élèves.
Les machines en libre service des salles informatiques ont une installation + de Thunderbird préconfigurée pour accéder à votre messagerie. Nous vous + recommandons d'utiliser Thunderbird si vous souhaitez utiliser un client + graphique.
+Si vous souhaitez utiliser un client avancé, nous vous recommandons mutt (ou éventuellement pine). Attention, n'utilisez pas
+ mail
sauf si vous savez ce que vous faites (il va créer une inbox
+ à un endroit non-standard qui va perturber les autres logiciels qui accèdent à
+ votre mail).
La solution la plus facile est d'utiliser le webmail. + Cependant, le webmail est très peu performant et peu pratique : il est + recommandé de prendre le temps de configurer autre chose.
+Un bon compromis entre simplicité et efficacité est
+ d'utiliser Thunderbird sur votre machine personnelle pour consulter votre
+ courrier électronique à distance. Pour ce faire, téléchargez Thunderbird, installez-le
+ et lancez-le. Indiquez votre nom, votre adresse électronique
+ @ens.fr
et votre mot de passe. Si l'autoconfiguration échoue,
+ indiquez les réglages suivants et créez le compte (ne demandez pas à
+ Thunderbird de tester les paramètres !) :
clipper.ens.fr
port 993 SSL/TLS, authentification par simple mot de passe. Avec certains logiciels (par exemple le client mail de Mac OS X), il faut préciser que le préfixe IMAP est "Mail".clipper.ens.fr
port 465 SSL/TLS, authentification par simple mot de passe.Thunderbird vous permet de récupérer votre courriel ENS sur votre machine personnelle, et peut également être utilisé pour votre boîte aux lettres personnelle.
+Bien sûr, si vous savez utiliser mutt ou pine, vous pouvez vous en servir en vous connectant à distance.
+Peut-être souhaitez-vous rediriger votre courrier électronique ENS vers votre + boîte aux lettres personnelle. Il est déconseillé de faire cela si votre courriel personnel est hébergé par un service gratuit et sans garanties comme Gmail ou Hotmail : ces services n'offrent aucune garantie de sécurité, de confidentialité ou de disponibilité, et vous pouvez perdre tout accès à votre messagerie du jour au lendemain, alors que l'ENS a du personnel prêt à aider en cas de problème.
+Si vous souhaitez quand même le faire, la bonne façon est de créer un fichier
+ .forward
dans votre répertoire personnel. Pour ce faire,
+ reportez-vous à l'article sur la
+ question dans la FAQ, ou au guide du SPI. En procédant
+ ainsi, le courriel qui arrive sur clipper est redirigé vers votre autre
+ adresse.
La mauvaise façon de le faire est de fournir votre nom d'utilisateur + et mot de passe à Gmail (ou à un autre service) pour qu'il se connecte à + clipper et aille chercher votre courrier électronique lui-même. En procédant + de cette façon, vous donnez accès à votre compte à un service tierce partie, + ce qui est dangereux et interdit par la charte. Le SPI peut détecter de telles + connexions et les bloquer, voire suspendre votre compte et vous demander de + changer de mot de passe.
+Vous recevrez beaucoup de courriel collectif (environ deux mails par jour) + sur votre boîte aux lettres ENS. Vous pouvez également utiliser des alias pour + contacter directement toute votre promotion ou tous les élèves. Pour éviter + les abus, ces alias sont modérés. Pour plus d'information, reportez vous au guide sur le courriel collectif.
+Si cette page n'a pas répondu à vos questions, vous pouvez consulter + la FAQ des tuteurs sur le + courrier électronique.
+ ++Envoyer un courrier en anglais ? Pas de problème. En français ? Ça va à +peu près. En allemand ? En espagnol ? Pareil, on se débrouille. En +polonais, en danois ? C'est déjà plus difficile. En russe ou en grec ? Là +ça devient vraiment compliqué. En chinois ou en japonais ? Le cauchemar ! +
++Pour pouvoir envoyer des courriers dans des langues bizarres, il faut avant +tout savoir taper les messages. Pour ça, vous pouvez vous référer à notre +page sur comment taper de +l'Unicode. Il est également utile d'avoir lu la page sur les +problèmes théoriques liés aux +langues. +
++Peu de logiciels de courrier gèrent correctement Unicode. En particulier, il +n'est pas question d'utiliser Pine. Heureusement, le meilleur +logiciel de courrier que nous ayons ici, Mutt, s'en tire +parfaitement. Le seul autre logiciel de courrier gérant Unicode ici est le +module courrier de Mozilla. C'est de Mutt que +nous parlerons ici. +
++Vous devez donc utiliser Mutt, avec comme éditeur un éditeur gérant Unicode. +Ça ne vous laisse pas énormément de choix, mais c'est le choix parmi le +meilleur.
++Avant toutes choses, il vous faut obtenir un +terminal en +Unicode pour pouvoir lancer Mutt dedans. +
++Dès que vous avez ainsi lancé Mutt, tous vos courriers devraient s'afficher, +quelle que soit leur langue. Il n'y a rien de plus à faire. +
++Pour envoyer un courrier à quelqu'un disposant d'un logiciel de courrier +moderne, il n'y a rien de spécial à faire : composez le message comme +d'habitude (on a expliqué dans +une autre page comment +taper dans des langues exotiques), et envoyez-le. +
+
+Une petite subtilité qui peut se produire : quand vous répondez à un
+courrier, vous le citez, avec en chapeau un texte d'« attribution » du
+style « Le 29 février 2000, Untel Tartampion a écrit : ». Le problème
+vient du é dans « écrit » : il vient directement de votre fichier
+.muttrc
, et est codé en iso-8859-1
. Ceci peut
+faire échouer la détection automatique du codage par votre éditeur. Pour
+corriger ça, avant de répondre, tapez :set attribution=, puis
+Tab, et corrigez.
+
+Ne lisez ça que si ça ne marche pas. Si ça marche, pas la peine de vous +compliquer la vie. +
++Il peut y avoir plusieurs causes. Si les caractères s'affichent comme des +carrés en pointillés, c'est que la police utilisée n'a pas les caractères +nécessaires, il n'y a pas grand chose à faire, à part essayer de trouver une +police plus riche. +
++Si le texte s'affiche rempli de points d'interrogation, le problème vient du +logiciel de courrier de votre correspondant, qui n'a pas correctement +étiqueté le courrier avec le codage utilisé. La situation n'est pas +désespérée. Appuyez sur v, et Mutt affichera les parties du +message (une seule en général). Sur la droite, vous verrez une mention du +genre : +
++[text/plain, 8bit, iso-8859-1, 0.5K] ++
+Le text/plain
permet de reconnaître le courrier lui-même dans
+le cas où il y a des attachements. Ce qui nous intéresse alors est le
+troisième champ, qui est ici iso-8859-1
: ça indique que Mutt
+a détecté le codage ISO-8859-1, soit le codage pour les langues
+occidentales. Le plus probable est que votre courrier indique
+us-ascii
, ce qui veut dire qu'aucun codage n'est explicitement
+indiqué. Ou bien il y en a un autre, qui n'est pas le bon.
+
+Dans tous les cas, vous pouvez demander à Mutt d'essayer un autre codage de +votre choix en tapant par exemple : +
+:charset-hook iso-8859-1 koi8-r+
+où iso-8859-1
est le codage détecté par Mutt, et
+koi8-r
celui que vous voulez lui faire essayer. Pour que ce
+soit pris en compte, il faut revenir à l'index et ré-ouvrir le message.
+
+Pour savoir quel codage essayer, il faut avoir une vague idée de la langue +dans laquelle est le message. Vous pouvez essayer les +suivants (les majuscules n'ont pas +d'importance) : +
+ISO-8859-1
, ISO-8859-15
,
+ Windows-1252
, MacRoman
pour les langues
+ occidentales ;ISO-8859-2
, Windows-1250
,
+ MacCentralEurope
pour les langues d'Europe
+ centrale ;ISO-8859-3
pour les langues d'Europe du
+ sud ;ISO-8859-4
ISO-8859-13
,
+ Windows-1257
pour les langues baltes ;ISO-8859-5
, KOI8-R
, KOI8-U
,
+ Windows-1251
, CP866
, MacCyrillic
,
+ MacUkraine
pour le cyrillique ;ISO-8859-6
, Windows-1256
pour
+ l'arabe ;ISO-8859-7
, Windows-1253
,
+ MacGreek
pour le grec ;ISO-8859-8
, Windows-1255
pour
+ l'hébreu ;ISO-8859-9
, Windows-1254
,
+ MacTurkish
pour le turc ;ISO-8859-10
pour les langues
+ nordiques ;ISO-8859-14
pour le celte ;Chinese
(c'est GB2312), Big5
,
+ EUC-TW
, GBK
, GB18030
pour le
+ chinois ;EUC-JP
, ISO-2022-JP
, Shift_JIS
+ pour le japonais ;Windows-1258
, VISCII
, TCVN-5712
+ pour le vietnamien ;EUC-KR
pour le coréen ;MacCroatian
pour le croate ;MacIceland
pour l'islandais ;MacRomania
pour le roumain ;TIS-620
pour le thai ;ARMSCII-8
pour l'arménien ;UTF-8
, UTF-7
pour toutes les langues.
+Quand vous avez trouvé quel était le bon codage, vous pouvez configurer Mutt
+pour que le changement se fasse automatiquement. Pour ça, ajoutez dans votre
+fichier .muttrc
des lignes de la forme :
+
+message-hook . "charset-hook iso-8859-1 iso-8859-1" +message-hook ~f"untel" "charset-hook iso-8859-1 koi8-r" ++
+La première ligne indique à mutt que pour tous les messages, il doit
+convertir iso-8859-1
en lui-même ; elle sert à effacer les
+effets de la suivante. La seconde ligne dit que pour les messages
+d'Untel, il faut prendre
+l'iso-8859-1
pour du koi8-r
(untel
+est une partie de l'adresse de l'expéditeur (ou une expression
+rationnelle)).
+
+L'idéal est quand même de convaincre votre correspondant de configurer +correctement son logiciel de courrier. +
++Le problème qui peut vous arriver, c'est que votre correspondant n'arrive +pas à vous lire, parce que son logiciel de courrier ne connaît pas Unicode. +Si vous n'arrivez pas à le convaincre d'en adopter un moins rudimentaire, +voilà comment vous adapter à lui. +
+
+La première méthode est de trouver quel codage il accepte. En général c'est
+facile : c'est le même que celui des courriers qu'il envoie, et nous avons
+vu plus haut comment le déterminer. Au pire, il vous reste à tester les
+différents codages de la liste jusqu'à en trouver un qu'il arrive à lire.
+Mettons pour la suite que le codage qui convient est koi8-r
.
+
+Mutt possède une option send_charset
, dont la valeur par défaut
+est us-ascii:iso-8859-1:utf-8
. Ça veut dire qu'au moment
+d'envoyer un courrier, Mutt essaiera successivement les codages
+us-ascii
, puis iso-8859-1
et enfin
+utf-8
, jusqu'à en trouver un assez riche pour coder votre
+courrier (utf-8
est toujours assez riche). Il s'agit donc
+d'ajouter le codage de votre correspondant à la liste, en mettant la ligne
+suivante dans votre fichier .muttrc
:
+
set send_charset="us-ascii:iso-8859-1:koi8-r:utf-8"+
+Ceci se lit : si le courrier ne contient que des caractères anglo-saxons,
+utiliser le codage us-ascii
, sinon, si le courrier contient
+aussi des caractères accentués occidentaux, utiliser le codage
+iso-8859-1
, sinon, si le courrier contient des caractères
+cyrilliques, utiliser le codage koi8-r
, et sinon enfin utiliser
+le codage utf-8
(entre autres si le courrier contient des
+accents occidentaux et du cyrillique, par exemple pour un courrier
+bilingue en français et russe).
+
+Au moment de l'envoi, Mutt indique le codage qu'il a choisi : +
++- I 1 ~/tmp/mutt-clipper-25879-1 [text/plain, 8bit, koi8-r, 0.1K] ++
+Vous pouvez le modifier avec Ctrl-T si vous n'êtes pas satisfait, +ou pour changer au cas par cas. Il ne reste plus qu'à envoyer. +
+ +mutt
mutt
+
+Le logiciel par défaut* de la config conscrits
+est thunderbird
. Il se peut que vous ayez opté pour
+mutt
, qui est joli et très performant en toutes circonstances, et
+assez proche de elm
. Cette page en décrit le fonctionnement.
+
mutt
+ Ouvrez un terminal et tapez la commande mutt
. Vous obtenez
+quelque chose comme ça :
mutt
classe les courriers qui se répondent
+en enfilades (threads en anglais).N (nouveau) : |
+ courrier encore non +lu. | +
D (détruit) : |
+ courrier marqué +pour être effacé, voir plus bas pour savoir comment effacer un courrier. | +
d (partiellement détruit) : |
+ attachement marqué comme à effacer, mais pas le message. | +
R (réponse) : |
+ courrier auquel vous avez +répondu. | +
Vous utilisez les flèches pour vous déplacer de courrier en
+courrier. Pour lire un message précis, placez-vous dessus et taper
+Entrée
. Vous obtenez quelque chose comme ça :
Le message se compose de deux parties : le +texte proprement dit en bas, et quelques informations sur le message +(comme la date ou le sujet) en haut. Cette dernière partie s'appelle +l'en-tête, ou +enveloppe du message.
+mutt
, vous n'en voyez que la partie intéressante au
+lecteur, mais l'enveloppe contient aussi l'enregistrement du chemin
+suivi par le courrier, l'adresse de retour, et de nombreuses autres
+informations permettant son acheminement (pour afficher toutes les
+entêtes, vous pouvez taper « h
» — comme
+headers ;
+pour les faire disparaître, appuyez à nouveau sur « h
»).
+La barre d'aide en haut de la fenêtre vous +indique les principales commandes que vous pouvez utiliser : +
+
+ i
+ |
+ Revenir à l'index | +
+ q
+ |
+ Revenir à l'index ou quitter | +
+ v
+ |
+ Voir les fichiers joints | +
+ r
+ |
+ Répondre à l'expéditeur | +
Pour envoyer un courrier, tapez « m
» (message ou
+mail). mutt
vous demande
+successivement :
To:
: nom du destinataire.Subject
: le sujet du courrier. Il faut
+obligatoirement en mettre un.Votre éditeur* se +lance et vous pouvez taper le texte du message. Quand vous sauvez et +quittez l'éditeur, cet écran apparaît :
+Vous pouvez encore modifier les divers renseignements du courrier, +en tapant :
+
+ t
+ |
+ (To) | +Changer de destinataire, modifier son adresse, en ajouter d'autres... | +
+ s
+ |
+ (Sujet) | +Changer le titre du courrier, ou en mettre un | +
+ e
+ |
+ (Éditer) | +Modifier le texte du courrier | +
+ c
+ |
+ (Copie) | +Envoyer une copie du courrier à quelqu'un d'autre | +
+ a
+ |
+ (Attacher) | +Joindre un fichier | +
Vous aurez compris que toutes ces informations font partie des +en-têtes décrits plus haut. Si la fonction de certains d'entre eux vous +semble obscure, voyez l'explication dans +le cours sur le courrier électronique.
+Entrée
» pour envoyer le courrier.q
» pour ne pas envoyer le
+courrier.P
» pour remettre l'envoi du
+courrier à plus tard (la prochaine fois que vous composerez un message,
+mutt vous demandera si vous voulez utiliser ce message que vous avez
+remis à plus tard). Pour spécifier les destinataires, le sujet etc, il se peut que vous
+ayez aussi envie de le faire depuis votre éditeur lorsque vous composez
+votre texte. Pour celà il faut demander à mutt de laisser les headers
+lorsque vous composez. Ça se règle dans le .muttrc
:
sas ~ $ mon_editeur .muttrc+
Il faut décommenter (c'est à dire enlever le « #
») la
+ligne « set edit_hdrs
»
Quand vous composerez un message, cette fois-ci le fichier qui sera +édité par l'éditeur ressemblera à ceci:
+Et vous pouvez modifier le Sujet
directement depuis
+l'éditeur. Bien sûr, le fichier récapitulatif avant l'envoi définitif
+sera toujours là.
Pour effacer un courrier, placez le curseur dessus avec les flèches
+et tapez « d
» (détruire ou delete). Une balise
+« D
» majuscule apparaît devant le courrier, pour indiquer
+qu'il sera détruit quand vous quitterez mutt
. Vous pouvez
+annuler cette manoeuvre en tapant « u
» (undelete).
+
Ainsi, un courrier n'est pas détruit au moment où vous le +marquez. Il sera effectivement détruit (et effacé du disque dur) au +moment où vous quittez le logiciel de courrier.
+ Il se peut que vous ayez reçu un gros fichier joint. Pour des raisons
+de place, il vaut mieux l'effacer, ou l'archiver
+sur votre compte. Pour celà, il faut que vous vous placiez sur le message
+contenant la pièce jointe, puis appuyer sur « v
»
Vous voyez une fenêtre apparaître qui liste les différentes +composantes mime du mail. Ici vous voyez que vous avez deux composantes: +un fichier text/plain (c'est juste le corps du message) et le fichier +image/jpeg. Le « I » devant la première composante signifie qu'il s'agit du +corps du message, tandis ce que le « A » devant la deuxième composante +indique qu'il s'agit d'une pièce jointe. +
++En sélectionnant la « joliePhoto.jpg » vous pouvez faire plusieurs +actions:
+Entrée
» pour voir la
+photo.d
» pour le marquer comme
+à effacer.
+Ceci n'affectera pas le reste du message. Le « D » au tout début indique
+que c'est ce qu'on a fait ici. Dans la liste des messages, un courier
+dont on a effacé un attachement aura une balise « d
».s
» pour archiver la pièce jointe sur votre compte.mutt
vous
+demande confirmation. Ce n'est pas le cas lorsqu'on marque un attachement
+comme à effacer, quand on quitte mutt
: mutt
+efface l'attachement sans confirmation. Pour répondre à un courrier, utilisez la touche « r
». La
+procédure est la même que pour envoyer un courrier, à ceci près que
+les champs To:
et Subject:
sont remplis
+automatiquement.
+
Mutt vous demande si vous voulez inclure le texte du message
+d'origine dans la réponse; la réponse par défaut est « y
»,
+donc si vous appuyez sur Entrée sans rien répondre, le texte figurera
+dans votre courrier. Le texte auquel on répond est précédé de
+>
, pour le distinguer de votre texte à vous.
Gardez ce qui est utile pour la discussion et éliminez les lignes +sans rapport, ce sera plus lisible. Cette courtoisie envers votre +correspondant fait partie de la netiquette, que vous devriez toujours +avoir présente à l'esprit lorsque vous utilisez un moyen de +communication électronique.
+Cas des courriers groupés : vous pouvez choisir de +répondre uniquement à l'expéditeur, ou au contraire de répondre à tous les +membres du groupe (i.e. l'ensemble des destinataires du message +précédent) :
+r
(«Répondre»).g
(«répondre au Groupe»).+La suite des opérations est identique au paragraphe précédent. +
+Vous pouvez archiver votre courrier dans des folders +(« chemises cartonnées »... dossiers) au nom des personnes +avec qui vous correspondez. L'intérêt est triple :
+
+Pour ranger un courrier, tapez « s
» (sauver, ou
+save). Mutt
vous répond :
+
+Save to mailbox ('?' for list): =son.nom ++
où son.nom
est le nom de votre correspondant. Si le
+nom du folder vous convient, confirmez avec «Entrée». Le courrier est
+désormais indiqué comme détruit, et se trouve dans le nouveau
+folder.
Pour aller dans un folder donné : tapez
+« c
» (changer, ou change). Mutt
vous
+demande un nom de folder. Les noms de folders sont toujours précédés
+du signe « égal ». Si donc vous voulez aller dans le folder
+tuteurs
, tapez « c
» et complétez avec
+=tuteurs
. Pour revenir à la mailbox principale, tapez
+« c!
».
mutt
, « = » est un raccourci qui
+sert à désigner votre répertoire Mail dans votre répertoire personnel.
+C'est pour ça qu'il faut ce signe « égal » devant vos folders si vous
+voulez qu'ils soient bien mis dans votre répertoire Mail. « ! » lui, est
+un raccourci pour désigner votre Mailbox principale, c'est à dire là où
+vous recevez vos mails. Cette Mailbox principale n'est pas dans votre
+répertoire personnel mais dans une autre partition, ce qui explique
+pourquoi il vaut mieux archiver vos messages dans votre répertoire
+personnel afin d'éviter d'engorger cette partition (car si il n'y a plus
+de place libre dans cette partition, les mails ne pourront plus êtres
+livrés). Je veux aller dans un autre folder | +Je veux revenir dans Inbox | +
---|---|
Je tape « c » |
+ Je tape « c » |
+
Il répond Open mailbox ('?' for list): |
+ Il répond Open mailbox ('?' for list): |
+
Je tape le nom : Open mailbox: =tuteurs |
+ Je tape le «!» : Open mailbox: ! |
+
Il me met dans le folder «tuteurs». | +Il me remet dans Inbox. | +
Mutt
propose aussi la liste des folders : tapez
+« ?
» pour avoir la liste, sélectionnez le folder avec les
+flèches et tapez «Entrée».
Mutt
fait de la complétion. Pour aller dans le folder
+tuteurs
, il suffit de taper =tut
puis d'appuyer
+sur « TAB
». (à condition qu'il n'y ait pas d'autres folders
+commençant par « tut ».
Mutt permet aussi d'utiliser des alias à la place des destinataires.
+Pour créer un alias, c'est très simple: il suffit de séléctionner un mail
+que votre ami vous a envoyé ou que vous lui avez envoyé et d'appuyer sur
+« A
».
Il vous demande de choisir le nom de l'alias et vous en propose un par +défaut. On va l'appeler « Ami1 ».
+Alias as: Ami1+
Il vous demande ensuite de confirmer son adresse:
+Address: Grand.Ami1@ens.fr+
puis d'entrer son nom:
+Personal name: Grand Ami1+
A la fin il vous propose un récapitulatif des +données et vous demande si vous êtes d'accord pour en faire un alias.
+[Grand.Ami1 = Grand Ami1 <Grand.Ami1@ens.fr>] Accept? ([yes]/no): ++
Enfin, il vous propose de rajouter cet alias dans le
+fichier .muttalias
(le fichier d'alias par défaut dans la config conscrit).
Save to file: /users/03/info/robert/muttalias+
Si vous n'avez pas de mails envoyés par votre ami, vous pouvez quand
+même créer un alias: il suffit de taper A
puis de rentrer
+les données manuellement. En fait il y a plus simple, comme indiqué, les
+alias sont enregistrés dans le fichier .mutt-alias
. On peut
+alors l'ouvrir avec l' éditeur de notre
+choix.
sas ~ $ mon_editeur .muttalias+
On voit qu'on a deux amis dans notre carnet d'adresse. La syntaxe est +facile à comprendre, pour rajouter « AutreAmi » il suffit de rentrer:
+alias AutreAmi Son Nom <AutreAmi@clipper.ens.fr>+
En fait, un alias peut aussi contenir un groupe +d'adresse. On peut définir un groupe de la manière suivante:
+alias Groupe1 Prenom1 Nom1 <adresse1@clipper.ens.fr>, Prenom2 Nom2 <adresse2@clipper.ens.fr>+
On peut aussi définir des groupes d'alias
+alias Groupe2 Ami1, Ami2+
et même des groupes de groupe!
+alias Mes_Amis Groupe1, Groupe2+
Comme d'habitude, on tape « m
» pour envoyer un courier. Il
+suffit de mettre le nom de l'alias dans le « To: »
To: Groupe1+
pour envoyer le message aux personnes concernées par
+l'alias « Groupe1 ». On peut faire de la complétion, par exemple on peut
+commencer par taper « Grou », puis appuyer sur « TAB
», on
+obtient ainsi « Groupe » (Mutt
ne peut pas aller plus loin
+car il y a un « Groupe1 » et un « Groupe2 »), enfin en appuyant encore
+sur « TAB
», Mutt
nous propose un écran listant les
+alias possibles commençant par « Groupe »
Si on appuie sur TAB
dès le début du « To: », mutt nous
+propose un écran récapitulant nos différents alias:
Vous trouverez une documentation complète
+sur Mutt sur le site http://www.mutt.org/
.
+
Pine
thunderbird
qui est mieux connu notamment à
+l'extérieur de l'ENS et plus facile à utiliser. Nous vous signalons aussi
+l'existence de mutt
, qui est plus
+performant et plus stable que Pine
.
+Toutes les touches, bien qu'indiquées en majuscule, sont à taper
+sans la touche shift
, sauf mention contraire.
Pour lancez pine
, ouvrez un terminal et tapez la commande
+pine
.
Choisissez «MESSAGE INDEX» (déplacez-vous avec les flèches du +clavier, et appuyez sur «Entrée»). La liste des courriers +électroniques que vous avez reçus apparaît, avec pour chacun d'eux son +numéro d'ordre, sa date d'arrivée, son auteur, sa taille en octets* et son sujet : +cet écran s'appelle l'index.
+Pour lire un message, sélectionnez-le de même à l'aide des flèches +et tapez «Entrée». Si il est trop long pour tenir sur l'écran, vous +pouvez le faire défiler avec les touches fléchées. +
+Vous remarquez que le message se compose de deux parties : le
+texte proprement dit en bas, et quelques informations sur le message
+(comme la date ou le sujet) en haut. Cette dernière partie s'appelle
+l'en-tête, ou enveloppe du
+message : sous Pine
, vous n'en voyez que la partie
+intéressante au lecteur, mais l'enveloppe contient aussi
+l'enregistrement du chemin suivi par le courrier, l'adresse de retour,
+et de nombreuses autres informations permettant son acheminement.
Une fois le message lu, tapez I
pour revenir à
+l'index, ou M
pour revenir au menu principal de
+Pine
. Pour quitter, tapez Q
.
Pine
avec sa commande, et pas en
+cliquant sur fermer dans le menu du coin : vous tuez
+Pine
au lieu de le quitter et il le supporte mal. C'est
+de là que viennent les classiques problèmes des utilisateurs de
+Pine
: j'ai perdu du courrier, une copie de tout mon
+courrier est lisible sur mon compte par tout le monde,
+Pine
ne veut plus se lancer, etc.
+Pour envoyer un courrier, tapez C
(«composer un
+message»), ou sélectionnez Compose message
avec les
+flèches dans le menu. Quatre lignes apparaissent pour l'enveloppe du
+message. vous devez remplir au moins les lignes «To :» et
+«Subject :».
Les informations que vous entrez dans ces quatre lignes font +partie des en-têtes décrits plus haut. Si la fonction de certains +d'entre eux vous semble obscure, voyez l'explication dans le cours sur le +courrier électronique.
+À l'aide des flèches, descendez ensuite en-dessous de la barre +«Message Text» et tapez votre message. Lorsque vous aurez fini, vous +pouvez envoyer le courrier en tapant Ctrl-X comme c'est indiqué en bas +de l'écran.
+ Placez-vous sur le courrier et appuyez sur D
(comme
+indiqué en bas de l'écran) pour effacer un courrier électronique. Il
+vous sera demandé confirmation au moment de quitter Pine
;
+vous pouvez entre-temps utiliser U
pour annuler votre
+ordre.
Dans l'index, placez-vous sur le courrier avec les flèches et
+appuyez sur R
. Pine
vous demande alors si
+vous voulez inclure le message auquel vous répondez dans votre
+réponse. C'est une pratique courante pour permettre au correspondant
+de se remettre la conversation en mémoire, mais n'oubliez pas
+d'effacer les morceaux de la discussion qui sont devenus inutiles,
+sans quoi les messages seront vite illisibles.
+
Gardez ce qui est utile pour la discussion et éliminez les lignes +sans rapport, ce sera plus lisible. Cette courtoisie envers votre +correspondant fait partie de la netiquette, que vous devriez toujours +avoir présente à l'esprit lorsque vous utilisez un moyen de +communication électronique.
+Pine
demande également si vous voulez répondre à tous
+les destinataires du courrier. C'est utile pour faire des discussions
+en groupe par courrier électronique; faites très attention, quand vous
+répondez à un courrier groupé, à bien vérifier à qui vous le renvoyez.
+Si vous correspondez seulement à deux, la réponse à cette question n'a
+pas d'importance.
+La suite des opérations est identique au paragraphe précédent. +
+ Vous pouvez joindre un ou plusieurs fichiers à vos courriers.
+Pour cela, il suffit d'appuyer sur Ctrl-J pendant la composition du
+message. Pine
vous demande alors le nom du fichier et un
+commentaire.
Vous pouvez aussi mettre le nom du fichier directement dans le
+champ Attchmt:
. Attention, Pine
cherchera
+le fichier dans le répertoire courant (celui dans lequel vous étiez
+quand vous avez lancé Pine
ou votre HOME si vous l'avez
+lancé en cliquant sur l'icône).
+
Quand vous recevez un courrier contenant un fichier attaché,
+Pine
vous affiche quelque chose comme ça :
Il affiche les fichiers textes. Pour voir les autres, il faut
+appuyer sur V
ou >
. Dans ce cas Pine vous
+affiche la liste des attachements. Si Pine reconnaît le format, il
+lancera le logiciel adéquat pour visualiser l'attachement (avec
+>
) sinon vous pouvez simplement sauver l'attachement
+en question dans un fichier. Vous pourrez le manipuler ensuite.
+Les courriers comportant des images, des fichiers Word prennent +beaucoup de place.
+ Si vous avez sauvé l'attachement, pensez à détruire,
+sinon le courrier en question (de la façon indiquée plus haut),
+du moins la pièce jointe en question. Pour cela, dans
+la liste des attachements, allez sur la pièce jointe à effacer et
+appuyez sur la touche D
. Pour annuler l'effacement, appuyez
+sur U
. Attention, comme Pine
vous le rappelle,
+la pièce jointe n'est effectivement effacée que si vous déplacez ensuite
+ce courrier vers un autre dossier.
+
Les dossiers de Pine
sont accessibles par l'entrée
+«FOLDER LIST» du menu principal. À l'ouverture de votre compte, vous
+n'avez pas de dossiers, et seule apparaît dans ce menu votre boîte aux
+lettres (sous le nom INBOX).
Pour sauvegarder un message, tapez S
dans
+l'index. Pine
vous demande alors dans quel dossier
+sauvegarder ce message : choisissez un nom, il sera créé si il
+n'existe pas déja. Vous pourrez ensuite revenir dans le menu «FOLDER
+LIST», et vous verrez alors apparaître ledit dossier à côté des
+autres. La manipulation des messages dans un dossier est identique à
+celle de votre boîte aux lettres : vous pouvez lire les messages,
+les effacer, y répondre, et même les sauvegarder d'un dossier dans
+l'autre. Pour taper plus facilement le nom de dossiers déjà existants,
+n'hésitez pas à utiliser la touche TAB
, qui complète
+automatiquement ce que vous avez commencé à écrire.
Il est possible avec Pine
d'appliquer une opération à
+plusieurs courriers en une seule fois. Dans l'index, vous pouvez
+sélectionner un courrier en appuyant sur :
. Il apparaît un
+X
en début de ligne pour indiquer que le message est
+selectionné.
+
Pour éviter de sélectionner les messages ainsi un par un, on
+peut appuyer sur ;
, qui propose de sélectionner des messages
+suivants divers critères. Par exemple, ;N3-8,12,15-27
+(appuyer sur <ENTER>
pour confirmer) sélectionne les
+messages de numéro 3 à 8, le message 12, et les messages 15 à 27. Vous
+pouvez alors modifier votre sélection en l'élargissant avec
+;B
ou en la précisant avec ;N
(vérifiez avec
+l'aide en bas de l'écran, personne ne connaît tout par cœur). Voici
+quelques autres exemples de sélection (les touches citées sont à taper
+après ;
ou ;B
ou ;N
) :
+
S N
: sélectionne les nouveaux messages, pas encore lus
+D CTRL-W CTRL-P ENTER
: sélectionne les messages qui ont été
+envoyés il y a au moins deux jours
+T S tennis ENTER
: sélectionne les messages qui ont
+« tennis » dans le sujet
+Z 10K ENTER
: sélectionne les messages dont la taille
+dépasse 10ko
+ Maintenant que vous avez sélectionné un certain nombre de messages,
+il est temps de les utiliser. Pour cela, appuyez sur A
.
+Pine
vous propose alors un nombre réduit de commandes que
+vous pouvez appliquer à ces messages. Le plus souvent vous utiliserez
+S
pour déplacer tous ces messages dans un autre dossier.
+Parfois vous utiliserez R
pour répondre à plusieurs messages
+à la fois, ce qui permet d'avoir directement tous les bons destinataires
+pour le courrier, et de citer tous les courriers auquel on répond. Vous
+pouvez aussi simplement supprimer tous les courriers sélectionnés avec
+D
.
+
Il est possible de demander à Pine
de vérifier
+l'orthographe d'un courrier que l'on vient de rédiger. Pour cela, c'est
+très simple, il suffit d'appuyer sur CTRL-T
. Ce mode par
+défaut n'est pas très agréable, et je vous conseille de configurer
+Pine
+pour qu'il utilise aspell
pour vérifier l'orthographe. Pour
+cela, allez dans le menu de configuration de Pine
en
+appuyant sur M S C
. Ensuite, cherchez les options parlant de
+« spell ». Pour chercher, il faut appuyer sur W
, comme
+rappelé en bas de l'écran. Si la première recherche ne nous a pas amené
+où on voulait et qu'on veut continuer à chercher la même chose, on peut
+réappuyer sur W
et directement ENTER
(pas
+besoin de réentrer la chaîne de caractères). Une fois que vous avez
+trouvé la ligne : speller=<No
+Value Set>
, appuyer sur C
pour modifier, et
+entrez : aspell --mode=email
+check
en appuyant sur ENTER
pour confirmer. Vous
+pouvez quitter le menu de configuration en appuyant sur E
+puis Y
pour enregistrer les modifications. Vous aurez
+maintenant accès à un correcteur orthographique plus performant.
+
Si vous avez essayé d'utiliser le correcteur orthographique, vous +vous êtes sans doute rendu compte qu'il suppose toujours que votre +courrier est en anglais. Si vous ne pensez utiliser la correction +orthographique que en français, je vous conseille l'opération +suivante : +
+sas ~ $ echo 'lang fr' > ~/.aspell.conf
+ qui indique au correcteur de toujours corriger en
+français. Pour l'anglais ou l'allemand, on remplacerait fr
+par en
ou de
(attention, toutes les langues ne
+sont pas forcément installées). Si vous voulez changer la langue utilisée
+par défaut par un grand nombre d'applications, vous avez aussi la
+possibilité d'éditer votre fichier .profile
et d'y ajouter
+les deux lignes suivantes, par exemple en dessous de la ligne qui définit
+DICTIONARY
(qui sert à un autre vérificateur
+d'orthographe) :
+
LC_MESSAGES=fr_FR +export LC_MESSAGES+
Je dois cependant vous prevenir que ceci risque +d'avoir des effets inattendus, et que vous verrez souvent apparaître des +messages à moitié traduits. +
+Pine
permet maintenant d'utiliser la souris dans les
+terminaux xterm
, c'est à dire les terminaux utilisés par
+défaut à l'école. Pour ce faire, il faut activer une option, qui n'est
+par défaut dans la « config conscrit » que depuis 2006. Allez dans le
+menu de configuration en appuyant sur M S C
et cherchez
+l'option enable-mouse-in-xterm
, par exemple en appuyant sur
+W
pour indiquer que vous cherchez quelque chose, et en
+entrant comme texte à chercher : mouse
. Cocher ou
+décocher une option se fait par un simple appui sur X
. On
+quitte ensuite le menu de configuration en appuyant sur E Y
.
+Voilà, vous pouvez maintenant cliquer pour vous déplacer dans les menus
+de Pine
.
+
Vous remarquerez que maintenant que la souris sert à se déplacer dans
+les menus, elle refuse de faire des copier-coller. Pour utiliser la
+souris comme avant (et donc copier ou coller), maintenez la touche
+SHIFT
enfoncée pendant l'opération. Cette technique est
+générale pour tous les programmes qui savent utiliser la souris dans un
+terminal.
+
From:
+ Lorsque vous envoyez un courrier, votre correspondant voit comme
+adresse untel@clipper.ens.fr
. Il est préférable de lui montrer votre adresse
+prénom.nom@ens.fr
. Pour ce faire, allez dans le menu de
+configuration en tapant M S C
, et cherchez
+customized-hdrs
. Appuyez sur A
et entrez le
+texte souhaité :
+
From: Prénom Nom <prénom.nom@ens.fr>+
On quitte comme d'habitude le menu de configuration
+avec E Y
. Maintenant vos courriers auront une provenance
+plus jolie.
+
Si vous utilisez dans le champ From:
une adresse
+différente de login@clipper.ens.fr
, il est recommandé de la
+rajouter dans la liste alt-addresses
.
+
Parfois on envoie un courrier depuis une certaine adresse, mais on
+aimerait recevoir la réponse sur une autre adresse. On peut aussi vouloir
+préciser la liste des gens à qui il est souhaitable d'envoyer une copie
+de la réponse. L'en-tête Reply-To:
est fait pour ça.
+Malheureusement, il n'est pas proposé par défaut par Pine
.
+Pour corriger cela, on va procéder exactement comme pour modifier le
+champ From:
, mais en ajoutant le texte suivant :
+
Reply-To:+
Maintenant, quand on rédige un courrier, lorsque le
+curseur est sur les en-têtes, on peut appuyer sur CTRL-R
,
+qui fait apparaître un certain nombre d'en-têtes supplémentaires. Il ne
+reste plus qu'à ajouter la ou les adresses souhaitées dans le champ
+Reply-To:
.
+
+Dans les menus, Pine
indique généralement le nom de l'auteur
+du courrier, sauf lorsque cet auteur est vous-même, auquel cas il indique
+le destinataire du courier. Aussi, lorsque vous répondez à un courrier,
+Pine
vous propose de répondre à l'auteur du message ainsi
+qu'à tous les destinataires sauf vous-même. Pour que ces mécanismes
+fonctionnent correctement, Pine
doit être capable de
+reconnaître vos adresses. Par défaut, il ne connaît que
+login@clipper.ens.fr
. Pour lui indiquer d'autres adresses à
+vous, allez dans le menu de configuration en tapant M S C
et
+cherchez le paramètre : alt-addresses
. L'ajout d'une
+nouvelle adresse se fait en appuyant sur A
comme rappelé
+en-bas de la fenêtre.
+
Pour avoir un texte ajouté automatiquement à la fin de vos courriers,
+avec par exemple votre nom et votre adresse, il suffit de mettre le texte
+en question dans le fichier .signature dans votre répertoire racine. Il
+est aussi conseillé d'activer l'option enable-sigdashes
qui
+insère deux tirets et une espace avant votre texte. C'est une convention
+qui permet aux lecteurs de courriers (comme Pine
) de
+facilement repérer une signature et de l'afficher dans une couleur
+différente par exemple. Avec Pine
il faut taper M S
+K
pour modifier les couleurs.
+
Il est possible d'utiliser pine
pour créer ce fichier
+.signature
. Pour ce faire, allez dans le menu de
+configuration, et réglez explicitement signature-file
à
+.signature
en répondant bien aux questions que vous voulez
+stocker cette valeur, pas utiliser le défaut. Ensuite, hors du menu de
+configuration, il suffit d'appuyer sur M S S
pour éditer sa
+signature.
+
Vous trouverez sur la page du SPI une vieille documentation +complète sur Pine (document d'introduction et questions/réponses). +
+ +.procmailrc
+ Procmail est un programme très puissant qui sert à filtrer les +courriers électroniques. Grâce à lui, vous pouvez rediriger votre +mail, le trier ou encore vous protéger contre le spam. +
+
+Pour donner des instructions à procmail
, il vous faut
+créer un fichier nommé .procmailrc
(dans le monde Unix,
+les fichiers commençant par un point et terminant par « rc » sont
+souvent des fichiers de configuration).
+
.procmailrc
. Procmail est un outil puissant et
+dangereux. Vous risquez de perdre des courriers importants en
+recopiant n'importe quoi à tort et à travers. Mieux vaut passer 5 minutes
+de plus à lire tout plutôt que devoir dire coucou au SPI parce que vous
+aurez perdu du courrier... .procmailrc
+
+Commencez par créer un fichier nommé .procmailrc
avec
+votre éditeur préféré, puis copiez-collez les instructions qui suivent
+(nous vous expliquons ci-dessous ce qu'elles veulent dire) :
+
+PATH=/bin:/usr/bin +MAILDIR=$HOME/Mail +SPAMBOX=spam ++
Explication ligne par ligne :
+PATH=/bin:/usr/bin
+ MAILDIR=$HOME/Mail
+ SPAMBOX=spam
+ $HOME/mail/spam
) dans votre boîte aux lettres. C'est là
+que partiront les courriers suspects. Voir infra.
+Ces instructions de début sont la base pour faire marcher correctement
+procmail
, mais en soi, elles ne suffisent pas. Il vous
+faudra spécifier, dans la suite du fichier, ce que vous voulez filtrer
+à l'aide de règles de filtrage. C'est ce que nous vous expliquons
+ci-dessous.
+
+Vous pouvez aussi ajouter la ligne suivante : +
++LOGFILE=$MAILDIR/procmail.log ++
+Ceci demande à Procmail de créer un journal (log en +anglais) de ce qu'il fait. Ce journal est très précieux pour faire des +tests, mais quand on l'oublie il prend très rapidement beaucoup de +place. Songez à l'effacer régulièrement quand vous en faites un. +
+Les « recettes » (recipes) sont les éléments de
+base du .procmailrc
. Leur principe est le suivant :
+on commence par spécifier des conditions (une condition dit à procmail
+ce qu'il doit regarder dans le courrier, par exemple l'adresse de
+l'expéditeur, ou encore le champ « Sujet ») puis on indique l'action à
+accomplir si les conditions sont remplies (par exemple, rediriger le
+courrier, ou l'envoyer à la poubelle).
+Une recette a toujours le format suivant (le # introduit un +commentaire pour expliquer le code, vous n'avez pas à recopier la +partie après le #) :
++:0 [drapeau(x)] [: [fichier verrou] ] +# Les conditions commencent chacune par * + * condition(s) + action à accomplir ++
+Chaque recette s'ajoute dans le fichier .procmailrc
, à la
+suite du bloc de début (voir ci-dessus).
+
+Pour spécifier les conditions, on se sert d'expressions +régulières. Une expression régulière est une notation permettant de +définir des schémas de recherche. Pour cela, on se sert de +métacaractères, aussi appelés jokers. +
+Joker | +Signification | +
---|---|
^ | +Début de ligne | +
$ | +Fin de ligne | +
. | +Un caractère quelconque | +
[xy] | +N'importe quel caractère dans l'ensemble spécifié | +
[^xy] | +N'importe quel caractère hors de l'ensemble spécifié | +
foo|bar | +foo ou bar | +
c* | +Un nombre quelconque (même 0) de répétitions du caractère c | +
Quelques exemples :
^From:
: cette condition vise toutes les chaînes
+de caractère From:
au début d'une ligne. On dirait une
+en-tête de courrier électronique, non ? :-)^From:.*choupi.*
: cette condition vise toutes
+les chaînes de caractère From:
au début d'une ligne,
+suivies d'un ou plusieurs caractères, puis de choupi, puis d'un ou
+plusieurs autres caractères. Cette fois, on a défini l'ensemble des
+mails provenant d'une adresse contenant l'expression choupi : de
+cette façon, on vise tous les mails provenant de Choupi, votre
+meilleur ami.^(From|Cc|To).*choupi.*
cette fois, on vise
+tous les mails qui viennent de Choupi, ceux où Choupi est en Cc:, et
+ceux adressés à Choupi.
+Pour rediriger votre courrier électronique vers une autre adresse,
+c'est simple. Ici, on redirige le courrier vers l'adresse
+toto@polenord.pn
. Il n'y pas de condition (cela concerne
+tous les mails). Le point d'exclamation (!) sert à dire qu'il faut
+faire une redirection. Ajoutez donc à votre .procmailrc
+la règle suivante :
+:0 +! toto@polenord.pn ++
+Toujours plus fort, maintenant. Imaginons que vous soyiez un fan +de Scoubidou. Votre page web porte sur Scoubidou. Choupi (votre +meilleur ami, souvenez-vous), vous a aidé à le réaliser. Vous +souhaitez relayer les courriers qui vous arrivent et qui parlent de +Scoubidou à Choupi. Avec procmail, vous pouvez le faire. +
+:0 +# Concernés : tous les mails dont le sujet contient « Scoubidou » +* ^Subject:.*Scoubidou.* +# On forwarde à Choupi +! choupi@scoubidou-fan.com ++
Comme vous pourrez le constater, les conditions peuvent porter sur +tous les champs d'un courrier électronique : From, To, CC, Bcc, +etc.
+Ajoutons que dans cet exemple, vous souhaiteriez sans doute vous +aussi lire les courriers « Scoubidou ». Avec la recette +ci-dessus, ces +courriers sont simplement reexpédiés vers Choupi, et vous ne les avez +jamais dans votre boîte aux lettres. Nous allors utiliser un drapeau (flag) qui est une sorte +d'option, qui modifie le comportement standard de procmail. Il suffit +d'ajouter c après le :0, ce qui demande à procmail de copier dans +le répertoire de mail les courriers qui arrivent. L'exemple complet +est donc le suivant :
++:0 c +# Concernés : tous les mails dont le sujet contient « Scoubidou » +* ^Subject:.*Scoubidou.* +# On forwarde à Choupi +! choupi@scoubidou-fan.com ++
+On appelle « spam » le courrier électronique envoyé en masse, non
+sollicité, généralement publicitaire. Un filtre tel que
+procmail
vous permet de lutter contre ce phénomène, mais
+il est plus efficace d'avoir une stratégie d'ensemble combinant
+logiciel anti-spam, filtre et prévention. Référez-vous à notre page anti-spam pour en savoir plus.
+
La plupart des spams sont des mails provenant d'expéditeurs bidons +et différents à chaque fois, et qui ont pour point commun de vous +promettre de l'argent, de vous proposer du Viagra, des diplômes par +cher, et autres joyeusetés. Procmail vous permet d'identifier plus ou +moins ces mails en fonction de leur sujet, et de les envoyer +directement à la poubelle. De même, le filtrage par sujet permet de +filtrer les mails pyramidaux (chaînes de l'amitié, fausses alertes de +virus, etc.), que vous pouvez être amené à recevoir plusieurs fois. +
+
+Dans l'exemple suivant, vous allez filtrer tous les mails dont le
+sujet contient le mot « Viagra » en les envoyant vers votre poubelle à
+spam, $HOME/mail/spam
. Voire infra
+pour plus d'explication.
+
+:0 +# Sont visés tous les mails dont le sujet contient Viagra +* ^Subject: .*Viagra.* +# Et on les envoie à la poubelle à spam +$SPAMBOX ++
Dans d'autres cas, vous pouvez très bien connaître l'adresse
+électronique de ceux qui vous spamment. Ce peut être une liste de
+diffusion à laquelle vous avez été abonné, volontairement ou non, et à
+laquelle les administrateurs de la liste ne vous désabonnent pas. La
+recette qu'il vous faut est la suivante : tous les courriers
+provenant de l'adresse spammeur@tagada.com
seront
+impitoyablement envoyés dans votre boîte à spam.
+:0 +* ^From: .*spammeur@tagada.com +$SPAMBOX ++
Vous recevez beaucoup de mails en provenance de Corée, qui sont un
+charabia illisible. Vous voudriez les filtrer. On rappelle que
+procmail peut filtrer sur n'importe quel en-tête de message. Si vous
+regardez les en-têtes d'un spam coréen (appuyez sur H
,
+que vous utilisiez mutt ou pine, pour y avoir accès), vous verrez un
+champ appelé Content-type
. Dans ce champ est déclaré
+charset="ks_c_5601-1987"
. Il vous suffit de filtrer cet
+encodagespour être débarrassé de la plupart des spams
+coréens :
+:0 +* ^Content-Type: .*charset="ks_c_5601-1987"* +$SPAMBOX ++
De manière plus perverse, certains spams coréens ne déclarent pas +leur encodage au bon endroit, pour éviter justement ce genre de +filtres. L'encodage est alors annoncé dans le sujet. Pour y remédier, +ajoutez simplement :
++:0 +* ^Subject: .*EUC-KR.* +$SPAMBOX + +:0 +* ^Subject: .*ks_c_5601-1987.* +$SPAMBOX ++
+Si vous êtes sûr de ne pas vouloir de mails en encodage coréen, vous
+pouvez mettre ces mails à la poubelle au lieu de les mettre adns la
+boîte à spam. Sur UNIX, la poubelle est
+/dev/null
. Attention, contrairement à la poubelle de
+Windows ou MacOS, il n'y a pas de filet de sécurité, on ne peut plus
+récupérer les données une fois poubellisées. Ceci donne :
+
+:0 +* ^Subject: .*EUC-KR.* +/dev/null ++
/dev/null
+dans votre .procmailrc
est dangereuse : la moindre
+erreur de syntaxe, la moindre coquille est susceptible d'envoyer tout
+votre mail dans /dev/null
, soit le vide intersidéral d'où
+vous ne pouvez récupérer aucun courrier. En cas d'accident, vous
+pouvez vous adresser au SPI, mais
+faites particulièrement attention en éditant votre
+.procmailrc
.En installant des filtres anti-spam : vous prenez le risque +d'écarter des courriers qui en fait n'en sont pas, mais qui répondent +tout de même à vos règles. Ce sera le cas d'un prof coréen qui vous +écrit si vous filtrez les encodages coréens, d'un courrier parlant de +FreeBSD si vous filtrez le mot « free », d'un courrier dont +le sujet contient « bissextile » si vous filtrez « sex », etc. Plus +vos règles sont strictes, moins vous recevrez de spam, mais plus vous +aurez de chances de perdre du courrier.
+Pour cette raison, il vaut parfois mieux envoyer les courriers +suspects dans un dossier spécial, appelé « spam », par +exemple. Voir ci-dessous comment faire.
+Cette recette est particulièrement utile pour les listes de +diffusion (mailing-lists) : vous pouvez envoyer +tous les courriers provenant de la liste directement dans un dossier +spécial, qui contiendra seulement les courriers de ce genre.
+ Admettons que vous apparteniez à la liste des amis de
+Scoubidou. Cette liste a pour adresse
+scoubidou@zoinx.foo
, et tous les courriers de la liste
+ont pour champ expéditeur :
+To: Les Amis de Scoubidou <scoubidou@zoinx.foo> ++
Vous voulez regrouper les courriers de la liste dans un dossier +appelé « scoubidou ». La recette qu'il vous faut est la +suivant :
++# Le dernier ":" demande l'utilisation d'un fichier verrou +:0: +# La condition : tous les fichiers contenant 'scoubidou@zoinx.foo' +# dans le champ 'To: ' +* ^To.*scoubidou@zoinx.foo +# Action : placer tous ces mails dans le dossier « Scoubidou » +$HOME/Mail/scoubidou ++
À quoi sert le fichier verrou ? Imaginons +que deux courriers de la liste arrivent en même temps : deux +procmails essaieront d'envoyer les deux messages dans le dossier en +même temps. Si vous utilisez un fichier verrou, le premier procmail +verrouillera le dossier pendant qu'il écrira son message dans le +dossier, empêchant ainsi le second message d'y accéder. Une fois que +le premier procmail aura fait son travail, le second prendra le relais +en toute sécurité.
+Il suffit d'ajouter dans votre .zshrc
la ligne
+suivante :
+MAILPATH="$MAIL:$HOME/mail/Scoubidou?You have new mail in Scoubidou." ++
Si vous voulez appliquer la même technique à plusieurs dossiers, il
+faut les séparer par des symboles « : » de sorte que si vous êtes
+aussi fan des Schtroumpfs, vous pourrez, en plus de la recette
+procmail
adaptée, mettre les lignes suivantes dans votre
+.zshrc :
+
+MAILPATH="$MAIL:$HOME/mail/Scoubidou?You have new mail in Scoubidou.\ +:$HOME/mail/Schtroumpfs?You have new mail in Schtroumpfs." ++
+Une application intéressante de classement concerne le spam. Pour des
+raisons évoquées plus haut, il n'est parfois pas prudent d'envoyer le
+courrier suspect directement vers /dev/null/
: vous
+risquez de perdre du vrai courrier. Il vaut mieux parfois rerouter le
+courrier vers une boîte à spam.
+
+L'avantage d'une boîte à spam est que vous n'êtes plus dérangé pour +rien par les avertissements « You have new mail ». Il vous suffit de +consulter la boîte de temps à autre, toutes les semaines disons, et de +faire un tri rapide de vrais spams et des faux. +
+
+Prenons un exemple. Beaucoup de spams ont un Content-type
+en text/html
, c'est-à-dire du HTML seulement sans copie
+texte. Inversement, il n'y a guère que les spams pour être en
+text/html
: les gens normaux avec un logiciel mal
+configuré n'envoient guère que du HTML+ texte (donc un
+Content-type
en multipart/alternative
). Vous
+voulez donc filtrer le text/html
. Mais l'expérience
+prouve que certains logiciels particulièrement malfaisants envoient
+des courriers parfaitement normaux en
+text/html
. Solution : envoyer tous ces mails dans la
+boîte à spam.
+
Application :
++:0 +* ^Content-Type: text/html.* +$HOME/Mail/spam ++
+Un dernier exemple pour la route ! Encore plus fort, +maintenant ! Nous allons reprendre l'exemple du courrier à +relayer à votre ami Choupi. Dans l'état où nous vous avions laissé, +vous saviez lui relayer le courrier contenant « Scoubidou » dans le +sujet et en garder une copie chez vous. Maintenant nous allons vous +montrer comment faire ceci, mais en envoyant vos copies à vous dans le +dossier « Scoubi. » Il s'agit donc d'une recette constituée de deux +recettes imbriquées (chaque recette commence par un :0, +souvenez-vous) :
++:0: +* ^Subject:.*Scoubidou.* +{ + :0 c +# On fait suivre vers Choupi + ! choupi@scoubidou-fan.com +# et en plus de ça... + :0 +# ... on dépose la copie dans le dossier « Scoubi » +$HOME/Mail/scoubi +} ++
Ceci ne montre qu'une partie des possibilités de procmail. Vous +pouvez faire beaucoup de choses plus compliquées mais tout aussi +utiles : ajouter systématiquement un champ (Reply-To, par +exemple), éviter les boucles... Pour davantage de renseignements, +consultez les pages de man (si vous ne savez pas ce qu'est une page de +man, consultez notre page sur +l'aide en ligne d'Unix) : +
+man procmail
est une description de procmail
+lui-même. Vous y trouverez les options de procmail.
+man procmailrc
est très complet mais indubitablement
+compliqué.man procmailsc
est à réserver aux experts de
+procmail.
+man procmailex
propose des exemples prêts à
+utilisation. C'est sans doute la page de man la plus utile pour celui
+qui veut se familiariser davantage avec procmail.
++Cette page s'adresse à ceux qui ont reçu, en se loguant sur une machine +de l'ENS, le message suivant : +
++********************************************************************** +ATTENTION, votre boîte à mails est BEAUCOUP trop grosse. Si vous +continuez à la laisser grossir, vous risquez de bloquer les mails des +autres utilisateurs. Contactez au plus vite <tuteurs@clipper.ens.fr> +********************************************************************** ++
+Pourquoi ce message ? Comment corriger ce problème ? Vous +l'apprendrez en lisant cette page. +
++Remarque : si le moindre passage de cette page reste obscur pour +vous, n'hésitez surtout pas à contacter un tuteur. Ils +sont là pour ça, et se feront un plaisir de vous renseigner et de vous +conseiller. +
++Ce message est envoyé automatiquement à ceux dont la messagerie dépasse +la taille maximale autorisée. Pourquoi cette +limitation ?
+S'il faut veiller à ce que nos messageries n'occupent pas trop +d'espace disque, c'est parce que l'espace disque n'est pas illimité à +l'ENS, et que les disques durs de serveurs que nous utilisons coûtent +cher ; on ne peut donc pas les multiplier à l'infini.
+À l'heure actuelle, la taille maximale autorisée tourne autour de +10 Mo, historiquement justifiée par le calcul suivant :
+/var/mail
, c'est-à-dire la portion de
+disque dur qui héberge les boîtes mail des comptes antérieurs à 2014, a mesuré
+un peu plus de 22 Go, c'est-à-dire 22 000 Mo (elle mesure aujourd'hui 166
+Go);Un rapide calcul mental montre que cela autorise une moyenne +inférieure à 10 Mo par utilisateur. Qu'est-ce que cela signifie ? +Tout simplement que si +tout le monde a 10 Mo de courrier dans sa boîte, la partition sera +pleine ; et si elle est pleine, plus personne ne pourra plus +recevoir de courrier. Par conséquent, chaque utilisateur doit veiller à +rester en dessous de la barre fatidique des 10 Mo, et à s'en +écarter le plus possible.
+Toutefois, ces 10 Mo ne doivent en aucun cas être +considérés comme un dû : si le nombre d'utilisateur +augmente, leur vigilance devra augmenter proportionnellement, car +l'espace disque moyen disponible par utilisateur diminuera +d'autant. C'est pour compenser ces baisses de vigilance que le message +est envoyé à ceux dont la boîte dépasse la taille maximale autorisée. +
+En imposant un quota, par exemple de 10 Mo par utilisateur, on +éviterait à coup sûr que la partition soit pleine !
+Certes, mais cela pourrait également avoir des conséquences +désastreuses : un compte recevant beaucoup de spams (courrier +indésirable), et qui ne serait pas vidé pendant une longue période, par +exemples les grandes vacances, pourrait se retrouver saturé, et ne plus +pouvoir accepter des messages importants. Par ailleurs, il faudrait +affiner sans cesse les quotas pour les adapter aux besoins de chaque +utilisateur particulier, selon ses responsabilités, ses besoins, etc. +
+En un mot comme en cent, cette politique de quota serait quasi +ingérable, ou inique. Aussi les administrateurs système de l'ENS ont-ils +pris le parti de miser sur la vigilance et le sens des responsabilités +de chaque utilisateur.
+
+La commande du
permet de savoir combien de place votre
+boîte occupe :
+
bireme ~ $ du -h /var/mail/$USER
+
+ + Ou, pour les nouveaux comptes : +
+bireme ~ $ du -h /d/$USER
+
+ +Moins votre messagerie est grosse, mieux ce sera ; si vous voyez qu'elle +approche de la limite, il est temps de penser à la vider ; si vous +avez déjà dépassé la limite, il est urgent de la vider. +
+
+Pour obtenir plus d'informations sur le commande du
et sur
+la taille des partitions, consultez la page consacrée à l'espace disque.
+
Il existe trois façons de vider sa boîte :
++Si votre messagerie contient beaucoup de messages, il peut être +difficile de savoir par quels messages commencer le tri. La réponse est +simple : par ceux qui occupent le plus d'espace disque ! +
+Concrètement, il faut savoir que ce qui prend le plus de +place dans un courriel, ce sont les pièces jointes. Un message +simplement composé de texte occupe très peu de place : +quelques Ko (milliers d'octets) seulement, voire moins (quelques +centaines d'octets). En revanche, dès qu'un message commence à +comporter des feuilles HTML, des images, des photographies, des +transparents, des fichiers de traitement de texte, des feuilles de +tableur, voire des vidéos, il occupe rapidement beaucoup de place.
++Il faut savoir que toutes les pièces jointes sont susceptibles +de consommer beaucoup d'espace disque, même peu +gourmandes : +
+Ainsi, si vous triez vos messages, commencez par les messages qui +contiennent des pièces jointes, surtout si elles sont volumineuses. Et +le reste du temps, dès que vous recevez ce type de message volumineux, +pensez à l'effacer, à l'archiver ou à effacer sa pièce jointe +immédiatement : n'attendez pas qu'il soit enfoui +sous un grand nombre d'autres messages !
++Si toutefois vous avez laissé passer de gros messages, il n'est pas +toujours évident de les identifier après coup. Aussi est-il possible de +trier tous ses messages selon leur taille, ce qui permet de commencer +par trier les plus gros : +
+Pine
: tapez $
puis
+z
. Vous pourrez voir entre parenthèses la taille
+(en octets) des messages ;Mutt
: tapez o
puis
+z
; vous voyez alors la taille de chaque
+message, en nombre de lignes, indiquée entre parenthèses. Pour voir la
+taille en octets, allez sur chaque message (en commençant par les plus
+gros, naturellement), et appuyez sur v
. La première façon de vider sa boîte, la plus simple, est d'effacer +des messages ; mais rassurez-vous, ce n'est pas la seule, comme +nous le verrons plus bas.
+Pine
+Si vous utilisez le logiciel Pine
, placez-vous sur le courrier et
+appuyez sur D
(comme indiqué en bas de l'écran) pour
+effacer un courrier électronique. Il vous sera demandé confirmation au
+moment de quitter Pine
; vous pouvez entre-temps
+utiliser U
pour annuler votre ordre.
+
+Vous trouverez plus d'informations sur le fonctionnement de
+Pine
sur la page consacrée à
+Pine sur le site des tuteurs.
+
Mutt
+Si vous utilisez le logiciel Mutt
, placez le curseur, au moyen des
+flèches, sur le message à effacer, et appuyez sur la touche
+D
(qui signifie delete
, détruire). Une balise
+D
apparaît devant le message ; vous pouvez annuler cet
+ordre en tapant sur la touche U
. Lorsque vous quitterez Mutt
,
+si vous n'avez pas annulé, le message sera effacé.
+
+Vous trouverez plus d'informations sur le fonctionnement de
+Mutt
sur la page consacrée à
+Mutt sur le site des tuteurs.
+
+Vous venez de recevoir un message accompagné d'une pièce jointe +volumineuse. Vous aimeriez conserver cette pièce jointe sans empiéter +sur les ressources d'autrui. Comment faire ? +
+Vous pouvez procéder en deux étapes :
+/var/mail
ou /d
.
+Dans l'index des messages, allez sur votre message et appuyez sur la
+touche >
; vous verrez, comme d'habitude, le
+texte du message ; appuyez encore sur la
+touche >
et vous verrez la liste des pièces
+jointes.
+
+Sélectionnez la pièce jointe que vous voulez sauvegarder et appuyez sur
+S
; en suivant les étapes indiquées par Pine, vous
+pourrez donner le nom sous lequel sauvegarder la pièce jointe.
+
+Dans l'index des messages ou lorsque vous lisez un message (vous avez le
+choix), appuyez sur v
; vous verrez alors la liste des
+pièces jointes.
+
+Allez sur la pièce jointe à sauvegarder et appuyez sur s
,
+puis indiquez le nom sous lequel vous voulez la sauvegarder.
+
+Une fois que vous avez sauvegardé la pièce jointe, vous pouvez l'effacer
+du message. Ceci veut dire que la pièce jointe, à ce moment du
+processus, se trouve sur deux partitions à la fois : sur
+/var/mail
(dans le message qui vous l'a envoyée), et sur la
+partition de votre promotion (dans le répertoire et le nom de fichier
+que vous avez indiqués).
+
+Or, le but du processus était de libérer de l'espace disque sur
+/var/mail
; il reste donc à effacer la pièce jointe du
+message.
+
La méthode est la même sous Pine et sous Mutt : lorsque vous
+êtes dans l'index des pièces jointes, allez sur celle que vous voulez
+effacer et appuyez sur d
; un D
s'affiche
+devant la pièce jointe, indiquant qu'elle est candidate à
+l'effacement. Si vous avez des remords ou que vous avez commis une
+erreur de manipulation, vous pouvez annuler l'effacement en appuyant sur
+u
(comme undelete). La pièce jointe sera effacée
+lorsque vous quitterez Pine ou Mutt.
Pour un certain nombre de raisons, on peut vouloir conserver des
+messages après les avoir lus, au lieu de les effacer. Pour les conserver
+tout en libérant de l'espace disque sur la partition
+/var/mail
, il faut créer des dossiers sur
+une autre partition, typiquement celle où vous avez votre
+compte d'utilisateur.
Un dossier est un fichier contenant des courriels. Les +dossiers peuvent être aussi bien utilisés avec Pine qu'avec Mutt ou le +Webmail, et l'on peut lire avec l'un de ces programmes ou +interfaces ce que l'on a archivé avec un autre (à une exception +près : Mutt permet de lire et de remplir des dossiers +compressés, contrairement à Pine et au Webmail).
+Pine
Les dossiers de Pine
sont accessibles par l'entrée
+« FOLDER LIST
» du menu principal. À l'ouverture de
+votre
+compte, vous n'avez pas de dossiers, et seule apparaît dans ce menu
+votre boîte aux lettres (sous le nom INBOX
).
Pour sauvegarder un message, tapez S
dans
+l'index. Pine
+vous demande alors dans quel dossier sauvegarder ce message : choisissez
+un nom, il sera créé s'il n'existe pas encore. Vous pourrez ensuite
+revenir dans le menu « FOLDER LIST
», et vous verrez alors
+apparaître le dossier en question à côté des autres. La manipulation des
+messages
+dans un dossier est identique à celle de votre boîte aux lettres : vous
+pouvez lire les messages, les effacer, y répondre, et même les
+faire passer d'un dossier à un autre.
+Vous trouverez plus d'informations sur le fonctionnement de
+Pine
sur la page consacrée à
+Pine sur le site des tuteurs.
+
Mutt
+Vous pouvez archiver votre courrier dans des dossiers (folders) +au nom des personnes avec qui vous correspondez. L'intérêt est +triple :
+
+Pour ranger un courrier, tapez S
(sauver, ou
+save). Mutt
vous répond :
+
+Save to mailbox ('?' for list): =son.nom ++
où son.nom
est le nom de votre correspondant. Si le
+nom du dossier vous convient, confirmez avec « Entrée ». Le
+courrier est
+désormais indiqué comme détruit, et se trouve dans le nouveau
+dossier.
Pour aller dans un dossier donné : tapez
+C
(changer, ou change). Mutt
vous
+demande un nom de dossier. Les noms de dossiers sont toujours précédés
+du signe « égal ». Si donc vous voulez aller dans le dossier
+tuteurs
, tapez C
et complétez avec
+=tuteurs
. Pour revenir à la mailbox principale, tapez
+c!
.
Je veux aller dans un autre dossier | +Je veux revenir dans Inbox | +
---|---|
Je tape C |
+ Je tape C |
+
Il répond Open mailbox ('?' for list): |
+ Il répond Open mailbox ('?' for list): |
+
Je tape le nom : Open mailbox: =tuteurs |
+ Je tape le « ! » : Open mailbox: ! |
+
Il me met dans le dossier « tuteurs ». | +Il me remet dans Inbox. | +
Mutt
propose aussi la liste des dossiers : tapez
+?
pour avoir la liste, sélectionnez le dossier
+avec les flèches et tapez « Entrée ».
+Vous trouverez plus d'informations sur le fonctionnement de
+Mutt
sur la page consacrée à
+Mutt sur le site des tuteurs.
+
+Vous avez archivé vos messages sur une autre partition (typiquement +celle de votre promotion), et nous vous en félicitons. Mais les messages +s'accumulant, cette partition peut se retrouver à +son tour menacée de saturation.
+Pour éviter cela, il est recommandé d'archiver à l'extérieur de +l'ENS vos dossiers, lorsqu'ils commencent à prendre trop de place.
++Vous pouvez par exemple archiver vos messages sur votre ordinateur +personnel si vous en avez un, +mais il se peut que ce ne soit pas suffisamment fiable, car un virus ou +tout autre dysfonctionnement (voire une simple erreur de manipulation) +peut vous en priver définitivement. Ce n'est donc pas la méthode que +nous vous recommandons, même si elle reste tout à fait possible. +
++L'idéal est souvent d'archiver ses messages sur un support externe. La +capacité d'une disquette est souvent trop restreinte, et ne suffit pas à +archiver un grand nombre de messages (surtout s'ils contiennent des +pièces jointes). +En revanche, le CD-ROM est un support fiable et d'une +capacité généralement suffisante ; vous pouvez vous en faire +graver un. Pour plus de renseignements, consultez la page consacrée à l'espace +disque.
++Si vous avez le moindre doute, si vous craignez de faire une +fausse manipulation, n'hésitez surtout pas à contacter les +tuteurs, qui +sont là pour ça ; vous pouvez les contacter physiquement, en leur +tapant (gentiment) sur l'épaule, mais aussi par courriel à l'adresse +tuteurs@ens.fr, ou encore en +utilisant talk. +
+ ++Le protocole telnet, utilisé pour se connecter à distance sur des +ordinateurs, n'est pas sécurisé : quand vous tapez votre mot de +passe, chaque touche circule le long des câbles en clair. +C'est un peu comme si vous écriviez votre numéro de carte bleue sur une +carte-postale : n'importe qui sur le chemin peut lire, par exemple le +monsieur qui a branché son portable dans un coin à l'autre bout de la salle. +
++Bien sûr, le contenu de votre compte et votre mail n'intéressent +probablement pas les espions internationaux. Mais votre compte peut quand +même les intéresser deux raisons. D'une part l'espace disque et l'accès +réseau qui sont mis à votre disposition peuvent être utilisés pour stoquer +et distribuer du contenu interdit : logiciels copiés illégalement, images +pédophiles, etc. D'autre part, votre compte peut servir de passerelle pour +attaquer ensuite un autre compte plus important, en particulier à +l'intérieur de l'ENS. Dans tous les cas, ça ne peut que vous attirer des +ennuis. +
++Enfin, notons que les alternatives à telnet sont souvent mieux programmées +et plus confortables que telnet, ce qui ne gâche rien. +
+L'alternative à telnet est un autre protocole équivalent, mais sécurisé, +appelé SSH.
+
+Sous Unix, il suffit de taper ssh
plutôt que
+telnet
:
+
drakkar ~ $ ssh horus.ens.fr
+
+
+Si vous n'avez pas le même login là bas qu'ici, il faut le préciser en
+écrivant login@ordinateur
:
+
drakkar ~ $ ssh ngeorge@whitney.u-bourgogne.fr
+
+ +Sous windows, le programme telnet fourni par défaut est vraiment mauvais : +noir et blanc, caractères accentués souvent cafouilleux, touches flèchées +qui ne marchent pas toujours. Le plus simple pour utiliser SSH, c'est de +télécharger +PuTTY. +C'est un programme qui s'installe vraiment facilement (il suffit de le +sauver là où on veut). Pour l'utiliser, il ne faut pas oublier de cocher la +case « SSH » plutôt que la case « telnet ». +
++Il existe un autre programme assez fréquent qui permet de faire du SSH sous +windows : TTSSH. Il +est un peu plus difficile à installer que PuTTY, mais certains le préfèrent, +et il s'utilisent en complément de Teraterm Pro, que vous avez peut-être +déjà installé. +
++Macos ne vient avec aucun programme permettant de faire du telnet, vous +n'avez donc vraiment aucune excuse pour utiliser telnet plutôt que SSH ;-) +
++Il y a plusieurs programmes qui permettent d'utiliser SSH avec un Mac. +Citons MacSSH, et +NiftyTelnet +SSH, qui comme son nom l'indique fait aussi telnet (attention de choisir +le bon). +
+ +basile[point]clement[at]ens[point]fr. +
+ La connection eduroam est chiffrée à l'aide d'un certificat TLS qui est normalement présent sur votre machine: il s'agit du fichier /etc/ssl/certs/USERTrust_RSA_Certification_Authority.pem
. Si ce fichier n'existe pas sur votre machine, vous pouvez le télécharger ici. Placez-le alors dans un dossier sûr sur votre machine (pas dans le dossier Téléchargement !) et indiquez le chemin correspondant à la place de /etc/ssl/certs/USERTrust_RSA_Certification_Authority.pem
. Ne placez pas le certificat téléchargé dans /etc/ssl/certs/
, c'est un dossier réservé aux certificats système.
+
Authentication
, choisissez Tunneled TLS
Anonymous Identity
, entrez anonymous@ens.psl.eu
CA Certificate
, sélectionnez le
+ fichier /etc/ssl/certs/USERTrust_RSA_Certification_Authority.pem
Inner authentication
, sélectionnez PAP
@ens.psl.eu
à la fin (par
+ exemple, si votre identifiant ENT/GPS
+ est bobama
, vous devez
+ renseigner bobama@ens.psl.eu
)Password
, entrez votre mot de passe ENT/GPSConnect
/etc/wicd/encryption/templates/eduroam-ens
+ et placez-y le contenu suivant :
+ name = Eduroam ENS +author = Basile Clement +version = 1 +require identity *Identifiant password *Mot_de_passe +protected password *Mot_de_passe +----- +ctrl_interface=/var/run/wpa_supplicant +network={ + ssid="$_ESSID" + scan_ssid="$_SCAN" + key_mgmt=WPA-EAP + eap=TTLS + ca_cert="/etc/ssl/certs/USERTrust_RSA_Certification_Authority.pem" + identity="$_IDENTITY" + anonymous_identity="anonymous@ens.psl.eu" + password="$_PASSWORD" + altsubject_match="DNS:radius1.ens.psl.eu;DNS:radius2.ens.psl.eu;DNS:radius3.ens.psl.eu" + phase2="auth=PAP" +}+
/etc/wicd/encryption/templates/active
+ (toujours en tant que root) et ajoutez-y la ligne
+ suivante :
+ eduroam-ens+
eduroam
)Use these settings for all network
+ sharing this essid
et Use encryption
Eduroam ENS
comme méthode de chiffrage@ens.psl.eu
) et mots de passe ENT/GPS
+ dans les champs Identifiant
+ et Mot_de_passe
netctl
, il vous faut d'abord
+ créer un profil nommé (par exemple) eduroam. Ce profil est donc à
+ stocker dans le fichier /etc/netctl/edurom
(attention
+ aux permissions sur le fichier, votre mot de passe CRI y est en
+ clair). Le fichier doit contenir, en remplaçant $LOGINCRI (mettez un @ens.psl.eu dans le $LOGINCRI) et $PASSWORDCRI par vos
+ identifiants CRI (ENT, GPS, portail captif, etc.) ainsi que
+ $INTERFACE pour le nom de votre interface wifi (trouvable à l'aide
+ de la commande ip a
ou iwconfig
) :
++Description='Profil de connexion pour eduroam avec identifiants CRI ENS.' +Interface=$INTERFACE +Connection=wireless +Security=wpa-configsection +IP=dhcp +WPAConfigSection=( + 'ssid="eduroam"' + 'key_mgmt=WPA-EAP' + 'eap=TTLS' + 'anonymous_identity="anonymous@ens.psl.eu"' + 'ca_cert="/etc/ssl/certs/USERTrust_RSA_Certification_Authority.pem"' + 'identity="$LOGINCRI"' + 'password="$PASSWDCRI"' + 'altsubject_match="DNS:radius1.ens.psl.eu;DNS:radius2.ens.psl.eu;DNS:radius3.ens.psl.eu"' + 'phase2="auth=PAP"' +) ++ + Ensuite, comme d'habitude, il faut charger le profile et le lancer : +
+netctl enable eduroam +netctl switch-to eduroam ++
$LOGIN
+ et $PASSWORD
et ajoutez un @ens.psl.eu
+ après l'identifiant ENT/GPS) suivant devrait fonctionner :
+
+ network={ + ssid="eduroam" + key_mgmt=WPA-EAP + pairwise=CCMP + eap=TTLS + ca_cert="/etc/ssl/certs/USERTrust_RSA_Certification_Authority.pem" + identity="$LOGIN" + anonymous_identity="anonymous@ens.psl.eu" + password="$PASSWORD" + altsubject_match="DNS:radius1.ens.psl.eu;DNS:radius2.ens.psl.eu;DNS:radius3.ens.psl.eu" + phase2="auth=PAP" +}+
Cette procédure a été testée sur un HTC One X sous Android 4.2.2 + et sur un Galaxy Nexus sous Android 4.3.? ainsi que Cyanogen 10.1 + et 10.2 sur un Galaxy S1.
+ + Allez dans Paramètres et activez le WiFi. À tout moment Mac OS peut vous demander votre mot de passe Mac
+ OS dans une fenêtre avec écrit Configuration Profile Tool
+ wants to make changes. Type your password to allow this.
,
+ à chaque fois, entrez votre mot de passe Mac OS.
Tout d'abord il vous faut récupérer le fichier de + configuration spécial Mac OS et ENS. Pour le récupérer vous + pouvez soit + prendre le nôtre + (mais qui risque de ne pas être à jour) soit aller + sur cat.eduroam + et choisir votre système d'exploitation. (Si notre fichier ne + marche plus, n'hésitez pas à nous prévenir !)
+Ouvrez ce fichier. Une fenêtre
+ Profile
devrait s'ouvrir.
Une fenêtre Install "eduroam"?
devrait apparaître
+ avec trois boutons Show Profile
,
+ Cancel
et Continue
. Cliquez
+ sur Continue
. Si une alerte vous prévient que
+ l'auteur de ce profil est inconnu et vous demande si vous voulez
+ continuer, cliquez sur Continue
.
Des fenêtres Enterprise Network
apparaissent et vous
+ demandent des Username
et des Password
+ avec des Optional
grisés dans les champs
+ textes. Laissez vide.
Si vous n'avez plus de fenêtres qui apparaissent sélectionnez + dans la liste des wifi le wifi eduroam.
+On devrait vous demander username
+ et password
. Mettez vos identifiants CRI (GPS, ENT,
+ portails captifs…) sans ajouter de @ens.psl.eu
. Vous
+ devriez maintenant être connecté à eduroam
.
+N'importe qui peut demande la création d'un conti (nom donné aux
+groupes de forum). C'est le compte forum,
+émanation des gourous,
+qui s'en charge techniquement. Voici les consignes à suivre pour que
+tout se passe correctement et rapidement. Vous trouver la version
+officielles de ces consignes sur forum dans le message
+<bpik14$5mg$12@clipper.ens.fr> (alias
+syst.forum:7237
).
+
Poster un message dans le conti
+syst.forum
(qui parle du fonctionnement de
+forum) pour décrire le conti que l'on veut, proposer un nom et une
+charte. Ce message sert à engager une discussion, pour que les gens
+disent s'ils sont intéressés ou non, suggérer un autre nom, etc.
+
+Pour ceux qui connaissent le fonctionnement de Usenet-fr, cette +discussion peut rappeler un AAD, mais c'est en fait beaucoup moins formel. +
++S'il s'agit d'un groupe alt.* (peu sérieux), l'étape 1 est +optionnelle. +
+
+Une fois que la discussion s'est stabilisée (plus de nouveaux messages
+dans un temps raisonnable) et que le groupe a été jugé utile,
+envoyer un courrier au Compte Forum
+(forum@clipper
) demandant formellement la
+création du groupe. Ce message doit contenir les éléments suivants :
+
+(echo "LIST NEWSGROUPS" ; echo QUIT) | netcat clipper.ens.fr 2019 ++
V
dans flrn
pour
+l'obtenir) de la discussion à ce sujet dans syst.forum
+Si vous ne suivez pas cette procédure, assez simple en fait, le Compte
+Forum peut ignorer votre demande. Ne vous contentez pas de dire « je
+demande la création de alt.blabla
» dans
+syst.forum
, il faut envoyer un courrier.
+
+Normalement, les alt.* sont créés sans trop de discussions, mais dans +les cas vraiment nazes et/ou abusifs, le Compte Forum peut très bien +vous répondre non. +
+ ++Attention, bien que les concepts évoqués soient indépendants du +lecteur de news utilisé, les aspects pratiques ne sont valables que +pour Flrn, le lecteur de news particulier à +l'ENS. Les choses sont certainement différentes avec un autre lecteur +de news (XNews, Outlook Express, Mozilla Mail...). +
++Un crosspost (parfois abrégé en +« Xpost ») est le fait de poster dans plusieurs groupes simultanément +(on poste un seul message, et il est diffusé dans plusieurs +groupes). Ne pas confondre avec un multipost qui consiste à poster soi-même +plusieurs fois le même message dans plusieurs groupes différents. Un +crosspost est acceptable s'il est suivi d'un followup +(cf. ci-dessous), le multipost s'apparente à du spam, il faut donc +l'éviter. +
++Un Followup-To (fu2 en abrégé, +parfois traduit par « suivi-à » en français) signifie qu'on invite les +réponses au message que l'on poste à être envoyées dans un autre +conti. +
++La combinaison « crosspost + fu2 » est très utile dans deux cas +essentiellement : +
+societe.droit
et
+divers.vie-pratique.finances
, et vous redirigez dans
+divers.vie-pratique.finances
.
+
+Admettons que vous participiez à une passionnante discussion sur la
+vie et les mœurs de ces fabuleux animaux que sont les
+macareux. Cette discussion se tient dans le conti
+sciences.biologie
. La conversation dérive peu à peu, et
+vous vous retrouvez à parler du droit des animaux. Vous souhaitez donc
+logiquement poursuivre la dicussion dans le conti
+societe.droit
. Voici comment procéder.
+
R
pour
+Flrn). Vous voici prêt à éditer le message :
+
++Groupes: ens.forum.sciences.biologie +Sujet: la vie des macareux + +Raoul Dugenou, dans le message (sciences.biologie:42), a écrit : +> et c'est absurde, car les animaux n'ont pas de droits. ++
+Sujet: la vie des macareux +Groupes: ens.forum.sciences.biologie, ens.forum.societe.droit +Followup-To: ens.forum.societe.droit + +Raoul Dugenou, dans le message (sciences.biologie:42), a écrit : +> et c'est absurde, car les animaux n'ont pas de droits. ++
+Groupes: ens.forum.sciences.biologie, ens.forum.societe.droit +Sujet: droits des animaux (was: la vie des macareux) +Followup-To: ens.forum.societe.droit + +Raoul Dugenou, dans le message (sciences.biologie:42), a écrit : +> et c'est absurde, car les animaux n'ont pas de droits. ++ +
+Par politesse, vous pouvez indiquer à la fin de votre message que vous +effectuez une redirection : +
++[Copie et suivi dans societe.droit.] ++
+Si vous faites un usage intensif de ces fonctions, vous pouvez ajouter une
+option qui propose automatiquement un certain nombre de champs utiles, dont
+« Followup-To ». Pour ce faire, éditez le fichier de config de Flrn, le
+.flrnrc
et ajoutez-y la ligne suivante :
+
+set edit_all_headers ++
+Les champs « Sujet » et « Groupes » s'appellent alors « Subject » et +« Newsgroups », leur nom standard. Si vous modifiez le contenu d'un champ, +faites attention d'éviter les retours à la ligne intempestifs. +
++Quand vous répondez à un message avec followup, Flrn vous demande si +vous voulez le suivre : +
++Suivre le followup (O/N/A) ? ++
+Tapez O
pour « oui » : votre message sera posté dans le
+groupe indiqué dans le champ « Followup-To: », dans notre exemple
+précédent il s'agit de societe.droit
. Tapez
+N
pour « non » : votre message restera posté dans le
+groupe où vous vous trouvez, dans notre exemple,
+sciences.biologie
. Enfin, si vous souhaitez annuler votre
+réponse, tapez A
pour « annuler ».
+
+Admettons que vous ne lisiez que societe.droit
et pas
+sciences.biologie
. Vous voyez arriver un message qui
+parle du droit des animaux, mais vous aimeriez bien savoir de quoi
+parlait la discussion précédente, « la vie des macareux ».
+
+Placez-vous sur l'article « charnière » (celui qui comporte le
+crosspost + fu2) et tapez c
(ou \swap-grp
)
+puis Enter
. Flrn vous propose alors la liste des groupes
+dans lesquels le message a été crossposté :
+
+> ens.forum.sciences.biologie + ens.forum.societe.droit ++
+Il ne vous reste plus qu'à choisir. +
++Si vous écrivez « Followup-To: junk », cela signifie que vous ne +souhaitez pas qu'on réponde au message. Quant à « Followup-To: +poster », il signifie que vous voulez recevoir des réponses par mail +et non dans Forum. +
+ ++La lecture de cette page n'est absolument pas nécessaire pour poster +dans forum, encore moins pour y lire. Elle s'adresse à ceux qui +veulent approfondir leurs connaissances techniques sur Forum. +
++Un message commence par un certain nombre d'en-têtes (« headers » en anglais, on parle parfois aussi de +« champs »), suivis par une ligne blanche puis le corps du message. Un +en-tête tient généralement sur une ligne (s'il en fait plusieurs, les +suivantes doivent obligatoirement commencer par une espace ou +tabulation pour indiquer qu'il ne s'agit pas d'un nouveau en-tête). La +ligne du en-tête commence par le nom du en-tête, suivi de deux points +et d'une espace puis du contenu du en-tête. +
++À quoi servent les en-têtes ? À donner des méta-informations sur le +message. Prenons un exemple : dans une bibliothèque, la fiche d'un +livre contient un certain nombre de méta-informations : le nom et le +prénom de l'auteur, le titre du livre, son éditeur, le lieu d'édition, +le nombre de pages, etc. Les en-têtes sont une sorte de fiche pour un +message de news. La différence est que chaque message transporte sa +propre fiche sur lui. +
+
+Quand vous lisez un message de Forum avec Flrn, vous voyez typiquement ce genre de
+choses. Vous voyez les en-têtes « Auteur », « Sujet » et
+« Date ». Vous savez donc que c'est le Compte Forum qui a posté ce
+message, qu'il s'agit de la charte du conti aide
et que
+le message a été posté le 11 septembre 1998.
+
+Si vous tapez 'V' sur un message de forum, Flrn lancera un pager (typiquement le programme
+less
) pour vous permettre de voir complètement le message
+en question, avec toutes ses en-têtes :
+
+Si vous êtes un peu anglophones, vous pouvez comprendre de quoi +il retourne pour la plupart des en-têtes. Voici une explication des +en-têtes les plus importants. +
+
+L'en-tête From
indique l'identité de la personne qui a
+posté le message. Ce champ peut être modifié ; en revanche,
+forum ajoutera automatiquement à votre message un en-tête « Sender »,
+qui ne peut pas être modifié, et qui donne votre véritable
+identité. De plus, dans les en-têtes montrés par défaut, votre login
+véritable apparaîtra entre crochets à côté du nom falsifié. Ainsi, un
+message dans forum ne peut-il jamais être anonyme. On peut falsifier
+l'en-tête From
par plaisanterie, comme dans l'exemple
+ci-dessous (signé « Monsieur Fernand » mais posté en réalité par
+quelqu'un dont le login est « dupond »), mais sinon c'est considéré
+comme du piratage et c'est Mal.
+
+Auteur: Monsieur Fernand (le.mexicain) [dupond] +Sujet: Re: soiree Boum +Date: Thu Dec 4 13:28:33 2003 + +Dupont, dans le message (alt.bavardage:42), a écrit : +> les whiskys-cocas étaient un peu forts, quand même. + +J'ai connu une polonaise qu'en prenait au petit déjeuner. Faut quand +même admettre que c'est plutôt une boisson d'homme. ++
+Le champ Newsgroups
(ou Groupes
en version
+française) indique la liste des contis dans lesquels le message est
+posté. Quand il y a crosspost, l'en-tête
+contient deux groupes, ou davantage.
+
+Le champ Subject
(Sujet
en français) indique
+son... sujet. Indiquer un sujet quand on poste un message est
+obligatoire, comme dans un courrier électronique. Il y a quelques
+règles de bon sens à ce propos : il faut choisir un sujet pas trop
+long, qui décrit bien le message en question (on essaiera de
+s'abstenir de jeux de mots et autres blagues fines &
+subtiles). Non seulement vos lecteurs auront une meilleure idée de ce
+dont vous allez parler, mais ça facilite les recherches ensuite dans
+Forum.
+
+Pour cette raison, il convient de changer le sujet chaque fois qu'il
+ne correspond plus à la discussion (pas trop souvent quand même, sinon
+ça devient pénible). Le changement de sujet obéit à quelques règles
+d'usage (on ne vous fusillera pas si vous ne les respectez pas, mais
+elles sont commodes). Prenons un exemple. La discussion de départ
+porte sur la hausse des prix de l'essence. Le champ
+Subject
ressemble alors à ça :
+
+Subject: Re: prix de l'essence ++
+La discussion passe ensuite à la couleur des Schtroumpfs, puis à la +masse des neutrinos. On a alors successivement : +
++Subject: couleur des Schtroumpfs (was: Re: prix de l'essence) ++
puis
++Subject: masse des neutrinos (was: Re: couleur des Schtroumpfs) ++
+Si vous ne changez pas de sujet, comment pourrez-vous retrouver plus +tard une discussion sur la masse des neutrinos si elle s'appelle +« prix de l'essence » ou « couleur des +Schtroumpfs » ? +
+
+Le champ Message-ID
donne un identificateur unique au
+message. Tout message de forum, et même, en théorie, de l'Univers des
+news tout entier, peut être repéré par son Message-ID. Dans Flrn, vous
+pouvez vous rendre directement sur le message ayant un ID donné en
+tapant y
(ou \art-msgid
) suivi du numéro en
+question (avec les cornets <> qui l'entourent).
+
+Si vous voulez indiquer un message précis de forum à quelqu'un, songez +à donner le couple message-ID + référence dans le conti. On dira +ainsi : « Va voir aide:1 (alias +<6tbtl0$2as$1@clipper.ens.fr>) ». +
+
+L'en-tête Followup-to
est une redirection. Quand on
+indique un groupe dans cet en-tête, ça veut dire qu'on s'attend à ce
+que les réponses soient envoyées dans ce groupe. On utilise d'habitude
+le Followup-to
(abrégé en « fu2 » le plus souvent) en
+combinaison avec un crosspost, voir notre
+page à ce sujet.
+
+Cet en-tête ne se trouve pas dans un message standard. Il se trouve
+uniquement dans des messages bien particuliers, dans un contexte
+particulier. Admettons que vous vous aperceviez d'une erreur dans un
+message à vous, déjà envoyé. Vous pouvez le modifier grâce à une
+manœuvre appelée « supersedes » (d'après le nom de l'en-tête,
+vous allez comprendre). Un supersedes consiste à annuler un message et
+à en reposter un dans la foulée. Il suffit de taper
+\supersedes
sur le message incriminé, puis d'éditer le
+message, et de le poster de nouveau.
+
+Le nouveau message changera de message-ID, ce qui veut dire que s'il
+quelqu'un a répondu entre-temps à votre message non corrigé, le fil de
+la discussion sera brisé : il ne sert à rien de superseder trop
+longtemps après avoir posté. En outre, le nouveau message aura un
+en-tête supplémentaire, Supersedes
:
+
+From dupond@clipper.ens.fr Mon Dec 8 16:02:32 2003 +Article: 42 of ens.forum.divers.www +Path: eleves!not-for-mail +From: dupond@clipper.ens.fr (Pierre Dupond) +Newsgroups: ens.forum.divers.www +Subject: Site tres drole +Supersedes: <123$456789@clipper.ens.fr> +Date: Mon, 8 Dec 2003 15:02:32 +0000 (UTC) +Organization: Forum. +Lines: 7 +Sender: dupond@clipper.ens.fr +Message-ID: <987$654321@clipper.ens.fr> +(...) ++
+En anglais, supersedes est la 3e personne du +singulier du verbe to supersede qui veut dire +« remplacer, prendre la place de ». Ce champ veut donc dire : « le +message actuel, dont le message-ID est +<987$654321@clipper.ens.fr>, remplace l'ancien message +<123$456789@clipper.ens.fr> ». +
+
+Vous pourrez parfois trouver des en-têtes dont le nom commence par
+« X- » (par exemple, X-Moderators-Note
, ou encore
+X-Supersedes-Reason
). Ce ne sont pas des en-têtes
+standards, et n'ont pas de signification bien définie pour les
+logiciels de lecture des news. Cela signifie que certaines personnes
+dans Forum s'amusent à parsemer leurs messages de tels en-têtes à
+l'attention de ceux qui prendront la peine de les remarquer. Les
+en-têtes qui ne commencent pas par « X- », en revanche, ont une
+signification bien définie, et il ne faut pas les inventer.
+
+Flrn (Forum Like Newsreader) est un lecteur de news +écrit par deux archicubes, Damien Massé et Joël-Yann Fourré, +spécialement pour la lecture de forum, les news +internes de l'ENS. Il peut bien évidemment être également utilisé pour +lire les news extérieures, comme Usenet. +
++Pour aller plus loin que ce tutorial pour débutants, vous pouvez lire +la FAQ des tuteurs sur flrn. +Si au contraire vous êtes tellement débutant(e) que vous bloquez dès la +première instruction du tutoriel ci-dessous, vous pouvez essayer le +tutoriel tout-en-un dont le pdf est téléchargeable +ici. +
+Si vous êtes complètement perdu et/ou que vous devez poster un +message de manière urgente, lisez directement le En +Bref. Mais ne vous laissez pas impressionner par le tutorial, il +est très simple... +
++Pour l'utiliser, c'est très simple. Dans un terminal, tapez simplement : +
+clipper ~ $ forum
+
+ +Vous pouvez également cliquer sur l'icône « Forum ». +
++Apparaîtra alors un écran de ce type (bien sûr, les couleurs choisies +dépendent de votre configuration) : +
+
+En haut à gauche, on trouve le nom du groupe (en l'espèce,
+aide
, le groupe consacré à l'aide sur l'utilisation de
+forum et de flrn). À droite, le numéro du message où vous vous
+trouvez, ainsi que le numéro du dernier message du groupe. Ici, nous
+sommes au message n°1 (qui contient traditionnellement une
+mini-charte), et on voit que, lorsque cette capture d'écran a été
+faite, il y avait 1596 messages en tout dans ce groupe. En-dessous se
+trouve le message, divisé en deux parties :
+
+Pour quitter forum, appuyez (au besoin plusieurs fois) sur la touche
+q
.
+
Ne quittez pas forum en détruisant la fenêtre dans +laquelle le programme est lancé : les messages que vous avez lus ne seront +pas marqués comme tels, et vous devrez les relire plusieurs fois. +
++Pour lire forum, c'est très simple. Pour faire défiler le message puis +pour passer au message suivant, appuyez sur la barre d'espace. +
+
+La lecture se fait dans l'ordre des discussions. Lorsque tous les
+messages du groupe ont été lu, un autre appui sur la barre d'espace
+permet d'aller au prochain groupe (auquel vous êtes abonné) où se
+trouvent des messages non lus. Enfin, lorsqu'il n'y a plus rien à
+lire, il suffit de taper q
pour quitter.
+
+Poster dans forum est très facile. Il est néanmoins conseillé de faire
+ses premiers essais dans le groupe essais
prévu pour ça.
+
+Si vous voulez commencer une nouvelle discussion, utilisez la touche
+m
dans le groupe où vous désirez poster.
+
Flrn vous demandera alors le sujet de votre message. Finissez la
+ligne du sujet en appuyant sur Enter
. Vous arriverez
+alors dans votre éditeur favori. Par défaut, pour la config
+conscrits, c'est pico
.
+
+ En haut se trouveront deux lignes d'entêtes de titre Groupes +et Sujet. Vous pouvez modifier le sujet de votre message si à +la réflexion il ne vous convient pas. +
+Laissez toujours une ligne vide entre la fin de vos +entêtes et le corps de votre message, faute de quoi forum pourra faire +des erreurs et inclure comme entête ce qui ne l'est pas. +
+
+Une fois votre message écrit, sauvez-le et quittez l'éditeur (dans
+pico, Ctrl-O
puis Ctrl-X
). Flrn vous laisse
+alors une seconde chance :
+
+(P)oster, (E)diter, (A)nnuler ? ++
+Vous pouz donc taper p
pour poster, e
pour
+revenir à l'édition du message avec votre éditeur habituel, ou
+a
pour annuler votre message si vous penez qu'en fait ça
+n'est pas utile.
+
+Vous devez utiliser la touche R
(comme Reply)
+pour répondre au message courant. Ce message doit être dans le groupe
+que vous lisez actuellement pour que vous puissiez y répondre. La
+démarche est la même qu'au-dessus, mais cette fois forum ne vous
+demandera pas de sujet. Bien sûr, vous pourrez toujours modifier le
+titre vous-même une fois que votre éditeur sera lancé.
+
+Certains messages, placés dans un groupe, ont une mention qui indique que +les réponses doivent être postés dans un autre groupe (il s'agit de l'entête +Followup-To). Dans ce cas, forum vous demandera si vous désirez +suivre cette indication. En règle générale, dites « oui ». +
++Il peut arriver aussi que cette mention demande que la réponse au +message soit faite par courrier électronique. forum vous demandera +alors si vous désirez répondre au message par courrier +électronique. La démarche est identique. +
+ Quand vous répondez à un message, flrn
+ajoute en lançant l'éditeur l'ensemble du message auquel vous répondez
+sous forme « quotée » (chaque ligne commence par un
+>
). Ne gardez de ces « citations » que la partie
+nécessaire à la compréhension de votre message, en effaçant les lignes
+inutiles, par exemple dans pico
par Ctrl-K
.
+
+Une réponse à un long message qui le reprend dans son intégralité et +rajoute simplement une ligne est inutile et particulièrement mal vue, +sur forum comme sur Usenet (où on vous accusera, selon l'expression +consacrée, de « quoter comme un goret »). D'autre part, la convention +veut que la réponse se place après le message cité et +non avant, pour des questions de lisibilité. Toutes les explications +sont fournies dans l'excellente FAQ « L'art +et la manière de répondre sur Usenet ». Sa lecture est quasiment +indispensable. +
+
+Être abonné à un groupe signifie que vous demandez à forum de lire les
+messages de ce groupe. La touche l
permet d'avoir la
+liste des groupes auxquels vous êtes abonnés. Cette liste montre un
+menu. Vous pouvez vous déplacer dans ce menu avec les flèches et
+quitter ce menu avec la touche q
. Pour chaque groupe,
+vous pouvez demander à vous désabonner au groupe en tapant
+D
.
+
+La touche L
donne la liste de tous les groupes. Elle
+présente successivement deux menus. Dans le premier (groupes auquels
+vous êtes abonnés, ou dont vous avez déjà lus certains messages), vous
+pouvez vous abonner ou vous désabonner à un groupe avec les touches
+respectives A
et D
. Dans le second groupe,
+vous ne pouvez que vous abonner à un groupe avec la touche
+A
(vous êtes par défaut désabonné à tous les groupes).
+
+Vous pouvez restreindre la liste des groupes en donnant une
+sous-chaîne du nom du groupe au moment où vous tapez la commande. Par
+exemple, taper L
suivi de lettres
donnera
+juste la liste des groupes dont le nom groupeent 'lettres'.
+
Taper A
ou D
suivi d'Enter dans
+un groupe vous abonne/désabonne au groupe courant. Y
+ajouter un argument (par exemple biologie
) permet de vous
+abonner/désabonner au groupe dont le nom contient cet argument. S'il y
+a ambiguité, forum vous proposera un menu, il vous suffira de choisir
+le groupe par la touche Enter.
+ | ? ou h |
+ afficher un menu d'aide | +
Déplacement dans une discussion | +Flèche gauche | +Va au « père » du message | +
---|---|---|
Flèche droite | +Va sur un des « fils » du message (cf. arbre de la discussion) | +|
Flèche haut/bas | +Va sur un des « frères/cousins » du message (cf. arbre de la +discussion) | +|
Déplacement dans un groupe | ++ Enter + | +Va au message de numéro suivant | +
+ p
+ |
+ Va au message de numéro précédent | +|
Un numéro n | +Va au message de numéro n | +|
+ r
+ |
+ Montre sous forme d'un menu les messages autour du message courant | +|
Déplacement dans les derniers messages regardés |
+
+ B
+ |
+ Va au précédent message regardé (recule dans l'historique) | +
+ F
+ |
+ Revient d'une touche B (avance dans l'historique) |
+ |
+ H
+ |
+ Montre l'historique sous forme de menu | +|
+ Divers + | +
+ e
+ |
+ Efface le message courant (s'il est de vous) | +
+La commande r
peut prendre divers arguments. En
+particulier :
+
r-
donne un menu de tous les messages du groupe.r<>
donne un menu comportant les messages de
+la discussion courante (mais il est préférable de taper, pour un
+résultat mieux présenté, \summ-thread
).
+On peut se réferer à l'aide de flrn
pour avoir une description
+complète des commandes et de la façon des les utiliser.
+
pico
. Si votre
+configuration est plus vieille, vous vous retrouverez face à l'éditeur
+intégré de flrn
...
++Si vous êtes perdu et/ou pressé, suivez pas à pas ces instructions qui +vous permettront de poster très rapidement. Mais n'oubliez pas de lire +le reste du tutorial ensuite. Si vous êtes arrivé dans cette École, ce +n'est pas en suivant bêtement des instructions sans comprendre... +
+ Pour l'exemple, admettons que vous vouliez annoncer dans
+petites-annonces
la perte de votre écharpe à la
+K-fêt.
forum
dans
+une fenêtre)G
. Vous voyez apparaître en bas de l'écran (GOTO)
+:
, tapez alors petites-annonces
. Vous vous
+retrouvez ensuite dans ce groupe.m
puis
+Enter
. Vous voyez apparaître deux lignes, l'une commence
+par « Groupe » et l'autre par « Sujet ». Votre
+curseur est après « Sujet ». Tapez le sujet de votre
+message. Vous voyez apparaître des lignes comme
+« Followup-To: », ou encore « X-Trace », ce sont des
+« champs ». N'y touchez pas. Faites descendre votre curseur au
+maximum (soit 1 ligne après le dernier champ). Écrivez votre
+message. Quand vous avez fini, tapez Ctrl-X
+puis Y
et
+Enter
.(P)oster, (E)diter, (A)nnuler
+?
. Tapez P
pour « poster ».
+Voilà, vous venez d'envoyer votre premier post sur
+forum. N'oubliez pas que normalement, vous êtes censé faire vous
+entraîner dans le groupe essais
avant de poster dans des
+groupes sérieux...
+
+La configuration de flrn
est dans le fichier
+.flrnrc
sur votre compte. Les modifications pas trop
+difficiles à faire sont mises en commentaire.
+
+Un second fichier, le fichier .flrnkill.forum
, est le
+kill-file de flrn
. Il peut être modifié pour
+indiquer par exemple que vous ne pouvez plus lire les messages de
+quelqu'un. On pourra lire l'aide de flrn
pour de plus
+amples renseignements.
+
+Forum est un système de messagerie interne aux élèves et anciens +élèves de l'ENS. Par son organisation et son fonctionnement, il +est très proche des news. La différence +principale réside dans le fait que sa diffusion est limitée aux élèves +de l'ENS. +
++Forum est géré par le Compte Forum, dépendance des Gourous, pour l'aspect +technique. Mais ce sont les élèves qui décident du reste : +création de nouveaux groupes (appelés « contis » pour des raisons +historiques), gestion du blast, et +bien sûr, trafic de forum. Il ne dépend que de vous que forum soit +animé ou pas ! +
++Pour écrire au Compte Forum, c'est simple : forum@clipper.ens.fr. +Si vous souhaitez faire partie du Compte Forum, pour maintenir le +bouzin ou tout changer, il faut également envoyer un mail, vu que le +recrutement se fait +par cooptation. +
++On peut trouver beaucoup de choses dans forum (selon les contis +lus) : +
+annonces
à proprement parler,
+annonces.petites-annonces
,
+annonces.seminaires
et
+annonces.theses
). Forum est, tout comme le BOcal, une solution
+alternative au mail collectif. Lire les groupes annonces ne vous
+coûtera pas beaucoup de temps par jour et vous permettra de vous tenir
+informés de la vie de l'École. C'est
+indispensable.Vous n'êtes pas obligé de lire tout forum. Nous vous +conseillons de vous abonner d'abord aux groupes d'annonces, puis à +quelques groupes sérieux, avant d'essayer, si vous le souhaitez, les +groupes de bavardage.
++Forum peut se lire avec n'importe quel lecteur de news. Sont +disponibles à l'École : +
+flrn
,
+slrn
...knode
,
+ Mozilla Thunderbird...Gnus
, le lecteur de news intégré à l'éditeur Emacs.
+Notons également l'apparition dans la config conscrit 2008 d'un lecteur avec
+interface graphique, mais se voulant le plus compatible possible avec
+flrn
: forum-gtk
. Ce programme est encore en
+développement, mais vous pouvez l'essayer dans les salles informatique de
+l'ENS.
+
+Parmi tous ces lecteurs de news, deux sont prévus spécifiquement pour +la lecture de forum. C'est le cas du webforum, interface +Web de forum. Pour des raisons de sécurité, il faut un certificat pour y +accéder. Vous devrez donc en demander un auparavant. C'est le moyen +idéal pour lire forum si vous souhaitez vous cantonner à la lecture des +annonces et ne vous abonner qu'à quelques groupes à faible activité. +
+Flrn a été conçu par deux archicubes, Damien
+Massé et Joël-Yann Fourré. Il est spécifiquement destiné à la lecture
+de forum, comme son nom l'indique (Forum Like
+Newsreader). Si vous n'êtes pas déjà habitué à un autre lecteur
+de news, nous vous conseillons d'adopter flrn
. C'est lui
+qui se lance avec la commande forum
sur les machines de l'école.
+Flrn vous permettra également de lire les news extérieures, comme Usenet.
+
+Pour savoir comment utiliser flrn, lisez le tutorial flrn. La FAQ des tuteurs sur flrn pourra +vous être également utile. Enfin, vous pouvez imprimer le Guide de survie +dans forum, qui résume en une page les principales commandes +utiles.
+
+Le logiciel de courrier électronique de la suite Mozilla,
+Thunderbird, dispose d'une fonction Newsgroups. Pour lire forum avec,
+indiquez clipper.ens.fr
comme nom de serveur de news, et
+2019 comme numéro de port du serveur.
+
+Vous pouvez utiliser n'importe quel lecteur de news de votre choix. Il +y en a une foultitude. En voici quelques-uns (le lien sur le nom du +logiciel correspond à la page officielle de celui-ci) : +
+Nom | +OS | +Remarques | +
---|---|---|
+ + Mozilla +Thunderbird + + | +Windows, Mac OS X, Linux | +Voir +ci-dessus. + | +
+ + Outlook +Express + + | +Windows, Mac OS | +Le lecteur de +mail et news livré avec (certaines versions de) Windows. Cf. la page des +WinTuteurs pour le configurer, il est impératif d'installer aussi OE-Quotefix, +un correctif qui facilite l'écriture et la lecture des news. | +
+ + MesNews + + | +Windows | +Logiciel +écrit par un français, disponible en français. | +
+ + Free +Agent + + | +Windows | +Version gratuite du logiciel +commercial Forté Agent. Disponible en français. | +
+Voici les documentations à votre disposition : +
+ Il existe un autre système de news locales, c'est Yaf. À la
+différence de Forum, Yaf est totalement et complètement anonyme. Vous
+pouvez y poster sous tous les noms que vous voulez, y compris celui de
+votre voisin. Pour y accéder, il faut avoir un compte sur le
+quatramaran
et taper yaf
.
+
+Il reste encore le mur
, bas-fonds de la glauquitude
+sallessienne... C'est une sorte de mur virtuel sur lequel vous pouvez
+tagguer tout ce qui vous passe par la tête.
+
annonces
+ +Contrairement à ce que vous pourriez croire, la plupart des contis de +Forum sont modérés. Il existe deux types de modération : une +modération classique et une particularité de l'ENS, le blast. +
+
+Il y a deux contis modérés dans Forum, ens.forum.annonces
+et ens.forum.syst.annonces
. Le premier contient des
+annonces diverses, il a pour but de remplacer partiellement le courrier
+collectif. Il est indispensable de lire au moins celui-là si vous
+voulez vous tenir au courant de ce qui se passe à
+l'ENS. ens.forum.syst.annonces
est beaucoup plus
+technique : il est consacré aux annonces liées au système informatique
+des élèves, en particulier aux annonces d'installation de programme.
+
+Dans ces deux cas, on ne veut pas que des discussions soient tenues +dans ces contis : il faut les garder lisibles, avec un trafic +faible. C'est ce qui explique la modération. +
+
+Quand vous postez un message dans annonces
+(syst.annonces
, de par son objet, est réservé au SPI et aux Gourous), votre message
+n'apparaît pas tout de suite dans le conti, contrairement à ce qui se
+passe d'ordinaire. Flrn vous dira par exemple :
+
+Vous postez dans un groupe modéré : il peut se passer un +certain temps avant que votre message n'apparaisse. +Appuyez sur une touche pour envoyer le message, ^C pour annuler. ++
+En fait, quand vous postez, votre message est envoyé par mail au
+Compte Forum, qui s'occupe du filtrage. Si celui-ci juge que votre
+message a sa place dans le conti où vous l'avez envoyé, il le poste de
+nouveau, et tout le monde pourra lire votre message. Sinon, il ne le
+poste pas. Le Compte Forum peut aussi rediriger, le cas échéant, votre
+message : par exemple si vous postez dans annonces
une
+annonce de séminaire, votre message sera redirigé dans
+annonces.seminaires
.
+
annonces
+
+Il existe une règle à respecter pour poster correctement dans
+annonces
: il faut faire ce qu'on appelle un « crosspost
++ fu2 », c'est-à-dire poster aussi dans un autre groupe, et rediriger
+dans cet autre groupe. Le principe est le suivant : on ne tient pas de
+discussions dans annonces
, mais on ne veut pas décourager
+les discussions pour autant... Les discussions partiront donc dans le
+2e conti.
+
+Exemple : vous postez un message d'annonces à propos d'une AG du
+COF. Vous allez donc crossposter dans ens.forum.annonces
+et ens.forum.cof
, et mettre un followup vers
+ens.forum.cof
. Ce qui veut dire que tout le monde lira
+l'annonce, et que ceux qui veulent pourront en discuter dans le conti
+approprié.
+
+Le blast est un système de modération qui a été adopté sur forum en
+2000. C'est un dispositif qui protège les contis « sérieux » (ceux qui
+ne commencent pas par alt.*
). Il s'agit d'éviter que des
+discussions non sérieuses ou hors-sujet aient lieu dans des groupes
+sérieux, ce qui pourrait gêner les autres contributeurs.
+
X-Censorship
au message incriminé. De plus, un certain
+nombre de personnes pensent que la censure ne remplit pas bien son
+rôle. Après bien des débats dans syst.forum
, c'est le
+principe du blast qui est adopté.
+
+Le mécanisme est simple : blaster un message, c'est le déplacer dans
+un conti spécial appelé alt.blast
(pour des précisions
+techniques, lisez sur clipper
le fichier
+/var/forum/blastd/00README
). Si on n'est pas abonné à
+alt.blast
, c'est comme si ce message n'avait jamais
+existé. On ne blaste pas n'importe comment, il existe des règles :
+
alt.*
. Ce serait
+un non-sens : le blast ne protège que les groupes sérieux.
++Tout le monde n'a pas le droit de blaster. Peuvent blaster 3 +catégories de personnes : +
+e
avec Flrn)
+Les modérateurs sont choisis par volontariat : il suffit de demander
+au Compte Forum à être modérateur d'un conti, et sauf si le reste de
+Forum réuni hurle « Non ! », vous deviendrez modérateur. Vous pouvez
+modérer un ou plusieurs contis, et chaque conti peut avoir un ou
+plusieurs modérateurs. Le seul réquisit est de lire régulièrement le
+conti que l'on veut modérer. La liste des modérateurs se trouvent sur
+clipper : /var/forum/blastd/proprio
(c'est un simple
+fichier texte, lisible avec less
par exemple).
+
+Si vous êtes modérateur et que vous utilisez Flrn, vous avez tout intérêt à faire comme tout
+le monde et à associer la touche Z
au blast. Éditer votre
+fichier .flrnrc
(nedit .flrnrc
par exemple)
+et ajoutez la ligne suivant :
+
+name forum bind Z pipe-header Message-ID: /opt/gourous/forum/bin/simpleblast ++
+Ensuite, appuyer sur la touche Z
blastera le message que
+vous êtes en train de lire. Appuyer sur >Z
blaste le
+message que vous êtes en train de lire et tous ses descendants (à
+utiliser avec précaution). D'abord, le Blast Dæmon vous saluera :
+
+200 I am the Almighty Blast Daemon. Who are you, and why do you seek me? ++
+Puis il effectuera une vérification dans la liste des modérateurs pour +voir si vous êtes autorisé à blaster ce message. Si c'est le cas, il +vous fera une proposition un peu légère : +
++250 Nice shoes, <login>. Wanna fuck? ++
+Puis, pour chaque message à blaster, si le blast est réussi, vous +verrez : +
++208 BANG! It's DEAD! ++
+Son travail terminé, le Blast Dæmon vous dira au revoir : +
++205 Well, thanks for dropping in. Seeya. ++
essais
avant de
+blaster réellement.
+alt.blast
.+Globalement, les règles de la Nétiquette (c'est-à-dire, les règles de +courtoisie applicables à Internet), et plus particulièrement ceux en +usage sur les news +s'appliquent également sur forum. Il y a néanmoins quelques règles +spécifiques. Nous vous récapitulons ici les points les plus importants. +
++Ce sont des humains en face de vous. Ne soyez pas agressif ou méchant +gratuitement tout ça parce que vous ne voyez pas votre +interlocuteur. Souvenez vous qu'à l'écrit, il est plus difficile de +repérer du second degré. Utilisez des smileys pour indiquer les passages +de vos messages à prendre au second degré si ce n'est pas évident. Par +exemple, « :-) » est le smiley générique, que les nouvelles +générations tendent à écrire « :o) » à la place, et certains +préfèrent « :) ». Le smiley « ;-) » signale un clin +d'œil. +
+
+Forum est un lieu de débats, d'échange de connaissances, mais aussi un
+lieu où se retrouvent des habitués, une sorte de K-fêt virtuelle. Il est
+naturel, quand vous découvrez Forum, d'avoir l'impression d'un groupe de
+gens un peu fermé, avec leur private jokes à eux. Il ne
+s'agit pas d'éloigner les nouveaux, ne vous sentez pas offensé, vexé ou
+exclu. Soyez tolérant et ne hurlez pas à chaque private
+joke que vous voyez passer. Soyez conscient aussi que les
+contis alt.*
sont très, très susceptibles de contenir
+des private jokes.
+
+Si on vous demande (cf. infra) de faire des efforts +d'orthographe, inversement ne vous transformez pas en censeur +ronchon : ne signalez pas la moindre faute de grammaire ou +d'orthographe qui passe. Souvent, ce sont des fautes d'inattention, +des lapsus, des erreurs de frappe. On ne s'attend pas non plus à ce +qu'un message de forum soit écrit en français littéraire. +
+
+Ne signalez (exclusivement dans le conti
+lettres.orthographe
) que les fautes qui vous semblent être
+de vraies fautes : par exemple « license » au
+lieu de « licence », « tord au lieu de tort »,
+etc. Soyez conscient aussi qu'il y a de véritables marronniers, par
+exemple l'orthographe de l'expression « au temps pour moi »,
+les gens en ont assez à force.
+
+Si vous postez sur Forum, c'est pour être lu. C'est donc à vous de +faire des efforts pour que votre message soit clair et agréable à +lire. La plupart des règles de forme que nous donnons ci-dessous +découlent de cette règle de fond. Un message difficile à lire (trop de +citations, formatage bizarre, message trop compact, trop de fautes +d'orthographe) est un message qui ne sera pas lu par grand monde. De +plus, vous irriterez vos lecteurs pour rien. +
++Ne tentez pas de fausser le champ « From » de vos messages +pour vous faire passer pour quelqu'un d'autre. Ce serait un acte de +piratage, et le piratage c'est Mal. +
+
+Lorsque vous répondez à un message, n'en citez que ce qui est
+nécessaire à la bonne compréhension de votre réponse. Surtout, ne
+laissez pas de lignes citées inutiles par paresse, c'est très
+désagréable pour le lecteur. Si votre éditeur est Pico, utilisez
+Ctrl+K
pour couper les lignes superflues.
+
+De même, placez votre réponse sous la partie du message cité à +laquelle vous répondez. +Une FAQ écrite pour Usenet, « l'art +et la manière de répondre sur Usenet » explique bien le pourquoi +de ces règles. +
++Contrairement à ce qui se passe sur les news, il n'est pas d'usage sur +forum de signer ses messages. Si vous voulez vraiment signer (par +exemple si vous voulez signer « Trucmuche, qui trouve ça amusant » ou +quelque chose comme ça), faites-le alors la façon correcte est +d'introduire votre signature par « -- », c'est-à-dire deux signes +moins SUIVIS D'UNE ESPACE, et ça tout seul sur une ligne. Cela permet +à flrn ou d'autres programmes de formater correctement la signature. +
+Ne signalez pas les fautes d'orthographe des autres en-dehors du +conti lettres.orthographe (et encore). +
++Par respect pour vos lecteurs, faites l'effort d'utiliser un langage +clair et compréhensible par tous. On ne vous demande évidemment pas de +parler comme dans un livre, mais essayez d'avoir une syntaxe, une +orthographe et une ponctuation décentes. Essayez de limiter les +anglicismes, les abréviations absconses façon « IDHTBIFOM » (ça veut +dire « I don't have the book in front of me », « je n'ai pas le livre +sous la main » en français, pas évident, n'est-ce pas ?). N'utilisez +pas le langage phonétique façon SMS. +
++Par convention, sur Internet, utiliser des majuscules revient à +CRIER. Si vous postez un message entièrement en majuscules, on vous +répondra sans doute d'arrêter de crier, ou de parler moins fort. Vous +disposez d'autres moyens pour mettre en valeur vos propos : on +représente l'italique *comme ceci*, le souligné _comme cela_. +
++N'abusez pas non plus des signes de ponctuation comme le point +d'interrogation ou le point d'exclamation, des smileys ou des autres +« LOL », « ROTFL » ou « MDR ». Un message +avec plein de « LOL!!!!!!!!!!!! :-) :-) :-) » n'est pas très +intéressant... Passez-vous votre temps à glousser bêtement dans la +vie ? Alors ne le faites pas sur Forum. +
++Limitez la longueur de vos lignes à environ 70 caractères. Si vous +utilisez l'éditeur Pico, il devrait le faire automatiquement (pensez à +Control-J pour reformater vos paragraphes). De même, songez à aérer +votre texte en sautant des lignes entre les paragraphes. +
++Un crosspost, c'est le fait de poster simultanément dans plusieurs +groupes. Un followup, c'est une redirection. Pour plus d'explications, +voir la page qui leur est consacrée. +
++Faire un crosspost sans followup est souvent générateur de bazar : la +conversation devient rapidement hors-charte dans l'un des groupes, il +est difficile ensuite de la restreindre à un seul groupe. Mieux vaut +donc éviter. +
+ +aide
, essais
, bienvenue
et sommaire
+
+Tous les contis de Forum (exceptés deux
+groupes spéciaux appelés control
et junk
+qu'on ne lit pas, et exceptés les groupes qui n'ont rien à voir avec
+l'ENS et ne servent qu'à recevoir des copies de listes de diffusion)
+ont un nom qui commence par ens.forum
. Ce début ne sert
+qu'à identifier les groupes comme faisant partie du Forum de l'ENS, et
+on peut l'omettre dans pratiquement toutes les situations.
+
+Les noms des contis sont constitués d'éléments séparés par des points
+(par exemple,
+ens.forum.alt.bavardage.deprime.traceroute
). Ils forment
+donc une hiérarchie thématique dont le détail doit beaucoup au hasard
+des demandes de création, et n'est pas toujours aussi systématique
+qu'on le voudrait. Il y a actuellement plus de 250 contis en
+ens.forum
.
+
+Les contis sont regroupés en hiérarchies : +
+Les contis relatifs aux sciences (11 groupes : chimie dans
+sciences.chimie
, maths dans sciences.maths
,
+linguistique dans sciences.linguistique
, informatique
+théorique dans sciences.informatique
, etc.). Le conti
+ens.forum.sciences
(sans rien après) existe (mais est peu
+utilisé).
+
Les contis relatifs aux lettres (5 groupes). Cette hiérarchie
+est malheureusement encore sous-utilisée (par manque de littéraires
+dans forum), mais on espère que cela changera. Au-delà de
+ens.forum.lettres
tout court, il existe
+lettres.langue
pour discuter de questions générales de langue,
+lettres.poesie
consacré à la poesie,
+lettres.philo
consacré à la philosophie et
+lettres.orthographe
consacré à l'orthographe. Pour des
+raisons, hé, hé, historiques, le conti « histoire » est séparé de la
+hiérarchie lettres.
+
+Le conti ens.forum.langues
et ses petits frères
+langues.anciennes
et langues.vivantes
ont pour thème
+des questions linguistiques générales. Les discussions les plus techniques
+pourront se tenir dans ens.forum.sciences.linguistique
. Il existe
+également un conti ens.forum.divers.traductions
pour les questions
+les plus pratiques.
+
Tout ce qui concerne l'informatique en pratique (36 groupes :
+cryptographie dans informatique.crypto
, utilisation des
+éditeurs de texte dans informatique.editeurs
, discussions
+sur Linux dans informatique.os.linux
et ainsi de suite).
+Le conti ens.forum.informatique
(tout court) existe et
+regroupe beaucoup de discussions hétéroclites qui n'ont pas leur place
+dans une autre branche de la hiérarchie informatique. En revanche,
+les discussions vraiment théoriques sur l'informatique comme science
+(p.e. l'algorithmique) se placent dans le groupe
+sciences.informatique
plutôt que dans cette hiérarchie.
+
+Ce qui concerne les prestations informatiques à l'ENS (17 groupes).
+ens.forum.syst
est le plus général et est lu notamment
+par le SPI (ce qui ne signifie
+pas qu'un message dans forum syst
dispense d'écrire au
+SPI pour signaler que quelque chose ne va pas !) ;
+syst.gourous
regroupe les annonces des nouveaux
+programmes installés par les Gourous (et les doléances à
+ce sujet), et ainsi de suite. En particulier, syst.forum
+concerne le fonctionnement de forum lui-même.
+
Cette hiérarchie (10 groupes) est celle du bureau des élèves de
+l'École, le COF, et de ses
+différents clubs (cof.as
, cof.bdtheque
,
+cof.annuaire
...).
+
Différents loisirs (24 groupes : loisirs.jeux
,
+loisirs.cirque
, loisirs.musique
,
+loisirs.sports
...).
+
4 groupes ; annonces de séminaires, de thèses, petites annonces.
+Le groupe ens.forum.annonces
existe et est modéré par le Compte
+Forum (c'est-à-dire que seuls les messages approuvés par le Compte Forum seront
+postés), de façon à limiter son volume. Y sont parfois (mais rarement)
+redirigés certains mails collectifs. Il est vivement recommandé de le lire.
+
Ce groupe figure tout seul car on n'a pas pu se mettre d'accord sur +le fait que l'histoire était une branche des lettres ou des sciences. +
+4 groupes ; c'est là qu'on postera les questions relatives à la
+scolarité à l'ENS (« Passer l'agreg est-ce une bonne idée ? » dans
+scolarite.agreg
par exemple), ainsi que les discussions
+sur les divers conseils de l'école (scolarite.ca-ce-cs
).
+
+Ce conti accueille les discussions sur l'ENS, ses locaux (mais il existe
+aussi ens.forum.cof.dg
), son personnel, sa gestion,
+sa politique, ses institutions, ses personnages, son histoire...
+
Cette hiérarchie de 13 groupes est le lieu où se déroulent de
+nombreux débats, souvent très vifs, au sujet de la société
+(discussions politiques dans societe.politique
par
+exemple).
Cette hiérarchie archivée (de 126 groupes), dans laquelle on ne +peut que lire et non poster, contient les messages de forum antérieurs +à la rentrée 1998 (date à laquelle le système tout entier de forum a +été repensé par Damien Massé, Thomas Pornin, Joël-Yann Fourré et +d'autres). L'intérêt de cette hiérarchie est de permettre de +retrouver d'anciens messages. (Certains messages encore plus anciens, +antérieurs, en gros, à 1990, sont accessibles seulement avec un +programme différent appelé « oldforum ».) +
++Comme son nom l'indique, ce groupe est destiné aux discussions concernant +les anciens élèves. Ce qui ne veut pas dire qu'on ne croisera pas d'anciens +élèves ailleurs, loin de là ! +
+
+Cette hiérarchie contient 14 groupes, elle regroupe tout ce qui ne
+tient pas ailleurs. Le groupe ens.forum.divers
tout
+court sert lorsqu'on aborde un sujet sérieux mais qu'on ne sait pas où
+le ranger (si le sujet n'est pas sérieux, voir
+alt.bavardage
à la place).
+
Cette hiérarchie « alternative » contient les (75) groupes moins sérieux de
+forum. Selon certains c'est la meilleure ; en tout cas c'est assurément la
+plus drôle.
+La sous-hiérarchie alt.bavardage.*
(31 groupes) est, comme son nom
+l'indique, un lieu de bavardage incessant et peu thématique ; on y trouve un
+échantillon assez impressionnant d'humour normalien, de jargon salle-S-sien et
+de private jokes parfois tellement private
+que même ceux qui les font ne les comprennent pas. Vous pouvez par exemple
+pousser vos coups de gueule dans alt.bavardage.deprime
, insulter
+les gens dans alt.bavardage.insultes
, ou parler de tout et de rien
+dans alt.bavardage.
+
Le reste de la hiérarchie alt.*
est moins orienté
+« discussion » mais très hétéroclite. Un groupe comme
+alt.questionaze
— où l'on pose sans honte les questions les
+plus saugrenues — aurait plutôt sa place dans divers.* ; le groupe
+alt.tetratomie
est l'endroit des coupages de cheveux en quatre ;
+si vous n'avez pas peur des jeux de mots idiots, ils regorgent dans
+alt.jeux.de.mots.nasczes
; le groupe alt.koans
est
+destiné à une forme d'humour assez conceptuelle, vous pouvez pratiquer des jeux
+littéraires dans des contis comme alt.alexandrins
ou
+alt.disparition
, organiser des sorties dans
+alt.forumifications
ou encore raconter votre vie dans
+alt.journal
. Mais surtout, surtout, n'allez pas dans
+alt.teslacorp
avant d'être préparé au pire (et notamment de savoir
+ce qu'on entend par « teslacorp »).
+
aide
, essais
, bienvenue
et sommaire
+
+Deux contis importants ne sont dans aucune hiérarchie : il s'agit de
+aide
et de bienvenue
. Il s'agit des contis
+regroupant les messages destinés à aider à l'utilisation de forum.
+
+Le conti essais
sera votre bac à sable quand vous expérimenterez
+une nouvelle fonctionnalité de votre lecteur de news, quand vous apprendrez
+une nouvelle pratique technique de forum.
+
+Quand au conti sommaire
, il contient peu de messages en raison des règles
+contraignantes qui en régissent la rédaction. Il est destiné à accueillir des résumés et des
+références à certaines discussions auxquelles on aimerait pouvoir se référer
+plus tard. Signalons au passage l'existence de la commande forumsearch
,
+qui sert à retrouver un message à partir de son contenu.
+
+Voici la liste exhaustive de tous les groupes sérieux de forum existant en novembre 2010. +Les contis sont classés par ordre alphabétique. On donne d'abord le nom du +conti, puis une courte description. +
+Nom | +Description | +
---|---|
ens.forum.aide | +Aide concernant forum et Flrn | +
ens.forum.annonces | +Annonces en tout genre, remplace le +courrier +collectif (groupe modéré par le Compte Forum). | +
ens.forum.annonces.petites-annonces | +Petites annonces +(achat/vente, objets perdus ou trouvés, petit cours, jobs, etc.) | +
ens.forum.annonces.seminaires | +Annonces de cours, +colloques, rencontres, séminaires d'élèves. | +
ens.forum.annonces.theses | +Annonces de soutenance de +thèse, de DEA, de magistère... et des pots qui vont avec. | +
ens.forum.archicubes | +Questions relatives aux anciens élèves. | +
ens.forum.bienvenue | +Messages de bienvenue et +d'explications sur forum. | +
ens.forum.cof | +Le COF +(association des élèves) et ses clubs. | +
ens.forum.cof.annuaire | +L'Annuaire des +élèves. | +
ens.forum.cof.as | +L'Association sportive +et les différents clubs de sport. | +
ens.forum.cof.bdtheque | +La BDthèque de l'ENS, et la BD +en général. | +
ens.forum.cof.bocal | +Le BOcal, l'hebdomadaire écrit +par et pour les élèves. | +
ens.forum.cof.dg | +La Délégation générale, les DGs, +et plus particulièrement le thurnage. | +
ens.forum.cof.k-fet | +La K-fêt des +élèves. | +
ens.forum.cof.mega | +Le Méga, le week-end +d'intégration des conscrits. | +
ens.forum.cof.plaquette | +La plaquette de présentation du COF. | +
ens.forum.cof.soirees | +Les soirées + organisées à l'École et le club Boum. | +
ens.forum.divers | +Tout ce qui n'a pas place ailleurs. | +
ens.forum.divers.actualite | +Discussions sur l'actualité +qui ne trouvent pas de place ailleurs. | +
ens.forum.divers.aumonerie | +Informations concernant les +différentes aumôneries présentes à l'École (talas, talos, etc.). | +
ens.forum.divers.biblio | +Ressources bibliographiques, entre-aide dans la recherche d'articles. | +
ens.forum.divers.bonnes-adresses | +Échange de bonnes +adresses : restaus, fournisseurs, mais aussi médecins ou +libraires. | +
ens.forum.divers.encyclopedies | +Wikipedia, encyclopédies et autres choses dans le genre. | +
ens.forum.divers.lectures | +Conseils de lecture, opinions +et mises en garde sur tous les types de livres. | +
ens.forum.divers.news | +Tout ce qui concerne les news extérieures (Usenet) +et les lecteurs de news. | +
ens.forum.divers.telecoms | +Discussions au sujet de la +téléphonie fixe ou mobile, mais aussi concernant le corps des Télécoms... | +
ens.forum.divers.traductions | +Demandes d'aide pour la +traduction de mots ou expressions étrangers. | +
ens.forum.divers.transports | +Le vélo, le train, l'avion, etc. | +
ens.forum.divers.vie-pratique | +Questions pratiques sur la +vie de tous les jours (d'une marque de lessive à la manière de changer +une ampoule). | +
ens.forum.divers.vie-pratique.finances | +Finances +personnelles (problèmes avec sa banque, voyages à l'étranger, choix +d'une carte, etc.) | +
ens.forum.divers.www | +Discussions au sujet du Web. C'est +là qu'on donne des URLs utiles, drôles, instructives... | +
ens.forum.essais | +Conti pour faire des essais : +s'entraîner à poster, essayer un nouveau gadget de son lecteur de +news... | +
ens.forum.histoire | +Discussions historiques de toutes natures. | +
ens.forum.informatique | +L'informatique en général. | +
ens.forum.informatique.bureautique | +Tableurs, traitements de texte, logiciels de présentation. | +
ens.forum.informatique.crypto | +Questions de cryptographie, +cryptologie et cryptanalyse. | +
ens.forum.informatique.editeurs | +Questions sur les +éditeurs de texte. | +
ens.forum.informatique.editeurs.emacs | +L'éditeur Emacs sous toutes ses +formes : GNU Emacs, XEmacs... | +
ens.forum.informatique.editeurs.vi | +L'éditeur vi et ses +dérivés : vim, +gvim... | +
ens.forum.informatique.graphisme | +Traitement d'images, +logiciels comme Gimp, Photoshop, +etc. | +
ens.forum.informatique.html | +Questions concernant les +langages du Web : HTML mais aussi les feuilles de style, +le XML, le JavaScript... | +
ens.forum.informatique.internet | +Aspects techniques de +l'Internet (TCP/IP, IPv6, +etc.). | +
ens.forum.informatique.lang | +Les langages de programmation +en général. | +
ens.forum.informatique.lang.c | +Le langage C. | +
ens.forum.informatique.lang.c++ | +Le langage C++ | +
ens.forum.informatique.lang.caml | +Le langage Caml et toutes ses variantes. | +
ens.forum.informatique.lang.fortran | +Le langage Fortran. | +
ens.forum.informatique.lang.java | +Le langage Java. | +
ens.forum.informatique.lang.perl | +Le langage Perl. | +
ens.forum.informatique.lang.python | +Le langage Python. | +
ens.forum.informatique.lang.sql | +Le langage de requêtes +SQL, voire sur les bases de données en général. | +
ens.forum.informatique.libre | +L'informatique libre : propagande, questions politiques, +déontologiques, choix des licences, etc. | +
ens.forum.informatique.mail | +Le +fonctionnement du courrier +électronique, ainsi que les sujets associés (par exemple le spam). | +
ens.forum.informatique.materiel | +Le choix +de matériel informatique. | +
ens.forum.informatique.mobile | +Téléphones mobiles, PDA, etc.. | +
ens.forum.informatique.mozilla | +Les logiciels +de la Mozilla Foundation : la suite Mozilla, +Mozilla +Firefox, Mozilla +Thunderbird, etc. | +
ens.forum.informatique.os | +Les systèmes +d'exploitation en général. | +
ens.forum.informatique.os.bsd | +Les systèmes dérivés de la +branche BSD d'Unix : FreeBSD, NetBSD, OpenBSD, ainsi que +Darwin. | +
ens.forum.informatique.os.linux | +Le système GNU/Linux | +
ens.forum.informatique.os.macos | +Le +système Mac OS, y compris Mac OS X. | +
ens.forum.informatique.os.microsoft | +MS-DOS et à toutes +les moutures de Windows. | +
ens.forum.informatique.os.unix | +Unix, +ses variantes et ses descendants. | +
ens.forum.informatique.postscript | +Le format/langage +PostScript, EPS et les sujets apparentés. | +
ens.forum.informatique.shell | +Discussions sur les shells +sous Unix | +
ens.forum.informatique.tex | +Fonctionnement de Tex et de +LaTeX. | +
ens.forum.informatique.typo | +La typographie et ses règles. | +
ens.forum.informatique.unicode | +Le jeu de caractères +universel Unicode, et les jeux +de caractères informatique en général. | +
ens.forum.informatique.video | +Video numérique, encodages, logiciels, etc. | +
ens.forum.informatique.x11 | +X11, l'interface graphique +des machines Unix. | +
ens.forum.langues | +Les langues, leur apprentissage, leurs relations, etc. | +
ens.forum.langues.anciennes | +Latin, Grec ancien, Sanscrit, Égyptien ancien, etc. | +
ens.forum.langues.vivantes | +Les langues pas mortes. | +
ens.forum.lettres | +La littérature en général. | +
ens.forum.lettres.langue | +Questions générales de langue, +problèmes de vocabulaire, points de grammaire, etc. | +
ens.forum.lettres.orthographe | +Questions et remarques d'orthographe. | +
ens.forum.lettres.philo | +Discussions d'ordre +philosophique et/ou métaphysique. | +
ens.forum.lettres.poesie | +Auteurs, mouvements, styles, citations, création. | +
ens.forum.loisirs | +Les loisirs en général. | +
ens.forum.loisirs.anime | +Les mangas et les dessins animés. | +
ens.forum.loisirs.astro | +Les différents aspects de +l'astronomie, ainsi que les discussions sur le club astro. | +
ens.forum.loisirs.cinema | +Tout ce qui a trait au cinéma. | +
ens.forum.loisirs.cinema.nanars | +Annonces de projection du nanar-club, discussions sur le cette façon alternative d'apprécier le cinéma. | +
ens.forum.loisirs.cirque | +Jonglage, monocycle, acrobatie, +annonces de spectacles et de conventions, de tout ce qui touche de +près ou de loin au cirque. | +
ens.forum.loisirs.danse | +La danse en général, et aussi le +club danse. | +
ens.forum.loisirs.fantasy | +La fantasy sous toutes ses formes. | +
ens.forum.loisirs.fantasy.tolkien | +Lœuvre et le +monde de J.R.R. Tolkien, les adaptations (films, jeux de rôle, etc.) +qui en sont faites. | +
ens.forum.loisirs.gourmandises | +Tout ce qui se mange et +qui est bon, et tout ce qui va avec : recettes, cuisine, annonces +d'événements miam, etc. | +
ens.forum.loisirs.jeux | +Tous les jeux qui n'ont pas de +groupe dédié. | +
ens.forum.loisirs.jeux.bridge | +Le bridge : discussions, +problèmes, etc. | +
ens.forum.loisirs.jeux.jdr | +Les jeux de rôle | +
ens.forum.loisirs.jeux.kraland | +Le jeu du même nom. | +
ens.forum.loisirs.jeux.video | +Les jeux vidéos, quel que +soit leur âge et leur plate-forme. | +
ens.forum.loisirs.jeux.video.nethack | +Le jeu Nethack et ses variantes (Rogue, Angband, Moria, Adom, Crawl...) | +
ens.forum.loisirs.musique | +Toutes les musiques. | +
ens.forum.loisirs.photo | +L'argentique aussi bien que le numérique. | +
ens.forum.loisirs.robot | +Le club Robot, les participations de l'ENS à la coupe de robotique. | +
ens.forum.loisirs.sf | +La science-fiction sous toutes ses formes. | +
ens.forum.loisirs.sf.star-wars | +Le monde de Star Wars, +les films, les produits dérivés. | +
ens.forum.loisirs.spectacles | +Tous les spectacles +(théâtre, opéra, etc.) ainsi que le club spectacles. | +
ens.forum.loisirs.sports | +Tous les sports. | +
ens.forum.loisirs.traques | +La traque, le sport national +de l'ENS. | +
ens.forum.loisirs.tv | +Tout sur la télé. | +
ens.forum.loisirs.voyages | +Destinations, conseils, organisation, récits. | +
ens.forum.normale-sup | +L'ENS, son histoire, et son actualité. | +
ens.forum.sciences | +Questions scientifiques générales, ou +sans groupe dédié. | +
ens.forum.sciences.biologie | +Questions de biologie, pour +spécialistes ou non. | +
ens.forum.sciences.chimie | +Questions de chimie, pour +spécialistes ou non. | +
ens.forum.sciences.informatique | +Questions d'informatique +théorique. | +
ens.forum.sciences.linguistique | +Questions de +linguistique, pour spécialistes ou non. | +
ens.forum.sciences.maths | +Questions de maths, pour spécialistes ou non. | +
ens.forum.sciences.maths.avancees | +Discussions plus approfondies, problèmes pointus. | +
ens.forum.sciences.medecine | +Questions de médecine +(humaine), pour spécialistes ou non. | +
ens.forum.sciences.paranormal | +Regards scientifiques sur les phénomènes réputés paranormaux, zététique. | +
ens.forum.sciences.physique | +Questions de physique, pour +spécialistes ou non. | +
ens.forum.sciences.psychologie | +Discussions sur la +psychologie, la psychiatrie, la psychanalyse, les sciences cognitives +en général, et tout ce qui touche au mental des êtres humains.. | +
ens.forum.sciences.sciences-sociales | +Discussions sur les +sciences sociales. | +
ens.forum.scolarite | +La scolarité à l'ENS. | +
ens.forum.scolarite.agreg | +L'agrégation, du concours aux résultats. | +
ens.forum.scolarite.ca-ce-cs | +Discussions autour des +différents Conseils de l'ENS (Conseil d'administration +et Conseil scientifique, Commission des études). | +
ens.forum.scolarite.debouches | +Débouchés offerts aux +normaliens (corps d'état, allocations, caïman, privé, etc.) | +
ens.forum.societe | +Questions de société qui n'ont pas de +groupe dédié. | +
ens.forum.societe.culture | +Questions culturelles, culture +populaire, idées en général. | +
ens.forum.societe.droit | +Questions juridiques en tout +genre, histoire du droit, philosophie du droit. | +
ens.forum.societe.droit.propriete-intellectuelle | +Aspects +juridiques de la propriété intellectuelle (brevets, droits d'auteurs, +marques, etc.) | +
ens.forum.societe.economie | +Discussions sur l'économie et +les systèmes économiques. | +
ens.forum.societe.education | +Questions sur l'éducation. | +
ens.forum.societe.ethique | +Questions d'ordre moral ou éthique. | +
ens.forum.societe.paperasse | +Tout ce qui touche de près +ou de loin à une démarche administrative. | +
ens.forum.societe.politique | +Tout ce qui touche à la +politique en général. | +
ens.forum.societe.politique.ecologie | +Discussions sur l'action politique dans le domaine de l'environnement. | +
ens.forum.societe.politique.francaise | +Questions de +politique française. | +
ens.forum.societe.politique.internationale | +Questions de +politique internationale. | +
ens.forum.societe.religion | +Discussions sur la religion +en général ou sur les religions. | +
ens.forum.sommaire | +Groupe spécial où l'on poste des +références à d'autres discussions, pour permettre de retrouver +celles-ci plus facilement. | +
ens.forum.syst | +Fonctionnement du système informatique +des élèves. | +
ens.forum.syst.annonces | +Annonces liées au système +informatique des élèves (groupe modéré) | +
ens.forum.syst.config | +La config conscrit (configuration +par défaut conçue par les Gourous pour les nouveaux élèves). | +
ens.forum.syst.forum | +Le fonctionnement du Forum des élèves. | +
ens.forum.syst.games | +Annonces des jeux installés,
+doléances des utilisateurs, discussions du compte games . |
+
ens.forum.syst.gourous | +Discussions à propos des +logiciels installés par les Gourous, et à propos des +Gourous eux-mêmes. | +
ens.forum.syst.infi | +La salle infirmatique, dite « infi ». | +
ens.forum.syst.jourdan | +La salle informatique de Jourdan. | +
ens.forum.syst.montrouge | +La salle informatique de Montrouge. | +
ens.forum.syst.phare | +Le serveur des archicubes. | +
ens.forum.syst.rezo | +Tout ce qui touche à l'installation +et l'utilisation du rezo +des élèves (raccordement à Internet des thurnes). | +
ens.forum.syst.salle_46 | +La salle informatique du 46 rue d'Ulm. | +
ens.forum.syst.salle_s | +La salle S. | +
ens.forum.syst.salle_s.quatra | +Le
+quatramaran (alias « 4a »), machine administrée par les élèves. |
+
ens.forum.syst.salle_t | +La salle T, réservée aux élèves +du MMFAI. | +
ens.forum.syst.tuteurs | +Tout ce qui concerne les +Tuteurs et les WinTuteurs : site Web, +stages, etc. | +
ens.forum.syst.webmaster | +Annonces concernant le serveur Web des élèves, questions +et doléances des utilisateurs, discussions des Webmasters. | +
+Internet est la mise en réseau mondiale des ordinateurs, ce qui permet +aux utilisateurs de communiquer (courrier +électronique), de publier des informations +(Web), de transférer des données (FTP), de +travailler à distance (SSH), de discuter +(messagerie instantanée comme ICQ ou MSN), etc. +
++En 1957, l'URSS est la première des deux super-puissances à envoyer un +satellite artificiel dans l'espace : c'est le fameux +Spoutnik. Traumatisés, les États-Unis forment au sein du Département +de la défense un groupe appelé ARPA ("Advanced Research Projects Agency"), constitué de +scientifiques, chargé de concevoir des innovations technologiques +appliquées à l'armée. +
+En 1962, l'US Air Force demande à un groupe de chercheurs de RAND +(de "Research ANd Development", association non +lucrative visant à développer les sciences et l'éducation aux +États-Unis) de concevoir un réseau capable résister à une frappe +nucléaire massive, afin de pouvoir riposter à son tour.
+La solution est un système décentralisé, qui permet au réseau de +continuer à fonctionner même si une ou plusieurs machines est +touchée. A contrario, un système centralisé, lui, +meurt dès que le centre est touché. L'idée de décentralisation est due +à Paul Baran. Plus précisément, c'est lui qui pensa à un système où +chaque machine, maillon d'un réseau en toile d'araignée, chercherait, +à l'aide de paquets de données dynamiques, la route la plus courte +possible d'elle-même à une autre machine, et où elle patienterait en +cas de « bouchons. »
+Le projet de Paul Baran est refusé par les militaires et ce n'est +que 6 ans plus tard qu'il se concrétise.
+En 1969, un réseau décentralisé se met en place sur commande de +l'ARPA à BBN (Bolt Beranek and Newman Inc., une SSII de +Cambridge, Mass.). Il comprend quatre grands centres universitaires +américains :
+Ces quatre centres étaient reliés par des câbles 50Kbps, et +utilisaient le NCP ("Network Control +Protocol"). C'est ce qu'on appelle l'Arpanet.
++La date conventionnelle pour la « naissance d'Internet », +c'est la date de publication de la Première RFC (« Host +Software », par S. Crocker), le 7 avril 1969. C'est ce +jour qui a été choisi pour célébrer l'anniversaire d'Internet. +
+C'est 1971 est inventé ce qu'on appellera plus tard une killer application (une application qui tue des +ours™), le courrier électronique. L'e-mail a +donc un peu plus de 30 ans ! C'est l'une des utilisations les plus +populaires d'Internet : chaque année, des milliards de courriers +électroniques sont échangés de par le monde, et plus de 100 millions +de gens possèdent une adresse électronique. +
++C'est Ray Tomlinson, de BBN, qui en est l'inventeur. À l'époque, +Tomlinson travaille sur un système permettant à un utilisateur d'une +machine de laisser un message à un autre utilisateur de la même +machine (équivalent électronique d'un Post-It sur l'écran). En même +temps, il teste un logiciel de transfert de fichiers via +l'Arpanet. C'est en réunissant les deux concepts qu'il invente le +courrier électronique. C'est également lui qui choisit l'arobase, ou +arrobe (le fameux glyphe « @ » dont l'origine reste mystérieuse) comme +séparateur pour les adresses électroniques. +
++En 1973 se développe se que l'on appellera plus tard le protocole +TCP/IP, l'une des pierres d'angle de l'Internet actuel, sous la +houlette de Vinton Cerf, de Stanford, et de Bob Kahn, de la DARPA +(nouveau nom de l'ARPA). Vous pouvez avoir quelques explications sur +ce protocole dans notre cours sur les réseaux. +
++Ce sont ces deux hommes qui, en 1974, parlèrent pour la première fois +d'« Internet ». Le protocole TCP/IP sera adopté par le Département de +la défense pour l'Arpanet en 1976. +
+
+Au début de l'Arpanet, les informations nécessaires à la connection
+des machines entre elles (conversion nom <-> adresse) sont
+contenues dans un fichier nommé hosts.txt
. Ce fichier est
+maintenu par le Network Information Center (NIC en
+abrégé) de l'Institut de recherche de Stanford. Chaque administrateur
+d'une machine reliée à l'Arpanet doit envoyer ses modifications au NIC
+qui les centralise et redistribue périodiquement le
+hosts.txt
mis à jour. Au fur et à mesure que l'Arpanet se
+développe, le système devient trop lourd à gérer : le NIC ne peut plus
+faire face à la charge réseau, et il y a des problèmes de collision
+(deux machines qui ont le même nom) qui peuvent mettre en danger le
+bon fonctionnement de l'Arpanet.
+
+En 1983, pour résoudre ce problème, un groupe constitué de Jon Postel,
+Paul Mockapetris et Craig Partrige rédige les RFC 882 et 883 : le DNS
+("Domain Name System") est inventé. C'est une base
+de données distribuée qui permet une gestion locale des noms de
+domaine, tout en rendant l'information disponible à tous. La base de
+données est divisée en zones. Pour chaque zone, un ou plusieurs
+serveurs de noms (name servers en anglais)
+répond aux requêtes des résolveurs. Les résolveurs sont des
+programmes qui communiquent entre les programmes utilisés par une
+machine et les serveurs de noms, et permettent de faire le lien entre
+nom d'une machine (clipper.ens.fr
par exemple et adresse
+IP.
+
+En 1984 se mettent en place les « top level
+domains », c'est-à-dire les suffixes comme .com
,
+.gov
, .net
ou encore .org
.
+
C'est avec la naissance du Web qu'Internet s'étend au grand +public. Soyons puristes : on fait généralement remonter la date +de naissance du World Wide Web au texte « Information +Management: A Proposal » de T. Berners-Lee : en +mars 1989. Tim Berners-Lee était alors chercheur au CERN de Genève, le +laboratoire européen de physique des particules. Il souhaitait ainsi +fournir au plus grand nombre de chercheurs possibles un système +d'information global, fondé sur le système de l'hypertexte. +
++Berners-Lee est l'inventeur du premier serveur Web, qu'il appelle +« httpd », et du premier client Web, qu'il appelle « WWW », pour World Wide Web. Parmi les noms envisagés et rejetés, il +y a avait « MOI » (pour Mine of Information, et +« TIM » (pour The Information Mine)... À l'heure +actuelle, Tim Berners-Lee travaille au MIT et dirige le W3C (« World +Wide Web Consortium »), un consortium chargé de mettre au point les +standards du Web. Vous pouvez consulter sa page +Web. +
++C'est en mars 1993 qu'est inventé Mosaic, le premier des navigateurs grand +public, doté d'une interface graphique. Son auteur est Marc +Andreessen, étudiant à l'Université de l'Illinois, et assistant au NCSA (National Center for Supercomputing Applications). La +première version de Mosaic est pour Unix, mais rapidement sortent des +versions pour Windows et Mac OS. Mosaic connaît un succès et +immédiat. Autre élément de l'importance de Mosaic dans l'histoire +d'Internet : c'est le premier navigateur a avoir reconnu la balise +IMG, autorisant ainsi l'emploi d'images sur des pages Web... +
++Marc Andreessen a continué de faire parler de lui en créant, en 1994, +Netscape, un navigateur qui supplante rapidement Mosaic +et règne en maître sur le marché des navigateurs, jusqu'en 1995, quand +Microsoft lance Windows 95 et son propre navigateur, Internet Explorer. Menacé par ce puissant +rival, Netscape, qui en est à Netscape 4, lance en 1998 le groupe +Mozilla (d'après le nom de code de Netscape Communicator). Le groupe +Mozilla est chargé de produire un navigateur libre et gratuit, que +Netscape pourrait récupérer ensuite. Mais le groupe Mozilla décide de +tout réécrire de fond en comble et tarde énormément à rendre un +produit fini. Impatient, Netscape lance alors Netscape 6, un +navigateur qui ne satisfait personne et sera un échec complet. +
++Quand le groupe Mozilla sort enfin Mozilla 1.0 en 2002, Netscape +(racheté entre temps par AOL) peut lancer Netscape 7, mais c'est déjà +trop tard, Internet Explorer détient plus de 90% du marché. En 2003, +AOL prend acte de son échec et cesse de développer Netscape. Il aide à +mettre sur pied la Mozilla +Foundation, chargée de poursuivre l'écriture de Mozilla, +permettant ainsi à une offre alternative de survivre. Aujourd'hui, +Mozilla et ses dérivés sont des navigateurs de choix pour tous ceux +qui n'utilisent pas Windows. Quant aux autres, il ne tient qu'à eux +d'essayer. +
++L'histoire récente, vous la connaissez, vous êtes dedans ! On peut +citer en 1996 le lancement d'ICQ, pionnier de la messagerie +instantanée ; ou encore l'essor considérable des chats et autres +salons de discussion ; Internet via un téléphone portable ou un +assistant personnel, ou encore l'essor du sans-fil... +
+ +
+La messagerie instantanée (« instant messenging » en
+anglais), comme son nom l'indique, est un moyen d'échanger
+instantanément des messages. L'IM a pour avantage sur le courrier
+d'être plus rapide et plus interactif. D'une certaine manière, l'IM
+est une variante de talk
, en
+plus pratique (vous savez quand votre interlocuteur est en ligne ou
+pas, s'il est occupé ou pas ; vous pouvez lui laissez un message s'il
+n'est pas là) et plus convivial.
+
+Il faut distinguer le réseau lui-même et le logiciel qui permet de +l'utiliser. Souvent, les propriétaires des réseaux entretiennent la +confusion en baptisant leur propre logiciel du nom de leur réseau. Par +exemple, le réseau de Microsoft s'appelle MSN, tandis que le logiciel +officiel s'appelle MSN Messenger. Mais vous pouvez utilisez bien +d'autres logiciels pour vous connecter à MSN, par exemple Gaim, qui est installé à +l'ENS. Voici une petite présentation des principaux réseaux. +
+AIM est le réseau d'AOL : AOL Instant Messenging. Vous n'avez pas besoin d'être un +abonné AOL pour l'utiliser, mais vous devez d'abord ouvrir un compte +sur le serveur d'AIM. +
++AIM utilise le protocole Oscar sur son réseau. C'est un protocole +fermé, ce qui veut dire qu'AOL n'a jamais publié les +spécifications d'Oscar : les logiciels tiers (comme Trillian ou Gaim) ne peuvent supporter +Oscar que par du reverse engineering, et sont à la +merci du propriétaire (AOL ici). +
+ICQ, c'est pour « I +seek you » (« je te cherche »). C'est le pionnier de la messagerie +instantanée : ICQ a été fondé en 1996 par Mirabilis, il appartient +aujourd'hui à AOL. Il faut s'inscrire sur le site d'ICQ, +c'est un numéro qui sert d'identifiant, et pas un pseudonyme. ICQ +permet non seulement d'envoyer des messages instantanés à quelqu'un, +mais aussi de « chatter », d'envoyer des fichiers
++Tout comme AIM, ICQ est un protocole fermé. À noter que depuis 2000, +le protocole utilisé est une variante d'Oscar. +
+Jabber est un réseau libre, +gratuit, géré par la Jabber Software Foundation, un organisme à but +non lucratif. Ses spécifications sont publiques, ce qui veut dire que +tout un chacun peut écrire un client Jabber 100% compatible, et qu'il +n'y a pas de risque de se voir bloquer l'accès. Une particularité est +que tout le monde peut organiser son propre réseau d'IM en montant son +propre serveur Jabber. +
++Bien que ce ne soit pas son but principal, Jabber permet aussi l'accès +aux autres grands réseaux par le biais de ce qu'on appelle des +passerelles. Toutes les explications figurent sur notre +page spécial Jabber. +
+MSN est le réseau de +Microsoft. Pour l'utiliser, vous devez d'abord obtenir un Passeport +MSN en ouvrant un compte chez +Hotmail (vous n'êtes pas obligé de l'utiliser par la suite). MSN +permet de discuter avec une ou plusieurs personnes ou encore +d'utiliser une Webcam. +
++MSN est un protocole publié. Mais l'été 2003, Microsoft a d'ailleurs +bloqué l'accès de son réseau à tous les logiciels tiers n'utilisant +pas la dernière version de son protocole, arguant de questions de +sécurité. En pratique, ça revenait à tenter de bloquer l'accès à tous +les clients MSN non officiels. +
+Yahoo! aussi possède son +réseau d'IM. Vous devez d'abord obtenir une +identité Yahoo! (Yahoo! ID). Yahoo! Messenger permet également +d'utiliser une Webcam et d'avoir accès à des salons de chat. +
++Yahoo! Messenger est également un protocole fermé, qui fin 2003 a +tenté, comme MSN, de bloquer l'accès aux logiciels tiers. +
++Il existe deux clients de messagerie instantanée à l'ENS. Il y a un +petit guide pour chacun d'entre eux, cliquer sur le nom du logiciel +pour en savoir plus. +
+Dans cette partie, nous parlerons de tout ce qui touche à Internet +et aux réseaux : Web, courrier +électronique, forum, connexion à distance, etc.
+Internet est la mise en réseau mondiale des ordinateurs, ce qui +permet aux utilisateurs de communiquer (courrier électronique), de +publier des informations (Web), de transférer des données (FTP), de +travailler à distance (telnet et ssh), etc... Ne confondez donc pas +« Internet » avec un logiciel donné (comme Mozilla), ou même +simplement avec le Web ! Le Web n'est qu'un des aspects de +l'Internet...
+Tous les ordinateurs des salles infos sont raccordées directement à +l'Internet : ils sont membres du réseau à part entière et 24 heures +sur 24. Le simple fait de suivre ce +lien vous amène au serveur Web officiel de l'ENS, d'où vous pouvez +commencer votre exploration. Vous trouverez ci-après des introductions +à différentes facettes de l'Internet : Web, courrier électronique, news, IRC, messagerie instantanée, etc. +
++On réunit ici des généralités sur le réseau, son fonctionnement, ses usages, +les questions qui s'y posent...
++Ces pages vous apprendront à vous servir du courrier électronique au +quotidien, aussi bien dans ses principes, que dans l'utilisation des logiciels +ou les règles de savoir-vivre. Il y a principalement deux logiciels pour lire +le courrier : pine (par défaut) et mutt. +
+procmail
+ +Le Web (World Wide Web, aussi appelé la Toile) est un +réseau d'informations reliées les unes aux autres par des liens +hypertexte : quand on clique sur un lien, on se «déplace» vers une +autre information, qui la plupart du temps se trouve sur un autre +ordinateur, voire dans un autre pays. Ces informations peuvent être du +texte, des images, de la musique... +
++On utilise pour cela des logiciels appelés « navigateurs » (ou encore +« brouteurs », ou « browsers, en anglais). Il en existe +de nombreux. Les plus connus sont Internet +Explorer, Mozilla, +Konqueror, +Firefox +et Opera. +
+
+Internet permet diverses formes de conversation, différées et privées
+(courrier électronique), immédiates et privées (talk
),
+différées et publiques (news), immédiates et publiques, qui sont les
+plus courues (IRC, messagerie instantanée, des chats
+divers, etc).
+
fr.*
+Un autre aspect d'Internet, et un des plus anciens, est le fait de se +connecter à distance d'une machine à l'autre. Quand on est en local, +on appelle ça un « intranet » ; on entend aussi parler de +« groupware », « netware », « extranet »... Nous, on dit le réseau... +
++IRC (de l'anglais Internet Relay Chat, qui se traduirait en +« Discussion Relayée sur Internet ») est un système de messagerie en +temps réel sur Internet. Des dizaines de milliers d'utilisateurs partout dans +le monde y sont connectés à tout moment, occupés à discuter dans des groupes +qu'on appelle des channels. +
+L'ENS dispose d'un réseau IRC local (séparé du reste du réseau +IRC).
+Vous pouvez utiliser Thunderbird qui devrait être pré-configuré, ou en suivant la procédure décrite ci-dessous si ce n'est pas le cas.
+
+Vous pouvez aussi vous connecter directement au channel par défaut
+(#causeries
) du serveur IRC avec la commande empathy-irc
. Celle-ci
+lance le client Empathy avec la
+configuration qu'il faut.
+
+Vous pouvez également vous connecter au channel par défaut depuis
+l'extérieur de l'école en ouvrant une session ssh vers
+ sas.eleves.ens.fr et en lançant la commande irc
. Celle-ci lance le
+client irssi avec la configuration qu'il faut. Pour quitter, faites Control-a
, puis appuyez sur la touche d
.
+La commande irc
utilise la commande screen pour que vous restiez
+connecté sur le canal en permanence et puissiez consulter les discussions qui
+ont eu lieu en votre absence (le backlog). Attention, si sas.eleves.ens.fr
+redémarre, vous serez déconnecté (vous serez reconnecté à la prochaine
+utilisation d'irc
). La commande screen permet d'ouvrir plusieurs
+terminaux dans une même console et de détacher ces terminaux pour les reprendre
+ultérieurement. Ainsi, vous pouvez fermer votre session SSH en
+laissant tourner irssi et le récupérer à la connexion suivante. La commande
+Control-a
puis d
utilisée pour quitter est justement la commande pour détacher le
+screen
, et le laisser pour le reprendre plus tard.
+
+Pour vous connecter au réseau IRC de l'ENS, il y a plusieurs +possibilités : +
++IRC est un service de messages sur Internet. Sa principale différence avec +des services comme le +courrier électronique ou les news + de Usenet est que les conversations sur IRC se déroulent en temps +réel. Vous envoyez un message, quelqu'un vous répond, et ainsi de suite, +vous conversez avec d'autres utilisateurs. En ce sens, son fonctionnement +ressemble à une conférence téléphonique : les messages ne sont pas +sauvegardés après leur transmission (comme dans le +talk). +
++Sur un réseau IRC (et il y en a plusieurs) il y a le plus souvent quelques +dizaines de milliers d'utilisateurs simultanés. (Sur celui de l'ENS, +évidemment, il y a moins de monde.) Chacun s'identifie par un surnom ou +nickname ; vous choisissez votre nickname quand vous vous +connectez à IRC, celui-ci sera refusé (et le système vous en demandera un autre) +si quelqu'un d'autre est déjà en train d'utiliser le même. +
++Les conversations sur IRC se déroulent dans des groupes nommés +channels, le principe étant que, quand vous rentrez dans un channel, +vous voyez la discussion qui y a lieu, et vous pouvez y participer. Il est +également possible d'envoyer des messages privés à destination d'un autre +utilisateur, indépendamment de tout channel. +
++ Tous les messages publiés dans un channel sont visibles par tous les + utilisateurs ayant rejoint ce channel. Par contre, les messages privés ne sont +visibles que par le destinataire, comme leur nom l'indique. +
++Il existe plusieurs réseaux IRC indépendants; chaque réseau se compose d'un +certain nombre de serveurs connectés entre eux. Les nicknames et les channels +sont globaux sur chaque réseau : vous n'avez pas besoin d'être connectés +au même serveur IRC pour discuter avec quelqu'un, il vous faut juste être sur +le même réseau. +
++Des réseaux IRC importants sont : +
++Libre à vous de visiter les sites webs de chacun de ces réseaux pour avoir +toutes les informations pour vous y connecter. +
+
+À l'École, pour différentes considérations de sécurité, l'accès à la
+plupart des réseaux IRC est bloqué. Il a existé à l'école un serveur IRC sur le
+quatramaran, mais il n'est plus en ligne. La commande qui -too irc
+permettait de savoir à peu près qui était connecté dessus. Il existe à présent un serveur IRC sur clipper, voir la section correspondante.
+
Thunderbird intègre un client de messagerie instantanée, qui gère IRC (mais aussi XMPP, Facebook, Twitter et Google Talk) et vous permettra donc de vous connecter sur le serveur de l'ENS. Pour commencer, ouvrez les comptes de messagerie instantanée, dans Outils → État de messagerie instantanée → Afficher les comptes.
++ +
+Dans la fenêtre qui s'ouvre, choisissez d'ajouter un nouveau compte "IRC".
+Dans le champ "Nom d'utilisateur", renseignez le surnom de votre choix, qui sera votre nickname sur IRC. Dans le serveur, renseignez un des serveurs listés dans la section "Avec votre propre client" de cette page (si le serveur n'est pas sur le port 6667, il faudra configurer le port à la dernière étape de l'assistant).
++ +
+Sur l'écran suivant, laissez le champ "mot de passe" vide. Ce champ "mot de passe" est utile si vous avez enregistré votre surnom sur le serveur, avec NickServ.
+Sur l'écran suivant, vous pouvez renseigner un "alias local" pour ce compte, qui vous sert à lui attribuer un nom sur votre ordinateur pour l'identifier facilement. En déroulant les "Options IRC", vous aurez accès aux réglages avancés pour la connexion, tel que le port (à modifier si différent de 6667).
++ +
+Une fois connecté, votre compte devrait s'afficher avec une icône verte. Vous pourrez alors utiliser le menu Outils → Rejoindre une discussion pour rejoindre un channel. Par exemple, vous pouvez utiliser ce menu pour rejoindre le channel par défaut #causeries
sur le serveur IRC de l'ENS, et éventuellement choisir de le rejoindre automatiquement à chaque connexion.
+ + +
+Finalement, en cliquant sur l'icône "Chat", vous ouvrirez la fenêtre de chat listant les channels que vous avez rejoints sur la gauche, les utilisateurs présents dans le channel sur la droite, les derniers messages au centre et une zone pour rédiger un message en bas. Pour démarrer une query (conversation privée) avec un utilisateur, il vous suffit de double-cliquer sur son nom. Vous pouvez également utiliser les commandes IRC courantes dans la zone de texte (utilisez /help
pour avoir une liste des commandes disponibles).
+ +
+Irssi est le programme lancé dans un screen
quand vous lancer la commande irc
sur une machine de l'école. Vous pouvez utiliser les commandes /connect
et /disconnect
pour vous connecter et vous déconnectez. La commande /server
permet d'ajouter et de modifier les serveurs. Pour plus de détails sur une commande, vous pouvez utiliser /help commande
. Lorsque vous lancez la commande irc
, vous devriez déjà être automatiquement connecté au serveur IRC de l'ENS. Si vous avez plusieurs connexions actives, vous pouvez défiler entre les connexions avec Control+X
.
Une fois connecté, vous devriez avoir envie de rejoindre un channel. Pour cela, il vous suffit d'utiliser /join #channel
.
Irssi fonctionne avec plusieurs fenêtres. Par défaut, chaque channel est ouvert dans une nouvelle fenêtre. Vous pouvez vous déplacer entre les différentes fenêtres ouvertes en utilisant Alt+[0-9]
. ou avec /window number
. Vous pouvez fermer une fenêtre avec /window close
.
Enfin, vous pouvez parler en privé avec un utilisateur (query). Pour commencer une query avec un utilisateur, utilisez /q surnom
ou /query surnom
.
Si vous quittez mal votre session screen
avec irssi
ouvert à l'intérieur, il se peut que l'écran soit bloqué à votre retour. Pour résoudre ce problème, il suffit en général d'utiliser Control-q
ou Control-a
puis q
.
Irssi possède de nombreuses fonctions avancées, non détaillées dans cette introduction, notamment la possibilité de l'étendre par des plugins en Perl. Pour découvrir ces fonctions avancées, vous pouvez regarder ce guide de référence (en anglais).
++Voici quelques commandes courantes d'IRC. Les majuscules ne sont pas +nécessaires. +
+
+ /HELP
+ |
+ demande de l'aide au programme IRC. Il vous présentera une liste + de sujets possibles. | +
---|---|
+ /NICK un-surnom
+ |
+ vous permet de changer de surnom ; le nouveau nom sera refusé si +quelqu'un d'autre est déjà en train de l'utiliser, ou s'il est trop long +(la limite est à 9 lettres). Il ne peut pas contenir de caractère spécial +ou accentué. | +
+ /JOIN #nom-de-channel
+ |
+ vous permet de rentrer dans un channel. Tous les noms de
+channel commencent par le caractère # . Si vous
+demandez à rentrer dans un channel qui n'existe pas, il sera créé
+pour vous. De même, un channel disparaît au moment où son dernier
+utilisateur le quitte. |
+
+ /PART #nom-de-channel
+ |
+ sert à quitter un channel. Si vous ne précisez pas de nom de +channel, c'est celui qui est actuellement affiché que vous +quittez. | +
+ /MSG Surnom texte
+ |
+ envoie un message destiné uniquement à une personne ; mettez
+son surnom à la place de Surnom sur la ligne
+précédente. Si vous recevez vous-même un tel message, un nouvel onglet
+s'ouvrira pour la conversation privée avec son auteur. |
+
+ /QUERY Surnom
+ |
+ Ouvre un nouvel onglet pour démarrer une conversation privée avec
+ l'utilisateur Surnom (même chose que /msg , sans
+ envoyer de message immédiatement).
+ |
+
+ /INVITE Surnom #channel
+ |
+ invite une personne dans un channel. | +
+ /LIST
+ |
+ permet d'avoir une liste de tous les channels. Il est déconseillé +d'utiliser cette commande sur les grands serveurs, parce-que la liste +occupe des milliers de lignes et prend longtemps à arriver (aucun problème +en revanche sur le serveur interne à l'École). | +
+ /NAMES
+ |
+ permet d'avoir la liste de toutes les personnes connectées dans le + channel courant. | +
+ /WHOIS Surnom
+ |
+ permet d'avoir plus d'informations sur la personne désignée par le
+ nickname Surnom . En particulier, il est possible
+ d'avoir son nom complet, si disponible, son statut (absent ou pas), les
+ autres channels sur lesquels il est présent, etc. |
+
+ /AWAY Raison
+ |
+ permet d'indiquer qu'on est absent. Vous devez préciser un texte
+ (Raison ), qui sera notamment indiqué aux autres
+ utilisateurs qui souhaiteraient commencer une conversation privée avec
+ vous, afin de les prévenir de votre absence. Votre statut d'absence est
+ visible par les autres utilisateurs en utilisant la commande
+ whois votre-nickname . Pour indiquer que vous n'êtes plus
+ absent, il suffit d'utiliser /AWAY (sans raison
+ indiquée). |
+
+Si du texte apparaît dans un onglet qui n'est pas affiché, le nom de cet +onglet s'affiche en rouge, pour attirer votre attention. Si en plus le +nouveau texte parle de vous (sur la base de votre surnom), la couleur bleue +sera utilisée. +
++En un mot : discuter. Les autres ne voient de vous que ce que vous +tapez. Ils sont aussi probablement déjà en train de parler à d'autres +personnes à la fois, n'espérez donc pas avoir leur attention complète. +
++Quand vous rentrez sur un channel public, et surtout s'il y a déjà +quelques dizaines d'utilisateurs dessus, vous verrez que le texte défile +très vite. Voici un extrait typique de la conversation sur un +channel : +
++*** Signoff: Bebile (EOF From client) +<Telemak> il y a que des CAVES ici ! +*** Pilah has left channel #france +*** ombre (eymartin@sc-2.salles.entpe.fr) has joined channel #france +<steph> telemak:pardon? +<Luc> zak: oui tout pres de Frankfort +<zak2> luc: ah ok et c'est comment en allemagne +*** visiteur1 (webbar@lisbonne-story.webbar.fr) has joined channel #france +<Luc> zak: et toi ou est-tu en ce moment +<zak2> luc: paris +*** |AsSaiL| has left channel #france +*** TtouKC (oeil@toulouse2-2.hol.fr) has joined channel #france +<PEEPOO> KC: t etais ou? +<visiteur3> bonsoir ++
+Les leçons à en tirer sont simples mais importantes : premièrement, il
+est très courant de s'adresser à quelqu'un dans un channel en commençant la
+phrase par «son_surnom:
» (penser à utiliser l'autocompletion avec
+la touche TAB
:). Ceci permet d'avoir plusieurs
+conversations en cours dans un channel, et de s'y retrouver. Le corollaire de
+tout cela étant que l'on apprend très vite à ne pas tenir compte des lignes
+adressées à d'autres, ni des lignes qui annoncent qui rentre et qui sort du
+channel. De plus, lorsqu'un message commence par votre_surnom:
, la
+ligne est automatiquement surlignée par votre client IRC pour que vous puissiez
+la repérer plus facilement (et il est possible de dédier une fenêtre
+particulière, appelée "hilight window" pour centraliser tous les messages qui
+vous sont ainsi adressés).
+
+Soyez raisonnablement poli, et ne passez pas tout votre temps à tenter de +draguer sans subtilité tout ce qui bouge : c'est la meilleure façon de se +faire kicker (c'est-à-dire, de vous faire éjecter du channel +par un opérateur) ! +
+Enfin, il n'y a pas toujours du monde sur un channel. Si vous n'avez pas +immédiatement de réponse, attendez un peu, que les utilisateurs aient le +temps de voir votre message (ce qui peut prendre potentiellement quelques +heures sur des chans peu actifs).
++ Les channels, tout comme les utilisateurs, peuvent être dans plusieurs modes. +Chaque mode est noté par une lettre, généralement l'initiale du nom du mode en +question. +
++ Sur les channels, les modes servent à deux choses : +
+LIST
, ni dans la liste des channels renvoyée par
+WHOIS
./INVITE
ont le droit d'y rentrer.+ Si vous êtes opérateur sur un channel, vous pouvez changer ses modes en +utilisant les boutons en haut de l'écran (si vous n'êtes pas opérateur, ces +boutons ne vous servent qu'à connaître les modes). Voyons ces boutons (ceux +qui sont à droite de la barre blanche) +
+
+On peut utiliser la commande /MODE
pour changer le mode d'un
+channel sans utiliser la souris. On ajoute
++lettre
ou -lettre
selon si on veut
+activer ou désactiver le mode en question, et on précise éventuellement le
+paramètre après.
+
+Un channel a aussi un sujet, ou topic qu'on change en modifiant
+dans la barre blanche en haut, ou en utilisant la commande
+/TOPIC
. Le sujet apparaît à côté du nom du channel
+en réponse à la commande /LIST
.
+
+Les utilisateurs eux-mêmes peuvent aussi avoir des modes. Le seul qui soit
+utile est le mode +i
ou invisible. Et encore, cette
+«invisibilité» est très restreinte : elle vous empêche juste d'apparaître
+dans la liste donnée par une commande WHO
à quelqu'un qui ne
+serait pas dans le même channel que vous.
+
+Vous pouvez mettre ou enlever ce mode avec les commandes /UMODE
++i
et /UMODE -i
respectivement.
+
Le protocole IRC ne vous permet pas d'enregistrer votre surnom. Cela veut dire que tant que vous êtes connecté, votre surnom est utilisé et personne d'autre ne peut l'utiliser. Mais dès que vous vous déconnecterez, d'autres personnes peuvent réutiliser votre surnom, et se faire potentiellement passer pour vous. Pour résoudre ce problème, il existe une solution à base de bot (un programme se connectant à IRC comme vous, mais qui reste toujours connecté) qui vous permet d'enregistrer votre surnom pour que seul vous puissiez l'utiliser. Ce programme s'appelle NickServ.
+Pour commencer, connectez vous sur un serveur IRC et choisissez un surnom libre. Ensuite, il vous suffit d'enregistrer votre surnom en utilisant la commande /msg nickserv REGISTER mot_de_passe email
en remplaçant mot_de_passe
par un mot de passe de votre choix et email
par votre adresse email (selon les serveurs IRC, l'email peut être facultatif).
Dorénavant, chaque fois que quelqu'un arrivera sur le serveur et voudra utiliser votre surnom (vous y compris), il aura un message de NickServ l'avertissant que ce surnom est réservé et qu'il a 3 minutes pour indiquer le bon mot de passe à NickServ, sous peine de voir son surnom modifié de force.
+Vous devrez alors indiquer à NickServ votre mot de passe à chaque connexion, grâce à la commande /msg nickserv IDENTIFY mot_de_passe
où mot_de_passe
est le mot de passe que vous aviez choisi.
Si vous êtes le premier utilisateur à rejoindre un channel, le channel sera créé et vous aurez les droits opérateurs sur ce channel. Si par la suite d'autres utilisateurs rejoignent le channel, ils auront le statut d'utilisateurs normaux. Dès lors, si vous quittez le channel pour n'importe quel motif (déconnexion fortuite par exemple), le channel existera toujours mais n'aura plus aucun opérateur, ce statut ne pouvant vous être réattribué. ChanServ est un bot qui rejoindra votre channel, aura les droits opérateurs et restera toujours dans votre channel pour vous permettre de pouvoir retrouver vos droits opérateurs.
+Pour pouvoir enregistrer un channel, il faut:
+Pour enregistrer un channel, utilisez la commande /msg chanserv REGISTER #channel mot_de_passe description
où #channel
est le channel, mot_de_passe
est un mot de passe de votre choix et description
est une description pour votre channel..
Pour vous identifier ensuite, à la reconnexion par exemple, utilisez la commande /msg chanserv IDENTIFY #channel mot_de_passe
où #channel
est le channel sur lequel vous voulez vous identifier et mot_de_passe
est le mot de passe que vous avez choisi.
+Cette page est initialement due à Roger Espel Llima, +également connu sous le surnom de APO, hacker et IRCiste émérite. +
+ +Jabber est une architecture +d'échange d'information basée sur XML. Il permet à deux individus +connectés à Internet d'échanger des messages et d'autres informations +structurées. L'application majeure de Jabber est la messagerie instantanée de type ICQ, MSN, etc. Mais Jabber offre beaucoup d'avantages +par rapport à ses concurrents plus connus : +
++Sur les machines de l'ENS, deux clients Jabber sont installés. Un +guide d'utilisation est disponible pour chacun d'entre eux. +
++Sinon, vous pouvez choisir dans la liste de clients proposée par +Jabber. Il y en a aussi bien pour Windows que +pour +Unix/Linux, Mac OS +et bien d'autres +plate-formes. +
+
+Vous devez d'abord choisir un serveur pour pouvoir créer un
+compte. Une liste des
+serveurs est disponible sur le site de Jabber. Si vous ne savez
+pas comment choisir, votre serveur par défaut sera
+jabber.org
.
+
+Une particularité de Jabber est que vous n'avez pas besoin de vous
+inscrire en ligne. Lancez votre client Jabber puis, lors de
+l'écran de login, choisissez directement votre identifiant, le
+JID, et votre mot
+de passe. Exemple avec Tkabber, on essaie de créer un compte avec
+« supertuteur » comme JID, un mot de passe, et le serveur
+jabber.org
:
+
+Si votre JID est déjà pris par quelqu'un d'autre, vous aurez un +message d'erreur et il vous faudra recommencer jusqu'à en trouver un +de disponible. Quelques règles à savoir : +
+
+Pour tester si tout se passe bien, vous pouvez envoyer un message de
+test. Avec Tkabber, cliquez sur Services > Send
+message
; avec Gaim, c'est Buddies > New Instant
+Message
. Indiquez ensuite jabber.org/echo
comme
+JID. Mettez ce que vous voulez en sujet et dans le corps du message,
+puis cliquez sur Send
. Si vous recevez tout de suite
+votre message, c'est bon !
+
+Vous pouvez rejoindre des salons de chat sur Jabber, non seulement sur +le serveur sur lequel vous êtes inscrit, mais sur tous les serveurs +Jabber. +
+Services > Joing
+Group
. Il vous suffira ensuite de remplir les champs de la
+boîte « Join Room »Buddies > Join a Chat
(ou
+Ctrl+C
) puis remplissez ensuite les renseignements
+demandés.+Jabber peut vous permettre de discuter avec des gens qui sont inscrits +sur d'autres protocoles comme MSN, ICQ, Yahoo!, AIM, etc. Il +suffit d'utiliser une passerelle (gateway +en anglais ou transport) associée à un serveur. +
+
+Tous les serveurs Jabber ne possèdent pas de passerelle (par exemple
+jabber.org
, le serveur principal, n'en a pas). Pour en
+trouver un qui en ait une, cherchez dans la liste des serveurs
+Jabber. On vous y indique quel serveur fait tourner quelle
+passerelle. Vous y trouverez que, par exemple,
+jabber.kelkoo.net
possède des passerelles pour AIM, ICQ,
+MSN et Yahoo! Messenger.
+
jabber.org
et utiliser une
+passerelle de jabber.cz
, par exemple.
+
+Pour vérifier tout ce que propose un serveur précis, il faut utiliser
+le Jabber Browser. Dans Tkabber, cliquez sur Services >
+Browser
. Indiquez ensuite dans la case JID
le nom
+du serveur. Par exemple, avec jabber.kelkoo.net
:
+
+Vous voyez donc la liste des passerelles proposées par ce
+serveur. Sélectionnez la passerelle qui vous souhaitez utiliser, puis
+double-cliquez sur la ligne Register jabber:iq:register
+qui correspond. Par exemple, dans la capture d'écran ci-dessus, on a
+sélectionné la ligne Register
pour MSN.
+
+Remplissez alors les champs en indiquant les coordonnées de votre +compte correspondant (vos identifiants MSN si vous utilisez la +passerelle MSN, vos identifiants ICQ si vous utilisez la passerelle +ICQ, etc.). +
++Vous vous retrouverez connecté sur l'autre réseau, avec votre list de +buddies, etc. Vous pouvez discuter avec eux comme si vous étiez +connecté directement. +
+ +
+Le FTP (pour File Transfer Protocol, protocole de transfert de
+fichiers) est un service Internet utilisé pour transférer des fichiers d'une
+machine vers une autre. FTP
a deux usages :
+
+Les programmes ftp
et ncftp
sur les machines Unix
+sont adaptés à ces deux usages. On parlera ici de ncftp
car
+c'est le plus pratique. D'autres logiciels existent, sous Unix, DOS ou
+Macintosh. Certains, comme Netscape, ne sont réellement adaptés qu'au FTP
+anonyme.
+
+Concrètement, le nom de login d'une connexion FTP anonyme est ftp
+ou anonymous
. La plupart des serveurs FTP anonymes demandent si on
+rentre ces logins l'adresse de courriers électroniques de l'utilisateur en mot
+de passe. La connexion n'est donc pas à proprement parler « anonyme ».
+
ncftp
suppose par défaut que vous cherchez à vous connecter d'une
+façon anonyme à la machine distante. Il faut lui préciser le contraire en lui
+indiquant le login de la connexion. Pour cela, tapez dans un
+terminal :
+
+ncftp -u login nom-de-la-machine ++
+en remplaçant login
par votre login sur la machine distante,
+et nom-de-la-machine
par le nom de cette machine. Par exemple, Toto
+veut se connecter à Jourdan pour récupérer des fichiers; il tape :
+
+ncftp -u toto vedette.ens.fr ++
ncftp
vous demandera alors votre mot de passe sur la machine
+distante. Une fois ceci effectué, vous êtes connecté à la machine distante (si
+votre mot de passe était correct). L'invite ressemble alors à celle d'un
+interprétateur de commande (shell), et
+vous pouvez utiliser la plupart des commandes Unix fondamentales sur les
+fichiers et les
+répertoires, comme
+ls
, cd
, rm
, mkdir
,
+rmdir
. Vous pouvez ainsi vous déplacer dans les
+répertoires distants (si vous avez le droit de le faire).
+
+Nombre de commandes existent aussi avec la lettre l
devant (ce
+qui donne lls
, lcd
, ...), ce qui signifie que ces
+commandes doivent être executées sur la machine locale. Vous pouvez ainsi
+vous déplacer à la fois sur la machine distante et la machine locale. Pour
+faire des transferts, deux commandes existent principalement :
+
get
permet de ramener un fichier de la machine distance vers la
+machine locale. Vous pouvez mettre plusieurs noms de fichiers à la suite
+pour ramener plusieurs fichiers. Si vous voulez ramener un fichier tout en
+changeant son nom, utilisez l'option -z :
+
+get -z fichier-distant nom-du-fichier-local ++
put
permet de copier un fichier de la machine locale vers la
+machine distante. Elle s'utilise exactement comme get
.
+
+Des problèmes peuvent apparaitre si vous faites des transferts entre machine
+utilisant des systèmes d'exploitation différents (comme
+Unix et Windows). En particulier, les passages à la ligne ne sont pas codés
+pareil sous ces deux systèmes d'exploitation. Par défaut, ncftp
+ne modifie pas les fichiers transférés, et un fichier texte ramené sous Unix
+depuis Windows pourra présenter des « ^M » à la fin de chaque ligne
+(tandis qu'un fichier texte transféré dans l'autre sens ne fera pas le
+retour chariot à la fin des lignes). Deux commandes, à taper avant la
+commande de transfert, servent à modifier cela :
+
ascii
précise à ncftp
de faire la
+conversion.bin
avant de faire le transfert.
+Pour quitter ncftp
, utilisez la commande quit
. On
+vous demandera alors si vous voulez garder la machine dans les marque-page,
+éventuellement avec le mot de passe.
+
+Il n'y a pas de réelle différence entre une connexion anonyme ou non anonyme,
+si ce n'est qu'il n'est pas nécessaire d'utiliser l'option -u
.
+ncftp
se charge de donner anomymous
comme login,
+et votre adresse de courier électronique comme mot de passe. Vous pouvez
+alors utiliser les commandes exactement comme dans une connexion non
+anonyme. Notez que vous n'aurez que rarement l'occasion d'utiliser des
+commandes qui modifient le contenu du disque de la machine distante
+(rm
, put
, mkdir
...), mais cela peut
+arriver.
+
+Il est possible de passer en ligne de commande de ncftp
une URL
+de la forme
+ftp://machine/chemin-de-repertoires/
.
+ncftp
se charge alors d'arriver directement dans le répertoire
+considéré s'il existe. Un telle URL peut aussi être utilisée avec Netscape
+(à la place de l'URL des pages Web).
+
+N'ont été décrites que les commandes de base de ncftp
, qui est un
+outil puissant. Consultez le manuel de
+ncftp
pour plus de détails.
+
ftp.jussieu.fr
contient une quantité de logiciels telle qu'il est
+illusoire de tous les détailler ici. En vrac, on y trouve plusieurs
+distributions à jour de Linux, de nombreux utilitaires Unix libres, des
+distributions de TeX et LaTeX (installables sous Windows ou Macintosh), etc...
+Nombre de logiciels installés chez gourous viennent de ce site.
+ftp.funet.fi
contient de nombreux miroirs d'autres sites
+(c'est-à-dire qu'il recopie régulièrement d'autres sites pour que leur contenu
+soit plus facilement accessible), ce qui le rend très utile pour les
+utilisateurs européens (ce site est en Finlande) pour qui les connexions avec
+les sites américains est lente.
+
+Afin de faciliter les recherches entre les différents sites FTP, un logiciel
+nommé archie
(ou xarchie
) existe. Son usage est
+toutefois assez malaisé. Une bonne méthode est de demander autour de soi
+si quelqu'un ne sait pas où trouver ce que vous cherchez.
+
+La machine distante d'une connexion FTP (le serveur) est presque toujours une +machine sous Unix. Mais la machine locale (le client) peut être sous Macintosh +ou Windows : +
+
+Le programme lancé depuis une fenêtre de commande DOS s'appelle
+ftp
et s'utilise un peu comme ncftp
(en moins
+bien).
+
+Le programme s'appelle Fetch. Vous en trouverez une présentation dans les +cours de +l'informatique littéraire. +
++Ces programmes vous permettent une connexion non anonyme, ce que Netscape fait +difficilement. +
+ +L'un des plus anciens aspects de l'Internet, c'est la connexion à +distance d'une machine à l'autre. En pratique, la connexion à distance +vous permet de lire votre mail sur clipper, et de manière générale +utiliser votre compte à l'ENS, alors que vous n'êtes pas physiquement +dans une salle informatique.
+
+ SSH est un logiciel (et un protocole) permettant de se connecter à un ordinateur distant de façon sécurisée. Il vous permet en particulier d'ouvrir un shell à distance sur les machines des salles informatiques de l'ENS, et sur la machine sas
. (Le serveur des élèves, clipper, n'est pas accessible par SSH pour des raissons de sécurité.)
+
trolle.ens.fr
sera utilisée pour les démonstrations. Sachez que vous pouvez vous connecter de la même façon sur n'importe quelle machine des salles informatiques (le nom de la machine étant marqué dessus). Vous pouvez également vous connecter sur sas.eleves.ens.fr
qui remplace l'ancien accès à clipper
mais cette machine n'étant pas physique, il est conseillé de se connecter sur une des machines des salles informatiques pour effectuer des tâches gourmandes en ressources.
+
+L'utilisation de ssh
pour se connecter à une machine est
+extrêmement simple.
+
machineloc
. La machine distante,
+c'est celle à laquelle vous voulez vous connecter. Dans ce tutorial,
+on l'appelle machinedist
. Par exemple, si vous êtes dans
+votre thurne et que vous voulez vous connecter à une machine de l'ENS (trolle.ens.fr
),
+la machine locale est votre propre ordinateur, la machine distante est
+trolle.ens.fr
.
+machineloc ~ $ ssh
login@machinedist
+
+ +On peut aussi utiliser la syntaxe équivalente : +
+machineloc ~ $ ssh machinedist -l login
+
+
+Pour indiquer la machine à distance, vous pouvez utiliser aussi bien
+le nom de la machine (sas.eleves.ens.fr
,
+horus.ens.fr
, etc.) que son adresse IP (pour sas.eleves,
+129.199.129.11
).
+
Si vous avez le même login sur les deux machines en question, ce +n'est pas la peine de le mentionner, tapez simplement : +
+machineloc ~ $ ssh machinedist
+
+
+Si c'est la première fois que vous vous connectez par ssh
+sur cette machine, vous verrez un message tel que celui-ci :
+
machineloc ~ $ ssh toto@machinedist
+The authenticity of host 'machinedist' (111.222.333.4)' can't be established.
+RSA1 key fingerprint is 1z:2y:3x:4w:56:78:98:78:ab:cd:ef:01:23:45:67:89.
+Are you sure you want to continue connecting (yes/no)?
+
+
+Ne paniquez pas ! Tout est parfaitement normal, on vérifie qu'il
+s'agit de la bonne machine. Il suffit de répondre 'yes' pour
+continuer (si vous êtes sûr de votre connexion). ssh
vous dira alors :
+
Warning: Permanently added 'machinedist,111.222.333.4' (RSA1) to +the list of known hosts. ++
+Ce qui signifie que ssh
ne vous embêtera plus à poser la
+question. Notez au passage le « RSA1 » entre parenthèses. Il s'agit du
+type de clé utilisée par la machine distante. Cette information peut
+vous servir par la suite pour générer une clé.
+
+La façon la plus simple de s'identifier est le mot de passe. Par
+défaut, ssh
vous le réclamera.
+
trolle.ens.fr ~ $ ssh machine.monlabo.fr
+toto@machine's password:
+
+
+Il vous suffit de taper votre mot de passe. Attention, pour des
+raisons de sécurité (un coup d'œil sur l'écran de son voisin est
+un mode de piratage basique mais efficace) celui n'apparaître pas à
+l'écran, vous devrez taper en aveugle. Si vous pensez avoir commis une
+erreur dans votre mot de passe, faites Ctrl+u
et retapez-le
+en entier. Si vous avez tapé correctement votre mot de passe, vous
+aurez à votre disposition un shell sur la machine distante. Sinon,
+vous lirez « Permission denied. » et il faudra
+recommencer.
+
+Une autre méthode utilise ce qu'on appelle une « clé publique »,
+c'est-à-dire un code qui vous identifie. Si vous suivez la procédure
+décrite ci-dessous, vous pourrez vous connecter par ssh
+sur une machine distante sans avoir à taper de mot de passe. De plus,
+cette méthode permet de se connecter sur plusieurs machines avec la même
+clé, ce qui peut être pratique. Enfin, utiliser une clé publique augmente
+(légèrement) la sécurité en cas de compromission du serveur : celui-ci ne peut
+pas récupérer votre mot de passe.
+
+Il existe différentes versions de SSH. Suivant le type de version
+utilisé sur la machine distante, le type de clé à générer
+diffère. Cette information vous est donnée par exemple lors de votre
+première connexion ssh
sur cette machine (voir ci-dessus). Si vous ne vous en souvenez plus,
+sachez que SSH1 utilise généralement des clés RSA1, et que SSH2 peut utiliser des clés
+RSA ou DSA. Pour connaître la version de SSH utilisée sur la machine
+distante, tapez ssh -v
sur la machine distante.
+
trolle ~ $ ssh -v
+OpenSSH_3.7.1p2, SSH protocols 1.5/2.0, OpenSSL 0.9.7c 30 Sep 2003
+Usage: ssh [options] host [command]
+<...>
+
+
+Le « SSH protocols 1.5/2.0 » vous indique qu'il s'agit d'un
+ssh
récent qui peut faire du SSH1 ou du SSH2.
+
+Pour ce faire, commencez par taper la commande ssh-keygen
+(comme key generator) sur la machine
+locale (et pas sur la machine distante).
+
machineloc ~ $ ssh-keygen
+
+
+Avec un ssh
récent, qui peut faire du SSH1 ou du SSH2, il
+faut indiquer le type de clé à générer (voir ci-dessus). Par exemple,
+pour générer une clé RSA (recommandé) :
+
machineloc ~ $ ssh-keygen -t rsa
+
+ Pour générer une clé de type DSA, il suffit d'utiliser la commande suivant à la place :
+machineloc ~ $ ssh-keygen -t dsa
+
+ Notez également qu'il est possible de spécifier la taille de la clé (en bits) avec le paramètre -b X
où X est un nombre de bits à choisir parmi (par exemple) 1024, 2048 (minimum recommandé), 4096.
+Le générateur de clés va en générer deux, une clé publique et une
+clé privée. Il va placer la clé privée (sous forme chiffrée) dans un
+endroit qui, par défaut, est $HOME/.ssh/id_rsa
pour
+SSH2 et une clé chiffrée en RSA et $HOME/.ssh/identity
pour SSH1 :
+
machineloc ~ $ ssh-keygen -t rsa
+Generating public/private rsa key pair.
+Enter file in which to save the key (/usr/home/toto/.ssh/id_rsa):
+
+ Appuyez sur Enter
pour accepter la
+localisation de la clé (il est plus simple d'accepter la localisation
+proposée). ssh-keygen
vous demande ensuite une « passphrase » (équivalent d'un mot de passe, mais sous
+forme de phrase). Cette phrase sert à fortifier la clé pour la rendre
+plus difficilement cassable. À partir de là, deux solutions :
+
ssh-agent
pour ne pas avoir à la
+retaper à chaque fois (voir plus bas). Si votre clé privée est récupérée, elle ne peut pas être utilisée sans la passphrase associée.Enter
), votre connexion sera moins sûre. N'importe qui ayant accès à votre clé privée pourra se connecter en s'identifiant à votre place.Que vous tapiez une phrase ou pas, à la fin vous verrez quelque +chose comme
++Your identification has been saved in /usr/home/toto/.ssh/id_rsa. +Your public key has been saved in /usr/home/toto/.ssh/id_rsa.pub. +The key fingerprint is: +1a:2a:3e:4a:1a:65:1c:89:10:92:9c:5c:1f:75:cc:de +toto@machineloc ++
+Si l'on récapitule, ssh-keygen
a généré deux
+clés :
$HOME/.ssh/identity
(ou
+$HOME/.ssh/id_rsa
si c'est du SSH2) et qui n'est
+accessible qu'à vous.$HOME/.ssh/id_rsa.pub
(ou
+$HOME/.ssh/identity.pub
si c'est du SSH1) et qui peut
+être lue par tout le monde.$HOME
» ? $HOME (ou ~
) est ce qu'on appelle une
+variable d'environnement, qui sert à indiquer aux programmes quel est
+votre répertoire personnel (la racine de votre compte). Faites
+echo $HOME
dans un terminal sur une machine de l'ENS
+pour savoir quel est le vôtre. Par exemple, sur les machines de l'ENS, c'est
+/users/promo/matiere/login
. Pour en savoir plus, voir
+l'article « Concept :
+arborescence » dans le n°3 du Hublot.
+Maintenant, sur la machine distante, allez dans le
+répertoire ~/.ssh
et éditez le fichier
+authorized_keys
: ajoutez à la fin, et sur
+une seule ligne (attention aux éditeurs qui coupent les
+lignes) la clé publique (identity.pub
pour SSH1 ou
+id_rsa.pub
pour SSH2) que vous venez de générer (attention,
+il faut bien ajouter la clé publique et non la clé privée !). Procédez
+ainsi pour toutes les machines distantes auxquelles vous voulez vous
+connecter sans avoir à taper votre mot de passe. Et voilà !
+
ssh-agent
+
+Si vous avez opté pour la solution « phrase de passe », bravo, votre
+connexion est plus sûre, votre clé privée ne peut pas être usurpée. Mais vous devez taper à chaque fois ladite
+phrase... ce qui est vite pénible. Solution, utiliser ssh-agent
.
+
D'abord, il faut lancer ssh-agent
, qui gère les clés
+d'identification. Si vous êtes logué dans une salle informatique de
+l'ENS avec la config conscrits, pas de problème,
+ssh-agent
est déjà lancé. Si ce n'est pas le cas, il faut
+le lancer vous-même.
+
+Comme l'agent est disponible dans tous les programmes lancés ultérieurement, +on le lance au début d'une session. Par exemple, quand vous êtes en +mode texte et que vous lancez le serveur X : +
+machineloc ~ $ ssh-agent startx
+
+ +Quand vous vous loguez à distance, c'est plutôt : +
+machinedist ~ $ exec ssh-agent $SHELL
+
+
+Une fois lancé, l'agent vous suit dans toutes vos connexions à
+distance, et ainsi il est disponible partout. Il faut donner à l'agent
+votre clé à gérer en tapant ssh-add
. On vous demande
+alors votre phrase de passe :
+
machine ~ $ ssh-add
+Need passphrase for /home/toto/.ssh/id_rsa (toto@machine)
+Enter passphrase:
+Identity added: /home/toto/.ssh/id_rsa (toto@machine)
+
+ Note : Les dernières versions des environnements de bureau sous Linux possèdent leur propre interface graphique qui sert de surcouche à ssh-agent
. Par exemple, seahorse
(ou Trousseau de clé Gnome) tient ce rôle dans Gnome. L'utilisation de ssh-agent
peut alors être facilitée, notamment car ces logiciels déverrouillent les clés SSH avec le mot de passe de login directement.
+Vous pouvez également utiliser ssh
pour exécuter une
+commande à distance. Par exemple, vous voulez, de votre machine
+personnelle, connaître l'heure sur sas.eleves, pour savoir si votre
+machine est en retard, en avance ou à l'heure.
+
machineloc ~ $ ssh sas.eleves.ens.fr date
+Fri Jul 4 12:01:49 MET DST 2003
+
+
+N'oubliez pas de préciser toto@machine
si vos logins sont
+différents entre les deux machines. Si vous voulez exécuter à distance
+une commande avec des options, mieux vaut mettre des guillemets. Par
+exemple, je peux savoir si brick
est une station Sun ou
+un PC, en utilisant la commande uname
.
+
machineloc ~ $ ssh toto@brick.ens.fr "uname -p"
+i386
+
+ +La réponse est « i386 », dénomination utilisée pour les PC. +
+Petite astuce pour IRC : Il est possible de se connecter sur IRC sur une machine de l'ENS directement avec la commande suivante (créer un alias pour plus de facilité) :
+machineloc ~ $ ssh login@trolle.ens.fr -t irc
+
+ +Il est possible que vous voyiez un jour le message d'erreur suivant : +
++@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +@ WARNING: HOST IDENTIFICATION HAS CHANGED! @ +@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ +IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! +Someone could be eavesdropping on you right now (man-in-the-middle +attack)! +It is also possible that the host key has just been changed. +Please contact your system administrator. ++
+Ce message signifie que la clé ssh (l'identification) de la machine
+distante a changé. En effet, à chaque fois que vous vous connectez à
+une machine par ssh
, celle-ci présente à votre machine
+une sorte de carte d'identité, ainsi vous êtes sûr qu'il s'agit bien
+de la bonne machine et pas d'un pirate. Ou bien la machine a
+réellement changé de clé ssh (à l'ENS, cela arrive de temps à autres
+quand le SPI upgrade une machine), ou bien c'est une attaque de
+pirate. Il vaut mieux écrire au SPI pour savoir ce qu'il en est.
+
Il y a d'autres commandes associées à ssh
qui vous
+permettent, de manière tout aussi sûre, de transférer des fichiers
+d'une machine à une autre. En l'espèce, scp
(Secure Copy) a un fonctionnement aussi simple que celui
+de ssh
.
+Les explications qui suivent sous pour les sytèmes UNIX. Pour savoir +comment faire sous Windows, reportez-vous au tutorial des WinTuteurs sur WinSCP. +
+Pour envoyer des fichiers de votre machine locale à la machine +distante, faites : +
+machineloc ~ $ scp fichier1 fichier2 fichier3 machinedist:
+
+
+Attention, n'oubliez pas les deux points à la fin. Vous
+devrez taper votre mot de passe (sauf si vous utilisez
+l'authentification par clé publique, voir ci-dessus), puis
+ssh
se lancera dans le transfert en vous indiquant sa
+progression :
+
machineloc ~ $ scp tagada.txt machinedist:
+toto@machinedist's password:
+tagada.txt 100% |***************************************| 2263 00:00
+
+ +Pour énumérer les fichiers à copier, mettez-les simplement à la suite, +séparés par une espace, sans virgule. +
+Pour transférer un répertoire entier, il faut
+utiliser l'option -r
(comme recursive),
+sinon ssh vous dira « répertoire: not a regular
+file ».
+
machineloc ~ $ scp -r répertoire machinedist:
+
+
+Dans ces premiers exemples, le(s) fichier(s) sera ou seront copié(s),
+avec le même nom sur la machine distante, à la racine de
+votre compte. Nous allons compliquer progressivement les
+choses. Maintenant, vous voulez changer le nom du fichier en cours de
+route, renommer tagada.txt
en
+coincoin.txt
:
+
machineloc ~ $ scp tagada.txt machinedist:coincoin.txt
+
+
+Maintenant, nous allons envoyer notre fichier tagada.txt
+à un endroit précis sur le compte distant, dans le répertoire
+$HOME/divers/blagues
:
+
machineloc ~ $ scp tagada.txt machinedist:divers/blagues
+
+
+ Et même vers n'importe quel répertoire (/bidule
par exemple où / est la racine de la machine) :
+
machineloc ~ $ scp tagada.txt machinedist:/bidule
+
+ Pour rapatrier des fichiers de la machine distante à votre machine +locale, la même syntaxe est utilisée, mais inversée : +
+machineloc ~ $ scp machinedist:tagada.txt .
+
+
+Le . (point) à la fin signifie que scp
devra mettre le
+fichier ici, dans le répertoire dans lequel vous vous trouvez
+actuellement. Évidemment, vous pouvez lui indiquer un autre
+répertoire :
+
machineloc ~ $ scp machinedist:tagada.txt divers
+
+ +Et ainsi de suite, vous pouvez appliquez les mêmes techniques que pour +le transfert machine locale -> machine distante, décrites ci-dessus. +
+Sous KDE (par exemple dans la config conscrits 2006 et plus), + il est possible d'accéder par ssh aux fichiers situés sur une machine + distante avec le gestionnaire de fichiers Konqueror. Pour ce faire, + tapez simplement dans la barre d'adresses de Konqueror :
+sftp://login@machinedist/répertoire/+
par exemple
+sftp://conscrit@trolle.ens.fr/users/06/maths/conscrit/+
Une boîte de dialogue apparaît si nécessaire pour + vous demander votre mot de passe. Vous pouvez ensuite copier, + déplacer, modifier les fichiers existants (et en ajouter) presque + comme s'ils étaient sur la machine locale.
+La même astuce marche depuis n'importe quelle boîte de dialogue de + gestion de fichiers de KDE, par exemple celles auxquelles font appel + les fonctions Ouvrir et Enregistrer des divers logiciels.
+La même chose est possible sous Gnome, en passant par le menu "Connexion à un serveur" du gestionnaire de fichiers Nautilus.
+ Quand on utilise beaucoup la connexion distante, il devient très
+vite fastidieux d'avoir toujours à taper en entier le nom
+trolle.ens.fr
, a fortiori son adresse IP
+129.199.129.38
. S'il n'y a pas d'ambiguïté (en l'occurrence,
+si vous n'utilisez jamais qu'un seul serveur portant le nom de trolle,
+et pas, par exemple, trolle.ens.fr et trolle.chezmoi.fr), vous pouvez
+assigner un alias à une adresse. Pour ce faire, mettez
+dans le fichier $HOME/.ssh/config
les lignes
+suivantes :
+Host trolle +User toto +HostName trolle.ens.fr ++
+(n'oubliez pas de remplacer « toto » par votre nom d'utilisateur). +
++Ainsi, il suffira de taper : +
+machineloc ~ $ ssh trolle
+
+ +au lieu de : +
+machineloc ~ $ ssh toto@trolle.ens.fr
+
+
+Cette modification s'étend également à scp
. Il vous suffit
+en effet de taper :
+
machineloc ~ $ scp tagada.txt trolle:divers/blagues
+
+ +au lieu de : +
+machineloc ~ $ scp tagada.txt toto@trolle.ens.fr:divers/blagues
+
+
+Il existe plusieurs protocoles Internet permettant de se connecter à
+un ordinateur distant : telnet
, les r-commandes
+(rlogin
, rsh
ou encore rcp
),
+ssh
(Secure Shell). Alors que
+telnet
et les r-commandes font circuler les informations
+en clair sur le réseau (voir notre documentation sur les dangers de
+telnet
), ssh
est beaucoup plus
+sûr :
+
ssh
sont chiffrées, ce qui garantit leur confidentialité
+Pour ces deux raisons, nous vous conseillons vivement
+d'abandonner telnet
et
+rlogin
pour adopter ssh
. Le
+piratage, ça n'existe pas que dans les films. Vous pensez peut-être
+que rien sur votre compte n'intéresse un pirate, et que donc il n'est
+pas utile de prendre vos précautions. Vous avez tort à deux
+titres : le pirate peut se servir de votre compte pour attaquer
+une autre machine... Bonne chance alors pour convaincre la DST que ce
+n'était pas vous. Ensuite, en vous exposant au danger, vous mettez
+ensuite en danger les autres utilisateurs de l'ENS. Alors soyez
+responsables.
+
+ Certains sites Internet ne sont accessibles que depuis certains + ordinateurs, serveurs ou domaines très précis. Par exemple, pour accéder + à certains articles de revues par l'abonnement de l'ENS, on doit se connecter depuis + l'un des ordinateurs de l'École. Cette contrainte permet d'être certain que seules les + personnes autorisées pourront accéder à certaines données, après s'être + préalablement identifiées au moyen d'un mot de passe. +
++ Mais cet avantage a un inconvénient. Si vous êtes à l'étranger, ou si + vous êtes tout simplement chez vous et ne pouvez vous rendre + physiquement devant les ordinateurs en question, ces ressources vous + sont inaccessibles... +
++ Heureusement, il existe la technique + du tunnel SSH. Celle-ci consiste à « creuser + un tunnel » entre votre connexion et un serveur autorisé pour y + faire passer les informations de manière sécurisée. En d'autres termes, + vous allez : +
++ Nous allons commencer par ouvrir le tunnel. La façon de procéder dépend + du système d'exploitation que vous utilisez. +
+Avec Linux ou tout autre dérivé d'UNIX (BSD, Solaris, Mac OS X, + etc.), la procédure est sans doute la plus simple. Suivez les étapes + suivantes pour mettre en place un tunnel SOCKS entre votre machine et la machine distante.
+toto@ordinateur $ ssh -ND 3128 monlogin@sas.eleves.ens.fr
+
+ Sur Windows 10, vous avez l'option d'activer la fonctionnalité expérimentale OpenSSH de Windows. Pour cela, allez dans "Paramètres > Applications > Gérer les fonctionnalités +facultatives > ajouter une fonctionnalité > Open SSH Client (Beta)", puis redémarrez votre ordinateur.
+Vous pouvez désormais utiliser les fonctionnalités ssh dans Windows Powershell. Les lignes de commandes indiquées pour +Linux/macOS (ssh -D 3128 monlogin@sas.eleves.ens.fr) fonctionnent de la même façon.
++ Sur les autres distributions de Windows/sans activer OpenSSH : +
+Pour ouvrir un tunnel SSH depuis Windows, vous aurez besoin + du logiciel PuTTY. Téléchargez le + programme putty.exe à + l'adresse http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html. +
+Ouvrez le programme putty.exe. +
+Remplissez les champs suivants :
+sas.eleves.ens.fr
22
SSH
ENS par tunnel
+ SSH
+
+ 3128
www-cache.ens.fr:3128
+ Vous verrez alors :
+ +Désormais, pour ouvrir le tunnel SSH, il vous suffira de + cliquer deux fois sur « ENS par tunnel SSH ». Donnez + votre + identifiant (login) et votre mot de + passe. La première fois, on vous demandera si vous acceptez + la clef SSH, afin d'éviter toute tentative d'usurper l'identité de + sas : vérifiez que le fingerprint indiqué est bien + "d2:2f:2d:e6:22:17:16:1c:54:5f:e3:9a:0b:88:db:37" et répondez « Yes ». +
+Que vous utilisiez Linux, Mac OS, Windows, FreeBSD ou autre, + vous avez maintenant ouvert le tunnel. Le signe qu'il est ouvert, + c'est la fenêtre de terminal ouverte. Attention, si vous fermez la fenêtre + de terminal, le tunnel se fermera.
+Il reste à emprunter ce tunnel. Pour cela, vous devrez configurer
+ votre navigateur pour lui dire d'utiliser
+ le proxy localhost
avec le port
+ 3128
. Nous ne pouvons pas faire l'inventaire de tous
+ les navigateurs qui existent, alors voici simplement comment faire
+ pour les principaux. Pour les autres (Konqueror, Galeon, Epiphany,
+ Mozilla, w3m...), cela ne devrait pas être très différent.
Allez dans Edit
, puis Preferences
, Advanced
, Network
et Settings
:
+ +
+Alternativement, allez dans Edit
,
+ puis Preferences
, et enfin Connexion
+ settings
:
+ +
+Si vous avez suivi la méthode pour Linux, indiquez à votre navigateur
+ que vous voulez utiliser un proxy, en cliquant sur « Manual proxy
+ configuration
», puis en
+ tapant localhost
comme proxy SOCKS,
+ et 3128
comme port :
+ +
+Allez dans Edit
,
+ puis Preferences
, Advanced
, Network
et Settings
:
+ +
+Alternativement, allez dans Edit
,
+ puis Preferences
, et enfin Connexion
+ settings
:
+ +
+Si vous avez suivi la méthode pour Windows, indiquez à votre navigateur
+ que vous voulez utiliser un
+ proxy, en cliquant sur « Manual proxy
+ configuration
», puis en
+ tapant localhost
comme proxy HTTP,
+ et 3128
comme port :
+ +
+
+ Allez dans Options
, puis cliquez sur l'onglet
+ Connections
; cliquez sur le bouton
+ « Paramètres réseau
», comme
+ indiqué sur l'image suivante :
+ +
+ Ensuite, cochez la case « Utiliser un serveur
+ proxy pour votre réseau local
», et indiquez
+ d'utiliser l'adresse localhost
avec le
+ port 3128
:
+ +
+Maintenant, le tunnel est ouvert, et votre navigateur est disposé à + l'emprunter. Demandez-lui d'aller à l'adresse + http://www.intranet.ens.fr + pour vérifier son bon fonctionnement. +
+Quand vous avez fini de consulter les sites qui nécessitent de passer +par un tunnel SSH, et à ce moment seulement, vous pouvez le +fermer. C'est comme si vous « rebouchiez » le tunnel après l'avoir +emprunté. Il suffit pour cela de :
+Voici quelques-uns des sites dont l'accès est restreint à + l'ENS :
+L'ENS profite également de certaines offres commerciales, telles que + des encyclopédies en ligne, des bases de données documentaires, + etc. Notamment, depuis + la bibliothèque + électronique de l'ENS, vous aurez accès aux ressources + d'« Accès réservé aux postes de l'ENS ».
+ ++Le mot « news » désigne en anglais à la fois le support et le contenu d'un média +d'actualité : la meilleure façon de traduire ce mot serait « les +informations », mais la connotation télévisuelle est trop forte pour que ce +terme soit approprié. La nomenclature française recommande le terme de « groupe +de discussion » pour traduire « newsgroup », ce qui est peu explicite et trop +proche de « groupe de travail ». Les utilisateurs francophones, eux, se +contentent de dire « les niouzes ». +
+
+Les news sont un service de messages de l'Internet dont le fonctionnement
+ressemble au courrier des lecteurs dans un magazine. Chacun peut poster des
+messages dans des rubriques classées par thème (appelées groupes de
+discussion ou newsgroups), ou bien répondre à d'autres articles
+déjà parus. Au bout d'un temps de diffusion de quelques heures, ces articles
+deviennent accessibles aux lecteurs du monde entier, et le restent entre une
+et trois semaines; après quoi ils sont automatiquement effacés pour laisser la
+place aux nouveaux messages. La plupart du temps, le dialogue consiste en un
+novice qui pose une question, et d'autres personnes qui répondent, ou bien des
+commentaires sur l'actualité du thème du groupe. Certains groupes proposent
+des petites annonces, d'autres diffusent des programmes ou des images,
+certains (comme fr.soc.politique
) sont en permanence le siège de
+débats houleux, etc.
+
+Il y a environ 3700 newsgroups accessibles depuis l'ENS, dont 320 en langue
+française, qui vont de fr.rec.cuisine
à
+misc.activism.progressive
, en passant par
+talk.philosophy.humanism
, rec.arts.books.tolkien
,
+bionet.photosynthesis
et
+fr.petites-annonces.emploi
: vous trouverez forcément votre
+bonheur ! Sur chacun d'eux, il arrive en moyenne une trentaine de
+nouveaux messages par jour, ce qui ne représente pas moins de 60
+méga-octets (plus de 70 fois la Bible) de
+données quotidiennes sur Usenet (c'est le nom qu'on donne à
+l'ensemble des groupes).
+
+Informatique oblige, le nom d'un newsgroup ressemble plus à une cote de
+bibliothèque qu'au nom d'un magazine : il se lit mot par mot, de gauche à
+droite, du plus général au plus précis. Les newsgroups dont le nom commence
+pareil forment une catégorie du classement, ou hiérarchie. Voici un
+rapide résumé des hiérarchies principales; il vous sera utile pour trouver les
+newsgroups qui parlent de vos centres d'intéret sans parcourir la liste des
+3700 (rassurez-vous, cela deviendra moins théorique d'ici peu !).
+Ci-dessous, lorsqu'un astérisque (*) est marquée, c'est qu'il s'agit du
+nom d'une hiérarchie : lorsque vous lisez comp.sys.*
,
+comprenez « catégorie comp point sys point n'importe quoi ».
+
biz.*
pour parler de bizness.
+comp.*
(pour computer) est la hiérarchie de Usenet
+dans laquelle on parle d'informatique. Vous l'aurez deviné, c'est la plus
+fournie; on y trouve les hiérarchies comp.binaries.*
pour la
+diffusion de logiciels, comp.sources.*
pour la diffusion de
+programmes en divers langages, comp.sys.*
pour parler de divers
+systèmes (architectures et systèmes d'exploitation) etc.
+humanities.*
est une hiérarchie (récente, donc encore peu
+fournie) pour parler de l'Homme.
+news.*
pour parler des news elles-mêmes; un groupe important
+est news.announce.newusers
, auquel vous êtes abonné
+par défaut, qui propose
+une FAQ sur l'utilisation
+des news et autres messages d'information pour les nouveaux utilisateurs.
+rec.*
pour recreation, c'est-à-dire distraction.
+C'est vaste, on y trouve les hiérarchies rec.arts.*
,
+rec.sport.*
, rec.games.*
etc.
+sci.*
pour science, depuis sci.math
+jusqu'à sci.skeptic
(!).
+soc.*
pour society.
+talk.*
pour les discussions genre « coin du feu » : de
+talk.abortion
à talk.rumors
.
+misc.*
(miscellaneous) pour le reste... Parmi eux,
+misc.misc
est le groupe où on tolère le moins le hors-sujet
+(lisez la FAQ si vous ne
+le croyez pas !)
++En marge de ces hiérarchies que le monde entier reçoit, qu'on appelle big +nine (pour les neuf préfixes principaux), on reçoit à l'ENS les +hiérarchies suivantes : +
+ens.*
contient quelques newsgroups dont la diffusion est
+restreinte à l'ENS.
+bit.*
contient des newsgroups, qui diffusent chacun
+exactement les mêmes messages qu'une liste de
+diffusion à laquelle ils sont reliés par un système informatique (une
+passerelle) qui reporte les messages reçus sur la liste dans le
+newsgroup et inversement.
+bionet.*
(biologie),eunet.*
(tentative de « Usenet
+Européen »), gnu.*
(le projet GNU ), ieee.*
(l'IEEE,
+institut de normalisation américain), k12.*
(une hiérarchie
+réservée aux universitaires, en voie de disparition), vmsnet.*
+(le réseau VMS, datant de la préhistoire de l'Internet).
+be.*
,
+can.*
, ch.*
, de.*
, es.*
,
+fr.*
, it.*
, nl.*
, no.*
,
+pt.*
, qc.*
pour respectivement et dans cet ordre, la
+Belgique, le Canada, la Suisse, l'Allemagne, l'Espagne, la France, l'Italie,
+la Hollande, la Norvège, le Portugal et le Québec.
+trn
: lecteur en
+mode texte, assez austère mais puissant.
+slrn
: lecteur convivial en mode texte, en
+couleurs. C'est le choix alternatif à Knews.
+flrn
: le lecteur de news de forum
+(forum fonctionne comme un serveur de news accessible depuis l'ENS
+seulement).
+knews
: en mode
+graphique, le lecteur
+par défaut de la config conscrits. Il est en couleurs, en français, et
+s'utilise avec la souris.
+Netscape
: voir le paragraphe suivant pour savoir ce que
+l'on en pense...
+knews
est un programme de lecture de news utilisable à la souris;
+c'est le lecteur de news par défaut de la config conscrits, il est
+partiellement traduit en français (peut-être le sera-t-il totalement un
+jour : ne perdez pas espoir !). Il faut savoir que Netscape
+est également capable de lire les news, et ce de façon plus simple, mais il a
+deux inconvénients :
+
Netscape
vous
+donnera un a priori négatif aux yeux des vieux briscards de Usenet
+(surtout francophones - souvenir du temps où Netscape
envoyait
+les accents sous une forme illisible de tout autre logiciel de news que
+lui-même).
+
+C'est un comportement stupide, certes, mais n'oubliez pas que vous n'écrivez
+pas pour vous mais pour vos lecteurs... D'un autre côté, knews
+est un logiciel puissant capable de faire du tri automatique dans les news
+pour vous éviter du temps perdu : à vous de voir.
+
+Vous aurez compris de quel côté le coeur de votre serviteur balance dans le
+dilemme de l'alinéa précédent; j'espère donc que vous ne m'en voudrez pas
+d'expédier rapidement le cas Netscape
!
+
+Pour ouvrir le module news de celui-ci (lancer communicator
),
+lancez-le et sélectionnez « Netscape News » dans le menu « Window » : une
+nouvelle fenêtre apparaît. Pour lire un newsgroup, choisissez « Add
+newsgroup... » dans le menu « File »; les messages non lus dans ce newsgroup
+apparaissent alors dans la case en haut à droite. Cliquez sur l'un d'eux et
+son contenu apparaîtra dans la case du bas. Pour poster ou répondre, utilisez
+la barre de boutons juste sous les menus.
+
+C'est très simple : c'est comme forum !
+(à ceci près que la commande à taper est flrn
, et non
+forum
).
+
+Attention : il n'y a pas de censure dans les niouzes. D'autre part, lisez +les conseils relatifs à l'écriture dans les niouzes +ci-dessous. +
+
+De même que votre lecteur de courrier électronique, knews
est
+accessible par un bouton sur la
+boîte à boutons
+de la config conscrits. Cliquez dessus, une fenêtre jaune (vide pour
+l'instant) apparaît.
+
+Pour quitter knews
, il faut cliquer sur le bouton « Quitter » en
+haut à gauche de la barre des boutons. Si à la place vous lisez « Retour »,
+c'est que vous êtes dans un groupe de discussion; cliquez sur « Retour » pour
+revenir au point de départ.
+
+Cliquez sur « Tous les groupes »; la visionneuse du haut se remplit alors d'une
+liste faramineuse de newsgroups, classés hiérarchiquement selon le principe
+exposé plus haut. Pour l'instant, sélectionnez un
+groupe francophone comme fr.rec.cuisine
en faisant défiler cette
+liste à l'aide de la souris, puis cliquez sur « S'abonner ». Cliquez alors sur
+« Retour ». Le groupe que vous avez choisi s'affiche alors dans la liste du
+haut.
+
+Contrairement à l'inscription à une liste +de diffusion, le fait de s'abonner à un newsgroup ne +vous enregistre dans les fichiers d'aucune autorité. Le logiciel de news +emploie l'expression « s'abonner » dans un sens métaphorique et se contente de +noter dans ses tablettes que vous êtes intéressé par tel groupe : il vous +les proposera en priorité à chaque fois que vous voudrez lire les news, ce qui +vous évite d'avoir à reparcourir la liste complète à chaque fois. +
++Pour lire les messages d'un groupe auquel vous êtes abonné, cliquez sur son +nom dans la liste puis cliquez sur « Lire groupe ». La liste de groupes est +alors remplacée par la liste des sujets de discussion en cours sur le groupe +choisi, précédés par le nombre de messages traitant de ce sujet. Pour des +raisons pédagogiques, je vous demande de choisir d'abord un sujet comportant +un nombre élevé de messages (au moins 5) : cliquez dessus et sélectionnez +« Voir enfilade ». +
+
+Les threads (en français,
+enfilades) sont des agrégats de messages se répondant les uns aux
+autres. knews
les présente visuellement sous forme d'un
+arbre : les messages sont représentés par des boutons (étiquetés
+par le nom de leur auteur) sur lesquels on clique pour lire le message; et
+si, par exemple, le message B répond au message A, le message B sera placé
+en retrait du A avec une ligne grise qui les relie. Le message qui a
+commencé la polémique se retrouve donc tout en haut à gauche de l'affichage;
+parfois, ce message (ou d'autres) sont déjà trop vieux et ont été effacés,
+auquel cas le bouton correspondant apparaît en pointillés.
+
+Lorsqu'une discussion traîne en longueur, il n'est pas rare que le sujet
+dérive un peu... C'est pourquoi le protocole des news prévoit qu'on puisse
+répondre à un message tout en changeant de sujet. Dans une enfilade, les
+messages ayant le même sujet constituent donc une sous-enfilade et
+knews
les repère à l'aide de lignes pointillées remplaçant les
+lignes de suivi dans l'arbre des messages; de plus, les sujets de
+sous-enfilades apparaissent en retrait dans la liste de sujets.
+
+La compréhension du mécanisme des enfilades est très utile pour reconstituer
+le fil des discussions. Je vous conseille donc de relire cette section
+plusieurs fois, et de vous entraîner quelque peu. N'oubliez pas que, comme
+pour le courrier électronique, le texte qui est
+précédé du signe « > » est la fraction de texte que, par politesse,
+l'auteur recopie depuis le message auquel il répond. knews
+colore cette partie en bleu; ainsi, en parcourant l'enfilade, vous voyez
+immédiatement les parties que vous avez déjà lues.
+
+Vous verrez de temps en temps apparaître des petits symboles de ce style dans
+les messages de courrier électronique ou de news : :-)
+
+Au début, ce signe passe souvent inaperçu surtout si il est utilisé à la place +d'une parenthèse fermante. Maintenant, posez votre joue sur votre épaule +gauche et observez attentivement ces trois petits signes de ponctuation... +
+
+Compris ? Ce petit personnage, ainsi que ses collègues :-(
+
(pas content), d:-)
(rappeur), :-{)
+(moustachu) etc. s'appellent des smileys ou emoticons. Ils
+permettent, d'une façon naïve mais efficace, de suppléer à la sécheresse du
+support électronique pour la communication humaine sans tomber dans toute la
+sophistication de la correspondance écrite traditionnelle. Il n'y a pas de
+ridicule à en faire usage :-), et cela peut vous éviter d'être mal
+compris !
+
+Si vous êtes décidé à lire tous les articles du groupe (ou même de tous +les groupes auxquels vous êtes abonné), vous pouvez vous contenter de cliquer +tout le temps sur « Suivant non lu ». Ainsi, vous ne déplacez jamais la souris, +ce qui vous permet de réduire vos fonctions métaboliques au minimum et donc de +rester plus longtemps devant l'ordinateur à perdre votre temps à lire les +news... +
+
+Vu la quantité d'information qui transite journellement sur Usenet,
+knews
estime que si vous relisez toujours tous les messages du
+groupe, vous ne vous en sortirez plus, et donc il mémorise les articles que
+vous avez lus et évite de vous les reproposer. Cependant il est parfois utile
+(typiquement sur les groupes de petites annonces) de retrouver un ancien
+message; vous pouvez donc demander à knews
de « Marquer comme non lu »
+(dans le menu « Divers ») certains des articles d'un groupe.
+
+Il est conseillé d'avoir lu et pratiqué la documentation +du courrier électronique avant de s'attaquer à la publication dans les +news, qui utilise peu ou prou les mêmes concepts mais +demande de redoubler d'attention vu l'importance de l'audience de vos +messages. C'est pourquoi les icônes « moyen » et « difficile » fleurissent ici +plus qu'ailleurs... Il est aussi fortement recommandé d'avoir consulté +Du bon usage de +Usenet, site +qui vous expliquera ce qu'est Usenet, le Savoir communiquer sur Usenet. +
++C'est une question que vous devez vous poser avant de poster... Depuis +que l'Internet s'est ouvert au grand public, les messages hors-sujet, +publicitaires, grossiers, racoleurs etc. se multiplient et font chuter ce que +les techniciens appellent le rapport signal-bruit du media. Cette forme +de pollution est très mal vue par les usagers de Usenet, elle nuit à l'utilité +que chacun peut tirer des news; néanmoins, comme personne ne filtre les +messages, la répression de ce comportement dépend uniquement de la bonne +volonté de l'émetteur... Lequel est donc prié de s'astreindre à un certain +nombre de règles de bonne conduite connues sous le nom de +Netiquette. +
++Les règles de bienséance valables pour le +courrier électronique le sont bien +évidemment à plus forte raison pour les news; de plus, il faut connaître les +points suivants : +
+fr.bienvenue
: c'est là
+qu'est postée régulièrement une série de documents dont la lecture vous
+évitera bien des déconvenues et des erreurs...
+fr.bienvenue.questions
n'est pas un endroit où poser n'importe
+quelle question : « Ce forum est le lieu où les nouveaux venus peuvent
+poser les questions que suscite leur première fréquentation des forums fr. de
+Usenet et auxquelles la lecture des textes contenus dans
+fr.bienvenue
et fr.usenet.reponses
n'aurait pas
+apporté de réponses suffisamment limpides ».
+binaries
) et même dans ce cas respectez les formats de fichiers
+exigés (ne postez pas une image BMP si le groupe exige des JPEG par exemple).
+Netscape
et knews
vous donnent la possibilité
+de répondre par courrier électronique.
+
+Je vous suggère de faire vos essais dans le groupe ens.test
+réservé à cet usage. Sélectionnez ce newsgroup par la méthode habituelle, puis
+ouvrez le menu « Message » : les quatre premières options permettent de
+composer un message, à envoyer sur les news ou par courrier électronique.
+Choisissez-en une, votre éditeur de
+texte se lance et vous pouvez composer le message, en-tête compris (vous
+pouvez modifier le sujet mais ne touchez à rien d'autre si vous ne savez pas
+ce que vous faites).
+
+Lorsque vous quittez l'éditeur de texte, une boîte de dialogue s'ouvre vous +permettant si vous le souhaitez d'attacher des documents (qui seront transmis +sous forme codée avec l'article). Pour n'en rien faire, cliquez simplement sur +« Poster ». +
+Attention : Ne vous inquiétez pas si votre article
+n'apparaît pas immédiatement dans le groupe : il faut retourner dans le
+menu principal de knews
et cliquer sur « Recharger ». Ne
+réémettez pas votre message, il apparaîtrait en double !
+
Usenet-fr est un ensemble de serveurs privés, administrés par des +newsmasters (ou noumestres) ouverts au public, qui +relaient les articles postés dans la hiérarchie fr.
+Usenet-fr désigne par extension l'ensemble des groupes de
+discussions commençant par fr (par exemple
+fr.rec.cinema.discussions
), qui sont des groupes
+francophones. Il existe également d'autres hiérarchies francophones,
+par exemple la hiérarchie fx
, dont les Control (1) sont bien connus dans cette école (2). Usenet-fr a été créé en 1993. Il comportait à
+l'origine une trentaine de groupes. À l'heure actuelle, ils sont un
+peu plus de 300, sur des sujets très variés, allant du football à
+Linux, en passant par les mangas, la cuisine ou la physique. Vous avez
+donc de grandes chances d'y trouver votre bonheur.
Vous trouverez tous les renseignements, docs, FAQs, etc., sur le +site officiel de la hiérarchie, http://www.usenet-fr.net/.
+Le « fr » de Usenet-fr est là pour +« francophone » et non pour « français » ! +Beaucoup de contributeurs ne sont pas français : ils sont sont +Québécois, Suisses, Belges, ou d'une autre nation francophone, voire +francophones d'un pays non francophone ! Ne les vexez pas +stupidement en faisant preuve de franco-centrisme. Même remarque pour +les Parisiens : le monde connu ne se limite pas à Paris, France. +
+
+Vous verrez parfois, au gré de vos lectures, la phrase suivante :
+« Usenet n'est pas Internet ! » C'est vrai. Usenet est
+un réseau informatique indépendant de l'Internet. À ses débuts, Usenet
+utilisait le protocole UUCP
, indépendant d'Internet. De
+nos jours, les news transitent principalement par NNTP
,
+basé sur IP
(Internet Protocol). Les
+anciens de Usenet sont très attachés à la spécificité de Usenet par
+rapport à Internet.
+
+Une confusion plus gênante est celle entre Usenet et le Web. Il est +certes possible d'accéder à Usenet via des interfaces Web (Google Groups ou Asynchrone). Pour autant, quand +vous êtes sur Usenet, vous n'êtes pas sur un simple forum Web. +
++Enfin, ne confondez pas Usenet avec les news de votre FAI (Fournisseur +d'Accès à Internet) ou FSI (Fournisseur de Services Internet), comme +Free, Wanadoo, etc. +
+Usenet-fr compte 22 hiérarchies de second niveau. Il s'agit +de :
+Les premiers groupes de Usenet-fr ont été créés le 11 mars 1993 par +Christophe Wolfhugel, alias Wolf, suite à une idée émise lors d'une +réunion dans la salle Espace du CNES. Usenet-fr est fondé sur le +modèle des hiérarchies du « Big8 », petit nom des grandes +hiérarchies internationales. Wolf devient donc le Control de +Usenet-fr.
+En 1997 ont lieu des modifications importantes. En mars est créé +l'Union des Volontaires pour la gestion des Votes Usenet-fr (UVV-FR). +En juin, les règles de création et de suppression des groupes sont +modifiées. En octobre, Wolf démissionne : il décide d'arrêter de +modérer fr.usenet.forums.annonces et d'envoyer des +messages de contrôle. Le Comité de modération de fufa est alors créé +pour rétablir l'ordre : il est en charge du fonctionnement de +Usenet-fr, et travaille avec le nouveau Control indépendant, Fabien +Tassin.
+En 1998, la nouvelle organisation est ébranlée par l'affaire de
+fr.soc.sectes
: le vote a été l'occasion d'un
+bourrage d'urnes de la part des opposants au groupe, il est donc
+annulé par le Comité. De nouvelles règles de vote sont alors
+établies. On teste les nouvelles règles lors du vote pour la création
+de fr.soc.alcoolisme
. On arrive alors au résultat
+suivant : avec les anciennes règles, le vote est un succès
+manifeste, avec les nouvelles règles, que peu de personnes ont
+comprises, c'est un échec ! Control refuse alors de créer le
+groupe. Wolf, l'ancien Control, publie alors la clef PGP qui n'avait
+pas été changée lors de la passation de pouvoir. S'ensuit alors une
+sorte de guéguerre à coups de messages de contrôle entre Wolf et
+Fabien Tassin. Alors que les newsmasters comment à perdre patience, la
+crise se résout : Fabien Tassin cède et passe la main à un
+nouveau Control, Ollivier Robert, doté d'une nouvelle clef PGP et un
+nouvel user-id.
En 1999, l'idée est lancée d'un robot qui enverrait à chaque +nouveau contributeur d'un groupe un message d'accueil. C'est le futur +R.Lucie, qui voit le jour fin 2000. Enfin, en 2001, une vague +d'annulations massives a lieu sur divers groupes, comme fr.usenet.abus.d et fr.soc.politique. Ces attaques se font au nom de la +liberté d'expression et contre la prétendue censure ayant cours sur +Usenet-fr. Les newsmasters répliquent alors en republiant les messages +annulés, ce qui perturbe sérieusement la lecture des news...
+3 « instances » gèrent actuellement Usenet-fr :
+La procédure de création d'un groupe sur Usenet-fr est proche de +celle en vigueur sur le Big8. Elle se décompose en :
+Vous trouverez les règles exactes de création ici. +Brièvement, sachez que pour qu'un vote soit un succès, il faut qu'il y +ait 3 fois plus de oui que de non, et par ailleurs, 80 oui de plus que +les non.
+Voici quelques groupes de Usenet-fr, décrits par des habitués. Ceux-ci +se sont efforcés d'être objectif, mais évidemment leur avis reste +personnel, et n'engage pas les tuteurs.
+Vous trouverez un lien pour chaque nom de groupe, ce lien pointe +vers la charte du groupe. Nous vous rappelons qu'il est indispensable +de lire la charte de chaque groupe dans lequel vous compter +poster. Faire une recherche dans les archives du groupe (que vous +pouvez trouver sur Google Groups, +rappelons-le) avant de poser une question est également très fortement +recommandé.
+(1) Un Control est une personne chargée +d'émettre des messages de contrôle, qui servent à communiquer avec les +newsmasters (responsables des serveurs de news qui relaient la +hiérarchie en question). Ces messages sont authentifiés par une clef +spéciale, PGP dans le cas de Usenet-fr.
+(2) Benjamin Lerman et Thomas Pornin.
+(3) « Abus du réseau » est un +terme générique recouvrant notamment le spam, la diffusion de +lettres-chaînes, l'annulation massive d'articles ne vous appartenant +pas, etc.
+(4) Un troll est un message écrit pour +lancer une polémique et lancer de l'huile sur le feu. Par extension, +individu qui pratique le troll.
+ ++Cette page a pour but de vous fournir des informations pratiques sur +les virus. Pour en savoir plus, lisez le dossier +sur les virus de David Monniaux, paru dans le Hublot +n°7. Il existe aussi une section « Virus » dans notre FAQ sur le mail. +
++Si vous utilisez les machines UNIX (PC sous FreeBSD, station Sun sous +Solaris), le risque en pratique est plutôt faible. La plupart +des virus touchent les PC sous Windows, dans une bien moindre mesure +les Macs. Pourquoi ? Il est plus difficile d'écrire un virus pour +UNIX, tout simplement, et ça touche beaucoup moins de monde. +
++Les virus peuvent néanmoins beaucoup vous embêter, surtout s'il s'agit +de virus qui envoient massivement du mail, qui sont +dès lors assimilables à du spam (courrier +indésirable). Vous recevrez un afflux de mails infectés qui +ralentissent le trafic des mails sur clipper, encombrent les boîtes +aux lettres et emplissent les disques durs. +
+
+Vous pouvez filtrer les virus grâce à des programmes comme procmail
.
+Dans la mesure du possible, en cas d'épidémie, nous vous indiquerons
+comment filtrer les vers spammeurs dans notre FAQ sur le courrier électronique
+ainsi que dans notre doc sur
+procmail
.
+
+Si vous utilisez les PC sous Windows des salles info, ou si vous avez +une machine personnelle sous Windows sur le rezo, vous êtes en partie +couvert par l'anti-virus global sur clipper. +
++Vous devez quand même prendre vos précautions, non +seulement pour vous mais aussi pour les autres. Il est déjà arrivé que +plus personne ne puisse envoyer ou recevoir de courrier parce qu'un +Outlook Express vérolé avait rempli la partition collective +réservée au mail. +
+
+Consultez régulièrement les mises
+à jour proposées par Microsoft et appliquez les instructions qui
+vous y sont données. Rappelez-vous que Microsoft n'envoie
+jamais de correctifs de sécurité par mail. Un mail
+qui prétend être un correctif émanant de Microsoft est au mieux une
+mauvaise blague, au pire un virus... Témoin, à l'heure actuelle, le
+ver Swen.A
.
+
+La plupart des vers exploitent les trous de sécurité d'Outlook Express +et/ou d'Internet Explorer. Il existe d'autres navigateurs et d'autres +logiciels de mail pour Windows, tout aussi faciles à utiliser, et +moins risqués. +
+Opera et Mozilla sont de très bons +navigateurs. Mozilla Mail (inclus dans Mozilla), Eudora ou Foxmail peuvent très +bien remplacer Outlook Express. +
+Dernier argument : Microsoft a arrêté le développement d'Oulook +Express. Il n'y aura donc plus de suivi de sécurité. Alors autant +changer dès maintenant ! +
+Si vous tenez à garder Outlook Express, il est impératif de le +tenir à jour. Vous devez avoir la version 6 avec toutes ses +mises à jour pour avoir une sécurité correcte. Méfiez-vous +des attachements douteux et consultez votre mail de préférence en +texte brut. Pour toute information, contactez les WinTuteurs. +
++Attention, un anti-virus ne vous protège pas à 100% ! +La plupart sont inefficaces contre un virus tout nouveau et ne vous +protègent guère que contre les virus déjà connus. C'est juste une +protection supplémentaire, mais elle n'est pas infaillible. Vous devez +continuer à être vigilant. Outre les grands noms de l'anti-virus +(Norton, Symantec, etc.), il existe des anti-virus gratuits, par exemple : +
+Nom | +Société | +Remarques | +
---|---|---|
AntiVir PE | ++ H+BEDV + | +Assistant de mise à jour. | +
+ Avast + | ++ Alwit +Software + | +Mises à jour automatiques, plug-in spécial Outlook +Express. | +
AVG Free +Edition | ++ Grisoft + | +Mises à jour +mensuelles, possibilité de programmer les scans du disque. | +
+ VCatch + | ++ MinuteGroup + | ++Cet anti-virus se contente de vérifier les fichiers entrants (mail, +téléchargements, etc.). En conséquence, il ne filtre que les virus +récents. | +
+Un firewall (« pare-feu » comme on traduit parfois) personnel est un +logiciel chargé de gérer les points d'accès (« ports » en jargon +informatique) à votre ordinateur. Par défaut, la plupart du temps, +beaucoup de ports sont ouverts sans que vous le sachiez. Attention, là +encore, un firewall personnel n'est qu'un pis-aller : ce n'est pas un +logiciel supplémentaire qui peut assurer la sécurité de votre +machine. Seule une politique générale de sécurité peut rendre votre +machine moins vulnérable. Le seul firewall 100% fiable, c'est de ne +pas être connecté à Internet. +
++Les virus se répandent aussi par d'autres voies. On peut par exemple +citer : +
+Swen.A
, par
+exemple) peuvent se répandre via les fonctions de transfert de
+fichiers. +Soyez particulièrement vigilant si vous utilisez un ou plusieurs de +ces services. +
++Il existe différents types de virus. Vous avez probablement déjà +entendu ces noms barbares : cheval de Troie, ver... Voici quelques +définitions générales pour s'y retrouver. Il faut savoir que beaucoup +de virus actuels sont polymorphes, ils font plusieurs choses en même +temps et/ou utilisent plusieurs moyens de propagation. +
++Un virus à proprement parler est un programme capable d'infecter +d'autres programmes en les modifiant pour y inclure une copie de +lui-même. Un virus informatique n'est pas une +fatalité. C'est une anomalie qui découle de failles de +sécurité, en amont de la part du concepteur du logiciel, et souvent en +aval de la part de l'utilisateur. +
++Il en existe de plusieurs sortes. On peut les distinguer suivant leur +mode d'exécution : virus de boot (qui se lance au démarrage de la +machine), d'application (qui se lance quand on lance le logiciel), +virus macro (qui s'exécute via les macros de documents Word ou Excel), +etc. +
++Un virus peut être plus ou moins dangereux. Parfois, son seul but est +de se reproduire. Il peut se contenter d'une action anodine (afficher +un message sur votre écran), ou être carrément plus méchant (effacer +vos données, voire reformater votre disque dur). +
++Ce sont des virus qui se répandent par le réseau (Internet le plus +souvent). Un ver récent (« Code Red ») utilisait ainsi une faille de +sécurité dans IIS, les serveurs Web de Microsoft, et se répandait le +long d'Internet, de serveur en serveur. +
++Les plus connus sont les vers spammeurs, qui se répandent par courrier +électronique, par le biais d'attachements vérolés qui infectent la +machine quand on les ouvre. Ils utilisent souvent une faille de +sécurité dans le couple Outlook Express/Internet Explorer. Ils +s'expédient aux adresses contenues dans votre carnet d'adresses, +parfois dans le cache d'Internet Explorer. Parfois, ils sélectionnent +au hasard un fichier de votre disque dur, l'infectent et l'envoient en +attachement, epérant ainsi passer pour un vrai mail. +
+
+Ces vers peuvent être accompagnés de virus classiques. Parfois, leur
+but est simplement de surcharger le réseau. Souvent, ils ne concernent
+explicitement que le monde Windows, mais de fait, tous ceux qui
+utilisent le courrier électronique en font les frais. Le
+virus « Sobig.F » a déjà surchargé clipper
pendant plus
+d'une semaine, retardant le départ et l'arrivée du mail de tout le
+monde.
+
From:
d'un
+e-mail. Rien ne vous empêche d'indiquer « Jacques Chirac, Élysée » au
+dos de vos enveloppes ; il en va de même pour le courrier électronique.
++Ainsi, si un ami vous dit qu'il a reçu un mail infecté de votre part, +il y a des chances pour que le mail ne vienne pas du tout de vous en +fait. C'est certain si vous n'utilisez que les ordinateurs des salles +infos, si vous avez un ordinateur sous Windows, mettez à jour votre +anti-virus et scannez votre disque par précaution. +
++Un cheval de Troie (trojan en anglais) est un +programme malveillant caché dans un programme anodin (économiseur +d'écran, jeu vidéo, etc.). Quand vous exécutez le programme, le virus +s'exécute également. +
++Un cheval de Troie, une fois dans votre ordinateur, peut faire +beaucoup de choses : récolter vos mots de passe, ouvrir la porte (ce +qu'on appelle une backdoor) à un pirate, modifier vos +données, etc. Contrairement à un virus classique, il ne se reproduit +pas une fois installé. +
++Il circule souvent sur Internet des rumeurs de virus. Certaines sont +des canulars peu subtils : « si vous lisez un mail intitulé +« GURSIXO », votre disque dur s'auto-détruira, votre chat se +transformera en Pokémon et votre directeur de thèse vous demandera où +vous en êtes ». +
+
+D'autres sont carrément perverses : on vous avertit que si vous
+trouvez sur votre disque dur le fichier coin-coin.exe
,
+c'est que vous êtes infecté par un dangereux virus. En fait,
+coin-coin.exe
est un programme tout à fait anodin,
+appartenant à votre système, et pas du tout un virus. En revanche,
+vous pouvez être assez embêté si vous le supprimez...
+
+Toutes ces rumeurs (« hoax » en anglais) sont assorties de mentions +« À RENVOYER À TOUS VOS AMIS ». Dès que vous voyez cette phrase dans +un mail, vous pouvez le mettre à la poubelle. Car si tout le monde +renvoie ce mail à son carnet d'adresses, ça aura exactement le +même effet qu'un ver spammeur et vous vous +retrouverez donc à diffuser vous-même un virus... +
++Les enjeux de sécurité ne doivent pas vous faire paniquer. Vous ne +devez pas croire le premier venu ou la rumeur la plus folle. Si vous +suspectez un virus sur votre machine, avant de faire quoi que ce soir, +parlez-en à des gens compétents, vérifiez +sur Hoaxbuster (qui +répertorie et analyse ce genre de rumeurs) et consultez des sites +officiels (éditeur d'anti-virus, Microsoft, etc.). +
++En anglais, on les appelle spyware ou adware. Ce sont de petits programmes qui s'installent en +même temps qu'un logiciel (souvent la version gratuite de logiciels +commerciaux, ou encore des sharewares), et qui surveillent votre +activité Internet. Ces données sont envoyées régulièrement, en +utilisant votre connexion Internet, à la maison-mère, qui les utilise +à des fins commerciales. +
++Le spyware n'est pas un cheval de Troie, il n'a pas d'activité +réellement malveillante. On peut le voir comme une monnaie d'échange : +vous ne payez pas votre logiciel, en échange la société qui l'édite +vend des renseignements sur vous. Le problème est que souvent, vous +n'êtes pas prévenu de l'existence du spyware, et que vous ne pouvez +pas vérifier ce que le spyware envoie à l'extérieur. +
++Si tout ça vous hérisse, il existe des logiciels qui vous en +débarasseront (reste à faire confiance à ces logiciels...). Parmi les +logiciels gratuits; on peut citer : +
+
+Novarg (aussi connu sous le nom de Mydoom ou Mimail.R) est un ver spammeur en activité depuis la fin janvier 2004. Il
+se présente sous la forme d'une pièce jointe (.bat
,
+.cmd
, .exe
, .pif
,
+.scr
ou .zip
). Le virus n'affecte que les
+systèmes Windows. Il ouvre une « backdoor » (accès à votre ordinateur)
+qui permet à un pirate d'utiliser vos ressources réseau.
+
+Ses caractéristiques sont : +
+test
ou hi
, hello
, Mail
+Delivery System
, Mail Transaction Failed
,
+Server Report
, Status
,
+Error
Mail transaction failed. Partial message is
+available.
», « The message contains Unicode characters
+and has been sent as a binary attachment.
», « The
+message cannot be represented in 7-bit ASCII encoding and has been
+sent as a binary attachment.
»
++Pour lire un descriptif plus détaillé du virus, vous pouvez par +exemple lire le +rapport de Symantec. +
+ ++Vous avez décidé de créer votre page Web. Avant toutes choses, il faut +savoir qu'une page Web ne s'improvise pas. Voici +quelques conseils généraux pour que tout se passe bien. Pour les +conseils techniques, voyez notre article Créer sa +page. +
++Quelles sont vos motivations pour avoir votre page ? Elles +peuvent être multiples et très variées : une page « sérieuse », +exposant vos travaux de recherche ; une page sur vos hobbys, vos +passions ; une page pour montrer vos photos de vacances à vos amis ; +une page parce que tous vos amis en ont une... +
++Maintenant, mettez-vous à la place de la personne qui va venir voir +votre page. Que va-t-elle y trouver ? Est-ce qu'elle vous connaît +déjà ? Que va-t-elle penser de vous ? Méfiez-vous des private jokes face à un public que vous ne maîtrisez +pas. Soyez prêt à recevoir des mails d'insultes (genre « Pauvre +bouffon, ta page est nulle ») d'inconnus enhardis par le prétendu +anonymat d'Internet. +
++N'oubliez jamais qu'Internet, et le Web en particulier, s'organise +comme une société : vous n'y êtes pas anonyme et, +particulièrement lorsque vous créez une page, vous projetez une image. +À vous d'être sûr d'être compris. Réfléchissez donc bien aux points +suivants : +
++Ne confondez pas espace de liberté et espace sans droit. Vous n'avez +pas le droit de diffuser tout ou n'importe quoi sur le Web si ça ne +vous appartient pas. En particulier, ce n'est pas parce que quelque +chose est sur le Web que vous êtes autorisé à le recopier et diffuser +sans autorisation ! Ne violez pas de copyright. +
++Si vous avez un doute, vous pouvez consulter le Code +de la propriété intellectuelle. +
++Bien sûr, personne n'ira vous faire un procès à chaque fois que vous +violez un copyright, mais vous pouvez avoir des ennuis, soit +directement, soit par l'intermédiaire de l'École, qui a une part de +responsabilité en tant que fournisseur d'accès. +
++Veillez à préciser le statut des documents que vous placez sur le +Web. Si vous mettez en ligne des photos, par exemple, indiquez si les +internautes peuvent les utiliser, et si oui, à quelles conditions +(pour un usage commercial ou pas, avec ou sans votre autorisation, +dans le domaine public ou pas). +
++Sachez pourtant qu'il est quasiment impossible de vraiment protéger ce +qu'on choisit de publier sur le Web. Rien n'empêche techniquement un +quidam de recopier vos documents et de les faire passer pour les siens +(il arrive souvent qu'un même contenu soit copié, mot pour mot, sur +une dizaine de sites différents). N'importe qui peut recopier vos +fichiers HTML pour faire un site au design complètement identique au +vôtre. +
++Rappelons qu'aux termes de la Charte des moyens +informatiques que vous avez signée en entrant à l'ENS, +l'utilisation des moyens informatiques de l'École est « limitée à des +activités de recherche et d'enseignement, de développements +techniques, de transferts de technologies, de diffusion d'informations +scientifiques, techniques et culturelles ». Par tolérance, vous pouvez +y mettre vos photos de vacances, mais n'abusez pas de l'espace disque. +
++Vous êtes vivement encouragés, en revanche, à faire une page Web qui +soit en accord avec la charte. Vous pouvez publier vos articles, vos +exposés, vos mémoires (maîtrise, DEA, thèse), vos notes de cours... Le +Web est un grand espace d'échange d'information, vous pouvez y +apporter votre pierre ! +
++Songez aussi qu'une page Web est un très bon outil pour entrer en +communications avec d'autres chercheurs. On a déjà vu des élèves +historiens recevoir des documents ou des indications de la part +d'autres historiens, ou d'amateurs, généalogistes par exemple. +
++Sauf si vous comptez vous contenter d'une seule page (« Kikoo c'est +Jean-Kévin » ou plutôt page-CV), faire une page Web décente, c'est du +travail. Il faut concevoir une mise en page à la fois sobre, agréable +et efficace, un système de navigation pratique. Il la mettre à jour +régulièrement et vérifier que les liens marchent bien. Il faut la +rendre visible aux autres par l'intermédiaire des moteurs de +recherche.
++Il faut enfin être prêt à répondre au courrier de vos visiteurs, qui +peut être plus ou moins intéressant. Ça peut aller de l'insulte à la +correction orthographique, en passant par les félicitations, la +demande d'échange de liens, l'apport de nouveau contenu, la tentative +de drague, etc. Très vite, si votre page s'étoffe, vous vous +apercevrez qu'elle vous prend beaucoup de temps. +
+ +
+Les élèves, magistériens, pensionnaires étrangers, bref tous ceux qui
+ont un compte sur sas
peuvent créer une page Web sur
+le serveur des élèves.
+
+Il faut commencer par créer, dans votre compte, un répertoire
+www
. Ce répertoire contiendra les éléments de votre page
+Web : fichiers HTML, images, documents, sons, etc. Il n'y a pas de
+quotas pour les page Web, mais faites attention quand même à l'espace disque. Votre
+page Web est censée être un outil de travail, pas un espace gratuit de
+diffusion de vos photos de vacances.
+
www
sur votre compte sur sas
. En
+pratique, ça veut dire que si vous êtes à Jourdan ou Montrouge, il
+faut d'abord vous loguer à distance sur sas
(tapez
+simplement ssh sas.eleves
). Pas de problème si vous êtes en
+salle S, T, au 46 ou dans l'Infi.
+Pour créer le répertoire, nous utilisons la
+commande mkdir
, pour « make a
+directory » (pour en savoir plus, consultez notre page sur les répertoires) :
+
sas ~ $ mkdir www
+
+
+Le répertoire www
est donc créé. Ensuite, nous allons
+dans ce répertoire :
+
sas ~ $ cd www
+
+
+Il faut ensuite créer (avec un éditeur de texte) un fichier
+HTML (c'est-à-dire un fichier écrit en HTML, le langage des pages Web) qui servira de page d'accueil,
+c'est-à-dire la première page que les internautes verront de votre
+site. Conventionnellement, ce fichier s'appelle
+index.html
.
+
mozilla
) puis
+allez dans Window > Composer
.
++La page d'accueil contient généralement une brève présentation de +l'auteur (vous), genre « Bienvenue sur la page de Raoul Dugenou », et +des indications sur ce que va contenir votre page. Vous pouvez aussi +expliquer que vous commencez tout juste votre page, grâce à une +annonce comme : « Attention, cette page est en travaux ». Ça fera +patienter vos premiers lecteurs. +
++Dès que le répertoire ~/www existe dans votre répertoire +personnel vous pouvez y accéder depuis le web. Le recensement des +pages web (pour les ajouter aux index) se fait chaque nuit, si vous +venez de créer votre dossier, vous devrez donc attendre. En cas de +problème, envoyez un mail aux Webmasters +(webmaster@clipper). +
++Si vous souhaitez désactiver le robot qui liste les dernières pages +modifiées il faut qu'il existe un fichier .last_modified soit +dans votre home soit dans le dossier ~/www. Pour créer ce +fichier il faut donc faire : +
+sas ~ $ touch ~/www/.last_modified
+
+
+Quelque temps après votre inscription, votre page Web sera accessible,
+à l'adresse http://www.eleves.ens.fr/home/login
, où
+login
est votre propre login, bien sûr ! Votre page sera
+également classée dans la liste des pages Web, sur le serveur des
+élèves. Il y a le classement
+par pseudo ou prénom, le classement par
+nom de famille, par promo,
+par
+discipline ou encore par date de
+dernière modification.
+
+Il reste à organiser votre page Web. Chaque nouvelle page de votre
+site devra avoir un suffixe en .html
(par exemple :
+cv.html
, maitrise.html
, etc.) et être écrit
+en HTML. Pour naviguer d'une page à l'autre de votre site, il faudra
+établir des liens entre elles, et
+surtout, entre index.html
et les autres. Votre page
+d'accueil sert ainsi de table des matières au reste de votre
+page. N'oubliez pas qu'il est rare qu'un visiteur tombe directement
+sur votre page d'acceuil, veillez à bien relier vos pages entre elles.
+
+Pensez à organiser un peu votre page, dès le début. Par exemple, si
+vous voulez faire une page avec du contenu sérieux (vos rapports et
+mémoires, votre TIPE, vos exos de colle, etc.) et moins sérieux (votre
+hobby ou sport favori), vous pouvez dès le début prévoir un répertoire
+maths
, par exemple, et un répertoire
+musique
, où vous rangerez les pages qui se rapportent à
+l'un ou l'autre.
+
+Pour voir le résultat de votre travail, utilisez un navigateur. Il en +existe plusieurs à l'ENS : Mozilla (lent à se lancer, mais performant +ensuite) et Netscape (qui commence à se faire vieux) sont les plus +importants. +
+ Si vous avez fait un lien entre la page d'accueil et vos nouvelles
+pages, il vous suffit de suivre les liens pour les voir. Sinon, vous
+pouvez taper leur adresse directement dans la barre de navigation de
+votre navigateur. En gros, il faut substituer
+http://www.eleves.ens.fr/home/login
(en remplaçant
+« login » par votre login) à
+www
. Illustration :
+
Sur votre compte | +Dans le navigateur | +
---|---|
www/index.html | +http://www.eleves.ens.fr/home/login/ | +
www/cv.html | +http://www.eleves.ens.fr/home/login/cv.html | +
www/maths/tipe.html | +http://www.eleves.ens.fr/home/login/maths/tipe.html | +
N'hésitez pas à vérifier que le résultat est satisfaisant avec +plusieurs navigateurs différents, si possible sous plusieurs systèmes +(Windows, Mac, Unix, etc.) différents.
+Actuellement, Microsoft Internet Explorer (pour PC +ou Mac) occupe une très, très large part du marché. Jusqu'à une date +récente, les autres navigateurs (à commencer par +Mozilla et Netscape) jouaient un rôle +mineur quoique non négligeable, en particulier pour des publics précis +(élèves, étudiants, professeurs et chercheurs par exemple). Mais avec le +succès toujours croissant de Firefox, version allégée +de Mozilla, il est de moins en moins raisonnable +d'« optimiser » son site pour un seul navigateur ; en +réalité, prétendre « optimiser » son site pour une version +particulière d'un navigateur particulier revient à dire qu'il est +« pessimisé » pour les autres...
+
+Si vous souhaitez corriger quelque chose à vos fichiers HTML,
+faites-le puis cliquez sur le bouton « Reload » (Ctrl+R
+ou View > Reload
avec Mozilla) pour que la
+modification soit prise en compte par le navigateur.
+
.htaccess
est un simple fichier texte qui vous permet
+de gérer de manière décentralisée un serveur Apache (le serveur des
+élèves, par exemple). Par exemple, .htaccess
vous permet
+de protéger certains répertoires avec des mots de passe, de
+restreindre l'accès à votre page Web, d'empêcher le listage de vos
+répertoires (quand ils ne contiennent pas de fichier index.html), ou
+encore d'utiliser vos propres pages d'erreur (404, 403)...
Les directives d'un .htaccess
s'appliquent à
+l'ensemble des fichiers du répertoire dans lequel il est placé, ainsi
+qu'aux sous-repertoires. .htaccess
est lu à chaque
+requête du serveur, donc chaque modification prend effet
+immédiatement.
.htaccess
causera une erreur serveur et empêchera tout
+accès à votre site. Vérifiez donc bien que tout marche bien à chaque
+modification de ce fichier. Une consultation des logs de webmaster
+(/opt/webmaster/var/log/error_log.curr
) vous aidera à
+diagnostiquer ce qui ne marche pas.Précisons enfin que chaque ligne commençant par un dièse (#) est +ignorée, ce qui vous permet de commenter vos directives.
+Tout le monde connaît bien les pages d'erreur 404 (File Not Found), +403 (Forbidden), 500 (Internal Server Error)... Il peut être utile de +personnaliser ce type de pages d'erreur (surtout les erreurs 404), par +exemple pour demander à l'internaute de vous signaler les liens +cassés, ou pour lui proposer de faire une recherche sur le site (il +existe un moteur +Google pour le serveur des élèves).
+D'abord, créez vos propres pages d'erreur. Ensuite, dans votre
+fichier .htaccess
, écrivez :
ErrorDocument numero_d'_erreur /chemin/du/fichier.html+
Il est plus simple de nommer vos pages 403.html, 404.html, etc., ce +qui donne :
+ErrorDocument 404 /home/toto/404.html+
Voici quelques unes des erreurs les plus courantes :
+Les redirections sont particulièrement utiles quand vous modifiez
+l'architecture de votre page Web. Par exemple, vous avez décidé de
+ranger tous vos exposés dans un répertoire
+~/www/exposes/
. Vous souhaitez que quelqu'un qui veut
+accéder à l'ancien ~/www/expose1.html
soit rerouté vers
+la nouvelle adresse, ~/www/exposes/1.html
.
Ceci est à spécifier dans votre .htaccess
:
RedirectPermanent /home/toto/expose1.html http://www.eleves.ens.fr/home/toto/exposes/1.html+
Et ainsi de suite pour tous les fichiers concernés.
+Vous pouvez aussi de cette manière rediriger les requètes vers un +répertoire entier, et les rediriger vers un site à l'extérieur de +l'ENS :
+RedirectPermanent /home/toto/chevaux/ http://www.toto-chevaux.net/+
De cette façon, les requètes vers vos anciennes pages dans le répertoire
+~/www/chevaux/
seront toutes redirigées vers le site
+http://www.toto-chevaux.net/
. Par exemple,
+~/www/chevaux/soins.html
sera redirigée vers
+http://www.toto-chevaux.net/soins.html
.
Quand un répertoire ne contient pas de fichier index.html (ou +index.htm), Apache liste le contenu du répertoire, en donnant quelques +informations, typiquement la taille des fichiers. Mais il est possible +de spécifier d'autres informations, comme la date de dernière +modification, et d'ajouter une courte description de chaque +fichier.
+La syntaxe est la suivante : IndexOptions FancyIndexing
+<autres directives>
. Ces autres directives sont les
+suivantes :
IconsAreLinks
+ ScanHTMLTitles
+ SuppressSize
+ SuppressDescription
+ SuppressLastModified
+ Exemple : vous avez un répertoire d'images appelé
+~/www/images/
, vous souhaitez avoir la taille et la
+description de chacune des images. Vous en profitez pour supprimer la
+date de dernière modification, qui ici vous importe peu et prend de la
+place.
IndexOptions SuppressLastModified FancyIndexing +AddDescription "Le bassin aux Ernests" images/ernests.gif +AddDescription "La planète Mars" images/mars.jpg ++
Pour une raison quelconque, vous n'utilisez pas de fichiers
+index.html ou index.htm. Par exemple, vous utilisez PHP et pour vous,
+les fichiers d'index s'appellent index.php
. Ou encore,
+vos fichiers d'index s'appellent tagada.html
. Vous pouvez
+indiquer au serveur quels fichiers considérer comme des fichiers
+d'index :
DirectoryIndex index.php+
Si vous utilisez des fichiers d'index aux noms différents, vous +pouvez créer une liste. Apache regarde d'abord si le fichier cité en +premier existe, et à défaut passe au suivant jusqu'à ce qu'il en +trouve un, sinon il affiche le contenu du répertoire (sauf si vous +avez désactivé cette fonction, bien sûr).
+DirectoryIndex index.php tagada.html main.html index.html+
Vous pouvez interdire l'accès à votre site à partir de certaines
+adresses IP. Dans ce document, il ne sera question que des adresses
+IPv4, dont on rappelle qu'elles sont constituées de quatre nombres de 0
+à 255 séparés par des points (par exemple l'adresse IP de sas.eleves est
+129.199.121.11
).
Pour interdire une adresse IP :
+deny from 123.456.789.10+
Inversement, on peut autoriser une adresse IP :
+allow from 123.456.789.10+
Si on indique un ou deux nombres seulement, ils sont interprétés
+comme des plages d'adresses IP. Par exemple, allow from
+129.199
autorise tous les accès venant de l'École. deny
+from all
interdit à tout le monde l'accès à vos fichiers, mais
+des scripts peuvent continuer à les utiliser.
En pratique, une interdiction de certaines IP prend la forme +suivante :
++order allow,deny +deny from 123.45.6.7 # on interdit l'adresse précise 123.45.6.7 +deny from 12.34.5 # on interdit toutes les adresses IP commençant par 12.34.5 +allow from all # on autorise tous les autres ++
Le rôle de la directive order
ci-dessus est d'indiquer
+l'ordre dans lequel les directives deny
et
+allow
doivent être évaluées. Il faut préciser soit
+allow,deny
(auquel cas les requêtes sont refusées sauf si
+elles sont désignées par une directive allow
et aucune
+directive deny
), soit deny,allow
(auquel cas
+les requêtes sont acceptées sauf si elles sont désignées par une
+directive deny
et aucune directive allow
).
+Remarquez que, d'une façon quelque peu contre-intuitive, l'ordre réel
+des directives allow
et deny
dans le fichier
+.htaccess
est sans importance.
Exemple : vous souhaitez réserver une partie de votre site aux
+connexions venant de l'École. Admettons qu'il s'agisse de votre
+répertoire ~/www/normalos/
. Créez dans ce répertoire une
+fichier .htaccess
dans lequel vous écrirez :
+ order deny,allow + deny from all + allow from 129.199 ++
On peut aussi utiliser des noms de domaine. Admettons que vous +n'aimiez ni le gouvernenent américain ni l'entreprise de +M. Gates. Vous pouvez écrire :
+Deny from .gov microsoft.com+
Gardez à l'esprit que si vous protégez par mot de passe +un répertoire, il sera toujours lisible par tous les gens qui +possèdent un compte clipper en naviguant dans la hiérarchie de +fichiers depuis un des ordinateurs de l'ENS.
++Il suffit de rajouter un fichier ".htaccess" dans le dossier à +protéger qui contient les lignes suivantes : +
++Order deny,allow +Deny from all +Authtype CAS +AuthName "CAS" +Require valid-user +Satisfy Any ++
Procédons par étapes.
+1) On commence par créer un fichier .passwds
qui
+contiendra les renseignements sur les personnes autorisées. Pour ce
+faire, on tape :
htpasswd -c .passwds toto+
Ce qui crée à la fois .htpasswd
et l'utilisateur toto,
+pour lequel on vous demande un mot de passe.
sas ~ $ htpasswd -c .passwds
+toto
+New password:
+Re-type new password:
+Adding password for user toto
+
+ Pour ajouter d'autres utilisateurs : htpasswd .htpasswd
+titi
. Pour en retirer, il suffit d'éditer le fichier et
+d'effacer la ligne correspondant à l'utilisateur
+concerné. htpasswd
chiffre les mots de passe (en
+utilisant une variante de md5), qui ne figurent donc pas en clair dans
+les fichiers.
Pour en savoir plus, consultez la page de +man de htpasswd.
+2) On en revient à .htaccess
et on tape :
+AuthType Basic +AuthUserFile /users/03/pataphys/vian/www/repertoire/.passwds + # endroit où vous conservez les mots de passe +AuthName "Entrez votre mot de passe" # ici vous indiquez ce qui figurera dans la barre de titre + # de la fenêtre +require valid-user ++
Si vous voulez protéger par mot de passe seulement certaines
+parties du site, il faut créer un .htaccess
dans le
+répertoire concerné.
Vous ne voulez peut-être pas que l'on sache où vous rangez vos mots
+de passe. Il faut dans ce cas empêcher l'accès au fichier
+.htaccess
lui-même. Pour protéger le fichier,
+taper :
+<Files .htaccess> +order allow,deny +deny from all +</Files> ++
+ Pour plus d'informations sur les fichiers .htaccess
, vous
+ pouvez vous reporter à l'article Wikipedia à
+ leur propos (qui n'est pas spécifique à Apache), ou au tutorial
+ à leur sujet qui figure dans la documentation d'Apache.
+
+Le langage XHTML est un langage de formatage de texte adapté à la +conception de pages web. +
+Ce n'est pas un langage de programmation, mais un langage de mise en +forme de données : une page Web décrit une structure statique, tandis +qu'un programme est un processus dynamique. Vous n'avez aucunement +besoin d'avoir des bases de programmation pour écrire du XHTML ! +
++Pour vous le présenter, un peu de généalogie facilitera les choses, +notamment pour expliquer la différence entre HTML et XHTML. +
++La famille du XHTML est une famille nombreuse, et elle n'a pas fini de +s'étendre ! L'aïeul s'appelle SGML ; il eut deux enfants, le +HTML puis le XML. Le XML eut à son tour un enfant, qui s'appelle XHTML +et ressemble comme deux gouttes d'eau à son oncle HTML. +
++Le SGML est un +méta-langage : il permet de définir des langages balisés. Le HTML est l'un de ces langages +balisés, fondé en particulier sur la notion de lien hypertexte, +qui permet de naviguer confortablement d'une page à une autre.
++Le HTML a très vite remporté un grand succès. Mais il a aussi rencontré +certaines limites. En particulier, il n'est pas extensible. Aussi a-t-il +reçu un petit frère, le langage XML, précisément fondé sur la notion +d'extensibilité ; comme le SGML, le XML est un méta-langage.
+Le problème, c'est que le HTML n'était pas compatible avec le +XML ; c'est pourquoi l'on a conçu le langage XHTML, qui est +dérivé du XML, mais conserve les principes fondamentaux du HTML, dont il +hérite également de nombreuses spécificités. +
+La norme du XHTML est définie par le W3C, qui encourage les +concepteurs de pages web à passer du HTML au XHTML. L'avantage du XHTML +sur le HTML est son extensibilité, qui lui vient du langage +XML. C'est pourquoi nous vous recommandons très fortement de +préférer le XHTML au HTML. Le site des tuteurs observe +scrupuleusement les spécifications de ce langage. À terme, le HTML est +appelé à disparaître. +
+Le XHTML définit la structure logique d'un +document, permettant ensuite à un navigateur (Firefox, Mozilla, +Netscape, Opera, Internet Explorer, etc.) de rendre visuellement (mais +aussi auditivement ou tactilement, pour les non-voyants) le +document.
+Pour des raisons évidentes d'interopérabilité, le XHTML possède une +norme, rédigée par le World Wide Web Consortium (W3C), qui +regroupe des acteurs majeurs du Web comme Microsoft, MacroMedia (qui +produit Flash), Apple, AOL, etc. Nous en sommes actuellement à la norme +XHTML 1.0. +
+L'élément de base d'un site est la page. C'est un
+fichier dont l'extension est normalement .html
(ou
+.htm
si votre système d'exploitation vous impose cette
+limitation) et qui contient du code XHTML.
+
Le XHTML ne s'occupe que de définir la structure logique de +votre document. Pour l'aspect visuel (mise en page, couleurs, +fontes, etc.), c'est le domaine des feuilles de style, dont le tutoriel est en cours de rédaction.
++Le XHTML utilise des balises (aussi appelées +« éléments ») pour distinguer les éléments logiques de la +page.
+Toute balise doit être ouverte (sans quoi elle n'existe pas, +évidemment) ; et toutes les balises doivent également être +fermées.
+L'obligation de fermer chaque balise est l'une des principales +différences entre le HTML et le XHTML ; c'est une caractéristique +que le XHTML hérite du XML.
+Une balise se présente sous la forme <tagada>, avec un < et +un >.
+Les balises se referment avec </tagada>, / étant l'élément +fermant. Certaines balises se ferment à l'intérieur (et à la fin) +d'elles-mêmes. Dans ce cas, la barre tranversale doit être placée juste +avant le > final. Exemple : <br />. +
++Un jeu de balises présente donc obligatoirement l'une des deux formes +suivantes : +
++<tagada> quelque chose </tagada> ++
+ou bien : +
++<tagada /> ++
Il n'existe aucune autre forme possible.
+Les balises acceptent parfois des options, qu'on appelle des
+attributs : dans <tagada type="plouf" />, tagada
+est l'élément, type
l'attribut, et « plouf » la
+valeur de l'attribut.
+
+En XHTML, on écrit les éléments et les attributs en +minuscules. +
++L'écriture des balises en minuscules est, là encore, un héritage du +XML ; en HTML, on recommandait d'écrire les éléments en majuscules +et les attributs en minuscules. +
+Les commentaires s'insèrent entre <!-- et -->. Attention, à +l'intérieur de commentaires, il vaut mieux ne pas utiliser de doubles +tirets (--). On ne peut pas placer de commentaires à l'intérieur d'un +élément. +
+Toutes les balises doivent être refermées.
+Toute partie de la page doit être contenue dans (au moins) une +balise.
+Les balises doivent être ouvertes et refermées dans +l'ordre. Faites spécialement attention dans le cadre de balises +imbriquées. +
++Il ne faut donc pas écrire : +
++<p> Je vous préviens tout de suite, c'est <em>non.</p></em> ++
mais :
++<p> Je vous préviens tout de suite, c'est <em>non.</em> </p> ++
+Il faut refermer la balise <em> avant <p>, car on l'a ouverte +après. C'est le principe des poupées russes. +
++Quand un texte s'étoffe, il devient très vite difficile de se rappeler +dans l'ordre toutes les balises que l'on a ouvertes, ou de tout relire +pour être sûr de ne pas en avoir oublié. Comment être sûr que l'on +emboîte bien les poupées russes ?
+Voici une astuce. Écrivez dans l'ordre :
+Ainsi, vous serez sûr de ne +jamais commettre d'erreur dans l'ordre de vos balises. +
+Exemple : +Je mets les balises : +
++<p> </p> ++
+et je les remplis : +
++<p>Je vous préviens tout de suite, c'est <p> ++
+et je mets les balises : +
++<p>Je vous préviens tout de suite, c'est <em> </em> </p> ++
+et je les remplis : +
++<p>Je vous préviens tout de suite, c'est <em>non.</em> </p> ++
+Fabuleux, non ? N'est-ce pas ridiculement simple ? +
+
+Vous avez parfois besoin de caractères spéciaux, que l'on ne peut pas
+saisir trivialement au clavier. Pour cela, le XHTML a défini des
+entités, qui par convention représentent ces caractères. Par
+exemple, le symbole euro (€) est €
, le e dans
+l'o (œ) s'écrit œ
.
+
+En plus de ces entités XHTML (dont vous pouvez trouver la liste +chez David Madore), vous disposez des entités Unicode. Unicode est une convention dont le +but est de représenter tous les langages du monde. Ainsi, vous écrirez +correctement le nom du compositeur Antonín Dvořák en utilisant +l'entité Unicode du r caron, à savoir ř (ř). +
+Toute page XHTML est contenue entre deux balises <html> +(c'est-à-dire entre <html> et </html>).
++Remarque : les balises s'appellent bien <html> et non +<xhtml> : c'est un héritage, vous vous en doutez, du HTML. +
++Toute page XHTML doit commencer par les éléments suivants : +
++<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> ++
+<html xmlns="http://www.w3.org/1999/xhtml"> ++
+Il existe d'autres DTD, par exemple celui pour les cadres (frames), mais souvenez-vous qu'utiliser les +cadres n'est pas une bonne idée ; cf. l'excellent article +« Pour en +finir avec les cadres » sur le site de l'OpenWeb Group. +
++Pour l'instant, notre page-squelette ressemble donc à ceci : +
++<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml"> + +<!-- Ce sont des commentaires. Ils sont complètement ignorés par +<!-- les navigateurs. Sinon, ici se trouve normalement le corps de +<!-- votre page. --> + +</html> ++
Le rôle des en-têtes dans une page XHTML (comme dans un courrier +électronique) est de donner des méta-informations plus ou moins +importantes.
+Par exemple, l'identité de l'auteur, le titre de la page, +l'encodage, la langue utilisée, etc. Les en-têtes sont déclarées à +l'intérieur de l'élément <head> (logique, non ?), +c'est-à-dire entre les balises <head> et </head>. +
+La plus importante des en-têtes est... le titre de la page. Dans un +navigateur graphique (Internet Explorer, Mozilla, etc.) il est affiché +dans la barre de titre. Il est également utilisé par les moteurs de +recherche. Un bon titre est informatif (évitez les jeux de mots nazes) +tout en restant relativement court. Il se déclare dans l'élément +<title> qui est obligatoire.
+Ainsi, Jean-Paul Sartre pourra utiliser comme titre de sa page +d'accueil : +
++<title> Page Web de Jean-Paul Sartre </title> ++
+Elles sont facultatives, mais importantes à la fois pour le navigateur +qui a des renseignements sur la manière dont afficher la page, et pour +les moteurs de recherche, qui s'en servent pour indexer vos +pages. Nous vous en présentons quelques-unes. +
++<meta name="author" content="Jean-Paul Sartre" /> ++
Vous pouvez déclarer plusieurs auteurs en séparant +les noms par des virgules.
+<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" />+
Ceci déclare que votre page est du (X)HTML (là +encore, il s'agit d'un héritage...) et que l'encodage est l'iso-8859-1 +(alias iso-latin-1), l'encodage standard pour l'Europe occidentale. La +déclaration de l'encodage est importante pour le navigateur.
+<meta http-equiv="Content-Language" content="fr" />+
Quelques codes utiles : fr
pour
+le français, en
pour l'anglais, de
pour
+l'allemand, es
pour l'espagnol, it
pour
+l'italien, ru
pour le russe. Déclarer la langue utilisée
+est utile pour les synthétiseurs vocaux des navigateurs pour aveugles
+(qui en déduisent comment prononcer) comme pour les navigateurs
+standards qui peuvent en déduire, par exemple, s'il faut utiliser des
+guillemets anglo-saxons ("") ou français (« »).
+<meta name="keywords" lang="fr" content="Philosophie, existentialisme, +littérature engagée" /> ++
Cette balise meta
est utilisée par certains moteurs de
+recherche pour indexer les pages. Ne mettez que les mots-clefs les
+plus significatifs, les moteurs n'aiment pas les listes trop
+longues. Notez au passage que vous pouvez tout à fait passer à la
+ligne.
+Voilà, on en a fini avec les en-têtes (on n'oublie pas le +</head> à la fin). On passe au cœur de votre page : ce que +le lecteur va voir via son navigateur. +
+Le corps de la page est contenu entre balises <body>. Comment +le remplir ? Vous le verrez dans les lignes suivantes.
+Important : pour tous les éléments de <body> il +y a une distinction importante entre les balises dites « block level » et les balises « inline +level ».
+Les block level sont par exemple des +paragraphes, des titres, etc. Ils forment des +« blocs ». Typiquement, ils comprennent une ou plusieurs +phrases.
+Les éléments inline sont plutôt de la mise en +forme, ils s'appliquent à l'intérieur des blocs. C'est le cas des +balises qui mettent en valeur le texte, qui le renforcent. Typiquement, +on les trouve à l'intérieur d'une phrase.
+La distinction peut vous paraître confuse mais vous comprendrez +mieux ensuite. Vous pouvez regarder par exemple la différence entre citation inline et bloc.
+Vous pouvez le copier-coller pour servir de modèle à vos pages +Web.
++<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" +"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> + +<html xmlns="http://www.w3.org/1999/xhtml"> + +<head> +<title><!-- insérer le titre --></title> +<meta name="author" content="<!-- Insérer votre nom -->" /> +<meta http-equiv="Content-Type" content="text/html;charset=ISO-8859-1" /> +<meta http-equiv="Content-Language" content="fr" /> +<meta name="keywords" lang="fr" content="<!-- Insérer les mots-clefs de votre page-->" /> +</head> + +<body> + +<!-- Ici c'est le corps de la page --> + +</body> +</html> ++
Maintenant, il s'agit de remplir un peu votre page. Pour cela, il +faut réfléchir un peu avant et la structurer au moyen de titres +hiérarchisés. En effet, dès que la page dépasse les « vous êtes bien +sur la page de Toto », les informations ont besoin d'être +hiérarchisées pour être lisibles. Imaginez cette page sans le moindre +titre ! +
+Si vous avez fait du LaTeX, vous connaissez ce
+genre de chose (\chapter{}
, \section{}
,
+\subsection{}
...). Idem pour Word avec son système de
+Titre 1, Titre 2, etc.
En XHTML, c'est aussi simple : <h1>, +<h2>, <h3>... Ça va comme ça jusqu'à <h6>, ce qui +vous laisse pas mal de marge pour structurer votre +document. Traditionnellement, <h1> est réservé au titre de la +page (qui peut être, ou pas, le même que le <title>, à vous de +voir). +
++<h1>Logique transcendantale</h1> +<!-- ... --> +<h2>Analytique transcendantale</h2> +<!-- ... --> +<h3>Analytique des principes</h3> +<!-- ... --> +<h4>Système de tous les principes de l'entendement pur</h4> +<!-- ... --> +<h5>Représentation systématique de tous les principes synthétiques</h5> +<!-- ... --> +<h6>Les postulats de la pensée empirique en général</h6> +<!-- ... --> +<h6>Réfutation de l'idéalisme</h6> +<!-- ... --> +<h2>Dialectique transcendantale</h2> ++
+On en arrive au cœur du problème : mettre en forme le +texte. +
++La plus grande partie d'un texte, habituellement, c'est... du +texte. Des paragraphes de texte. En XHTML, les paragraphes sont +délimités par des <p> (et </p>, évidemment). Avec la +plupart des navigateurs, les paragraphes sont rendus à la manière +anglo-saxonne : alignement sur la gauche, pas d'alinéa. Il y a +généralement une espace entre deux paragraphes. +
++Pour aller simplement à la ligne, utilisez l'élément <br />. +
++Vous pouvez citer au niveau inline, soit en utilisant +directement des guillemets, soit en utilisant l'élément <q> +(pour quote) : +
++<q>Delenda Carthago</q>, comme disait le grand Caton... ++
Au passage, Internet Explorer ignore purement et +simplement l'élément <q>, donc mieux vaut utiliser directement +les guillemets. +
+Au niveau bloc, c'est l'élément <blockquote> qu'il vous +faut : +
++<p>Charles-Marie de La Condamine est un savant et explorateur +français, né à Paris en 1701. Il est admis à à l'Académie française en +1760. Il écrit à ce sujet :</p> + +<blockquote> +<p> +La Condamine est aujourd'hui<br /> +Reçu dans la troupe immortelle<br /> +Il est bien sourd, tant mieux pour lui,<br /> +Mais non muet, tant pis pour elle.<br /> +</p> +</blockquote> ++
+<blockquote> est généralement rendu par un bloc indenté à droite +et à gauche : +
++++La Condamine est aujourd'hui
+
+Reçu dans la troupe immortelle
+Il est bien sourd, tant mieux pour lui,
+Mais non muet, tant pis pour elle. +
+Le XHTML ne se soucie pas du rendu visuel. Pour lui, le gras et +l'italique n'existent pas à proprement parler. Mais il sait mettre en +valeur du texte.
+<strong> est utilisé pour renforcer un membre +de phrase, insister sur son importance. Il est donc souvent rendu par +du gras par les navigateurs.
+<em> (pour emphasize) sert également à mettre +en relief un membre de phrase. Il est plus faible que <strong>. Il +est généralement rendu par de l'italique.
+
+Selon les règles typographiques habituelles, un mot, une citation en
+langue étrangère non francisée doit être mis en italique. Il ne s'agit
+pas ici de mettre en valeur, mais d'une convention typographique. Dans
+ce cas, vous devez utiliser l'élément <i>. Vous pouvez indiquer
+de quelle langue il s'agit en utilisant l'attribut
+lang
. Exemple :
+
+Selon le goût italien, les pâtes doivent être cuites <i lang="it"> al dente </i>. ++
+Ce qui donne : +
++Selon le goût italien, les pâtes doivent être cuites al dente. ++
+Le XHTML vous permet de structurer encore davantage vos documents, +essentiellement les documents techniques. <dfn> (pour define) sert à indiquer un mot dont on va donner la +définition, une fois pour le reste du document. Exemple : +
++<p>On dit qu'un morphisme de schémas est <dfn>étale</dfn> +lorsqu'il est à la fois lisse et non ramifié. En fait, il suffit pour cela +qu'il soit à la fois <em>plat</em> et non ramifié.</p>+
+C'est <cite> qu'il faut utiliser pour les citations de titres de +livres, de films, etc. L'élément <cite> est usuellement rendu par +de l'italique. Exemple : +
++Le film <cite lang="it">Morte a Venezia</cite> de Luchino +Visconti est une adaptation de la nouvelle <cite lang="de">Der Tod +in Venedig</cite> de Thomas Mann. ++
+<code> (que vous reverrez dans la section du texte +préformaté) est également un style de texte qui sert à démarquer +un extrait de code informatique du texte normal. Exemple : +
++La ligne <code>#include <stdio.h></code> +demande au compilateur d'inclure dans le programme certaines +informations sur la bibliothèque standard d'entrées-sorties. ++
+Les sigles peuvent être indiqués par un élément <abbr>, et les
+acronymes (sigles prononçables, comme ONU, OTAN, etc.) par
+l'élément... <acronym>. Ces éléments sont
+intéressants surtout si on utilise leur attribut title
:
+certains navigateurs peuvent alors afficher le contenu de
+title
dans une bulle d'aide. Démonstration :
+
+
+L'<acronym lang="en" title="United Nations Special +Commission">UNSCOM</acronym> a été créée pour assister +l'<abbr lang="en" title="International Atomic Energy +Agency">IAEA</abbr> en Iraq. ++
+Les bons navigateurs (Mozilla ou FireFox par exemple) affichent le
+contenu du title
sous la forme d'une bulle d'aide (tooltip en anglais) quand vous laissez le curseur dessus. Faites le
+test :
+
+L'UNSCOM a été créée pour assister l'IAEA en Iraq. ++
Il y a trois sortes de listes possibles en XHTML :
+Toutes les listes sont des éléments blocs.
+Elles sont aussi dites « listes à puces » car souvent les +navigateurs affichent des puces devant chaque entrée de +liste. <ul> et </ul> (pour Unordered +Lists) marquent le début et la fin d'une liste, <li> et +</li> le début et la fin d'une entrée de liste.
+En exemple, voici quelques armes de Goldorak :
++<ul> +<li> mégavolts</li> +<li> cornofulgure</li> +<li> astéro-hache</li> +</ul> ++
Ce qui donne :
+Même principe, avec <ol> (Ordered Lists) à
+la place de <ul>. La numérotation se fera par défaut en chiffres
+arabes (1, 2, 3...). Vous pouvez changer le type de numérotation, en
+chiffres romains ou en caractères alphabétiques (a, b, c...) grâce à
+l'attribut type
:
+
+<ol type="i"> +<li> mégavolts</li> +<li> cornofulgure</li> +<li> astéro-hache</li> +</ol> ++
Ce qui donne :
+Pour changer de numérotations, changez la valeur de
+type
: I pour les chiffres romains majuscules, a pour les
+caractères alphabétiques minuscules, A pour les majuscules.
+On utilise l'élément <dl> (Definition list). À +l'intérieur de l'élément <dl>, <dt> (pour definition term) est une entrée du lexique, et <dd> +(pour definition definition...) la définition associée +à cette entrée. Admettons que vous fassiez un lexique du folklore +normalien. +
++<dl> + + <dt>Amazon</dt> + <dd>Flipper mythique de la K-fêt, arrivé à l'École en 1990.</dd> + + <dt>Fun machine</dt> + <dd>L'autre flipper, qui ne sert comme son nom l'indique qu'à se dérouiller les + doigts ou à tuer le temps en attendant de jouer à l'Amazon.</dd> + +</dl> ++
Ce qui donne :
+On utilise l'élément <pre> pour du texte préformaté au niveau +bloc. Différences avec du texte normal : les navigateurs respectent +toutes les espaces que vous avez indiqués et ils utilisent généralement +une fonte à espacement fixe. Le texte préformaté peut être utilisé pour +mettre en page un poème, par exemple, ou plus prosaïquement, du code +informatique.
+ Attention toutefois, <pre> n'est pas l'environnement
+verbatim
de LaTeX : le code XHTML y est interprété. Dans
+cette documentation, par exemple, on a recours aux entités pour représenter <, > et &.
+
Par exemple, si je veux afficher un programme conçu +en langage C, je dois insérer dans la page HTML le code +suivant :
++<pre> +#include <stdio.h> + +int main(void) +{ + printf("Hello, world!\n"); + return 0; +} +</pre> ++
Cela sera affiché de la façon suivante :
++#include <stdio.h> + +int main(void) +{ + printf("Hello, world!\n"); + return 0; +} ++
+(pour ceux qui ne connaissent pas le langage C, vous pouvez
+exécuter ce programme en recopiant ces lignes dans un fichier
+hello.c
; ensuite, tapez gcc hello.c
puis
+./a.out
et regardez le résultat).
+
Pour citer du code en inline, utilisez la bien-nommée +balise <code>. +
+
+On se sert de l'élément <img /> (pour image, bien
+sûr) et de ses attributs. Le principal attribut est
+src
: il permet de spécifier l'adresse où aller
+chercher l'image. Ainsi, quand on écrit son fichier
+~/www/index.html
pour inclure une image située dans son
+répertoire ~/www/images/
, on écrira :
+<img src="images/monimage.jpg" /> ++
On peut aussi indiquer une adresse +absolue quand l'image n'est pas sur votre compte, par +exemple :
++<img src="http://www.eleves.ens.fr/tuteurs/icones/note.png" /> ++
Il est obligatoire d'indiquer une description de votre image, en
+guise de texte alternatif pour les navigateurs texte, ou si pour une
+raison quelconque l'image ne peut pas être téléchargée ; le texte
+alternatif sert, en particulier, pour les non-voyants qui disposent de
+logiciels pour lire du texte à haute voix, mais n'ont rien pour décrire
+des images. Ce texte doit être court et informatif. On l'indique avec
+l'attribut alt
:
+
+<img src="images/pouf.jpg" alt="Photo de moi et mon chien Pouf en vacances" /> ++
Si l'image ne joue aucun rôle sémantique
+(c'est-à-dire si elle n'est là que pour décorer), on indique
+alt=""
.
Les formats les plus couramment utilisés pour le Web sont le JPEG,
+en .jpg
et le GIF, en .gif
+— utiliser de préférence le format PNG, GIF n'étant pas
+libre, et moins bon techniquement. JPEG est un format qui est plus
+adapté aux photos, GIF ou PNG sont plus adaptés aux logos et de
+manière générale aux images ayant peu de couleurs.
+
+Les tableaux sont décrits par l'élément <table>. C'est l'un des +chapitres les plus complexes du XHTML : les possibilités sont très +nombreuses. +
+<table> définit l'ensemble du tableau. À l'intérieur, il faut décrire +les lignes du tableau et ses cellules. L'élément <tr> décrit les lignes, +et <td> les cellules. On déclare dans l'ordre <table>, puis +<tr> et enfin <td>. +
++<table> +<tr><td> Cellule 1 </td><td> Cellule 2 </td></tr> +<tr><td> Cellule 3 </td><td> Cellule 4 </td></tr> +<tr><td> Cellule 5 </td><td> Cellule 6 </td></tr> +</table> ++
Ce qui donne :
+Cellule 1 | +Cellule 2 | +
Cellule 3 | +Cellule 4 | +
Cellule 5 | +Cellule 6 | +
Pas très croquignolet, hein ?
++On peut déjà commencer par donner un titre à ce tableau, grâce à +l'élément <caption>. Le titre du tableau se place au début du +tableau, avant la première ligne (avant le premier <tr>) mais dans +le tableau tout de même (donc après la déclaration de <table>). +
++On veut également différencier des méta-cellules, qui donnent des +informations sur le contenu des cellules de données, des cellules de +données à proprement parler. Les cellules de données, c'est bien sûr +<td>, et les méta-cellules, c'est l'élément <th> (le H +étant pour header, en-tête) qui s'en charge. +
++On peut aussi, pour rendre le tableau un peu plus esthétique, et plus lisible (6 +cellules ça va, mais quand vous en aurez 42...), lui donner une bordure. On +utilise pour cela l'attribut border à qui on spécifie une épaisseur en nombre de +pixels. Généralement, border=1 suffit amplement à ce que vous voulez faire +(délimiter mieux les cellules). +
++<table border=1> +<caption>Ceci est un tableau</caption> +<tr><th> Colonne gauche </th><th> Colonne droite</th></tr> +<tr><td> Cellule 1 </td><td> Cellule 2</td></tr> +<tr><td> Cellule 3 </td><td> Cellule 4</td></tr> +<tr><td> Cellule 5 </td><td> Cellule 6</td></tr> +</table> ++
Donc :
+Colonne gauche | +Colonne droite | +
---|---|
Cellule 1 | +Cellule 2 | +
Cellule 3 | +Cellule 4 | +
Cellule 5 | +Cellule 6 | +
Le meilleur pour la fin, les liens ! Ce qui fait d'une page Web une +vraie page hypertexte (le HT de XHTML) et pas un bête document. Les +liens se décrivent avec l'élément <a> (qui est, bien sûr, inline), suivi d'attributs. +
+Le lien de base utilise l'attribut href :
++Retourner au <a href="http://www.eleves.ens.fr/">serveur des élèves</a>. ++
donne ainsi :
++Retourner au serveur des élèves. ++
On peut utiliser des liens absolus, comme celui ci-dessus, qui
+donne l'ensemble de l'URL, mais aussi des liens relatifs, qui sont
+relatifs à l'arborescence de votre site. Admettons que vous ayez dans
+votre répertoire ~/www/
un répertoire stage
+qui contient, entre autres, le fichier rapport.html
. Pour
+faire un lien dessus, depuis la page d'accueil, ça donnera :
+
+Mon <a href="stage/rapport.html">rapport de stage</a> +parle du lien entre les nombres p-adiques et les phases de +la lune.+
Une ancre sert à faire un lien local, c'est-à-dire vers un +endroit précis du document. C'est particulièrement utile pour faire +une table des matières avec des liens qui pointent vers les titres, ou +encore pour faire des références croisées dans un document. +
+
+On commence par définir les ancres, c'est-à-dire les endroits vers
+lesquels on veut pointer. On utilise l'attribut name
de
+l'élément <a> :
+
+Les <a name="olm">Olmèques</a> ont véritablement +existé. C'est la première des grandes civilisations précolombiennes... ++
Quand vous lisez le document avec un navigateur, +l'ancre est invisible. Pour choisir le nom de l'ancre, vous avez à +votre disposition tous les caractères alphanumériques, et mêmes les +caractères accentués. Veuillez seulement à ne pas utiliser deux fois +la même ancre au sein du document.
+Pour faire le lien vers cette ancre, on utilise toujours l'attribut
+href
, mais en modifiant la syntaxe avec un
+#
:
+Esteban, Zia et Tao rencontrent alors les Olmèques, une peuplade +extra-terrestre (voir ici la <a href="#olm">véritable histoire +du peuple olmèque</a>. ++
Vous pouvez positionner un lien vers cette ancre +même depuis un autre fichier :
++Voir <a href="citesdor.html#olm">l'histoire des Olmèques</a>. ++
+Vous pouvez créer un lien de telle sorte que, lorsqu'on suit ce lien, on
+vous envoie un courrier électronique. On utilise toujours l'élément
+<a> et son attribut href
. Seulement, le protocole du
+lien change. Auparavant c'étaient des liens HTTP (Web). Mais vous pouvez
+aussi utiliser le protocole mailto
, qui est le protocole
+des courriers électroniques.
+
+Écrivez-moi : <a href="mailto:mon.adresse@ens.fr">mon.adresse@ens.fr</a> ++
Quand un lecteur suivra ce lien, son navigateur +lui proposera de vous envoyer un mail.
+
+Les entités dont vous avez besoin en l'espèce
+sont @
pour une arobase (@) ou encore
+.
pour un point (.) et -
+pour un tiret (-). Ce qui donne :
+
+Mon adresse : <a href="mailto:jean-paul.sartre@ens.fr">jean-paul.sartre@ens.fr</a> ++
Complètement illisible, on est bien d'accord ? C'est ce que verra +le robot collecteur d'adresses. En revanche, un lecteur normal passant +par un navigateur verra ceci : +
++Mon adresse : <a href="mailto:jean-paul.sartre@ens.fr">jean-paul.sartre@ens.fr</a> ++
Vous pouvez utiliser ce système avec d'autres protocoles, celui des
+news (news:
) pour que le navigateur affiche (s'il en est
+capable) le message dont vous avez donné le message-ID, ou le FTP...
+
+Vous avez fini de taper votre première page XHTML. Vous vous êtes bien +relu. Il vous reste une dernière étape : passer cette page au +validateur XHTML. Il vous permettra de voir si vous avez bien refermé +toutes vos balises dans l'ordre qu'il faut, par exemple. +
++Il vous suffit d'aller dire coucou au validateur du W3C et de lui indiquer +l'URL de votre page XHTML, ou encore de lui indiquer le chemin du +fichier sur votre disque dur. Vous saurez tout de suite si votre code +est bon ou s'il reste quelques corrections à faire... +
++Si le code de votre page n'est pas correct, le validateur vous +l'indiquera, en vous précisant quelles sont les lignes incriminées dans +votre fichier XHTML, et la nature de l'erreur. En suivant ces +instructions, vous pourrez corriger votre code. +
++Quand vous aurez une page impeccable, ce qui est loin d'être difficile à +obtenir (et qui est très gratifiant, vous verrez), le validateur vous +permettra d'insérer dans votre page le code suivant : +
++<p> +<a href="http://validator.w3.org/check?uri=referer"> + <img src="http://www.w3.org/Icons/valid-xhtml10" + alt="Valid XHTML 1.0!" height="31" width="88" /></a> +</p> ++
Il peut être très utile de suivre ce conseil. Vous aurez ainsi dans
+votre page le logo suivant :
+
+
+
+ce qui présente les avantages suivants : +
++Nous vous rappelons que les respect des normes n'est pas seulement une +affaire de pédanterie, mais avant tout d'accessibilité. Pour en savoir +plus sur le calvaire des pages non conformes à la norme pour les +personnes handicapées, vous pouvez aller voir le site AccessiWeb. +
+ ++Les feuilles de style permettent de décrire la présentation d'une page web. +Elles remplacent avantageusement l'ancienne méthode, qui consistait à mettre +des balises avec des attributs partout dans le texte. Elles permettent de +centraliser toute la mise en forme, et donc d'avoir à peu de frais une mise +en page cohérente. De plus, les possibilité sont beaucoup plus +intéressantes. +
+
+Le principe d'une feuille de style est d'associer certains paramètres à
+certaines balises. Vous avez probablement remarqué que votre navigateur
+considère, par exemple, que tous les éléments <strong>
+doivent être représentés en gras. C'est précisément le principe des feuilles
+de style : d'une seule ligne, vous pouvez demander à ce que tous les
+éléments <em>
soient en rouge. Pour vous donner une idée,
+la feuille de style de la présente page demande à ce que les éléments
+<pre>
soient représentés avec un fond de cet inimitable
+lemmonchiffon2.
+
+Il est possible d'être plus sélectif que ça. Le HTML fournit deux éléments,
+<div>
au niveau bloc et <span>
au
+niveau inline, qui n'ont aucune présentation particulière, et servent
+précisément à se voir attacher un style.
+
+Il est possible d'inclure une feuille de style de deux manières différentes
+dans un document. La première possibilité, qui est probablement la plus
+simple, est de mettre la feuille de style directement dans l'entête du
+document, entre une paire de balises <style
+type="text/css">
...</style>
.
+
+La seconde possibilité est de mettre le code dans un fichier séparé, souvent
+nommé en .css
, et de l'inclure avec dans l'entête une balise de
+la forme <link rel="stylesheet" type="text/css"
+href="fichier.css">
.
+
+Ces deux méthodes peuvent d'ailleurs être utilisées ensemble dans le même +document. Dans ces conditions, si elles se contredisent, c'est la feuille +écrite directement dans le document qui a raison. Le mieux est en général +d'avoir une feuille de style dans un fichier séparé pour donner la +présentation de tout un site, et de rajouter dans chaque page ce qui est +nécessaire uniquement là. +
+
+Une feuille de style s'écrit dans le langage appelé CSS, pour
+Cascading Stylesheet. Le terme cascading souligne une
+propriété importante du langage : les caractéristiques de présentations se
+propagent « en cascade » d'un élément à ses fils. Par exemple, si un élément
+de type <a>
, dont on ne sait rien de la police, se trouve
+dans un élément de type <em>
, qui est en italique, alors
+le <a>
va hériter de son père
+<em>
le fait d'être en italique.
+
+Le langage CSS est très simple, et le mieux est de commencer par un exemple.
+Voici comment on décrirait, si ce n'était déjà fait, que les éléments de
+type <strong>
doivent être en gras :
+
+strong { font-weight: bold; } ++
+C'est limpide, n'est-ce pas ? +
++Le point-virgule à la fin servirait à séparer d'une autre caractéristique +donnée, comme par exemple : +
++strong { + font-weight: bold; + color: red; +} ++
+Le point-virgule final n'est pas indispensable, mais le mettre tout de suite +évite de l'oublier plus tard. +
+
+Il est possible de mettre des commentaires presque n'importe où dans une
+feuille de style CSS en les encadrant de /*
et */
,
+comme dans le langage C.
+
+Nous allons maintenant voir les deux grandes parties de CSS : les
+sélecteurs, qui décident à quel(s) élément(s) une règle s'applique
+(le strong
de l'exemple), et les déclarations, qui
+indiquent l'apparence que ces éléments doivent prendre (le
+font-weight: bold
de l'exemple). Ces deux parties sont tout à
+fait indépendantes, et il est possible de les lire dans un ordre quelconque.
+
+L'essentiel des sélecteurs sera formé de noms d'éléments, ce qui désigne +tous, ou certains éléments de ce type. +
++Il est possible de mettre plusieurs sélecteurs par règle, en les séparant +par une virgule. La règle s'applique alors à tous les sélecteurs, comme si +plusieurs règles avaient été écrites. +
+
+Un même élément du document peut recevoir différentes mises en forme par
+différentes règles. En général, les règles sont simplement combinées : par
+exemple du bleu parce que c'est un lien, et du gras parce que c'est dans un
+<strong>
, ça donne du bleu gras.
+
+Si les règles portent sur le même attribut (par exemple la couleur), c'est +la règle la plus précise qui l'emporte. Ainsi, on peut définir l'apparence +de tous les liens de la page, mais revenir ensuite pour définir l'apparence +des liens de la barre de navigation. +
++Considérons par exemple : +
++table p { par-indent: 0; } ++
+Ce sélecteur s'applique à tous les éléments de type p
contenus
+dans un élément de type table
, et seulement ceux-là. Dans cet
+exemple, p
et table
auraient pu être des
+sélecteurs plus compliqués (mais vous ne savez pas encore en faire). Et il
+est également possible de mettre trois sélecteurs à la suite ou plus.
+
+Ce genre de règle s'applique à n'importe quel degré de descendance : dans
+l'exemple, le p
ne sera pas directement dans le
+table
, il y aura certainement un tr
et un
+td
entre les deux. Ça n'a pas d'importance.
+
+Un sélecteur de la forme sélecteur1 >
+sélecteur2
, au contraire, ne désigne que le cas où
+sélecteur2
est directement dans
+sélecteur1
, ce qui peut être utile dans quelque
+chose de la forme :
+
+ul > li { margin-left: 1em; } ++
+si on n'a pas envie que la règle s'applique à un li
qui serait
+contenu dans une sous-liste de type ol
.
+
+En HTML, n'importe quel élément peut être affublé d'un attribut
+class
, qui n'a aucune signification, et sert uniquement à faire
+le lien avec une feuille de style.
+
+Ainsi, il peut me prendre l'envie, quand un paragraphe est un exemple,
+d'écrire non pas <p>
tout court, mais <p
+class="exemple">
. Si je ne fais rien de plus, ça ne servira à
+rien. Mais je peux ajouter une règle CSS comme par exemple :
+
+p.exemple { font-family: sans-serif; } ++
+et alors tous ces paragraphes apparaîtront dans une police différente. +
+
+L'attribut class
s'utilise souvent en conjonction avec les
+éléments div
et span
, qui deviennent ainsi des
+balises à tout faire. Il peut être plus pratique de travailler au niveau
+abstrait de div
. Supposons que je veuille mettre un filet bleu
+à gauche de mes exemples. Je peux écrire :
+
+p.exemple { border-left: solid blue 2px; } ++
+Mais si je fais ainsi, je ne peux pas mettre un exemple de plusieurs +paragraphes, parce que le filet bleu serait interrompu dans l'espace entre +les paragraphes. Je ne peux pas non plus mettre une énumération ou une table +dans l'exemple. Il vaut mieux alors écrire : +
++div.exemple { border-left: solid blue 2px; } +... +<div class="exemple"> +<p>Ici mon exemple.</p> +<p>Il peut faire plusieurs paragraphes</p> +</div> ++
+Je peux également utiliser .exemple
tout court comme sélecteur,
+ce qui s'applique alors à tous les éléments de classe exemple, quel que soit
+leur type, et me laisse ainsi la liberté d'écrire <p
+class="exemple">
dans les cas simples, et de recourir à un
+div
dans les cas plus compliqués.
+
+Les classes peuvent bien sûr être utilisée avec des sélecteurs +hiérarchiques. +
++HTML et CSS ont un mécanisme similaire aux classes, mais ad-hoc, pour faire +le lien avec certaines fonctionnalités spécifiques, et en particulier les +liens. +
+
+Le HTML a deux utilisation pour l'élément <a>
: faire un
+lien et poser une ancre (cette dernière utilisation est obsolescente, mais
+encore indispensable pour compatiblité). S'il est légitime de changer
+l'apparence d'un lien (le soulignement usuel est quand même très laid), il
+n'est probablement pas souhaitable que les ancres apparaissent de la même
+manière. Le sélecteur a:link
désigne un lien par opposition à
+une ancre.
+
+Vous avez sans doute remarqué que certains navigateurs affichent de couleur
+différente les liens déjà visités. CSS permet de changer ça en utilisant un
+sélecteur a:visited
. Attention, :visited
s'utilise
+à la place de :link
: un lien déjà visité n'est pas
+reconnu par a:link
.
+
+Dans le même genre d'idée, il existe la pseudo-classe :hover
,
+qui désigne un élément (souvent un lien, mais ce n'est pas indispensable)
+que l'utilisateur « touche », avec le pointeur de la souris par exemple (la
+signification exacte dépend des navigateurs). On trouve également les
+pseudo-classes :focus
et :active
, qui ont des
+significations proches (pour un navigateur à la souris habituel,
+:hover
dit que le curseur est dessus, :active
que
+l'utilisateur est en train de cliquer, et :focus
désigne le
+fait d'être actif pour le clavier).
+
+Les pseudo-classes se combinent. Ainsi, pour changer le fond d'un lien quand +le pointeur passe dessus, on écrira : +
++a:link:hover, a:visited:hover { background-color: yellow; } ++
+Il existe encore quelques autres pseudo-classes, comme :lang
,
+mais elles sont souvent mal reconnues par les navigateurs, et moins utiles.
+
+Les déclarations sont toujours de la forme nom:
+valeur;
(le point-virgule final peut être omis), et
+permettent de changer énormément d'aspects de la présentation d'un élément.
+
+Dans beaucoup de cas, la valeur peut être inherit
, ce qui
+revient à ne pas spécifier de valeur et utiliser celle de l'élément parent
+(ainsi, un lien est de la même police que le paragraphe qui l'englobe).
+Cette valeur est souvent le défaut, et il n'est utile de la préciser que
+pour annuler une autre déclaration (ce qui peut se voir comme une mauvaise
+conception, mais vous êtes libres).
+
+La première chose qu'on veut apprendre à changer, c'est évidemment
+l'apparence des caractères : la police et la couleur, ainsi que la taille.
+L'utilisation de CSS fait complètement disparaître l'usage de l'antique
+élément <font>
. Voici l'essentiel des déclarations de
+police :
+
font-style: italic
, oblique
ou
+ normal
.font-variant: small-caps
pour les petites capitales, ou
+ normal
.font-weight: bold
pour le gras, ou
+normal
.font-family: famille
pour choisir la famille (la
+ police proprement dite) ; les noms comportant des espaces doivent être mis
+ entre guillemets. Comme tout le monde n'a pas toutes les polices du monde,
+ il est possible d'en indiquer plusieurs, séparées par des virgules. Le CSS
+ définit des familles génériques, serif
,
+ sans-serif
, monospace
, cursive
et
+ fantasy
, il est conseillé de toujours mettre une famille
+ générique en dernier recours.
+Pour changer la taille de la police, c'est font-size
qu'il faut
+utiliser. On peut lui donner une valeur descriptive (xx-small
,
+x-small
, small
, medium
,
+large
, x-large
, xx-large
), une valeur
+relative à la taille actuelle (larger
, smaller
ou
+un pourcentage), ou une longueur fixée (voir plus bas pour les unités
+possibles). Ce dernier choix est à éviter car il prive l'utilisateur de sa
+liberté de choix sur la taille des polices (quelqu'un qui a de bons yeux
+peut préférer des polices petites pour tout avoir sur une page, quelqu'un
+qui a des problèmes de vue voudra de gros caractères).
+
+Il est possible de spécifier plusieurs propriétés d'un coup avec
+font:
. Il faut alors mettre d'éventuels style, variante et
+graisse, puis une taille, puis une famille.
+
+La couleur se règle avec color:
. Une couleur peut s'indiquer
+de plusieurs manières :
+
#rrggbb
, où rr
, gg
et
+ bb
sont des nombres hexadécimaux à deux chiffres, de 00 à FF,
+ pour le rouge, le vert et le bleu.rgb(r,g,b)
, où
+ r, g et b sont soit des pourcentages soit
+ des valeurs entières de 0 à255, pour le rouge, le vert et le bleu.+Un bloc (un paragraphe, un titre, une table) est entouré de trois zones : de +l'intérieur vers l'extérieur, du remplissage (padding), une bordure +(souvent fine ou absente) et une marge. Les marges d'objets voisins +fusionnent, mais ça s'arrête à la bordure. Quand on définit une couleur de +fond, celle-ci s'étend dans le remplissage jusqu'à la bordure. +
+
+Dans le cas des marges, seule leur étendue peut être définie. On utilise
+pour ça margin-top
, margin-right
,
+margin-bottom
et margin-left
. On peut indiquer les
+quatre d'un coup avec margin
, en les indiquant dans cet ordre
+(dans le sens des aiguilles d'une montre, en partant de midi). Si on ne met
+que deux longueurs elles définissent les marges haute et basse d'une part et
+gauche et droite d'autre part, et si on n'en met qu'une, les quatre marges
+sont égales.
+
+Les longueurs sont indiquées par des nombres avec des unités. Les unités
+possibles sont in
(pouce), cm
, mm
,
+pt
(point, 1/72 pouce), pc
(pica, 12 points). On a
+également em
et ex
, qui dépendent de la police
+active, et surtout de sa taille ; l'em est plutôt à utiliser pour les
+longueurs horizontales, l'ex pour les longueurs verticales ; ce sont de
+bonnes unités pour les espaces entre les lignes de texte par exemple. On a
+pour finir px
, qui désigne un pixel à l'écran.
+
+Les dimensions des marges et du remplissage peuvent être également un
+pourcentage, relatif au bloc qui emboîte celui dont on définit les
+caractéristiques (souvent la page elle-même, mais pas toujours). Enfin, on
+peut indiquer auto
pour les marges, pour qu'elles s'ajustent au
+mieux.
+
+Le remplissage se règle exactement comme les marges, à ceci près qu'il faut
+mettre padding-
à la place de margin-
.
+
+Pour la bordure, on a trois caractéristiques qu'il est possible de régler,
+width
(l'épaisseur), color
et style
+(les styles possibles sont none
, hidden
,
+dotted
, dashed
, solid
,
+double
, groove
, ridge
,
+inset
et outset
, essayez-les pour voir ce qu'ils
+font), ce qui donne 12 propriétés, de la forme
+border-côté-caractéristique
(par exemple
+border-left-color
).
+
+On a également les raccourcis border-côté
, qui
+permettent de définir tout ou partie des trois caractéristiques d'un coup,
+et border
tout court qui définit une bordure identique pour les
+quatre côtés d'un coup. Il est d'ailleurs souvent préférable d'utiliser
+border
tout court ; en particulier, pour un effet de relief, il
+vaut mieux utiliser les styles adaptés que changer manuellement les couleurs
+des différents côtés.
+
+Maintenant, le fond. Il est possible de choisir une couleur unie avec
+background-color
. La valeur transparent
est
+également possible, et parle d'elle-même. On peut également mettre une image
+de fond avec background-image:
+url(http://some.where/image.png
(il est bien sûr possible
+de mettre un chemin relatif) ; la valeur none
permet d'enlever
+une image déjà présente. On peut contrôler la position de l'image, avec
+background-repeat
, qui peut prendre les valeurs
+repeat
, repeat-x
, repeat-y
ou
+no-repeat
, pour choisir si l'image se répète ou pas,
+background-position
, qui prend deux longueurs ou pourcentages,
+et enfin background-attachment
, qui vaut scroll
ou
+fixed
(l'image défile avec la page ou pas).
+
+Le raccourci background
permet de fixer tout ou partie de ces
+caractéristiques d'un coup. Exemple :
+
+body { background: rgb(95%,95%,70%) url(poissons.png) no-repeat; } ++
+À suivre... +
+ ++Vous trouverez ici une introduction aux différents langages servant à +écrire une page Web : le XHTML, bien sûr, mais aussi les feuilles de style +(CSS). +
++Si vous êtes pressé, vous pouvez aller directement lire notre Tutoriel XHTML. +
++Le XHTML (eXtended HyperText Mark-up Language) est le +langage des pages Web. Il succède au HTML, créé en 1992, et est conforme +aux normes du XML (eXtensible Mark-up Language). Son +développement actuel est l'œuvre du W3C, un consortium regroupant les principaux +acteurs du Web (Microsoft, AOL, Opera, IBM, Apple ou encore +MacroMedia). À l'heure actuelle, nous en sommes à XHTML 1.0. +
++La structure de base du XHTML, ce sont les balises +(tags en anglais) qui définissent les éléments de +la page Web qu'ils entourent. Voici un exemple de balise : +
+<title>Les chevaliers-paysans du lac de Paladru</title>+
+<title> est la balise qui définit le titre d'une la page +Web. Notez que les balises vont par paire, avec une ouvrante +(<title>) et une fermante, différenciée par un / +(</title>). Autre exemple :
+<strong>Important</strong> : votre tiers provisionnel est dû pour le <em>15 mai</em>.+
+La balise <strong> indique que l'élément qu'elle renferme doit +être renforcé. La plupart des navigateurs rendent +ceci en mettant le(s) mot(s) en gras. La balise <em> (pour emphasize) indique que l'élément doit être mis en +valeur, ce qui est généralement traduit par des +italiques. +
++Vous pouvez écrire du XHTML avec un simple éditeur de texte comme NEdit, ou avec un +éditeur WYSIWYG (ce +que vous voyez à l'écran est ce qui sera affiché sur le Web) comme +Composer, l'éditeur Web de Mozilla. C'est un langage facile à apprendre, +qui ne nécessite aucune connaissance préalable en +programmation. Évidemment, plus vous voulez faire des choses +tape-à-l'œil, plus c'est compliqué. +
++L'un des grands problèmes de la création Web est que vous n'avez aucun +contrôle sur les outils qu'utiliseront vos visiteurs. Ils peuvent +utiliser Internet Explorer comme Mozilla ou Opera ; Windows comme +Mac OS, Unix/Linux ou BeOS ; une bête de course comme un vieux PC +asthmatique avec écran pourri ; une connexion par modem 56Ko comme une +connexion ADSL 1 Go. C'est ce qu'on appelle +l'interopérabilité : on doit pouvoir lire votre page dans +des conditions correctes indépendamment de son matériel et de ses +logiciels. +
++Et n'oubliez pas aussi que vos utilisateurs peuvent être handicapés +(incapables d'utiliser une souris ou un clavier par exemple), +malvoyants ou aveugles, ou même simplement daltoniens (un peu moins de +10% de la population masculine). C'est l'accessibilité : un +handicapé doit pouvoir utiliser votre site comme tout le monde. +
++Enfin, méditez cette phrase de Tim Berners-Lee, l'inventeur du Web, parue +dans Technology Review en 1996 : +
++++Quiconque appose sur une page du web un logo du type : « Cette page +est optimisée pour le navigateur X » est quelqu'un qui semble +souhaiter revenir à l'époque préhistorique d'avant le web, lorsque +l'on avait très peu de chances de pouvoir lire un document écrit sur +un autre ordinateur, un autre traitement de texte ou un autre réseau. +
+
+Le principe de base du XHTML est qu'il se préoccupe du contenu +et non du rendu visuel. Si vous avez fait un peu de LaTeX, cette manière de +travailler devrait vous être familière. Les « styles » de Word s'en +approchent également. Vous définissez des titres, des éléments +importants, des citations, des liens. Tout le côté décoratif (savoir si +la police de caractères fera telle ou telle taille, si votre texte sera +en rouge ou bleu, etc.) est dévolu aux feuilles de style. +
++CSS est le langage des feuilles de style. Ciel, un autre langage à +apprendre ! Rassurez-vous, CSS est complémentaire du XHTML. CSS1 est +apparu en 1996. CSS2, qui prend le relais, est lui apparu en 1998. À +l'heure actuelle, c'est CSS2.1 +(septembre 2003) qui fait autorité. +
++Les feuilles de style sont une manière simple de prendre en +charge le côté esthétique d'une page Web. Tandis que le XHTML ne +s'occupe que de la structure syntaxique de la page, CSS ajoute à votre +gré couleurs, fontes exotiques, effets de texte. Cette dissociation +des rôles permet de ne pas pénaliser les vieux navigateurs, ou les +navigateurs en mode texte (comme Lynx ou W3M), ou encore ceux qui +utilisent des médias différents (assistant personnel, téléphone +portable, ordinateur avec synthétiseur vocal). Elle vous permet aussi +de changer radicalement l'esthétique de votre page en modifiant un +seul fichier. Consultez par exemple le CSS Zen Garden pour voir ce +qu'on peut faire. +
+Plusieurs solutions existent pour apprendre à écrire une page Web, +et vous pouvez les mélanger. Dans l'ordre d'apprentissage, nous vous +conseillons de :
+Ctrl-U
. C'est le plus souvent par
+l'imitation d'autres pages qu'on apprend.+Si vous n'avez pas le temps ou l'envie, essayez nos Thèmes : un kit comprenant un fichier-type en +HTML et des feuilles de style déjà toutes faites. Vous pouvez ainsi +avoir un joli site en 2 coups de cuiller à pot. +
+fr.comp.infosystemes.www.auteurs
, très utile notamment si
+vous pataugez un peu avec les feuilles de style.+Vous voulez faire une page Web, mais vous n'avez pas le temps ou pas +envie de consacrer beaucoup de temps à l'apprentissage technique. Ou +alors, vous connaissez un peu de HTML mais vous n'avez pas envie de +chercher un joli design pour vos pages. Nos thèmes sont faits pour +vous! Les seules connaissances techniques pour utiliser les thèmes +sont : +
++Ce que nous appelons un thème, c'est un paquet comprenant 4 +fichiers : +
+.htaccess
), qui gère l'affichage par les vieux
+navigateurs comme Netscape 4 ou Internet Explorer 4.
+Le tout est prêt à l'emploi ou presque — il suffit de
+télécharger les bons fichiers, de les mettre dans votre répertoire
+www/
et d'insérer vos propres informations dans le
+fichier-type (ça, on ne peut pas le faire à votre place). Vous
+obtiendrez ainsi une page jolie (on l'espère !) et respectueuse des
+standards (CSS 2.1 et HTML 4.01).
+
+Pour l'instant vous pouvez choisir parmi trois thèmes, plus viendront +par la suite. Vous pouvez aussi nous envoyer vos propres thèmes. Les +captures d'écran vous montrent à quoi ressemble chaque thème avec +Mozilla 1.6. +
+Nom du thème | +Couleurs | +Capture d'écran | +Télécharger le thème | +
---|---|---|---|
Iceberg | +bleu, gris, +blanc | +
+
+ iceberg.png
+
+ |
+
+
+ iceberg.zip
+
+ |
+
Océan | +bleu marine, vert | +
+
+ ocean.png
+
+ |
+
+
+ ocean.zip
+
+ |
+
Orange | +orange et bleu clair | ++ orange.png + | +
+
+ orange.zip
+
+ |
+
+Les thèmes ont été testés avec Mozilla 1.6, Firefox 0.8 et Internet +Explorer 6 — le thème simple a bien sûr été testé avec +Netscape 4. Nous espérons qu'ils marchent bien avec tous les +navigateurs, si ce n'était pas le cas, merci de nous prévenir. +
+
+Le thème se présente sous la forme d'une archive au format zip. Il
+faut la décompacter dans votre répertoire www/
. Sous
+Unix, utilisez la commande unzip
:
+
brick ~/www $ unzip orange.zip
+Archive: orange.zip
+ inflating: simple.css
+ inflating: modele.html
+ inflating: .htaccess
+ inflating: orange.css
+
+ +Sous Windows, utilisez par exemple WinZip ou Power Archiver, et sous +Mac OS, MacZip. +
+
+Maintenant, il faut personnaliser les fichiers. Vous n'avez pas besoin
+de toucher aux feuilles de style (les fichiers en .css
),
+mais il faut absolument modifier le fichier-type
+(modele.html
) et le fichier de configuration
+(.htaccess
).
+
.htaccess
+Éditez le fichier, par exemple en utilisant NEdit : +
+brick ~/www $ nedit .htaccess
+
+ +Modifiez ensuite les lignes suivantes suivant les instructions dans le +fichier : +
++# Remplacez ici 'monlogin' par votre propre login +RewriteBase /home/monlogin/ +(...) +# Remplacez ici 'mafeuille.css' par la feuille que vous avez choisie +RewriteRule mafeuille.css simple.css ++
.htaccess
. Relisez les fichiers pour voir si vous ne vous
+êtes pas trompé, sinon renommez le fichier (mv .htaccess
+.htaccess.orig
) et contactez-nous.
+
+D'abord, commençons par renommer le fichier. La page d'accueil
+s'appelle obligatoirement index.html
. Pour les autres
+pages, vous pouvez choisir le nom que vous voulez, du moment qu'il n'y
+a pas d'espaces et que le nom soit évocateur du contenu : si vous
+mettez votre
+TIPE
+en ligne, appelez-le tipe.html
, par exemple. Sous Unix,
+on utilise la commande mv
pour renommer un fichier :
+
brick ~/www $ mv modele.html index.html
+
+ +Le fichier-type a en gros deux parties : +
++La partie « navigation » revêt la forme d'une liste avec des liens +vers les fichiers concernés. Dans le fichier-type, ça ressemble a +ceci : +
++<!-- Barre de navigation --> + +<div id="nav"> +<ul> +<li> <a href="accueil.html" class="actif">accueil</a></li> +<li> <a href="alpha.html">alpha</a></li> +<li> <a href="beta.html">bêta</a></li> +<li> <a href="gamma.html">gamma</a></li> +<li> <a href="delta.html">delta</a></li> +</ul> +</div> + +<!-- Fin barre de navigation --> ++
+Ici, nous indiquons comme ceci les noms de fichiers à
+modifier, et comme cela les titres de vos
+pages. Remplacez les alpha, bêta, etc., par le nom de vos fichiers et
+le titre de vos pages. Pour supprimer un item de la liste, effacez une
+ligne commençant par <li>
. Si vous n'avez qu'une
+seule page en tout et pour tout, vous pouvez effacez tout simplement
+le bloc « barre de navigation ». Pour le récupérer par la suite, il
+vous suffira de copier-coller l'exemple ci-dessus.
+
+Pour la partie du corps du texte, le modèle vous montre comment faire +des paragraphes ou des titres. Vous pouvez effacer tout ça et le +remplacer par votre propre texte. Pour savoir comment mettre en forme +votre texte, parcourez notre tutoriel HTML. +
++Pour être sûr que vous n'avez pas oublié quelque chose dans votre code +HTML, passez la version finale de votre page au validateur du W3C. Il vous dira si +tout est en ordre ou s'il faut encore jeter un petit coup d'œil +au code. +
+ +Dans cette partie, nous parlerons de tout ce qui touche au World Wide Web : navigateurs, langage HTML...
+Un tableau comparatif entre les navigateurs
+lynx
(texte) et Mozilla
.
Vous pouvez aussi consulter notre documentation sur Mozilla qui est un navigateur +très puissant (et fonctionnant aussi bien sous Windows que sur les +systèmes Unix).
+Comment créer une page Web sur le serveur +des élèves de l'ENS.
+Quelques conseils généraux à lire avant +de faire une page Web : sociologie du Web, problèmes de copyright, +etc. +
+Tout savoir sur le HTML, le langage des pages +Web, ainsi que les langages associés : CSS, XHTML, etc. Vous pouvez +directement accéder à notre Tutorial +HTML, conçu pour les débutants.
++Nos thèmes : un kit comprenant un +fichier-type HTML pour le contenu, et des feuilles de style (3 designs +au choix) pour monter rapidement son site Web. +
+Une documentation sur le fichier .htaccess
, qui permet de
+configurer légèrement un serveur Web Apache (celui qui est utilisé
+pour le serveur des élèves) : faire des redirections, gérer les
+erreurs (404, 403...), interdire ou autoriser l'accès à certains
+fichiers, organiser des authentifications par mot de passe, etc.
+Voici les commandes de Lynx, un navigateur en mode
+texte, par définition sans images. Lynx est bien plus rapide que
+Mozilla et s'utilise sans souris. Pour le lancer, tapez lynx
+dans un terminal. Lynx est un
+peu vieilli de nos jours (il ne gère ni les frames ni les tableaux). Si vous
+le pouvez, utilisez w3m
ou links
, deux autres
+navigateurs en mode texte.
+
+Le résultat de la commande est commenté ; la commande correspondante de +Mozilla est indiquée ; j'ai omis de signaler aussi les raccourcis claviers de +Mozilla ; d'autre part, les titres exacts des fenêtres peuvent varier en +fonction de la version utilisée. +
+Fonction | +Lynx | +Mozilla | +
---|---|---|
Lancer le navigateur | +Taper lynx |
+ Cliquer sur l'icône ou taper mozilla |
+
Obtenir une aide en ligne | +H (Help). On en sort en revenant à la page
+précédente (flèche gauche). |
+ + |
Quitter | +q (quit). Lynx demande confirmation. |
+ Sélectionner Exit dans le menu File . |
+
Fonction | +Lynx | +Mozilla | +|
---|---|---|---|
Revenir au lien précédent | +Flèche haut | ++ | |
Aller au prochain lien | +Flèche bas | ++ | |
Suivre le lien choisi | +Return | +Cliquer sur le lien | +|
Revenir au document précédent | +Flèche gauche | +Icône Back |
+ |
Aller au document suivant | +Flèche droite | +Icône Forward |
+ |
Aller à une adresse précise | +G (Goto) Taper l'adresse après Edit this
+document's URL qui apparaît en bas de l'écran. |
+ Taper l'adresse dans le cadre Location |
+ + |
Interrompre le transfert en cours | +
+ z
+ |
+ Cliquer sur Stop |
+ |
Revenir à la page principale par défaut. | +M (Main) |
+ Icône Home |
+ |
Historique des pages consultées | +Taper Backspace, et suivre le lien. | +Ouvrir le menu Go , et sélectionner la page. |
+
+Le numéro des pages est indiqué en haut à droite. +
+Fonction | +Lynx | +Mozilla | +
---|---|---|
Page suivante | +
+ +, SPC
+ |
+ Barre de défilement | +
Page précédente | +-, b (back) |
+ |
Descendre d'une demi-page | +) (parenthèse fermante) |
+ |
Remonter d'une demi-page | +( (parenthèse ouvrante) |
+ |
Aller à la première page du document | +
+ ^A
+ |
+ |
Aller à la dernière page du document | +^E (End) |
+
Fonction | +Lynx | +Mozilla | +
---|---|---|
Chercher un mot | +/ ; écrire le mot après Enter a whereis
+query :. Le mot est mis en évidence dans l'ensemble du texte. |
+ Cliquer sur l'icône Find et entrer le mot dans la fenêtre
+de dialogue. Seule sa première occurence apparaît. |
+
Aller à la prochaine occurence du mot recherché | +n (next) |
+ Recliquer sur Find dans la
+fenêtre de dialogue |
+
Fonction | +Lynx | +Mozilla | +
---|---|---|
Ajouter la page courante à ses marques-page | +a . À la question «Save D)ocument or L)ink to
+bookmark file or C)ancel», choisir «d » si l'on veut que ce
+soit le titre du document qui figure dans l'index, ou «l » si l'on
+veut que ce soit l'adresse URL. |
+ Sélectionner Add to Bookmarks dans le menu
+Bookmarks
+ |
+
Voir ses marque-pages | +v (view) |
+ Ouvrir le menu Bookmarks |
+
Ôter un marque-pages | +r (remove) Il faut être sur la page des
+marques-page, donc avoir tapé «v » auparavant). Lynx demande
+confirmation. |
+ Dans la fenêtre Manage Bookmarks , sélectionner le
+marque-page, puis sélectionner Delete dans le menu
+Edit |
+
Sauvegarder le document | +p (print). Choisir une option (sauver chez
+soi : Save to a local file ; envoyer par mail à
+quelqu'un :Mail the file). Quand on sauve le document chez soi,
+Lynx demande de confirmer le nom sous lequel il est sauvé. Quand on l'envoie
+par mail à quelqu'un, il faut taper en entier l'adresse électronique de la
+personne. |
+ Sélectionner Save As dans le menu File ; dans la
+nouvelle fenêtre, choisir le format du document (source, PostScript, texte),
+vérifier sous quel nom et à quel endroit le document va être sauvé (cadre
+Selection ) et cliquer sur OK. |
+
talk
(ou mieux : ytalk
) est une
+conversation directe et simultanée entre deux personnes ou plus.
Titi est sur corvette, et veut bavarder avec Toto qui est sur +drakkar. Il fait sa demande de la façon suivante :
+corvette ~ $ $ ytalk
+toto@drakkar
+
+ De son côté, Toto reçoit le message suivant dans sa +console :
++Message from Talk_Daemon@corvette at 15:15 ... +talk: connection requested by titi@corvette. +talk: respond with: talk titi@corvette ++
+Comme le message l'indique, il faut répondre en tapant dans une
+fenêtre (pas dans la console !) ytalk
+titi@corvette
. Celle-ci se sépare en deux pour permettre la
+conversation:
+
+--------------------------= YTalk version 3.1.1 =---------------------- +Salut, comment ça va ? + + + + + + +--------------------------= titi@corvette.ens.fr =--------------------- +Bien, et toi ? + ++
+Pour mettre fin au programme, il faut que l'un des interlocuteurs se
+déconnecte en tapant ^C
. Quand on tape ESC
+dans la fenêtre du talk, on fait apparaître un menu qui sert entre
+autres à ajouter (ou ôter...) un utilisateur.
+
+La plupart des ordinateurs de l'École fonctionnent sous le système +d'exploitation Solaris, qui est une forme d'Unix. Il existe aussi des +systèmes du même type (« Unixoïdes ») pour PC. La plupart +d'entre eux est désignée sous le nom de GNU/Linux (ou simplement Linux) +mais il en existe d'autres (les systèmes BSD notamment). Pour plus de +détails sur les schismes et autres guerres de religion dans le logiciel +libre, vous pouvez aller voir +la deuxième +partie des pingouins partout, un article de Thomas Pornin +dans le +Hublot. +
+Cette page a pour but de donner une liste (certainement non +exhaustive) de quelques sites permettant de s'informer sur les questions +liées à la compatibilité entre les Unixoïdes pour PC et le matériel +informatique. Le but est de permettre aux élèves voulant installer +« Unix » sur leur machine de vérifier rapidement si leur +matériel est compatible, ou de choisir en connaissance de cause un +matériel avant de l'acheter.
+Certains élèves peuvent vous aider à installer Linux
+sur votre machine. Pour cela, voir
+la
+liste de diffusion linux-install
.
Comme la compatibilité d'un matériel peut varier suivant la distribution +de Linux que l'on utilise, voici d'autres liens vers des pages contenant +des informations plus spécifiques sur la compatibilité du matérial avec +les principales distributions de Linux :
+ +Voici des liens vers la page principale des sites Web de quelques +distributions de Linux :
+ +Il existe d'autres systèmes de type Unix pour PC, essentiellement les +systèmes BSD, qui sont eux-aussi à base de logiciels libres, mais +distribués sous une autre licence que la GNU Public License. Il s'agit +vraiment d'autres systèmes dans la mesure où le noyau est différent de +celui de Linux. Toutefois, il faut noter que ces systèmes sont un peu +plus difficiles à installer que Linux, et reconnaissent probablement un +peu moins de matériels.
+Cette page recense des sites à l'École ou ailleurs, pour apprendre +à servir d'Unix et des moyens informatiques. Merci de signaler les +liens qui ne fonctionnent plus... et envoyez-nous l'adresse d'autres +sites qui vous plaisent !
+make
+ CVS
est un logiciel Unix pour gérer différentes versions
+de beaucoup de fichiers produits éventuellement par de multiples
+utilisateurs.
+Attention, ce logiciel est assez ancien et assez peu utilisé de nos jours. +Subversion en est un remplaçant moderne. +
+
+Les tuteurs informatique ont utilisé CVS
pour gérer ce site
+par le passé. Ils utilisent à présent git.
+
+Supposons par exemple que vous conceviez un mémoire de maîtrise en +collaboration avec un camarade, ou encore que vous écriviez un programme +informatique en collaboration avec une équipe de développeurs. Plusieurs +scénarii-catastrophes peuvent être envisagés, et vous pouvez être sûr +qu'au moins l'un d'entre eux se réalisera tôt ou tard : +
++L'idéal, pour éviter ces problèmes, serait de pouvoir concilier deux +exigences apparemment contradictoires : +
++CVS réunit ces deux avantages, en respectant les principes +suivants : +
++Pour vous initier à CVS, nous allons successivement vous présenter +comment mettre un projet sous CVS, puis comment travailler au quotidien +sous CVS. +
++Pour mettre des projets sous CVS, il faut procéder en deux temps : +
++Commençons par créer un répertoire de dépôt, c'est-à-dire un répertoire +où CVS stocke toutes les versions et leurs +modifications. Rassurez-vous : CVS investit toute son ingéniosité +pour réduire au maximum l'espace disque utilisé, en ne retenant que +les modifications, au lieu de recopier à chaque fois l'intégralité +des fichiers d'un projet. +
+
+Pour cela, il faut d'abord créer matériellement ce répertoire, par
+exemple $HOME/cvs
, puis créer la variable d'environnement
+CVSROOT :
+
bireme ~ $ mkdir $HOME/cvs +bireme ~ $ CVSROOT="$HOME/cvs" +bireme ~ $ export CVSROOT ++
+Mais attention ! dans ce cas, la variable CVSROOT disparaîtra quand
+vous vous déloguerez ou fermerez le terminal courant. Aussi faut-il
+écrire dans votre fichier .profile
(au moins dans le cas de la
+configuration des machines de l'ENS ; sur une machine personnelle ça peut
+être différent) :
+
+CVSROOT="$HOME/cvs"; export CVSROOT ++
+Une fois que ce répertoire existe, il faut « faire les +présentations » avec CVS. Tapez : +
+bireme ~ $ cd cvs +bireme ~/cvs $ cvs init ++
+Maintenant, vous avez un répertoire de dépôt prêt à recevoir et à +stocker les différents projets. Il ne reste plus qu'à le remplir ! +
++Plusieurs fois, cvs ouvrira un éditeur de texte en vous +demandant de commenter ce que vous êtes en train de +faire. Commentez vos modifications d'une avec un peu de +précision : évitez par exemple d'écrire simplement +« modifications diverses », mais plutôt « orthographe, +typographie, paragraphe sur X ou Y, fontion Z ou T, +etc. » L'objectif est qu'un autre contributeur (ou vous-même à une +date ultérieure) puisse ne lire que ce commentaire et savoir la +nature de vos modifications. +
+
+Supposons que vous soyez en train de concevoir un projet nommé
+« turing-test », dont tous les fichiers sont réunis dans le
+répertoire $HOME/programmation/turing-test
.
+
+Tapez : +
+bireme ~ $ cd programmation/turing-test +bireme ~/programmation/turing-test $ cvs import turing votre_nom version0 ++
+Ainsi est créé un répertoire $HOME/cvs/turing
+contenant des fichiers correspondant à ceux du répertoire
+$HOME/programmation/turing-test
.
+
+La mention votre_nom
vous désigne ; vous pouvez mettre
+votre login, ou autre chose si vous préférez.
+
+Quant à la mention version0
, il s'agit juste d'un nom pour
+la version initiale : vous pouvez tout aussi bien mettre
+start
, debut
, etc. Seule contrainte : le
+premier caractère doit être une lettre.
+
+Maintenant que vous avez créé votre projet sous CVS, vous pouvez vous +créer un répertoire de travail. +
+bireme ~ $ mkdir rep-travail +bireme ~ $ cd rep-travail +bireme ~/rep-travail $ cvs checkout turing ++
+La commande cvs checkout projet
crée un
+répertoire de travail pour le projet indiqué. Vous pouvez en
+créer autant que vous voulez (si vous en avez vraiment
+l'utilité...). En particulier, plusieurs utilisateurs différents peuvent
+en créer : c'est précisément ce qui fait l'intérêt de CVS.
+
+Avant de modifier les fichiers mis sous CVS, vous devrez à chaque fois +les mettre à jour, ce qui vous permet de partir de versions récentes de +ces fichiers. Pour mettre à jour votre répertoire de travail, +tapez : +
+bireme ~/turing-test $ cvs update turing
+
+ +Vous serez alors sûr d'avoir des fichiers à jour. +
++Vous pouvez aussi ne mettre à jour qu'un fichier, ou une liste de +fichiers : +
+bireme ~/turing-test $ cvs update fichier1 fichier2 etc
+
+ +Vous pouvez encore indiquer en ligne de commande quel répertoire mettre +à jour : +
+bireme ~/turing-test $ cvs update -d ~/programmation/turing-test
+
+ +Cette dernière commande peut être intégrée à un script, ce qui est très +pratique si vous voulez que les modifications soient prises en compte à +plusieurs endroits différents (par exemple, dans votre répertoire de +travail et sur votre page web, si vous avez mis votre page web +sous CVS). +
+
+Un projet est rarement fixé dès sa première version ; aussi des
+fichiers peuvent-ils s'ajouter aux fichiers intégrés à l'origine (avec
+la commande cvs import
), d'autres en être retirés.
+
+Pour ajouter des fichiers, la façon de s'y prendre dépend de la nature +du fichier en question. En effet, si le fichier est un fichier binaire, +il ne sert à rien que CVS le lise ligne à ligne à chaque partage de +modifications pour vérifier s'il a changé ; tandis que s'il s'agit +d'un fichier texte, CVS est là pour ça. +
++Par conséquent, si c'est un fichier texte (un texte +simple, un script, le code source d'un programme, un fichier TeX, etc.), +tapez : +
+bireme ~/turing-test $ cvs add fichier1 fichier2 etc
+
+ +En revanche, si vous voulez ajouter un fichier binaire +(un fichier exécutable, un document PS, PDF, une image JPEG, PNG, etc.), +tapez : +
+bireme ~/turing-test $ cvs add -kb fichier1 fichier2 etc
+
+ +Vous pouvez vérifier le statut des fichiers (binaires +ou non) avec la commande : +
+bireme ~/turing-test $ cvs status fichier
+
+ +Lisez le champ « Sticky Options ». Si sa valeur est +« (none) », c'est que votre fichier n'est pas déclaré comme +binaire ; s'il vaut « -kb », c'est qu'il l'est. +
++Il arrive parfois que l'on oublie de déclarer comme binaires certains +fichiers, notamment lors de l'enregistrement du projet dans le +répertoire de dépôt CVS. Il n'est pas trop tard pour se +rattraper : +
+bireme ~/turing-test $ cvs update -kb fichier1 fichier2 etc
+
+ +Ce qui équivaut à la succession de commandes suivante : +
+bireme ~/turing-test $ cvs admin -kb fichier1 fichier2 etc+
+bireme ~/turing-test $ cvs update fichier1 fichier2 etc +
+Pour retirer des fichiers, utilisez la commande : +
+bireme ~/turing-test $ cvs remove fichier1 fichier2 etc
+
+ +Quand vous avez terminé vos modifications et que vous estimez que le +monde est prêt à les recevoir, partagez-les : +
+bireme ~/turing-test $ cvs commit
+
+ +Les modifications seront alors enregistrées dans le répertoire de dépôt. +
++Vous pouvez aussi ne partager qu'un fichier, ou une liste de +fichiers : +
+bireme ~/turing-test $ cvs commit fichier1 fichier2 etc
+
+ +Quand vous partagez vos modifications, un éditeur de texte s'ouvre et +vous demande de les commenter. Vous n'êtes pas obligé d'être bavard, +mais soyez relativement précis. +
+
+Si vous ne contribuez qu'occasionnellement à tel ou tel projet, vous
+pouvez vouloir ne pas conserver en permanence une version d'un projet
+donné dans votre répertoire de travail. Pour vous en débarrasser, vous
+avez bien sûr la possibilité d'effacer les fichiers d'une manière
+« traditionnelle », au moyen de la commande
+rm
. Mais CVS propose un outil plus puissant :
+
bireme ~/turing-test $ cvs release -d turing
+
+ +Cette commande vérifie que vous avez bien partagé toutes vos +modifications avant d'effacer les fichiers de votre répertoire de +travail. Ceci vous épargne bien des migraines ! +
++Si vous ne voulez pas effacer vos fichiers, mais simplement +vérifier qu'aucun fichier n'a été modifié sans être +partagé, tapez simplement : +
+bireme ~/turing-test $ cvs release turing
+
+
+Cette commande annule le cvs checkout
.
+
+CVS garde l'historique de toutes les modifications. Si vous voulez voir +l'historique complet, tapez : +
+bireme ~/turing-test $ cvs log
+
+ +Vous pouvez aussi ne consulter l'historique que d'un fichier, ou d'une +liste de fichiers : +
+bireme ~/turing-test $ cvs log fichier1 fichier2 etc
+
+ +Devant vos yeux ébahis s'affichera alors la liste de toutes les versions +de ces fichiers, accompagnées des commentaires déposés par les +contributeurs. +
++Vous voulez savoir précisément en quoi telle version d'un fichier +diffère de telle autre ; pour cela, tapez : +
+bireme ~/turing-test $ cvs diff -r 1.2 fichier
+
+ +Ainsi, vous pourrez comparer l'état actuel du fichier avec sa +version 1.2. Mais vous pouvez aussi comparer deux versions +quelconques : +
+bireme ~/turing-test $ cvs diff -r 1.1 -r 1.2 fichier
+
+ +Oups ! Vous avez fait une erreur, et dans votre précipitation, vous +l'avez déjà partagée. Heureusement, CVS permet de revenir à des versions +antérieures. Tapez : +
+bireme ~/turing-test $ cvs update -A fichier +bireme ~/turing-test $ rm fichier +bireme ~/turing-test $ cvs update -p -r1.1 fichier > fichier +bireme ~/turing-test $ cvs commit fichier ++
make
+
+Imaginons la situation suivante : vous avez un site web sur lequel
+vous voulez travailler à l'aide de CVS. Vous avez donc un répertoire de
+dépôt (par exemple ~/cvs/www
) et un répertoire de travail
+(par exemple ~/cvs-travail/www
). Mais vous voulez aussi
+mettre à jour le site en lui-même lorsque vous partagez des
+modifications, et ce site est dans le répertoire ~/www
. Ce
+répertoire ne peut pas être le même que pour le dépôt, car celui-ci
+doit lui être exclusivement consacré ; et il ne peut pas non plus
+être votre répertoire de travail, car la moindre modification (et
+surtout la moindre erreur) serait immédiatement publiée...
+
+Vous devrez donc taper, à chaque fois que vous voudrez partager vos +modifications, les lignes suivantes : +
+bireme ~/cvs-travail/www $ cvs commit +bireme ~/cvs-travail/www $ cvs update -d ~/www ++
+Le problème, c'est que cette séquence de commandes sera toujours la même
+et que vous risquerez toujours d'en oublier une sur les deux... Aussi
+avez-vous la possibilité d'utiliser l'utilitaire make
,
+outil très puissant, notamment dans ces circonstances (il est très
+utilisé par les programmeurs).
+
+Commencez donc par éditer un fichier Makefile dans le répertoire souche +de votre projet dans le répertoire de travail ; dans notre exemple, +il s'agit de ~/cvs-travail/www. Dans ce fichier, écrivez : +
++install: + cvs commit + cvs update -d /users/ma_promo/ma_section/mon_login/www ++
+Ensuite, ajoutez ce fichier Makefile au CVS : +
+bireme ~/cvs-travail/www $ cvs add Makefile
+
+
+Et à partir de maintenant, au lieu de taper cvs commit
+pour partager vos modifications, vous taperez simplement :
+
bireme ~/cvs-travail/www $ make install
+
+
+et make
se chargera de tout à votre place !
+
+Vous êtes maintenant prêt à utiliser CVS. Sa puissance est telle que cet +outil est devenu l'un des standards incontournables. Profitez-en +bien ! +
+
+Vous pouvez accéder à la petite documentation rédigée par David Monniaux
+(au format .ps.gz
).
+
+La documentation officielle se trouve là-bas. +
+ +Gaim (conçu à l'origine +pour le réseau AIM et l'environnement Gnome, d'où le nom) est l'un des +deux clients de messagerie +instantanée de l'ENS (l'autre est Tkabber). Il permet de se +connecter à la plupart des réseaux majeurs : AIM, ICQ, MSN, Yahoo, +IRC, mais aussi Jabber, Gadu-Gadu et Zephyr. C'est un logiciel libre +qui tourne sous Windows, Linux, MacOS X et BSD. Il est très facile à +utiliser. +
+
+Pour lancer Gaim, tapez simplement gaim
. Si vous ne
+l'avez jamais utilisé auparavant, il faut créer un compte avant de
+pouvoir utiliser véritablement Gaim.
+
+Si vous avez déjà utilisé Gaim, vous verrez un écran semblable à +celui-ci. Un menu déroulant vous permet de choisir entre vos +différentes identités. Ici, on voit à l'écran un compte pour Jabber. +
+
+Cliquez sur Accounts
puis sur « Add ». Dans la section
+Login Options
, commencez par choisir « Protocols ». Vous
+avez le choix entre TOC (protocole d'AIM, utilisez plutôt AIM/ICQ),
+AIM/ICQ, Yahoo, MSN, IRC, Jabber, Napster, Zephyr et
+Gadu-Gadu. Ensuite, renseignez les champs : identifiant, mot de passe,
+alias (nom plus convivial que vous vous choisissez) etc. Vous devez
+déjà être inscrit pour la plupart des protocoles.
+
+Vous pouvez aussi demandez à ce que Gaim retienne votre mot de passe
+(cochez Remember password
), ou encore indiquer une « buddy icon », une petite image (50x50 généralement) qui
+vous sert à vous représenter (si le protocole le
+permet). Auto-login
veut dire que Gaim se connectera
+directement avec ce compte la prochaine fois que vous le lancerez. En
+effet, Avec Gaim, vous pouvez avoir plusieurs comptes différents, un
+ou plusieurs par réseau. Vous pouvez en même temps papoter
+avec un ami sur MSN et discuter avec votre directeur de thèse sur
+Jabber.
+
+Une fois votre compte créé, dans la fenêtre Accounts
,
+cliquez sur Online
et vous serez connecté.
+
+Une fois connecté, tapez Ctrl+B
(ou cliquez sur
+Buddies > Add a buddy
). Indiquez son identifiant,
+éventuellement un alias (nom plus convivial que vous choisissez
+librement) puis cliquez sur Add
. Vous pouvez organiser
+vos contacts en différents groupes. Par exemple, dans la capture
+d'écran ci-dessous, on voit deux groupes, l'un appelé « ENS », avec le
+contact Toto, l'autre appelé « Buddies », avec deux contacts, dont
+Titi qu'on voit à l'écran. Remarquez aussi les indications de statut
+qui montrent que Toto est connecté, alors que Titi ne l'est pas (les
+icônes changent suivant le réseau, ici ce sont celles de MSN)..
+
+Pour commencer à envoyer des messages, double-cliquez sur le nom du
+contact avec lequel vos voulez discuter. Vous pouvez aussi
+sélectionner le contact en question (simple clic) puis cliquer sur
+IM
.
+
+Une fenêtre de conversation apparaître alors. Dans la partie basse,
+vous tapez votre message, vous pouvez le mettre en page de manière
+sommaire (gras, italique, etc.) et ajouter des smileys. Quand votre
+message est prêt, tapez Entrée
pour
+l'envoyer. Contrairement à talk
, en effet, l'envoi du
+message se fait paragraphe paragraphe.
+
+La plupart des options de configuration de Gaim se trouvent dans le
+panneau de configuration, accessible par Tools >
+Preferences
ou encore Ctrl+P
.
+
+C'est la liste de vos contacts. Vous pouvez la personnaliser en +demandant à Gaim d'afficher ou non les icônes des contacts qui ne sont +pas connectés, d'afficher les temps d'inactivité, etc. Vous pouvez +aussi contrôler l'apparence de la fenêtre à proprement parler : +supprimer les icônes « IM », « Get Info », etc., ou au contraire +n'afficher que les icônes et pas le texte. +
+
+Vous pouvez accepté d'être contacté par tout le monde sur votre
+réseau, mais vous pouvez aussi préférer n'être joignable que par vos
+propres contacts, ou encore n'être joignable par personne (vous vous
+bornez alors à contacter les autres de vous-même). Ceci se règle dans
+Toools > Privacy
.
+
+Il n'y a pas de « skins » pour les fenêtres de Gaim, en revanche il
+existe des sets d'icônes différents que vous pouvez utiliser et
+changer à votre guise. Téléchargez le ou les sets de votre choix sur
+la page
+« Thèmes » de Gaim, puis déplacez le fichier (une archive tgz) dans le
+sous-répertoire « Smileys » du répertoire de configuration de Gaim,
+.gaim
. Il faut ensuite décompacter l'archive. Par
+exemple, avec le set Crystal
+Gaim :
+
sas ~ $ mv 6704-gaimcrystal.tgz .gaim/smileys +sas ~ $ tar xfz 6704-gaimcrystal.tgz ++
+Ensuite, ouvrez le panneau de configuration (Ctrl+P
) et
+allez dans la section Interface > Smiley Themes
et
+sélectionnez le thème que vous voulez utiliser.
+
+Vous pouvez au choix vous déconnecter (vous revenez alors à l'écran de
+départ, avec choix entre vos différents comptes) ou quitter Gaim pour
+de bon. Pour se déconnecter, c'est Buddies > Signoff
+(Ctrl+D
), pour quitter c'est Buddies > Quit
+(Ctrl+Q
).
+
+Le logiciel git
est utilisé notamment par les développeurs
+du noyau Linux. Il s'agit d'un logiciel de contrôle de version, comme Subversion, CVS, Arch
+ou encore Darcs, qui utilise des dépôts décentralisés. Il permet ainsi
+de travailler tout en gardant une trace des modifications apportées
+successivement, et de retrouver ainsi l'état antérieur de ses données. À
+titre d'exemple, git
est le logiciel utilisé par les
+Tuteurs pour gérer cette documentation.
+
Il permet également, comme beaucoup de ses congénères, de travailler à +plusieurs sur un même projet. Mais contrairement à CVS ou Subversion, par +exemple, Git ne fait pas de différence entre un dépôt principal et les +copies locales chez les différents contributeurs.
+Ce système permet également une organisation hiérarchisée de +gros projets, comme c'est le cas du noyau Linux, en rendant +complètement naturelle l'existence de dépôts alternatifs pour chaque +sous-projet, avec une granularité de modifications très fine, et à +plus grande échelle, une faible granularité du dépôt principal qui +reçoit périodiquement les modifications par paquets.
+À l'inverse, pour travailler à deux, git
évite le
+casse-tête des droits d'accès dans le dépôt de l'autre. On peut en
+effet travailler de manière totalement symétrique, chacun recopiant
+les modifications de l'autre : il suffit d'un accès en lecture aux
+fichiers de ses collaborateurs.
J'expliquerai ici comment se servir de la version 1.5 de
+git. Dans la version 1.4, par exemple, la commande git init
+est appelée git init-db
. Cette dernière, dans la version
+1.5, n'est qu'un autre nom pour git init
.
Pour créer un dépôt git
, il suffit de taper la commande
+suivante dans son répertoire de travail (que nous désignerons dans la
+suite par monsiteweb
).
git init+
Le dépôt est initialement vide. Imaginons que l'on souhaite
+suivre les modifications du fichier sommaire.html
qui se
+trouve dans le répertoire monsiteweb
.
git add sommaire.html +git commit+
La première indique à git notre modification : le fichier
+sommaire.html
existe et doit être pris en compte. Il n'est
+pas toujours pertinent de suivre les modifications de n'importe quel
+fichier. En particulier, lorsque des fichiers sont engendrés
+automatiquement à partir de fichiers source, ce sont les fichiers
+source et les générateurs qu'il est important de conserver. La
+commande git commit
sert à enregistrer dans le dépôt les
+modifications apportées.
Lors d'un check-in (avec la commande git
+commit
), git demande un texte de journal (commit
+log). Ce texte permet de repérer facilement les modifications
+effectuées par chaque commit, aussi bien pour les autres que pour
+soi-même. Chaque commit est identifié par un numéro unique,
+représenté comme une suite de chiffres hexadécimaux. Ce numéro sert
+de référence, par exemple, lors qu'on veut annuler une
+modification.
La commande git add
ajoute un fichier dans le dépôt. On
+peut également s'en servir pour des répertoires entiers. Les
+commandes suivantes permettent ainsi de créer et remplir un dépôt git
+dans un répertoire avec tout son contenu.
git init +git add * +git commit+
.git
du répertoire où il a été créé. Ce dépôt peut différer du
+contenu du répertoire proprement dit, si on a modifié les fichiers depuis
+le dernier commit ou si on a importé les modifications d'un autre
+contributeur. Noter que ce répertoire est souvent invisible dans les
+explorateurs de fichiers et dans la sortie de la commande ls
,
+puisque son nom commence par un point. Les dépôts git peuvent être
+compressés pour occuper moins de place (voir la commande git
+repack
et git gc
).On dispose d'une interface graphique (git-gui
) et d'une
+interface Web (gitweb) pour explorer agréablement un dépôt git.
Une autre manière de créer un dépôt git consiste à cloner un dépôt déjà
+existant. Si la dénommée Xanadu possède un dépôt git dans son répertoire
+/home/xanadu/these
, le dénommé Yoda peut l'aider en clonant
+son dépôt par la commande suivante
git clone /home/xanadu/these cible+
où cible
est le répertoire qui contiendra la copie. Yoda
+peut alors travailler librement dans le répertoire cible
comme
+sur n'importe quel dépôt git dont il est le propriétaire.
ssh://login@machine/home/xanadu/these
, si le
+répertoire se trouve sur une machine à laquelle on accède par
+ssh
. La plupart des projets de logiciels libres indiquent des
+adresses de la forme git://git.logiciel.org/trunk
ou encore
+http://git.logiciel.org/trunk
.Yoda effectue alors quelques opérations sur les fichiers. Il enregistre +régulièrement ses modifications dans le dépôt proprement dit en tapant
+git commit -a+
qui lui demande un texte de description pour le journal des +modifications.
+Si d'aventure Xanadu continuait de travailler sur son projet, Yoda peut +importer les dernières modifications en lançant la commande +
+git pull+
dans son dépôt. Quant à Xanadu, si elle veut bénéficier des
+modifications apportées par Yoda, se trouvant dans le répertoire
+/home/yoda/cible
, elle peut lancer la commande suivante chez
+elle.
git pull /home/yoda/cible+
Si Yoda pouvait accéder en écriture aux fichiers de Xanadu, il +pourrait également lui transmettre ses modifications par la commande +
+git push+
Entraînée par sa paresse naturelle, Xanadu aimerait facilement récupérer +les modifications de Yoda sans avoir à se rappeler le répertoire exact où +il les enregistre. Elle définit donc un raccourci de la manière +suivante
+git remote add yoda /home/yoda/cible+
La commande git remote show yoda
permet de consulter
+les informations sur le dépôt de Yoda, et git pull yoda
+permet de récupérer directement ses modifications. On peut également
+utiliser les commandes
git fetch yoda +git merge yoda/master+
Ici, master
est la branche du dépôt de Yoda
+que Xanadu souhaite utiliser. Un dépôt git peut comporter plusieurs
+branches correspondant à autant de directions différentes de
+développement. Ce système permet d'essayer diverses orientations, avant de
+retenir la meilleure. La commande git remote show
permet de
+voir la liste des branches d'un dépôt enregistré dans la liste des
+remotes
Contrairement à git, Subversion, dans un usage normal, ne clone pas
+entièrement le dépôt distant avec ses modifications successives, mais
+conserve seulement une copie de la dernière version. Il est possible
+d'utiliser le modèle de travail de git tout en interagissant avec un dépôt
+Subversion en utilisant le script git-svn
. Ceci permet, par
+exemple, de travailler facilement à plusieurs sur un sous-projet donné, en
+envoyant périodiquement le résultat du travail.
git-svn clone http://svn.site.org/svnroot/projet -T trunk -b branches -t tags+
La commande précédente permet d'importer la totalité d'un projet
+Subversion, avec ses différentes branches et tags (correpondant
+généralement aux différentes versions publiées). Attention, cela prend
+généralement beaucoup de place. Cependant, l'utilisation de
+git-gc
permet de compresser les données et réduit l'espace
+occupé à l'ordre de grandeur de la taille d'un checkout Subversion
+(mais ici on garde tout l'historique).
On peut alors travailler normalement sur son dépôt. Les +commandes
+git-svn rebase +git-svn dcommit+
permettent respectivement de recevoir et d'envoyer les modifications +apportées.
+Pour aspirer le contenu d'un dépôt CVS avec son historique et
+l'enregistrer sous forme de dépôt git, on dispose de la commande
+git-cvsimport
.
git-cvsimport -d:pserver:anonymous@cvs.truc.org:/sources projet+
On peut ajouter l'option -p -Z,3
pour
+activer la compression. Pour utiliser git-cvsimport
, il faut
+au préalable s'assurer de la présence du programme cvsps
sur
+son ordinateur.
Pour aspirer le contenu d'un dépôt Arch avec son historique et
+l'enregistrer sous forme de dépôt git, on dispose de la commande
+git-archimport
.
machine $ tla register-archive http://arch.foobar.org/archives/software +user@arch.foobar.org +machine $ tla my-default-archive user@arch.foobar.org +machine $ git-archimport software--devo--0:master+
L'utilisation de git-archimport
requiert la présence
+du client tla
qui est la façon la plus commune d'accéder aux
+dépôts GNU Arch.
+ Cette section contient de la documentation sur différents +logiciels :
++ Il existe également des guides sur de vieux logiciels dont vous ne + devriez pas avoir besoin :
+
+La pléthore de documents disponibles sur l'internet est bien classée
+ dans la liste des reproches habituellement faits à l'encontre de LaTeX.
+LaTeX est en quelque sorte victime de son succès et du souci de ses
+utilisateurs de partager leurs connaissances et leurs trucs si chèrement
+acquis. Si cela part d'un bon sentiment, on n'évite pas deux écueils :
+premièrement, le débutant en quête de renseignements se noie dans les
+tonnes de réponses que peuvent lui donner quelques mots-clefs comme
+« interligne double LaTeX
» tapés à la sauvette dans
+Google ; et deuxièmement, dans les pages traitant le sujet, beaucoup
+donnent de mauvais conseils. Il faut reconnaître malgré tout que
+l'énorme avantage des documents électroniques est qu'ils sont capables
+d'évoluer avec le logiciel alors que la plupart des livres ne sont plus
+d'actualité (le LaTeX companion est la plus belle exception à
+cette règle).
+
+Cette page espère faire le tri et je soutiens que les informations +pertinentes concernant LaTeX peuvent être trouvées dans la plupart des +cas, en se limitant à seulement quelques documents que nous allons +présenter ici. +
++Si vous vous posez une question, il y a fort à parier qu'elle est +traitées dans les FAQ qui regroupent les interrogations les plus +courantes au sujet de LaTeX. +
++Nous donnons une liste de documents sûrs et couvrant la plupart des +domaines abordés lorsque l'on utilise LaTeX. +
+graphicx
sont décrites
+ dans la documentation du package (rotations, mises à l'échelle,
+ etc.) : le fichier grfguide
+ (remarque : pour la gestion des couleurs, préférez le package bien plus
+ moderne xcolor
).
+ amsmath
+ qui décrit pas mal d'environnements pour les formules centrées et sur
+ plusieurs lignes ; deuxièmement, un coup d'oeil un peu
+ plus panoramique pourra être jeté sur le thème depuis
+ Mathmode
+ qui est lui aussi très bon.
+ +Si les mauvaises habitudes sont déjà prises, vous pouvez consulter +— à défaut du docteur — la liste des péchés capitaux de +LaTeX pour tenter de corriger le tir. Ce document existe en +anglais et en en +français. +
++De manière très similaire à ce qui a été décrit pour les packages, le +nombre grandissant des packages introduit bien de la confusion dans +l'esprit de l'utilisateur. Lire toutes les documentations n'est pas +vraiment envisageable. Les outils suivants peuvent vous aider à trouver +la perle rare, l'aiguille dans la botte de foin. +
+verbatim
», ou « bibliography
», par
+ exemple).
+
+La plupart des distributions intègrent — ou du moins donnent la
+possibilité d'intégrer — les documentations des packages. Elles
+se trouvent généralement dans un répertoire $TEXMF/doc
, où
+$TEXMF
désigne l'emplacement de l'arborescence TeX de votre
+système (des exemples classiques sont /usr/share/texmf
ou
+C:\MikTeX\texmf
). Les formats utilisés sont PDF,
+PostScript, DVI et parfois
+HTML. Sur les machines Unix, un programme peut
+vous aider à accéder rapidement à une documentation tapez
+($
désigne le prompt)
+
+$ texdoc nom_du_package ++
+Par exemple « texdoc listings
». Attention aux pièges
+fameux : la documentation d'amsmath
s'appelle
+amsldoc et celle de graphicx
s'appelle
+grfguide. En outre, certains packages ont leur documentation
+intégrées au fichier .sty (c'est le cas des packages de Donald
+Arseneau comme framed
). fp
constitue une
+autre exception : sa documentation est un fichier texte appelé
+readme.fp.
+
+Une autre possibilité est d'aller trouver la documentation +sur le CTAN. Elle est généralement +disponible directement en PDF, sinon apprenez comment obtenir de +l'information à partir des fichiers .dtx grâce à la FAQ +(« Documentation of packages »). +
++Malgré ces quelques documents extrêmement précieux, vous n'avez toujours +pas trouvé la commande, l'environnement ou le package de vos rêves : +
+group:fr.comp.text.tex
ou la recherche avancée. On réunit ici différentes choses pour améliorer vos documents. Le
+premier conseil est le suivant : faites attention à toujours bien
+refermer toutes les accolades ouvertes, à ne pas les confondre avec des
+crochets ou des parenthèses, à bien refermer les environnements ouverts
+(comme itemize
), et en respectant leurs emboîtements : les
+trois quarts des erreurs signalées à la compilation viennent de là...
+
Une ligne blanche dans le texte crée un saut de paragraphe avec
+indentation. Tant qu'il n'y a pas de ligne blanche, et même s'il n'y a
+qu'un mot par ligne, c'est le même paragraphe, qui sera formaté
+correctement dans le DVI. Et qu'il ait 1 ou 46 lignes blanches dans le
+fichier source, c'est la même chose : il n'y aura qu'un changement
+de paragraphe. Pour supprimer l'indentation, vous pouvez utiliser
+\noindent
.
Pour faire une ligne blanche entre deux paragraphes, il faut laisser
+une ligne blanche et taper la commande \bigskip
.
Babel gère tout seul les espacements avant les ponctuations, et +veille à ce qu'une ponctuation ne se retrouve pas isolée en début de +ligne; vous n'avez donc pas à vous en soucier : ne mettez pas +d'espace avant les ponctuations (et les guillemets) et vous aurez un +document impeccable. En revanche, mettez toujours un espace +après les ponctuations.
+Mais cela ne doit pas vous empêcher de prendre de bonnes habitudes quand vous +tapez avec d'autres logiciels ou que vous rédigez un courrier toutes les +ponctuations sont suivies d'un espace, seules les ponctuations doubles +sont précédées d'un espace.
+
+ ~
+ |
+ Le tilde est un espace insécable ; c'est
+utile quand on veut être sûr que deux mots ne seront pas séparés :
+M.~Dupont donne «M. Dupont», les deux mots ne pouvant pas
+être séparés (en fin de ligne par exemple).
+
+ |
+
+ \,
+ |
+ C'est une espace fine insécable,
+moins large qu'une espace normale. En bonne typographie, les
+points-virgule sont précédés d'une espace fine. Les documents sont aussi
+plus jolis quand les guillemets, les points d'exclamation et
+d'interrogation, les traits d'incise ne sont pas collés aux mots. Cela
+dit, Babel le fait pour vous... Dans un grand nombre, on met une espace
+fine entre les milliers : 80\,000 donne 80 000 (OK, le
+HTML n'inclut pas les espaces fines; et si oui, les brouteurs ne
+l'affichent pas). On notera l'existence de la commande
+\nombre définie par l'option «frenchb» (ou «francais») de
+Babel.
+
+
+ |
+
+ \\
+ |
+ Cette commande permet un retour à
+la ligne simple, sans indentation ni saut de ligne. Son usage est
+fortement déconseillé en temps normal : pour revenir à la ligne, laissez
+une ligne blanche entre vos paragraphes. Vous risquez des messages
+d'erreurs en utilisant cette commande. On ne l'utilise qu'à la fin des
+vers dans l'environnement verse , et à la fin des lignes de
+tableaux dans l'environnement tabular .
+
+ |
+
+ %
+ |
+ Le «pour cent» a pour résultat de +faire ignorer à LaTeX le reste de la ligne. Cela permet de faire des +commentaires dans son document, de réserver des lignes de brouillon par +exemple, ou encore de faciliter la mise en page en figurant un +soulignement. + + | +
+ -
+ |
+ C'est un trait d'union :
+c'est-à-dire donne «c'est-à-dire».
+
+ |
+
-- | +C'est un intervalle entre deux chiffres :
+Mozart (1756--1791) donne «Mozart (1756-1791)». En LaTeX,
+vous verriez un tiret un peu plus long...
+
+ |
+
--- | +Le troisième fabrique un trait
+d'incise : je pensais --- bien à tort --- donne «je pensais
+— bien à tort —» (en LaTeX, vous verriez des tirets
+longs...). |
+
LaTeX sait globalement couper correctement les mots, mais reste +parfois perplexe devant les mots français; quand il ne sait pas où +couper, il laisse le mot entier, au risque de le faire dépasser de la +ligne. Le problème est signalé lors de la compilation par une ligne de +ce genre :
++Overfull \hbox (45.43307pt too wide) in paragraph at lines +648--664 ++
Il faut se reporter aux lignes indiquées faire soi-même les césures
+soi-même, avec la commande \-
qui indique où l'on peut
+couper le mot : tran\-quil\-le\-ment
.
Commande | +Fonction | +Comment l'afficher | +
+ \
+ |
+ Backslash. Introduit une commande LaTeX. | +
+ \verb+\+
+ |
+
+ ~
+ |
+ Tilde. Espace insécable. | +
+ \verb+~+
+ |
+
{ et } |
+ Accolades. Délimitent un bloc. | +\{ et \} |
+
+ %
+ |
+ Pour-cent. Introduit un commentaire. | +
+ \%
+ |
+
+ $
+ |
+ Dollar. Ouvre et ferme le mode mathématique. | +
+ \$
+ |
+
+ &
+ |
+ Esperluette. Délimite une colonne dans un environnement de +tableau. | +
+ \&
+ |
+
+ #
+ |
+ Dièse. Utilisé quand on écrit des macros. | +
+ \#
+ |
+
+ ^
+ |
+ Chapeau. Introduit un exposant en mode mathématique. | +
+ \verb+^+
+ |
+
+ _
+ |
+ Underscore. Introduit un indice en mode mathématique. | +
+ \_
+ |
+
Tout d'abord, veillez à respecter les conventions typographiques +françaises : majuscules accentuées, guillemets « carrés » et non +"américains" ou ``anglais'' ; pour la ponctuation, faites confiance à +Babel.
+ Il existe d'autre part une série de commandes prédéfinies pour les
+abréviations françaises : \ier
pour 1er, \iere
+pour 1re, \ieme
pour 2e. Mettez un backslash
+(\
) après la commande pour garantir l'espace
+(1\ier point
donne « 1erpoint » ;
+1\ier\ point
donne
+« 1er point »).
Comme les claviers américains ne possèdent pas le « œ » ligaturé,
+il faut l'écrire en LaTeX : c\oe ur
donne « cœur »,
+\OE uvres
donne « OEuvres ». Ne vous en faites pas pour
+l'espace au milieu du mot. Même si la deuxième partie du mot se perdait
+au début de la ligne suivante, le résultat serait correct.
Il est possible d'insérer dans le document un appel à un autre +fichier, avec la commande :
++\input{fichier} ++
Le fichier ainsi appelé est inséré dans le fichier principal lors de +la compilation. Cela permet de séparer un long document en plusieurs +parties indépendantes, qui lors de la compilation apparaîtront comme +faisant partie d'un même fichier (les pages, les notes de bas de page, +les sections, les figures, etc, sont numérotées correctement).
+ ++ Les arguments sont essentiellement les mêmes que pour LaTeX vs Word. En + faveur de latex, entre autres, la rigueur du rendu, la programmabilité, + la portabilité, la possibilité d'entrer des formules (combien de gens + voit-on convertir en images des formules tapées en TeX, pour les inclure + dans du powerpoint...), sont tout aussi utiles pour une présentation que + pour un rapport. D'un autre côté, le fait que la préparation du document + n'est pas faite de manière visuelle est sans doute plus génante pour des + transparents, mais pas tant que ça en fait. Enfin, Powerpoint propose + tout plein d'effets graphiques (animations...), domaine dans lequel les + packages LaTeX sont un peu plus pauvres (mais certainement pas indigents, + et suffisants pour la plupart des usages). +
++ Historiquement, il y avait les classes slides, et + seminar qui sont beaucoup trop basiques. Ensuite sont apparus + pdfscreen et prosper, qui sont beaucoup plus + évolués. Enfin est venu beamer, qui est nettement le meilleur + choix à l'heure actuelle. C'est de lui que traitera le reste de + l'article. Mentionnons enfin advi, qui est un viewer de dvi + avec plein de fonctions graphiques grassouilles (par exemple, on peut + faire se balader du texte sur la page). Il présente l'inconvénient de ne + tourner que sous unix, et de ne pas être bien standard (en général, on + doit se l'installer à la main). +
++ Beamer est donc un package LaTeX prévu pour faire des présentations. Il + est conçu pour produire du pdf. Pour ce faire, on compile le fichier + .tex en utilisant pdflatex. + Le pdf obtenu peut alors être visualisé avec n'importe + quel afficheur de pdf, comme kpdf. +
++ Beamer vient avec une documentation très étoffée, accessible ici. Beamer possède également deux + sous-packages : +
++ Comme ils sont assez techniques, et pas indispensables à maitriser pour une + utilisation simple de beamer, on ne les décrira pas plus avant ici, on + renvoie à leur documentation. +
++ Beamer est installé sur les machines de l'École, et est inclus dans de + plus en plus de distributions de TeX. Si néanmoins vous ne l'avez pas sur + la votre, vous pouvez le télécharger ici, il faut y + récupérer les versions les plus récentes de latex-beamer, + pgf et xcolor. +
++ Soit le fichier b.tex suivant : +
++ \documentclass{beamer} + \usepackage[utf8]{inputenc} + \usetheme{Warsaw} + + \title{Hello World!} + \author{B. Meuhr}\institute{École Normale Supérieure, département de pipologie} + + \begin{document} + + \begin{frame} + \titlepage + \end{frame} + + \begin{frame} + \textsc{Beamer}, c'est vachement tout beau! + \end{frame} + + \begin{frame} + Et c'est facile. + \end{frame} + + \end{document} ++
+ On le compile avec la commande pdflatex b.tex, et l'on obtient + alors un joli fichier b.pdf, que l'on peut afficher avec Acrobat + Reader (on a intéret à passer en mode plein écran, pour ce faire, taper + control L). +
++ On commence par : +
++ \documentclass{beamer} ++
+ ce qui charge beamer, et effectue les réglages de bases. +
++ Ensuite, beamer étant très versatile, il faut le régler à son + gout. Souvent, on se contente de charger un thème prédéfini, qui se + charge de définir l'apparence graphique de tous les éléments. Ici, on + utilise le thème « Warsaw » (il y en a beaucoup d'autres, ils sont + décrits dans le manuel de Beamer) : +
++ \usetheme{Warsaw} ++
+ Une fois à l'intérieur du \begin{document}, on entre le texte + de la présentation. On doit diviser à la main son texte en pages (pour que + la présentation soit compréhensible, il est important de faire la division + intelligemment), et mettre chaque page dans un environnement + frame. +
++ On peut (et c'est même recommandé) insérer des \section, + \subsection et cie. Certains thèmes (par exemple le + Warsaw utilisé ci-dessus) affichent un condensé de la table + des matières dans un panneau, ce qui, à l'affichage, permet de naviguer + facilement à travers le document en cliquant. +
++ Beamer permet de définir des séquences de slides différant seulement par + des apparitions ou disparitions (ou mise en grisé) de morceaux de + texte. Par exemple, ce code : +
++ \begin{frame} + \begin{itemize} + \item<1,3> Ploum! + \item<2-4> Plim? + \item Plum... + \end{itemize} + \end{frame} ++
+ va produire une séquence de 4 slides. Toutes les 4 auront un « Plum... » + sur la troisième ligne. La première ligne contiendra un « Ploum! » sur la + première et la troisième slide, tandis qu'elle sera vide sur la deuxième + et la quatrième. La deuxième ligne, elle, sera vide sur la première + slide, et contiendra « Plim? » sur les suivantes. +
++ Comme le montre cet exemple, un certain nombre de commandes ont été + modifiées pour prendre un argument optionnel entre <>. Dans cet + argument on peut mettre un nombre, un intervalle (deux nombres séparés + par un -), ou plusieurs nombres ou intervalles séparés par des + virgules. Ces nombres spécifient sur quelles slides de la séquence qui va + être créée la commande doit « avoir un effet ». Pour \item, + cela veut dire afficher la bille et le texte qui en dépend. Mais pour les + commandes de changement de police ou de couleur, cela veut dire que le + changement ne doit être effectué que sur les slides en question. Par + exemple, un : +
++ \textbf<2>{ploum} ++
+ aura pour effet de mettre « ploum » en gras sur la deuxième slide, et en + normal sur la première. +
++ L'argument optionnel entre <> n'est pas un effet magique : les + auteurs de Beamer ont du modifier toutes les commandes ... qu'ils ont + modifiées. Pour les autres, il faut se débrouiller à la main. On dispose + des commandes \only et \uncover qui prennent un + argument entre <>, puis un argument normal entre + {}, qu'elles n'affichent que sur les slides spécifiées. La + différence entre les deux est qu'avec only, le texte est jeté, + tandis qu'avec uncover, il occupe sa place mais est + transparent. Par exemple, avec : +
++ pif \uncover<2>{paf} Abcd-Efgh \only<1>{Ijklmn} ouais! ++
+on obtiendra : +
++ pif Abcd-Efgh Ijklmn ouais! ++
+ sur la première slide, et : +
++ pif paf Abcd-Efgh ouais! ++
+ sur la deuxième. +
++ Par défaut, le texte caché est complètement invisible. Il est possible de + l'avoir en grisé en mettant un : +
++ \setbeamercovered{transparent} ++
+ Beamer permet de modifier les couleurs de beaucoup de types d'élèments. Il + y a une « beamer color » associée à chaque type d'élément (elles sont + listées dans le manuel), et l'on peu modifier chaque couleur + indépendament des autres. Cela se fait avec la commande + \setbeamercolor qui prend en premier argument le nom de la + couleur, et en deuxième argument une spécification de couleur. Par + exemple : +
++ \setbeamercolor{normal text}{fg=red,bg=blue} ++
+ fait en sorte que le texte ordinaire soit en rouge sur fond bleu. On peut + spécifier des couleurs définies à l'aide du package xcolor. +
++ Les divers éléments répétitifs des slides sont définis à l'aide de + templates, qui sont du code évalué pour chaque slide. Par exemple, + l'arrière-plan des slides est définie par le template + background. Supposons que l'on veuille mettre l'image + ploum.jpg comme fond de transparents. Il suffit de faire : +
++ \pgfdeclareimage[height=96mm,width=128mm]{nombidon}{ploum} + \setbeamertemplate{background}{\pgfuseimage{nombidon}} ++
+ et tous les transparents suivants auront l'image en arrière-plan. On a + utilisé ici les commandes graphiques du package pgf. 96mm et 128mm sont + les dimensions par défaut de la page pour beamer (le viewer de pdf fait + un zoom, il est donc inutile et même nuisible de changer la taille de la + page). +
++ Il existe également un mécanisme de « beamer font » qui fonctionne + similairement. Noter qu'il existe des thèmes définissant d'un coup tous les + templates, couleurs et polices. Souvent, il vaut mieux choisir un thème, et + faire juste une ou deux modifications de détail... +
++ Enfin, pour modifier une couleur, un template ou une police sur une zone + limitée et non globalement, on utilise le mécanisme classique des + groupes : il suffit d'encadrer entre accolades la zone du texte où l'on + veut que le changement ait un effet, et de mettre le + \setbeamertemplate, \setbeamercolor ou + \setbeamerfont juste après l'accolade ouvrante. +
++ On peut aussi spécifier des effets graphiques à effectuer lors d'un + changement de page, inclure des sons, des vidéos... Tout cela est décrit + dans le chapitre 14 du manuel. +
++ Comme il a été dit, pdflatex est une variante de latex qui pond du pdf au + lieu de sortir du dvi. Cela a certains effets secondaires au niveau de la + gestion de tout ce qui est graphique. En particulier, on ne peut plus + utiliser tout ce qui était à base de postscript : inclusion d'images eps, + pstricks, ... En compensation, pdflatex fournit pas mal de primitives + graphiques, qui suffisent dans la plupart des cas. En particulier, on peut + inclure directement (alors qu'avec latex, il faut les convertir en eps) + des images dans les formats bitmaps jpg et png. Pour des dessins + vectoriels, il vaut mieux les fournir directement au format pdf pour + l'inclusion. On peut convertir un eps en pdf avec la commande + epstopdf. +
+ +Il peut sembler bizarre de devoir recourir à un programme externe pour +générer quelques lignes de texte à la fin d'un mémoire. Néanmoins +l'intérêt de BibTeX apparaîtra très rapidement à l'utilisateur désireux +de construire sa bibliographie au fur et à mesure de la rédaction du +texte, tout en respectant les conventions, par exemple dans le cas d'une +thèse...
+De plus, la plupart des bibliographies d'ouvrages scientifiques se +doivent d'être au format BibTeX, afin de ne pas voir à taper les entrées +bibliographiques, mais de pouvoir utiliser les bases de données +existantes.
++Enfin, BibTeX c'est la possibilité de changer l'ordre utilisé dans la +bibliographie (alphabétique, chronologique, thématique, ordre de +citation dans le texte) sans tout retaper. Il est également possible de +changer l'apparence (le titre en italique ou entre guillemets ?), +l'ordre des éléments dans une référence (le prénom avant ou après le +nom ?, le titre avant ou après la revue ?), là encore sans grand effort. +
+BibTeX va chercher ses références dans une base de données que
+l'utilisateur crée, de manière très simple, en attribuant une
+« étiquette » à chaque référence, puis en remplissant un certain nombre
+de champs (auteurs, titre, revue, année, éditeur, etc.). Cette base de
+donnée est stockée sous forme de fichier texte, avec comme extension
+.bib
. Elle peut être commune à plusieurs documents LaTeX,
+comme on le verra plus tard.
Lorsque l'utilisateur veut citer une référence dans le fichier LaTeX,
+il appelle l'étiquette qui identifie cette référence dans le fichier
+.bib
, par la commande \cite{}
. Lors de la
+compilation du fichier par LaTeX, la liste des références demandées
+s'inscrit alors dans le fichier .aux
correspondant. On peut
+alors lancer BibTeX, qui fera le lien entre les requêtes du document et
+la base de données, en générant au passage un fichier .bbl
,
+qui sera, lui, spécifique au document LaTeX tel qu'on vient de le
+compiler.
Enfin, une nouvelle compilation via LaTeX sera nécessaire pour +afficher correctement la bibliographie ainsi que les renvois du +texte.
+Voici un extrait de base de données :
++@article{Johnson, + author = {Edgar G. Johnson and Alfred O. Nier}, + title = {Angular Aberrations in Sector Shaped + Electromagnetic Lenses for Focusing Beams of Charged Particles}, + journal = {Physical Review}, + volume = {91}, + number = {1}, + month = {jul}, + year = {1953} +} + +@phdthesis{Zoran, + author = {Zoran Racic}, + title = {\'Etude et essais du spectromètre à plasma {DYMIO} + de la mission {MARS 96}}, + publisher = {Université Pierre et Marie Curie}, + year = {1996} +} ++
Toute entrée commence par un @
, suivi par un descripteur
+(imposé par le type de document article
, book
,
+inproceedings
, etc.). Entre
+accolades, se trouve l'étiquette, puis les champs, composés d'un
+sous-descripteur et de la valeur de celui ci, entre accolades. Les
+champs sont séparés par des virgules, l'oubli de celles ci étant
+vraisemblablement la source d'erreurs la plus courante !
A priori, BibTeX s'occupe des majuscules, et n'hésite pas à en +supprimer si tel est son bon plaisir. Il y a moyen de lui faire savoir +qui c'est le chef, en enfermant les mots qu'on désire laisser en +majuscule entre accolades. Cependant, la meilleure solution est de ne +pas placer ces accolades et de modifier le style de bibliographie ou +d'en changer s'il ne vous convient pas. Les commandes TeX sont autorisées.
+N'hésitez pas à fournir un maximum d'informations, BibTeX s'arrangera +pour tout faire rentrer (ou donnera des messages d'avertissement s'il en +manque...), et les champs inconnus seront ignorés si nécessaire.
+Sauvegardez le fichier sous un nom se terminant par
+.bib
+La table suivante résume les types et les champs couramment connus. +
++ Types de documents + | ++ Champs + | +
+ article
+ |
+
+ address
+ |
+
+ book
+ |
+
+ annote
+ |
+
+ booklet
+ |
+
+ author
+ |
+
+ conference
+ |
+
+ booktitle
+ |
+
+ inbook
+ |
+
+ chapter
+ |
+
+ incollection
+ |
+
+ crossref
+ |
+
+ inproceedings
+ |
+
+ edition
+ |
+
+ manual
+ |
+
+ editor
+ |
+
+ mastersthesis
+ |
+
+ howpublished
+ |
+
+ misc
+ |
+
+ institution
+ |
+
+ phdthesis
+ |
+
+ journal
+ |
+
+ proceedings
+ |
+
+ month
+ |
+
+ techreport
+ |
+
+ note
+ |
+
+ unpublished
+ |
+
+ number
+ |
+
+ |
+ organization
+ |
+
+ |
+ pages
+ |
+
+ |
+ publisher
+ |
+
+ |
+ school
+ |
+
+ |
+ series
+ |
+
+ |
+ title
+ |
+
+ |
+ type
+ |
+
+ |
+ volume
+ |
+
+ |
+ year
+ |
+
author
est le champ utilisé pour saisir la liste des
+auteurs sous la forme prénom nom
ou
+nom, prénom
.
+
and
et surtout pas
+ une virgule.
+
+Pour les articles (type article
), les champs importants
+sont author
, title
, journal
,
+year
, pages
(les champs volume
et
+number
peuvent eux aussi servir). Pour les livres (type
+book
) on prendra garde à donner la maison d'édition à
+l'aide du champ publisher
et non editor
(les
+éditeurs d'un ouvrage collectif) ou edition
(le numéro de
+réédition). L'adresse de la maison d'édition est donnée par
+address
. Le type misc
sert de fourre-tout
+quand aucune catégorie ne semble correspondre à un document (un
+manuscrit par exemple), tous les champs peuvent être utilisés, mais
+pensez à ajouter soit howpublished
soit une
+note
explicative. inbook
et les autres types
+dont le nom commence par in
désignent des chapitres (le
+numéro du chapitre sera précisé via le champ chapter
et les
+pages concernées par pages
) ou des paragraphes dans un
+livre (le titre pourra être précisé avec booktitle
), etc.
+Le champ crossref
permet de faire référence audit livre
+s'il est présent lui aussi dans la bibliographie. Les documents
+académiques (mastersthesis
et phdthesis
)
+pourront intégrer school
ou institution
pour
+renseigner l'université.
+
À l'emplacement prévu dans le fichier .tex, insérez les lignes :
++\bibliographystyle{plain} +\bibliography{mon_fichier} ++
\bibliographystyle
permet de choisir le style de
+bibliographie.
\bibliography
permet d'indiquer quelle base de données
+doit être utilisée. On indique le nom du fichier, sans l'extension
+.bib
+Utilisez le package tocbibind
, capable de créer des entrées
+pour la bibliographie, l'index et aussi la table des matières (!), les
+listes des figures et des tables. Ces trois derniers éléments
+n'étant pas du meilleur effet, on lui pourra passer les options
+nottoc
, notlof
et notlot
.
+
+\usepackage[nottoc, notlof, notlot]{tocbibind} ++
LaTeX n'affiche pas toutes les références contenues dans la base de +données, seulement celles qui sont citées dans le texte. Par conséquent, il +est normal à ce stade de ne rien voir s'afficher... La commande à +utiliser pour citer une référence est tout simplement
+\cite{label}+
où label est l'étiquette attribuée lors de
+la construction de la base de données dans le fichier .bib. Dans le style plain
,
+cette commande apparaît alors dans le fichier .pdf
sous la
+forme [X]
, où X est le numéro utilisé dans la bibliographie,
+ou un ??? si l'étiquette est erronée, ou qu'il manque une
+compilation de LaTeX ou de BibTeX.
On peut néanmoins faire apparaître une référence dans la bibliographie +sans la citer explicitement dans le texte, à l'aide de la commande :
+\nocite{label}+
+Un cas particulier est \nocite{*}
qui dit à BibTeX
+d'inclure dans la bibliographie toutes les références, citées dans le
+corps du texte ou non.
+
Il ne reste plus qu'à compiler le tout :
++pdflatex mon_fichier.tex +bibtex mon_fichier +pdflatex mon_fichier.tex ++
.bib
ni
+le fichier .tex
qu'on indique à BibTeX, mais le fichier
+.aux
produit dans la première compilation du fichier
+.tex
. Cependant, comme l'indique la commande ci-dessus,
+cela fonctionne quand même si on ne précise pas l'extension.
+ \documentclass[a4paper,oneside,12pt]{article}+ |
+ On veut taper un document de style « article » (le standard
+pour des textes peu longs ; pour taper une thèse, on préfèrera le style
+« book »). Les options choisies sont : a4paper (pour
+avoir un résultat au format A4), oneside (pour ne pas
+différencier les pages paires et impaires ; utilisez
+twoside si vous voulez relier votre document final) et
+12pt , qui sera la taille du texte (vous pouvez préciser
+aussi 10pt ou 11pt ). |
+
+ \usepackage{longtable,geometry}+ |
+ J'utilise le package longtable pour faire des
+tableaux qui tiennent sur plusieurs pages, et le package
+geometry pour redéfinir moi-même les dimensions des
+pages. |
+
+ \usepackage[frenchb]{babel}+ |
+ J'utilise le
+package babel avec l'option frenchb
+(francais fonctionne également), pour que
+soient prises en compte les particularités de la typographie
+française. |
+
+ +\usepackage[utf8]{inputenc} ++ |
+ Je signale à LaTeX que mon fichier source est codé en UTF-8.
+ Cela lui permet de reconnaître les lettres accentuées tapées
+ directement plutôt que comme ça : \'et\'e . Le nom à
+ donner entre crochets dépend du système sur lequel je travaille (un
+ autre choix courant est latin1 ; à l'ENS, la config
+ conscrits utilise utf8 depuis 2007, latin1 avant). Voir aussi la FAQ sur le sujet.
+ |
+
+ +\usepackage[T1]{fontenc} ++ |
+ +Je demande que soient utilisées les fontes de +LaTeX incluant les caractères essentiels à composer les mots accentués +du français. | +
+ +\usepackage[babel]{csquotes} +\MakeAutoQuote{«}{»} ++ |
+ Ces lignes permettent d'utiliser simplement les guillemets sans
+espaces, le package csquotes s'occupera de
+l'espacement. |
+
+ \pagestyle{headings}+ |
+ Je demande que les
+titres des sections apparaissent en haut de chaque page. (Voir aussi le
+package fancyhdr ). |
+
+ +\geometry{dvips,a4paper,margin=1.5in} ++ |
+ Je passe à geometry les informations
+suivantes : pilote, dimensions du papier et marges. |
+
+ +\title{Aide-mémoire} +\author{Thomas Dupond} + +\begin{document} +\maketitle +\tableofcontents+ |
+ Je déclare le titre de l'ouvrage, l'auteur (ces déclarations ne
+ donnent pas lui à une impression). Ensuite le document
+ commence vraiment, le \begin{document} met fin au
+ préambule : première
+page avec titre et auteur (imprimés cette fois), date et tables des
+ matières. |
+
+ +\section{\LaTeX} +%^^^^^^^^^^^^^^^ + +\input{latex} + +\section{Les commandes Unix} +%^^^^^^^^^^^^^^^^^^^^^^^^^^^ +\input{unix} ++ |
+ J'insère deux sections dont les contenus sont donnés par les
+fichiers latex.tex et unix respectivement. Pour rendre
+le fichier source plus lisible, j'ai rajouté des
+commentaires derrière les % , en figurant un
+« soulignement ». |
+
+ +\appendix ++ |
+ On commence les annexes : la numérotation des sections est désormais +alphabétique, aussi bien dans leurs titres que dans la table des +matières. | +
+ \section{Autres thèmes} +%^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^% +\input{lynx} +\input{disquettes} ++ |
+ J'insère lynx.tex et disquettes.tex .
+ |
+
+ +\end{document} ++ |
+ Enfin, je ferme le document. | +
+Une question qui se retrouve souvent dans le courrier à tuteurs, sous +une forme ou une autre, c'est comment faire parvenir un document LaTeX +à une personne ne disposant pas de LaTeX sur son ordinateur. En +particulier, le bruit court qu'il faut utiliser pour ça le format RTF +(ce qui n'est vrai que dans certains cas). Nous allons détailler ici +les différentes méthodes. +
++Nous allons détailler ici les différentes possibilités. Celle à +choisir dépend surtout de l'utilisation que va faire votre +interlocuteur du document. +
+
+ De nos jours, la plupart des compilateurs latex utilisent PDF comme format
+ de référence, avec la commande pdflatex
. Le DVI reste cependant
+ utilisé en tant que format intermédiaire.
+
+Le format PDF se lit avec Acrobat Reader, le format PostScript avec +GhostView. Le premier est plus répandu sur les machines grand public, +le second un peu plus sur les Unix. Ces deux formats sont +considérablement plus gros que le texte original, le PDF encore +environ 50% de plus que le PostScript. +
++On les obtient tous les deux à partir du fichier DVI : +
++dvips -o fichier.ps fichier.dvi +dvipdf fichier.dvi ++
+Le -o fichier.ps
est nécessaire : sans,
+dvips
envoie le résultat à l'imprimante.
+
+Le RTF est un format prévu initialement comme plate-forme entre +word et les autres traitements de texte. Les contraintes de +compatibilité limitent ses possibilités, et les convertisseurs +disponibles ici pour LaTeX ne marchent pas très bien. Aussi, je +conseille de n'utiliser ce format que quand vraiment rien de mieux +n'est indiqué dans cette liste. +
++latex2rtf -o fichier.rtf fichier.tex ++
+Je pense que ce sera le plus souvent le bon +choix. C'est un format que n'importe qui peut lire directement sans +difficulté, il permet des effets de mise en forme assez évolués +(tableaux...), et peut être modifié par le destinataire pour peu qu'il +ait un outil adéquat (ou simplement qu'il connaisse le HTML). +
++En outre, c'est un format libre, ce qui ne gâche rien. +
++hevea fichier.tex ++
Hevea est le convertisseur qui marche +le mieux, mais il y en a d'autres. +
++Le texte brut, c'est le format qui est employé pour les courriers +électroniques. Il ne permet pas de faire grand chose, mais ça s'avère +quand même suffisant dans de très nombreux cas. +
++Notez qu'il existe des conventions pour simuler des effets spéciaux : +on peut écrire « Je suis _très_ en colère. Mais *vraiment très* en +colère. ». +
++Hevea est capable de produire du texte brut, en faisant quelques +efforts pour aligner les tableaux. +
++hevea -text fichier.tex ++
+Ceci produit comme résultat fichier.txt
(au bas du
+quel on retirera le bandeau qui dit « fait avec Hevea »).
+
+On peut aussi tout simplement prendre le document LaTeX
+source. Contrairement aux formats de la plupart des traitements
+de textes, les fichiers LaTeX sont des fichiers de texte brut,
+lisibles sur n'importe quel ordinateur, même ne disposant pas de
+LaTeX. Pour faciliter la lecture, il faut nettoyer un peu le
+document : on coupe le préambule (jusqu'à \begin{document}
), on
+enlève un peu les balises qui traînent. Si votre interlocuteur n'est
+pas du genre à mettre son cerveau en veille quand il est devant un
+ordinateur, et que vous lui avez déjà dit deux mots de LaTeX, vous
+pouvez même laisser certaines balises claires, comme
+\begin{cite}...\end{cite}
.
+
+Dans le cas d'un document sans fioritures, comme une lettre, c'est de
+loin la méthode la plus simple. Il suffit d'insérer le document source
+dans le courrier électronique que vous allez envoyer (^R
+avec pine/pico et nano, ^K R
avec Joe, :r
+avec Vi, C-x i
avec Emacs), et de virer ce qu'il y a en
+trop.
+
figure
?
+ figure
?
+ L'exemple suivant est assez complet, et nous l'expliquerons + progressivement dans la page.
++\documentclass{article} +\usepackage{graphicx} + +\begin{document} + +\listoffigures + +\begin{figure}[!t] +\centering +\includegraphics{Tux.png} +\caption{Tux, le pingouin} +\label{Tux} +\end{figure} + +\end{document} ++
Et le résultat: + fichier.pdf +
+ La ligne qui commence par \includegraphics
est celle qui
+ insère l'image. C'est elle qui nécessite le package graphicx (deuxième
+ ligne). Pour plus de détails sur les images et LaTeX, voir
+ ici .
+
Les lignes \begin{figure}
et \end{figure}
+définissent un environnement figure.
+L'environnement figure
sert à créer des « objets
+flottants » : ce sont des blocs contenant du texte et/ou des images
+inséré en complément à la partie principale du document, mais dont la
+position exacte peut varier légèrement, de manière à optimiser
+l'occupation des pages. En pratique, figure
« accroche » un
+numéro et une légende à une image (ou un tableau).
La partie [!t]
est facultative et permet d'indiquer à
+ LaTeX vos préférences pour le placement de la figure. Le tableau suivant
+ récapitule les différentes possibilités.
+
h (here) |
+ Placer la figure dans le texte à l'endroit où l'environnement a été +appelé (si l'espace disponible sur la page le permet). | +
t (top) |
+ Placer la figure en haut d'une page de texte. | +
b (bottom) |
+ Placer la figure en bas d'une page de texte. | +
p (page) |
+ Placer la figure sur une page séparée du reste du texte. | +
La commande figure
crée un objet
+flottant, que LaTeX place à l'endroit qui lui semble le
+plus favorable... et qui est parfois très mal choisi. C'est en
+particulier le cas avec de grosses figures qui prennent plus d'une
+demi-page. Il faut alors utiliser le point d'exclamation (« ici ! »)
+pour insister ; par exemple :
+\begin{figure}[!h] ++
Toujours pour le placement, la commande \centering
permet
+ de centrer l'image latéralement.
Pour donner une légende à une figure, on utilise la commande
+\caption{}
:
+\begin{figure} +(...) + +\caption{texte de la légende} +\end{figure} ++
La numérotation des légendes est automatique. Selon que l'on place
+la ligne \caption{...}
avant ou après l'image elle-même, la
+légende apparaîtra au dessus ou au dessous.
+
Il faut placer le tableau et la légende à l'intérieur d'un
+environnement figure
. La numérotation des légendes est
+automatique.
On utilise le mécanisme de référencement habituel, avec
+\label{mot-clé}
et
+\ref{mot-clé}
(ou
+\pageref{mot-clé}
pour le numéro de la page).
Pour référencer la figure, on place le label après la +légende :
++\caption{Tux, le pingouin} +\label{Tux} ++
Ensuite, on s'en sert comme d'habitude (noter l'utilisation du tilde -- espace +insécable -- pour garder les numéros près des mots qui les +introduisent) :
++Dans le tableau~\ref{Tux}, page~\pageref{Tux}, nous lisons... ++
Il existe aussi l'environnement table
, qui fonctionne
+exactement comme figure
. La différence est qu'il numérote
+explicitement des tableaux, avec une légende du type « Tab. 1 :
+résultats », et non « Fig 1 : schéma ».
Deux commandes servent à générer, respectivement, une « Table des
+figures » (environnement figure
) et une « Liste des
+tableaux » (environnement table
), sur le modèle de
+\tableofcontents
(avec donc au moins deux
+compilations) :
+\listoffigures % table des figures +\listoftables % table des tableaux ++
Vous pouvez changer le noms de ces tables, s'ils ne vous conviennent +pas, en utilisant ces commandes à placer dans le préambule :
++\addto\captionsfrench{% + \renewcommand{\listfigurename}{Nouveau nom}% + \renewcommand{\listtablename}{Nouveau nom}% +} ++
Les packages floatrow
+ou caption
permettent de mieux gérer les figures.
+Le premier a en particulier une
+commande \setupfloat[figure]{margins=centering}
.
+
Sachez que le placement des objets flottants occupe à lui tout seul un +chapitre entier du LateX companion, second edition, sous le +doux nom de +Mastering Floats. N'hésitez pas à vous y reporter en cas de +problème.
+ + On utilise la commande \footnote
, suivie, entre
+accolades, du texte à mettre en note. Par exemple :
Dans l'excellent article de M. Dugenou\footnote{Lisez-le, c'est +vraiment tordant.}, nous lisons le récit de sa vie.+
LaTeX gèrera tout seul la numérotation des appels de notes, si besoin +est la répartition des notes très longues entre plusieurs pages.
+Il est néanmoins nécessaire de savoir bien placer les appels de +notes : on les met avant les ponctuations, et non après. Par +exemple, il ne faut pas écrire :
+... pour finir.\footnote{Si, si...}+
mais
+... pour finir\footnote{Si, si...}.+
Il ne faut pas non plus oublier la ponctuation à la fin des notes en +bas de page.
++Il vous sera parfois nécessaire de recourir aux commandes +
++\footnotemark[num] +\footnotetext[le num]{Le texte de la note} ++
+dans certaines conditions : dans les tableaux (cf. « Footnotes
+in tables »), ou dans les environnements
+minipage
(pour lesquels \footnote
donne une
+note en bas de la mini-page tandis que \footnotemark
et
+\footnotemark
placent encore leur notes en pied de page).
+
La première commande est placée à l'endroit de l'appel de note. La
+seconde est placée plus loin dans le texte, là où ça vous arrange en
+vous assurant que la note sera encore placée sur la même page que son appel. num désigne un numéro que vous pouvez
+donner à la main si nécessaire (en l'absence de cette indication LaTeX
+utilise la valeur du compteur footnote
). Si on
+groupe en fin de document tous les textes des notes (ceux contenus dans
+les footnotetext
), elles apparaîtront toutes à la fin du
+texte.
On utilise le mécanisme de référencement habituel, avec
+\label{mot-clé}
et \ref{mot-clé}
.
+\ref
tient compte du contexte où se trouve l'étiquette
+\label
:
\caption
), c'est le numéro de la figure qui sera
+produit ;Ainsi, si on pourra écrire :
+Jean-Paul Sartre a été élève à l'ENS\footnote{\label{ulm}45, rue d'Ulm, 75005~Paris.}, qui en est très fière. + +(...) + +On trouvera l'adresse de l'ENS dans la note~\ref{ulm}. ++
Il faut « protéger » la note en intercalant la commande
+\protect
. Par exemple :
+\section{La vigne en France\protect\footnote{Sur ce sujet, voir +l'ouvrage de Marchel \textsc{Lachiver}, \emph{Vin, vignes et +vignerons. Histoire du vignoble français}, Paris, 1988.}} ++
\section
!La note appelée dans un titre apparaîtra également dans la table des +matières. Pour l'éviter, il faut utiliser la même technique que pour les +titres longs, en indiquant un titre alternatif entre crochets :
++\section[La vigne en France]{La vigne en France\protect\footnote{Sur ce +sujet, voir l'ouvrage de Marchel \textsc{Lachiver}, \emph{Vin, vignes et +vignerons. Histoire du vignoble français}, Paris, 1988.}} ++
+Une autre possibilité est offerte par le package footmisc
+et son option stable
.
+
Il existe six styles d'appels de notes différentes :
+
+ \arabic
+ |
+ Nombre arabe | +1, 2, 3, etc | +
+ \roman
+ |
+ nombre romain minuscule | +i, ii, iii, etc | +
+ \Roman
+ |
+ nombre romain majuscule | +I, II, III, etc | +
+ \alph
+ |
+ lettre minuscule | +a, b, c, etc | +
+ \Alph
+ |
+ lettre majuscule | +A, B, C, etc | +
+ \fnsymbol
+ |
+ symbole | +croix, étoile, double croix, etc | +
Pour choisir les lettres majuscules, par exemple, il faut taper avant
+le \begin{document}
:
+\renewcommand{\thefootnote}{\Alph{footnote}} ++
Il faut utiliser le package endnotes
de J. Lavagnino.
Bien que ce soit fortement déconseillé, vous pouvez utiliser, dans un
+cas particulier (note très longue) la commande
+\samepage
(remarquez que \samepage
n'agit pas
+sur les sauts de paragraphes) :
+Jean-Paul Sartre\footnote{\samepage Jean-Paul Sartre est né à Paris en +1905. Il est élevé par sa mère, veuve en 1906, qui est catholique, et par +son grand-père maternel, Charles Schweitzer, protestant alsacien. En +1916, sa mère se remarie et Jean-Paul Sartre entre au lycée de La +Rochelle.} est l'un des plus célèbres normaliens littéraires. ++
Une solution globale consiste à redéfinir le critère de beauté associé +au placement des bas de page. Il suffit d'écrire dans le préambule du +fichier :
++\interfootnotelinepenalty=10000 ++ +
Les packages pgf et Tikz permettent de faire énormément de choses. Vous + pouvez regarder les exemples sur: + Fauskes.net +et vous en inspirer. +La documentation, disponible + +ici, +est longue mais commence par une série de tutoriaux. +
++ On doit utiliser le + package graphicx. Pour cela, il faut mettre un : +
++ \usepackage{graphicx} ++
+ dans le préambule. Ensuite, dans le corps du document, pour inclure une + image stockée dans le fichier machin, on tape + \includegraphics{machin}. On peut spécifier la taille avec des + arguments optionnels : + \includegraphics[width=3cm,height=3cm]{machin} (on peut bien + sur ne préciser qu'une seule des deux tailles). On peut aussi ajouter un + angle=XXX spécifiant d'insérer l'image tournée de XXX + degrés. +
+Ce paragraphe n'est valable que si vous compilez avec pdflatex. + On a le droit au PDF, au JPEG, au PNG et au TIFF (et également les + fichiers PostScript obtenus avec MetaPost). + Si l'image est dans un autre format bitmap, on peut la convertir en JPEG, + PNG ou TIFF, par exemple à l'aide de convert. + Si c'est un EPS, le mieux est d'utiliser epstopdf. +
++Ils sont nombreux. Pour faire des schémas du style de ceux qu'on trouve +dans les publications scientifiques (et notamment, mettre facilement des +formules en LaTeX à l'intérieur des schémas) et toujours avec pdflatex, +on peut recommander ipe. Il y a aussi, par exemple, xfig (dans le même +genre que ipe, en plus ancien), inkscape (un logiciel de dessin +vectoriel classique), gimp (pour l'édition d'images bitmap) et gnuplot +(pour les courbes et autres histogrammes). +
++ Il y a le package xcolor qui permet de mettre du texte en + couleur. +
++ On dispose de la commande \textcolor, qui prend comme premier + argument une couleur, comme deuxième argument du texte, et affiche ce + texte dans cette couleur. Par exemple, \textcolor{red}{ploum} + va mettre « ploum » en rouge. +
++ Il y a quelques noms de couleurs prédéfinis, comme red, + blue et cie. On peut en définir d'autres, avec la commande + \definecolor. Elle prend en premier argument le nom que l'on + veut donner, en deuxième argument, le modèle de spécification, et en + troisième argument, la spécification. Les trois modèles sont : +
++ On peut appliquer une rotation à du texte avec \rotatebox (par exemple + \rotatebox{30}{ploum} pour tourner de 30 degrés), lui faire + subir une affinité avec \resizebox (par exemple + \resizebox{1cm}{3cm}{ploum} pour afficher « ploum » large de + 1cm et haut de 3cm). +
++ Contrairement à un fichier PostScript ou PDF, un fichier au format + traditionnel de sortie de LaTeX, le format DVI, n'est pas fait pour + contenir des images, ni par exemple du texte en couleur. + On s'en sort en mettant dans le fichier DVI des commandes spéciales à + l'intention des logiciels qui convertiront le fichier dans un format + plus riche. Ces commandes spéciales peuvent être, par exemple, des + références à des images stockées ailleurs, qui sont insérées au bon + endroit au moment d'imprimer le document ou de le convertir. Ou + d'ailleurs de l'afficher, mais tout ça ne marche que si le programme + qui doit faire la conversion ou l'affichage est au courant de la + convention, or les afficheurs DVI gèrent généralement moins bien les + commandes spéciales que les convertisseurs. + Ainsi, si vous compilez votre document au format + DVI (avec la commande latex, par opposition à + pdflatex), il faudra probablement convertir le fichier DVI + au format PS ou PDF pour voir les images, le texte en couleur, etc. +
++ De plus, on ne peut insérer par ce mécanisme que des images au format + EPS. La commande convert fournie par ImageMagick permet de + faire la conversion depuis tout un tas de formats d'images. +
++ À l'inverse, le puissant package de dessin PSTricks (analogue à pgf/TikZ, + qui en est inspiré) fonctionne avec latex mais pas avec + pdflatex. Vous pouvez consulter le manuel de PSTricks. +
+ ++La méthode décrite ici fonctionne encore très bien, mais de nouveaux outils +sont maintenant disponibles, qui peuvent sembler plus confortables à +utiliser. Pour apprendre à s'en servir, allez voir la page sur +langues exotiques (oui, le grec, c'est exotique). +
+Pour taper des textes en grec, il suffit d'indiquer dans le +préambule de son document que l'on veut charger le grec dans les +options de babel :
++\usepackage[greek,frenchb]{babel} ++
+Pour le grec ancien, utilisez +
++\usepackage[polutonikogreek,frenchb]{babel} ++
babel prévoit une commande pour taper du grec :
++\textgreek{blablabla} ++
+mais elle est très mauvaise, nous vous conseillons de la redéfinir dans +le préambule de votre document : +
++\newcommand*{\textgreek}[1]{% + \foreignlanguage{greek}{#1}% +} ++
ce qui donne :
++Comme vous êtes fainéant (normal), vous aurez envie de vous créer un +raccourci : +
++\newcommand*{\tg}[1]{\textgreek{#1}} ++
ce qui vous permet maintenant de taper :
+\tg{blablabla}+
Les équivalences de caractères sont les suivantes :
++ + +
+Pour taper les accents et les esprits, on utilise les signes +suivants :
+<
pour l'esprit rude ;>
pour l'esprit doux ;'
pour l'accent aigu ;`
pour l'accent grave ;~
pour l'accent circonflexe.Ces signes se placent avant la lettre sur laquelle ils portent. Les
+trémas se tapent "
, et se placent avant les accents.
+Exemples :
>'a pour
+ |
+ <~w pour
+ |
+
`h pour
+ |
+ "'i pour
+
+ |
+
Pour les iotas souscrits, il faut taper
+|
(un pipe) après la lettre sur laquelle
+on veut le faire porter. Exemple :
T'a z~w|a tr'eqei+
+pour .
+La ponctuation se marque à la française, sans se poser de
+question. On tape un point d'interrogation (?
) pour
+obtenir... un point d'interrogation, et un point virgule
+(;
) pour un point en haut.
Comme vous l'aurez remarqué, Ô lecteurs diligents, on utilise
+l'apostrophe pour faire l'accent aigu, ce qui risque de poser certains
+problèmes quand on veut réellement utiliser l'apostrophe. Il faudrait
+don, dans l'idéal, mettre un espace insécable après l'apostrophe, mais
+pas de chance la commande ~
est inutilisable en grec
+puisqu'elle sert pour les périspomènes. Le plus simple est donc de
+taper '{}
.
Les signes exotiques (stigma, stampi et autres qoppas) ne sont pas +disponibles directement. Il faut taper :
+\Digamma pour
+ |
+ \ddigamma pour
+ |
+
\Sampi pour
+ |
+ \sampi pour
+ |
+
\qoppa pour
+ |
+ + |
+Voici donc un petit exemple de texte (extrait de La Constitution +d'Athènes) tapé avec LaTeX : +
+\textgreek{Peis'istratis m'en o>~un >egkateg'hrase t~h| +>arq~h| ka`i >ap'ejane nos'hsas >ep`i Fil'onew >'arqontos, +af' o<~iou m`en kat'esth t`o pr~wton t'urannos >'eth tri'akonta +ka`i tr'ia Bi'wsas, <`a d' >en t~h| >arq~h| di'emeinen +<enos d'eonta e>'ikosi; >'efeuge g`ap t`a loip`a.}+
ce qui donne :
+Les accents des titres en grec posent des problèmes lorsqu'ils doivent +figurer dans des titres courants (l'ordinateur ne lit pas encore dans +votre pensée et va bêtement continuer à mettre des accents à l'intérieur +des mots). Bien sûr on est en droit d'aimer les accents qui se promènent +entre deux caractères majuscules, mais en général il vaut mieux indiquer +une alternative à l'ordinateur.
+Vous pouvez utiliser la commande \hsection
définie ainsi :
+\newcommand*{\hsection}[2]{% + {% + \renewcommand*{\sectionmark}[1]{}% + \section{#2}% + }% + \sectionmark{#1}% +} ++
Cette macro prend deux arguments : la première paire d'accolades contiendra le +titre destiné au titre courant, la seconde contiendra le titre destiné à +la table des matières et au texte lui-même.
+Supposons que vous ayez pris pour titre de section la formule +édifiante de la grammaire des ragondins : . Vous taperez +dans le fichier source :
++\hsection{\textgreek{Pajwn nhpioc>egnw}} +{\textgreek{Paj`wn n'hpioc >'egnw}} ++
+Autrement, il est possible de redéfinir les en-têtes de page pour qu'ils
+ne soient pas en capitales (package fancyhdr
).
+
Bienvenue sur notre page LaTeX. Celle-ci est conçue pour vous +apprendre à vous servir de LaTeX, un système très puissant pour +composer du texte (mettre en forme et mettre en page), utile dans de +nombreux domaines (littérature, langues anciennes ou ésotériques, +textes scientifiques, etc.).
+Le contenu de cette introduction à LaTeX +est organisé comme suit:
+ Concernant les bases de LaTex, vous pouvez aussi consulter une petite
+documentation au format PostScript : latex.ps.gz
(que vous pouvez
+télécharger ou consulter directement). Attention, il y a des éléments
+ obsolètes dedans.
Pour certains sujets bien précis, nous mettons à votre disposition +des fiches techniques, expliquant les différentes manières de faire telle +ou telle chose. Voici la liste des sujets existants, si vous pensez +qu'un sujet important a été oublié, envoyez-nous un mail !
+Des modèles qui pourront vous servir en de nombreuses occasions... +Télechargez-les, puis utilisez-les comme base pour rédiger une lettre, un +CV, un rapport de stage, etc.
+article
et le squelette du document.book
et le squelette du document.Des CV : on donne plusieurs exemples de CV, +présentés différemment, et utilisant des techniques différentes. Il est +certain que, pour quelqu'un qui n'a pas l'habitude d'utiliser LaTeX, un +traitement de textes classique sera bien plus facile à utiliser pour +taper un bête CV. Cela dit, faire du LaTeX c'est aussi voir comment les +autres ont fait...
++Nous vous invitons à consulter notre page: + Documentations sur LaTeX +Ci-dessous les références les plus utiles. +
++Dans cette page, nous allons voir comment utiliser LaTeX pour taper des +langues « exotiques ». Par là, nous entendons des langues qui s'écrivent +avec autre chose que l'alphabet latin, comme le russe ou le japonais. +
++LaTeX a été conçu avant tout par des Américains, et à ce titre, prévu pour +taper de l'anglais. Comme l'auteur principal est quelqu'un de soigneux, il +est assez facile de rajouter des accents, et même de taper autre chose que +de l'alphabet latin. Mais facile ne veut pas dire pratique : avec la manière +directe de procéder, le code source d'un mot en grec ancien risque d'être +moins lisible que les jurons de Fantasio. +
++Heureusement, LaTeX est programmable, et des extensions ont été écrites pour +permettre plus de confort. Hélas, ces extensions sont toutes plus ou moins +incompatibles entre elles, et souvent plutôt plus que moins. Par exemple, si +vous voulez taper du français et du grec, vous avez un choix exclusif entre +taper confortablement les caractères accentués français et taper +confortablement les mots grecs. +
+
+Plus récemment, l'informatique a vu le développement d'Unicode, un système
+qui résout les problèmes de langues dans les fichiers textes (un fichier
+.tex
est un fichier texte. L'architecture de LaTeX ne l'a pas
+rendu facile, mais petit a petit, il est devenu possible de bénéficier de ce
+progrès.
+
+Unicode résout certains problèmes, mais ne les résout pas tous. Le principal +est bien sûr celui des polices : votre texte aura beau contenir, +informatiquement parlant, des idéogrammes chinois, si ces idéogrammes ne +sont disponibles dans aucune police que connaît LaTeX, vous n'irez pas loin. +
++Ensuite, Unicode est conçu pour la saisie du texte, pas son rendu : +Unicode traite des entités plus ou moins abstraites appelées caractères, qui +n'ont pas nécessairement un rapport direct avec les glyphes qu'on veut voir +dans un document imprimé. Pour les langues européennes, ça se passe plutôt +bien, mais certaines langues, l'arabe et surtout les langues indiennes, ont +des interactions entre caractères très complexes : ligatures, +réordonnancement, combinaisons, etc. Unicode n'aplanit pas ces difficultés, +il se contente de fournir un point d'entrée confortable à une extension qui +le fait — si elle existe. +
++Enfin, LaTeX est conçu presque exclusivement pour l'écriture de gauche à +droite. Ses algorithmes sont incapables de gérer l'écriture de droite à +gauche de l'arabe et de l'hébreu, et l'écriture en colonnes. +
++Après toutes ces considérations défaitistes, on en vient à se demander s'il +est possible de taper autre chose que de l'anglais. Voici une petite liste +de ce qui marche bien. +
++La distribution standard de LaTeX comporte des polices latines, grecques et +cyrilliques. Des polices chinoises et japonaises sont également disponibles, +mais parfois plus techniques à installer. Il y en a installées à l'ENS. +
++Avant de commencer, il y a un pré-requis qui n'est pas spécifique à LaTeX : +savoir taper un texte quelconque, dans la langue qui vous intéresse, en +Unicode. Heureusement, nous avons une documentation sur les +éditeurs en Unicode, +que nous vous invitons à lire avant d'aller plus loin si ce n'est déjà fait. +
++Tout ce que vous avez à faire maintenant, c'est de créer votre fichier LaTeX +avec votre éditeur en Unicode. Nous allons voir dans un instant ce qu'il +faut mettre dans le préambule. +
++Dans le cas général, il n'y a quasiment rien à changer. Il suffit d'avoir la +ligne suivante dans le préambule : +
+\usepackage[utf8]{inputenc}+
+(à la place de l'habituel latin1
). Avec cette ligne, un texte
+en alphabet latin étendu (y compris œ
,
+“
, ”
, ‘
,
+’
, €
, …
,
+—
, etc., tapés directement) fonctionne directement.
+
+Pour d'autres langues, il faut quelques options supplémentaires, et en +particulier informer babel du changement de langue. +
+
+Jusqu'a présent, vous n'avez probablement utilisé du package babel que la
+ligne \usepackage[francais]{babel}
. Il est temps d'apprendre à
+l'utiliser pour d'autres langues. Par chance, c'est assez simple. La
+première chose à faire est de charger les bons modules :
+
\usepackage[greek,russian,francais]{babel}+
+La dernière langue mentionnée est la langue « principale » du document, +celle qui est sélectionnée s'il n'y a pas d'indication contraire. L'ordre +des autres langues n'a pas d'importance. +
++Il faut ensuite, tout au long du texte, indiquer les changements de langue. +Trois commandes permettent de faire ça : +
+\selectlanguage{langue}+
+sélectionne une nouvelle langue pour tout le reste du texte, ou jusqu'à la +prochaine rencontre avec la même commande. De manière surprenante, cette +commande s'échappe des groupes et des environnements ; à utiliser avec +prudence donc. +
++\begin{otherlanguage}{langue} +\end{otherlanguage} ++
+sélectionne une langue pour l'étendue de l'environnement. Aucune surprise +ici. +
+\foreignlanguage{langue}{blabla}+
+sélectionne une langue pour le texte « blabla », et s'utilise de la même
+manière que \emph
.
+
+Souvent, des commandes plus compactes sont disponibles spécifiquement pour
+une langue donnée (comme \textgreek
pour
+\foreignlanguage{greek}
).
+
Attention, il est souvent nécessaire de +bien informer LaTeX du changement de langue. En effet, le changement de +langue s'accompagne d'un changement de police (plus précisément, +d'encodage de police), ce dont LaTeX ne prend pas l'initiative tout +seul. +
+
+Dans le cas d'un texte comportant beaucoup de mots étrangers, par exemple le
+commentaire en français d'un texte grec, changer sans arrêt de langue est
+fastidieux, même en ayant défini une macro très courte. Il est possible
+d'automatiser ça en utilisant le package autofe
. Attention
+cependant si vous optez pour cette solution : si dans un mot certains
+caractères sont disponibles dans la police actuelle et d'autres pas, ce mot
+sera rendu avec un mélange de polices, ce qui peut être très laid, et vous
+n'aurez aucun avertissement. De plus, au delà de quelques mots, il faut
+quand même expliciter le changement de langue, faute de quoi la typographie
+et, plus grave, la césure ne respecteront pas les règles spécifiques.
+
+Le nom pour babel est simplement greek
. La commande
+\textgreek{blabla}
est définie pour avoir le même
+effet que \foreignlanguage{greek}{blabla}
. Le
+changement de langue est nécessaire pour que la police soit disponible.
+
+Quand le grec est actif, LaTeX utilise une sorte de translittération depuis +l'alphabet latin, avec des conventions pour les accents et les esprits. Mais +comme nous travaillons en UTF-8, c'est inutile et nous n'en parlons pas. +
+
+Le nom pour babel est russian
, et le changement de langue est
+nécessaire pour que la police soit disponible. Rien d'autre à signaler.
+
+Là, ça se complique un peu, il faut quelques packages supplémentaires. Voici +ce qu'il faut mettre dans le préambule pour du chinois traditionnel : +
++\usepackage[cjkbg5]{ucs} +\usepackage[utf8]{inputenc} +\usepackage[C00,T1]{fontenc} +\DeclareFontSubstitution{C00}{sng}{m}{n} ++
+et pour du chinois simplifié : +
++\usepackage[cjkgb]{ucs} +\usepackage[utf8]{inputenc} +\usepackage[C10,T1]{fontenc} +\DeclareFontSubstitution{C10}{sng}{m}{n} ++
+Les deux ont la même structure. La première ligne indique quelle
+interprétation choisir pour un caractère qui aurait le mauvais goût d'être
+commun au chinois simplifié, au chinois traditionnel et au japonais. La
+troisième ligne charge l'encodage nécessaire (C00 pour le chinois
+traditionnel, C10 pour le simplifié), ainsi que l'encodage occidental (faute
+de quoi ça ne marche pas). Enfin, la dernière ligne indique quelle famille
+de police employer par défaut pour cet encodage, ici Arphic SungtiL
+(sng
). Deux autres polices sont disponibles ici, Arphic KaitiM
+(kai
), très ornée, et Bitstream Cyberbit (cyb
),
+qui n'est pas libre. Il est possible de changer de police en modifiant la
+ligne \DeclareFontSubstitution
ou en utilisant la commande
+\fontfamily
.
+
+Quelques points supplémentaires à savoir. D'abord, babel n'a pas de mode +pour le chinois. Pour éviter des bizarreries typographiques, il peut être +bon de passer babel en mode anglais pour un bout de chinois. Ensuite, ce +mode de saisie n'est pas capable de couper automatiquement entre les +idéogrammes ; il est nécessaire d'insérer des espaces à la main. Peut-être +dans un avenir proche un package résoudra-t-il le problème. +
+
+L'installation de polices chinoises pour LaTeX est assez acrobatique, et
+pas complètement standard. Les indications ci-dessus fonctionneront
+normalement sur l'installation LaTeX de l'ENS, mais il n'est pas sûr du tout
+que ce soit le cas ailleurs ; en particulier, les noms des polices (pour le
+\DeclareFontSubstitution
) peuvent varier considérablement.
+
+Là, ça se complique un peu, il faut quelques packages supplémentaires. Voici +ce qu'il faut mettre dans le préambule : +
++\usepackage[cjkjis]{ucs} +\usepackage[utf8]{inputenc} +\usepackage[C42,T1]{fontenc} +\DeclareFontSubstitution{C42}{dg}{m}{n} ++
+La première ligne indique quelle
+interprétation choisir pour un caractère qui aurait le mauvais goût d'être
+commun au japonais et au chinois. La
+troisième ligne charge l'encodage nécessaire (C42 pour le japonais), ainsi
+que l'encodage occidental (faute de quoi ça ne marche pas). Enfin, la
+dernière ligne indique quelle famille de police employer par défaut pour cet
+encodage, ici Wadalabe DG (dg
). Trois autres polices Wadalabe
+sont disponibles ici, dm
, mc
et mr
.
+Il est possible de changer de police en modifiant la ligne
+\DeclareFontSubstitution
ou en utilisant la commande
+\fontfamily
. La police (non-libre) Bitstream Cyberbit est
+également disponible sous le nom cyb
, mais il faut dans ce cas
+remplacer partout C42 par C40, et donc exclure d'utiliser les polices
+Wadalabe.
+
+Quelques points supplémentaires à savoir. D'abord, babel n'a pas de mode +pour le japonais. Pour éviter des bizarreries typographiques, il peut être +bon de passer babel en mode anglais pour un bout de japonais. Ensuite, ce +mode de saisie n'est pas capable de couper automatiquement entre les +caractères ; il est nécessaire d'insérer des espaces à la main. Peut-être +dans un avenir proche un package résoudra-t-il le problème. +
+
+L'installation de polices japonaises pour LaTeX est assez acrobatique, et
+pas complètement standard. Les indications ci-dessus fonctionneront
+normalement sur l'installation LaTeX de l'ENS, mais il n'est pas sûr du tout
+que ce soit le cas ailleurs ; en particulier, les noms des polices (pour le
+\DeclareFontSubstitution
) peuvent varier considérablement.
+
.tex
+ Cette page a pour but d'apprendre à se servir de LaTeX. Vous y +verrez quel est le principe de LaTeX, et comment l'utiliser sur les +machines de l'École, et même quelques conseils concis pour l'utiliser + sur votre ordi personnel. + Les principales commmandes de LaTeX sont +expliquées ailleurs. Mais prenons d'abord le +temps de comprendre son fonctionnement...
+La composition d'un texte avec LaTeX est regroupée en trois temps. +D'abord, on rédige le texte en question (ainsi que les commandes de mise +en page destinées à LaTeX). Ensuite, on compile le document, c'est-à-dire +qu'on le donne à LaTex pour qu'il fasse la mise en page. Enfin, on +visualise le résultat, pour corriger des fautes, l'imprimer, l'envoyer +par mail...
+Fonction | +Commande | +Exemple | +Astuces | +
Écrire | +
+ éditeur fichier.tex
+ |
+
+ kate bla.tex
+ |
+ Ne pas oublier de sauvegarder avant de compiler ! Sinon, les + modifications n'apparaîtront pas... | +
Compiler (pdf) | +
+ pdflatex fichier.tex
+ |
+
+ pdflatex bla.tex
+ |
+ +Plutôt que de retaper à chaque fois la commande, utilisez les flèches! En +cas d'erreur, taper x pour arrêter la compilation. + | +
Résultat | +
+ evince fichier.pdf
+ |
+
+ evince bla.pdf
+ |
+ Mettez un & à la fin de la ligne pour garder la
+fenêtre en tâche de fond, evince recharge le fichier pdf automatiquement à
+chaque fois que vous compilez.
+ |
+
Imprimer | +
+ lpr fichier.pdf
+ |
+
+ lpr bla.pdf
+ |
+ Vérifier que personne n'est en train d'imprimer, avec la commande
+lpq ; et surtout, si vous avez lancé une impression avant
+de vous rendre compte qu'il n'y avait pas de papier, annulez-la avec la
+commande lprm . |
+
Il faut utiliser un éditeur de
+texte. Si par exemple vous utilisez kate
et que vous
+voulez éditer le fichier rapport.tex
, tapez :
kate rapport.tex+
Ce fichier, auquel on donne le nom que l'on veut, a obligatoirement
+le suffixe .tex
, pour l'identifier. rapport.tex
+est le fichier source, c'est-à-dire le fichier qui sera
+interprété par le compilateur ; c'est donc celui où on écrit le texte
+agrémenté de quelques commandes.
.tex
+ Ça veut dire le « passer à la moulinette » : le compilateur, ici +LaTeX, interprète le source à l'aide des commandes qui y ont été insérées +et qui lui indiquent la manière dont il faut mettre le texte en page. +Tapez dans un terminal :
+pdflatex document.tex+
Sur l'écran vont se mettre à défiler diverses choses. Si tout va
+bien, le programme va « rendre la main » et le prompt réapparaît. Si
+vous tapez ls
vous verrez
+que de nouveaux fichiers sont apparus : outre le
+document.tex
, il y a un document.aux
, un
+document.log
et un document.pdf
. C'est le
+dernier qui nous intéresse, car il contient le résultat graphique de la
+compilation.
S'il y a une erreur : LaTeX interrompt la
+compilation en donnant un message d'erreur. Dans ce cas, il faut taper
+x
dans la fenêtre où on a lancé la compilation, afin que le
+programme rende la main (qu'on puisse à nouveau taper des commandes
+derrière le prompt). Il faut ensuite éditer le source (dans une autre
+fenêtre pour simplifier la tâche), corriger l'erreur indiquée, sauver le
+document (pour enregistrer la modification) et recompiler.
Vous pouvez aussi obtenir un fichier dvi à la place du fichier pdf +en tapant :
+latex document.tex+
au lieu de pdflatex document.tex
.
+latex est la commande la plus ancienne. Pour voir le dvi, il faut utiliser
+ xdvi ou kdvi. Pour l'imprimer, la commande est dvips. Il existe encore
+ certains packages, comme pstricks, qui ne marchent qu'avec latex. Mais il
+ existe pgf/tikz à la place, et la plupart des temps, il est plus simple
+ d'utiliser pdflatex.
+
Pour visualiser le résultat de la compilation, qui est le fichier
+.pdf
, tapez :
evince document.pdf &+
Le &
met le programme lancé en tâche de fond; il
+rend donc la main et on peut taper de nouvelles commandes dans la fenêtre
+où on a lancé le programme, ici evince
+Cela vous évite d'avoir à relancer le pdf
à chaque fois que vous recompilez.
+
Si vous avez compilé votre document avec la commande
+ latex
, tapez à la place xdvi document.dvi
+ &
ou kdvi document.dvi
.
Une nouvelle fenêtre va apparaître, qui montre le résultat de la
+compilation. On peut alors relire le document, voir ce qui ne va pas et
+faire la correction dans le source, recompiler et cliquer sur la fenêtre
+pdf
: le document recompilé est remis à jour. On procède
+ainsi jusqu'à obtenir le résultat souhaité.
Le lecteur dvi ou pdf propose cette option dans ses menus. N'oubliez + pas de choisir comme imprimante lwsalles-2 si vous voulez imprimer en + recto-verso, et lwsalles sinon. +
+ ++Le logiciel LaTeX étant un surensemble de TeX, et ses frontières n'étant +(volontairement) pas nettement définies, il existe de nombreuses +distributions de LaTeX ; nous vous conseillons de vous orienter +vers l'une d'elles si vous voulez vous procurer LaTeX. +Nous recommandons notamment la + TeXlive, qui +existe pour Linux, FreeBSD, Solaris, MacOS X et Windows +
+Il existe aussi de nombreux logiciels, pour vous aider à utiliser + LaTeX, tels que + +texmaker + ou + +kile.
+Pour avoir plus de renseignements sur les différentes distributions +et les différents systèmes d'exploitation, reportez-vous à la page consacrée à ces +questions chez GUTenberg.
+Rappelons que, si vous êtes élèves, ancien élève, étudiant ou +enseignant à l'ENS, les tuteurs sont à même de répondre à vos questions +concernant l'installation de LaTeX à l'ENS, ou les possibilités de LaTeX en +général. N'hésitez pas à nous envoyer +un mail !
+La plupart des distributions proposent des paquets précompilés. +Pour Ubuntu, vous pouvez vous référer à la page suivante + LaTeX et Ubuntu . +
++On dit du bien de +MikTeX, implémentation de +LaTeX spécifique à Windows (aller dans la section Download, télécharger +et installer). Il est ensuite recommandé d'installer Texmaker. +
+ +letter
+ lettre
+ Il existe, grosso modo, deux classes de documents pour écrire
+une lettre sous LaTeX : la classe letter
et la classe
+lettre
.
letter
+ C'est la plus simple des deux (mais forcément, elle fait moins de
+choses...). Attention, par défaut, cette classe ne respecte pas la
+convention de placement des noms à la française.
+\usepackage{french}
corrige cela (ce package n'existe plus,
+le remplacent un package commercial frenchpro
et une
+version diminuée de ce dernier mais gratuite frenchle
),
+mais pas \usepackage[francais]{babel}
.
Un document de base est structuré comme suit (les parties qui +doivent être modifiées sont en italique) :
++\documentclass[11pt]{letter} + +\name{nom de l'expéditeur} +\address{adresse de l'expéditeur} +\signature{signature de l'expéditeur} +\date{date d'expédition} + +\begin{document} +\begin{letter}{nom du destinataire} +\opening{formule de politesse (« adresse » : cher Monsieur, etc.)} + +Corps de la lettre + +\closing{formule de politesse (veuillez agréer, etc)} +\ps{post-scriptum} +\cc{nom des autres destinataires} +\encl{pièces jointes} +\end{letter} +\end{document} ++
Bien entendu, il n'est pas nécessaire de spécifier \ps
,
+ou \cc
, s'il n'y a pas lieu. Vous pouvez télécharger le fichier modèle pour la classe de documents
+letter
.
La présentation de la lettre dépendra de la langue choisie. Par
+défaut, la présentation est anglaise (on signe à la main sous le nom,
+présentation en blocs sans indentation pour la première ligne d'un
+paragraphe, formule de politesse d'ouverture alignée à gauche, etc.) En
+utilisant le package french
de babel
+(attention, c'est bien french
qu'il faut et non
+francais
).
lettre
+ La classe lettre
se fonde sur letter
, mais
+ avec quelques améliorations. Elle a été écrite par Denis Mégévand.
Voici un exemple de fichier de base (vous disposez de toutes les
+commandes de la classe letter
, on ne les redonne pas toutes
+ici) :
+\documentclass[11pt]{lettre} + +\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} +\usepackage[francais]{babel} + +\begin{document} +\begin{letter}{destinataire} +\name{expéditeur} +\def\concname{Objet :~} % On définit ici la commande 'objet' +\conc{Objet de la lettre} +\nref{Références de la lettre, de votre point de vue} +\vref{Références de la lettre, du point de vue de votre interlocuteur} +\opening{Madame, Monsieur,} + +Corps de la lettre + +\closing{formule de salutations} + +\end{letter} +\end{document} ++
+Une question fréquente concerne la manière de retirer le trait +que la classe lettre imprime pour faciliter le pliage du courrier en +trois. On peut trouver disgracieux ce trait. Pour le retirer, il y a +trois méthodes +
++Premièrement, on peut placer dans le préambule cette définition +
++\makeatletter +\newcommand*{\NoRule}{\renewcommand*{\rule@length}{0}} +\makeatother ++
+et utiliser la commande \NoRule
dans le corps des lettres
+pour lesquelles on ne souhaite pas ce trait. Par exemple
+
+\begin{letter}{Premier destinataire} + \NoRule + Corps de la lettre +\end{letter} + +\begin{letter}{Second destinataire} + Corps de la lettre +\end{letter} ++
+donnera deux lettres, dont la première n'aura pas de trait de pliage +mais la seconde si. +
+
+Deuxièmement, vous pouvez placer dans le fichier .ins
(voir
+la section « Personnaliser ») une ligne supprimant le trait
+chaque fois que vous utiliserez ce fichier .ins
.
+
+\renewcommand*{\rule@length}{0} ++
+Troisièmement, si vous voulez systématiquement supprimer ce trait, vous
+pouvez créer une classe spéciale xletter
. Créez un fichier
+xletter.cls
et saisissez le code suivant.
+
+\NeedsTeXFormat{LaTeX2e} +\ProvidesClass{xlettre} + +\newcommand*{\xlettre@do}{} +\newcommand*{\xlettre@rule}{} +\newcommand*{\xlettre@norule}{% + \let \xlettre@institut=\institut + \def \institut ##1{% + \xlettre@institut{##1}% + \def \rule@length {0}% + }% + \def \@institut {% + \makeatletter \input{default.ins}\makeatother + \def \rule@length {0}% + }% +} + +\DeclareOption{rule}{\let \xlettre@do =\xlettre@rule} +\DeclareOption{norule}{\let \xlettre@do =\xlettre@norule} +\DeclareOption*{\PassOptionsToClass{\CurrentOption}{lettre}} + +\ExecuteOptions{norule} +\ProcessOptions + +\LoadClass{lettre} + +\xlettre@do + +\endinput ++
+Placez ce fichier dans les chemins de recherche de TeX. L'utilisation
+de cette classe est strictement identique à celle de lettre
+mais elle accepte deux options supplémentaires :
+
+\documentclass{xlettre} ++
+ou +
++\documentclass[norule]{xlettre} ++
+supprime systématiquement les traits de pliage, tandis que +
++\documentclass[rule]{xlettre} ++
+les ajoute conformément aux règles de la classe lettre
.
+
Un certain nombre de paramètres de vos lettres sont peu susceptibles
+de changer. Votre nom ou votre adresse, par exemple. Vous souhaiteriez
+donc pouvoir disposer d'un en-tête par défaut pour vos lettres. Ça tombe
+bien, car avec la classe lettre
, l'en-tête par défaut est
+obligatoire.
L'en-tête est défini dans un fichier de configuration,
+default.ins
et qui doit être placé dans le répertoire
+inputs (une autre possibilité est de placer ces commandes dans un
+fichier noel.ins
et d'utiliser dans le fichier
+.tex
la ligne
+
+\institut{noel} ++
+dans le préambule, à chaque fois que vous devrez utiliser ces +paramètres). Voici un exemple :
++\name{Père Noël} +\signature{Papa Noël} +\address{\centering + \textbf{\textsc{Père Noël, Lutins et Associés}}\\ + % On peut mettre en forme l'en-tête... Ici, il est centré, et on + % demande à ce que le nom soit en petites majuscules et en gras. + Fabricant de jouets depuis toujours\\ + Palais des Jouets} +\lieu{Pôle Nord} + +% Ce paramètre sert à indiquer dans la lettre « Au Pôle +% Nord, le 25 décembre 2000 » + +\telephone{} +\email{pere.noel@polenord.pn} +\nofax +% C'est \fax{} pour indiquer un numéro de fax ++
Ce qui donne la chose suivante en guise d'en-tête :
++Il est très facile de définir de nouvelles commandes qui seront autant +d'abréviations. Par exemple : +
++\newcommand\cad{c'est-à-dire} ++
+Cette ligne crée une nouvelle commande, \cad
, qui sera
+automatiquement remplacée lors de la compilation par le texte
+« c'est-à-dire ». Remarquez que LaTeX proteste si la commande que
+vous définissez existe déjà. Vous pouvez ainsi remplacer les choses un peu
+longues à taper par des commandes abrégées. Pour une thèse sur le
+chevalier Paul-Louis de la Grange-Noble, vous aurez tout intérêt à
+définir dès le début :
+
+\newcommand\PL{Paul-Louis de la Grange-Noble} ++
+Il arrive fréquemment d'avoir besoin de redéfinir une commande qui existe +déjà. Dans ce cas-là, on utilise simplement: +
++\renewcommand\nom{contenu} ++
à la place de newcommand
.
+
+Après toute commande dont le nom est composé de lettres (comme
+\LaTeX
, par exemple et à l'inverse de \$
), les
+espaces sont ignorées. Par conséquent, si
+vous voulez que votre macro soit suivie d'une espace dans le résultat
+final, utilisez l'une des méthodes suivantes :
+
+Le Maître du Monde, \cad{} moi, ... +Le Maître du Monde, \cad\ moi, ... +Le Maître du Monde, {\cad} moi, ... ++
Ce serait une très mauvaise idée de mettre une espace dans la +définition de la macro, car vous auriez toujours une espace, y +compris avant une ponctuation. +
+Vous pouvez utiliser le package xspace
pour remédier à
+cette nécessité. Dans le préambule, ajoutez :
+\usepackage{xspace}
Ensuite, écrivez vos macros de la façon
+suivante :
+
+\newcommand\cad{c'est-à-dire\xspace} ++
La commande \xspace
teste ce qui suit la commande :
+si c'est une ponctuation ou {
ou }
, elle ne fera
+rien; dans les autres cas, elle ajoute une espace. Une conséquence de ce
+fonctionnement est qu'une \footnote
suivant \cad
+va produire une espace inopportune. Elle peut être évitée en
+tapant
+
+(...) \cad{}\footnote{Ma note de pied de page} (...) ++
+Les commandes utilisées comme raccourcis atteignent vite leurs limites. +D'ailleurs les raccourcis peuvent être également du ressort des éditeurs +(cf. le chapitre « Abréviations » de la page Emacs avancé). +Les commandes peuvent avoir des rôles bien plus importants : +
+
+La séparation fond-forme peut être atteinte en assignant à chaque
+élément sémantique une commande (on appelle cela aussi le balisage
+générique). Par exemple \auteur
pour
+citer des auteurs, ou \source
pour indiquer la source d'une
+citation. Supposons que nous souhaitions afficher les auteurs avec leur
+nom en petites capitales grâce à la commande utilisée ainsi
+
+\auteur{prénom}{nom} ++
+on dit alors que la commande \auteur
« prend deux
+arguments », tous deux délimités par des paires d'accolades.
+Du coup, la définition de la commande devient
+
+\newcommand\auteur[2]{...} ++
+Le 2
voulant dire que la commande \auteur
a
+besoin de deux arguments pour fonctionner.
+On voudrait que la commande \auteur
accomplisse
+l'équivalent de
+
prénom~\textsc{nom} ++
~
est l'espace insécable, et le nom est mis en petites
+capitales.
+Pour TeX, prénom étant le premier argument on va l'appeler
+#1
et nom fort logiquement #2
.
+Nous n'avons plus qu'à compléter la définition
+
+\newcommand\auteur[2]{#1~\textsc{#2}} ++
+L'avantage de procéder ainsi est que, plus tard, si les petites
+capitales ne vous conviennent plus vous pourrez changer de manière
+cohérente tout votre document (qu'il fasse deux ou plus de 1000 pages)
+en changeant une ligne.
+La même modification serait au contraire extrêmement fastidieuse si vous
+aviez tapé systématiquement
+prénom~\textsc{nom}
car il faudrait
+relire l'ensemble du document et procéder aux modifications en prenant
+garde de ne pas modifier un \textsc
qui ne serait pas celui
+d'un auteur. Vous pouvez vous créer un fichier de style avec
+vos définitions les plus courantes : cf. Écrire son propre package qui pourra
+inclure (ce ne sont que des exemples, ce sont les besoins spécifiques
+d'un document particulier qui décident quelles commandes il est
+souhaitable de définir)
+
+\newcommand\titre[1]{\emph{#1}} +\newcommand\auteur[2]{#1~\textsc{#2}} +\newcommand\source[1]{\footnote{#1}} ++
+En plus de vous permettre de contrôler le rendu de votre document,
+l'utilisation de commandes spécifiques à chaque besoin permet
+d'accomplir des tâches complexes adaptées à chaque élément de votre
+document. Supposons que votre commande \auteur
vous
+satisfasse dans un premier temps, mais que plus tard vous arriviez à
+vous dire qu'un index des auteurs (avec les pages où ils sont
+mentionnés) serait du meilleur effet. Puisque vous avez une commande
+spécifique, il vous suffit de la « surcharger », c'est-à-dire de lui
+ajouter toute la machinerie nécessaire à la réalisation de la toute
+nouvelle tâche complexe (et cela sans toucher au reste du texte). Vous
+pourriez essayer de remplacer votre
+définition initiale par (cf. Faire un index
+avec MakeIndex)
+
+\newcommand\auteur[2]{#1~\textsc{#2}\index{#2, #1}} ++
+qui produit « prénom nom » et indexe l'auteur +sous la forme « nom, prénom » (pour faciliter la +recherche). +
+
+En fait, la définition précédente est très largement perfectible,
+notamment parce que MakeIndex ne comprend pas très bien les accents (on
+peut pour cette raison, lui préférer Xindy). Ce qu'il faut retenir de
+tout cela, c'est qu'une fois que la macro spécifique est mise en place
+(ici \auteur
), peaufiner la présentation du document se
+bornera à effectuer de petites modifications sur quelques commandes.
+Le seul prérequis est que vous définissiez assez tôt la commande et cela
+même si vous pensez ne pas être compétent pour écrire le code
+nécessaire : écrivez dans ce cas une commande qui ne fasse rien comme
+
+\newcommand\auteur{} ++
+car vous pourrez toujours modifier la macro à mesure que vous progressez +en LaTeX ou alors quelqu'un de plus savant pourra vous venir en aide, il +sera toujours plus facile pour lui de ne travailler que sur une macro +isolée plutôt que sur tout un document. +
+
+Enfin sachez qu'il est possible de définir des commandes prenant des
+arguments optionnels à l'instar de, par exemple,
+\usepackage
. C'est-à-dire qu'il est possible de définir
+une commande \auteur
telle que
+\auteur{prénom}{nom}
fasse ce qui a
+été dit jusqu'alors et que
+\auteur[textit]{prénom}{nom}
mette
+en italique le numéro de page dans l'index (pour distinguer divers types
+de mention de l'auteur). Il est même possible d'avoir trois commandes
+en une :
+
+\auteur*{prénom}{nom} % Imprime seulement +\auteur {prénom}{nom} % Imprime et indexe +\auteur[textit]% + {prénom}{nom} % Imprime, indexe + % et met la page en italique ++
+Par souci d'exhaustivité, je place le code correspondant. Il est certes +un peu complexe, mais on ne peut pas attendre d'une macro qu'elle abatte +des montagnes sans l'éduquer un tant soit peu. +
++% Tester si une chaîne est vide +\usepackage{ifmtarg} + +% À partir de maintenant, pour TeX, « @ » est une lettre et peut donc +% participer à l'élaboration de noms de commande complexes comme +% \@ifmtarg défini par le package homonyme ou \@ifstar défini par LaTeX +\makeatletter + +% Si \auteur est suivi d'une étoile appeler \sauteur, sinon \oauteur +\newcommand*{\auteur}{\@ifstar\sauteur\oauteur} + +% \sauteur{prénom}{nom} imprime seulement +\newcommand*{\sauteur}[2]{#1~\textsc{#2}} + +% \oauteur[comment]{prénom}{nom} imprime et indexe +\newcommand*{\oauteur}[3][]{% Par défaut <comment> est vide + \sauteur{#2}{#3}% + \@ifmtarg{#1}{% #1 est-il vide ? + \index{#3, #2}% Oui (mise en page par défaut) + }{% + \index{#3, #2|#1}% Non (mise en page particulière) + }% +} + +% À partir de maintenant, pour TeX, « @ » n'est plus une lettre +\makeatother ++
+Les environnements
+\begin{env}...\end{env}
sont une
+structure classique de LaTeX que vous pouvez aussi adapter à vos
+besoins. Pour cela on utilise la commande \newenvironment
:
+
+\newenvironment{env}{% + begin +}{% + end +} ++
+à ce moment-là, lorsque vous utiliserez +
++\begin{env} + . + . + . +\end{env} ++
+TeX substituera essentiellement (remarquez les accolades qui forment un +« groupe ») +
++{begin + . + . + . +end} ++
+Prenons un exemple — peu intéressant, mais commençons doucement
+— pour être clair. On définit l'environnement
+itenv
ainsi
+
+\newenvironment{itenv}{% + \itshape +}{% + % Rien +} ++
+Maintenant, quand vous tapez +
++\begin{itenv}Texte\end{itenv} ++
+vous obtiendrez le même résultat que +
++{\itshape Texte} ++
+qui met « Texte » en italique. Développons un exemple plus
+intéressant. Supposons que vous vouliez avoir plus de souplesse avec
+les citations de votre document (pour l'interlignage, la police, etc.).
+Pour cela vous pourriez définir un
+environnement myquote
ainsi
+
+\newenvironment{myquote}{% + \begin{quote}% Environnement quote + \itshape % ... en italique + \small % ... en plus petit +}{% + \end{quote}% +} ++
+Remarques : 1. de manière analogue aux commandes, on ne peut pas définir
+un environnement qui existe déjà ; 2. il n'est pas possible de définir
+un environnement portant le même nom qu'une commande existant déjà (par
+exemple, il n'est pas possible de définir un environnement
+usepackage
) et réciproquement (il n'est pas possible de
+définir une commande \center
).
+
+Pour réaliser des macros complexes, on pourra se référer à la FAQ +anglaise qui contient de nombreux trucs de programmation dans la section +« Macro programming » comme +
++Les packages suivants sont d'un grand intérêt pour des applications +complexes : +
+Vous disposez d'un fichier TeX qui contient votre maîtrise, votre +autobiographie, ce que vous voulez. Pour faciliter la vie du lecteur +de votre document final, vous désirez indexer les termes clefs de +votre texte. Le package MakeIndex vous permet de créer un index. Tout +au long de ce cours nous allons utiliser un petit texte d'exemple, +tiré des Mémoires du duc de Luynes (vous pouvez le +télécharger : exemple.txt) :
++À la mort de M. le duc de Bourgogne, lorsqu'il fut question d'aller +jeter de l'eau bénite, le feu Roi décida que si les princes lorrains +s'y presenteroient, qu'eux ni les ducs n'en jetteroient ; mais que si +MM. de Rohan et de Bouillon y étoient, les ducs jetteroient de l'eau +bénite avant eux : ce qui arriva effectivement ; mais MM. de Rohan et +de Bouillon, voyant les ducs passer avant eux, s'en allèrent. Ce qui +avoit été décidé en faveur de MM. les ducs fut écrit sur le registre +de M. de Dreux ; mais deux ans après, les représentations de Mme de +Maintenon déterminèrent le Roi à faire un changement et à ordonner à +M. de Dreux que cet article seroit rayé sur le registre. Il fut mis en +marge que le Roi n'avoit jamais voulu décider entre les ducs et MM. de +Rohan et de Bouillon.+
Commencez par indiquer dans le préambule de votre document que vous
+voulez le charger (attention, il faut bien écrire makeidx
+et non makeindex
) :
\usepackage{makeidx}+
Ensuite, dans la suite du préambule, mettez la +commande
+\makeindex+
qui demande à MakeIndex de se mettre au travail. +Enfin, placez la commande
+\printindex+
à l'endroit où vous désirez placer l'index (à la +fin, normalement).
+Pour obtenir une entrée dans l'index, il faut l'indiquer par la
+commande \index{mon_entree}
. Lors d'une première
+compilation, LaTeX repérera tous les \index
et écrira
+pour chacun d'entre eux une entrée dans exemple.idx
. Ensuite il faudra
+faire une deuxième compilation à l'aide de la commande
+makeindex
:
makeindex exemple.idx+
MakeIndex interprétera les entrées de
+exemple.idx
et les formatera, générant deux nouveaux
+fichier, exemple.ilg
qui
+contient les messages de compilation de MakeIndex, et exemple.ind
qui contient l'index
+formaté. Il faut ensuite une troisième compilation, avec latex, pour
+que exemple.ind
soit intégré à exemple.tex
+et produise l'index.
makeindex
ce que vous voulez indexer, il
+ne le fait pas automatiquement.
++Pourquoi ? Bien sûr, vous préfereriez avoir à ne donner le mot à +indexer qu'une seule fois et laisser l'ordinateur faire le reste, mais +cette procédure manque de souplesse. Admettons que vous +vouliez créer une entrée d'index « Louis XIV ». Un indexage +automatique vous permettrait bien sûr de recenser toutes les +occurrences de « Louis XIV ». +
+
+Mais vous aimeriez sans doute aussi recenser les pages ou vous n'avez
+pas écrit textuellement « Louis XIV », mais où vous en avez parlé sous
+les périphrases « le roi de France », « le monarque », voire un bête
+« il ». Ce que vous permet l'apposition à la main de commandes
+\index{Louis XIV}
après chaque mot ou expression que vous
+voulez voir référencé.
Il faut en tout trois compilations pour que +l'index soit effectif :
+latex exemple.tex +makeindex exemple.idx +latex exemple.tex+
La procédure de base est la suivante : vous voulez indexer, dans le texte
+d'exemple, les ducs et pairs. Vous placez donc, après l'expression à
+référencer, un \index{}
:
+À la mort de M. le duc de Bourgogne, lorsqu'il fut question d'aller +jeter de l'eau bénite, le feu Roi décida que si les princes lorrains +s'y presenteroient, qu'eux ni les ducs\index{Ducs et pairs} n'en +jetteroient (...) ++
+MakeIndex n'a pas été conçu pour les langues possédant des accents :
+dès qu'un mot contenant des caractères accentués se trouvera dans
+votre \index{}
, il le classera au début des mots
+commençant par cette même lettre... Il vous faut donc indiquer
+vous-même à MakeIndex où classer la référence : on utilise pour cela
+une arobase (@
) et le code
+\index{sans_accents@avec_accents}
.
+Par exemple,
+
\index{Princes etrangers@Princes étrangers}+
veut dire que vous demandez à MakeIndex de classer +« Princes étrangers » comme s'il n'y avait pas d'accent dans +l'expression.
+À noter : Vous pouvez utiliser cette technique pour +classer par exemple des membres d'une même famille dans l'ordre +chronologique, et non pas par ordre alphabétique de leur prénom :
++\index{Guise1@Guise, Henri de Lorraine, duc de} +\index{Guise2@Guise, Charles de Lorraine, duc de} ++
Vous pouvez également l'utiliser pour formater à +votre goût l'aspect d'une entrée d'index. Ainsi,
+\index{Bourgogne@\textsc{Bourgogne}, Louis de France, duc de}+
vous permet d'avoir le nom de famille en petites
+majuscules. Vous pouvez évidemment remplacer \textsc{}
par
+n'importe quel type de fonte (italique, gras, penché...).
Pour produire une sous-entrée, vous devez d'abord indiquer l'entrée +principale puis la sous-entrée, séparée par un point d'exclamation. +Ainsi, si l'on reprend notre exemple, vous voulez faire du mot +« registres » une sous-entrée de « service des Cérémonies » :
+\index{Ceremonies@Cérémonies, service de!registres}+
Vous pouvez faire des sous-sous-entrées. MakeIndex et LaTeX ne +supportent que trois niveaux d'indexation : vous ne pouvez pas avoir de +sous-sous-sous-entrées.
+MakeIndex vous permet de faire des références croisées, qui ne renvoient +pas à une page, mais à une autre entrée. Ainsi, dans notre exemple, on +veut que le lecteur qui cherche une entrée à Bouillon soit renvoyé à +« princes étrangers » :
+\index{Bouillon|see{Princes étrangers}}+
vous donnera :
+Bouillon, voir Princes étrangers+
La traduction de |see{}
dépend du package de Babel que
+vous utilisez.
Par défaut, l'index ressemble à ceci (c'est le résultat de
+exemple.tex
) :
Le texte s'étend sur deux colonnes. Si vous voulez modifier le
+formatage de l'index, il vous faudra créer un fichier .ist
+(perso.ist
, par exemple) contenant vos personnalisations.
+Pour utiliser ce fichier .ist
, il faut le donner en option à
+MakeIndex pendant la deuxième compilation :
makeindex -s perso.ist exemple.idx+
Il faut insérer dans votre perso.ist les lignes suivantes :
++heading_prefix "{\\bfseries\\hfil " +heading_suffix "\\hfil}\\nopagebreak\n" +headings_flag 1 ++
Il faut insérer dans votre perso.ist les lignes suivantes :
++delim_0 "\\dotfill" +delim_1 "\\dotfill" +delim_2 "\\dotfill" ++
Voir le manuel de makindex pour la référence complète : sur un système compatible où LaTeX est installé, il suffit de taper
+man makeindex+
Sinon certains sites référencent les pages de manuel, essayer par exemple le site linux.die.net
+ +Ce résumé n'entend pas remplacer un manuel ; n'y figurent donc +que les commandes les plus essentielles, sans détails ni options. En +particulier, rien de ce qui touche aux mathématiques n'est abordé. Pour +tout cela nous renvoyons aux manuels existants, aux tuteurs ou encore aux +autres utilisateurs. Nous supposerons aussi que l'utilisateur sait déjà +compiler un document (sinon, par ici !).
+Vous avez sans doute l'habitude d'utiliser un traitement de texte, +comme Word ou OpenOffice.org. Ces logiciels vous offrent en même temps +deux fonctionnalités différentes :
+Avec LaTeX, ces deux fonctionnalités sont dissociées : +l'« écriture » proprement dite relève d'un logiciel appelé « éditeur de texte »; la « mise +en page » vient ensuite, après interprétation du texte par le +programme LaTeX. Vous manipulez donc en même temps deux versions de +votre document : le texte tapé, qui contient des indications de mise +en page, et la version définitive (appelée le fichier DVI), qui +affiche la mise en page selon les indications fournies.
+Le gros avantage de cette façon de procéder est que vous dissociez le +fond de la forme : quand vous tapez, vous ne vous préoccupez pas de +savoir si vous avez laissé assez d'espace à tel endroit, ou si +l'équilibre de telle page est correct. C'est LaTeX qui se charge de ce +genre de questions.
+ Les commandes de LaTeX commencent par un backslash
+(\
), ce qui permet au programme de les identifier. Beaucoup
+ne s'appliquent qu'à une seule partie du texte, délimitée par des
+accolades. Par exemple, pour afficher le mot LaTeX, on tape
+\LaTeX
; ou encore, pour afficher en gras le mot
+« important », on tape
\textbf{important}+
ce qui donne : important.
+Vous aurez souvent recours à des environnements, +c'est-à-dire à des commandes qui délimitent une portion de texte dans +laquelle d'autres règles de mise en page sont appliquées (par exemple +pour faire des listes, centrer du texte, etc). Les environnements +s'ouvrent avec
+\begin{nom-de-l'environnement}+
et se referment avec
+\end{nom-de-l'environnement}+
Babel est un package qui permet d'obtenir des documents en +plusieurs langues, en respectant les typographies nationales, en +affichant automatiquement les titres (comme « table des matières », +« index », etc) dans la langue choisie, etc. Il gère aussi la +ponctuation. Babel connaît une trentaine de langues. Par exemple, +pour un document en français, vous devrez faire figurer la ligne +suivante dans le source (utiliser le package « babel » avec l'option +« francais », sans cédille) :
+\usepackage[francais]{babel}+
Pour obtenir un document bilingue, vous indiquez +deux langues entre les crochets ; c'est la dernière langue indiquée +qui sera la langue dominante du document. Dans l'exemple qui suit, le +document est en français et on y trouvera des passages en grec :
+\usepackage[greek,francais]{babel}+
Pour alterner entre les langues, on utilise la commande :
+\selectlanguage{nom-de-la-langue}+
en spécifiant entre accolades la langue +demandée. Pour ne pas avoir à retaper en permanence cette longue +commande, il est préférable de se faire des macros (à écrire dans le préambule). Voici un +exemple de préambule, suivi d'un modèle d'utilisation :
++\documentclass{article} + +\usepackage[greek,francais]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} + +% Première possibilité + +\newcommand\gr{\selectlanguage{greek}} +\newcommand\fr{\selectlanguage{francais}} + +% Deuxième possiblité + +\newcommand{\grec}[1]{\selectlanguage{greek}#1\selectlanguage{francais}} ++
D'autre part, certaines commandes sont prédéfinies pour passer dans
+l'autre langue; ainsi, il existe déjà \textgreek{...}
.
+Voici un exemple de texte grec tapé en LaTeX :
\textgreek{Peis'istratis m'en o>\~un >egkateg'hrase t\~h| +>arq\~h| ka`i >ap'ejane nos'hsas >ep`i Fil'onew >'rqontos, +af' o<\~ou m`en kat'esth t`o pr\~wton t'urannos >'eth tri'akonta +ka`i tr'ia Bi'wsas, <`a d' >en t\~h| >arq\~h| di'emeinen +<enos d'eonta e>'ikosi; >'efeuge g`ap t`a loip`a.}+
ce qui donne :
+Pour en savoir davantage, reportez-vous à notre +page sur l'écriture du grec ancien sous +LaTeX.
+Un document LateX comporte une série de lignes indispensables qui en +définissent le squelette. On indique aussi ici un certain nombre de +renseignements utiles pour faire un joli document. Vous pouvez récupérer ce fichier de base et +l'utiliser pour tous vos documents.
+
+ \documentclass{article}
+ |
+ Précise le genre de
+document, exprimé par l'argument : article pour les textes
+ou rapports courts, report pour les rapports un peu plus
+longs, book pour les livres (ou les maîtrises...). |
+
+ \usepackage[francais]{babel}
+ |
+ Lignes ajoutées pour les documents en français, pour que soit prises +en compte les particularités de la typographie française; c'est aussi +grâce à ce package que la date est affichée automatiquement en français, +que le titre de la table des matières est « Table des matières » et non +« Contents », etc. Les deux lignes suivantes permettent d'avoir des +caractères correctement accentués en toutes circonstances. | +
+ \begin{document}
+ |
+ Indique
+le moment où commence le texte proprement dit. Ce qui figure entre
+\documentclass{***} et \begin{document}
+s'appelle le préambule. |
+
+ \end{document}
+ |
+ Indique le +moment où finit le texte. Rien de ce qui suit cette commande ne sera pris +en compte par LaTeX. | +
Vous pouvez taper indifféremment vos accents avec compose
et
+méta
. Il peut arriver (selon les configurations) que
+certains accents ne soient pas compris, pour différentes raisons. Si vous
+avez des problèmes, ou si vous voulez faire apparaître des accents
+étrangers, marquez les accents de la manière suivante dans votre
+fichier : \ accent lettre
.
Par exemple, \'a
donnera « á »; \'u
+donnera « ú ».
Le codage des accents est le même que celui de compose, à l'exception
+de la cédille (fa\c{c}ade
donne façade). Allez voir la page
+des tuteurs consacrée aux accents pour savoir comment on
+les tape et pour avoir un tableau des divers accents avec LaTeX.
Cela dit, nous vous encourageons à taper vos accents en Unicode +(c'est-à-dire, avec la touche Compose, ou naturellement sur un clavier +AZERTY) ; pour cela, ajoutez systématiquement dans l'entête de votre +document les deux lignes suivantes:
++\usepackage[utf8]{inputenc} +\usepackage[T1]{fontenc} ++
La première ligne demande que les caractères accentués soient +reconnus comme de l'utf8, la seconde, que soient utilisées +les fontes de LaTeX incluant les accents.
+utf8
par latin1
+dans la première ligne ci-dessus.
+Pour faire un titre, il faut préciser dans le préambule le titre, +l'auteur et la date :
++\title{Le titre} +\author{L'auteur} +\date{La date} ++
On peut aussi demander que la date soit insérée automatiquement (date du +jour de la compilation) :
++\date\today ++
Pour ne pas préciser un champ, il faut lui donner un argument vide
+(par exemple \author{}
ou \date{}
).
Ensuite, la commande maketitle
indique à LaTeX
+l'endroit où on veut faire figurer le titre (généralement en tout
+début de document, c'est-à-dire juste après
+\begin{document}
).
Vous pouvez demander à LaTeX de structure automatiquement les +documents avec les commandes suivantes :
++\part{} +\section{} +\subsection{} +\subsubsection{} +\paragraph{} +\subparagraph{} ++
Les classes de document report
et book
+proposent en plus la commande \chapter{}
. L'intitulé de la
+section est indiqué entre les accolades.
Les titres de parties ainsi obtenus sont numérotés automatiquement. +Si donc vous bouleversez toute l'organisation de votre texte, la +numérotation se refera d'elle-même à la compilation suivante.
+ À l'endroit où l'on veut voir figurer une table des matières, on
+écrit la commande \tableofcontents
. Attention, il faut
+compiler deux fois pour que LaTeX produise la table des matières
+correctement.
Il peut arriver qu'un titre soit trop long pour figurer dans la table +des matières sans retour à la ligne; dans ce cas, on spécifie entre +crochets le titre qui doit apparaître dans la table des matières, +cependant que le titre complet reste entre accolades :
+\section[Titre plus court]{Un titre vraiment trop long pour tenir +sur une seule ligne}+
Il vous arrivera aussi d'insérer des figures dans votre document. La commande
+\listoffigures
vous permet de générer une liste de toutes
+les figures. Là encore, il faudra deux compilations.
On peut faire une liste d'objets avec les environnements
+itemize
(liste simple) ou enumerate
(liste
+numérotée), de la façon suivante :
+Je veux acheter : +\begin{itemize} +\item des poires ; +\item des carottes ; +\item des choux. +\end{itemize} ++
ou alors :
++Les vainqueurs sont : +\begin{enumerate} +\item Paul Lefort ; +\item Romain Legrand ; +\item Joël Lebel. +\end{enumerate} ++
Parlons ponctuation : dans une liste, les éléments sont terminés par +un point-virgule, sauf le dernier qui finit par un point (cf. les +exemples précédents). Cependant, si chaque élément est formé de plusieurs +phrases, on les termine toutes par un point.
+flushleft
: aligner le texte sur la marge de
+gauche ;flushright
: aligner le texte sur la marge de
+droite ;center
: centrer le texte ;quote
: faire une citation ;quotation
: faire une longue citation ;verse
: faire de la poésie, chaque vers étant terminé
+par \\
; Les environnements s'ouvrent avec \begin{***}
et se
+referment avec \end{***}
, en faisant figurer le nom de
+l'environnement entre les accolades. Certains sont bien sûr incompabibles
+entre eux (« aligner à gauche » et « aligner à droite » par exemple).
+Si vous utilisez plusieurs environnements emboîtés (listes imbriquées,
+citations centrées, etc), veillez à bien les refermer dans l'ordre de
+l'imbrication : dernier ouvert, premier refermé, comme des
+parenthèses.
\emph{emphatique} | ++ EMPHasized + | +emphatique. C'est celui qu'on utilise pour mettre en valeur +certains mots, les titres d'ouvrages en particulier. | +
\textbf{gras} | ++ Bold Fonts + | +gras. | +
\texttt{machine à +écrire} | ++ Typewriter + | +machine à +écrire. | +
\textsl{incliné} | ++ SLanted + | ++incliné. Ce n'est pas de l'italique, mais en +HTML, on ne peut pas s'en rendre compte... | +
\textsc{Petites majuscules} | ++ Small +Caps + | +Petites majuscules, pour les noms d'auteurs ou les +sigles un peu longs. Le HTML ne sait pas afficher ça. | +
Voici le même tableau dans le document LaTeX d'origine, qui montre +les différences entre les différents styles :
+Ces différents styles sont compatibles entre eux :
++\emph{Dans cet exemple, il y a des mots \textbf{en gras} et des +titres de livres comme \emph{Le retour du concombre masqué} qui sont +mis en évidence}. ++
donnera au final le résultat suivant :
+Italique : ne confondez pas le style penché
+(\textsl
) et l'italique. D'autres documentations vous
+parleront également de \textit
, qui au sens propre veut dire
+« italique ». Mais nous ne vous conseillons pas de l'utiliser. En
+effet, \textit
est une commande graphique, qui demande de
+l'italique, quel que soit le contexte.
En revanche, \emph
est une commande logique, qui demande
+de mettre en valeur une portion du texte par rapport à son contexte.
+Ainsi, si vous êtes déjà dans un environnement en italique
+(theorem
par exemple), un mot mis en valeur avec
+\emph
sera droit, et inversement. Cela vous permet
+d'imbriquer des mises en valeur, sans risque de vous tromper.
Nous vous conseillons d'aller aussi jeter un coup d'oeil sur L'emploi des styles en +typographie.
+Ces commandes sont compatibles avec les précédentes.
++ Attention au piège diabolique qui veut que les commandes de style soient + écrites à l'extérieur des accolades, alors que les commandes de + tailles des fontes s'écrivent à l'intérieur des accolades : +
+André \textsc{Malraux}, \emph{La condition humaine} +{\small Parlez moins fort}+
Pour taper des maths dans le texte, on place le contenu de la formule entre
+deux symboles « $
». Par exemple:
(...) on y verra la démonstration que $2 + 2 = 4$ (...)+
Remarque importante concernant la lisibilité: les
+ espaces ne comptent pas pour le contenu des mathématiques et
+ $2+2=4$
a rigoureusement le même effet que $2 + 2
+ = 4$
. L'avantage de la seconde écriture est qu'elle est
+ notablement plus lisible surtout quand les formules deviennent
+ complexes.
Remarques concernant la typographie: il est à noter que + les modes mathématiques peuvent être utiles en d'autres + circonstances que l'écriture de formule mathématiques.
+Les variables physiques devront être typographiées de
+ manière cohérente, on notera donc systématiquement
+ $T$
la température qui aura donc la même
+ typographie que dans les formules comme $PV = n RT$
. Si
+ l'on souhaite en physique avoir des variables droites (et non
+ italiques) on peut utiliser la commande $\mathrm{T}$
ou
+ un changement de \mathcode
.
Pour obtenir le signe « moins », il faut taper
+ $-1$
(observer la différence entre -
+ [tiret], $-$
[signe « moins »],
+ --
[intervalle comme dans 1939--1945
] et
+ ---
[incise]).
Enfin, on notera que $lettre$
est le produit de
+ quatre variables l, e (deux fois),
+ t (deux fois) et r. Pour des noms complexes
+ dans les formules on pourra utiliser $\mathit{mot}$
+ pour un mot en italique (observer la différence entre
+ $efficace$
et $\mathit{efficace}$
) ou
+ $\mathrm{mot}$
pour un mot en police droite ou encore
+ la commande $\text{...}$
du package
+ amsmath
. L'important est d'avoir une démarche cohérente
+ avant tout.
Une autre possibilité est d'utiliser \(contenu de la
+formule\)
ou encore l'environnement math
.
+Exemple:
+
(...) d'après certaines personnes \(2 + 2 = 5\) mais d'autres affirment + également que \begin{math}2 - 1 = 0\end{math}. La réalité est tout + autre (...)+
(La)TeX s'autorise à couper une formule dans le texte au niveau
+des opérations (comme +
, *
) et des relations
+(comme =
, <
). On peut interdire la coupure
+à des endroits précis de la formule grâce aux accolades
+{
et }
. Tout ce qui dans une formule dans
+le texte (cela ne s'applique pas au texte normal, ni aux formules
+centrées) et entre accolades ne sera pas coupé. Ainsi dans
(...) texte $f(x, y) = {x + y}$ texte (...)+
la césure ne peut intervenir qu'après le =
+(tandis que sans les accolades, la césure aurait tout aussi bien pu
+avoir lieu après le +
). Cette méthode a le mérite de la
+simplicité, mais elle présente également un inconvénient qu'on pourra
+négliger à moins d'être perfectionniste : les espaces entre les
+accolades ne sont pas capables de s'étirer.
Si l'on souhaite empêcher la césure dans toute formule écrite
+dans un paragraphe (globalement dans tout le document), on peut mettre dans
+son préambule (avant le \begin{document}
):
+\relpenalty=10000 +\binoppenalty=10000 ++
En effet, LaTeX ne s'autorise à couper une formule
+qu'au niveau des relations (=
, <
, etc.) ou
+des opérations binaires (+
, -
, etc.). Si une
+telle coupure intervient, elle s'accompagne d'une pénalité. Si cette
+pénalité est trop forte, le point de coupure sera évité. Les valeurs
+présentées juste au-dessus sont des pénalités infinies pour
+(La)TeX.
Cependant cette méthode est déconseillée, car elle va gêner
+LaTeX dans son mécanisme de formation des paragraphes et l'on risque de
+nombreux warnings: Underfull hbox
et Overfull
+hbox
. Il convient de se demander si une formule donnée n'aurait
+pas plutôt sa place dans un display (formule centrée sur une
+ligne à part) qui est le sujet dont nous allons traiter un peu plus bas.
Si, au contraire, on souhaite que LaTeX puisse couper à un endroit +on rajoutera un \linebreak (qui suggère un point de coupure mais ne le +force pas obligatoirement). Ce point de coupure n'a pas à être accompagné +de relation ou d'opérateur binaires.
+(...) texte ${coupera pas + coupera pas + coupera pas + coupera pas + + coupera pas + coupera}\linebreak[1]{pas + coupera pas}$ (...) ++
L'argument optionnel de \linebreak
+spécifie l'insistance
+de la requête (4, la valeur par défaut, force la coupure) ; ici, la
+valeur 1 signifie « si tu peux couper ici c'est plutôt sympa ».
Une formule importante ou assez grande peut être mise, centrée,
+sur une ligne à part. Pour ce faire, elle doit être tapée
+soit entre \[
et \]
, soit entre
+\begin{displaymath}
+et \end{displaymath}
. Exemple:
(...) On a le développement suivant: +\[ \forall f\in C^\infty\left(\left[-\frac{T}{2};\frac{T}{2}\right]\right), + \forall t\in \left[-\frac{T}{2};\frac{T}{2}\right], + f(\tau) = \sum_{k = -\infty}^{+\infty} e^{2i\pi\frac{k}{T}t} \times + \underbrace{\frac{1}{T} + \int_{-\frac{T}{2}}^{\frac{T}{2}} f(t) e^{-2i\pi\frac{k}{T}t} dt + }_{a_k = \tilde{f}\left(\nu = \frac{k}{T}\right)} +\] +et puisque (...) ++
ce qui donne le résultat suivant
+Pour aérer on peut commenter une ligne avant et une ligne avant la +formule (et profiter du fait les espaces sont ignorées en mode +mathématique pour réarranger la formule)... ainsi :
+(...) +On a le développement suivant: +%% +\[ \forall f \in C^\infty + \left( \left[ -\frac{T}{2} ; \frac{T}{2} \right] \right), + %% + \forall t \in \left[ -\frac{T}{2} ; \frac{T}{2} \right], + %% + f(\tau) = \sum_{k = -\infty}^{+\infty} + e^{2i\pi\frac{k}{T}t} \times + \underbrace{ + \frac{1}{T} + \int_{-\frac{T}{2}}^{\frac{T}{2} + f(t) e^{-2i\pi\frac{k}{T}t} dt + }_{a_k = \tilde{f}\left(\nu = \frac{k}{T}\right)} +\] +%% +et puisque +(...) ++
est plus lisible, non? Pensez que la lisibilité +permettra de corriger +plus facilement des erreurs et rendra le document source moins confus.
+N'omettez pas les commentaires, ne mettez pas de ligne blanche
+avant et après les commandes \[
et \]
(sauf si
+vous voulez réellement commencer un nouveau paragraphe avec une formule
+displayée — ce qui n'est pas conseillé par les typographes), les lignes
+blanches ne sont pas anodines en LaTeX.
+N'utilisez pas $$...$$
qui est une construction de plain TeX
+qui génère un espacement incorrect du document et n'honore pas les options
+de classe dont nous allons parler plus loin. Cette forme est à
+bannir.
+
On peut numéroter les formules. Cela se fait tout naturellement avec
+l'environnement equation
remplaçant \[...\]
(ou
+\begin{displaymath}...\end{displaymath}
). Cet environnement
+offre la possiblité d'utiliser les foncionnalités de \label
,
+\ref
et \pageref
.
+Einstein a établi la célèbre formule~\ref{eq-Einstein}. +%% +\begin{equation} + \label{eq-Einstein} + E = mc^2 +\end{equation} ++
donne
+On peut passer aux classes standard article, book, report les options
+suivantes, qui modifient l'aspect des équations numérotées (c'est-à-dire
+entrées avec l'environnement equation
) et les formules
+displayée simples :
leqno
affecte seulement l'environnement
+equation
en mettant le numéro d'équation à gauche ;fleqn
affecte l'environnement
+equation
et les formules displayées simples, poussant la
+formule à gauche ;optionleqno |
+
+
|
+ |
+optionfleqn |
+
+
|
+ |
+optionsfleqn etleqno |
+
+
|
+
Le paramètre qui règle l'indentation de l'option fleqn
est
+la longueur \mathindent
qu'on peut modifier à l'aide de
+\setlength
.
La formule est trop grande pour entrer dans un
+displaymath
et les commandes \linebreak
,
+\\
ou \par
ne fonctionnent pas. Utilisez les
+environnements du package amsmath
(ou trouver la documentation du package
+amsmath
?), multline
par exemple.
Nota Bene : nous omettrons de préciser que les codes précisés +ici sont à taper en mode math.
+a^{bcd}
a_{bcd}
=
, \neq
, <
,
+ >
, \leq
et \geq
+
, -
, *
+ et /
/
, selon
+ le contexte)()
, []
,
+ \{\}
, \langle\rangle
(un peu comme dans
+ « <...> »), |...|
(valeur absolue) et
+ \|...\|
(norme)\infty
pour l'infini'
pour prime, ''
pour seconde,
+ '''
pour tierce
+
|
+
+
|
+
La différence entre \ldots
et \cdots
est que
+ces derniers sont centrés verticalement alors que \ldots
sont
+au niveau de la base de la ligne (ce qui ne se voit pas dans le tableau).
+La typographie veut qu'on utilise $a, \ldots, b$
et $a +
+\cdots + b$
, donc selon le type de symboles dont la répétition est
+représentée par les points.
Les accents utilisés usuellement dans le texte (\'
, etc.),
+ne fonctionnent pas en mode mathématique. On peut les obtenir avec des
+commandes spécifiques.
+
|
+
+
|
+
+
|
+
Les « grands opérateurs » sont listés dans la +table suivante.
+
+
|
+
On notera la différence de rendu de ces opérateurs selon qu'ils sont en
+mode math (entre $ ... $
) ou en mode displaymath (entre
+\[ ... \]
). Ainsi pour l'opérateur \sum
:
+
|
+
Cela permet de garder un interligne fixe.
+
+
|
+
La négation d'une relation peut être obtenue en la précédant de
+\not
. Par exemple la relation «n'appartient pas à» peut
+s'écrire \not\in
.
Les délimiteurs sont les parenthèses au sens large (accolades, barres de +valeur absolue, etc.).
+
+
|
+
Les tailles peuvent être modifiées soit à la main:
+
+
|
+
soit automatiquement à l'aide \left
et
+\right
. On doit avoir systématiquement un
+\left
pour un \right
dans la même
+formule. La partie de la formule comprise entre \left
+et \right
définit par sa hauteur la taille des délimiteurs
+qui sont précisés ainsi:
+\left<delim1> <formule> \right<delim2> ++
delim1 et delim2 n'ont aucune raison d'être
+identiques. Un «.
» est un délimiteur dans un contexte de
+\left
ou \right
et signifie «pas de délimiteur»
+mais permet de focaliser l'action de \left
et
+\right
sur une partie de la formule.
+
+\[ + |x| = \left\{ + \begin{array}{ll} + +x & \qquad \mathrm{si}\quad x\geq 0 \\ + -x & \qquad \mathrm{sinon} \\ + \end{array} + \right. +\] ++
donne le résultat suivant
+Nota Bene: l'environnement array
est l'équivalent
+en mode mathématique de l'environnement tabular
. Pour son
+utilisation, on se reportera donc à la page concernant
+tabular
.
Pour taper la fonction sinus, on ne peut pas utiliser
+$sin(x)$
dont le résultat est le produit de s,
+i et n(x). En outre, traditionnellement
+les fonctions sont en police droite. La première idée est d'utiliser
+$\mathrm{sin}(x)$
qui a la tête voulue. Cependant
+\mathrm{sin}
ne se comporte pas comme une fonction. Comparer:
+
+
|
+
Les fonctions prédéfinies sont: \sin
, \cos
,
+\tan
, \arcsin
, \arccos
,
+\arctan
, \sinh
, \cosh
,
+\tanh
, \cot
, \log
, \ln
,
+\lim
. Pour en définir d'autres utiliser les commandes
+\DeclareMathOperator
et \DeclareMathOperator*
du
+package amsmath
.
+
Il est parfois nécessaire d'ajuster l'espacement d'une formule à la +main ((La)TeX ne peut pas tout faire tout seul). Par exemple, dans une +intégrale, pour séparer la fonction intégrée de «dx». Pour +cela, on dispose de:
+\,
, espace fine\;
, espace moyenne\:
, espace large\
, espace normale (intermot)\quad
, cadratin\qquad
, double cadratin\!
, espace fine négative (exemple pour les intégrales
+ multiples il peut être nécessaire de bricoler un peu,
+ \int\!\!\int\!\!\int
)Recherche de symboles. Une liste de (presque) tous les symboles
+accessibles avec LaTeX est maintenue à jour sur le CTAN, les fichiers symbols-*.*
+disponibles à l'adresse http://www.ctan.org/tex-archive/info/symbols/comprehensive/.
Pour des maths sophistiquées, il est quasiment indispensable de charger
+le package amsmath
qui (re)définit de nombreux environnements
+très utiles. Cette page web ne peut prétendre couvrir toutes les
+ressources disponibles concernant les mathématiques avec LaTeX,
+heureusement la documentation de amsmath
est très complète et
+facile d'accès, nous vous renvoyons vers cette documentation: le fichier
+amsldoc.pdf
que vous pourrez trouver soit sur votre
+distribution LaTeX (essayer la commande texdoc amsldoc
) soit
+sur internet (google avec le mot-clef «amsldoc.pdf» permet de trouver en
+une dizaine de secondes).
+Définir son propre package permet :
++\usepackage[francais]{babel} +\usepackage[latin1]{inputenc} +\usepackage[T1]{fontenc} +\usepackage{graphicx} +\usepackage{amsmath} +\usepackage{amssymb} ++
Nous allons créer un fichier « mon_package.sty
» (ou
+tout autre nom qui ne crée de doublon) qui comportera les instructions
+qui permettront :
%% Informations générales +\NeedsTeXFormat{LaTeX2e}[1999/01/01] +\ProvidesPackage{mon_package}[2003/01/01] + +%% Chargement des extensions +\RequirePackage{graphicx} + +%% Déclaration des options +\DeclareOption{option}{...} +\DeclareOption*{...} +\ProcessOptions + +%% Définition des commandes +\newcommand{\blabla}{Super commande} + +%% Fin du package +\endinput ++
\NeedsTeXFormat{<format>}[<version>]
:
+ informe TeX du format (LaTeX2e, donc refus de LaTeX2.09, plain TeX,
+ eplain TeX, AMS-TeX, etc.) nécessaire pour l'utilisation du
+ package, on peut spécifier un argument optionnel (entre crochets)
+ permettant d'utiliser des versions récentes dudit format ;\ProvidesPackage{<package>}[<version>]
:
+ le package s'identifie (là encore on peut donner en argument
+ optionnel une date de version) ;\RequirePackage[<options>]{<package>}
:
+ équivalent de \usepackage
pour l'écriture d'un package
+ ou d'une classe, on peut passer des options au package comme
+ habituellement ;\DeclareOption{<option>}{<action>}
:
+ déclare une option qui peut être passée lors de l'appel du
+ package, lorsque l'option <option>
est passée
+ <action>
est exécutée ;\DeclareOption*{<action>}
:
+ comportement adopté par le package quand il est confronté à une
+ option passée qui n'est pas déclarée ;\ProcessOptions
: exécute le code des options
+ passées, si cette commande n'existe pas dans le package les options
+ seront sans effet (bien prendre conscience que les declarations
+ n'exécutent pas de code!) ;\newcommand{\commande}{<code>}
:
+ définition d'une nouvelle commande (voir la page sur les
+ macros) ;\endinput
: fin du package.Supposons qu'il m'arrive d'écrire des documents sans algorithmes et
+d'autres avec. Lorsque j'en ai besoin je charge les packages
+algorithm
et algorithmic
qui permettent de
+mettre en forme des algorithmes, d'en faire une « liste des
+algorithmes » et de les rendre flottants (voir la page...). Je peux
+encore utiliser mon propre package pour gérer ces cas, il suffit
+d'introduire une option « algo » quand on a besoin des fonctionnalités
+idoines. Voilà comment :
%% (...) \NeedsTeXFormat et \ProvidesPackage +\newif\if@algo \@algofalse +\DeclareOption{algo}{\@algotrue} +\DeclareOption*{}%% Ne rien faire quand une option est inconnue +\ProcessOptions + +\if@algo + \RequirePackage{algorithm} + \RequirePackage{algorithmic} + \RequirePackage{mes-commandes-algo} + \newcommand{\algorithme}{Blabla} +\fi +%% (...) \newcommand's et \endinput ++
+La commande \newif\ifquelquechose
crée trois
+commandes :
\ifquelquechose
à utiliser ainsi (la
+partie « else » est facultative)
++\ifquelquechose + Code si oui +\else + Code si non +\fi +
\quelquechosetrue
+ \ifquelquechose
devient
+ équivalent à if true ;\quelquechosefalse
+ \ifquelquechose
devient
+ équivalent à if false.Dans notre exemple on crée une instruction conditionnelle
+\if@algo
qui est équivalente à if false (à cause
+de \@algofalse
). Cependant, si l'option « algo » est
+passée au package, on exécute \@algotrue
qui a pour effet
+de rendre \if@algo
équivalent à if true. Les
+packages relatifs à l'algo (et les commandes définies dans le bloc)
+seront chargés si et seulement si l'option « algo » aura été passée dans
+le fichier .tex
:
\usepackage
++\documentclass[a4paper]{article} +\usepackage[algo]{mon_package} +\begin{document} + . + . + . +\end{document} +
\documentclass
++\documentclass[a4paper, algo]{article} +\usepackage{mon_package} +\begin{document} + . + . + . +\end{document} +
Remarque : notons que dans les packages « @ » est une lettre
+(contrairement aux document .tex
où « @ » est un symbole)
+et que donc on peut écrire des noms de commandes avec « @ ». D'où les
+noms \makeatletter
et \makeatother
utilisées
+dans des cas un peu exceptionnels. Dans un fichier .tex
,
+« \if@algo
» aurait été interprétée comme la commande
+\if
suivie de « @algo ».
+\NeedsTeXFormat{LaTeX2e}[1999/01/01] +\ProvidesPackage{mon_package}[2003/01/01] + +\newif\if@algo \@algofalse +\newif\if@listings \@listingsfalse + +\DeclareOption{listings}{\@listingstrue} +\DeclareOption{algo}{\@algotrue} +\DeclareOption*{\PassOptionsToPackage{\CurrentOption}{babel}} +\ProcessOptions + +\RequirePackage{babel} + +\if@algo + \RequirePackage{algorithm} + \RequirePackage{algorithmic} + \RequirePackage{mes-commandes-algo} +\fi + +\if@listings + \RequirePackage{listings} + \RequirePackage{verbatim} + \RequirePackage{moreverb} + \RequirePackage{mes-commandes-listings} +\fi + +\endinput ++
On déclare comme précédemment deux options « normales » :
+algo
et listings
mais quand on est face à
+une option inconnue on la passe à babel, ainsi :
+\documentclass[a4paper]{article} +\usepackage[algo, listings, english, greek, francais]{mon_package} +\begin{document} + . + . + . +\end{document} ++
+sera équivalent à charger les modules d'algorithmiques, les modules de
+d'écriture de programmes, et babel avec les options
+english
, greek
et francais
+(dans cet ordre). La commande \PassOptionsToPackage{<options>}{<package>}
ne charge pas le package
+<package>
, elle rajoute les
+<options>
à la liste d'options qui seront passées
+au package <package>
lors de l'appel
+\RequirePackage{<package>}
.
+
Remarque : les options déclarées avec
+\DeclareOption{...}{...}
peuvent être passées comme
+options globales du document comme dans :
+
+\documentclass[a4paper, algo, listings]{article} +\usepackage[english, greek, francais]{mon_package} +\begin{document} + . + . + . +\end{document} ++
+En revanche les langages doivent être passés au package lui-même +(notamment babel n'a pas tenté de trouver un langage nommé « a4paper » +ce qui aurait abouti à une erreur). +
+D'une part on ne peut pas utiliser ce mécanisme pour plusieurs
+packages auquel on passerait les options non déclarées avec
+\DeclareOption{...}{...}
et d'autre part on ne peut pas
+s'abstenir de passer au moins une option de langage au package.
keyval
de David Carliste (ou
+ peut-être prochainement une page tuteurs à ce sujet) ;\@ifundefined{commande}{<then>}{<else>}
: si
+ \commande
(avec le backslash contrairement à l'argument
+ de \@ifundefined
) n'est pas définie alors exécute
+ <then>
sinon exécute
+ <else>
(LaTeX interne) ;\PackageWarning{<package>}{<texte>}
: produit un warning lors de la
+ compilation (par opposition à \PackageError{...}{...}
) ;\CurrentOption
: l'option en cours de
+ traitement ;+\NeedsTeXFormat{LaTeX2e}[1999/01/01] +\ProvidesPackage{mon_package}[2003/01/01] +\RequirePackage{keyval} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Pour gérer les deux types d'options : % +% 1. les options normales (\DeclareOption{...}{...}) % +% 2. les options type key-val option=value (\define@key{...}{...}{...}) % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\@ifundefined{my@unusedlist}{% + \let\my@unusedlist\@empty}{} +\@ifundefined{my@extractkey}{% + \def\my@extractkey#1=#2\my@extractkey{#1}}{} +\newcommand{\ProcessUnusedOptions}[1]{% + \let\my@tempa\@empty + \let\my@tempb\@empty + \@for\CurrentOption:=\my@unusedlist\do{% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\my@key + \expandafter\expandafter\expandafter{% + \expandafter\my@extractkey\CurrentOption=\my@extractkey}% + \@ifundefined{KV@#1@\my@key}{% + \edef\my@tempa{\my@tempa,\CurrentOption,}}{% + \edef\my@tempb{\my@tempb,\CurrentOption,}}}% + \@for\CurrentOption:=\my@tempa\do{% + \ifx\CurrentOption\@empty\else + \PackageWarning{mypack}{`\CurrentOption' not defined.}\fi}% + \edef\my@tempb{% + \noexpand\setkeys{#1}{\my@tempb}}% + \my@tempb + \AtEndOfPackage{\let\@unprocessedoptions\relax}} + +\DeclareOption*{% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\my@unusedlist + \expandafter\expandafter\expandafter{% + \expandafter\my@unusedlist\expandafter,% + \CurrentOption}} +%%%%%%%%%%%%%%% +% Fin du bloc % +%%%%%%%%%%%%%%% + +%% Options «normales» +\DeclareOption{foo}{<action foo>} +\DeclareOption{bar}{<action bar>} + +%% Options passées sous forme key=val +\define@key{mypack}{<key1>}{<action 1> dépendant de #1} +\define@key{mypack}{<key2>}[<default>]{<action 2> dépendant de #1} + +\ProcessOptions +\ProcessUnusedOptions{mypack} + +\endinput ++
Dans l'exemple suivant
++\documentclass[foo]{article} +\usepackage[foo, key1=value1, key2=value2]{mypack} +\begin{document} + . + . + . +\end{document} ++
l'option foo
va agir comme dans les exemples simples,
+key1=value1
va exécuter le code <action 1>
+en utilisant value1
en lieu et place de #1
. Idem
+pour key2=value2
sauf que on peut omettre la partie
+« =value2
» auquel cas <action 2>
est exécuté
+en utilisant <default>
à la place de #1
.
+Par exemple si mon_package.sty
contient :
%% (...) +\newcounter{nombre} +\define@key{mypack}{number}[14]{% + \setcounter{nombre}{#1}} +%% (...) ++
on pourra l'appeler ainsi
++\documentclass[foo]{article} +\usepackage[number=10]{mypack} +\begin{document} + . +\thenombre\ affiche 10. + . + . +\end{document} ++
ou encore comme cela
++\documentclass[foo]{article} +\usepackage[number]{mypack} +\begin{document} + . +\thenombre\ affiche 14. + . + . +\end{document} ++
ou bien sûr sans option du tout (auquel cas le code
+\setcounter
ne sera pas exécuté et donc le compteur
+nombre
vaudra zéro).
Si mon_package
contient :
+\newcommand{\pack@languages}{francais} +\define@key{mypack}{language}{% + \renewcommand{\pack@languages}{#1}} +\RequirePackage[\pack@languages]{babel} ++
alors on peut l'appeler ainsi
++\documentclass[a4paper]{article} +\usepackage[language={english, francais}]{mon_package} +\newcommand{\option}{\texttt} +\begin{document} + . +\paragraph{Remarque} +Noter les accolades pour que l'option \option{francais} ne soit pas +passée comme une option à part. + . + . +\end{document} ++
ou encore ainsi :
++\documentclass[a4paper]{article} +\usepackage{mon_package} +\newcommand{\option}{\texttt} +\begin{document} + . +Babel chargé avec l'option \option{francais}. + . + . +\end{document} ++
+Là encore les options de langages ne pourront pas être spécifiées
+globalement avec la commande \documentclass
. (La raison en est
+que les options globales qui ne correspondent pas à des options déclarées
+avec \DeclareOption
ne sont pas transmises à
+\DeclareOption*
.)
+
Le package mon_package
doit pouvoir être trouvé par LaTeX,
+pour cela on peut :
mon_package
dans le même répertoire que
+les fichier .tex
qui l'utilisent ;~/texmf/tex/latex/perso/
et créer la variable d'environnement
+export TEXINPUTS=$HOME/texmf//:
(certaines distributions
+permettent de créer un fichier ls-R grâce à la commande
+texhash
) ;mktexlsr
.Pour une documentation concernant l'écriture de classe et de
+packages : clsguide
(à noter également les documentations
+fntguide
, usrguide
) pour une documentation
+générale sur LaTeX : source2e
ou plus soft The not so
+short introduction to LaTeX (disponible en français !).
Sur internet : CTAN, les
+ newsgroup fr.comp.text.tex
et comp.text.tex
auxquels on peut accéder via Google. Par
+exemple comment réaliser le symbole « 1 » avec une double
+barre pour désigner une fonction indicatrice ? La réponse s'y trouve
+en cherchant « 1 barre
+ indicatrice
». C'est une source d'informations inépuisable.
Un autre site utile est le site + StackExchange dédié à TeX et LaTeX.
+ ++LaTeX est un système de mise en page complet, et à ce titre, offre la +possibilité de changer de police de caractère. Néanmoins, les +changements de polices, dans l'esprit de LaTeX, doivent êtrre +incorporés dans des packages définissant un style de +présentation. C'est un peu pour ça que le changement de police est un +peu complexe. Il est néanmoins abordable, comme nous allons le voir. +
++Pour caractériser une police, LaTeX définit quatre atributs: +
++Normalement, LaTeX est intelligent, et est capable de changer un de +ces attributs en conservant les autres constants. Il faut cependant +faire attention: si une police donnée (combinaison de tous les +attributs) n'est pas disponible, il risque de faire n'importe-quoi, en +particulier revenir à la police par défaut. Notons cependant que ceci +est signalé par un message assez claire lors de la compilation: +
++LaTeX Font Warning: Font shape `OT1/cmr/bx/sc' undefined +(Font) using `OT1/cmr/bx/n' instead on input line 10. ++
+Notons au passage que LaTeX utilise la notation +codage/famille/collection/forme +pour décrire une police dans ses messages. +
++Les commandes pour changer de police sont très simples: +
+
+ \fontencoding{codage}
+ |
+ change le codage | +
+ \fontfamily{famille}
+ |
+ change la famille | +
+ \fontseries{collection}
+ |
+ change la collection | +
+ \fontshape{forme}
+ |
+ change la forme | +
+ \selectfont
+ |
+ active la police définie | +
+ \usefont{code}{fam.}{col.}{forme}
+ |
+ change tout d'un coup et active | +
+Les quatre premières commandes, \fontencoding
,
+\fontfamily
, \fontseries
et
+\fontshape
, préparent un changement de police, qui est
+entériné par \selectfont
. L'utilisation normale est de
+mettre une ou plusieurs des premières, suivie(s) de
+\selectfont
. La commande \usefont
est un
+raccourci pour définir les quatre d'un coup et activer le changement.
+
+La police est changé pour tout le reste du texte, jusqu'à la fin du
+groupe courrant (rappelons qu'un groupe est délimité par un couple
+d'accolades ou une structure
+\begin
...\end
. En ce sens, ces fonctions
+fonctionnent de la même manière que les commandes obsolètes
+\it
, \bf
, etc...
+
+Voici la table de toutes les polices +présentes dans l'installation ici. Différentes distributions de LaTeX +peuvent en avoir quelques-unes en plus ou en moins parmi les plus +exotiques. Ce ne sont pas toutes des polices convenables pour écriré: +certaines contiennent des symboles, ou d'autres un jeu restreint de +caractères. +
+
+Toutes les colonnes (sauf la première) indiquent les noms techniques à
+fournir aux différentes commandes LaTeX. Pour le codage, dans le cas
+d'une police destinée à écrire du texte, il vaut mieux choisir le
+codage T1
. Les collections et les formes les plus
+courrantes ont des dénominations standards:
+
+Par défaut, LaTeX utilise les familles Computer Modern,
+celles dont le nom commence par cm
. Les différentes
+versions qui en existent correspondent aux commandes LaTeX qui
+changent radicalement l'apparance du texte: \textsf
et
+\texttt
.
+
+Voici un bout de code LaTeX qui vous permettra d'explorer toutes les polices: +
++\documentclass{article} +% La commande montre prend comme arguments les paramètres d'une police, +% et en affiche un exemple. +\newcommand\montrer[4]{Police #1/#2/#3/#4: + {\usefont{#1}{#2}{#3}{#4}ABCDEF abcdef 123456 ,;:!}\par} +\begin{document} + +% Vous pouvez changer les valeurs, pour voir d'autres polices +\montrer{T1}{cmr}{m}{n} +\montrer{T1}{phv}{m}{sc} +\montrer{T1}{ptm}{b}{it} +\montrer{U}{pzd}{m}{n} +\montrer{U}{yinit}{m}{n} + +\end{document} ++
+Il ne faut pas oublier que la philosophie de LaTeX est de séparer la +présentation et le sens. Changer de police peut certes apporter +beaucoup, mais ça risque de poser également des problèmes, au moins +dans le cas d'un document long. Pour l'utiliser efficacement et +facilement, le mieux est de créer une commande ou un environnement. +
++\newcommand\nom[1]{{\fontfamily{phv}\selectfont #1}} ++
+Ceci permet de définir la commande \nom
change
+la police en Helvetica pour son argument. On peut bien sûr
+remplacer \fontfamily{phv}
par autre chose. Notez les
+doubles accolades: les premières délimitent la définition, tandis que
+les secondes empêchent le changement de police de s'échapper.
+
+\newenvironment{nom} + {\fontfamily{phv}\selectfont}{} ++
+Ceci définit l'environnement nom
(donc délimité
+par \begin{nom}
et
+\end{nom}
), à l'intérieur duquel le texte est en
+Helvetica.
+
+On peut (et même on devrait) incorporer les changements de police à
+des commandes plus spécifiques, ayant trait au sens du texte, comme
+une commande \titre
:
+
+% Les titres sont en Times penché: \titre{The \TeX book} +\newcommand\titre[1]{{\fontfamily{ptm}\fontshape{sl}\selectfont #1}} ++
+Enfin, si le but est de changer la police pour tout le document, le +mieux est de redéfinir les polices par défaut de LaTeX. Si on regarde +dans les fichiers source de LaTeX, on trouve une série de lignes qui +contiennent ceci: +
++\newcommand\rmdefault{cmr} % famille à utiliser pour du Roman +\newcommand\sfdefault{cmss} % famille à utiliser pour du Sans Serif +\newcommand\ttdefault{cmtt} % famille à utiliser pour du «machine à écrire» +\newcommand\bfdefault{bx} % collection à utiliser pour du gras +\newcommand\mddefault{m} % collection à utiliser pour du moyen +\newcommand\itdefault{it} % forme à utiliser pour de l'italique +\newcommand\sldefault{sl} % forme à utiliser pour du penché +\newcommand\scdefault{sc} % forme à utiliser pour de petites majuscules +\newcommand\updefault{n} % forme à utiliser pour du droit +\newcommand\encodingdefault{OT1} % codage normal +\newcommand\familydefault{\rmdefault} % famille normale: Roman +\newcommand\seriesdefault{\mddefault} % collection normale: moyen +\newcommand\shapedefault{\updefault} % forme normale: droit ++
+Les commandes comme \textit
, \texttt
ou
+\textbf
sont définies en termes de ces
+commandes-ci. Ainsi, il est possible de les modifier proprement:
+\renewcommand\sfdefault{phv}
définit que la police
+Helvetica est à utiliser comme police pour le texte Sans Serif
+(\textsf
). Bien sûr, toutes les variantes sont
+possibles. Attention toutefois de bien faire attention que la police
+choisie existe dans le codage par défaut et les différentes variantes.
+
Nom usuel | +Famille | +Codages | +Collections/formes | +
---|---|---|---|
Bulmer | +
+ bbm
+ |
+
+ U
+ |
+
+ b/n bx/n bx/sl m/n m/sl
+ |
+
Bulmer | +
+ bbmss
+ |
+
+ U
+ |
+
+ bx/n m/it m/n
+ |
+
Bulmer | +
+ bbmtt
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Charter | +
+ bch
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl
+ |
+
Computer Modern | +
+ cmdh
+ |
+
+ LWN OT1
+ |
+
+ m/n
+ |
+
Computer Modern | +
+ cmex
+ |
+
+ OMX
+ |
+
+ m/n
+ |
+
Computer Modern | +
+ cmfib
+ |
+
+ LWN OT1
+ |
+
+ m/n
+ |
+
Computer Modern | +
+ cmfr
+ |
+
+ LWN OT1
+ |
+
+ m/it m/n
+ |
+
Computer Modern | +
+ cmm
+ |
+
+ OML
+ |
+
+ b/it bx/it m/it
+ |
+
Computer Modern | +
+ cmr
+ |
+
+ LGR LWN OML OMS OT1 U
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl bx/ui m/it m/n m/sc m/sl m/ui
+ |
+
Computer Modern | +
+ cmro
+ |
+
+ LGR
+ |
+
+ b/n bx/n m/it m/n m/sc m/sl
+ |
+
Computer Modern | +
+ cmss
+ |
+
+ LGR LWN OT1 T1 U
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl bx/ui m/it m/n m/sc m/sl m/ui sbc/n
+ |
+
Computer Modern | +
+ cmssq
+ |
+
+ OT1 T1
+ |
+
+ m/it m/n m/sl
+ |
+
Computer Modern | +
+ cmsy
+ |
+
+ OMS
+ |
+
+ b/n m/n
+ |
+
Computer Modern | +
+ cmtt
+ |
+
+ LGR LWN OT1 T1 U
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl bx/ui m/it m/n m/sc m/sl m/ui
+ |
+
Computer Modern | +
+ cmvtt
+ |
+
+ OT1
+ |
+
+ m/it m/n
+ |
+
Euler | +
+ euex
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Euler | +
+ euf
+ |
+
+ U
+ |
+
+ b/n m/n
+ |
+
Euler | +
+ eur
+ |
+
+ U
+ |
+
+ b/n m/n
+ |
+
Euler | +
+ eus
+ |
+
+ U
+ |
+
+ b/n m/n
+ |
+
LaTeX Symbol | +
+ lasy
+ |
+
+ U
+ |
+
+ b/n m/n
+ |
+
Computer Modern | +
+ lcmex
+ |
+
+ OMX
+ |
+
+ m/In m/n
+ |
+
Computer Modern | +
+ lcmm
+ |
+
+ OML
+ |
+
+ m/Iit m/it
+ |
+
Computer Modern | +
+ lcmss
+ |
+
+ OT1 T1
+ |
+
+ bx/Iit bx/In bx/Isl bx/it bx/n bx/sl bx/ui m/Iit m/In m/Isl m/it m/n m/sl m/ui
+ |
+
Computer Modern | +
+ lcmsy
+ |
+
+ OMS
+ |
+
+ m/In m/n
+ |
+
Computer Modern | +
+ lcmtt
+ |
+
+ OT1 T1
+ |
+
+ bx/ui m/In m/it m/n m/ui
+ |
+
? | +
+ llasy
+ |
+
+ U
+ |
+
+ m/In m/n
+ |
+
? | +
+ logo
+ |
+
+ U
+ |
+
+ b/n bx/n m/it m/n m/sl sbc/n
+ |
+
Scala | +
+ msa
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Sabon | +
+ msb
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Garamond | +
+ pad
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl sb/it sb/n sb/sc sb/sl
+ |
+
Avant Garde | +
+ pag
+ |
+
+ OML OMS OT1 T1 TS1
+ |
+
+ b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl db/it db/n db/sc db/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui
+ |
+
Anna | +
+ panr
+ |
+
+ OT1
+ |
+
+ b/n m/it m/n m/sl
+ |
+
Bembo | +
+ pbb
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl bx/ui l/it l/n l/sc l/sl l/ui m/it m/n m/sc m/sl m/ui
+ |
+
Bookman | +
+ pbk
+ |
+
+ OML OMS OT1 T1 TS1
+ |
+
+ b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl db/it db/n db/sc db/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui
+ |
+
Baskerville | +
+ pbv
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl
+ |
+
Courier | +
+ pcr
+ |
+
+ OML OMS OT1 T1 TS1
+ |
+
+ b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui
+ |
+
Garamond | +
+ pgm
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl
+ |
+
Gill Sans | +
+ pgs
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl eb/it eb/n eb/sc eb/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl ub/it ub/n ub/sc ub/sl
+ |
+
Helvetica | +
+ phv
+ |
+
+ 8r OML OMS OT1 T1 TS1
+ |
+
+ b/it b/n b/sc b/sl b/ui bc/it bc/n bc/sc bc/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl lsc/it lsc/n lsc/sl m/it m/n m/sc m/sl m/ui mc/it mc/n mc/sc mc/sl
+ |
+
New Baskerville | +
+ pnb
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl
+ |
+
New Century Schoolbook | +
+ pnc
+ |
+
+ OML OMS OT1 T1 TS1
+ |
+
+ b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui
+ |
+
Optima | +
+ pop
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl
+ |
+
Palatino | +
+ ppl
+ |
+
+ OML OMS OT1 T1 TS1
+ |
+
+ b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui
+ |
+
Parisian | +
+ pss
+ |
+
+ OT1
+ |
+
+ b/n m/it m/n m/sl
+ |
+
Symbol | +
+ psy
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Symbol | +
+ psycm
+ |
+
+ OMX
+ |
+
+ l/n m/n
+ |
+
Times | +
+ ptm
+ |
+
+ OML OMS OT1 T1 TS1
+ |
+
+ b/it b/n b/sc b/sl b/ui bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl m/ui
+ |
+
Times | +
+ ptmcm
+ |
+
+ OML OT1
+ |
+
+ l/it l/n l/sl m/it m/n m/sl
+ |
+
Univers | +
+ pun
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl
+ |
+
Centaur | +
+ pur
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl
+ |
+
Utopia | +
+ put
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl l/it l/n l/sc l/sl m/it m/n m/sc m/sl
+ |
+
Zapf Chancery | +
+ pzc
+ |
+
+ OML OMS OT1 T1 TS1
+ |
+
+ b/it b/n b/sc b/sl b/ui l/it l/sl m/it m/n m/sc m/sl m/ui
+ |
+
Zapf Chancery | +
+ pzccm
+ |
+
+ OMS
+ |
+
+ l/n m/n
+ |
+
Zapf Dingbats | +
+ pzd
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Antiqua | +
+ uaq
+ |
+
+ OML OMS
+ |
+
+ b/it b/n b/sc b/sl m/it m/n m/sc m/sl
+ |
+
Grotesque | +
+ ugq
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl bx/it bx/n bx/sc bx/sl m/it m/n m/sc m/sl
+ |
+
Nimbus | +
+ unm
+ |
+
+ 8r OML OMS OT1 T1
+ |
+
+ b/it b/n b/sc b/sl l/it l/n l/sc l/sl l/ui m/it m/n m/sc m/sl m/ui
+ |
+
Nimbus | +
+ unms
+ |
+
+ OML OMS
+ |
+
+ b/it b/n b/sc b/sl m/it m/n m/sc m/sl
+ |
+
Fraktur | +
+ yfrak
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Gothic Fraktur | +
+ ygoth
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Initials | +
+ yinit
+ |
+
+ U
+ |
+
+ m/n
+ |
+
Schwabacher Fraktur | +
+ yswab
+ |
+
+ U
+ |
+
+ m/n
+ |
+
+Je ne suis pas spécialiste en typographie, et les noms usuels peuvent +être erronés. +
+ +Faire des références croisées à l'intérieur de son document est très +simple. On met une étiquette (label) avec un mot-clé à l'endroit +que l'on veut référencer, de la manière suivante :
++\label{table} Il faut ajouter dans le document, à l'endroit +où on souhaite voir une table des matières, ... ++
Ensuite, à l'endroit souhaité, on fait une référence à ce passage avec
+les commandes \ref{mot-clé}
(pour indiquer le numéro de la
+section) ou \pageref{mot-clé}
(pour indiquer la page). Par
+exemple :
+La phrase ci-dessus est extraite de la section \ref{table}, page +\pageref{table}, consacrée à la fabrication d'une table des matières. ++
On place l'étiquette à l'intérieur de la commande
+\caption{}
, à côté de la légende de la figure; par exemple,
+voici la légende, dans le fichier TeX, du tableau sur les Habsbourgs
+(voir Les tableaux) :
+\caption{\label{Habsbourg}Les Habsbourg en Espagne et en Autriche.} ++
Ensuite, on utilise \ref
et \pageref
de la
+même façon que pour du texte, à cette seule différence que
+\ref
n'indique pas le numéro de la section mais celui de la
+figure. Par exemple :
+Le tableau \ref{Habsbourg}, page \pageref{Habsbourg}, est consacré à la succession des rois Habsbourg. ++
Attention ! Ceci est le niveau 0 de la référence. Pour des références +plus élaborées (plusieurs pages référencées, et de façon générale pour +faire un index), je vous renvoie aux manuels existants. Enfin, comme pour +la table des matières, les références n'apparaissent qu'à la deuxième +compilation.
+ +On utilise l'environnement tabular
. Lorsque l'on commence un
+tableau, il faut spécifier immédiatement entre des accolades la
+disposition horizontale du tableau, c'est-à-dire le nombre de colonnes et
+de lignes verticales, ainsi que le centrage du texte :
\begin{tabular}{colonnes}+
On utilise les caractères suivants pour indiquer la disposition des +colonnes :
+
+ l (left
+ |
+ Appuie le texte de la colonne sur la gauche | +
+ r (right
+ |
+ Appuie le texte de la colonne +sur la droite | +
+ c (center
+ |
+ Centre le texte dans la +colonne | +
+ | (pipe
+ |
+ Trace un trait vertical pour +séparer deux colonnes | +
+ p{l}
+ |
+ Le texte sera traité comme un paragraphe
+dans une colonne de largeur l , et pourra êtr emis sur
+plusieurs lignes si besoin. |
+
Par exemple, la diposition d'un tableau à deux colonnes, dans +lesquelles le texte est centré, s'exprime ainsi :
++\begin{tabular}{|c|c|} ++
Maintenant qu'on a indiqué le nombre de colonnes, on écrit le tableau
+ligne par ligne. Le caractère &
indique le passage à la
+colonne suivante. Chaque ligne est terminée par \\
, qui
+indique le passage à la ligne suivante.
hline
trace une ligne horizontale
+de la largeur du tableau. Voici par exemple les premières lignes du code
+LaTeX du tableau ci-dessus :+\begin{tabular}{|l|p{8cm}|} +\hline +\texttt{l} (left) & appuie le texte de la colonne sur la gauche.\\ \hline +\texttt{r} (right) & appuie le texte de la colonne sur la droite. \\ \hline +\texttt{c} (center) & centre le texte dans la colonne. \\ \hline +\hline +\end{tabular} ++
\cline{col1-col2}
trace une ligne
+horizontale de la colonne numéro col1
à la colonne
+numéro col2
.\multicolumn
, qui se
+rédige de la manière suivante :+\multicolumn{num}{description}{texte} ++
num indique le nombre de colonnes concernées (la nouvelle
+colonne a une largeur de num colonnes); dans
+description on indique le centrage du texte (l
,
+r
, c
ou p{num}
). Enfin,
+le texte à écrire dans la nouvelle «case» est indiqué entre
+accolades.
Pour donner une légende à un tableau (ou à n'importe quelle figure), +on utilise la commande :
++\caption{texte de la légende} ++
Il faut placer le tableau et la légende à l'intérieur d'un environnement figure
. La
+numérotation des légendes est automatique. N'oubliez pas de refermer
+l'environnement figure
.
L'environnement figure
ne fait rien d'autre qu'accrocher
+un numéro et une légende à une image. Il faut donc, le cas échéant,
+utiliser l'environnement center
, par exemple, si l'on veut
+centrer l'image. D'autre part, selon que l'on place la ligne
+\caption{...}
avant ou après l'image elle-même, la légende
+apparaîtra au dessus ou au dessous. Dans le cas qui précède, la légende
+figurera en dessous de la « jolie figure ».
+\begin{figure} +\begin{center} +\begin{tabular}{|c|c|} + +(...) + +\end{tabular} +\end{center} +\caption{La légende de la jolie figure} +\end{figure} ++
Il existe aussi l'environnement table
, qui fonctionne
+exactement comme figure
. La différence est qu'il numérote
+explicitement des tableaux, avec une légende du type
+« Tab. 1: résultats », et non « Fig 1: schéma ».
+\begin{figure} + +\begin{center} +\begin{tabular}{|c|c||c|c|} +\hline + +\multicolumn{2}{|c||}{Espagne} & \multicolumn{2}{c|}{Maison +d'Autriche} \\ + +\hline +Philippe II & \multicolumn{2}{c|}{1556} & Ferdinand I\ier \\ + +\cline{3-4} + & & 1564 & Maximilien II \\ + +\cline{3-4} + & & 1576 & Rodolphe II \\ + +\cline{1-2} +Philippe III & 1598 & & \\ +\hline +\end{tabular} +\end{center} + +\caption{Les Habsbourg en Espagne et en Autriche.} +\end{figure} ++
Ce qui donne :
+xdvi
+ Le format DVI est maintenant tombé en désuétude ; de nos jours, la grande
+ majorité des fichiers .tex
sont compilés vers du PDF via la
+ commande pdflatex
.
+
+ Ce format est lisible via le logiciel Acrobat Reader sous Windows, ou + Evince/Okular sur les ordinateurs de l'école. +
+Le logiciel xdvi
sert à afficher les fichiers DVI (device
+independant) produits par la compilation d'un fichier LaTeX. On peut s'en
+servir avec la souris comme avec le clavier.
Si vous lancez dvi
sans argument, il affiche un browser
+qui vous permet de sélectionner à la souris le fichier que vous voulez
+afficher. Cette fonction est accessible à tout moment en cliquant sur
+File, ou en tapant ^F
(la touche Control et la touche F en
+même temps) dans la fenêtre du prgoramme.
Attention, l'affichage de xdvi
n'est pas parfait, et peut
+être faux. Si vous avez des figures, des mises en pages bizarres, il est
+plus fiable de générer un fichier PostScript à regarder avec
+gv
. xdvi
a l'avantage de ne pas nécessiter
+cette étape de conversion supplémentaire, et donc d'être l'outil idéal
+pour les premières vérifications et relectures.
Bouton | +Clavier | +Fonction | +
---|---|---|
+ Quit
+ |
+
+ q
+ |
+ Quitter | +
+ Again
+ |
+
+ ^A
+ |
+ Répéter la dernière action. | +
+ Reread
+ |
+
+ ^R
+ |
+ Recharger la page. C'est utile quand on vient de faire des
+modifications
+au fichier .tex (ne pas oublier de recompiler!). On peut
+aussi se
+contenter de cliquer n'importe où dans la fenêtre. |
+
+ 100%, 50%, 33%, 25%
+ |
+ Voir ci-dessous | +Changer le facteur de grossissement. | +
+ First
+ |
+
+ 1g
+ |
+ Revenir à la première page. | +
+ Page-10
+ |
+ 10p | +Reculer de 10 pages. | +
+ Page-5
+ |
+ 5p | +Reculer de 5 pages. | +
+ Prev
+ |
+
+ p
+ |
+ Reculer d'une page. | +
+ Next
+ |
+ SPC , n ,
+RETURN |
+ Avancer d'une page. | +
+ Page+5
+ |
+ 5n | +Avancer de 5 pages. | +
+ Page+10
+ |
+ 10n | +Avancer de 10 pages. | +
+ Last
+ |
+
+ g
+ |
+ Aller à la dernière page | +
+ View PS
+ |
+ v
|
+ Afficher comme un PostScript | +
+ File
+ |
+
+ ^F
+ |
+ Affiche vos fichiers, ce qui permet de sélectionner à la souris le +fichier que vous voulez charger. | +
Au clavier, on utilise la touche s
(shrink) pour
+changer ce facteur, en l'associant avec un chiffre. s
tout
+court affiche tout le document mis en page, pour visualisation avant
+impression.
Plus le shrink factor, est petit, plus le zoom est important.
+Par exemple, 1s
grossit énormément le texte, tandis que, sur
+les stations Sun, 8s
l'affiche dans un coin du
+xdvi
(attention, tout dépend de la résolution de
+l'écran).
u
(up), d
(down), l
(left),
+r
(right) et c
(center).numg (goto) |
+ aller à la page indiquée (23g : page 23) |
+
x (expert) |
+ Supprimer les « cases à cliquer » à
+droite de la fenêtre (passer en « tout clavier », ou mode expert).
+Réversible en tapant à nouveau x . |
+
Cette page a pour but de montrer comment on peut utiliser le + programme XeTeX pour utiliser facilement des polices extérieures et + taper du texte dans des systèmes d'écriture latins ou non latins.
+XeTeX est un programme basé sur TeX, qui en est une variante (les + fichiers écrits pour l'un pour l'autre ne seront pes nécessairement + compatibles). Il a d'abord été conçu pour fonctionner avec Mac OS X + mais fonctionne aujourd'hui avec une grande diversité de systèmes.
+Un de ses grands avantages est de gérer tout à fait correctement les + fichiers encodés en UTF-8, et les polices TrueType et OpenType, ce qui + permet de bénéficier des mêmes possiblités techniques que les logiciels + de traitement de texte habituels pour produire des documents, qu'ils soient + écrits en arménien, en araméen, en japonais, en lituanien ou en + persan.
+De la même manière qu'on utilise la commande latex
pour
+ compiler les fichiers écrits pour LaTeX, on utilise la commande
+ xelatex
pour compiler les fichiers LaTeX destinés à
+ profiter des fonctionnalités de XeTeX.
La commande xelatex
s'utilise comme la commande
+ pdflatex
.
xelatex fichier.tex+
L'option -no-pdf
permet de retrouver le comportement de la
+ commande latex
qui ne produit pas un fichier PDF directement
+ lisible mais un fichier intermédiaire de la forme
+ fichier.xdv
. La commande xdvipdfmx
sert à
+ convertir les fichiers XDV en fichers PDF.
XeTeX accepte les fichiers encodés en UTF-8 seulement, par défaut. + assurez-vous donc d'utiliser un éditeur de texte compatible + (voir aussi la page + concernant UTF-8 pour plus d'informations).
+XeLaTeX possède un certain nombre de paquets spécifiques, et au + contraire ne doit pas être utilisé avec certains paquets traditionnels + de LaTeX.
+inputenc
et fontenc
sont
+ inutilesfontspec
sert à sélectionner les polices
+ facilementAvant de commencer, il y a un pré-requis qui n'est pas spécifique à + LaTeX : savoir taper un texte quelconque, dans la langue qui vous + intéresse, en Unicode. Heureusement, nous avons une documentation sur + les éditeurs en + Unicode, que nous vous invitons à lire avant d'aller plus loin si + ce n'est déjà fait.
+Tout ce que vous avez à faire maintenant, c'est de créer votre + fichier LaTeX avec votre éditeur en Unicode. Nous allons voir dans un + instant ce qu'il faut mettre dans le préambule.
+Les fichiers déjà écrits pour LaTeX peuvent nécessiter quelques + adaptations : grâce à votre éditeur de texte favori, enregistrez votre + fichier au format UTF-8, et remplacez les lignes
+\usepackage[T1]{fontenc} +\usepackage[utf8]{inputenc}+
par
+\usepackage{fontspec}+
Par défaut, XeTeX utilisera les polices Latin Modern qui ont un + aspect semblable aux polices standard de LaTeX. Mais si vous voulez en + changer, en particulier pour afficher du texte dans d'autres écritures, + il faudra se procurer une police capable de les afficher. Prenons par + exemple la police FreeSerif. La commande suivante permet de + sélectionner cette police par défaut pour l'ensemble du document.
+\setmainfont[Ligatures=TeX]{FreeSerif}+
Les options indiquées permettent respectivement d'utiliser certaines
+ suites de caractères pour les caractères spéciaux (comme
+ ---
pour —), l'option Ligatures=Common
+ permet d'utiliser les ligatures standard
+ de la police si celle-ci en possède (notamment fi et ffi).
Attention, certaines anciennes polices, datant d'avant + l'introduction du standard Unicode pour l'encodage des caractères, + permettent d'afficher des écritures non latines, en remplaçant les + dessins des caractères latins par ceux des caractères grecs : elles + permettent ainsi d'«écrire en grec» avec un clavier latin (comme la + police Symbol). L'usage de ces polices de caractères est à + proscrire : l'utilisation de systèmes Unicode permet aux fichiers de + reproduire fidèlement les caractères présents dans le texte.
+Il est possible que la police choisie par défaut ne convienne pas à + tous les usages, par exemple pour écrire en chinois. Si cela s'avérait + nécessaire, rien de plus simple : il suffit de déclarer une nouvelle + police avec la commande suivante
+\newfontfamily\cjkfont[Script=CJK]{AR PL ZenKai Uni}+
Cette commande déclare une nouvelle police utilisable avec la
+ commande \cjkfont
(il s'agit de la police AR PL ZenKai
+ Uni). On pourra alors l'utiliser sous la forme suivante :
En chinois, «Chine» s'écrit {\cjkfont 中国}.+
Le paquet polyglossia
ne fonctionne qu'avec XeTeX, et sert
+à remplacer le paquet babel
. Attention cependant : toutes les
+focntionnalités de babel n'y sont pas présentes, notamment le remplacement
+des puces par des tirets dans les environnements itemize
,
+pour les documents en français.
+
L'intérêt principal de polyglossia
est de fournir des
+traductions pour les textes affichés traditionnellement par LaTeX
+(les dates, les mots Section, Chapter, Contents,
+Proof...).
+
Là où on écrivait auparavant \usepackage[francais]{babel}
+il faudra écrire par exemple
\usepackage{polyglossia} +\setdefaultlanguage{french} +\setotherlanguage[variant=british]{english} ++
qui indique que le texte est en français (on verra ainsi
+Table des matières au lieu de Contents et permet d'insérer
+des passages en anglais britannique avec \begin{english}
et
+\end{english}
.
On peut aussi utiliser polyglossia
pour les langues comme l'arabe.
+outre la commande \setdefaultlanguage{arabic}
, on peut utiliser
+une commande comme
\newfontfamily\arabicfont[Script=Arabic]{Scheherazade}+
afin d'indiquer la police souhaitée pour l'arabe. +Cette étape est essentiellement obligatoire, car peu de polices incluent +à la fois les caractères latins et arabes dans le style désiré. +Un exemple de fichier LaTeX avec un texte arabe +se trouve ici. +
+La paquet arabxetex
, qui ne fonctionne également qu'avec XeLaTeX,
+permet d'entrer du texte dans les écritures arabes (que ce soit en arabe,
+en persan ou en ourdou) à l'aide de translittération, et fournit
+un certain nombre d'autres fonctions utiles. La documentation
+se trouve à
+cette adresse.
+
\documentclass{article} +\usepackage{fontspec} +\defaultfontfeatures{Mapping=tex-text} +\setmainfont{Linux Libertine O} +\usepackage[margin=4cm]{geometry} +\usepackage{amsthm} + +\title{Οἱ πρῶτοι ἀριθμοί} +\date{20 Μαρτίου 2008} + +\begin{document} + +\maketitle + +\textbf{Θεώρημα 1.} «Οἱ πρῶτοι ἀριθμοὶ πλείους εἰσὶ παντὸς τοῦ προτεθέντος +πλήθους πρώτων ἀριθμῶν.» (\emph{Στοιχεία}, Εὐκλείδης). Ἄρα, τὸ σύνολο τῶν +πρώτων ἀριθμῶν εἶναι ἄπειρο. + +\textsc{Ἀπόδειξη. } Ἔστω $P$ ἕvα πεπερασμένο σύνολο $\{p_1, \dots, p_k\}$ +πρώτων ἀριθμῶν. Θεωροῦμε τὸv ἀκέραιον ἀριθμόν $N := p_1\cdots p_k + 1$, ποὺ +εἶναι μεγαλύτερος τοῦ $1$. Τότε ὑπάρχει ἕνα πρῶτο διαιρέτη $q$ τοῦ $N$. +Ἄv $q = p_i$, τότε $q | N - p_1\cdots p_k$, ἄρα $q | 1$, καὶ αὑτὸ εἶναι +ἄτοπο. $\qed$ + +\end{document}+
Mozilla est une suite de logiciels pour Internet. Elle comporte en +particulier un navigateur Web (Mozilla Browser) qui est l'un des +meilleurs disponibles actuellement et un module Mail/Newsgroups pour +gérer ses mails et +consulter des groupes de News (comme Usenet ou +forum).
+Mozilla fonctionne aussi bien sous Windows que sur les systèmes Unix.
+De nos jours, la suite Mozilla n'est plus développée, et ce sont Firefox et Thunderbird qui sont installés sur les machines de l'école.
+ ++Mozilla Mail/Newsgroups est un module de Mozilla fait pour gérer son mail +et consulter les News. Cette page ne concerne que la partie Mail. +
+On peut lancer Mozilla Mail depuis Mozilla avec la combinaison de touches
+Ctrl+2
ou Window > Mail & Newsgroups
depuis le
+menu. Il existe aussi une version autonome de ce module qui s'appelle Thunderbird
+Mail.
Si vous n'êtes pas du tout familier avec le courrier électronique, +commencez par consulter notre +documentation sur ce sujet.
+Ce programme s'utilise essentiellement de la même manière que d'autres
+programmes pour gérer son courrier électronique à ceci près que Mozilla
+Mail fonctionne en mode graphique et non en mode texte comme
+pine
+ou mutt
.
+
La première étape pour commencer à utiliser Mozilla Mail consiste à le +paramétrer pour la consultation et l'envoi de messages. Ce paragraphe +concerne la configuration pour un serveur IMAP(S). Avec ce type de +serveur, les fichiers contenant vos mails sont conservés sur le serveur.
+La première fois que vous lancez Mozilla Mail, ou si vous sélectionnez
+File > New > Account
dans le menu, l'Account Wizard
+est lancé, il sert à créer un compte. Sélectionnez « Email
+account ». Entrez ensuite votre nom ainsi que votre adresse
+email ces informations serviront pour les messages que vous
+enverrez.
Il s'agit ensuite de régler certains paramètres techniques. Tout
+d'abord, sélectionnez IMAP
pour utiliser un serveur IMAP
+comme le titre de cette section l'indique. Dans Incoming
+server
, entrez le nom de ce serveur IMAP. Il faut ensuite entrer
+le nom du serveur SMTP
(Outgoing server). La page suivante
+vous demande le login utilisé pour vous connecter au serveur IMAP.
+
Les paramètres ci-dessus sont les bons si vous voulez consulter votre +mail à l'École et que vous le faites depuis le réseau de l'École. Si vous +utilisez Internet via un autre fournisseur d'accès, vous devez +impérativement indiquer le serveur SMTP de ce fournisseur d'accès.
+Si on veut faire l'analogie avec le courrier postal, le couple
+Incoming server
+Incoming User Name
correspond à
+la boîte à lettre où vous recevez votre courrier tandis que
+Outgoing server (SMTP)
correspond à la boîte aux lettres de
+la Poste la plus proche de chez vous.
Une fois le compte créé par l'Account Wizard, il reste des
+choses à préciser. Pour cela, sélectionnez Edit > Mail &
+Newsgroups Account Settings
et sélectionnez « Use secure
+connection (SSL) » dans la rubrique « Server
+settings », cela signifie que toutes les données
+échangées entre Mozilla et le serveur IMAP(S) seront cryptées (ainsi
+votre mot de passe ne sera pas lisible en clair pour quelqu'un qui
+espionnerait le réseau) :
Allez maintenant dans la rubrique « Composition & +Addressing » et décochez la case « Compose messages in HTML +format » : +
+Sans ce réglage, les messages que vous composeriez seraient envoyés en +double exemplaire : d'une part en texte brut et au format HTML (le format utilisé pour +les pages Web) d'autre part. Dans 99% des cas, poster en HTML est inutile +et même nuisible : cela plus que double la place prise par le mail +sur la messagerie de votre correspondant !
+Après cela, Mozilla Mail est bien configuré et prêt à l'emploi.
+ ++Mozilla est une suite de logiciels pour Internet. C'est ici la partie +« navigateur Web » qui nous intéresse, plus particulièrement la +dernière version, Mozilla-1.6, l'un des meilleurs navigateurs +disponibles à l'heure actuelle. Voici ses principaux atouts : +
++Cette capture d'écran vous montre Mozilla (avec le thème « Modern ») +affichant, dans deux onglets, le site de la Mozilla Foundation (ce que +vous voyez à l'écran) et en arrière plan notre site. Voici les +principales zones à connaître de la fenêtre Mozilla : +
+Ctrl+Page Up
+et Ctrl+Page Down
pour passer d'un onglet à
+l'autre, ou cliquez sur l'onglet que vous voulez voir.+Vouc pouvez cliquer sur l'icône « Mozilla » si vous avez une config +récente (à partir de la config conscrits 2002). Sinon, dans une +fenêtre, tapez simplement : +
+brick ~ $ mozilla &
+
+
+Pour quitter, cliquez sur File > Quit
, ou tapez
+Ctrl+Q
.
+
Action | +Manipulation à faire | +Raccourci clavier | +
---|---|---|
Revenir dans l'historique | +Bouton Back | +Alt+Flèche +gauche | +
Avancer dans l'historique | +Bouton Forward | +Alt+Flèche droite | +
Fermer l'onglet | +
+ File > Close Tab
+ |
+ Ctrl+W | +
Créer un nouvel onglet | +
+ File > New > New Navigator Tab
+ |
+ Ctrl+T | +
Aller à la page d'accueil | +Bouton Home | +Alt+Home | +
Chercher dans la page | +Edit > Find in This Page | +Ctrl+F, ou / puis taper le mot à chercher | +
Ajouter un bookmark | +
+ Bookmarks > Bookmark This Page
+ |
+ Ctrl+D | +
Accéder à la liste des bookmarks | +Bouton « Bookmarks » | +_ | +
+La configuration de Mozilla se fait via le panneau de Préférences,
+accessible par Edit > Preferences
. Il y a beaucoup de
+choses que vous pouvez configurer dans Mozilla. Voici deux exemples :
+
+« Home » est votre page d'accueil, celle qui apparaît quand vous
+cliquez sur le bouton Home
. C'est une sorte de
+super-bookmark. Vous pouvez y indiquer votre propre page Web, un
+journal, un moteur de recherche (mais souvenez-vous que le bouton
+Search
est déjà fait pour ça).
+
+Par défaut, Mozilla affiche une page du site Mozilla.org. Pour indiquer une
+autre adresse, dans le panneau de Préférences, cliquez sur
+Navigator
. Dans la section « Home Page », indiquez
+l'adresse que vous souhaitez dans le cadre Location
+
+Quand vous arrivez sur une page disponible en plusieurs langues, +Mozilla choisira par défaut de vous montrer la page en anglais. Si +vous préférez voir plutôt du français, il faut modifier ce qu'on +appelle les « préférences de langue ». +
+
+Dans le panneau de Préférences, cliquez sur le menu déroulant
+Navigator
puis choisissez le sous-menu
+Languages
. Vous y verrez déjà quelque chose comme
+« English [en]
». Cliquez sur le bouton Add
+puis ajoutez la langue de votre choix. Utilisez ensuite le bouton
+Move Up
pour la placer en tête de liste.
+
+C'est un programme très simple mais puissant qui permet de garder +l'historique d'un fichier. Son intérêt est que vos fichiers évoluent au fur et +à mésure que vous les modifiez, et sans un outil de gestion de version, on +peut difficilement gérer les anciennes versions. +
++Attention, ce logiciel est assez ancien et peu utilisé de nos jours. +Pour une utilisation personnelle à la manière de ce tutoriel, on utilise plus souvent git. +
+
+Sans trop rentrer dans les détails (pour cela, faire man
+rcsintro
), l'utilisation de base peut se résumer à deux
+commandes :
ci
(de l'anglais check-in) est la
+commande avec laquelle on dépose la dernière version du fichier dans l'archive
+gérée par RCS.
+Supposons que notre fichier s'appelle monfichier
. Voilà ce qui se
+passe la première fois que l'on fait le check-in : (en italique,
+ce qui est tapé par l'utilisateur) :
corvette ~ $ ci monfichier +RCS/monfichier,v <-- monfichier +initial revision: 1.1 +enter description, terminated with ^D or '.': +NOTE: This is NOT the log message! +>>Ceci est une description du fichier +>> . +done +corvette ~ $ ++
+Comme vous le voyez, la dernière ligne doit être un point, +afin de signaler au programme qu'on a fini d'écrire nos commentaires. +
+
+Le fichier est sauvé dans l'archive RCS, appelée monfichier,v
, et
+effacé. Par défaut, l'archive se trouve dans le même répertoire que le
+fichier de départ. Il est plus pratique d'avoir un sous-répertoire
+RCS/
, dans lequel seront sauvegardées automatiquement
+les versions de vos fichiers.
+
+La première fois que vous enregistrez un fichier, donnez une description +générale du fichier. Les autres fois, vous mettrez juste un commentaire sur la +version (modifications apportées, date, etc). +
+co
(de l'anglais check-out) est la
+commande avec lequel on récupère une version du fichier dans l'archive gérée
+par RCS.
+Supposons que vous voulez sortir la toute dernière version de notre fichier,
+appelé monfichier
.
corvette ~ $ co monfichier +RCS/monfichier,v --> monfichier +revision 1.1 +done +corvette ~ $ ++
+La version 1.1 de monfichier
est rétablie dans le répertoire
+courant.
+
+RCS ne sauvegarde pas des copies intégrales de chacune des versions : +chaque nouvelle version contient en fait les différences par rapport à la +précédente. C'est ce qui permet de gérer les différentes versions, sans +utiliser inutilement de la place disque en stockant 10 fois les mêmes données. +
++writable monfichier exists; overwrite? [ny](n) ++ +c'est qu'il y a déjà un fichier de ce nom dans le répertoire. Il vaut mieux +répondre
n
on et vérifier avant si on peut
+l'écraser.+ci -u monfichier ++ +Le fichier contenant les dernières modifications est sauvegardé normalement, +et vous conservez dans votre répertoire le fichier dans son dernier +état.
+co -r1.4 monfichier +
+rcslog monfichier +
monfichier
diffère-t-il actuellement de la version
+1.3 ? Tapez :
+
++rcsdiff -r1.3 monfichier +
+Pour plus d'informations, vous pouvez consulter le Mini-HOWTO +RCS.
+ ++Le logiciel Subversion permet de gérer l'évolution de projets et leurs +différentes versions. Si vous connaissez RCS ou CVS, Subversion entend leur +succéder et en moderniser le principe. +
++Pour gérer l'évolution de projets (qu'il s'agisse de fichiers TeX, de +programmes ou de scripts en n'importe quel langage, etc.), il faut +d'abord, comme sous CVS, créer un répertoire de dépôt. +
+bireme ~ $ mkdir svn +bireme ~ $ svnadmin create svn +bireme ~ $ ++
+Vous avez maintenant un répertoire de dépôt prêt à recevoir vos projets. +
+
+Pour ajouter des projets à Subversion, allez d'abord dans le répertoire
+contenant les fichiers du projet (s'ils existent). Dans notre exemple,
+disons que vous avez un répertoire nommé mon_projet
, qui
+contient un seul fichier, intitulé fichier1
.
+
bireme ~ $ svn import mon_projet file:///users/promo/section/login/svn -m "version0" +Adding mon_projet/fichier1 + +Committed revision 1. +bireme ~ $ ++
+Maintenant, vous avez : +
++Vous pouvez déposer autant de projets que vous le désirez dans votre +répertoire de dépôt. +
++Il ne vous reste plus qu'à créer un (ou plusieurs) répertoire(s) de +travail : +
+bireme ~ $ svn checkout file:///users/promo/section/login/svn svn-travail +A mon_projet/fichier +Checked out revision 1. +bireme ~ $ ++
+Évidemment, vous pouvez travailler sur un projet même si le répertoire +de dépôt n'est pas chez vous. Pour cela, tapez simplement l'URL du +projet. En voici quelques exemples : +
+bireme ~ $ svn checkout http:///adresse/repertoire/projet svn-travail +bireme ~ $ svn checkout https:///adresse/repertoire/projet svn-travail +bireme ~ $ svn checkout svn:///adresse/repertoire/projet svn-travail +bireme ~ $ svn checkout svn+ssh:///adresse/repertoire/projet svn-travail ++
+Vous récoltez ainsi tous les fichiers du projet. Modifiez-les de la +façon habituelle, typiquement avec un éditeur de texte. +
++Pour mettre à jour votre répertoire de travail, utilisez la +commande : +
+bireme ~ $ svn update
+
+ +ou bien, si vous ne voulez mettre à jour qu'un nombre limité de +fichiers : +
+bireme ~ $ svn update fichier1 fichier2 etc.
+
+ +Apportez les modifications que vous voulez sur les fichiers de votre +répertoire de travail. +
+
+Pour ajouter des fichiers, commencez par les créer, comme à
+l'accoutumée. Par exemple, éditez le fichier fichier2
et
+remplissez-le (ou non). Ensuite, tapez :
+
bireme ~ $ svn add fichier2
+
+
+Cette commande avertit Subversion qu'il devra prendre en compte ce
+nouveau fichier. Le fichier sera ajouté au dépôt Subversion la prochaine
+fois que vous taperez svn commit
. Attention ! Si
+vous ne tapez pas svn commit
, le fichier ne sera pas
+ajouté au dépôt !
+
+Pour retirer des fichiers de Subversion, utilisez la commande : +
+bireme ~ $ svn delete fichier
+
+ +Quand vous avez terminé d'apporter vos modifications, vous pouvez les +distribuer : +
+bireme ~ $ svn commit
+
+ +ou bien, si vous ne voulez distribuer qu'un nombre limité de +fichiers : +
+bireme ~ $ svn commit fichier1 fichier2 etc.
+
+ +Vous pouvez consulter l'historique d'un fichier : +
+bireme ~ $ svn log fichier
+
+ +mais aussi de tous les fichiers d'un projet : +
+bireme ~ $ svn log
+
+ +Vous pouvez comparer deux versions d'un fichier, ici la première et la +deuxième versions : +
+bireme ~ $ svn diff --revision 1:2 fichier
+
+ +Vous pouvez aussi comparer, par exemple, la dernière version distribuée +d'un fichier avec la précédente : +
+bireme ~ $ svn diff --revision PREV:COMMITTED fichier
+
+ +Si vous regrettez les modifications apportées à un fichier, tapez : +
+bireme ~ $ svn revert fichier
+
+ +Le fichier reviendra à son état antérieur. +
++Pour en savoir plus sur Subversion, consultez : +
+svn help
.Tkabber est un client libre +pour Jabber, le réseau +libre de messagerie +instantanée. Il est également disponible pour Windows. +
++Notez que le client de messagerie instantanée par défaut sur les +machines de l'école est à présent Empathy, qui est sans doute plus +facile à utiliser que Tkabber. +
+
+Tapez simplement tkabber
dans une fenêtre et Tkabber se
+lancera. Vous verrez d'abord un splash screen pendant
+que le logiciel se charge, puis vous verrez un écran de login
+apparaître.
+
+Dans la partie gauche de la fenêtre se trouve la liste des contacts, +qui s'appelle roster (liste, tableau de service) en +jargon jabbérien. Les icônes vous indiquent le statut de vos +contacts : connectés, non disponibles, etc. Pour engager une +discussion avec l'un de vos contacts, double-cliquez sur son icône. +
++Dans la partie droite de la fenêtre se trouve désormais la fenêtre de +discussions. Remarquez le système d'onglet : on a lancé le browser de +Tkabber, avant de commencer une discussion avec « Super Tuteur » d'où +l'onglet « Browser » que vous pouvez voir à gauche de celui intitulé +« Super Tuteur ». +
+
+Pour écrire votre message, tapez simplement dans le cadre du bas
+(celui où on voit le curseur sur la capture d'écran) avant d'envoyer
+le message en appuyant sur Enter
.
+
+Après vous être logué pour la première fois, mieux vaut sauvegarder
+vos identifiants. Pour cela, allez dans Tkabber >
+Customize
. L'écran de configuration n'est pas très convivial,
+mais on s'y habitue assez vite. Cliquez sur le bouton
+Open
qui est en face de « Login ». Vous êtes désormais
+dans la section « Login » du panneau de configuration.
+
+La première ligne s'appelle « loginconf(user) » : c'est celle qui
+définit votre JID. À côté du
+bouton State
, vous voyez que vous avez déjà défini un
+JID, mais que vous ne l'avez pas sauvegardé. Cliquez sur
+State
pour changer les choses, on vous proposera alors de
+la sauvegarder pour la session en cours, pour les sessions à venir ou
+encore de revenir à la dernière valeur enregistrée. Pour sauvegarder
+son mot de passe, même opération à la ligne « loginconf(password) ».
+
+Vous pouvez également sauvegarder vos identifiants en les indiquant
+dans le fichier de configuration,
+.tkabber/config.tcl
. Utilisez l'éditeur de votre choix
+(NEdit par exemple) pour
+créer et/ou éditer config.tcl
:
+
+# Mes identifiants + +set loginconf(user) JID +set loginconf(resource) tkabber +set loginconf(server) jabber.org +set defaultnick(JID@jabber.org) mon_pseudo ++
+Évidemment, remplacez « JID » par votre véritable JID et
+jabber.org
par votre serveur. La dernière ligne sert à
+définir votre pseudo.
+
+Cliquez sur Service > Edit my info
. Vous pouvez alors
+indiquer votre nom, prénom, page Web, téléphone, etc. Vous pouvez
+également y indiquer une photo/icône (équivalent du « buddy icon » des
+autres protocoles d'IM).
+
+Pour indiquer si vous êtes prêt à discuter, parti temporairement,
+etc., cliquez sur le bouton Online
en bas à gauche de la
+fenêtre Tkabber (vous pouvez aussi passer par Tkabber >
+Presence
). Un menu déroulant vous permet alors de sélectionner
+votre statut : « online » (connecté), « invisible » (connecté, mais
+personne ne peut vous voir), « do not disturb » (ne pas déranger),
+« away » (pas là pour le moment », « extended away » (pas là pour un
+bon bout de temps), « free to chat » (rien à faire en ce moment, prêt
+à discuter).
+
+Il faut passer par le fichier de configuration,
+config.tcl
(dans le répertoire .tkabber
). Il
+existe plusieurs thèmes : black, dark, ermine, green, ice, light,
+teopetuk et warm. Vous pouvez en voir quelques-uns en jettant un coup
+d'œil à la page des captures d'écran de
+Tkabber. Pour choisir un thème, éditez config.tcl
,
+par exemple ici on choisir le thème Ice :
+
+# Choisir un thème + +set load_default_xrdb 0 +option readfile /opt/gourous/share/util/packages/tkabber/examples/ice.xrdb userDefault ++
+Ces lignes ont l'air un peu ésotériques, en fait il suffit de changer
+le nom du fichier en .xdrb
pour changer de thème.
+
+Même topo pour les icônes : vous pouvez en changer. Les sets d'icônes
+proposées sont tirées de d'autres clients IM. Il existe les sets
+suivants : gabber
, jajc
, jarl
,
+psi
, ou icq
. Le set d'icônes utilisé pour les
+captures d'écran est Psi. Pour indiquer un set, ajoutez à votre
+config.tcl
:
+
+# Choisir un set d'icônes + +set pixmaps_theme icq ++
+C'est la petite image qui vous fait patienter pendant que que Tkabber
+se lance. Elle affiche quelques informations comme le numéro de la
+version, le nom des développeurs, l'adresse du site Web, ainsi qu'une
+barre de progression indiquant où en est le lancement. Si vous faites
+partie des gens qui haïssent les splash screen,
+ajoutez à votre config.tcl
:
+
+# À mort le splash screen ! + +set show_splash_window 0 ++ +
+Les objectifs des stages et des formations des Tuteurs, dans lesquels nous +nous drapons pour masquer nos fourbes motivations, sont les suivants : +
++L'informatique ne se résume pas à ce que l'on en voit dans les publicités, à +la télé ou dans les magazines. Vous n'avez jamais entendu parler d'Unix* avant +d'arriver à l'École, et pourtant il est utilisé dans le monde entier par la +majorité des universités et un nombre considérable d'entreprises. +
++Avant de choisir, et indépendamment de l'acquisition d'une compétence précise, +il faut être informé de toutes les possibilités. C'est pourquoi nous voulons, +par l'intermédiaire d'une formation à Unix, vous faire comprendre les +principes généraux valables sur tous les ordinateurs, et vous donner les +concepts qui vous permettront de vous adapter à d'autres systèmes. +
++Nous vous montrons à vous servir d'une fonctionnalité : courrier +électronique, traitement de textes, etc, mais notre but n'est pas de vous +cantonner à l'utilisation d'un logiciel précis. +
++L'objectif de nos formations est de donner un certain nombre de notions +simples, mais exactes et précises, sur ce qui se passe vraiment; nous voulons +démystifier l'informatique, montrer où se trouve réellement la magie : +« Quand le sage montre la lune, le fou regarde le doigt ». Nous ne +considérons pas les logiciels comme des fins en soi, mais comme un moyen +d'accéder à quelque chose. Quand nous vous montrons un lecteur de news*, nous +vous expliquons comment l'utiliser - comme tout le monde. Mais notre but est +aussi de vous faire comprendre les news, leur origine, leur spécificité. +
++Nous savons que l'informatique est une science complexe et parfois +ardue : nous refusons de propager le discours publicitaire qui affirme +que l'informatique est facile et qu'aucun effort n'est nécessaire pour +apprendre à s'en servir. +
++Il est normal de vous aider à acquérir les notions fondamentales, parce +qu'elles ne sont pas évidentes. +
++Mais notre but est surtout de vous apprendre à apprendre seuls : nous +considérons que notre rôle est rempli lorsque vous savez chercher par vous +même les informations qui vous manquent et les tester, tout comme vous devenez +autonomes dans le cadre de vos recherches universitaires à partir de la +maîtrise. Il n'y a pas de vraie responsabilité sans cette capacité à se +débrouiller, à comprendre par soi-même. +
++Nous pensons qu'il est indispensable de donner une culture informatique +minimale : l'informatique n'est pas née en 1996 avec la sortie de +Windows 95, ni même dans les années 1980 avec MacOS. Et même en +informatique, ancienneté n'est pas synonyme d'archaïsme. L'installation Unix +de l'École est l'héritière d'une histoire commencée en 1970, Internet ne date +pas de sa découverte par les médias, mais d'au moins quinze ans avant... +
++De même, notre initiative bénévole est dans la continuité de la tradition de +l'Internet. Dès ses balbutiements, le réseau a été conçu et développé +bénévolement par des universitaires illuminés qui possédaient l'enthousiasme +et la compétence nécessaires pour s'en occuper. Ces chercheurs pratiquent une +méthode de programmation directement inspirée des principes de la publication +académique : le logiciel libre, dont l'un des mots d'ordre est +« share and enjoy » (diffusez-le et profitez-en). Sans ces logiciels +mis au point par des milliers de bénévoles tout autour du monde, dont la +plupart ne se sont jamais rencontrés autrement que via le courrier +électronique, l'Internet serait +inutilisable. +
++Aujourd'hui encore, aucune entité commerciale ou gouvernementale ne parvient à +prendre le contrôle du réseau parce qu'il leur manque l'incroyable compétence +technique, associé à un indéracinable esprit frondeur, de tous ces +indépendants... +
++C'est dans ce même esprit que nous vous proposons ces formations : les +logiciels que nous utilisons sont libres (mutt, LaTeX, Mozilla, emacs, vim, +Apache, GIMP, etc), et nous vous transmettons notre savoir dans l'espoir que +vous aussi, un jour, vous serez défenseurs de cet état d'esprit ! Et que +vous transmettrez, non moins bénévolement, ce que vous avez appris... +
+Si vous souhaitez découvrir d'autres motivations moins avouables du tutorat, +les voici.
+ ++Les pages du site ont une présentation uniforme : +
+Pendant la lecture du site des tuteurs, différents repères visuels +peuvent vous guider.
+Quand nous voulons vous mettre en garde contre certains risques (par +exemple des erreurs d'étourderie pouvant conduire à la destruction +de vos fichiers). Nous utilisons un encadré rouge avec des panneaux +indiquant le danger :
+mv
et
+rm
. rm
ne fonctionne pas sur le principe de la corbeille
+des
+Macs ou des PC Windows, il ne déplace pas les fichiers dans un «endroit»
+de
+stockage avant destruction. Un fichier effacé est vraiment
+effacé (mais
+le SPI fait des sauvegardes toutes les nuits, adressez-vous à eux si vous
+effacez un fichier par mégarde: spi@clipper
).Quand nous voulons mettre en valeur un point particulier ou résumer +quelques points de manière concise, nous utilisons des +encadrés :
+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.
+Si notre activité a principalement pour but d'aider les élèves de +l'ENS à appréhender les notions informatiques pour se servir des +ordinateurs mis à leur disposition dans les salles informatiques de +l'École, nous pensons que ce site peut servir à tout utilisateur d'un +système d'exploitation de type Unix (Solaris, GNU/Linux, *BSD...). +
++C'est pour cela que dans la mesure du possible, nous mettons en évidence +grâce à un rectangle bleu clair +les paragraphes spécifiques à l'installation informatique de l'ENS +(maintenue par le service de prestations +informatique), comme le montre le paragraphe qui +suit :
+pot
affiche le menu du pot du jour.
+pot
est une commande interne à l'École. Le menu est tapé en
+début de semaine par un membre du SPI.
+
Quand nous donnons des commandes Unix, destinées à être tapées dans un
+xterm
, nous utilisons un
+encadré du type suivant :
bireme ~ $ ytalk toto@drakkar
+
+
+ C'est normal d'être complètement perdu quand on débute sur les +machines Unix ! Mais il ne faut pas se décourager pour +autant... N'hésitez donc pas à :
+Certains problèmes demandent de s'adresser à des interlocuteurs + spécifiques. En voici la liste : +
+Comment rédiger une demande d'aide ? Sans honte +d'abord : nous sommes tous passés par le stade de connaissance zéro en +informatique... Avec le maximum de détails ensuite. Précisez le nom de +la machine sur laquelle vous étiez, et l'intégralité des messages +d'erreur éventuels, que vous pouvez récupérer par copier-coller. Soyez +préparé à ce que vos sauveteurs mettent un certain temps à vous venir en +aide, et vous demandent des informations complémentaires parfois +incongrues : l'informatique est une science désespérément exacte...
+Ce site Web est principalement destiné aux élèves de +l'ENS pour se former à l'environnement Unix mis à leur disposition +pendant leur scolarité, en complément des stages que nous leur faisons. +
+Certaines parties de ce site peuvent être utiles à d'autres +personnes. Mais si vous éprouvez des difficultés, avec Unix ou avec +LaTeX par exemple, n'ayant pas les ressources pour secourir la terre +entière, nous serions malheureusement contraints de ne pas vous aider +davantage.
+Toutefois, nous sommes toujours ravis de recevoir des commentaires +sur ce site. De même, si vous remarquez des erreurs, n'hésitez pas à +nous les signaler par e-mail +à tuteurs@clipper.ens.fr.
+ +Les tuteurs informatique sont un groupe d'élèves (et archicubes) + volontaires et bénévoles pour aider les autres élèves à utiliser Unix + et ses logiciels. Cette page présente nos activités.
++ Dépannage + | +
+ Si vous avez un problème, si vous ne savez pas comment faire quelque +chose sur un ordinateur de l'École, vous pouvez envoyer un courrier +aux tuteurs +(tuteurs@clipper.ens.fr), +déposer un +courrier dans leur casier (casiers élèves), ou encore poser directement vos +questions à un tuteur présent dans la salle ou par talk +s'il n'y en a pas... ++Comment savoir si un tuteur est dans la salle : +tapez qui +pour avoir un plan de la salle ; les tuteurs ont leur nom +souligné. + |
+
+ Cours à la demande + | +Si vous voulez qu'on vous explique les bases de quelque chose, +n'hésitez pas à demander qu'on vous organise un cours +particulier ; a fortiori si vous êtes plusieurs... | +
+ Stages informatiques + | +À chaque rentrée, nous organisons des stages informatiques pour les +conscrits. +Des stages sur un week-end sont aussi organisés deux ou trois fois par an. | +
+ Journal + | +Pendant la période 1999-2001, les tuteurs ont fait paraître un petit +journal mensuel, Le +Hublot, de 6 à 10 pages selon les mois. Il s'efforce d'aborder divers +aspects de l'utilisation des stations Sun, du réseau, des ordinateurs et +d'Internet en général. | +
+ Site Web + | +Signalez toutes les erreurs rencontrées sur ce site, mais aussi les +lacunes, les choses que vous aimeriez trouver... Vous pouvez participer à son +élaboration : si vous vous y connaissez dans un domaine précis et que +vous voulez partager votre savoir, n'hésitez pas à demander qu'on ajoute votre +production (relue, bien entendu...). + | +
+Si vous voulez connaître toutes nos motivations, suivez ce +lien....
+ ++Les Gourous sont des administrateurs système élèves, volontaires et +bénévoles, sur qui le Service de +prestations informatiques (SPI) de l'École se décharge de certaines +tâches. Les Gourous sont un groupe distinct des Tuteurs. Ne pas demander +aux Tuteurs d'installer un logiciel, et inversement, ne pas demander aux +Gourous de l'aide pour LaTeX. Les Gourous disposent d'une +petite page où +vous pouvez avoir la liste des logiciels qu'ils ont installé et qu'ils +maintiennent. +
+Les Gourous sont recrutés par cooptation. Leur travail consiste +notamment en :
+/usr/local/util
. On y trouve des versions à jour de
+programmes du domaine public, que l'équipe d'administration du SPI n'a
+pas le temps de maintenir ;Parallèllement, et toujours sur demande du SPI, une sous-partie des +Gourous modère +le courrier collectif. Une des raisons est la « place disque ». En effet, les +messages sont stockés sur des disques communs ; s'ils sont pleins, plus personne +ne peut envoyer ni recevoir de courrier. La modération permet entres autres +d'éviter une saturation du disque due à l'emploi inconsidéré du courrier +collectif.
+Les programmes des Gourous sont par défaut dans votre PATH : +cela signifie qu'il vous suffit de taper leur nom dans une fenêtre terminal* pour les lancer. Cela +signifie aussi que vous profitez automatiquement des mises à jour que +les Gourous font pour vous : entre deux fois où vous utilisez +Mozilla par exemple, il se peut qu'une nouvelle version ait été +installée.
+ Voici une liste (non exhaustive) des programmes qu'on peut trouver
+chez les Gourous : pour avoir plus d'informations sur l'un d'entre
+eux, vous pouvez essayer de lire sa documentation. Tapez man
+fvwm
, par exemple, pour lire la documentation (en anglais) de
+fvwm. Certaines documentations sont également disponibles en HTML
+depuis le serveur des élèves.
+
(x)emacs
, (x)vim
,
+joe
, nano
, nedit
...lynx
,
+w3m
, links, amaya, arena, dillo
...elm
, pine
,
+mutt
.Vous pouvez en avoir la liste dans le fichier
+/usr/local/util/bin/00INDEX
. Vous pouvez également
+consulter la (courte) page Web des
+Gourous.
Des considérations à la fois de sécurité (éviter les piratages) et +de prestige empêchent la divulgation de l'identité des Gourous +ici. +
++Ce sont des comptes spéciaux, tout comme le compte Gourous : ils +n'ont pas de mot de passe et on ne peut s'y loguer que si on est +inscrit dans une liste d'accès, différente pour chacun des +comptes. Tous ces comptes administrent un secteur bien précis de +l'activité des Gourous, compréhensible d'après leur nom : +
++Ce compartimentage est d'abord une sécurité : si un pirate +parvient à s'introduire sur le compte games, cela ne lui suffira pas +pour modifier les programmes des Gourous. Il permet ensuite à des +personnes ayant des compétences spécialisées (webmaster par exemple) +d'être utiles sans avoir à faire partie de la grosse machine Gourous. +
+
+Les musiques de games se trouvent dans les sous-répertoires de
+/usr/local/games/sounds/
. Vous pouvez jouer ces fichiers
+sons avec xplay
. Pensez aux voisins (les stations
+capables de faire de la musique disposent d'une prise casque).
+
+Pas besoin d'être un grand maître pour avoir les compétences d'un +gourou : si on sait compiler et entretenir un programme en C, et +qu'on possède suffisamment UNIX pour prendre les précautions qui +s'imposent avant de modifier un fichier susceptible d'être lu en même +temps par un automate, on a le niveau. Mais être gourou, c'est être +fiable : c'est ne pas laisser tomber sa fonction par +manque de temps, manque d'envie ou autre ; lire et répondre au mail +de webmaster particulièrement grotesque parfois ; fournir un +travail de maintenance varié (si c'est pour installer un seul +programme, on peut demander à quelqu'un) ; collaborer avec les +autres Gourous même si on ne les aime pas et enfin ne pas faire le +foufou « pour voir ce que ça fait » mais se limiter aux +actions dont on maîtrise parfaitement les conséquences.
++Si vous pensez remplir tous ces critères, ou bien une fraction +importante, sachez que l'accès à la fonction se fait par +cooptation. Envoyez votre candidature par mail. +
+ +Cette page contient quelques meta-informations qui concernent les +tuteurs ou l'informatique en général.
++ Cette page indique, par ordre chronologique décroissant, + certaines modifications importantes du site web. Elle n'est pas + mise à jour systématiquement lors des modifications. +
+-h
.
+mutt
+ Pine
+ xconfiguration
+
+ xconfiguration
+
+ xconfiguration
+
+ configure
+
+ ls
+ grep
+ find
+ less
+ cp
et mv
+ mkdir
,
+rmdir
, cd
)
+ cp
et mv
+ mkdir
, rmdir
, cd
)
+ less
+ ls
+ grep
: corrigés
+ find
+ xdvi
+ +Une bonne partie de la gestion des ressources informatiques de l'ENS +est effectuée par des élèves ou des jeunes archicubes. Il existe +plusieurs types de fonctions que vous pouvez occuper. Toutes sont +volontaires et bénévoles, et reposent sur le système de la +cooptation. Toutes en revanche ne requièrent pas les mêmes compétences +techniques ou la même disponibilité, il y en a pour tous les profils +et pour tous les goûts. +
++Si donc vous voulez : +
++ou même rien de tout ça, faites votre choix. +
++Vous êtes sur notre site. Notre mission consiste à aider les élèves à +utiliser les outils Unix mis à leur disposition. Nos moyens d'action +sont très divers : hotline par mail, aide directe en +salle info, organisation de stages à la rentrée puis pendant l'année, +site Web... Vous pouvez en savoir plus en consultant notre charte. +
+
+Vous n'avez pas besoin d'être très, très, calé en informatique pour
+être tuteur. Littéraires ou scientifiques, il n'y a pas de
+discrimination. Vous n'êtes pas obligé non plus de tout faire en
+devenant tuteur : vous pouvez vous limiter à l'écriture de docs, ou
+aux stages, etc. Vous pouvez également demander à n'être que « qui
+tuteur », c'est-à-dire que votre nom sera souligné dans une carte de
+qui
, signifiant ainsi que les gens peuvent vous demander
+de l'assistance directement ou par talk
.
+
+Si vous commencez à vous débrouiller avec Unix, que vous avez un peu
+de temps et un brin de pédagogie, vous pouvez demander à être tuteur
+en nous écrivant : tuteurs@clipper
.
+
+Les WinTuteurs s'occupent, eux, de l'environnement +Windows. Complémentaires des Tuteurs Unix, ils aident les élèves à +utiliser au mieux, dans les meilleurs conditions de sécurité, le +Windows sur lequel ils travaillent. Ils aident aussi à travailler dans +un environnement mixte Unix/Windows. Vous pouvez en savoir plus sur +leur site Web. +
++Pour rejoindre leurs rangs, il faut leur écrire : wtuteurs@clipper.
++Les modérateurs sont chargés de réguler le courrier +collectif à l'ENS, pour des raisons liées à la place disque. Ils +reçoivent dans leur boîte aux lettres le courrier collectif, et +doivent le faire passer ou l'ignorer. +
++Il n'y pas de compétence particulière à avoir pour être modérateur. On +vous demandera seulement de lire régulièrement votre mail et de faire votre travail +consciencieusement. À l'heure actuelle, les modérateurs sont une +sous-partie des gourous, mais vous pouvez +très bien devenir modérateur sans faire le reste du travail des +gourous. Si tout ceci vous tente, écrivez aux gourous (gourous@clipper). +
+Forum est le système de
+news local à l'ENS. Il contient des groupes sérieux et d'autres
+destinés au bavardage et autres discussions pour tuer le temps. Pour
+éviter que les discussions dégénèrent dans les groupes sérieux, il y a
+le système du blast : le modérateur d'un conti a le droit de déplacer
+(« blaster ») dans alt.blast
toute discussion qui
+dégénère.
+
+Être modérateur d'un conti ne requiert aucune compétence technique. Il
+suffit de lire régulièrement le conti en question et de blaster avec
+discernement. Vous pouvez modérer un seul conti ou plusieurs, tout
+seul ou à plusieurs. Pour devenir modérateur,
+écrivez aux administrateurs de forum : forum@clipper
.
+
+Les gourous sont un groupe d'élèves et d'archicubes à qui le SPI a
+délégué une partie de ses attributions. La plus grosse partie de leur
+travail consiste à installer et maintenir les programmes de
+/usr/local/util
, ainsi qu'à mettre au point la « config
+conscrits » (configuration par défaut qu'utiliseront les futurs
+conscrits). Vous pouvez en savoir plus sur les gourous en lisant la page qui leur est consacrée.
+
+Pour être gourou, il faut bien sûr s'y connaître un minimum en +administration Unix, mais surtout, il faut être fiable : +s'engager à être disponible un minimum, à faire les choses proprement, +à bien documenter ce qu'on fait, etc. Si ça vous tente, écrivez aux +gourous : gourous@clipper. +
+
+Sous ce nom anglo-saxon se cachent les administrateurs des programmes éducatifs (alias
+« jeux »), des mires de login (images qui s'affichent sur les
+ordinateurs quand personne n'est logué) et des fichiers son qui se
+trouvent dans /usr/local/games/sounds/
.
+
+Des compétences minimales d'administration sont bien entendu +demandées : il faut savoir installer un jeu. Il faut aussi beaucoup +d'abnégation pour tester convenablement les jeux fraîchement installés +:-) Si ça vous tente, écrivez aux Games : games@clipper. +
+
+Les webmasters ont la charge du serveur des élèves, www.eleves.ens.fr
. Ils
+s'occupent du bon fonctionnement du serveur à proprement parler, mais
+aussi de tout ce qui est création de nouvelles pages par les élèves,
+statistiques, liens sur la page principale, etc. Une bonne partie du
+travail des webmasters est également consacrée à lire le courrier
+qu'on lui adresse, qui est très... varié (demande de petits cours,
+demande de dossiers d'inscriptions, etc.).
+
+Vous pouvez les rejoindre en leur écrivant : webmaster@clipper. +
++Le rezo est le réseau des thurnes à l'ENS, ce qui désigne à la fois le +réseau des machines entre elles, et l'accès à Internet. L'équipe rezo +inscrit les gens, distribue les câbles nécessaires, aide à configurer +les machines et administre la machine servant de relais. Vous pouvez +lire leur site Web +(connexion locale à l'ENS). +
+
+Pour les rejoindre, écrivez-leur : rezo@clipper
.
+
+Les salles informatiques de l'ENS sous majoritairement équipées de +PC sous Ubuntu, une distribution +Linux. +
+Il y a eu par le passé d'autres sortes de machines sous différentes +variantes d'Unix : stations Sun sous Solaris, +PC sous FreeBSD et sous Fedora. Le choix d'Unix permet +d'avoir des machines stables, sûres et multi-utilisateurs. Pour en +savoir plus sur Unix, lisez notre présentation +technique. +
++Il existe quelques PC sous Windows à l'ENS : en salle Infi, à Jourdan et +à Montrouge. Ils sont moins bien équipés en logiciels que les machines +Linux. Nous vous recommandons de ne les utiliser que si vous êtes +obligé, et de préférer les machines Linux dès que c'est possible +(c'est-à-dire tout le temps, pour l'immense majorité des gens). +
++Il a existé des Macs à l'ENS à une époque, mais il n'y en a plus de nos jours. +
++Le domaine de compétence des tuteurs (et de pertinence des informations +de ce site web, sauf sur quelques points théoriques) se limite à +Unix/Linux. Si vous avez des difficultés à utiliser Windows ou les +programmes de Windows, adressez-vous aux WinTuteurs. Si vous +trouvez ces machines plantées, écrivez au SPI. +
++Contrairement à ce que vous pourriez croire, le système Unix n'est pas +un truc de dinosaures, austère et dépassé. Vous n'êtes pas handicapé +pour ce qui est de surfer sur le Web, écrire des documents, retoucher +des photos, etc. Communiquer avec les mondes Windows ou Mac n'est pas +forcément un problème non plus, cf. notre mémo sur les formats. Voici +donc ci-dessous quelques exemples de logiciels en mode graphique, +faciles à utiliser. Il faut y ajouter tous les logiciels composant +l'environnement Gnome, qui vous sont proposés par défaut dans la config conscrit. +Si vous rencontrez des difficultés avec l'un de ces programmes, +n'hésitez pas à nous contacter. +
+Beaucoup des logiciels ci-dessous +existent également au moins pour Windows, et sont gratuits. Vous +pouvez donc utiliser les mêmes logiciels sur votre PC qu'à +l'ENS, même si celui-ci est sous Windows. +
+Type de logiciel | +Choix disponible à l'ENS | +Commande +à taper | +Autres plate-formes | +
---|---|---|---|
Suite bureautique (traitement de texte, tableur, +etc.) |
+ OpenOffice.org (OOo). OOo est une suite +bureautique similaire à Office, avec bonne compatibilité avec les +formats Microsoft. | +
+ openoffice
+ |
+ Windows, MacOS X | +
Navigateur Web | +Firefox, un navigateur complet et facile à +utiliser, l'un des meilleurs actuellement +disponible. | +
+ firefox
+ |
+ Windows, MacOS X | +
Lecteur de mail | +Thunderbird, simple à +utiliser. | +
+ thunderbird
+ |
+ Windows, MacOS X | +
Le Webmail, +accessible comme son nom l'indique par le +Web. | +_ | +N'importe quelle plate-forme. | +|
Lecteur de news | +Encore Thunderbird ! Tout comme Outlook +Express, il fait à la fois le mail et les news. Il peut vous servir à +lire forum. | +
+ thunderbird
+ |
+ Windows, MacOS X | +
Éditeur de texte | +Il y en a beaucoup ! Voir notre page sur les éditeurs de +texte. gedit est un bon choix pour débuter, vous +ne serez pas du tout dépaysé si vous avez l'habitude des éditeurs +Windows ou Mac. | +gedit (entre
+autres) |
+ _ | +
Retouche d'images | +The Gimp, un logiciel très complet et très +puissant. | +
+ gimp
+ |
+ Windows | +
Éditeur de pages Web | +Mieux vaut apprendre le +HTML et utiliser un édieur de texte. | +gedit
+(entre autres) |
+ - | +
Messagerie instantanée | +Empathy, un client de messagerie qui supporte AIM, +ICQ, MSN Messenger, Yahoo, IRC, Jabber, Gadu-Gadu et +Zephyr, ainsi que Bonjour pour discuter sur le réseau +local. | +
+ empathy
+ |
+ - | +
IRC | +XChat, un logiciel simple et +intuitif. Attention, à l'ENS la plupart des réseaux sont bloqués. Se reporter à notre page +IRC. | +
+ xchat
+ |
+ Windows, MacOS X | +
Les élèves n'ont pas accès à des imprimantes couleur. Il faut voir dans les +départements respectifs.
+ +Ils sont grands, ils sont beaux, ils sont forts, ils sont +Tuteurs. Mais qui sont-ils vraiment ? Les Tuteurs sont actuellement 40, +dont 3 filles et 6 littéraires (dont 2 filles littéraires ; faut-il +également rappeler que la fondatrice des tuteurs est une fille +littéraire ?).
+Seulement ? Il ne tient qu'à vous de faire changer ça : si vous vous +sentez l'étoffe d'un tuteur, écrivez-nous pour candidater ! Rendez-vous +sur notre page +recrutement pour plus de renseignements.
+Remarque : toutes les photographies de tuteurs ne figurent pas sur +cette page.
++ + | ++ + | ++ + | ++ + | +
Antoine Amarilli. Info 2009 + | +Frédéric Béal. MPI 2001 + | +Gaëtan Bisson. Info 2004 + | +Olivier Blazy. Info 2005 + | +
+ + | ++ + | ++ + | ++ + | +
Nicolas Bonnotte. Maths 2007 + | ++Frédéric Chateigner. Lettres 1999 + | +Denis Conduché. Maths 1998 + | ++Nicolas Couchoud. D/S 1996 + | +
+ + | ++ + | ++ + | ++ + | +
Mikaël De La Salle. MPI 2003 + | ++Jean-Dominique Delle Luche. Lettres 2006 + | ++Olivier Duchenne. Physique 2005 + | +Francois Garillot. Info 2004 + | +
+ + | ++ + | ++ + | ++ + | +
Nicolas George (« Cigaes »). C/S 1998 + | +Marc Glisse. MP 2000 + | +Luc Habert. C/S 2000 + | +Louis Jachiet. Info 2010 + | +
+ + | ++ + | ++ + | ++ + | +
Marc Jeanmougin. Info 2009 + | +Mathieu Le Bellac. MPI 2002 + | ++Benjamin Lerman. Maths 1998 + | +Gaëtan Leurent. Info 2003 + | +
+ + | ++ + | ++ + | ++ + | +
Francois Maillot. Maths 2005 + | +Audrey Mathys. Lettres 2004 + | +Baptiste Mélès (« Bap »). A/L 2002 + | +Marc Mezzarobba. Info 2004 + | +
+ + | ++ + | ++ + | ++ + | +
Arthur Milchior. Info 2008 + | ++Guillaume Moroz. MPI 2001 + | +Rémy Oudompheng. MPI 2004 + | ++Jerôme Plût. Maths 1999 + | +
+ + | ++ + | ++ + | ++ + | +
Florian Praden. Info 2006 + | ++Pauline Pujo. Lettres 2006 + | ++Tahina Ramananandro. Info 2004 + | +Arthur Reutenauer (« R »). MPI 2000 + | +
+ + | ++ + | ++ + | ++ + | +
Damien Robert (« Dam's »). Info 2003 + | +Guillaume Saint-Jacques. Lettres 2006 + | ++Alexis Saurin. Maths 2000 + | +Mehdi Tibouchi. MPI 2003 + | +
+ + | ++ + | ++ + | ++ + | +
Émeric Tourniaire (« Mouton »). Info 2003 + | +Guillaume Vernade. Info 2005 + | +Axelle Ziegler (« Axl »). MPI 2001 + | +Sam Zoghaib. Info 2004 + | +
+Dans l'armoire de la salle S, se trouvent un certain nombre d'ouvrages. +Pour la plupart, ces ouvrages ont été gracieusement offerts à la +consultation par des élèves aux utilisateurs de la salle S. +
++Pour éviter les vols, cette armoire est fermée à clef. Pour consulter un +ouvrage, vous pouvez demander à un porteur de clef de l'armoire de vous +l'ouvrir. Notez cependant qu'il est rigoureusement +interdit de faire sortir un de ces livres de la salle +S : ces livres sont faits pour être consultés sur place. +
++Pour avoir la liste des porteurs de clefs de la salle S (qui est un +ensemble distinct mais pas disjoint de l'ensemble des tuteurs), +faites :
+bireme ~ $ finger armoire@quatramaran.salle-s.org
+
+ La liste des livres présents dans l'armoire se trouve sur sa page personnelle.
+ ++Vous trouverez ici des informations sur les ressources informatiques de +l'ENS, et en particulier sur la machine Phare. +
+ + Il s'agit d'un ordinateur (un serveur) situé à l'École normale
+supérieure de Paris sur lequel les anciens élèves de cette école ainsi que
+les anciens magistériens et pensionnaires étrangers peuvent avoir un compte
+informatique.
+Toute personne ayant eu un compte sur clipper a le droit d'avoir un compte
+sur phare.
+
+Des pages sur www.normalesup.org/phare/
+décrivent précisément les services offerts par phare, comment obtenir un
+compte, etc. Voir aussi
+la page du SPI sur la fermeture des comptes.
+Connectez-vous sur clipper en utilisant
+ssh (Linux et MacOS X)
+ou Putty
+(Windows). Sous MacOS, il faut aller dans Finder > Applications >
+Utilitaires > Terminal) pour ouvrir le terminal où taper la commande.
+Commencez par rediriger votre
+courrier entrant vers phare. On rappelle que la commande que vous
+devez taper, c'est ce qui suit le $
.
+Si la boîte aux lettres de votre compte est présente dans
+/var/mail
, sauvegardez votre boîte de réception sur votre compte en
+remplaçant dans ce qui suit login
par votre login (clipper) :
sas ~ $ rsync -av /var/mail/login Mail/boite_clipper
+
+ Si le fichier /var/mail/login
n'existe pas, faites :
sas ~ $ rsync -av /d/login Mail/boite_clipper
+
+ Vérifiez la taille totale de vos messages, et en particulier que vous + ne dépassez pas votre quota sur phare: +
+sas ~ $ du -sh Mail
+187M Mail
+
+ Vous pouvez maintenant transférer vos mails: +
+sas ~ $ rsync -vaczP Mail login_phare@phare.normalesup.org:
+
+ Vous pouvez, en quelque minutes, transférer tous vos fichiers qui +s'accumulent depuis de longues années sur clipper, vers phare. Y compris votre page web.
+Avant tout transfert, songez à faire le ménage. Le plus important, c'est +de supprimer les fichiers inutiles et encombrants.
+ La méthode que nous vous conseillons consiste à placer d'abord les
+ fichiers que vous voulez transférer dans un répertoire
+ « vers_phare
». Cette méthode a plusieurs avantages,
+ notamment de vous permettre de vérifier que les fichiers que vous voulez
+ déplacer n'excède pas votre quota, et de ne pas transférer vos fichiers de
+ configuration, qui sont spécifiques à sas.eleves.
+
Connectez-vous sur sas.eleves comme pour transférer vos mails (cf
+ ci-dessus). Créez le répertoire « vers_phare
»:
sas ~ $ mkdir vers_phare
+
+ Utilisez les commandes mv
et rm
pour déplacer
+ et effacer des fichiers ainsi que les commandes ls
+ et du
pour obtenir des informations.
+
Déplacer des fichiers et des répertoires avec mv
:
sas ~ $ mv maitrise vers_phare/ +sas ~ $ mv cubiques2.pdf vers_phare/ ++
Vérifier que vous ne dépassez pas votre quota sur phare. Attention, il + faut retirer l'espace occupé par les messages que vous avez transférés + lors de l'étape précédente à votre quota.
+sas ~ $ du -sh vers_phare
+407M vers_phare
+
+ Transférer votre répertoire vers_phare
:
+
sas ~ $ rsync -vaczP vers_phare/ login_phare@phare.normalesup.org:depuis_sas
+
+ Vous pouvez utiliser WinSCP ou scp pour transférer vos fichiers sur + votre machine personnelle. C'est pratique pour pouvoir ouvrir rapidement + un fichier afin de décider de son sort. WinSCP a aussi l'avantage de vous + permettre de déplacer ou effacer des fichiers en mode graphique.
+ Lancez WinSCP (cf. la documentation sur
+WinSCP) sur votre machine personnelle, et cliquez sur l'onglet « Size ». Il faut en priorité effacer (touche
+F8
) les fichiers les plus gros, et ce dans tous les
+sous-répertoires. Attention, le dossier /Mail contient vos archives de
+courrier électronique ! La touche F9
permet de savoir, entre
+autre, la taille totale d'un dossier.
Dans un deuxième temps, déplacez tous les fichiers que vous voulez
+transférer vers un répertoire « vers_phare
».
Avant de transférer vos fichier vers phare, il faut contrôler que le
+répertoire vers_phare
ne dépasse pas votre quota.
+En utilisant du -ak
et le en combinant avec d'autres commandes, vous pouvez savoir précisément quels sont les fichiers
+et les répertoires qui prennent le plus de place sur votre compte. Le résultat sera donné en ordre décroissant, et la
+taille en kilo-octets. Ce paragraphe est un bref résumé, il existe une page avec
+plus de détails sur la commande du
.
sas ~ $ du -ak | sort -nr | head -10
+98280 .
+22007 ./www
+1658 ./Mail
+9637 ./www/hist
+5005 ./www/hist/maitrise
+
+ ls
+ qui liste les fichiers du répertoire courant. L'option
+-lh
(long, human readable)
+permet d'avoir la taille des fichiers, et la date de modification. Cette liste peut-être triée selon divers
+critères.
+
+ls -lhS
pour trier par taille. Commencez par trier le haut de la liste,
+les fichiers les plus encombrants.
+sas ~ $ ls -lhS |head -30
+total 56M
+-rw-r--r-- 1 conduche math98 7.0M Sep 21 2005 0508_grand.zip
+-rw-r--r-- 1 conduche math98 2.8M Feb 25 2003 chat.png
+-rw-r--r-- 1 conduche math98 2.5M Jul 14 2006 cours.pdf
+-rw-r--r-- 1 conduche math98 2.1M Feb 12 17:31 algebre.pdf
+(...)
+
+
+ls -lht
pour trier par date: est-ce que vos fichiers datant d'il y a 4
+ans sont toujours utile ?
+sas ~ $ ls -lht +(...) +-rw-r--r-- 1 conduche math98 868 Nov 26 2002 linux-install.dvi +-rw-r--r-- 1 conduche math98 1.1K Nov 26 2002 linux-install.tex +-rw-r--r-- 1 conduche math98 24K Oct 25 2002 555239470.pdf +sas ~ $ ++Les fichiers les plus anciens sont en bas de la liste. + +Ce paragraphe était un bref résumé, il existe une page avec +plus de détails sur la commande
ls
.
+rm
.
+sas ~ $ rm 0508_* +rm: remove regular file `0508.zip'? y +rm: remove regular file `0508_grand.zip'? y +sas ~ $ ++Le caractère
*
sert de caractère générique.
+Il est fortement déconseillé de transférer vos fichiers de configuration +(fichiers de la forme .*). Si vous voulez quand même faire quelques +transferts — par exemple votre carnet d'adresse, ou la liste des +messages lus dans forum — consultez +la page +tuteurs sur le sujet.
+ +sas
vers Phare
.pinerc
+
+ .zshrc
+
+ .procmailrc
+
+ Pour transférer vos fichiers de configuration (fichiers ou répertoires du type .blablarc
ou simplement .blabla
), il est
+conseillé de procéder au cas par cas, les logiciels sur phare.normalesup.org
n'étant pas forcément totalement compatibles avec ceux de
+sas
.
Pour que sas
ne vous redemande pas votre mot de passe à chaque transfert, il est vivement conseillé de
+configurer sa connexion ssh et d'installer des
+clefs. Dans notre cas, la machine locale est phare
, et la machine distante sas.eleves
.
Certains fichiers contiennent simplement des données personnelles, comme la liste d'adresse de votre carnet d'adresse, la liste des messages lus dans forum, etc... +Il peut être utile de récupérer ces fichiers, plutôt que d'avoir à reconstituer les fichiers à la main.
+pine
Les fichiers .addressbook
et .addressbook.lu
+contiennent la liste de vos contacts, et le fichier .signature
+votre signature automatique. Pour les récupérer, tapez les commandes suivantes
+
phare ~ $ rsync -vaczP sas.eleves:.addressbook\* . +receiving file list ... +2 files to consider +.addressbook + 2019 100% 246.46kB/s 0:00:00 (xfer#1, to-check=1/2) +.addressbook.lu + 4166 100% 508.54kB/s 0:00:00 (xfer#2, to-check=0/2) + +sent 56 bytes received 1929 bytes 3970.00 bytes/sec +total size is 6185 speedup is 3.12 +phare ~ $ rsync -vaczP sas.eleves:.signature\* . +receiving file list ... +1 file to consider + +sent 16 bytes received 106 bytes 244.00 bytes/sec +total size is 60 speedup is 0.49 +phare ~ $ ++
Les autres réglages de pine sont dans le fichier .pinerc
qu'il est déconseillé de récupérer. Les modifications doivent être faites à la main. Si vous voulez quand même le récupérer, à vos risques et périls, regardez la section suivante.
mutt
Le fichier .muttalias
+contient la liste de vos contacts, et le fichier .signature
+votre signature automatique. Pour les récupérer, tapez les commandes suivantes
+
phare ~ $ rsync -vaczP sas.eleves:.muttalias . +receiving file list ... +1 file to consider +.muttalias + 465 100% 454.10kB/s 0:00:00 (xfer#1, to-check=0/1) + +sent 36 bytes received 179 bytes 430.00 bytes/sec +total size is 465 speedup is 2.16 +phare ~ $ rsync -vaczP sas.eleves:.signature\* . +receiving file list ... +1 file to consider + +sent 16 bytes received 106 bytes 244.00 bytes/sec +total size is 60 speedup is 0.49 +phare ~ $ ++
Les autres réglages de mutt sont dans le fichier .muttrc
qu'il
+est déconseillé de récupérer. Les modifications doivent être faites à la main.
+Si vous voulez quand même le récupérer, à vos risques et périls, regardez la section suivante.
Lorsque vous lisez des groupes de discussion avec flrn (ce qui est la situation par défaut), celui-ci stocke différentes informations (groupes auxquels vous êtes abonnés, messages lus) dans des fichiers de configuration. On peut avoir envie de les récupérer. Sur phare
, tous les fichiers de configuration de flrn sont rangés dans le répertoire $HOME/.flrn/
. Sur votre compte sas
, si vous n'avez pas de répertoire .flrn
, les fichiers sont dans votre répertoire $HOME
.
Les commandes suivantes récupèrent la liste des messages lu dans tous les newsgroups lu avec flrn. Si vous lisez aussi les dépêches AFP ou usenet avec flrn, ces listes là seront aussi récupérées.
+phare ~/.flrn/ $ rsync -vaczP sas.eleves:.flnewsrc\* . +receiving file list ... +2 files to consider + +sent 32 bytes received 155 bytes 41.56 bytes/sec +total size is 7094 speedup is 37.94 +phare ~/.flrn $ ++
Il faut transférer le fichier où ce logiciel stocke les listes de messages lus et les groupes auxquels vous êtes abonnés. Vous pouvez chercher ce fichier avec ls -a
ou son nom sur le web.
Si vous avez modifié votre fichier .zshrc
sur sas
pour rajouter des raccourcis — appelés « alias » —, il faut que vous alliez les récupérer manuellement, par copier/coller. Ils sont à recopier dans votre nouveau .zshrc
, sur phare
. Il faut bien entendu vérifier que les logiciels appelés existent toujours, et ne pas mettre de chemins absolus.
Le fichier .zshenv
sur phare
définit plusieurs
+variable $EDITOR
. Celle qui peut avoir été modifiée est la variable $EDITOR
qui règle votre éditeur de texte par défaut (dans forum, ou mutt). Pour vérifier, on utilise la commande echo
.
sas ~ $ echo $EDITOR
+/usr/local/util/bin/emacs -nw
+
+ phare ~ $ echo $EDITOR
+nano-tool
+
+
+Dans ce cas, vous éditez le fichier .zshenv
sur phare
pour mettre votre éditeur préféré.
Vous pouvez récupérer sans aucun problèmes les fichiers
+.quialias
,
+.plan
,
+.project
.
+
Les conseils de cette rubrique s'adressent à des utilisateurs « avancés ». Rapatriez ces fichiers uniquement si vous savez ce que vous faites.
+Phare
n'est pas organisé de la même façon que sas
. En
+particulier, certaines commandes ne sont pas « rangées » au même endroit de
+l'arborescence des fichiers. Si vous avez parmis vos fichiers personnels
+des scripts faisant appel à des commandes par leur chemin, il faudra
+éventuellement corriger ce chemin pour le mettre en conformité avec le
+nouveau système.
Si vous voulez récupérer toute votre configuration de flrn, peaufinée au fil des années, il faut d'abord supprimer la configuration par défaut sur phare
:
phare ~ $ rm -rf .flrn
+
+ Puis, s'il y a un répertoire $HOME/.flrn/
sur sas
, vous transférez celui-ci sur phare
. Sinon
+vous transférez tous les fichiers .flnews*
et .flrn*
présents sur sas
.
Il y a quelques modification à faire dans le .flrnrc
:
set default_domain normalesup.org
pour que le sender soit bien phare.normalesup.org
, et que vous puissiez donc supprimer vos messages.set alternate "[prénom nom]"
pour que flrn reconnaisse vos anciens message comme étant de vous/usr/local/util/packages/flrn/lib/flrn/slang_yaf.sl
par
+/opt/flrn-20030409/share/flrn/slang_yaf.sl
.
+.pinerc
+
+ Ce fichier contient les réglages de pine.
+phare ~ $ rsync -vaczP sas.eleves:.pinerc . +receiving file list ... +1 file to consider +.pinerc + 19790 100% 18.87MB/s 0:00:00 (xfer#1, to-check=0/1) + +sent 36 bytes received 6582 bytes 1890.86 bytes/sec +total size is 19790 speedup is 2.99 +phare ~ $ ++
Exemple:
+J'utilisais fetchmail sur sas
pour rapatrier mon mail d'un serveur
+extérieur à l'ENS, et ceci avec un fichier de configuration .fetchmailrc
+dans lequel une ligne faisait appel à le commande /bin/procmail
.
+Or sur phare
, l'appel fetchmail -f .fetchmailrc
me renvoie un
+message d'erreur: /bin/procmail: No such file or directory
Il faut donc que je trouve où se trouve où se trouve procmail sur phare
.
+Pour ce faire, j'utilise la commande which
:
phare ~ $ which procmail +/usr/bin/procmail +phare ~ $ ++
Il faut donc que je rajoute /usr
au chemin
+vers la commande procmail dans mon fichier .fetchmailrc
.
.zshrc
+
+ Le .zshrc
par défaut est fait pour donner un environnement le plus semblable possible à celui de sas
. Mais comme phare
n'est pas organisé comme sas
, ce fichier est — d'un point de vue technique — assez différent de celui présent sur sas
. Il est donc déconseillé de le rapatrier. Mieux vaut reprendre vos modifications personnelles et adapter au nouveau fichier.
.procmailrc
+
+ Ce fichier gère le tri de votre courrier électronique. La moindre fausse manoeuvre peut être lourde de conséquence. C'est généralement un fichier assez court: il est conseillé d'en recréer un sur phare
.
Les fichiers de configuration par défaut sont dans /etc/skel/
. Pour récupérer — par exemple — votre fichier .zshrc
il suffit donc de taper
phare ~ $ cp /etc/skel/.zshrc . +cp: overwrite `./.zshrc'? y +phare ~ $ ++ +
+Dans cette page, nous allons voir quels problèmes se posent quand on veut +taper différentes langues avec un ordinateur, et comment on s'y prend pour +les résoudre de manière plus ou moins propre. +
++Un texte dans une langue quelconque peut se décomposer en une suite de +caractères. La notion n'est pas parfaitement définie, mais peu +importe en fait, en général il n'y a pas de problème. En français, les +caractères sont les lettres, les chiffres, la ponctuation, les espaces. Le +O-E-dans-l'O est un caractère à part entière, parce qu'il a une existence +propre dans l'orthographe de la langue. De même, les majuscules et le +minuscules sont des caractères distincts. En revanche, le gras et l'italique +ne constituent pas une distinction sur les caractères. +
++Lorsqu'on s'adresse à un ordinateur pour taper du texte, ce sont +essentiellement des caractères qu'on lui communique. Selon le logiciel +employé, il pourra se glisser ou pas dans cette suite de caractères des +informations de mise en page. Dans le cas le plus simple, la seule mise en +forme qui intervient est le retour à la ligne. Dans ce cas particulier, il y +a un « caractère » spécial retour à la ligne. Ce caractère existe parce +qu'il est très utile pour les fichiers qui ne peuvent contenir que des +caractères, et aucune autre mise en forme. Il n'existe en général pas de +caractère dédié à d'autres mises en forme, comme le gras et l'italique, tout +dépend du logiciel utilisé. +
++En bref, un texte est une suite de caractères. +
++Depuis le temps, vous savez probablement déjà qu'un fichier sur un +ordinateur n'est ni plus ni moins qu'une suite d'octets, c'est à +dire en quelque sorte des nombres entre 0 et 255. À vrai dire, on pourrait +aussi bien les penser comme 256 parfums possibles pour des glaces, ou 256 +couleurs possibles : il y a 256 valeurs possibles, on peut les voir comme +des nombres si on veut (et dans ce cas il y a une manière naturelle de le +faire), ou comme autre chose si on préfère. +
++Toute la difficulté réside dans le fait de représenter une suite de +caractères par une suite d'octets. Nous allons voir que ce n'est pas si +simple. +
++Une des occupations favorites des informaticiens, c'est de mettre dans leurs +programmes des limites arbitraires qui vont plus tard poser des problèmes +sans fin. Une telle imprévoyance a défrayé la chronique il y a peu : le +fameux bug de l'an 2000 (sauf que ça a fait un flop monumental, les +journalistes n'ayant pas compris que 2000 n'est pas du tout un nombre rond +pour un ordinateur). Le problème de la représentation de textes est +probablement le domaine où elle se fait le plus cruellement sentir, et le +problème n'est pas encore près d'être complètement résolu. +
++Tout commence par une constatation très simple : les premiers +informaticiens parlaient anglais. Et l'anglais s'écrit avec pas grand +chose : deux fois 26 lettres, 10 chiffres, une trentaine de signes de +ponctuation, de signes mathématiques, sans oublier le symbole dollar : avec +95 caractères au total on peut se débrouiller. +
++À l'époque dont je parle, on ne pouvait utiliser que la moitié des octets, +soit 128 valeurs. On en a pris 33 comme caractères de « contrôle » (dont +le retour à la ligne, plus des trucs plus exotiques, comme faire sonner la +machine, ou des codes bizarres pour déplacer le curseur), plus les 95 dont +on avait besoin pour écrire l'anglais. On a numéroté tout ça, ça a donné le +code ASCII : +une correspondance entre les octets de 0 à 127 avec des codes de contrôle et +les 95 caractères utiles pour taper de l'anglais. +
++La solution était donc toute simple : un octet par caractère, un caractère +par octet, pourquoi se fatiguer ? +
++Bien sûr, au bout d'un moment, il y a des gens qui ont eu envie de pouvoir +taper du français ou de l'allemand sur leur ordinateur. Heureusement, entre +temps, il était devenu possible d'utiliser les valeurs laissées de côté par +l'ASCII. Dans cette place, il a été possible de caser les caractères +accentués et divers autres symboles utilisés par les langues d'europe de +l'ouest. +
++Dans le même temps, les informaticiens russes ont profité de ces 128 +valeurs pour y caser l'alphabet cyrillique. Les Grecs y ont aussi mis leur +propre alphabet. +
++Dans ces 128 valeurs, il n'y a hélas pas la place de caser les caractères +pour les langues occidentales et l'alphabet cyrillique et +l'alphabet grec et l'alphabet hébreu. Mais ce n'est pas grave. En +France, on tape du français, pas du grec ; en Grèce on tape du grec, pas du +Cyrillique ; en Russie on tape du cyrillique, pas du français. Les +ordinateurs étaient configurés pour que le clavier envoie certains codes, +que l'écran affiche certains caractères, et que tout marche bien comme ça. +Bien sûr ça ne marche plus du tout si on franchit la frontière, ou si on va +chez le voisin qui a un ordinateur d'une marque différente, mais ce n'est +pas grave. +
++Non, bien sûr, tout ceci ne pouvait pas durer. Pour le problème de pouvoir +taper plusieurs langues sur un même ordinateur, la solution est simple : il +suffit d'étiqueter chaque fichier, celui-ci est en français, celui-ci en +grec. +
++Mais il fallait aussi que les ordinateurs puissent communiquer entre eux +même en étant de marques différentes. Donc au lieu que chaque fabricant +invente sa propre correspondance entre octets et caractères, des organismes +de standardisation s'y sont mis. Ça a donné des tables de correspondance, +comme l'ISO-8859-1, qui propose un jeu de caractères pour les langues +occidentales, l'ISO-8859-5 qui offre du cyrillique, l'ISO-8859-7, qui +propose du grec, etc. +
++Tous les problèmes n'étaient pas résolus, mais au moins il suffit d'indiquer +au début d'un texte le nom de l'encodage qu'il utilise, et pour peu qu'on +ait les bonnes polices de caractères, on peut le lire sans problème. +
++Bon, tout ça c'est très bien, mais même en tassant très fort, on n'arrivera +pas à faire rentrer les 1945 idéogrammes du japonais officiel dans un octet +(sans compter ceux qui servent pour les noms propres, ni l'alphabet +syllabique). Ni les 11 172 syllables coréennes, ni les dizaines de +milliers d'idéogrammes chinois qu'on arrive à recenser. +
++Les informaticiens orientaux ont donc dû inventer leurs propres méthodes, +des codages qui abandonnaient la correspondance un octet = un caractère. +Bien sûr, si vous croyez que les informaticiens japonais ont fait un code +qui permet de faire aussi du chinois, ou le contraire, vous êtes un +indécrotable idéaliste qui n'a rien compris à l'informatique. +
++Tout ceci nous amène à un état assez désolant de l'informatique : +
++Ce qui manque à tout ça, c'est la possibilité qu'un même texte (et dans +certains cas un même logiciel) contienne simultanément plusieurs langues +couvertes par des encodages différents. Militons pour le droit des +universitaires russes de faire des thèses sur les traductions de la Bible de +l'hébreu au grec ! +
++Pour résoudre durablement tous ces problèmes de langues, il s'est +formé un consortium, qui regroupe de grands noms de l'informatique et de la +linguistique : le consortium Unicode. +Sa tâche : recenser et numéroter +tous les caractères existant dans toutes les langues du monde. Au moment où +j'écris ces lignes, le standard publié comporte plus de 110 000 +caractères. +
++Avec Unicode, un texte dans n'importe quelle langue, ou n'importe +quelles langues peut se représenter comme une suite de +nombres. Quelle simplification ! +
++Il est possible d'utiliser directement Unicode pour stocker les textes +informatiques, en utilisant plusieurs octets pour codes les caractères : on +appelle ce code UCS-4 parce qu'il utilise 4 octets par caractères, le +consortium Unicode ayant prévu que deux milliards de caractères ne seraient +pas atteints dans l'immédiat. +
++Il existe cependant un autre code largement utilisé avec Unicode. Il +s'appelle UTF-8. Il est un peu plus complexe, il utilise un nombre variable +d'octets par caractères, mais présente certains avantages : il est +compatible avec l'ASCII, de sorte que les parties écrites avec l'alphabet +latin de base d'un texte codé en UTF-8 seront à peu près lisibles même avec +un logiciel qui ne comprend pas ce codage. +
++Un bon logiciel est maintenant un logiciel qui permet de travailler avec +Unicode. Enfin, là, je parle des logiciels qui ont à gérer du texte, hein, +un Démineur peut très bien continuer à déminer sans se soucier d'Unicode. +Un bon logiciel, disais-je, va travailler autant que possible en Unicode. En +interne, ses données seront probablement codées uniquement en UCS-4 ou UTF-8 +selon ce qu'il en fait, mais ça n'a pas besoin d'être visible. L'important +est qu'il saura jongler entre les différents encodages pour communiquer avec +d'autres composants. +
++Prenons l'exemple d'un logiciel de courrier électronique. Les courrier reçus +comportent une indication de leur codage : hop, le logiciel se débrouille +pour en faire de l'Unicode. Il les affiche en convertissant dans le bon +codage pour le système graphique ou le terminal dans lequel il tourne. Quand +on veut répondre, il prépare la citation dans le bon encodage pour +l'éditeur, puis récupère le texte ainsi édité et le reconvertit. À l'envoi, +il va choisir le meilleur encodage, en tenant compte des nécessités (les +caractères utilisés dans le courrier), et du fait que le destinataire n'a +pas forcément un logiciel qui comprend unicode (et donc il vaut mieux +utiliser un encodage plus ancien et simple si possible). +
++Tout ceci est un peu compliqué, parce que le logiciel est à l'interface +entre le réseau, l'utilisateur et l'éditeur de texte, qui peuvent chacun +utiliser un encodage différent. À terme, ce sera probablement de l'UTF-8 de +tous les côtés, et ce sera plus simple. +
++Un fichier informatique est une suite de nombres compris entre 0 et +255 (chacun de ces nombres est ce qu'on appelle un octet). Suivant le type +d'information que l'on veut stocker dans un fichier (texte brut, texte +formatté, image, son, programmes, ...), les logiciels organisent les +données de manière spécifique pour en faire des suites d'octets. La +manière d'organiser un type de donnée pour en faire un fichier s'appelle +un format. +
++Cette page a pour but d'expliquer ce qu'est un format de fichier (sans +entrer dans les détails techniques rébarbatifs). Pour savoir plus +concrètement comment ouvrir tel ou tel fichier, ou comment convertir mon +fichier dans un autre format, allez voir le +mémo sur les formats. +
+Les deux sous-sections qui suivent décrivent les deux grandes familles +de formats informatiques.
++Quand vous prenez un stylo et un papier et que vous écrivez des +lettres, des chiffres, des symboles de ponctuation, par exemple pour +noter un numéro de téléphone, un cours, une dissertation, ou une lettre, +n'importe quel autre être humain sachant lire pourra comprendre les +informations que vous aurez écrit, au moins en supposant +qu'il parle la même langue que vous, cf. notre page +sur les encodages et les langues. +
++Des suites de caractères (plus ou moins nombreux) griffonnés sur un +papier ont donc ceci de commun qu'il s'agit de texte brut. Le +format informatique (générique) le plus simple est ainsi constitué de +suites de caractères, et de retours à la ligne. À chaque caractère +correspond un ou plusieurs octets, c'est-à-dire des nombres compris entre +0 et 255, selon une règle définie par un encodage particulier (par +exemple, dans l'encodage Latin-1 (le plus courant dans les pays +occidentaux), un « A » est codé par le nombre 65 et à chaque caractère +correspond un seul octet). +
++Lorsque vous avez un fichier sous un format « texte brut », vous +pouvez le modifier avec n'importe quel éditeur de texte, de +même que pour écrire sur un bout de papier, vous pouvez utiliser +n'importe quel stylo. +
+On a vu que l'on pouvait noter tout et n'importe quoi dans un fichier +texte, mais pour certains usages, on demande néanmoins à des fichiers au +format texte de respecter certaines règles, une certaine syntaxe. Voici +quelques exemples de tâches spécifiques qui utilisent des fichiers au +format texte brut : +
++La page Web que vous lisez est au format HTML (plus précisément, +il s'agit d'XHTML 1.0 Strict). En plus de contenir du texte en +français « brut », certaines balises permettent de signifier à +votre navigateur Web comment il doit afficher la page : une barre de +navigation à gauche, nos choix de couleurs, etc... En voici un extrait : +
++<p> +Quand vous prenez un stylo et un papier et que vous écrivez des +lettres, des chiffres, des symboles de ponctuation, par exemple pour +noter un numéro de téléphone, un cours, une dissertation, une lettre, +n'importe quel autre être humain sachant lire (au moins en supposant +qu'il parle la même langue que vous, cf. notre <a href="encodages.html">page +sur les encodages et les langues</a>) pourra comprendre les informations +que vous écrivez. +</p> ++
Ainsi par exemple, ce qui se trouve entre <p> et +</p> est un paraphaphe, ou encore un lien hypertexte est dans +une balise <a>.
++Quand vous envoyez un courrier électronique avec votre logiciel préféré, +celui-ci va envoyer votre message dans un format particulier : les +premières lignes constituent ce qu'on appelle l'en-tete du message, +vient ensuite une ligne vide, et tout ce qui vient ensuite constitue le +corps du message. L'en-tete du message sert à donner des informations sur +l'expéditeur du message, la date, le sujet, l'encodage utilisé, etc... +ainsi que quelques informations techniques. Voici un exemple : +
++Return-Path: <schtroumpfette@greement.non-existent.invalid> +Delivered-To: scoubidou@greement.non-existent.invalid +Received: (qmail 23265 invoked by uid 1033); 17 Sep 2003 15:55:14 -0000 +From: schtroumpfette@greement.non-existent.invalid +Date: Wed, 17 Sep 2003 17:55:14 +0200 +To: Scoubidou <scoubidou@greement.non-existent.invalid> +Subject: Bonjour +Message-ID: <20030917155514.GA23246@greement.non-existent.invalid> +Mime-Version: 1.0 +Content-Type: text/plain; charset=us-ascii +Content-Disposition: inline +User-Agent: Mutt/1.5.4i + +Bonjour, + + J'aimerais discuter avec vous. + +-- +La schtroumpfette ++
+Les programmes que vous utilisez ont été développés dans différents +langages : C, C++, Perl, Shell, etc... +Les codes sources de ces programmes sont dans un format texte, ce qui ne +les empêche pas de respecter une syntaxe précise. Voici à quoi cela +peut ressembler : +
++/* bonjour.c : comment dire « Bonjour. » en C */ +#include <stdio.h> + +int main (int argc, char **argv) { + printf("Bonjour.\n"); + return(0); +} ++
+#!/bin/sh +# Comment dire « Bonjour. » en Shell +exec echo Bonjour. ++
Suivant que le langage est interprêté ou compilé, il sera ou non +nécessaire de convertir votre code source dans un format exécutable en +utilisant un compilateur. +
+À l'opposé des formats textes, se trouvent les formats binaires. +L'information que l'on stocke dans de tels fichiers ne se résume pas à +des suites de caractères.
++Avant de continuer, précisons que les noms de fichiers comportent souvent +une extension, par exemple dans Le_coucou_au_fond_des_bois.ogg, +l'extension est ogg. L'extension permet souvent de savoir +rapidement à quel format on a à faire. Attention cependant au fait que +parfois derrière un fichier d'une certaine extension peut se cacher sous +un autre (cf. le programme +file) ! +
+Voici brièvement quelques exemples : +
+Une image peut-être stockée comme une grille de petits
+points (pixels), chaque pixel ayant une certaine « couleur ». Une fois que
+l'on a associé certains octets aux différentes couleurs
+(par exemple 3 octets, un pour la composante rouge, un autre pour la
+composante bleue, et un dernier pour la composante verte), on peut mettre
+au début du fichier la largeur et la hauteur de l'image, et ensuite
+parcourir l'image ligne par ligne, et écrire la séquence d'octets
+qui correspond à chaque pixel de l'image. Le type de format que je viens
+de décrire est extrêmement rudimentaire (dans cette famille de format, on
+trouve le format bmp par exemple) ; des fichiers dans un tel
+format occuperont beaucoup de place sur les disques durs, c'est pourquoi
+il existe des formats qui contiennent des optimisations pour réduire
+sensiblement la taille des fichiers d'images (exemples : les formats PNG, JFIF, JPEG), identifiés par les types MIME
+image/png
et image/jpeg
respectivement, et
+qui reçoivent le plus souvent les extensions png
et
+jpg
).
+
C'est comme pour les images : on découpe le son +en intervalles de temps très brefs (il y a +le plus souvent autour de quarante +mille intervalles par seconde) et on note la valeur du signal +électrique correspondant, ce qui donne un nombre entier (avec signe) +que l'on peut stocker. Pour un enregistrement en stereo, on note +parallèlement les valeurs gauche et droite. Comme formats de ce type, on +trouve les formats wav, au +De même que pour les images, il existe des techniques de compression qui +permettent de réduire considérablement la taille qu'occupent les fichiers +sonores. On dispose ainsi des formats ogg et mp3. +
+Il existe d'autres manières de stocker de la « musique », les +fichiers midi, où ne sont enregistrées que des suites +d'indications sur les notes que les musiciens jouent sur leurs +instruments (d'une certaine manière, ces fichiers contiennent +l'information contenue sur une « partition »). Quand vous lisez ces +fichiers avec un programme convenable, un synthétiseur (logiciel ou +matériel) va convertir ces données en un véritable son. +
++Évidemment, la qualité musicale qui sort des hauts-parleurs quand vous +jouez des fichiers midi est très loin d'être à la hauteur de ce qui +parvient à vos oreilles quand vous écoutez un orchestre composé de +musiciens talentueux ! +
+Suivant la famille du système +d'exploitation que vous utilisez (Unix, Windows, Mac), et même à +l'intérieur d'une famille suivant la variante du système ou le type de +processeur, les programmes sont stockés dans un format différent. La +partie la plus imporante d'un fichier exécutable est la zone contenant le +« langage machine » qui grosso modo contient la liste des instructions +qui seront exécutées par le processeur. On ne modifie pas +directement un fichier exécutable. +
++Certains logiciels de traitement de texte utilisent un format binaire +pour stocker le texte avec son formatage (taille des fontes, caractères +gras, italiques, etc...), plus précisément, ils utilisent +plusieurs formats : d'une version à l'autre, le logiciel +Microsoft Word utilise un format plus ou moins différent de la version +précédente, ce qui pose beaucoup de problèmes, surtout si vous n'avez pas +la version « dernier cri » du logiciel en question. +
+
+À l'opposé, certains traitements de textes utilisent un format texte,
+de façon similaire au format HTML
utilisé sur le Web. C'est
+par exemple le cas du programme
+LaTeX. Toutes les informations
+vous mettez dans un fichier LaTeX (extension tex
) sont
+lisibles et modifiables dans votre éditeur de texte préféré, et au moins
+vous être sûr que le format ne vas pas changer significativement d'une
+version à l'autre. En voici un échantillon :
+
+\documentclass{article} +\usepackage[francais]{babel} +\usepackage[T1]{fontenc} +\usepackage[latin1]{inputenc} + +\begin{document} +Ceci est un fichier \TeX. +\end{document} ++
+Vous devez utiliser le programme latex
pour mettre en page
+votre fichier tex
. Il va ainsi écrire un fichier binaire
+dans un format particulier dvi
qui contient essentiellement
+beaucoup d'informations qui ressemblent à
+« À tel endroit de la page numéro 42, afficher MU dans une fonte qui
+fait 5.08 cm de hauteur. »
+
Ce sont des fichiers « prêts à être imprimés », ces fichiers +contiennent toutes les instructions que l'on a pratiquement plus qu'à +envoyer à l'imprimante (ce qui nécessite parfois une conversion).
+pdf
)+Mais, encore une fois, il existe plusieurs formats de ce type. Nous avons +déjà évoqué ci-desus le format dvi utilisé par LaTeX. On +dispose aussi du format pdf (Portable Document Format) développé +par Adobe, vous avez très certainement déjà rencontré de tels fichiers en +naviguant sur le Web. Les fichiers dvi et pdf sont au +format binaire. +
+ps
)+Un autre format important dans ce contexte est le format +PostScript (lui aussi développé par Adobe). Il est depuis +quelques années utilisé par la plupart des imprimates. Son grand +avantage est qu'il est en mode texte et qu'il ne fait pas d'hypothèse sur +la résolution de l'imprimante par exemple, contrairement aux +formats utilisés auparavant pour envoyer des instructions aux +imprimantes ! Le format PostScript est un véritable langage de +programmation (si on veut dessiner 100 fois la même chose, on a pas +besoin de réécrire 100 fois les mêmes instructions par exemple). +
+
+Dans certaines situations, il peut être commode de mettre plusieurs
+fichiers dans un seul, on appelle cela une archive. En général,
+au début d'un tel fichier se trouve les noms des fichiers contenus à
+l'intérieur avec leur taille (ainsi que d'autres informations
+techniques), puis viennent ensuite chacun des fichiers les uns à la suite
+des autres. Le format le plus courant pour les fichiers archives sous
+Unix est le format tar
. Dans le monde Windows, il est plus
+souvent question de fichiers zip
.
+
+Plus généralement, on a la notion de système de fichiers : il s'agit de
+déterminer comment organiser les fichiers sur un disque dur et d'inscrire
+les méta-informations, à savoir d'écrire quelque part la liste des
+fichiers présents sur le disque ainsi que la position sur le disque où
+ils sont écrits. Là, encore, de nombreuses possibilités existent : sous
+Linux, on utilise en général ext2
, ext3
ou
+ReiserFS
, sous Windows, il y a des systèmes de fichiers
+fat
, NTFS
, etc...
+
+Quand on a un fichier un peu long que l'on ne consulte pas +régulièrement, on peut décider de le comprimer pour qu'il prenne moins de +place sur le disque dur. Des outils sont faits pour cela. L'exemple +typique de format compressé est donné par les fichiers « gzippés » +(extension gz). Ainsi par exemple, un fichier PostScript +dea.ps, une fois comprimé s'appelle dea.ps.gz. +
+
+Le clou du spectacle s'obtient en combinant les deux méta-formats évoqués
+ci-dessus : comprimer un fichier d'archive comprenant plusieurs
+fichiers. On obtient alors un fichier .tar.gz
(que certains
+abrègent en .tgz
) ; c'est un général sous cette forme que
+l'on peut télécharger le code source de la plupart des logiciels libres.
+
+Cette section regroupe des explications théoriques, sans application directe +à une tâche bien précise. Bien comprendre ce qui se passe quand on utilise +certains logiciels est souvent un avantage pour arriver à ce qu'on veut, et +surtout bien se rappeler la marche à suivre. +
+Qu'est-ce qu'un réseau ?, ou comment les +ordinateurs communiquent entre eux, et ce qu'est Internet. +
+L'enfer des langues, ou comment un ordinateur +peut représenter dans ses fichiers des textes dans les différentes langues +du monde. +
+Les formats de fichiers, ou comment les +logiciels représentent divers types d'informations dans les fichiers et +comment s'y retrouver. +
+
+Une documentation (.ps.gz
)
+sur le traitement d'images (écrite par David Monniaux).
+
+Un câble, d'un côté quelqu'un qui envoit du courant par intermittence, de +l'autre quelqu'un qui regarde quand il y a du courant. C'est le principe du +télégraphe, avec le code Morse. Et ça s'adapte vraiment parfaitement aux +ordinateurs. Les ordinateurs peuvent même faire mieux : ils ont des +métronomes (dans le domaine informatique on parle d'horloges) qui battent +très précisément la mesure ; à chaque tic, ils peuvent envoyer ou pas le +courant, ça fait un bit d'information à chaque fois. +
++Nous ne rentrerons pas dans les détails de la réalisatoin physique : ça +peut aller d'une bête paire de fils sur à peine plus d'un mètre à un +faisceau de fibres optiques, en passant par un câble coaxial. Ça peut +également être des ondes radio, ou bien le fait de dire ou de ne pas dire +bip sur une ligne téléphonique. Bref, il y a plein de manières pour deux +ordinateurs de se dire 0 ou 1. +
++Ça, c'est bien pour relier deux ordinateurs. Mais comment faire s'il y en a +plusieurs ? Tirer un câble entre chaque paire n'est pas envisageable. La +solution la moins coûteuse, et donc celle qui a été rapidement préférée, est +d'utiliser un seul câble qui connecte tous les ordinateurs. Quand un +ordinateur veut parler, il parle à tous les autres, et il faut inventer des +moyens pour que deux ne parlent pas en même temps. Le système de ce genre le +plus répandu consiste en un câble coaxial où tous les ordinateurs sont +branchés en sérié ; plus récemment on a adopté une structure en étoile +autour d'un appareil bon marché appelé hub, plus efficace et plus robuste +que la structure en série. +
++Plusieurs ordinateurs, c'est bien, mais relier beaucoup d'ordinateur, c'est +mieux. La technologie des câbles impose des limites de longueur, et il est +rarement possible de relier directement un câble coaxial de réseau +domestique à un faisceau de fibres optiques transatlantique. La solution +consiste alors à avoir une machine branchée sur les deux (ou plus) réseaux, +avec pour tâche de faire suivre l'information de l'un à l'autre ; quand un +ordinateur d'un réseau veut parler à un ordinateur de l'autre réseau, il +adresse son message à cette machine, avec une étiquette indiquant le +destinataire. On appelle une telle machine un routeur. +
++Pour les réseaux locaux (les +LAN quand on veut faire +moderne), la technologie employée est ethernet. Elle fonctionne +soit avec un câble coaxial en série, soit avec un câble simple (à huit fils +dont peu sont vraiment utilisés) organisé en étoile autour d'un hub. Avec +ethernet, les données sont envoyées par blocs appelés trames qui font au +plus environ 1,5 ko. Il n'y a pas de système pour s'assurer a priori +que deux ordinateurs sur le câble ne parlent pas en même temps : la +détection se fait a posteriori par le fait que le signal est alors +incompréhensible ; les deux ordinateurs réémettent alors après un délai +aléatoire, qui sera probablement différent ; en pratique, ce système marche +plutôt bien. +
+
+Au début de chaque trame ethernet, ou trouve ce qu'on appelle un
+entête : quelques octets réservés par le protocole ethernet
+lui-même pour son fonctionnement interne. Toutes les cartes réseau ethernet
+possèdent une adresse
+MAC depuis l'usine (mais
+les cartes modernes permettent de la changer), qui est code unique de six
+octets. Par exemple sas.eleves a pour adresse MAC
+52:54:00:62:1b:66
. Dans l'entête ethernet, on trouve l'adresse
+MAC de l'ordinateur auquel la trame est adressée (ainsi que celle de
+l'ordinateur qui envoit). En temps normal, le filtrage se fait directement
+au niveau de la carte réseau, de sorte que parmi les ordinateurs sur un même
+câble, seul celui qui est concerné voit effectivement un message.
+
+Dans l'entête ethernet, on trouve également un numéro de protocole. C'est un +petit nombre, sur deux octets, qui décrit très brièvement ce qu'on prévoit +de faire avec les données de la trame. +L'IANA +tient à jour une +table des numéros +ethernet attribués. Ainsi, le système d'exploitation de l'ordinateur qui +a reçu la trame peut immédiatement appeler le bon sous-système, ou ignorer +la trame s'il ne sait pas quoi en faire. Pour illustrer, quand on utilise +ethernet pour faire passer de l'« Internet », le numéro est 513. Ce +mécanisme de numéros décrivant le genre d'utilisation d'un système est très +général, et on le retrouve à tous les niveaux des protocoles Internet. +
++Quand on utilise une ligne téléphonique, le protocole employé est le +Point to Point (PPP). Il a des mécanismes différents +parce qu'il ne relie que deux ordinateurs, mais sous des contraintes +différentes (ligne moins fiable et temps de latence supérieur). +
++Mettez une lettre à la poste. Si le destinataire habite dans la même ville, +elle lui sera distribuée directement. S'il habite dans une ville voisine, le +facteur transmet la lettre à son collègue de cette ville. S'il habite plus +loin, le facteur transmettra la lettre au centre de tri dont il dépend. Et à +son tour, le centre de tri va faire suivre la lettre à qui de droit. La +lettre va donc passer par différentes étapes où elle sera redirigée en +fonction de l'adresse qui est écrite dessus. +
++Les réseaux informatiques, dès qu'ils dépassent les quelques dizaines de +machines qu'on peut brancher sur un même câble, fonctionnent de la même +manière : les données sont découpées en paquets, qui jouent le +rôle de notre enveloppe. Quand il n'est pas possible de transmettre le +paquet directement à son destinataire, il est transmis à un ordinateur +(défini dans la configuration du réseau) appelé routeur. Cet +ordinateur est censé être capable de faire suivre le paquet ; ça suppose par +exemple qu'il est relié par un autre câble à un autre réseau. +
++Pour pouvoir marcher, ce système a besoin que les ordinateurs soient dotés +d'une adresse qui reflète leur position dans le réseau global. L'adresse MAC +ne convient pas pour cette tâche, d'une part parce que elle est (plus ou +moins) immuable et ne correspond en rien à la position sur le réseau (un +portable qu'on débranche d'un endroit et rebranche a un autre ne change pas +d'adresse MAC), et d'autre part parce qu'on souhaite que ça fonctionne avec +différents types de connexion (les modems pour les connexions PPP, par +exemple, n'ont pas d'adresse MAC). On invente alors un nouveau système +d'adresses, indépendant du protocole utilisé pour connecter les ordinateurs. +
++Ce qui fait Internet, c'est +IP (et l'on découvre que le +titre de cette section est un pléonasme). Ce protocole décrit la structure +des adresses utilisée, la manière d'écrire ces adresses dans les paquets, et +les moyens d'assurer leur bonne circulation. +
++Nous utilisons actuellement la version 4 d'IP, ce qu'on indique parfois par +IPv4. Dans cette version, les adresses sont constituées de 32 chiffres +binaires (bits), ce qu'on écrit généralement sous la forme de quatre nombres +entre 0 et 255. Par exemple, l'adresse IP de sas.eleves est 129.199.129.11. Une +nouvelle version d'IP, IPv6, est progressivement mis en place ; les adresses +y font 128 bits, et sont écrites en hexadécimal ; l'ENS n'est pas reliée en +IPv6, mais si vous voulez un exemple, 2001:660:3001:4002:2C0:4FFF:FE4E:41D3 +est l'adresse IPv6 du serveur web de +Renater. +
++Tout ordinateur relié à Internet possède (au moins) une adresse IP, et il +est le seul à la posséder (dans Internet). Ces adresses sont structurées en +réseaux et sous-réseaux, en fixant les chiffres de gauche à droite. Ainsi, +toutes les adresses en 129.199.x.y sont dans l'ENS, et celles en +129.199.129.y sont plus particulièrement dans la salle S. De l'extérieur, +quelqu'un qui veut envoyer un paquet à 129.199.129.1 a seulement à savoir +qu'il doit l'envoyer à l'ENS. C'est ensuite à nos routeurs de finir le +travail. +
++Les paquets IP comportent tous l'adresse IP de l'expéditeur, celle du +destinataire, une somme de contrôle qui permet de vérifier qu'il est intact, +et un numéro de protocole indiquant à quoi va servir ce paquet. Ils +comportent également un compteur qui limite le nombre de routeurs par lequel +il peut passer (de manière à ce qu'un paquet perdu ne reste pas éternellement +à circuler entre des routeurs mal configurés), ainsi que quelques autres +options. Un des principes d'Internet, c'est que les routeurs font le strict +minimum : ils doivent se contenter de faire suivre les paquets sans les +altérer (sauf le compteur ; si un paquet a atteint la limite, le routeur +l'arrête et envoit un paquet à l'expéditeur pour signaler l'erreur). Un des +autres principes est que tous les ordinateurs sont égaux : du point de vue +du protocole, rien ne distingue le super ordinateur central de la NASA de +votre petit PC personnel ; en particulier, rien ne distingue un serveur d'un +poste client. +
++IP est conçu sur un principe de best effort (meilleur +effort) : les infrastructures (les routeurs) font leur possible pour faire +parvenir vos paquets, mais sans aucune garantie. Un paquet peut disparaître +sans laisser de trace, ou bien se perdre au mauvais endroit (mais il n'ira +en général pas bien loin), ou encore être retardé et arriver après un paquet +pourtant parti plus tard. Il arrive même qu'un paquet arrive en plusieurs +exemplaires. Bien sûr, en général, les paquets arrivent bien, et +dans l'ordre. Ce principe du meilleur effort a l'avantage d'être simple et +léger ; il est ensuite possible de concevoir un système d'accusés de +réception et de numéros d'ordre pour assurer la fiabilité de la +transmission. +
++C'est bien gentil de dire que votre ordinateur peut envoyer des paquets qui +arriveront (peut-être) à n'importe quel ordinateur dans le monde, mais vous, +ce qui vous intéresse, c'est de surfer sur le web et d'envoyer du courrier +en même temps, et que les informations arrivent. Pourtant, le web et le +courrier électronique ne sont pas toujours dans le même logiciel : il faut +donc que plusieurs applications puissent se partager le réseau, et que l'une +n'aille pas recevoir les données de l'autre. +
++Quand on programme une application réseau, on amierait en général avoir une +sorte de tuyau : tout ce qu'on dit d'un côté, l'application à l'autre bout +le reçoit, dans l'ordre, sans perte, et une seule fois, et inversement, on +reçoit tout ce qu'elle dit. Si les ordinateurs aux deux bouts sont d'accord, +un tel tuyau peut être simulé : on découpe ce qui doit passer dans le tuyau +en morceaux assez petits pour tenir dans des paquets, et on les expédie avec +un numéro d'ordre ; à l'autre bout, l'ordinateur répond par un paquet +accusant la réception, et utilise les numéros pour remettre de l'ordre. Si +on constate qu'un accusé de réception tarde, on réexpédie le paquet +incriminé, au pire il arrivera en double et ce n'est pas grave. +
++Tant qu'on en est à rajouter des numéros aux paquets, on peut ajouter encore +quelques informations. Par exemple l'identité du programme qui l'a envoyé, +ou l'identité du programme qui doit le recevoir. Avec tout ça, on peut +concevoir des connexions réseau : un tuyau virtuel entre un +ordinateur et un autre, avec une extrémité qui envoit des paquets, attend +des accusés de réception, et réexpédie les paquets qui se perdent, et +l'autre extrémité qui reçoit les paquets et les remet dans l'ordre. Quand un +paquet arrive sur un ordinateur, le système réseau consulte son contenu pour +voir ses références, et trouve dans ses tables à quelle connexion il +appartient. +
++Tout ceci est normalement fait par le système d'exploitation des +ordinateurs, et caché aux programmes. Les programmes, eux, se contentent de +réclamer une connexion, et ensuite d'utiliser le tuyau. Les données passent, +ils n'ont pas à se soucier de toute la machinerie interne. +
++Sur internet, le protocole qui sert à établir des connexions est +TCP. Pour +distinguer les connexions, TCP utilise un numéro de port, un +petit nombre (entre 1 et 65535), qu'on peut voir un peu comme le casier d'un +élève, alors que l'adresse IP correspond à « 45 rue d'Ulm ». Une connexion est +identifiée par quatre données : +
++Chaque paquet échangé dans le cadre d'une connexion rappelle ces quatre +références. On peut remarquer que sur un ordinateur donné, le même port peut +participer à plusieurs connexions. De fait, ça arrive assez souvent, mais +jamais aux deux extrémités à la fois (même si rien ne l'interdit +fondamentalement). +
++Les connexions TCP sont toujours doubles : dans un sens et dans l'autre +entre les mêmes extrémités. +
++Du point de vue du programme, une connexion est un objet sur lequel on peut +lire et écrire des données. Sous Unix, ça se présente presque de la même +manière qu'un fichier. Le système d'exploitation sait à quel programme +chaque connexion active « appartient », et fait tout le nécessaire. +
++Comme dans toutes relations de couple, aux débuts d'une connexion, il faut +que l'un des deux fasse le premier pas, alors que l'autre se contente +d'attendre. En informatique, l'extrémité de la future connexion qui attend +s'appelle un serveur (eh oui, c'est le contraire du restaurant, +où le serveur vient à votre table prendre la commande), tandis que +l'extrémité qui fait le premier pas (qui envoit le premier paquet) s'appelle +le client. Après l'échange de quelques paquets (trois, avec TCP) +pour vérifier qu'il y a bien un serveur au port demandé, pour se mettre +d'accord sur la taille des paquet, etc., la connexion est établié. +
++Une fois que c'est fait, il n'y a du point de vue du réseau plus de +différence entre les deux extrémités. Cependant, le dialogue entre les +programmes ne sera probablement pas symétrique : une fois une connexion +établie entre votre navigateur web et +Google, c'est bien votre navigateur web +qui va poser une question à Google et non l'inverse. Il arrive néanmoins que +ça finisse par être symétrique, en particulier dans le cas de dialogue en +direct (avec ytalk par exemple) ou de jeux en réseau sans serveur central. +
++L'important est que les deux extrémités se comprennent. Pour ça, elles +doivent encore une fois coder leurs données d'une certaine manière : encore +un protocole. Cette manière n'est d'ailleurs pas la même s'il s'agit de web, +de mail, ou d'autres activités tout aussi passionnantes. +
++Les plus attentifs doivent se poser une question : il y a sur l'ordinateur +de Google (dont l'adresse IP est 216.239.59.99) 65535 ports différents, +comment notre navigateur web a-t-il deviné le quel contacter ? La réponse +est simple : le web, c'est sur le port 80. Pourquoi 80 ? C'est comme ça. Les +services importants ont des numéros de port qui leur sont dédiés, l'IANA les +recense. Les +services moins répandus prennent un port plus ou moins au hasard, en +espérant ne pas entrer en conflit avec un autre service, et comme c'est la +même personne qui écrit les programme client et serveur c'est le même qui +est utilisé des deux côtés. +
+
+Sous Unix, il faut des droits spéciaux pour créer un serveur sur un port en
+dessous de 1024, ce qui permet d'être sûr, quand on donne son mot de passe à
+SSH (port 23) ou à IMAP (port 143), d'être bien en train de parler au
+programme autorisé. Au dessus de 1024, c'est libre. Certains se rappellent
+peut-être que le serveur web des élèves était
+http://www.eleves.ens.fr:8080/
. Ceci veut dire
+qu'il était sur le port 8080 au lieu du 80 habituel, justepent parce qu'il
+aurait fallu des droits supplémentaires pour avoir 80.
+
+Pour le client, c'est en général plus simple : le programme laisse le +système d'exploitation choisir un port inutilisé. Certains programmes +forcent l'utilisation d'un port en dessous de 1024 pour prouver qu'ils ne +sont pas n'importe quel utilisateur, mais cette pratique tombe en désuétude +au profit de méthodes cryptographiques. +
++Se rappeler les adresses IP, ce n'est pas facile. Et ce sera encore pire +avec IPv6. Mais le problème n'est pas nouveau : on a le même avec les +numéros de téléphone, et pour le résoudre on a inventé l'annuaire. +L'annuaire pour Internet s'appelle le +DNS, et fonctionne bien +entendu en réseau. +
+
+À l'échelle d'un site, ou d'un fournisseur d'accès, il y a un (ou plusieurs)
+ordinateur, que tous les autres connaissent par son adresse IP, et sur
+lequel tourne un programme qui écoute sur le port 53 et qui se charge de
+répondre aux questions du genre « quelle est l'adresse IP de
+www.google.com
? ».
+
+Ce programme n'a en général pas la réponse, mais il a l'adresse d'autres
+ordinateurs à qui demander, qui eux-mêmes peuvent ne pas savoir mais avoir
+l'adresse d'autres ordinateurs, etc. Le système est hiérarchique. Il y a à
+la racine quelques ordinateurs (une douzaine) qui savent qui s'occupe des
+.com
, qui s'occupe des .org
, qui s'occupe des
+.fr
, etc. Dans le cas des .fr
, il y a encore
+quelques ordinateurs, gérés par des organismes français (enfin, pas tous),
+qui savent à qui s'adresser pour chaque domaine. Et ainsi de suite.
+
+Par exemple, pour connaître l'adresse de sas.eleves.ens.fr
, il
+faut commencer par interroger l'un des serveurs racine, par exemple
+198.41.0.4, qui répond qui'il ne sait pas, mais que les .fr
+sont gérés par 192.93.0.1, 193.51.208.13, et quelques autres. Si on
+interroge l'un d'entre eux, on apprend qu'il ne sait pas non plus, mais il
+nous informe que ens.fr
est géré par 129.199.96.11 (on
+reconnaît le 129.199 : c'est un ordinateur de l'ENS) et quelques autres.
+Enfin, on interroge 129.199.96.11, et on obtient la réponse, à savoir
+129.199.129.1
+
+Bien sûr, tous les programmes pour faire ça sont déjà écrits : quand on +programme une nouvelle application réseau, il suffit d'utiliser la bonne +fonction de la bibliothèque standard. +
+ +Ou les quelques vocables utiles pour lire nos documentations... +Nous avons tout fait pour que ce lexique reste le plus court possible ! +Cependant, les informaticiens aiment être précis dans leur discours et cela +les conduit à employer certains mots dans un sens parfois étrange ou trompeur. +Ou bien, il faut bien l'avouer, à utiliser des anglicismes... Lorsque c'est +le cas, la version française communément admise figure entre parenthèses après +le mot anglais.
+À la fois le surnom et le nom de login de Jacques Beigbeder, +l'administrateur système principal du DMA, du DI et du +SPI.
+Le logiciel que vous utilisez pour parcourir le World Wide Web, et pour +lire la présente documentation. Non, il n'y a pas que Mozilla, Netscape et +Internet Explorer... Vous pouvez vous reporter aux +commandes de Lynx, un +navigateur très rapide en mode texte, ou à un cours sur +l'utilisation de +Netscape paru dans la rubrique Internet du Hublot.
+La colorisation syntaxique consiste en la colorisation d'un document +texte en fonction de particularités syntaxiques dans le but de faciliter +sa visualisation dans un éditeur. Par exemple, quand il s'agit d'éditer le +code source d'un programme dans un langage informatique ou le contenu +d'un fichier LaTeX, les mots-clé du langage sont mis en évidence par un jeu +de couleurs. +
+L'unité indivisible de personnalité sous Unix, qui contient tous vos +fichiers, votre courrier électronique, votre future page Web, et les protège +contre les accès indésirables. Ce compte est identifié par un nom de +login connu de tous (une déformation de votre nom de famille pour le faire +tenir en huit lettres et le rendre unique) et un mot de passe +secret que vous choisissez librement.
+Ce terme désigne une façon standard en informatique de reproduire du +texte à plusieurs exemplaires. Ces notions vous sont certainement familières +si vous connaissez les PC Windows ou les Macs ; sinon, sachez que l'opération +«copier» consiste à marquer une zone de texte et l'opération «coller» duplique +à l'endroit voulu la zone précédemment copiée.
+Sous Unix, l'opération de copier-coller se fait avec la souris : pour +copier, cliquez du bouton de gauche au début de la zone de +texte à copier et tout en maintenant le bouton appuyé, déplacez-vous jusqu'à +la fin de la zone puis relâchez le bouton. Pour coller, +cliquez du bouton du milieu à l'endroit voulu. Vous pouvez copier dans une +fenêtre et coller dans une autre, ce qui est très pratique par exemple pour +recopier des messages d'erreur ou autres dans l'éditeur de texte.
+Action de poster un même message dans les news dans plusieurs +groupes à la fois, en spécifiant plusieurs newsgroups de destination. C'est +mieux que de répéter l'envoi du message en changeant de groupe à chaque fois, +car de cette façon l'article n'est transmis qu'une fois et cela limite la +charge réseau ; mais ne serait-ce pas encore mieux de cibler plus +précisément les groupes et de ne l'envoyer qu'à un seul ?
+Le programme dans lequel vous tapez le texte de vos rapports, courriers +électroniques, etc. Contrairement à une machine bureautique, c'est toujours le +même programme que vous utilisez : il y a ainsi moins de problèmes +d'adaptation lorsque vous changez par exemple de logiciel de courrier +électronique.
+Un éditeur de texte se distingue d'un traitement de +texte par le fait qu'il n'offre pas la possibilité de formater le +texte (pas de changement de fontes possible, ni de gras, etc) : on +ne peut y entrer que du texte. Un texte tapé et mis en page sous +Word ne peut être utilisé et imprimé qu'avec Word ou un logiciel +compatible; alors qu'un texte tapé sous votre éditeur de texte Unix sera +compatible avec tous les autres éditeurs, et pourra subir une multitude +de traitements : il peut devenir un courrier électronique, une base +de données, un programme ou même un vrai texte mis en page, grâce à un +logiciel comme (La)TeX*. Pour éditer un fichier texte +simple, se servir d'un logiciel de traîtement de texte revient à utiliser +un marteau-pilon pour écraser une mouche.
+Pour lancer un éditeur, c'est tout simple : tapez le nom de l'éditeur +suivi du nom du fichier que vous voulez éditer. Par exemple : +
++joe rapport.tex +xemacs lettre +vim cours.html ++
+Ce sont les fonctionnalités de votre éditeur, et la connaissance que vous en +avez, qui vous font gagner du temps et vous rendent efficace (remplacements, +recherches, automatisation de fonctions...). Pour vous faire une idée des +possibilités, reportez-vous aux Sept Cercles des Éditeurs de texte.
+Abréviation de Frequently Asked Questions, ce qui se francise en +Foire Aux Questions. C'est un texte contenant les questions fréquemment posées +sur un newsgroup ou une +liste de +diffusion, et leurs réponses. On peut dire que la documentation de la +config conscrits est une FAQ. On peut trouver une archive contenant plein de +FAQs ici : jetez-y +un oeil et sélectionnez un de vos centres d'intérêt, vous serez +surpris !
+Une fenêtre dans laquelle on peut taper des commandes, et qui lorsqu'on +n'y tape rien, affiche quelque chose comme
+
+ prao ~ $
+
+ Vous pouvez en voir plusieurs sur la photo d'écran. Ils sont plus ou moins l'équivalent d'une session +DOS sous Windows. Cela s'appelle un terminal car la fenêtre +constitue le dernier maillon de la chaîne de communication qui vous +relie aux programmes que vous exécutez par ce biais. Une réminiscence +de l'âge de pierre de l'informatique, en attente d'effacement complet +devant le mieux-disant graphique qui semble en être la tendance +d'avenir ? Pas si sûr ! Vous vous apercevrez vite que le clavier reste +le moyen d'interaction le plus rapide avec la machine si on s'entraîne +un tant soit peu à taper; et pour les utilisateurs expérimentés, le fait +que le shell* soit programmable permet d'effectuer +des opérations complexes avec le minimum de temps et de risque +d'erreur.
+Le système de fenêtres sous Unix s'appelle X Window ; +ensuite, un autre programme, appelé gestionnaire de fenêtres, trace le +cadre de vos fenêtres et gère leur déplacement, les icônes et le menu +déroulant qui apparaît quand on clique sur le fond de l'écran. +
+Le concept de gestionnaire de fenêtres permet de modifier la «coquille» de +X Window sans changer aucun programme (juste en réglant le gestionnaire +de fenêtres). Pour une interface graphique totalement intégrée (combinaisons +de touches uniformisées, le copier-coller systématique, le glisser-déplacer, +gestion complète à la souris...), il faut utiliser des interfaces comme +KDE.
+Sur les PC, il est possible de choisir entre plusieurs interfaces au +moment où l'on se connecte sur une machine. L'interface par défaut est +Gnome. Du temps des stations Sun, la seule interface proposée par la config +conscrit était basée sur un gestionnaire de fenêtres appelé fvwm.
+Action de perdre son temps comme un authentique informaticien. +Quand c'est constructif, on peut dire « procrastiner ».
+Le standard Internet en matière d'accents est l'isolatin (isolatin1 ou +ISO-8859-1). ISO signifie International Standards Organization (un +organisme européen). Voici une table des caractères isolatin1, avec la manière de les obtenir.
++Le code le plus répandu dans le monde Unix est l'ASCII (American Standard +Code for Information Interchange). C'est un petit code, prévu pour 128 +signes américains, et sans accents. La famille de codes iso-8859 est de +l'ASCII étendu : il reprend les 128 codes ASCII, et complète avec des +codes «locaux».
++La variante isolatin1 comporte tous les signes diacritiques +nécessaires pour écrire le francais, sauf le oe minuscule et majuscule (oe et +OE), et le y tréma majuscule ("Y). Dans les travaux en cours, l'iso-8859-1 +s'intègre dans une norme plus générale, conçue pour unifier tous les jeux de +caractères de la planète. La norme en question répond au doux nom +d'iso-10646... dont on risque d'entendre parfois parler dans certains +milieux.
++Récemment est sorti le standard isolatin9 ou ISO-8859-15 (ça peut +paraître bizarre mais c'est comme ça) destinée à remplacer ISO-8859-1, et qui +contient notamment les oe et OE bouclés, le Y tréma majuscule et le symbole de +l'euro. Il est possible que vous le rencontriez parfois dans les niouzes +non-locales. Comme il n'est pas encore installé en salle S, ces caractères +apparaîtront respectivement comme ½, ¼, ¾ et ¤ (caractères occupant le même +emplacement en Latin-1, et qui sont très peu utilisés).
+The K Desktop Environment. +C'est un environnement graphique pour Unix, qui fournit un grand nombre de +logiciels conçus pour travailler ensemble. C'était l'environnement graphique par +défaut sur les ordinateurs de l'ENS de 2006 à 2009. Vous pouvez l'installer sur +votre propre ordinateur (par exemple en installant une distribution Linux).
+C'est un système d'exploitation de type Unix qui peut tourner entre +autres sur PC. Il est installé sur la plupart des PC des salles en +libre-service.
+Nom du programme permettant d'obtenir de la documentation sur les +commandes et programmes Unix; par extension, les pages de man ou le +man désignent la documentation elle-même. Plus vous progresserez dans +l'apprentissage d'Unix, moins les anciens auront d'indulgence pour vous et +plus on vous enjoindra d'étancher votre soif de connaissance par le moyen du +man... La formule consacrée par l'usage pour exprimer cette injonction est +RTFM, c'est-à-dire read the f***ing manual ou en français, «relis ton +foutu manuel».
+Un programme fonctionne en mode texte si son affichage +se fait directement dans un terminal* auquel il est +attaché. Un tel programme utilise et est limité par les capacités de ce +terminal. Ainsi, il ne peut afficher que du texte, éventuellement avec de la +couleur et/ou des attributs comme l'affichage en gras, souligné ou en inverse +vidéo. Un tel programme n'utilise souvent pas (ou peu) la souris (ce qui présente +aussi des avantages si on peut tout faire au clavier). Par exemple +slrn, forum/flrn, pine, lynx et +pico sont des programmes en mode texte.
++Un programme fonctionne en mode graphique s'il utilise +les capacités graphiques de l'écran pour son affichage. Souvent il créera sa +(ou ses) propre(s) fenêtre(s) (avec l'aide du gestionnaire de +fenêtre*), pourra afficher n'importe quel symbole ou image, et utilisera la +souris. netscape, knews et pratiquement tous les programmes +dont le nom commence par x sont en mode graphique. Certains +programmes, comme emacs, utilisent par défaut le mode graphique mais +savent utiliser le mode texte faute de mieux.
++Si le mode texte semble limité, il a cependant certains +avantages :
++Bien entendu, pour voir des images, mieux vaut avoir un logiciel en +mode graphique. Mais certains programmes comme lynx +savent très bien si on leur demande lancer un programme comme xv pour +voir une image. On a ainsi les avantages des deux modes, en ne se servant du +monde graphique que pour le strict nécessaire. +
+Une contraction des mots «Net» et «Étiquette» (au sens de code +social) : c'est par ce terme qu'on désigne l'ensemble des règles de +bienséance communément admises sur l'Internet. Elle s'applique principalement +aux échanges de messages par courrier électronique ou autre , et vise à +l'économie des ressources informatiques aussi bien qu'au respect des +personnes. Voici les Quatre Piliers qui résument l'esprit de la +Netiquette :
+Vous trouverez plus d'informations à ce sujet dans les pages +respectives du courrier +électronique et des news. +Vous pouvez aussi aller voir le cours sur la Netiquette paru dans le Hublot.
+Nom d'un service Internet de diffusion d'informations et de discussion +sur des sujets très variés, allant de la cuisine à la politique en passant par +Tolkien et le folklore urbain. On désigne aussi ce service sous le nom +historique de Usenet. Vous trouverez des informations à ce sujet ici.
++Le mot «news» désigne en anglais à la fois le support et le contenu d'un média +d'actualité : la meilleure façon de traduire ce mot serait «les +informations», mais la connotation télévisuelle est trop forte pour que ce +terme soit approprié. La nomenclature française recommande le terme de «groupe +de discussion», ce qui est trop proche de «liste de diffusion» +et ne connote pas la nature éminemment publique du service. Par conséquent, +dites et écrivez comme tout le monde, «les niouzes».
+L'octet est une unité de mesure de la mémoire d'un ordinateur. La plus +petite information s'appelle un bit (de binary digit en +Anglais) : c'est une unité de mémoire qui ne peut mémoriser que deux +états, 0 ou 1. Un octet contient huit bits, ce qui fait 256 possibilités de +combinaisons de zéros et de uns. Dans un octet, on peut coder un nombre de 1 à +256, le tiers de la couleur d'un pixel de l'écran, ou bien un signe +alphabétique, ou encore le quart d'une instruction élémentaire de programme. +
++Les ordinateurs modernes mesurent les capacités de leur mémoire vive et de +leur disque dur en kilo-octets (Ko), méga-octets (Mo), et giga-octets (Go). +Une page de texte dactylographiée prend 2 Ko (environ 2000 caractères); +une image de la résolution et de la taille de l'écran des Suns prend environ +800 Ko; le texte intégral de la Bible, un peu plus d'1 Mo (plus d'1 +million de caractères). Le disque dur de chaque promotion sur le réseau de +l'École fait un peu plus de 4 Go (plus de 4 milliards de +caractères).
+Se dit d'une option, d'un comportement, etc. qui est choisi tant que +l'utilisateur n'a pas fait explicitement mention du voeu contraire. La +configuration conscrits contient de nombreuses options par défaut que vous +pourrez changer au fur et à mesure que vous apprendrez à la connaître. Cela +veut dire que le Gentil Administrateur a fait à votre place des choix «pour +votre bien» qui peuvent vous déplaire... Mais il n'aurait pas été possible de +vous poser d'emblée des tas de questions obscures sur vos préférences, avant +que vous ne soyez en mesure de choisir vous-même.
+Petit nom de l'administrateur système sous Unix. Si vous voulez +en savoir plus, suivez ce +lien.
+Voir man*.
+C'est le programme qui s'exécute le premier dans une fenêtre terminal*, ou lorsque vous vous connectez sur +Minitel. C'est lui qui reçoit vos commandes du clavier et lance les programmes +correspondants, tout comme le COMMAND.COM d'une machine DOS.
+Unix dispose de nombreux shells, dont le nom se reconnaît au fait qu'il se
+termine par sh
: bash
, ksh
,
+zsh
, tcsh
... Ils se distinguent par la syntaxe de
+leur langage de programmation (ceux dont le nom finit par csh
+sont différents des autres), et par leurs fonctionnalités. zsh
,
+le plus sophistiqué d'entre eux, permet l'édition de ligne de commande
+(l'utilisation des flèches pour corriger le texte et rappeler des commandes
+précédemment tapées, comme avec DOSKEY sous DOS) et la complétion
+automatique (appuyez sur Tab, et le shell complète à votre place le mot
+que vous avez commencé à taper !).
Le nom des nouvelles versions de SunOS (voir plus loin la définition de +ce mot). Plus moderne, mais aussi plus lourd... À l'ENS, le vieux SunOS a +été remplacé par Solaris du temps des stations Sun.
+Service des Prestations Informatiques de +l'ENS : le service administratif du réseau de l'École. Le jeu de mots +avec le fait que toutes les machines du SPI aient des noms de bateau est +limpide. Vous pouvez consulter sa page +d'accueil.
+C'est la marque de la majorité des stations de travail qui +étaient présentes à l'École par le passé.
+De son non complet : SunOS Unix, mais pas Unix tout court. +C'est le vrai nom du système d'exploitation des Suns. Unix étant une marque +déposée de The Open Group, inc., un système ne peut légalement s'appeler Unix +que si il passe des tests de compatibilité conçus par cette dernière socièté +(Solaris les passe, mais SunOS pas complètement). Pourtant, les différents +systèmes d'exploitation qu'on appelle couramment Unix (y compris Linux, le +système d'exploitation gratuit sur PC qui n'acquiert pas la licence Unix pour +des raisons pécunières et de code d'honneur) sont si proches les uns des +autres, que la restriction de copyright est l'unique raison pour laquelle +SunOS ne s'appelle pas Unix.
+(ainsi que LaTeX, une surcouche sur le programme original). Logiciel de +traitement de texte spécialisé dans les textes scientifiques, gratuit, +disponible sur les stations, et permettant d'atteindre facilement la +perfection typographique (ce n'est pas exagéré). C'est un logiciel dont le +principe de fonctionnement est très déroutant si vous êtes habitués à un +traitement de texte sur machine bureautique, mais quel plaisir pour les +yeux : après avoir rédigé un rapport avec TeX, ceux de vos collègues vous +paraîtront insupportablement mal mis en page ! Vous trouverez sur ce site +une page consacrée à LaTeX.
+Dans les news, désigne un groupe de messages se répondant les uns aux +autres. Par extension, l'ensemble des paroles échangées au cours d'une +discussion (parlée ou électronique) à laquelle prennent part de nombreuses +personnes. «Bon, on ferme ce thread ?» signifie que le locuteur estime +que la conversation a assez duré et qu'il faut changer de sujet.
+C'est le nom générique du système d'exploitation des stations Sun (entre +autres : Unix existe sur toutes les machines suffisamment puissantes pour +le supporter, même les PC Windows et les Macs !). Il assure les mêmes +rôles que MacOS ou MS-DOS, c'est-à-dire qu'il gère les opérations les plus +terre-à-terre qu'un ordinateur sache faire : lire et écrire sur une +disquette ou un disque dur, stocker en mémoire les touches que l'utilisateur +tape etc. Il est aussi beaucoup plus puissant que MS-DOS et MacOS : vous +pouvez aller voir une présentation technique des machines Unix.
+On appelle ainsi les tout petits terminaux formés d'un clavier et d'un +écran jaunis par l'âge : il y en avait dans la bibliothèque de +mathématiques. Ce sont des terminaux, car il n'ont pas de puissance de +calcul et ne remplissent pas d'autre rôle qu'une fenêtre terminal (voyez la +définition de ce mot ci-dessus). Leur nom vient de leur numéro de série : +ce sont des VT220, mais avant ont trouvait des VT100, VT101, VT102, etc. On +peut se loguer dessus, mais en fait c'est avec la station auxquels ils sont +reliés qu'on dialogue ce faisant.
++ Le système d'affichage usuel sur les systèmes Unix. Il permet + d'afficher des fenêtres contenant des images, le tout éventuellement à + travers le réseau, et fournit au programmeur des fonctions de base + pour manipuler tout ça. Ce n'est pas X qui fournit les barres + d'outils, les boutons et compagnie de l'interface graphique (c'est, + par exemple, KDE), mais il gère la souris, le + clavier et l'écran pour ça. +
+Divinité de la salle S, et dernière entrée du +lexique.
+Vous trouverez ici expliqué ce qu'est un réseau, et comment les +ordinateurs communiquent entre eux. En un mot, ce qu'est Internet... +
++Les ordinateurs n'ont que deux doigts, contrairement aux humains. Ils +comptent et manipulent l'information uniquement sous la forme de 0 et +de 1 ; c'est le choix fondamental, l'information minimale, qui +s'exprime ainsi (vrai/faux, ouvert/fermé, oui/non, etc). Une telle +information est appelée un bit. Comme un bit ne contient pas +grand'chose, on groupe plusieurs bits pour qu'ils forment, ensemble, +une information plus complexe. +
++Huit bits ensemble forment un octet. Chaque bit a une place +particulière dans l'octet, ce qui permet de faire 256 combinaisons +(28). Un octet est adapté pour coder un caractère +occidental (il y a suffisamment de place pour les 26 lettres, avec les +minuscules, les caractères accentués, les chiffres et quelques autres +signes typographiques). +
+Les quantités de données traitables par les ordinateurs se
+chiffrent désormais en millions et milliards d'octets. Les
+informaticiens ont donc conçu des unités adaptées. Le
+kilo-octet (Ko
) comporte 1024 octets
+(210). (et non 1000 : 1000 est un nombre rond en base 10,
+mais pas en base 2; en revanche, 1024 s'écrit 10000000000 en base 2).
+
+Le méga-octet (Mo
) est constitué de 1024 Ko
+(plus d'un million de caractères), et le giga-octet
+(Go
) vaut 1024 Mo. On commence à parler de
+téra-octet (To
) mais c'est encore un peu trop
+cher.
+
+Une image plein écran « pèse » environ 1 Mo, voire plus si on veut une +grande palette de couleurs. Une simple disquette contient environ 1.44 +Mo, et un CD-ROM 660 Mo. Un DVD-ROM pèse jusqu'à 17 Go (plus de 17 +milliards de caractères). Pour donner une échelle de valeur, disons +que la Bible, correctement encodée, tient en 1 Mo (un peu moins d'une +disquette), et que l'Encyclopedia Universalis, avec +schémas, photos et quelques animations, rentre dans un CD-ROM. +
++Stocker des informations est bel et bon ; mais il est tentant de +pouvoir en échanger, sans quoi la sclérose guette. On peut transporter +des disquettes, des CD-ROMs ou d'autres supports du même genre ; +c'est assez efficace en termes de débit (exercice : calculer la +quantité d'informations transportable dans une camionnette qui serait +pleine de CD-ROMs — c'est tout simplement colossal) ; mais +le temps de réponse est long, très long. Et puis, l'informaticien +n'aime pas se lever de sa chaise s'il n'y est pas poussé par une +nécessité impérieuse (aller prendre sa dose de Coca-Cola par exemple). +
++Donc, il s'agit de doter les ordinateurs de moyens de +communication. Pour coder des 0 et des 1, certains protocoles adaptés +sautent aux yeux : le code Morse par exemple. On transmet des «longs» +et des «brefs». Le seul problème est que le débit n'est pas très +satisfaisant : deux bons opérateurs peuvent s'échanger 3 bits par +seconde, et une visio-conférence (de mauvaise qualité) en exige au +moins 60 000. Même un téléphone portable, à la qualité de son +douteuse, doit échanger 9 600 bits par seconde. +
++Néanmoins l'analogie est riche. En effet, en regardant de plus près, +quand un message est envoyé en Morse par télégraphe, son texte est +précédé du nom du destinataire : au XIXe siècle, il n'y avait pas de +ligne directe de New-York à Los Angeles ; le message devait +passer par différents opérateurs qui recevaient le message et le +réexpédiaient immédiatement dans la bonne direction. Un message pour +San Francisco prenait au début le même chemin. Ce principe de message, +sautant de poste en poste, redirigé à chaque poste en fonction de sa +destination, est le fondement d'Internet. C'est ce qu'on appelle un +réseau par paquets, par opposition au téléphone, qui est un réseau par +circuits. +
++Il existe deux types de réseaux : les réseaux par paquets et les +réseaux par circuits. Le premier type est celui du Morse décrit dans +le numéro précédent : chaque information est un message qui transite +de centre de tri en centre de tri, suivant l'adresse du destinataire; +personne ne s'occupe de l'intégralité de la transmission, et tout +problème est par essence local. +
++Le deuxième type de réseau est celui du téléphone : un rendez-vous est +pris entre les deux parties, une communication physique est établie +jusqu'à ce que l'un des deux raccroche. +
++Ces deux types de réseaux ont des avantages et des inconvénients +opposés. Essentiellement : +
++Actuellement, France Telecom utilise des réseaux par paquets pour +toutes les communications nationales. En effet, les possibilités de +réutilisation de la bande passante et de résistance aux pannes sont +très appréciables; les caractéristiques habituelles en téléphonie +(conversation continue, pas de perte de son) sont assurées par des +protocoles de plus haut niveau, qui tentent de rétablir des garanties +de débit, de corriger les erreurs, enfin bref de faire au mieux. C'est +une émulation de réseau par circuits, par dessus un réseau par paquets +(et, bizarrement, ça marche). +
+
Figure 1 : Réseau par paquets
+reliant A à B
Figure 2 : Réseau ethernet par câble
+coaxial
+Pour connecter deux ordinateurs, il faut tout d'abord pouvoir +représenter les 0 et les 1 sur un médium adapté. Actuellement, on +utilise principalement les méthodes suivantes : +
++Le bruit est ce qui s'oppose au signal ; par exemple, le cours du prof +c'est le signal, les élèves qui chuchotent c'est le bruit. Au +téléphone, le signal c'est la conversation, tandis que le bruit c'est +la friture. +
++Le cas d'un modem ne pose pas de problème, car c'est une communication +point à point sur une ligne réservée (aucun encombrement). En +revanche, dans un réseau local, on veut connecter plusieurs machines, +éventuellement beaucoup, et on ne désire pas tendre un câble pour +chaque paire de machines. L'idée est donc de se partager un conducteur +commun, ce qu'on appelle d'habitude un bus. Ensuite, il faut décider +comment partager ce bus entre les différents ordinateurs connectés +dessus. +
++En token-ring, un jeton (token) est +transmis de station à station ; c'est le droit de parole. Chaque +station ne peut conserver le jeton que pendant un temps maximal donné, +mais peut le relâcher immédiatement si elle n'a rien à dire. +
++En ethernet, la méthode est plus simple qu'en token-ring : quand une station veut émettre un message, +elle espionne le bus jusqu'au moment où il se libère (plus personne ne +parle pendant un très court instant); elle prend alors la parole, +d'autorité. Ce faisant, elle continue d'espionner le bus, pour voir si +la communication passe bien; si elle est brouillée, c'est qu'une autre +station a eu la même idée en même temps. Dans ce cas, la station (et +l'autre aussi, car elle est également brouillée) s'arrête, attend un +temps aléatoire, et recommence. Avec une bonne probabilité, l'autre +station a attendu un temps aléatoire différent, et les deux messages +partent sans brouillage. Après un certain nombre d'essais infructueux, +avec des délais de plus en plus grands, le message est considéré comme +n'ayant pas pu passer, c'est ce qu'on appelle une collision. +
++Bizarrement, l'ethernet est très efficace, et partage très +correctement la bande passante, même quand le bus est chargé. Il a +l'avantage d'être très décentralisé : aucune station n'a besoin de +savoir qui, au juste, est présent sur le bus, et une station éteinte +n'empêche pas la communication. Son défaut principal est l'absence de +garantie de débit, chaque station se contentant de faire au mieux, au +lieu de faire bien. +
++L'ethernet se pratiquait sur des câbles coaxiaux (façon câble +d'antenne de télévision), passant par toutes les stations et terminés +aux deux bouts par des résistances, avec une longueur maximale de 185 +mètres (ou 550 mètres si on emploie du gros câble blindé, +traditionnellement jaune). Cette méthode a l'inconvénient +d'occasionner une coupure du câble quand on rajoute une nouvelle +prise; et il n'est pas toujours facile de faire passer le même câble +par toutes les stations, suivant leur disposition. +
++Maintenant, on établit des structures arborescentes : chaque station +est reliée, par un câble personnel, à un hub, une sorte de multiprise +amplifiée. Les hubs sont reliés entre eux via des câbles similaires ; +chaque hub reproduit sur toutes les autres prises ce qu'il reçoit sur +chacune d'elles. On peut brancher une nouvelle machine sans perturber +le fonctionnement, et on peut plus facilement relier des machines +distantes. +
++Figure 3 : Réseau ethernet arborescent (RJ45)
++On a vu, dans la section précédente, comment relier ensemble deux +stations pour qu'elles puissent s'échanger des données, pas forcément +de façon fiable, et sans garantie de débit. Ces méthodes sont locales, +et il convenait de passer à un réseau global. Ceci a été effectué +grâce au réseau Internet, dérivé de l'Arpanet au cours des années 1970 +(Arpanet était le réseau des militaires américains). +
++Le principe est le suivant : quand une station veut envoyer un message +à une consoeur, elle commence par examiner ses branchements, pour voir +si la destinatrice ne serait pas, par hasard, accessible +directement. Dans ce cas, elle lui envoie le message par le moyen +physique présent. Dans le cas contraire, elle envoie le message à une +station dont elle sait qu'elle est plus qualifiée qu'elle pour +résoudre ce problème. La station qualifiée est nommée routeur, ou +aussi passerelle. +
+
+Pour savoir qui est contactable et comment, chaque station est munie
+d'une adresse de 4 octets (chaque octet contenant un nombre entre 0 et
+255). Ainsi, la station galion, en salle S, est dotée de l'adresse
+129.199.129.10
. Ces adresses sont mondiales, et toutes
+les adresses commençant par 129.199
sont réservées à
+l'ENS.
+
+Prenons l'exemple de galion, tentant d'envoyer un message (sous la +forme d'un paquet IP, comme Internet Protocol) à aviso, en Infirmatique. +(Attention, ce paragraphe n'est plus à jour : aviso n'est plus en salle Infi et +son adresse IP a changé.) +
+
+galion, d'adresse 129.199.129.10
, sait qu'elle est reliée
+directement à toutes les stations dont l'adresse commence par
+129.199.129
. Or, aviso a l'adresse
+129.199.128.1
; galion, constatant cela, décide de
+transmettre le paquet à sa passerelle, à savoir clipper
+(129.199.129.1
, contactable par un lien ethernet direct
+depuis galion). Puis galion se lave les mains de ce qui se passe
+ensuite, ce n'est plus son affaire.
+
+clipper ne peut pas non plus contacter aviso directement, mais il peut
+parler sur un deuxième lien depuis son deuxième visage, clipper-gw
+(129.199.1.22
). Sur ce lien, il peut contacter finn
+(129.199.1.128
), qui est responsable des adresses en
+129.199.128.
clipper transmet donc le paquet à finn, et
+se désintéresse lui aussi de la question.
+
+finn possède aussi deux visages, le second étant finn128
+(129.199.128.254
), relié directement aux stations de
+l'Infirmatique. finn peut donc communiquer directement avec aviso, et
+lui envoie le paquet.
+
+Donc, pour que tout se passe bien, il suffit que chaque station sache +reconnaître les adresses contactables directement, et une passerelle +pour les autres cas. Les routeurs, eux, doivent avoir une notion +locale de la hiérarchie (clipper doit connaître finn, mais ce que finn +doit faire pour contacter aviso ne le regarde pas). +
++Il est même possible de reconstruire ces informations à la volée : +clipper peut tout envoyer sur la machine par défaut (renater), qui lui +signalera à chaque fois qu'il existe une route plus directe ne passant +pas par lui; clipper s'en rappellera pendant quelques minutes. Ce +mécanisme, dit de routage dynamique, est un peu délicat à mettre en +place, aussi on s'en sert avec parcimonie (il est aisé d'obtenir, à la +suite d'un malentendu, une partie de ping-pong, où deux stations +considèrent, pour un paquet donné, que l'autre station est la +passerelle à utiliser). +
++Et voilà, ceci est Internet : des stations qui s'échangent des paquets +(d'une taille maximale de 65.536 octets, mais souvent plus petits, de +l'ordre de 1.500 octets). Normalement, un paquet n'a pas à effectuer +plus de 30 sauts pour faire le trajet d'une station à une autre. Les +paquets peuvent être fractionnés et recombinés au gré des routeurs, +afin de s'adapter aux spécificités locales de la liaison. +
++Le chemin entre deux stations n'est pas forcément unique ; ceci permet +une tolérance aux pannes ou une adaptation aux +embouteillages. Notamment, les communications à grande échelle sont +alors résistantes aux attaques nucléaires (c'est ce qui plaisait aux +militaires américains). Une conséquence de ce fait est que deux +paquets successifs ne suivent pas forcément le même chemin; ils +peuvent notamment arriver dans le désordre, et certains peuvent être +dupliqués (quand une passerelle cherche à savoir, via un protocole +approprié, si un paquet est arrivé, et, ne voyant rien venir, en émet +un autre, alors que le premier était simplement parti par un chemin +détourné). +
+
Figure 4 : Une partie du routage
+à l'ENS
+Nous voilà en position d'envoyer des paquets à travers le monde. Mais +avec une fiabilité douteuse. On a principalement deux problèmes : +
+Deux protocoles ont donc été créés (un protocole est aux données ce +que le langage est à une conversation : c'est le « règlement »). Le +premier, UDP (User Datagram +Protocol) est une surcouche triviale (couche supplémentaire +reproduisant la structure sous-jacente) d'IP : on envoie des paquets, +sans garantie, d'une taille maximale de 8 192 octets (pour les +données; il y a aussi un entête donnant entre autres l'adresse et le +port de destination). +
+TCP (Transmission Control Protocol) +est une mécanique complexe qui assure une sémantique de connexion: un +tuyau bidirectionnel, fiable, au flux contrôlé afin de ne pas +provoquer d'embouteillage, est établi entre deux stations, sur un +certain port. +
++TCP est le plus utilisé. UDP est utilisé pour certains protocoles où +l'ordre d'arrivée des données n'est pas important, ou quand les +données sont rapidement obsolètes. Par exemple, dans le cas de NFS +(partage de disques par réseau), l'ordre des requêtes n'est pas +primordial; quand on fait du téléphone par Internet, si un paquet se +perd, autant l'oublier: sa doublure arriverait trop tard pour +s'intégrer dans le flux sonore. +
++La face visible d'Internet est formée par les applications. Nous +allons en détailler quelques unes. +
+
+Cette application est chargée de faire la correspondance entre les
+adresses numériques, et les noms de stations, noms qui sont destinés
+aux humains. Ainsi, c'est le système des DNS qui permet à toute
+station dans le monde de savoir que sas.eleves.ens.fr
répond
+à l'adresse 129.199.129.11
. Chaque site doit disposer d'un
+DNS, connaissant les machines locales, et pouvant interroger les
+autres DNS. Les DNS communiquent par paquets UDP sur le port 53.
+
+Par connexion TCP sur le port 25, ce protocole permet d'échanger des
+courriers électroniques. De façon similaire au transport des paquets
+IP, un courrier peut effectuer quelques sauts (à chaque fois sous la
+forme d'une connexion TCP) entre serveurs de mails avant d'arriver à
+destination. Par exemple, à l'ENS, tout courrier sortant passe par
+nef.ens.fr
.
+
+Ce protocole de transfert de fichiers utilise deux connexions TCP, sur +les ports 20 et 21 (celle sur le port 20 sert aux données, celle sur +le port 21 transporte les commandes). +
++Créé par Sun Microsystems, ce protocole de partage de disques permet, +à l'ENS, de pouvoir manipuler ses fichiers quelle que soit la station +qu'on utilise. Alors qu'il est souvent décrié, ses versions modernes +sont fort acceptables, pourvu que le réseau sous-jacent soit +rapide. Il utilise des paquets UDP, sur le port 2049. +
++C'est le coeur du World Wide Web, qui n'est qu'une application +d'Internet, récente de surcroît (1990). Par connexion TCP sur le port +80 du serveur Web, le client obtient le contenu d'une page +(normalement en langage HTML) et divers autres types de fichiers +(notamment les images). Une adresse Web (URL) commence par le mot-clé +http, indiquant le protocole utilisé, puis contient le nom du serveur +Web, puis enfin le nom du fichier (avec éventuellement des répertoires +et des sous-répertoires) sur ce serveur. +
+
Figure 5 : Consultation de
+http://www.ens.fr/index.html
+Bizarrement, tout cet édifice aux proportions bibliques fonctionne la +plupart du temps. Néanmoins, quand une rupture générale de la Force +arrive, on peut se retrouver avec beaucoup de problèmes, tous +différents. Voici quelques spécimens: +
+
+Deux routeurs se renvoient des paquets, chacun ayant décidé que Le Bon
+Chemin passe par l'autre. Cela se diagnostique avec la commande Unix
+traceroute
. Solution : maudire Renater (le fournisseur d'accès
+Internet de l'ENS, grand spécialiste du tennis de table) et attendre
+que les routeurs oublient d'être stupides.
+
+Les DNS forment une structure hiérarchique qui a tendance à s'écrouler
+d'un coup. Dans ces conditions, tout semble figé, sauf si on utilise
+directement les adresses numériques; mais il est difficile de retenir
+par coeur 4 milliards d'adresses... Le diagnostic : la commande
+host
sur un hôte connu (www.google.com
par
+exemple) bloque et ne répond pas.
+
+Votre station est bloquée, des messages « NFS server not +responding, still trying » apparaissent. C'est typique du serveur +NFS (celui qui possède, physiquement, les disques partagés) qui a pris +des vacances. Il faut attendre le reboot du serveur. NFS étant bien +fait, cela débloquera les machines sans conséquence funeste pour les +opérations en cours. +
++NIS, alias les Pages Jaunes, est le protocole permettant de partager +les mots de passe entre les stations. Pour l'utilisateur final, les +conséquences sont semblables à un plantage NFS : il faut attendre le +retour du serveur NIS. Une fois qu'il est revenu, tout remarche, rien +n'a été perdu. +
++Une partie du réseau est à genoux. La plupart des paquets s'égarent, +tout va lentement, c'est horrible. Pas de solution, sinon espérer que +de nouvelles lignes seront bientôt mises en place, pester contre ces +milliers de crétins qui ne pensent qu'à récupérer les dernières photos +de Pamela Anderson, et revenir se connecter à une heure plus adaptée +(pour les États-Unis, la bonne heure est 6 heures du matin : les +Américains sont couchés, les Européens pas encore levés). +
++Il existe beaucoup d'autres pannes possibles, plus ésotériques. Elles +sont la cause de certaines de ces discussions d'informaticiens que +personne ne comprend, mais qui semblent les amuser follement. +
++Le cours d'Architecture et Systèmes comprend une partie animée par +Jacques Beigbeder, qui décrit, entre autres, le fonctionnement du +réseau. +
++Les gens motivés se référeront aux RFC (Request For +Comments). Ce sont les documents de référence ; on les trouve là : +http://www.ietf.org/rfc.html +
++Le protocole IP est décrit dans la RFC 791. +
+ +Les touches Majuscule et AltGr du clavier azerty français permettent + de taper un certain nombre de symboles, mais ceux-ci ne suffisent même + pas à saisir tous les caractères utilisés en français : il manque par + exemple œ, «, »... Sous Unix/Linux, il est possible de taper + facilement de nombreux autres caractères, grâce à la touche + Compose.
+Sur les PC sous Linux, la touche Compose est généralement celle sui + représente un « menu », entre la touche Ctrl et la touche « fenêtre », + en bas à droite du bloc principal du clavier. On s'en sert de la façon + suivante : on appuie sur Compose, puis (sans tenir Compose + appuyée) sur deux autres + touches (ou parfois plus), par exemple :
+
+ compose accent lettre
+
+ +On associe une ponctuation, représentant l'accent, à la lettre qui porte +l'accent. Les ponctuations en question sont les suivantes :
+Apostrophe | +
+ '
+ |
+ Accent aigu | +
Backquote | +
+ `
+ |
+ Accent grave | +
Chapeau | +
+ ^
+ |
+ Accent circonflexe | +
Tréma | +
+ "
+ |
+ Tréma ou deux points | +
Tilde | +
+ ~
+ |
+ Tilde | +
Virgule | +
+ ,
+ |
+ Cédille | +
+ L'utilisation de Compose ne se limite pas aux lettres accentuées : + elle marche pratiquement dès que le caractère qu'on veut taper peut se + voir comme la « superposition » de deux caractères du clavier. Par + exemple : +
+
+ compose , c
+ |
+ donne | +
+ ç
+ |
+
+ compose ' E
+ |
+ donne | +
+ é
+ |
+
+ compose ~ n
+ |
+ donne | +
+ ñ
+ |
+
+ compose o e
+ |
+ donne | +
+ œ
+ |
+
+ compose < <
+ |
+ donne | +
+ «
+ |
+
+ compose > >
+ |
+ donne | +
+ »
+ |
+
(Sur des configurations un peu anciennes, certains + caractères, notamment œ, peuvent ne pas être disponibles.)
+ Sur les stations Sun avec un clavier qwerty, on peut aussi taper
+ certains accents avec la touche Méta. La touche Méta est celle avec le
+ losange noir ou blanc de part et d'autre de la barre d'espace). On
+ s'en sert comme de SHIFT
ou CONTROL
.
+«méta
lettre » donne une lettre accentuée,
+mais de manière moins intuitive que compose
. On peut se servir du
+tableau suivant. Dans les colonnes figure d'abord le caractère associé à
+méta
, puis le résultat entre parenthèses. Ainsi, pour obtenir le
+«ô», il faut taper méta-t
.
+Ne figurent pas dans ce tableau méta-q
(ñ
)
+et méta-g
(ç
).
+
Lettre | +Accent grave | +Accent aigu | +Accent circonflexe | +tréma/ 2 points | +
---|---|---|---|---|
a | +` (à) | +a (á) | +b (â) | +c (ã) | +
e | +h (è) | +i (é) | +j (ê) | +k (ë) | +
i | +l (ì) | +m (í) | +n (î) | +o (ï) | +
o | +r (ò) | +s (ó) | +t (ô) | +u (õ) | +
u | +y (ù) | +z (ú) | +{ (û) | +| (ü) | +
Le guillemet gauche «
s'obtient avec avec
+méta-+
e le guillemet droit avec méta-;
.
+
Nous vous rappelons que les majuscules accentuées sont autorisées, +et même obligatoires d'après l'Imprimerie Nationale, contrairement à +tout ce qu'on a pu vous raconter... Il y avait tolérance tant que les +machines à écrire puis les logiciels ne permettaient pas d'en +taper. Mais si c'est possible, vous devez accentuer vos majuscules. Si +Word les fait moches, c'est de sa faute... +
++Il y a des situations où pour des raisons historiques d'hégémonie +anglophone sur le réseau, vous ne devez pas utiliser d'accents ni de +caractères autres que ceux que vous présente le bête clavier +QWERTY :
+Pour en savoir davantage, allez voir ces paragraphes :
+
+Cette page récapitule la façon d'obtenir les accents isolatin-1 sur les
+stations Sun, soit directement avec les touches méta
ou
+compose
, soit indirectement en utilisant le codage LaTeX ou les
+entités HTML.
+
+D'autres passages de la documentation des tuteurs traitent des accents :
+(Comment
+ taper des accents,
+Les
+ accents et LaTeX.
+Cette page fait la synthèse de ce qui est expliqué dans ces
+diverses pages, à l'exception des question d'usage. Nous vous conseillons donc
+de vous reporter, le cas échéant, au passage concernant
+les accents et le
+courrier électronique. Nous vous rappelons au passage que les majuscules
+prennent des accents, comme indiqué dans les
+questions
+fréquemment posées sur le groupe de discussion
+fr.lettres.langue.francaise
.
+
+Le code le plus répandu dans le monde Unix est l'ASCII (American Standard Code +for Information Interchange). C'est un petit code, prévu pour 95 signes +américains, et sans accents. +
++La famille de codes ISO-8859 est de l'ASCII étendu : il reprend les 128 +codes ASCII, et complète avec des codes «locaux», c'est-à-dire des accents et +divers signes. +
++La variante isolatin-1 comporte tous les signes diacritiques nécessaires pour +écrire le francais, sauf le oe minuscule et majuscule (œ et Œ), +et le y tréma majuscule (Ÿ). Dans les travaux en cours, l'ISO-8859-1 +s'intègre dans une norme plus générale, conçue pour unifier tous les jeux de +caractères de la planète. La norme en question répond au doux nom +d'ISO-10646... dont on risque d'entendre parfois parler dans certains +milieux. +
++Le tableau qui va suivre ne recense pas tous les caractères isolatins-1 : +on s'est limité aux différents accents et à certains signes courants +(guillemets français, paragraphe, etc). +
+méta
: on appuie sur la
+touche méta
en même temps que sur la touche concernée, comme avec
+shift
ou control
. M-i
signifie appuyer
+en même temps sur la touche méta
et la touche i
.
+M-E
signifie appuyer en même temps sur méta
et le
+E majuscule, donc E
et shift
en même temps.
+compose
: on appuie
+sucessivement sur sur la touche compose
, puis sur les caractères
+qui composent l'accent. C , c
signifie appuyer sur
+compose
, puis la virgule, puis le c
. C ^
+e
signifie appuyer sur compose
, puis sur le chapeau (donc
+shift-6
), puis sur le e
.
+conna\^itre
ou conna\^\i tre
.
+On indique ici la version évoluée, sans le backslash devant le i
+pour ôter le point. On a aussi choisi d'indiquer les guillemets ouvrants et
+fermants sous la forme <<....>>
.
+Pour pouvoir utiliser des accents 8 bits dans le source et obtenir des accents
+dans le dvi
, il suffit d'ajouter les ligne suivantes dans
+l'entête de son document :
++\usepackage[latin1]{inputenc} % accents 8 bits dans le fichier +\usepackage[T1]{fontenc} % accents codés dans la fonte ++
< | < | (lower than) |
> | > | (greater than) |
& | & | (ampersand) |
" | " | (quotation) |
Accent | +Aspect | +LaTeX | +HTML | +méta | +compose | +
---|---|---|---|---|---|
a accent grave | +à | +\`a | +à | +M-` | +C ` a | +
A accent grave | +À | +\`A | +À | +M-@ | +C ` A | +
a accent aigu | +á | +\'a | +á | +M-a | +C ' a | +
A accent aigu | +Á | +\'A | +Á | +M-A | +C ' A | +
a accent circonflexe | +â | +\^a | +â | +M-b | +C ^ a | +
A accent circonflexe | +Â | +\^A | +Â | +M-B | +C ^ A | +
a tilde | +ã | +\~a | +ã | +M-c | +C ~ a | +
A tilde | +Ã | +\~A | +Ã | +M-C | +C ~ A | +
a tréma | +ä | +\"a | +ä | +M-d | +C " a | +
A tréma | +Ä | +\"A | +Ä | +M-D | +C " A | +
a rond | +å | +\aa | +å | +M-e | +C * a | +
A rond | +Å | +\AA | +Å | +M-E | +C * A | +
ae ligaturé | +æ | +\ae | +æ | +M-f | +C a e | +
AE ligaturé | +Æ | +\AE | +Æ | +M-F | +C A E | +
e accent grave | +è | +\`e | +è | +M-h | +C ` e | +
E accent grave | +È | +\`E | +È | +M-H | +C ` E | +
e accent aigu | +é | +\'e | +é | +M-i | +C ' e | +
E accent aigu | +É | +\'E | +É | +M-I | +C ' E | +
e accent circonflexe | +ê | +\^e | +ê | +M-j | +C ^ e | +
E accent circonflexe | +Ê | +\^E | +Ê | +M-J | +C ^ E | +
e tréma | +ë | +\"e | +ë | +M-k | +C " e | +
E tréma | +Ë | +\"E | +Ë | +M-K | +C " E | +
i accent grave | +ì | +\`i | +ì | +M-l | +C ` i | +
I accent grave | +Ì | +\`I | +Ì | +M-L | +C ` I | +
i accent aigu | +í | +\'i | +í | +M-m | +C ' i | +
I accent aigu | +Í | +\'I | +Í | +M-M | +C ' I | +
i accent circonflexe | +î | +\^i | +î | +M-n | +C ^ i | +
I accent circonflexe | +Î | +\^I | +Î | +M-N | +C ^ I | +
i tréma | +ï | +\"i | +ï | +M-o | +C " i | +
I tréma | +Ï | +\"I | +Ï | +M-O | +C " I | +
o accent grave | +ò | +\`o | +ò | +M-r | +C ` o | +
O accent grave | +Ò | +\`O | +Ò | +M-R | +C ` O | +
o accent aigu | +ó | +\'o | +ó | +M-s | +C ' o | +
O accent aigu | +Ó | +\'O | +Ó | +M-S | +C ' O | +
o accent circonflexe | +ô | +\^o | +ô | +M-t | +C ^ o | +
O accent circonflexe | +Ô | +\^O | +Ô | +M-T | +C ^ O | +
o tilde | +õ | +\~o | +õ | +M-u | +C ~ o | +
O tilde | +Õ | +\~O | +Õ | +M-U | +C ~ O | +
o tréma | +ö | +\"o | +ö | +M-v | +C " o | +
O tréma | +Ö | +\"O | +Ö | +M-V | +C " O | +
o barré | +ø | +\o | +ø | +M-x | +C / o | +
O barré | +Ø | +\O | +Ø | +M-X | +C / O | +
u accent grave | +ù | +\`u | +ù | +M-y | +C ` u | +
U accent grave | +Ù | +\`U | +Ù | +M-Y | +C ` U | +
u accent aigu | +ú | +\'u | +ú | +M-z | +C ' u | +
U accent aigu | +Ú | +\'U | +Ú | +M-Z | +C ' U | +
u accent circonflexe | +û | +\^u | +û | +M-{ | +C ^ u | +
U accent circonflexe | +Û | +\^ | +Û | +M-[ | +C ^ U | +
u tréma | +ü | +\"u | +ü | +M-| | +C " u | +
U tréma | +Ü | +\" | +Ü | +M-\ | +C " U | +
n tilde | +ñ | +\~n | +ñ | +M-q | +C ~ n | +
N tilde | +Ñ | +\~N | +Ñ | +M-Q | +C ~ N | +
c cédille | +ç | +\c c | +ç | +M-g | +C , c | +
C cédille | +Ç | +\c C | +Ç | +M-G | +C , C | +
y accent aigu | +ý | +\'y | +ý | +M-} | +C ' y | +
Y accent aigu | +Ý | +\'Y | +Ý | +M-] | +C ' Y | +
double s allemand | +ß | +\ss | +ß | +M-_ | +C s s | +
guillemet français ouvrant | +« | +<< | +« | +M-+ | +C < < | +
guillemet français fermant | +» | +>> | +» | +M-; | +C > > | +
paragraphe | +§ | ++ | ¶ | +M-' | +C s o | +
copyright | +© | ++ | © | +M-) | +C c 0 | +
espace insécable | ++ | ~ | + | +M-SPC | +C SPC SPC | +
-h
, -?
et --help
+ /usr/share/doc/
+ Unix est un système d'exploitation +complexe. Il existe des centaines de commandes, la plupart avec des +options. Comment vous débrouiller, apprendre à utiliser une commande, +savoir quelle commande utiliser pour faire telle chose ? Heureusement, +Unix dispose aussi d'une aide abondante et très utile. +
++L'aide la plus précieuse, la plus complète et la plus importante, +c'est le manuel. Comme un livre, il est divisé en pages, chaque page +correspondant à une commande ou à un concept précis. C'est pour cette +raison qu'on parle de pages de man. Les pages de manuel se +présentent comme un fichier texte : pas de liens, pas d'images, on ne +peut pas cliquer. Il y a seulement un peu de mise en page. Bref, c'est +plutôt austère ! C'est que les pages de man ne sont pas des tutoriels, +mais des références. Souvent cependant, s'il existe un manuel plus +complet, la fin de la page de man indique où le trouver. +
+
+Le principe est simple : pour lire l'aide correspondant à telle
+commande ou concept, c'est man commande
.
Ainsi, pour obtenir des renseignements sur la
+commande man
elle-même :
+
sas ~ $ man man
+
+ (Sous KDE, vous pouvez aussi taper
+ man:commande
dans la barre d'adresse de Konqueror, par
+ exemple man:man
.)
+Vous verrez alors apparaître ceci : +
++User Commands man(1) + + + +NAME + man - format and display the on-line manual pages + manpath - determine user's search path for man pages + +SYNOPSIS + man [-acdfhkKtwW] [-m system] [-p string] [-C config_file] + [-M path] [-P pager] [-S section_list] [section] name ... + +DESCRIPTION + man formats and displays the on-line manual pages. This + version knows about the MANPATH and (MAN)PAGER environment + variables, so you can have your own set(s) of personal man +(...) ++
+Comme vous pouvez le voir, c'est en anglais. Comme dans beaucoup +d'autres domaines, l'anglais est la langue standard en +informatique. Les documentations Unix sont écrites d'abord en anglais, +et éventuellement traduites. Ne partez pas en courant, l'anglais +technique est quand même moins difficile à comprendre que du +Shakespeare. Sauf si vous êtes beaucoup plus à l'aise en français, +préférez les versions anglaises des documentations : elles sont souvent +plus à jour, et il y a parfois des erreurs de traduction. +
++Chaque page de man a la même structure. Une fois que vous vous êtes +familiarisé avec celle-ci, vous savez rapidement à chercher +l'information. Voici une description des principales rubriques qu'on +peut trouver : +
+man(1)
dans
+l'exemple ci-dessus), vous est indiquée la section du
+manuel où se trouve la page de man demandée.-
sont des options.less
!
+Une fois la page de man lancée, vous pouvez parcourir la page en
+utilisant les mêmes commandes que le pager
+less
, car la commande man
utilise
+précisément less
.
+
less
, qui permet de faire des recherches dans le texte;
+de revenir en arrière, et surtout, qui affiche le texte par écrans de
+25 lignes, permettant ainsi de lire à sa vitesse avant de passer à la
+suite. Faites man less
pour en savoir plus !
++Il existe beaucoup de commandes différentes pour se déplacer dans une +page de man, voici les plus importantes : +
+Action | +Résultat | +
---|---|
barre d'espace | +Passage à l'écran suivant | +
flèche haut | +Revenir en arrière dans le fichier | +
/tagada ENTER | +Chercher la suite de caractère « tagada » +dans la suite de la page | +
?tagada ENTER | +Chercher la suite de caractère « tagada » +plus haut dans la page | +
g | +Retourner au tout début de la page | +
G | +Aller à la fin de la page | +
h | +Affiche un résumé des commandes de
+less |
+
q | +Quitte la lecture du manuel | +
+Comme nous vous l'avons dit, le manuel est divisé en grandes sections, +tout comme un livre peut être divisé en chapitres. Voici (les ?) deux +organisations habituelles. Les PC sous Ubuntu se conforment plutôt à la +deuxième. +
++ | Qu'est-ce que c'est ? | +|
---|---|---|
Section | +System V | +BSD | +
1 | +Commandes utilisateur | +Idem | +
2 | +Appels systèmes | +Idem | +
3 | +Bibliothèques | +Idem | +
4 | +Fichiers de configuration et +d'administration | +Points d'entrées du noyau, pilotes | +
5 | +Divers | +Fichiers de configuration | +
6 | +Jeux | +Idem | +
7 | +Entrées-sorties, fichiers spéciaux | +Standards | +
8 | +Commandes d'administration | +Idem | +
9 | +_ | +Fonctions présentes dans le noyau | +
+Il arrive qu'une même commande ait plusieurs pages de man dans des
+sections différentes. C'est par exemple le cas de mkdir
,
+qui a une page dans la section 1 (commandes utilisateurs) et 2 (appels
+systèmes). Par défaut, man
+mkdir
renvoie à la section 1 (la page dans la section 2 est
+mentionnée dans le SEE ALSO). Pour demander explicitement la page de
+la section 2 :
+
sas ~ $ man 2 mkdir
+
+ + Il existe également des sections spécifiques à l'ENS : la section I, + qui contient des informations pas nécessairement à jour sur l'École + et la section 42 qui contient des informations peut-être un peu plus + à jour sur l'École. (Il existe également une section A comprenant + quatre pages traitant de mathématiques.) +
+
+ Pour un point de départ, essayez man I intro
ou
+ man 42 intro
.
+
apropos
+
+Le problème, c'est que vous, vous ne savez même pas quelle est la
+bonne commande à utiliser. Tout ce que vous savez, c'est que vous
+voulez créer un fichier MP3 à partir de l'un de vos CD. Pour cela, on
+peut utiliser la commande apropos
. Cette commande fait
+des recherches dans une base de données contenant le nom des
+commandes, et leur description. Syntaxe de la commande : apropos
+<mot clef>
. Attention, le mot clef doit être en
+anglais. Exemple d'utilisation :
+
sas ~ $ apropos MP3
+lame lame (1) - create mp3 audio files
+
+
+Voici la réponse : il faut utiliser la commande lame
, qui
+« crée des fichiers audio mp3 ». Pour savoir comment l'utiliser,
+consultez sa page de man, qui se trouve dans la section 1 du
+manuel. Ça n'est pas toujours aussi simple : apropos
peut
+vous donner de longues réponses. Utilisez alors le pipe (|), qui
+connecte la sortie standard d'une commande (c'est-à-dire le résultat
+visible de cette commande) sur l'entrée standard d'une autre
+commande. Dans notre cas, cela signifie que les lignes produites par
+apropos
pourront être lues ensuite avec
+less
, comme un fichier.
+
sas ~ $ apropos editor | less
+Curses::UI::TextEditor Curses (3) - Create and manipulate texteditor widgets
+FvwmConsoleC.pl FvwmConsoleC.pl (1) - Command editor for FVWM command in put interface
+Tk::ColorEditor Tk (3) - a general purpose Tk widget Color Editor
+aa_createedit aa_createedit (3) - Simple interactive line editor provided as helper function.
+aa_edit aa_edit (3) - Simple interactive line editor.
+aa_editkey aa_editkey (3) - Notify the line editor about keypress.
+cooledit cooledit-3.17.5 (1) - Full featured text editor for the X Window System, Version 11.
+dotty dotty (1) - A Customizable Graph Editor
+ed ed (1) - text editor
+ex vim (1) - Vi IMproved, a programmers text editor
+ile ile (1) - An input line editor for UNIX (Input Line Editor)
+ile-2.7 ile (1) - An input line editor for UNIX (Input Line Editor)
+(...)
+
+ +Là, il y a à boire et à manger... Il faut regarder dans quelle section se trouve chacune des propositions +pour faire la différence entre commandes que vous pouvez utiliser +(section 1) et autres. +
+apropos
n'existe pas. Vous pouvez faire la même chose
+grâce à l'option -k
de man
: man -k
+<mot clef>
.
++Très souvent, les commandes ont un petit fichier d'aide rudimentaire, +qui vous renseignera sur la syntaxe de la commande (pour savoir ce que +fait exactement la commande, ou pour compléter, c'est le rôle des pages de man). Il y a plusieurs manières d'obtenir +cette aide rudimentaire : +
+-h
, -?
et --help
+ C'est un moyen simple pour obtenir un peu d'aide sur une +commande. Exemple :
+earendil ~ $ mkdir --help
+usage: mkdir [-pv] [-m mode] directory ...
+
+
+Ici, on vous indique que la commande mkdir
admet les
+options -p
, -v
, -m
+<mode>
, et que sinon c'est mkdir <nom du
+fichier>
.
+
+Attention, d'une part la syntaxe varie : une commande peut comprendre
+-h
mais pas --help
et -?
, ou
+inversement. Ensuite, ça ne marche pas toujours. Ainsi, si vous
+essayez de demander de l'aide à la commande df
(affiche
+l'espace disque
+disponible) :
+
sas ~ $ df -h
+Filesystem Size Used Avail Use% Mounted on
+/dev/dsk/c0t0d0s0 189M 92M 79M 54% /
+/dev/dsk/c0t0d0s4 754M 595M 106M 85% /usr
+/dev/dsk/c0t8d0s5 995M 467M 469M 50% /var
+
+
+Pour df
, l'option -h
veut dire tout autre
+chose...
+
+Cette astuce consiste à donner une option complètement fantaisiste à +la commande. Celle-ci va réagir en disant que ce n'est pas comme ça +qu'on fait, et vous indiquera brièvement quelles sont les syntaxes +correctes possibles. Exemple : +
+sas ~ $ cal -xyz
+cal: illegal option -- x
+usage: cal [ [month] year ]
+
+
+On utilise une option -xyz
pour être sûr que ce n'est pas
+une option existante. Ça marche : cal
(petit programme qui affiche
+le calendrier du mois) se plaint que cette syntaxe n'existe pas, et
+vous indique ce qui est possible.
+
De même (ou plutôt, en plus), les programmes avec une interface
+graphique ou semi-graphique ont souvent une commande qui donne accès à
+leur manuel. Par exemple, le lecteur de courrier électronique mutt
+dispose d'une liste de commande accessible en appuyant sur
+?
. Les programmes faisant partie de KDE ont
+presque toujours un menu Aide (ou Help) complètement à droite de leur
+barre de menu, malheureusement, ce manuel lest souvent incomplet ou peu
+à jour. Toujours sous KDE, avec certains logiciels, on peut afficher une
+bulle d'aide détaillée sur un élément de l'interface en cliquant sur le
+point d'interrogation en haut à droite de la fenêtre, puis sur l'élément
+en question.
+Les pages info sont de l'aide en ligne, tout comme les pages de +man. Le format info est une particularité des programmes écrits par le +Projet +GNU, une communauté de développeurs qui est l'auteur d'une grande +quantité d'utilitaires et de programmes. Par exemple, la documentation +d'Emacs (un éditeur de texte) ou encore +celle de tar (un +archiveur), est au format info. +
++Les pages info remplissent les mêmes fonctions que les pages de man, +mais la navigation est plus compliquée : c'est dû à l'organisation +hiérarchique des pages info, avec des branches, des sous-branches, +etc. Ce fonctionnement convient bien à de gros projets comme Emacs, +mais peut sembler plus lourd pour des programmes avec une +documentation moins importante. +
+
+Sur les machines sur lesquelles il est installé, le plus
+simple est d'utiliser le programme info
, qui permet de
+naviguer dans les pages info. La syntaxe est aussi simple que celle de
+man
: info <commande>
. Par exemple,
+pour obtenir les pages info d'info
lui-même :
+
sas ~ $ info info
+
+
+Sous KDE, vous pouvez aussi taper info:<commande>
+dans la barre d'adresse de Konqueror.
+
+Les programmes liés à TeX et les packages LaTeX viennent souvent avec
+des documentations très complètes, mais elle est sous forme de fichiers
+pdf ou texte brut (ou d'autres formats variés), et n'est pas toujours
+facile à trouver au premier abord. Heureusement, la commande
+texdoc
permet souvent de trouver instanément le bon
+document. Par exemple, pour obtenir l'aide du package LaTeX
+multicol
, il suffit de faire
+
trimaran ~ $ texdoc multicol
+
+
+Le programme texdoctk
affiche un petit index de cette
+documentation.
+
/usr/share/doc/
+
+Parfois, un programme vient avec un manuel, des fichiers d'exemples, ou
+une autre sorte de documentation qui ne rentre pas dans les sources de
+documentation standard décrites ci-dessus. (Il peut y avoir les deux :
+ainsi, beaucoup de logiciels ont une page de man minimaliste qui renvoie
+à un manuel complet au format HTML ou PDF.) Cette documentation « non
+standard » se trouve habituellement dans les répertoires
+/usr/share/doc/nom du programme/
+ou encore
+/usr/share/doc/nom du programme-doc/
.
+Pensez à regarder !
+
+Cette page a pour but de vous apprendre à compresser et à archiver des +fichiers sous Unix. Mais d'abord, commençons par expliquer chacune de +ces notions. +
+Compresser un fichier, c'est le traiter d'une telle +sorte qu'il puisse occuper moins d'espace disque. Le principe de base de +la compression est d'éviter les redondances ; par exemple, au lieu +d'écrire 1111111111111, il est plus économique d'écrire qu'il y a +treize « 1 » à la suite.
++Le but de l'archivage n'est pas de réduire l'espace +disque d'un fichier, mais de rassembler plusieurs fichiers en un seul, +afin de faciliter leur manipulation. +
++On peut compresser des fichiers archivés, et archiver des fichiers +compressés. +
++Dans les deux cas, le fichier est d'abord codé par un programme +(de compression ou d'archive). Mais pour utiliser des fichiers (par +exemple pour les lire ou les modifier), il faut les +décoder. Cette page vous apprendra donc comment +compresser et décompresser, archiver et désarchiver des +fichiers. +
++Compresser permet d'économiser de l'espace disque ; associée à +l'archivage, la compression se révèle très utile. En particulier, à +l'ENS, les ressources en espace disque ne sont pas illimitées ; +consultez la page des tuteurs consacrée à +l'espace disque pour plus d'informations. +
+Gzip
(GNU zip) est un outil de compression (extension :
+.gz) qui a plus ou moins remplacé compress
: il est
+plus puissant que compress
, et il est fondé, lui, sur des
+algorithmes libres. Gunzip
peut décompresser des fichiers
+compressés par gzip
, compress
ou
+pack
. En revanche, il ne peut pas décompresser des
+fichiers .zip (il faut utiliser unzip
).
+
+Pour des raisons historiques, gzip
est encore le plus
+utilisé des formats de compression, quand bien même il n'est pas le plus
+puissant.
+
gzip
+La grande majorité des programmes est incapable de lire directement des
+fichiers compressés avec gzip
: il faut préalablement
+les décompresser. Il y a cependant des exceptions notables :
zcat
équivaut à la
+commande cat
, mais pour des fichiers compressés avec
+gzip
;less
détecte et
+décompresse automatiquement les fichiers compressés avec
+gzip
(ce qui n'est pas le cas de la commande
+more
) ;gv
(Ghostview) décode
+automatiquement les fichiers compressés avec gzip
;
+vous pouvez donc sans problème compresser vos fichiers PostScript ou
+PDF, car vous pourrez les lire sans avoir à les décompresser
+préalablement.gzip
Opération | +Commande | +
---|---|
Compresser un fichier | +
+ gzip fichier
+ |
+
Compression optimisée d'un fichier (pour fichiers > 100 Ko) | +
+ gzip -9 fichier
+ |
+
Décompresser un fichier gzippé | +
+ gunzip fichier.gz
+ |
+
Lire le contenu d'un fichier gzippé (sans le décompresser) | +
+ zcat fichier.gz
+ |
+
+Bzip2 est un outil de compression (extension : .bz2) qui est plus lent +que gzip, mais plus puissant. Il est libre et fondé sur un algorithme +libre, lui aussi. +
+bzip2
+Comme pour gzip
, la grande majorité des programmes est
+incapable de lire directement des fichiers compressés avec
+bzip2
, à quelques exceptions près :
bzcat2
équivaut à la
+commande cat
, mais pour des fichiers compressés avec
+bzip2
;less
détecte et
+décompresse automatiquement les fichiers compressés avec
+bzip2
(ce qui n'est pas le cas de la commande
+more
) ;gv
(Ghostview) décode
+automatiquement les fichiers compressés avec bzip2
;
+vous pouvez donc sans problème compresser vos fichiers PostScript ou
+PDF, car vous pourrez les lire sans avoir à les décompresser
+préalablement. bzip2
Opération | +Commande | +
---|---|
Compresser un fichier | +
+ bzip2 fichier
+ |
+
Compression optimisée d'un fichier (pour fichiers > 100 Ko) | +
+ bzip2 -9 fichier
+ |
+
Décompresser un fichier gzippé | +
+ bunzip2 fichier.gz
+ |
+
Lire le contenu d'un fichier gzippé (sans le décompresser) | +
+ bzcat2 fichier.gz
+ |
+
+Tar est un programme qui permet d'archiver et de +désarchiver. C'est l'un des plus courants dans le monde Unix. +
+tar
Opération | +Commande | +
---|---|
Créer une archive tar | +
+ tar cf fichier.tar fichiers... à... archiver
+ |
+
Voir le contenu d'une archive tar | +
+ tar tf fichier.tar
+ |
+
Désarchiver un fichier tar | +
+ tar xf fichier.tar
+ |
+
Extraire certains fichiers d'une archive tar | +
+ tar xf fichier.tar les... fichiers... en... question
+ |
+
tar
avec gzip
tar
est souvent utilisé avec gzip
. Les
+fichiers ainsi produits ont des extensions en .tar.gz ou ou .tgz. Pour
+les manipuler, on utilise les mêmes commandes que tar
seul,
+en ajoutant un z à la fin des options (exemple : pour désarchiver
+fichier.tgz, taper : tar xfz fichier.tgz
).
+
+Zip est un outil de compression et d'archivage +(extension : .zip) que vous connaissez presque forcément. Il est +compatible avec ZIP de PKWARE et avec WINZIP, qui sont le standard sous +DOS/Windows (mais pour autant ce n'est pas un clone). C'est le format de +compression le plus pratique pour échanger des documents de UNIX à +Windows ou Mac (le format de document le plus pratique étant PDF, on +vous le rappelle). +
+Remarque : zip n'est pas seulement un programme
+d'archivage, car il permet d'économiser de l'espace disque en
+compressant les fichiers ; et ce n'est pas seulement un programme
+de compression, car il rassemble plusieurs fichiers en un seul. Son
+équivalent dans le monde Unix n'est donc ni gzip
ni
+tar
, mais le format tar.gz
ou tgz
+(c'est-à-dire une archive tar
compressée avec
+gzip
).
+
zip
Opération | +Commande | +
---|---|
Créer une archive ZIP | +
+ zip fichier.zip fichiers... à... archiver
+ |
+
Voir le contenu d'une archive ZIP | +
+ unzip -l fichier.zip
+ |
+
Désarchiver un fichier ZIP | +
+ unzip fichier.zip
+ |
+
Désarchiver un fichier ZIP dans un répertoire donné | +
+ unzip -d répertoire fichier.zip
+ |
+
Extraire tous les fichiers d'une archive ZIP, sauf certains | +
+ unzip fichier.zip -x fichiers... à... ne... pas... extraire
+ |
+
+Le format JAR (pour Java ARchive) a été introduit dans la version 1.1 du +Java Development Kit. C'est un format fondé sur ZIP. Les archives JAR +ont une extension .jar. Mozilla, par exemple, utilise des archives JAR. +
+jar
Opération | +Commande | +
---|---|
Créer une archive JAR | +
+ jar cf fichier.jar fichiers... à... archiver
+ |
+
Voir le contenu d'une archive JAR | +
+ jar tf fichier.jar
+ |
+
Désarchiver un fichier JAR | +
+ jar xf fichier.jar
+ |
+
Extraire certains fichiers d'une archive JAR | +
+ jar xf fichier.jar les... fichiers... en... question
+ |
+
UNARJ sert à désarchiver les fichier en .arj.
+ Le format .arj était très utilisé sous DOS. Il n'est plus très
+utilisé aujourd'hui, ni dans le monde Unix (qui préfère
+gzip
), ni dans le monde Windows (qui préfère
+zip
). Il est donc fortement déconseillé d'utiliser ce
+format pour compresser des fichiers.
+
arj
Opération | +Commande | +
---|---|
Désarchiver un fichier ARJ dans le fichier courant | +
+ unarj e fichier.arj
+ |
+
Voir le contenu d'une archive ARJ | +
+ unarj l fichier.arj
+ |
+
Tester un fichier ARJ | +
+ unarj t fichier.arj
+ |
+
Désarchiver dans les répertoires prévus par l'archive ARJ | +
+ unarj x fichier.arj
+ |
+
+LHa est un outil de compression et d'archivage pour le format LHarc +(extension : .lhz). LHa est principalement utilisé sous DOS. C'est un +outil puissant. LHa n'est plus vraiment utilisé aujourd'hui. +
+LHa
Opération | +Commande | +
---|---|
Créer une archive LHa | +
+ lha -a fichier.lhz fichiers... à... archiver
+ |
+
Désarchiver un fichier LHa | +
+ lha -e fichier.lhz ou lha x fichier.lhz
+ |
+
Voir le contenu d'une archive LHa | +
+ lha -l fichier.lhz
+ |
+
+ZOO est un outil de compression et d'archivage (extension : .zoo) qui +utilise un algorithme de Lempel-Ziv. Le gain d'espace varie entre 20 +et 80%. ZOO n'est plus vraiment utilisé aujourd'hui. +
+ZOO
Opération | +Commande | +
---|---|
Créer une archive ZOO | +
+ zoo -add fichier.zoo fichiers... à... archiver
+ |
+
Désarchiver un fichier ZOO | +
+ zoo -extract fichier.zoo
+ |
+
Extraire certains fichiers d'une archive ZOO | +
+ zoo -extract fichier.zoo fichiers... à... extraire
+ |
+
Voir le contenu d'une archive ZOO | +
+ zoo -list fichier.zoo
+ |
+
grep mot fichiers
+ grep
+ find
+ grep mot fichiers
+ grep
mot fichiers sert à retrouver
+une chaîne de caractères dans des fichiers (zgrep
, beaucoup moins
+standard, s'utilise avec les fichiers compressés). Nous n'entrerons pas dans
+les détails de la syntaxe. Il suffit de savoir que :
+
+ *.tex
+ |
+ (étoile point tex) | +signifie « n'importe quel fichier .tex »
+(*.tex signifie « tout ce qui ne commence pas par un point et
+qui finit par .tex »). |
+
+ **/
+ |
+ (étoile étoile) | +désigne le répertoire courant et tous ses sous-répertoires. | +
+Donc : +
+Pour chercher «coucou» dans | +On tape | +
---|---|
Tous les fichiers .tex du répertoire où l'on se trouve |
+
+ grep coucou *.tex
+ |
+
Tous les fichiers du répertoire où l'on se trouve | +
+ grep coucou *
+ |
+
Tous les fichiers .tex du répertoire courant et de ses
+sous-répertoires |
+
+ grep -r --include="*.tex" coucou
+ |
+
Tous les fichiers du répertoire courant et de ses sous-répertoires | +
+ grep -r coucou .
+ |
+
+Par exemple, Toto cherche le mot «travail» dans tous les fichiers
+.tex
du répertoire où il se trouve :
+
corvette ~ $ grep travail *.tex
+caire.tex:les voit presque tous les matins, travailler par équipes de deux ou
+jordanie.tex:méridionale, le socle ancien apparaît. Le travail de l'érosion dans les
+jordanie.tex:Le pays compte également sur les remises des travailleurs expatriés qui, au
+
+
+Quand plusieurs fichiers sont parcourus, grep
indique dans quel
+fichier se trouve le mot demandé (mot au sens de «chaîne de caractères»).
+
grep
+
+Il y a différentes options à grep
, dont :
+
grep -n
: indique le numéro de la ligne où
+figure le mot.
+grep -C
( contexte) : fait figurer les deux
+lignes qui précèdent et suivent la ligne où figure le mot recherché.
+grep -i
(ignore case) : fait ignorer la
+casse des caractères (différence entre majuscules et minuscules).
+grep -c
(count) : indique le nombre de lignes
+où figure au moins une fois le mot recherché dans chacun des fichiers passés
+en revue.
++Bien entendu, ces options sont compatibles entre elles : +
+corvette ~ $ grep -nC travail caire.tex +caire.tex-371-société. On compte environ 40\,000 de ces éboueurs chiffonniers qui +caire.tex-372-vivent dans de misérables bidonvilles aux abords de la capitale. On +caire.tex:373:les voit presque tous les matins, travailler par équipes de deux ou +caire.tex-374-trois hommes, habillés comme des épouvantails, avec des chapeaux de +caire.tex-375-paille et de vieux vêtements hétéroclites; accompagnés de leurs +corvette ~ $ grep -c travail *.tex +caire.tex:1 +egypte.tex:0 +jordanie.tex:2 +syrie.tex:0 ++
Défilement : il peut arriver que le mot recherché figure +très souvent, et qu'une série de lignes se mettent à défiler sur l'écran, +parce qu'elle n'ont pas la place d'y figurer toutes. Dans ce cas, vous pouvez +taper +
+grep machin * | less+
+Le |
( pipe en anglais : tuyau) connecte la sortie
+standard d'une commande (c'est-à-dire le résultat visible de cette
+commmande) sur l'entrée standard d'une autre commande (ici
+less
); dans notre cas, cela signifie que les lignes produites
+par grep
pourront être lues avec less
, comme un
+fichier.
+
Lignes parasites : grep
passe en revue tous
+les répertoires et fichiers; quand on ne lui précise pas la nature du fichier
+(*
et non pas *.tex
), il signale tous les
+répertoires qu'il examine. Pour éliminer toutes ces lignes parasites, il faut
+ajouter 2>/dev/null
à la fin de la ligne de commande
+(/dev/null
est une sorte de poubelle où on redirige les données
+dont on veut se débarasser). Par exemple :
+
+grep coucou **/* 2>/dev/null +grep coucou **/* 2>/dev/null | less ++
Allez faire les exercices sur grep et les +expressions régulières. +
+find
+ find répertoire fichier
sert à
+retrouver un fichier selon certaines caractéristiques (nom, taille...).
+L'option -name
sert à indiquer le nom du fichier recherché :
+
+ find répertoire -name nom-du-fichier
+
+Le répertoire est ~
(tilde) quand on veut chercher dans tout son
+compte, .
(point) quand on veut chercher dans le répertoire
+courant (et ses sous-répertoires).
+
egypte.tex
(qui se
+trouve dans un répertoire geo/
) :
+corvette ~ $ find ~ -name egypte.tex /users/97/litt/toto/geo/egypte.tex
+
+~toto/histoire/moderne/documents/
il y a un fichier
+appelé chrono
et Toto se trouve dans
+histoire/
:
+corvette $ find . -name chrono ./moderne/documents/chrono
+
+Si vous ne vous rappelez que d'une partie du nom du fichier, +on utilise les jokers (voir le cours du Hublot sur +Les jokers, +numéro 2, décembre 1999). Reprenons le cas 1; Toto sait juste +qu'il y a «gypt» dans le nom du fichier; il fera ainsi sa demande : +
+corvette ~ $ find ~ -name '*gypt*' /users/97/litt/toto/geo/egypte.tex
+
+
+« *gypt*
» peut se comprendre comme « n'importe quoi avant
+et après la suite de caractères « gypt ». Les quotes
+(apostrophes) servent à garantir que les étoiles seront interprétées par
+find
, et non par le shell.
+
Find est une +commande très puissante, qui permet de chercher un fichier non +seulement en fonction de son nom, mais aussi de son type, de sa date de +modification, de sa taille... Pour toutes ces options, voir les +exercices sur find. +
+ +^C
+
+ Sous X*, pour copier un texte d'un + endroit à un autre, il suffit de le sélectionner, puis de cliquer là + où vous voulez le coller avec le bouton central de la souris. Ça fait + partie des petits trucs qui manquent beaucoup quand on est obligé + d'utiliser un autre système...
+(Il existe aussi un système de copier-coller « plus usuel », à coups + de Ctrl+C, Ctrl+V ou encore Maj+Inser. Il est indépendant du + précédent, ce qui permet par exemple de faire deux copier-coller en + même temps.)
+
+En ligne de commande, et aussi dans pas mal d'autres contextes,
+la touche TAB
(à gauche du a
sur les claviers
+français, du q
sur les claviers américains) complète les
+noms de fichiers ou répertoires quand on en a tapé les premiers
+caractères (complétion automatique).
+
+Les flèches (entre le clavier et le pavé numérique) permettent de +remonter dans les commandes entrées au clavier (flèches haut et bas) +ou de se déplacer dans la ligne de commande pour faire une correction +(flèches gauche et droite). +
+^C
+
+ La combinaison de touches ^C
+(Control-C, Ctrl-C; cancel) permet très souvent d'interrompre
+un programme (la touche Control se trouve en dessous du Shift et
+s'utilise de la même façon).
Une commande se tape dans une fenêtre terminal (ou fenêtre ou
+terminal tout court) ; dans un terminal tourne un programme
+appelé le shell
qui
+interprète les commandes, et affiche un prompt (derrière lequel on
+tape les commandes). Le prompt (l'invite en français) est de
+différentes sortes; sur la config conscrits, il indique le nom de la
+machine, le répertoire où l'on se trouve, etc.
RETURN
(Enter, Entrée).
+Pour apprendre à taper facilement des caractères qui ne figurent pas + sur le clavier, comme É, «, ø ou ß, allez voir là. Pour des caractères plus exotiques + (grec, cyrillique, arabe, chinois, symboles mathématiques...), c'est + là et là (et là pour ce qui + concerne LaTeX).
+ +qui
ne donne pas toujours des
+ informations à jour. Pour être sûr d'obtenir les bonnes informations,
+ utiliser who
.
+
+La commande qui
donne un plan de la salle Info 3
+(qui 3
, par défaut) avec les noms de machines et ceux des gens qui
+y sont physiquement logués. Même chose avec :
+
qui infi
ou qui i
donne le plan de
+l'Infirmatique.qui 4
: salle Info 4. qui s
: salle S (obsolète). qui t
: salle T (obsolète). qui p
: salle T16 dans le bâtiment de physique. qui b
: salle info dans le bâtiment de bio. qui c
: salle info dans le bâtiment de chimie. qui jourdan
ou qui j
: salle informatique
+à Jourdan. qui montrouge
ou qui m
: salle informatique
+à Montrouge. qui rezo
ou qui r
: réseau des thurnes.qui --help
donne la liste des options disponibles.
+
+Remarque : quand vous faites un qui, certaines personnes ont leur nom +souligné : ce sont des utilisateurs réguliers des stations qui en cas de +besoin peuvent vous renseigner ou vous dépanner. +
+
+Vous pouvez personnaliser votre qui : éditez le fichier
+.quialias
et regardez comment il est fait; vous avez la liste des
+tuteurs, et aussi des exemples d'alias.
+
+La commande whoami
donne le nom de la personne qui la tape.
+Ça peut vous servir quand vous trouvez une machine occupée sans son
+utilisateur (absence prolongée, ou personne mal déloguée...).
+
+Il existe aussi la commande id
+(identity), qui affiche l'identité «informatique» de la personne
+loguée : UID (user identifier; numéro d'utilisateur), et login
+correspondant, GID (group identifier; numéro de groupe) et groupe
+correspondant. Par exemple, pour tuteurs :
+
corvette ~ $ id
+uid=173(tuteurs) gid=73(tuteurs)
+
+
+Le compte tuteurs
, d'UID 173, fait partie du groupe
+tuteurs
, GID 73, dont il est d'ailleurs le seul membre (ça, c'est
+moi qui le précise, ce n'est pas dit dans la ligne qui précède; mais on peut
+généralement le déduire du fait que login et nom de groupe sont identiques).
+
id
peut être suivi d'un nom de login, pour afficher les
+informations concernant ce login.
+
+La commande who
+indique qui est logué sur la machine sur laquelle on se trouve, sur place ou à
+distance.
+
+La commande rwho
+(remote who) indique qui se trouve logué sur toutes les machines de
+la salle, sur place ou à distance.
+
+La commande finger nom-de-login
donne des
+renseignements sur la personne désignée : nom de login et «vrai» nom,
+groupe (promotion, branche : litt
, bio
,
+maths
, phy
...), dernière fois que la personne a lu
+son mail, entre autres.
+
+Il y aussi des renseignements personnels donnés par la
+personne elle-même. Vous trouverez chez vous, en tapant ls -a
,
+deux fichiers appelés .project
et .plan
. Si vous le
+les trouvez pas (cas de la config conscrits), créez-les (en les
+éditant) :
+
.project
, on n'écrit qu'une seule ligne (comme une
+citation).
+.plan
, on peut mettre plusieurs lignes (adresse,
+téléphone, où peut-on vous trouver, etc).
+
+Dans tous les cas, il ne faut pas y mettre de caractères accentués. Les
+renseignements que vous donnez dans ces fichiers apparaîtront quand vous tapez
+finger mon-login
.
+
finger nom-et/ou-prénom
donne les mêmes renseignements sur toutes
+les personnes répondant aux noms et/ou prénoms demandés. Par exemple :
+finger Stephanie
(notez l'absence d'accent) fera un finger sur
+toutes les Stéphanies qui ont un compte à l'École.
+
+Note : dans le cas où vous précisez bien un login à finger
, il
+peut être avantageux d'indiquer finger -m
+login
. L'option -m
désactive la recherche sur
+le vrai nom, et accélère considérablement les choses sur un réseau aussi
+large que celui de l'ENS.
+
+La commande fiche nom
(ne
+fonctionne qu'en salle S) permet de lire (en mode texte) les
+fiches annuaires des élèves de l'École, telles qu'elles sont saisies par
+l'équipe annuaire.
+
+On peut demander le nom, le prénom ou le surnom. Attention ! Ne pas +mettre de caractères accentués. +
++ L'annuaire des élèves est également consultable sous forme électronique (voir aussi l'ancienne + version. Il y a aussi un annuaire géré par l'admin, + avec les coordonnées de tout le personnel (élèves, profs, services + divers...) +
+configure
+ À une certaine époque, il existait un programme qui permettait de +récupérer certaines parties de la config' conscrits et de modifier +certains paramètres. Actuellement, ce programme ne fonctionne plus !
+ +Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés proposent aux nouveaux +pour leurs premiers pas avec les stations Unix. +
+La config conscrits est à l'origine conçue par Éric Brunet, et +entretenue par les gourous (les +administrateurs élèves). Plusieurs personnes y ont contribué : Florent +Hivert, Olivier Verzelen... et notamment Nicolas George cette année.
++Voici une présentation de votre écran tel qu'il apparaît juste après que +vous vous loguiez : +
+Vous pouvez taper des commandes dans les fenêtres terminal. Celles-ci
+affiche une invite (ou «prompt» en anglais) avec le nom de la machine.
+Validez vos commandes par un retour à la ligne (Enter). Dans cet exemple,
+on est sur la machine drakkar
, et on tape fortune
:
drakkar ~ $ fortune [Enter] +Don't hate yourself in the morning -- sleep till noon. +drakkar ~ $ ++
C'est certes une façon peu engageante de dialoguer avec l'ordinateur, +mais l'interface graphique des stations n'est pas assez fournie pour vous +permettre de vous en passer totalement. Il faudra notamment y avoir +recours pour changer votre +mot de passe.
+La quasi-totalité des fenêtres que vous ouvrez comporte une barre de +titre. elle sert de «poignée» pour la déplacer. En cliquant sur les +différents boutons de par et d'autre de la barre de titre, vous +découvrirez diverses fonctions (déplacer, redimensionner, iconifier...). +Pour en savoir davantage, nous vous conseillons de faire les exercices sur la config +conscrits.
++Chacun de ces boutons décorés d'un petit dessin lance un programme lorsqu'on +clique dessus : +
++ + | +Pour se déloguer. Il faut tenir le bouton de la souris appuyé et confirmer +en cliquant sur «Oui». | +
+ + | +Lance le logiciel de courrier. Par défaut, c'est pine . On
+quitte en tapant «q». |
+
+ + | +Lance un éditeur de texte. Par défaut, celui de la config conscrits
+est nano . |
+
+ + | +Lance xfm , un gestionnaire de fichiers à la souris. |
+
+ + | +Lance une nouvelle grande fenêtre terminal. | +
+ + | +Permet de détruire une fenêtre, quand plus rien d'autre ne permet de la +quitter. Ça ne sert donc qu'en dernier recours... | +
+ + | +Lance une calculatrice utilisable avec la souris. On la quitte en +cliquant sur le bouton éclair. + | +
+ + | +Ce bouton ouvre le logiciel Mozilla sur une page d'aide du site des +tuteurs. | +
+ + | +Lance le forum des élèves (messagerie interne à l'École). On passe au +message suivant en appuyant sur la barre d'espace et on quitte en +tapant «q». | +
+ + | +Lance un logiciel de news. Par défaut, c'est knews . On quitte
+en cliquant sur «Quitter». |
+
+ + | +Lance Mozilla. On quitte en sélectionnant «Exit» dans le menu +«File». | +
+ + | +Déroule le menu du fond, avec une sélection de logiciels. | +
+ + | +Vous pouvez faire apparaître la liste des fenêtres en cliquant dans +le fond d'écran avec le bouton de gauche. +Chaque ligne représente alors une des fenêtres +que vous avez ouvertes. En cliquant dessus, vous ramenez la fenêtre +correspondante au premier plan; cela évite d'avoir à bouger toutes les autres +pour la retrouver. | +
C'est une fenêtre terminal un peu spéciale, car elle affiche les +messages d'erreur du système et aussi des informations en provenance +du réseau : le menu du pot, les demandes de connexion par talk, les messages de l'imprimante, +etc.
++ + | +C'est un modèle réduit de l'écran et des fenêtres qu'il comporte. Son +intérêt consiste en le fait que l'écran réel n'occupe qu'un sixième de +l'espace (la case en haut à gauche), et en cliquant sur l'une des cinq autres +pages on obtient un écran vide dans lequel on peut lancer d'autres fenêtres. +À l'aide du bouton du milieu de la souris, on peut déplacer les modèles +réduits de fenêtres sur le plan du bureau, et ainsi disposer d'un bureau +virtuel qui fait six fois la taille de l'écran ! + | +
+Qu'en dire, sinon qu'elle est digitale parce que les montres à aiguille sont +anti-technologiques donc proscrites ? De toute façon, moins c'est beau, +mieux c'est : c'est le principe directeur de la config conscrits...
++Le menu propose divers logiciels, pour travailler comme pour jouer. Il permet +aussi de lancer de nouvelles fenêtres terminal, ainsi que de se déloguer. Pour +une présentation de l'ensemble du menu, allez consulter la page sur Le menu de la config conscrits. +
+Lorsque vous cliquez sur le fond gris de l'écran avec le bouton du +milieu ou de droite, vous faites apparaître le menu. Pour le faire +disparaître, recliquez dans le fond d'écran.
++Dans toute cette section, on suppose que vous cliquez avec le bouton +gauche de la souris, sauf cas mentionnés. Nous résumons ici les +points essentiels concernant l'utilisation de la souris. Ses possibilités sont +cependant beaucoup plus riches. +
++Déplacez la souris sur l'écran : vous remarquez que les cadres des +fenêtres changent de couleur. La fenêtre dans laquelle se trouve le pointeur +de la souris a son cadre coloré en rouge, cela indique qu'il s'agit de la +fenêtre active. C'est elle qui reçoit les touches que vous tapez au +clavier (essayez !), contrairement à ce qui se passe sous Windows et +MacOS. +
++Les débuts sont pénibles (surtout quand quelqu'un déplace malencontreusement +votre souris...), mais c'est beaucoup plus pratique une fois qu'on a +l'habitude : d'un rapide mouvement de souris, vous passez d'un programme +à l'autre et l'ordre d'empilement des fenêtres ne change que si vous en +décidez ainsi. +
++Si vous avez déjà utilisé un ordinateur, vous pouvez passer directement à la +section suivante. Sinon, lancez un logiciel quelconque en cliquant par exemple +sur l'icône «news» dans la boîte à boutons, il nous +servira d'exemple pour apprendre quelques opérations simples à effectuer à +l'aide de la souris : +
+Front
du clavier
+(si vous êtes sur une station Sun).Pour vous familiariser avec les boutons de la barre de titre des +fenêtres, allez faire les exercices sur la config +conscrits.
+ ++La config conscrits propose un menu, accessible soit par un bouton en haut de +l'écran, soit en cliquant dans le fond d'écran. Il propose divers logiciels et +fonctionnalités. Pour leur utilisation, reportez-vous au tableau d'orientation +disponible en cliquant sur le bouton «Info» de la barre de navigation. +
+Terminaux | +Alpha | +Lance une nouvelle fenêtre Alpha, Beta ou Gamma, ou une +nouvelle grande fenêtre. | +Se quitte en tapant exit ou
+^D . |
+
---|---|---|---|
Beta | +|||
Gamma | +|||
Grande fenêtre | +|||
Terminal Unicode | +Terminal dans lequel on peut afficher et taper des caractères +Unicode. | +||
Gestionnaire de fichiers | +Lance le logiciel XFTree , qui vous permet de gérer vos fichiers
+à la souris. |
+ Se quitte en sélectionnant «Quit» dans le menu «File» et en +confirmant. | +|
Internet | +Netscape | +Navigateur Netscape. | +Se quitte en sélectionnant «Exit» dans +le menu «File» | +
Pine | +Logiciel de courrier électronique pine . |
+ Se quitte en
+tapant q et en confirmant. |
+ |
Mutt | +Logiciel de courrier électronique mutt . |
+ Se quitte en
+tapant q . |
+ |
Forum | +Logiciel pour lire le forum de discussions internes à l'ENS. | +||
KNews | +Lecteur graphique de news (groupes de discussions mondiaux). | +Se quitte en +cliquant sur «Quitter». | +|
slrn | +Lecteur de news en mode texte. | +Se quitte en tapant q et en
+confirmant. |
+ |
trn | +Lecteur de news en mode texte. | +Se quitte en tapant
+q . |
+ |
Flrn | +Lecteur de news en mode texte (celui qui sert à lire forum). | +||
Éditeurs | +Pico | +Un éditeur quasi-identique à l'éditeur par défaut de la config conscrits. | +Se quitte en tapant
+^X (eXit). |
+
Joe | +Éditeur en mode texte. | +Se quitte en tapant ^KX
+(eXit). |
+ |
Vim | +Éditeur puissant mais peu simple d'utilisation. | +Se quitte en tapant
+:wq (Write Quit). |
+ |
Emacs | +Éditeur puissant et graphique. | +Se quitte en sélectionnant «Exit» dans le +menu «File». | +|
XEmacs | +Version pas vraiment plus jolie de Emacs. | +||
NEdit | +Éditeur graphique et simple. | +||
Bureautique | +Acrobat Reader | +Visualisateur de fichiers PDF. | +|
Asterix | +Suite bureautique Applix Ware. | +Se quitte en sélectionnant «Exit» dans le +menu «File», et «Exit all windows» dans le menu «File» du lanceur. | +|
Star Office | +Suite bureautique StarOffice. | +Se quitte en sélectionnant «Exit» dans le +menu «Start». | +|
LaTeX | +xlatex | +Interface graphique pour gérer la création de documents avec LaTeX. + | +Se +quitte en cliquant sur «Quit». | +
Lyx | +Interface graphique pour LaTeX. | +Se quitte en sélectionnant «Exit» dans le +menu «File». | +|
xdvi | +Visualisateur de fichiers DVI. | +Se quitte en tapant q . |
+ |
gv | +Visualisateur PostScript. | +Se quitte en sélectionnant «Quit» dans le menu +«File». | +|
Graphisme | +XV | +Visualisateur d'images. | +Se quitte en tapant q . |
+
xfig | +Logiciel de dessin vectoriel. | +Se quitte en cliquant sur «Quit». | +|
xpaint | +Logiciel de dessin simple. | +Se quitte en sélectionnant +«Quit» dans le menu «File». | +|
gimp | +Logiciel de retouche d'images. | +||
Science | +XMaple | +Logiciel de calcul formel. | +Se quitte en sélectionnant «Exit» dans le menu +«File». | +
XMupad | +Logiciel de calcul formel. | +Se quitte en cliquant sur «Quit». | +|
Scilab | +Logiciels de calcul scientifique. | +Se quitte en sélectionnant «Exit» dans +le menu «File». | +|
Matlab | +Logiciels de calcul scientifique. | +Se quitte en tapant
+exit . |
+ |
Utilitaires | +Calculatrice | +Calculatrice graphique. | +Se quitte en tapant q . |
+
Loupe | +Loupe. | +||
XEyes | +Yeux qui suivent du regard le curseur de la souris. | +Ne se quitte +pas. | +|
Agenda | +Calendrier-agenda. | +Se quitte en cliquant sur «Q». | +|
Jeux | +Xletters | +Un jeu pour s'entraîner à taper au clavier. | +Se quitte en cliquant sur «Quit». | +
Tetris | +Un jeu de tetris. | +||
Tetris3d | +Un jeu de tetris en 3 dimension. | +Se quitte en tapant
+q . |
+ |
xkobo | +le vaisseau doit détruire les bases et les missiles. | +||
Démineur | +Jeu de démineur. | +||
Astéroïdes | +Un vaisseau spatial doit faire exploser des astéroïdes | +Se +quitte en sélectionnant «Quit» dans le menu «File». | +|
Serpent | +Le serpent doit manger les pommes. | +Se quitte en sélectionnant «Quit» dans +le menu «Game». | +|
xtron | +Faire un mur sans rentrer dans ceux des autres. | +Se quitte en faisant Ctrl-C | +|
crossfire | +Jeu de rôles et d'exploration. | +Se quitte en tapant
+'Quit . |
+ |
NetHack | +Jeu de rôles et d'exploration. | +Se quitte en tapant Q et en
+confirmant. |
+ |
Échecs | +Jeu d'échecs. | +Se quitte en sélectionnant «Exit» dans le menu «File». | +|
Cartes | +Jeux de cartes. | +Se quitte en sélectionnant «Quit» dans le menu +«Game». | +|
Mah-Jongg | +Jeu de dominos chinois. | +||
Shisen-Sho | +Jeu de dominos chinois. + | +Se quitte en sélectionnant «Quit» dans le menu +«File». | +|
Aide | +Lance Mozilla sur une page d'aide des tuteurs | +||
Rafraîchir l'écran | +Redessine l'écran (traces de fenêtres, messages intempestifs au milieu de +l'écran). | +||
Relancer l'interface | +Relance l'interface graphique. C'est utile soit quand vous avez modifié +votre configuration, soit quand certains éléments, comme l'horloge, ne se sont +pas lancés au login. | +||
Quitter | +Pour se déloguer. Demande confirmation. | +
Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
++Voici une présentation de votre écran tel qu'il apparaît juste après que +vous vous loguiez : +
+
+Vous pouvez taper des commandes dans les fenêtres terminal. Celles-ci affiche
+une invite (vous rencontrerez également le synonyme anglais prompt)
+avec le nom de la machine. Validez vos commandes par un retour à la ligne
+(Enter). Dans cet exemple, on est sur la machine drakkar
, et on
+tape fortune
:
+
drakkar ~ $ fortune [Enter] +new, adj.: + Different color from previous model. +drakkar ~ $ ++
C'est certes une façon peu engageante de dialoguer avec l'ordinateur, +mais l'interface graphique des stations n'est pas assez fournie pour vous +permettre de vous en passer totalement. Il faudra notamment y avoir +recours pour changer votre +mot de passe.
+La quasi-totalité des fenêtres que vous ouvrez comporte une barre de +titre. elle sert de «poignée» pour la déplacer. En cliquant sur les +différents boutons de par et d'autre de la barre de titre, vous +découvrirez diverses fonctions (déplacer, redimensionner, iconifier...). +Pour en savoir davantage, nous vous conseillons de faire les exercices sur la config +conscrits.
++Chacun de ces boutons décorés d'un petit dessin lance un programme lorsqu'on +clique dessus| : +
++ + | +Ce bouton sert à se déloguer. Choisissez « Oui, je veux me + déloguer ». | +
+ + | +Lance le logiciel de courrier. Par défaut, c'est pine . On
+quitte en tapant «q». |
+
+ + | +Lance un gestionnaire de fichiers à la souris. | +
+ + | +Lance une nouvelle grande fenêtre terminal. | +
+ + | +Lance le navigateur Mozilla (attention, il est un peu lent à + démarrer). On quitte en sélectionnant «Exit» dans le menu «File». | +
+ + | +Lance le forum des + élèves (messagerie interne à l'École). On passe au message + suivant en appuyant sur la barre d'espace et on quitte en tapant + «q». | +
+ + | +Ce bouton ouvre le navigateur Mozilla sur une page d'aide du site des +tuteurs. | +
+La barre des tâches en bas de l'écran contient la liste de toutes les +fenêtres ouvertes. En ciquant sur le nom d'une des fenêtres, vous +l'amenez au premier plan. +
+La petite fenêtre terminal située en haut à droite de l'écran est un peu +spéciale, car elle affiche les messages d'erreur du système et +aussi des informations en provenance du réseau| : le menu du pot, les demandes +de connexion par talk, les +messages de l'imprimante, etc.
++ + | +C'est un modèle réduit de l'écran et des fenêtres qu'il comporte. Son +intérêt consiste en le fait que l'écran réel n'occupe qu'un sixième de +l'espace (la case en haut à gauche), et en cliquant sur l'une des cinq autres +pages on obtient un écran vide dans lequel on peut lancer d'autres fenêtres. +À l'aide du bouton du milieu de la souris, on peut déplacer les modèles +réduits de fenêtres sur le plan du bureau, et ainsi disposer d'un bureau +virtuel qui fait six fois la taille de l'écran| ! + | +
+Le menu propose divers logiciels, pour travailler comme pour jouer. Il permet +aussi de lancer de nouvelles fenêtres terminal, ainsi que de se déloguer. +
+Lorsque vous cliquez sur le fond gris de l'écran avec le bouton du +milieu ou de droite, vous faites apparaître le menu. Pour le faire +disparaître, recliquez dans le fond d'écran.
++Dans toute cette section, on suppose que vous cliquez avec le bouton +gauche de la souris, sauf cas mentionnés. Nous résumons ici les +points essentiels concernant l'utilisation de la souris. Ses possibilités sont +cependant beaucoup plus riches. +
++Déplacez la souris sur l'écran : vous remarquez que les cadres des +fenêtres changent de couleur. La fenêtre dans laquelle se trouve le pointeur +de la souris a son cadre coloré en rouge, cela indique qu'il s'agit de la +fenêtre active. C'est elle qui reçoit les touches que vous tapez au +clavier (essayez !), contrairement à ce qui se passe sous Windows et +MacOS. +
++Les débuts sont pénibles (surtout quand quelqu'un déplace +malencontreusement votre souris...), mais c'est très pratique une fois +qu'on a l'habitude : d'un rapide mouvement de souris, vous passez d'un +programme à l'autre et l'ordre d'empilement des fenêtres ne change que si +vous en décidez ainsi. Cela permet par exemple de lire le contenu de la +fenêtre du dessus tout en écrivant dans une autre. +
++Si vous avez déjà utilisé un ordinateur, vous pouvez passer directement à +la section suivante. Sinon, lancez un logiciel quelconque en cliquant par +exemple sur l'icône « Fenêtre » dans la boîte à +boutons, il nous servira d'exemple pour apprendre quelques +opérations simples à effectuer à l'aide de la souris : +
+Front
du clavier
+(si vous êtes sur une station Sun).
+Inversement, en cliquant dans la barre de titre avec le bouton droit de la
+souris, vous faites passer la fenêtre à l'arrière-plan.
+Pour vous familiariser avec les boutons de la barre de titre des +fenêtres, allez faire les exercices sur la config +conscrits.
+ +xconfiguration
+ xconfiguration
est le programme qui permet de changer
+certains des paramètres de sa configuration, et d'en mettre à jour les
+fichiers.
+Vous voyez apparaître devant vous la fenêtre ci-dessus. La partie haute, +divisée en plusieurs pages, vous permet de régler votre configuration. +Les boutons du bas ont l'effet suivant : +
++Une fois que vous avez modifié votre configuration, les changements +effectués seront valables la prochaine fois que vous vous loguerez. +
++Cette page vous permet de choisir quelles seront les applications +utilisées par votre configuration. Une liste d'applications vous est +proposée ; si vous préférez un autre programme, vous pouvez aussi taper +directement son nom à la place des choix proposés. +
++L'éditeur de textes est le +programme qui vous permet de créer et de modifier des fichiers texte. Le +choix que vous entrez ici détermine l'éditeur qui sera lancé lorsqu'un +programme voudra créer un fichier texte ; c'est par exemple ce qu'il se +passera lorsque vous voudrez écrire +un message dans forum. +
+
+La valeur par défaut est nano
. C'est le plus confortable des
+éditeurs en mode texte. Il est vivement recommandé de
+choisir un éditeur en mode texte dans cette zone : cela lui permettra
+d'être utilisable que vous soyez logué physiquement en salle
+informatique, ou depuis n'importe quel autre endroit (votre t(h)urne,
+chez vos parents, au labo...).
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Web » de votre barre +d'outils. +
+
+Si votre configuration remonte à 2001 ou avant, vous utilisez encore
+probablement le navigateur Netscape
. La technologie ayant
+évolué depuis, il est recommandé de choisir Mozilla
à la
+place.
+
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Courrier » de votre barre +d'outils. +
++Une fois que vous serez habitué aux machines de l'École, pourquoi ne pas +essayer Mutt ? Une +documentation est à votre disposition sur ce site. Mutt est plus +rapide que Pine, vous sentirez la différence quand vous recevrez beaucoup +de courrier... +
+
+Choisissez ici le programme qui vous servira à lire les groupes de discussion
+extérieurs. KNews
est un lecteur graphique, c'est le
+choix qui vous est proposé par défaut. FLRN
est le même
+programme qui sert à lire forum. Vous pouvez avoir envie de l'utiliser
+également pour lire les groupes de discussion, si vous voulez éviter
+d'apprendre un logiciel de plus.
+
+Cette page vous propose de régler les couleurs de votre configuration. +Nous espérons que son fonctionnement est assez intuitif pour ne pas +nécessiter de long discours de notre part... +
++Vous pouvez régler ici la façon dont se comporte la machine. +
++Cette page contient une liste de thèmes que vous pouvez appliquer à votre +configuration. Chaque thème définit une partie de vos variables de +configuration ; pour les remettre toutes à leur valeur par défaut, +chargez le thème « Par défaut ». +
++Pour charger un thème, il suffit de sélectionner son nom dans la liste et +de cliquer sur le bouton « Charger ». Vous pouvez aussi enregistrer un +thème à partir de votre configuration actuelle : pour cela, tapez dans +la zone de texte le nom sous lequel vous souhaitez l'enregistrer, et +choisissez « Enregistrer ». +
++Cette page vous sert à mettre à jour votre configuration. Cela vous +permet à la fois : +
++Vous voyez en haut de cette page une liste un peu obscure ; c'est la +liste des fichiers de votre configuration qui ne sont pas à jour. +Chaque fichier contient deux indications : celle du numéro de version +actuel, et celle du dernier numéro de version ajouté dans la +configuration. +
++Pour mettre à jour un fichier, il suffit de le sélectionner, et de +cliquer sur « Mettre à jour ». Deux cas sont alors possibles : +
+<<<<<<<+ Pour résoudre un de ces conflits, il vous suffit de remplacer tout le + bloc précédent, soit en gardant vos modifications qui décidément vous + plaisent bien, soit en adoptant la nouvelle version, soit en + mélangeant les deux à votre goût. Attention toutefois à ne pas laisser + traîner les marqueurs <<<<<<<, + ======= ou + >>>>>>>. Si vous laissez des +
Ce que vous avez modifié dans le fichier
...
=======
Les modifications proposées par la nouvelle version
...
>>>>>>>
+ Lorsque vous en avez fini, fermez votre éditeur, et choisissez + « Écraser ». Ceci choisira, pour chaque conflit, la version la plus + récente (en particulier, si vous avez résolu tous les conflits + vous-mêmes, il n'y en a plus, vous ne perdez donc rien...) +
+Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
++Voici une présentation de votre écran tel qu'il apparaît juste après que +vous vous loguiez : +
+
+Vous pouvez taper des commandes dans les fenêtres terminal. Celles-ci affiche
+une invite (vous rencontrerez également le synonyme anglais prompt)
+avec le nom de la machine. Validez vos commandes par un retour à la ligne
+(Enter). Dans cet exemple, on est sur la machine drakkar
, et on
+tape fortune
:
+
drakkar ~ $ fortune [Enter] +new, adj.: + Different color from previous model. +drakkar ~ $ ++
C'est certes une façon peu engageante de dialoguer avec l'ordinateur, +mais l'interface graphique des stations n'est pas assez fournie pour vous +permettre de vous en passer totalement. Il faudra notamment y avoir +recours pour changer votre +mot de passe.
+La quasi-totalité des fenêtres que vous ouvrez comporte une barre de +titre. elle sert de «poignée» pour la déplacer. En cliquant sur les +différents boutons de par et d'autre de la barre de titre, vous +découvrirez diverses fonctions (déplacer, redimensionner, iconifier...). +Pour en savoir davantage, nous vous conseillons de faire les exercices sur la config +conscrits.
++Chacun de ces boutons décorés d'un petit dessin lance un programme lorsqu'on +clique dessus| : +
++ + | +Ce bouton sert à se déloguer. Choisissez « Oui, je veux me + déloguer ». | +
+ + | +Lance le logiciel de courrier. Par défaut, c'est pine . On
+quitte en tapant «q». |
+
+ + | +Lance un gestionnaire de fichiers à la souris. | +
+ + | +Lance une nouvelle grande fenêtre terminal. | +
+ + | +Lance le navigateur Mozilla (attention, il est un peu lent à + démarrer). On quitte en sélectionnant «Exit» dans le menu «File». | +
+ + | +Lance le forum des + élèves (messagerie interne à l'École). On passe au message + suivant en appuyant sur la barre d'espace et on quitte en tapant + «q». | +
+ + | +Ce bouton ouvre le navigateur Mozilla sur une page d'aide du site des +tuteurs. | +
+La barre des tâches en bas de l'écran contient la liste de toutes les +fenêtres ouvertes. En ciquant sur le nom d'une des fenêtres, vous +l'amenez au premier plan. +
+La petite fenêtre terminal située en haut à droite de l'écran est un peu +spéciale, car elle affiche les messages d'erreur du système et +aussi des informations en provenance du réseau| : le menu du pot, les demandes +de connexion par talk, les +messages de l'imprimante, etc.
++ + | +C'est un modèle réduit de l'écran et des fenêtres qu'il comporte. Son +intérêt consiste en le fait que l'écran réel n'occupe qu'un sixième de +l'espace (la case en haut à gauche), et en cliquant sur l'une des cinq autres +pages on obtient un écran vide dans lequel on peut lancer d'autres fenêtres. +À l'aide du bouton du milieu de la souris, on peut déplacer les modèles +réduits de fenêtres sur le plan du bureau, et ainsi disposer d'un bureau +virtuel qui fait six fois la taille de l'écran| ! + | +
+Le menu propose divers logiciels, pour travailler comme pour jouer. Il permet +aussi de lancer de nouvelles fenêtres terminal, ainsi que de se déloguer. +
+Lorsque vous cliquez sur le fond gris de l'écran avec le bouton du +milieu ou de droite, vous faites apparaître le menu. Pour le faire +disparaître, recliquez dans le fond d'écran.
++Dans toute cette section, on suppose que vous cliquez avec le bouton +gauche de la souris, sauf cas mentionnés. Nous résumons ici les +points essentiels concernant l'utilisation de la souris. Ses possibilités sont +cependant beaucoup plus riches. +
++Déplacez la souris sur l'écran : vous remarquez que les cadres des +fenêtres changent de couleur. La fenêtre dans laquelle se trouve le pointeur +de la souris a son cadre coloré en rouge, cela indique qu'il s'agit de la +fenêtre active. C'est elle qui reçoit les touches que vous tapez au +clavier (essayez !), contrairement à ce qui se passe sous Windows et +MacOS. +
++Les débuts sont pénibles (surtout quand quelqu'un déplace +malencontreusement votre souris...), mais c'est très pratique une fois +qu'on a l'habitude : d'un rapide mouvement de souris, vous passez d'un +programme à l'autre et l'ordre d'empilement des fenêtres ne change que si +vous en décidez ainsi. Cela permet par exemple de lire le contenu de la +fenêtre du dessus tout en écrivant dans une autre. +
++Si vous avez déjà utilisé un ordinateur, vous pouvez passer directement à +la section suivante. Sinon, lancez un logiciel quelconque en cliquant par +exemple sur l'icône « Fenêtre » dans la boîte à +boutons, il nous servira d'exemple pour apprendre quelques +opérations simples à effectuer à l'aide de la souris : +
+Front
du clavier
+(si vous êtes sur une station Sun).
+Inversement, en cliquant dans la barre de titre avec le bouton droit de la
+souris, vous faites passer la fenêtre à l'arrière-plan.
+Pour vous familiariser avec les boutons de la barre de titre des +fenêtres, allez faire les exercices sur la config +conscrits.
+ +xconfiguration
+ xconfiguration
est le programme qui permet de changer
+certains des paramètres de sa configuration, et d'en mettre à jour les
+fichiers.
+Vous voyez apparaître devant vous la fenêtre ci-dessus. La partie haute, +divisée en plusieurs pages, vous permet de régler votre configuration. +Les boutons du bas ont l'effet suivant : +
++Une fois que vous avez modifié votre configuration, les changements +effectués seront valables la prochaine fois que vous vous loguerez. +
++Cette page vous permet de choisir quelles seront les applications +utilisées par votre configuration. Une liste d'applications vous est +proposée ; si vous préférez un autre programme, vous pouvez aussi taper +directement son nom à la place des choix proposés. +
++L'éditeur de textes est le +programme qui vous permet de créer et de modifier des fichiers texte. Le +choix que vous entrez ici détermine l'éditeur qui sera lancé lorsqu'un +programme voudra créer un fichier texte ; c'est par exemple ce qu'il se +passera lorsque vous voudrez écrire +un message dans forum. +
+
+La valeur par défaut est nano
. C'est le plus confortable des
+éditeurs en mode texte. Il est vivement recommandé de
+choisir un éditeur en mode texte dans cette zone : cela lui permettra
+d'être utilisable que vous soyez logué physiquement en salle
+informatique, ou depuis n'importe quel autre endroit (votre t(h)urne,
+chez vos parents, au labo...).
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Web » de votre barre +d'outils. +
+
+Si votre configuration remonte à 2001 ou avant, vous utilisez encore
+probablement le navigateur Netscape
. La technologie ayant
+évolué depuis, il est recommandé de choisir Mozilla
à la
+place.
+
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Courrier » de votre barre +d'outils. +
++Une fois que vous serez habitué aux machines de l'École, pourquoi ne pas +essayer Mutt ? Une +documentation est à votre disposition sur ce site. Mutt est plus +rapide que Pine, vous sentirez la différence quand vous recevrez beaucoup +de courrier... +
+
+Choisissez ici le programme qui vous servira à lire les groupes de discussion
+extérieurs. KNews
est un lecteur graphique, c'est le
+choix qui vous est proposé par défaut. FLRN
est le même
+programme qui sert à lire forum. Vous pouvez avoir envie de l'utiliser
+également pour lire les groupes de discussion, si vous voulez éviter
+d'apprendre un logiciel de plus.
+
+Cette page vous propose de régler les couleurs de votre configuration. +Nous espérons que son fonctionnement est assez intuitif pour ne pas +nécessiter de long discours de notre part... +
++Vous pouvez régler ici la façon dont se comporte la machine. +
++Cette page contient une liste de thèmes que vous pouvez appliquer à votre +configuration. Chaque thème définit une partie de vos variables de +configuration ; pour les remettre toutes à leur valeur par défaut, +chargez le thème « Par défaut ». +
++Pour charger un thème, il suffit de sélectionner son nom dans la liste et +de cliquer sur le bouton « Charger ». Vous pouvez aussi enregistrer un +thème à partir de votre configuration actuelle : pour cela, tapez dans +la zone de texte le nom sous lequel vous souhaitez l'enregistrer, et +choisissez « Enregistrer ». +
++Cette page vous sert à mettre à jour votre configuration. Cela vous +permet à la fois : +
++Vous voyez en haut de cette page une liste un peu obscure ; c'est la +liste des fichiers de votre configuration qui ne sont pas à jour. +Chaque fichier contient deux indications : celle du numéro de version +actuel, et celle du dernier numéro de version ajouté dans la +configuration. +
++Pour mettre à jour un fichier, il suffit de le sélectionner, et de +cliquer sur « Mettre à jour ». Deux cas sont alors possibles : +
+<<<<<<<+ Pour résoudre un de ces conflits, il vous suffit de remplacer tout le + bloc précédent, soit en gardant vos modifications qui décidément vous + plaisent bien, soit en adoptant la nouvelle version, soit en + mélangeant les deux à votre goût. Attention toutefois à ne pas laisser + traîner les marqueurs <<<<<<<, + ======= ou + >>>>>>>. Si vous laissez des +
Ce que vous avez modifié dans le fichier
...
=======
Les modifications proposées par la nouvelle version
...
>>>>>>>
+ Lorsque vous en avez fini, fermez votre éditeur, et choisissez + « Écraser ». Ceci choisira, pour chaque conflit, la version la plus + récente (en particulier, si vous avez résolu tous les conflits + vous-mêmes, il n'y en a plus, vous ne perdez donc rien...) +
+Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
++Voici une présentation de votre écran tel qu'il apparaît juste après que +vous vous loguiez : +
+
+Vous pouvez taper des commandes dans les fenêtres terminal. Celles-ci affiche
+une invite (vous rencontrerez également le synonyme anglais prompt)
+avec le nom de la machine. Validez vos commandes par un retour à la ligne
+(Enter). Dans cet exemple, on est sur la machine drakkar
, et on
+tape fortune
:
+
drakkar ~ $ fortune [Enter] +new, adj.: + Different color from previous model. +drakkar ~ $ ++
C'est certes une façon peu engageante de dialoguer avec l'ordinateur, +mais l'interface graphique des stations n'est pas assez fournie pour vous +permettre de vous en passer totalement. Il faudra notamment y avoir +recours pour changer votre +mot de passe.
+La quasi-totalité des fenêtres que vous ouvrez comporte une barre de +titre. elle sert de «poignée» pour la déplacer. En cliquant sur les +différents boutons de par et d'autre de la barre de titre, vous +découvrirez diverses fonctions (déplacer, redimensionner, iconifier...). +Pour en savoir davantage, nous vous conseillons de faire les exercices sur la config +conscrits.
++Chacun de ces boutons décorés d'un petit dessin lance un programme lorsqu'on +clique dessus| : +
++ + | +Ce bouton sert à se déloguer. Choisissez « Oui, je veux me + déloguer ». | +
+ + | +Lance le logiciel de courrier. Par défaut, c'est pine . On
+quitte en tapant «q». |
+
+ + | +Lance un gestionnaire de fichiers à la souris. | +
+ + | +Lance une nouvelle grande fenêtre terminal. | +
+ + | +Lance le navigateur Mozilla (attention, il est un peu lent à + démarrer). On quitte en sélectionnant «Exit» dans le menu «File». | +
+ + | +Lance le forum des + élèves (messagerie interne à l'École). On passe au message + suivant en appuyant sur la barre d'espace et on quitte en tapant + «q». | +
+ + | +Ce bouton ouvre le navigateur Mozilla sur une page d'aide du site des +tuteurs. | +
+La barre des tâches en bas de l'écran contient la liste de toutes les +fenêtres ouvertes. En ciquant sur le nom d'une des fenêtres, vous +l'amenez au premier plan. +
+La petite fenêtre terminal située en haut à droite de l'écran est un peu +spéciale, car elle affiche les messages d'erreur du système et +aussi des informations en provenance du réseau| : le menu du pot, les demandes +de connexion par talk, les +messages de l'imprimante, etc.
++ + | +C'est un modèle réduit de l'écran et des fenêtres qu'il comporte. Son +intérêt consiste en le fait que l'écran réel n'occupe qu'un sixième de +l'espace (la case en haut à gauche), et en cliquant sur l'une des cinq autres +pages on obtient un écran vide dans lequel on peut lancer d'autres fenêtres. +À l'aide du bouton du milieu de la souris, on peut déplacer les modèles +réduits de fenêtres sur le plan du bureau, et ainsi disposer d'un bureau +virtuel qui fait six fois la taille de l'écran| ! + | +
+Le menu propose divers logiciels, pour travailler comme pour jouer. Il permet +aussi de lancer de nouvelles fenêtres terminal, ainsi que de se déloguer. +
+Lorsque vous cliquez sur le fond gris de l'écran avec le bouton du +milieu ou de droite, vous faites apparaître le menu. Pour le faire +disparaître, recliquez dans le fond d'écran.
++Dans toute cette section, on suppose que vous cliquez avec le bouton +gauche de la souris, sauf cas mentionnés. Nous résumons ici les +points essentiels concernant l'utilisation de la souris. Ses possibilités sont +cependant beaucoup plus riches. +
++Déplacez la souris sur l'écran : vous remarquez que les cadres des +fenêtres changent de couleur. La fenêtre dans laquelle se trouve le pointeur +de la souris a son cadre coloré en rouge, cela indique qu'il s'agit de la +fenêtre active. C'est elle qui reçoit les touches que vous tapez au +clavier (essayez !), contrairement à ce qui se passe sous Windows et +MacOS. +
++Les débuts sont pénibles (surtout quand quelqu'un déplace +malencontreusement votre souris...), mais c'est très pratique une fois +qu'on a l'habitude : d'un rapide mouvement de souris, vous passez d'un +programme à l'autre et l'ordre d'empilement des fenêtres ne change que si +vous en décidez ainsi. Cela permet par exemple de lire le contenu de la +fenêtre du dessus tout en écrivant dans une autre. +
++Si vous avez déjà utilisé un ordinateur, vous pouvez passer directement à +la section suivante. Sinon, lancez un logiciel quelconque en cliquant par +exemple sur l'icône « Fenêtre » dans la boîte à +boutons, il nous servira d'exemple pour apprendre quelques +opérations simples à effectuer à l'aide de la souris : +
+Front
du clavier
+(si vous êtes sur une station Sun).
+Inversement, en cliquant dans la barre de titre avec le bouton droit de la
+souris, vous faites passer la fenêtre à l'arrière-plan.
+Pour vous familiariser avec les boutons de la barre de titre des +fenêtres, allez faire les exercices sur la config +conscrits.
+ +xconfiguration
+ xconfiguration
est le programme qui permet de changer
+certains des paramètres de sa configuration, et d'en mettre à jour les
+fichiers.
+Vous voyez apparaître devant vous la fenêtre ci-dessus. La partie haute, +divisée en plusieurs pages, vous permet de régler votre configuration. +Les boutons du bas ont l'effet suivant : +
++Une fois que vous avez modifié votre configuration, les changements +effectués seront valables la prochaine fois que vous vous loguerez. +
++Cette page vous permet de choisir quelles seront les applications +utilisées par votre configuration. Une liste d'applications vous est +proposée ; si vous préférez un autre programme, vous pouvez aussi taper +directement son nom à la place des choix proposés. +
++L'éditeur de textes est le +programme qui vous permet de créer et de modifier des fichiers texte. Le +choix que vous entrez ici détermine l'éditeur qui sera lancé lorsqu'un +programme voudra créer un fichier texte ; c'est par exemple ce qu'il se +passera lorsque vous voudrez écrire +un message dans forum. +
+
+La valeur par défaut est nano
. C'est le plus confortable des
+éditeurs en mode texte. Il est vivement recommandé de
+choisir un éditeur en mode texte dans cette zone : cela lui permettra
+d'être utilisable que vous soyez logué physiquement en salle
+informatique, ou depuis n'importe quel autre endroit (votre t(h)urne,
+chez vos parents, au labo...).
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Web » de votre barre +d'outils. +
+
+Si votre configuration remonte à 2001 ou avant, vous utilisez encore
+probablement le navigateur Netscape
. La technologie ayant
+évolué depuis, il est recommandé de choisir Mozilla
à la
+place.
+
+
+Choisissez ici le programme qui sera lancé lorsque vous sélectionnerez +l'icône « Courrier » de votre barre +d'outils. +
++Une fois que vous serez habitué aux machines de l'École, pourquoi ne pas +essayer Mutt ? Une +documentation est à votre disposition sur ce site. Mutt est plus +rapide que Pine, vous sentirez la différence quand vous recevrez beaucoup +de courrier... +
+
+Choisissez ici le programme qui vous servira à lire les groupes de discussion
+extérieurs. KNews
est un lecteur graphique, c'est le
+choix qui vous est proposé par défaut. FLRN
est le même
+programme qui sert à lire forum. Vous pouvez avoir envie de l'utiliser
+également pour lire les groupes de discussion, si vous voulez éviter
+d'apprendre un logiciel de plus.
+
+Cette page vous propose de régler les couleurs de votre configuration. +Nous espérons que son fonctionnement est assez intuitif pour ne pas +nécessiter de long discours de notre part... +
++Vous pouvez régler ici la façon dont se comporte la machine. +
++Cette page contient une liste de thèmes que vous pouvez appliquer à votre +configuration. Chaque thème définit une partie de vos variables de +configuration ; pour les remettre toutes à leur valeur par défaut, +chargez le thème « Par défaut ». +
++Pour charger un thème, il suffit de sélectionner son nom dans la liste et +de cliquer sur le bouton « Charger ». Vous pouvez aussi enregistrer un +thème à partir de votre configuration actuelle : pour cela, tapez dans +la zone de texte le nom sous lequel vous souhaitez l'enregistrer, et +choisissez « Enregistrer ». +
++Cette page vous sert à mettre à jour votre configuration. Cela vous +permet à la fois : +
++Vous voyez en haut de cette page une liste un peu obscure ; c'est la +liste des fichiers de votre configuration qui ne sont pas à jour. +Chaque fichier contient deux indications : celle du numéro de version +actuel, et celle du dernier numéro de version ajouté dans la +configuration. +
++Pour mettre à jour un fichier, il suffit de le sélectionner, et de +cliquer sur « Mettre à jour ». Deux cas sont alors possibles : +
+<<<<<<<+ Pour résoudre un de ces conflits, il vous suffit de remplacer tout le + bloc précédent, soit en gardant vos modifications qui décidément vous + plaisent bien, soit en adoptant la nouvelle version, soit en + mélangeant les deux à votre goût. Attention toutefois à ne pas laisser + traîner les marqueurs <<<<<<<, + ======= ou + >>>>>>>. Si vous laissez des +
Ce que vous avez modifié dans le fichier
...
=======
Les modifications proposées par la nouvelle version
...
>>>>>>>
+ Lorsque vous en avez fini, fermez votre éditeur, et choisissez + « Écraser ». Ceci choisira, pour chaque conflit, la version la plus + récente (en particulier, si vous avez résolu tous les conflits + vous-mêmes, il n'y en a plus, vous ne perdez donc rien...) +
+Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+Depuis cette année, la config conscrit utilise (sur la plupart des +machines) l'environnement KDE. Les +tuteurs n'ont (à l'heure où j'écris) pas encore rédigé de documentation +spécifique à KDE, mais la configuration par défaut ne devrait pas être +trop déroutante si vous connaissez Windows ou MacOS. N'hésitez pas à +suggérer des choses à mentionner sur cette page, ni à demander aux +tuteurs si vous avez besoin d'aide.
+La nouvelle config conscrits n'est accessible que sur les PC sous Fedora +(en salles S et T, ce sont en gros les machines noires de marque Dell). +Sur les stations Sun, vous pouvez utiliser la config +de l'an dernier.
+ +Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
+Vous pouvez télécharger une version + PDF de la documentation de base distribuée à la rentrée.
++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+La config conscrits utilise + l'environnement KDE. Les +tuteurs n'ont (presque) pas encore rédigé de documentation +spécifique à KDE, mais la configuration par défaut ne devrait pas être +trop déroutante si vous connaissez Windows ou MacOS. N'hésitez pas à +suggérer des choses à mentionner sur cette page, ni à demander aux +tuteurs si vous avez besoin d'aide. Vous pouvez aussi consulter la documentation officielle de +KDE.
++ Cette section s'adresse principalement aux anciens qui voudraient mettre à jour + leur config. Pour les autres, elle vous permettra peut-être de repérer + les pages pas vraiment à jour de ce site... (N'hésitez pas à nous les + signaler !) +
++ Le grand changement a eu lieu en 2006, avec l'arrivée de la nouvelle + config conscrits basée sur KDE. Les grandes nouveautés de 2007 sont le + suivantes. +
+La nouvelle config conscrits n'est accessible que sur les PC sous Fedora +(en salles S et T, ce sont en gros les machines noires de marque Dell). +Sur les stations Sun (qui devraient avoir disparu en octobre ou novembre +2007), vous pouvez utiliser la config 2005.
+ +Cette page s'adresse aux gens qui savent se «loguer» mais qui +ne savent rien faire d'autre sous UNIX. Supposons donc que vous êtes +logué, et que vous maîtrisez le maniement de base de la souris (faire +glisser la petite chose sur son tapis...).
++Les stations UNIX sont des machines d'usage général : cela signifie +qu'elles ne sont pas a priori conçues pour un usage particulier comme +la bureautique, les jeux (hem...), le réseau ou le calcul, elles peuvent tout +faire. Une config (configuration), c'est l'ensemble des paramètres +modifiables (taille et couleur des fenêtres, programmes préférés, etc). Chaque +utilisateur du réseau a la sienne et peut la modifier, et la config des +conscrits est celle que les élèves expérimentés (les gourous) proposent aux nouveaux pour +leurs premiers pas avec les stations Unix. +
+La config conscrits utilise + l'environnement GNOME 2. Les +tuteurs n'ont (presque) pas encore rédigé de documentation +spécifique à GNOME, mais la configuration par défaut ne devrait pas être +trop déroutante si vous connaissez Windows ou MacOS. N'hésitez pas à +suggérer des choses à mentionner sur cette page, ni à demander aux +tuteurs si vous avez besoin d'aide.
++L'environnement de la config ressemble beaucoup à la config par défaut +d'Ubuntu, et ne devrait guère vous surprendre. Firefox contient quelques +marque-pages utiles par défaut. Thunderbird est préconfiguré pour +accéder à votre messagerie ENS, et pour l'accès à forum. Le client de messagerie +instantanée Empathy vous permet de discuter avec les autres personnes +connectées utilisant cette config. +
+ +Vous pouvez accéder à la documentation sur la config' conscrits de cette +année (la configuration par défaut en arrivant à l'École, gentiment +préparée par les gourous).
++Vous pouvez aussi accéder aux configurations des années précédentes : +
+UNIX® est une marque +déposée par The Open Group, +Inc.
+Sun, SunOS, Solaris et Wabi sont des marques déposées par Sun Microsystems, Inc.
+MS-DOS et Windows et Word sont des marques déposées +(malheureusement pas dans le caniveau comme il se devrait) par Microsoft Corp.
+MacOS et Macintosh sont des marques déposées par Apple Computer Inc.
+VT100, VT101, VT102, VT220 sont des marques déposées de Digital +Equipment Corp (racheté par Compaq, lui-même racheté par +Hewlett-Packard).
+PC Engine est une marque déposée de NEC Corp.
+X Window et X11 sont des marques déposées de X.Org. encore que ceux-là ne me +traîneraient pas devant les tribunaux si je négligeais leur copyright +dans cette modeste documentation.
+Netscape est une marque déposée par Netscape Corp., et Internet +Explorer par Microsoft Corp. Je ne les leur conteste pas.
+Dominique Quatravaux, quatramaran, roméo et « The Overview. A +Rejected Proximity of a Further Consideration » sont des marques +déposées par moi-même.
+ +mdir
+
+ mcopy source cible
+
+ mformat A:
+
+ mcd A:PHILO
+
+ mmd A:DIVERS
+
+ mren A:HEGEL.TXT A:DIAL.TXT
+
+ +Voir aussi la présentation des +mtools par +le SPI. +
++Dans chaque salle il y a une ou plusieurs machines avec lecteur de +disquettes : la plupart des Sun récentes, et tous les PC (sauf chaland). +
+
+Vous n'avez pas besoin d'être logué sur la station disposant d'un lecteur pour
+utiliser votre disquette. Rloguez-vous sur cette machine (voir rlogin). Toutes les
+commandes concernant la disquette seront tapées dans la fenêtre du rlogin. Si
+la machine n'a pas de bouton-poussoir pour éjecter la disquette, tapez
+eject
.
+
+N'oubliez pas de vous déloguer quand vous avez fini... (taper
+exit
).
+
+Les stations acceptent toutes les disquettes PC, 3”1/2, basse et haute +densité (vous aurez peut-être des problèmes avec les double-densité). +
+Et mes fichiers word ? Il n'y aucun problème pour transférer +un fichier word sur une station ! Un fichier, quel qu'il soit (image, son, +fichier word, etc), peut être transféré d'un système à l'autre. Le problème se +pose ensuite éventuellement pour le lire, ou le décoder. Mais c'est un autre +problème (à ce sujet, vous pouvez aller lire +Word sur les +stations, un article paru dans le numéro 4 du Hublot, +février 2000). +
+
+Les commandes utilisées pour manipuler les disquettes sont celles de DOS,
+précédées d'un « m
» (ce qui explique leur nom générique de
+mtools). Le tableau suivant indique les principales commandes
+utilisables, ainsi que leur équivalent Unix.
+
Disquette | +Unix | +Fonction | +
---|---|---|
mcd (Change Directory) |
+
+ cd
+ |
+ Change de répertoire | +
+ mcopy
+ |
+
+ cp
+ |
+ Copie les fichiers vers ou depuis la disquette | +
mdel (DELete) |
+
+ rm
+ |
+ Efface un fichier | +
mdir (DIRectory) |
+
+ ls
+ |
+ Montre le contenu d'un répertoire | +
+ mformat
+ |
+ + | Formate une disquette au format MSDOS | +
mmd (Make Directory) |
+
+ mkdir
+ |
+ Crée un sous-répertoir | +
mrd (Remove Directory) |
+
+ rmdir
+ |
+ Efface un sous-répertoire | +
mren (REName) |
+
+ mv
+ |
+ Renomme un fichier | +
+ mtype
+ |
+
+ cat
+ |
+ Montre le contenu d'un fichier | +
+La disquette s'appelle a:
(A deux-points); il faut préciser que
+l'on parle de la disquette à chaque fois qu'il y a une ambiguité.
+
+Remarque : j'ai mis les noms de fichiers sur disquette en majuscules +comme le fait DOS, mais on peut saisir les noms en minuscules. +
+
+D'autre part, comme les noms des fichiers MSDOS ont une taille limitée (huit
+caractères et un suffixe de trois caractères), il peut arriver que les noms
+Unix soient tronqués, ainsi que les suffixes; par exemple,
+definitions.html
deviendra DEFINIT.HTM
.
+
mdir
+
+ +Affiche le contenu du répertoire courant de la disquette (ce qui revient le +plus souvent à afficher le contenu de la disquette). Par exemple : +
+bireme ~ $ mdir
+ Volume in drive A is PKBACK#002
+ Volume Serial Number is 18D9-2744
+Directory for A:/
+
+LITHIUM TEX 57609 09-10-2000 17:24 lithium.tex
+PG_TITRE TEX 2127 08-28-2000 14:24 pg_titre.tex
+RABI PS 72560 09-03-2000 21:23 rabi.ps
+DIFFR PS 78891 08-31-2000 10:30 diffr.ps
+PRO_JET PS 87295 08-29-2000 15:03 pro_jet.ps
+SWPROFIL PS 73622 08-31-2000 11:52 swprofil.ps
+PG_TITRE PS 50186 08-28-2000 14:24 pg_titre.ps
+LITHIUM PS 732900 09-11-2000 9:47 lithium.ps
+ 8 files 1 155 190 bytes
+ 300 032 bytes free
+
+La disquette contient huit fichiers. mdir
affiche le nom au
+format DOS, la taille (en octets) du fichier, la date d'inscription sur la
+disquette, et le nom Unix. La place restante sur la disquette est également
+indiquée (ici, environ 300 Ko).
+
mcopy source cible
+
+
+Recopie un fichier de la disquette sur la machine, ou de la machine vers la
+disquette (désignée par A:
) :
+
mcopy chrono.tex A:+
+Recopie le fichier chrono.tex
sur la disquette.
+
mcopy A:FICHIER.TXT rapport.txt+
+Copie le fichier MSDOS fichier.txt
dans un fichier appelé
+rapport.txt
. Ici, on spécifie les noms des deux fichiers, car on
+a choisi de renommer le fichier au passage.
+
mcopy A:FICHIER.TXT .+
+Copie le fichier MSDOS fichier.txt
sur le compte, sans changer
+le nom du fichier. .
(point) peut se traduire par « ici ».
+
mcopy 'A:*' .+
+Recopie tous les fichiers de la disquette dans le répertoire courant. Il +apparaissent sous leur nom d'origine. Les quotes (apostrophes) sont +indispensables à cause de l'astérisque. +
+mformat A:
+
+ +Sert à reformater la disquette (par conséquent efface toutes les données +qui y sont inscrites). +
+mcd A:PHILO
+
+
+Va dans le sous-répertoire philo
contenu sur la disquette.
+
mmd A:DIVERS
+
+
+Crée un sous répertoire divers
sur la disquette.
+
mren A:HEGEL.TXT A:DIAL.TXT
+
+
+Renommer le fichier HEGEL.TXT
de la disquette en
+DIAL.TXT
. Il n'est pas indispensable de préciser qu'il s'agit
+de la disquette (on peut ne pas écrire le A:
).
+
passwd
(password) :
+ changer son mot de passe.
+ man
: manuel.
+ top
: que fait la machine ?
+ date
: heure et date
+ cal
: calendrier
+ xcalendar
: mini-agenda
+ anniversaire
: les anniversaires
+ xcalc
: calculatrice
+ kcalc
: calculatrice
+ bc
: calculatrice
+ fortune
: se cultiver
+ webster
: dictionnaire anglais
+ tlf
: dictionnaire français
+ xpostit
: des post-it
+ calctool
: calculatrice
+ passwd
(password) :
+ changer son mot de passe.
+ +Conseils : 7 ou 8 caractères (mais pas plus de 8), pas de mots du +dictionnaire (d'aucune langue que ce soit), utiliser ensemble majuscules, +minuscules, chiffres, signes de ponctuation, mais jamais de caractères +accentués. +
++Pour davantage de détails, voir la section consacrée au mot de passe dans le +didacticiel, ou +Utilisateurs + et mot de passe (article du numéro 1 du Hublot, +novembre 1999). +
+man
: manuel.
+ man nom_de_commande
: affiche un page de manuel
+concernant la commande demandée.
+
+Le plus souvent en anglais et déroutant, mais utile à consulter pour voir les
+options de certaines commandes (par exemple toutes les options de
+ls
), ou se rappeler leur syntaxe. Les commandes sont celles de
+less
. On quitte avec q
.
+
top
: que fait la machine ?
+ top
affiche un tableau évolutif indiquant les programmes en
+cours sur la machine, et en particulier le temps que leur consacre la
+machine (indiqué par le CPU en %).
+
+Instructif sur les efforts que déploie la machine quand elle a affaire à
+netscape, à de gros calculs... Se quitte avec q
.
+
date
: heure et date
+ date
donne la date et l'heure précises. Attention ! Il arrive
+(très rarement) qu'une station ne soit pas à l'heure (vérifier sur une autre
+machine).
+
cal
: calendrier
+ cal
sans arguments affiche le calendrier du mois en cours.
+
cal 1998
affiche le calendrier de l'année 1998 (ère chrétienne;
+l'année peut être comprise entre 1 et 9999). On peut spécifier un mois, entre
+1 et 12 :
+
cal 7 1789+
+affiche le calendrier du mois de juillet 1789. +
+xcalendar
: mini-agenda
+ xcalendar
affiche le calendrier du mois en cours. Vous pouvez
+vous déplacer de mois en mois avec les flèches en haut de la fenêtre. En
+cliquant sur une date, vous faites apparaître une fenêtre dans laquelle vous
+pouvez noter des informations s'y rapportant. La date est ensuite mise en
+valeur, ce qui vous permet de voir d'un coup d'oeil les jours où quelque chose
+est programmé. Bien sûr, ces informations restent d'une session à l'autre.
+
+Pour quitter xcalendar
, cliquez sur le bouton «Q» en bas à
+gauche.
+
anniversaire
: les anniversaires
+ anniversaire
sans argument, affiche la liste des élèves dont
+c'est l'anniversaire aujourd'hui.
+
+Attention : anniversaire
est une commande locale, interne
+à l'ENS, basée sur les fiches annuaires. Elle ne fonctionne que dans les
+salles informatiques élèves d'Ulm (salle S, 46).
+
xcalc
: calculatrice
+ xcalc
, calculatrice simple, dont on se sert avec la souris.
+
+Avec la config conscrits, on peut aussi l'obtenir en cliquant sur
+calculatrice
dans le sous-menu Utilitaires
du menu
+du fond d'écran. Pour fermer la fenêtre de la calculatrice, taper
+q
dans cette fenêtre.
+
kcalc
: calculatrice
+ kcalc
: calculatrice dont on se sert avec la souris. C'est la
+calculatrice de KDE. Se quitte en fermant la fenêtre (pour une fois!).
+
bc
: calculatrice
+ bc
permet de faire des calculs en mode texte, exactement de la
+même façon qu'une calculatrice. Pour quitter bc
, taper quit ou
+Control-D.
+
+Les opérations disponibles sont : les quatre opérations élémentaires,
+notées +
, -
, *
et /
, le
+modulo, noté %
, l'exponentiation, notée ^
. Il est
+également possible d'utiliser des variables pour simplifier les calculs.
+
Par defaut, bc ne travaille qu'avec les nombres entiers ;
+utiliser bc -l
à la place est donc une bonne idée. Ceci permet
+aussi d'accéder aux fonctions sinus (appelée s
), cosinus
+(c
), racine carrée (sqrt
), etc.
+
fortune
: se cultiver
+ fortune
affiche une citation amusante en anglais.
+
webster
: dictionnaire anglais
+ webster
: dictionnaire anglais unilingue. Taper son mot après
+le prompt Word:
. Pour sortir du programme, taper
+^C
. Vous pouvez consulter l'article du Hublot sur
+webster
et tlf
:
+Les
+dictionnaires sur les stations Sun ; article paru dans le numéro 4,
+février 2000).
+
tlf
: dictionnaire français
+ tlf mot
: dictionnaire français (interface
+texte au Trésor de la Langue Française).
+
+Par le passé, il existait à la place une commande hachette
+pour interroger le dictionnaire Hachette. Pour plus de détails, voir
+l'article du Hublot sur webster
et
+hachette
: Les dictionnaires
+ sur les stations Sun ; article paru dans le numéro 4, février
+2000).
+
xplasma
: fond d'écran pour avoir le mal de mer
+ xplasma
lance un fond d'écran blobesque, avec des couleurs qui
+changent au fur et à mesure.
+
xearth
: fond d'écran terrestre
+ xearth
met en fond d'écran la zone du globe terrestre qui, à
+l'heure actuelle, est au soleil.
+
xsnow
: ah, l'hiver, la neige, les sapins
+ xsnow
: de la neige tombe et s'accumule sur vos fenêtres, des
+sapins poussent dans le fond d'écran, le Père Noël passe en traîneau...
+
xeyes
: pour retrouver le curseur de la souris
+ xeyes
lance deux gros yeux, qui pointent vers l'endroit où se
+trouve le curseur de la souris. C'est rigolo de le faire loucher.
+
tora
: pour retrouver le curseur de la souris
+ tora
: un petit chat court après le curseur de la souris.
+
dog
: pour retrouver le curseur de la souris
+ dog
: un mignon toutou court après le curseur de la souris.
+
pot
: manger
+ pot
affiche un ancien menu du pot.
+
pot
est une commande interne à l'École. Le menu était tapé
+en début de semaine par un membre du SPI, mais n'a pas été mis à jour
+depuis 2003.
+
pot jourdan
affiche le menu du pot de Jourdan, pot
+demain
celui du jour suivant, pot semaine
celui de la
+semaine complète.
+
qui
: pour savoir qui est logué
+
+La commande qui
permet de savoir qui se trouve dans les
+diverses salles informatiques de l'École. Par exemple,
trimaran ~ $ qui
+
+ +affiche les personnes loguées en salle S. +
++Pour plus de détails sur cette commande, vous pouvez consulter l'article +qui a été consacré à cette commande dans le Hublot. ou encore +le guide des première fois. +
+wc
: pour compter le nombre de caractères,
+mots et lignes
+ +Cette commande permet d'afficher le nombre de lignes, mots et caractères +d'un fichier texte en faisant par exemple : +
+trimaran ~ $ wc divers.html
+
+ On peut aussi ne demander qu'à voir le nombre de lignes : +
+trimaran ~ $ wc -l divers.html
+
+ xpostit
: des post-it
+ xpostit
sert à coller un post-it sur votre bureau, que vous
+retrouverez à la session suivante (pense-bête).
+
xpostit
lance un bouton écossais, dans lequel vous pouvez cliquer
+pour faire apparaître un menu, avec les diverses tailles de post-it
+disponibles. Écrivez votre texte dans le Post-It et sauvegardez en cliquant
+sur « Save ». Pour quitter, sélectionnez « Exit » dans le menu du bouton
+écossais. Les Post-It sauvegardés restent d'une session à l'autre. Pour
+détruire un Post-It, cliquez sur « Destroy » et confirmez.
+
+Vous avez aussi accès aux post-it par le sous-menu « Utilitaires » du menu +de fond d'écran. Cela dit, Les post-it sont assez notoirement buggués... +
+calctool
: calculatrice
+ calctool
: calculatrice dont on se sert avec la souris. Plus
+complexe et plus riche que xcalc
. Se quitte en cliquant sur le
+bouton Quit
en bas à gauche, ou en tapant q
.
+
+Qu'est-ce que ces « droits d'accès » ? C'est un modèle qui décrit, +pour chaque fichier ou chaque répertoire, qui a le droit de lire, +exécuter (ou traverser dans le cas d'un répertoire) ou modifier. Sur +votre Mac ou PC Windows personnel, ces considérations ne sont +peut-être pas très importantes si vous êtes le seul utilisateur. Mais +c'est particulièrement important sous Unix, qui est un système conçu +pour être multi-utilisateurs. +
+
+Chaque fichier a plusieurs propriétés associées : le
+propriétaire, le groupe propriétaire, la date de
+dernière modification, et les droits d'accès. On peut
+examiner ces propriétés grâce à l'option -l
de
+ls
. Dans cet exemple, nous voyons les permissions
+standard d'un répertoire et de deux fichiers :
+
sas ~/DEA $ ls -l
+total 205
+drwxr-xr-x 2 toto phy03 512 Jan 16 10:02 fiches/
+-rw-r--r-- 1 toto phy03 72008 Oct 2 2003 article.dvi
+-rw-r--r-- 1 toto phy03 145905 Oct 2 2003 article.pdf
+
+ +Les permissions sont indiquées dans la colonne de gauche, suivant un +format bien particulier : +
++Comme nous le voyons sur l'image ci-dessus, le bloc de permissions se +divise en quatre éléments. +
+
+Le premier caractère du bloc de permissions indique le type du
+fichier : -
pour un fichier normal, d
pour
+un répertoire. On trouve également parfois l
pour les
+liens symboliques, et d'autres choses plus exotiques.
+
-
: droit de lire (r pour read) le fichier (r
pour oui,
+ -
pour non)-
: droit d'écrire (w pour write) dans le fichier-
: droit d'exécuter (x pour execute) le fichier.
+Pour un répertoire, les choses sont un peu différentes. Le couple
+rx
donne le droit d'examiner le répertoire et son
+contenu. Le bit w
donne le droit d'ajouter ou de
+supprimer des fichiers dans le répertoire.
+
+Il existe d'autres types de droits plus exotiques, comme le bit setuid
+(s) ou encore le « sticky bit » (t). Si ça vous intéresse, lisez la page de man de
+chmod
.
+
+Comme les droits du propriétaire, mais s'applique aux gens qui sont +dans le groupe propriétaire (voir ci-dessous sur les groupes). +
++Comme les droits du propriétaire, mais s'applique aux gens qui sont ni +le propriétaire, ni dans le groupe propriétaire. +
+
+Nombre de liens du fichier; un répertoire en a au moins deux (.
et
+..
). Un répertoire qui contient 5 sous-répertoires en a 7, etc.
+
+Le nom de login de la personne à qui appartient ce fichier. Seul le +propriétaire peut changer les droits ou le groupe d'un fichier. +
+
+Les groupes sont des ensembles d'utilisateurs qui sont fixés par
+l'administrateur du système. Ils sont un moyen pour gérer un peu
+finement les droits d'accès. En l'espèce, à l'ENS, les groupes n'ont
+pas une très grande importance. Votre groupe porte le nom de votre
+spécialité (litt
pour les littéraires, bio
+pour les biologistes, etc.) assorti de votre promo. C'est la commande
+id
qui vous révèle le(s) groupe(s) auquel vous
+appartenez :
+
sas ~ $ id
+uid=4242(toto) gid=276(phy03) groups=276(phy03)
+
+ +La commande vous indique d'abord votre identifiant d'utilisateur (UID) +et votre login, puis votre identifiant de groupe principal (GID) et +enfin tous les groupes dans lesquels vous vous trouvez. +
++Elle est indiquée en octets. +
++Il existe 4 commandes liées aux droits d'accès : +
+chmod
(change mode), la plus utile,
+qui modifie les permissionschgrp
(change group) qui modifie le
+groupe d'un fichier ou répertoirechown
(change owner) qui modifie le
+propriétaire d'un fichier ou répertoireumask
, qui définit les protections par défaut
+Les commandes chgrp
et chown
servent surtout
+à l'administrateur du système, donc nous ne les examinerons pas ici
+(lisez leur page de man pour
+en savoir plus). En revanche, chmod
est une commande très
+pratique dans une utiisation courante.
+
+Cette notation consiste à associer un ou plusieurs degrés de
+propriété, une action et un ou plusieurs types d'accès. On l'utilise
+généralement pour ajouter ou retirer des permissions par rapport à la
+normale (-rw-r--r--
pour un fichier,
+drwxr-xr-x
pour un répertoire).
+
Degré de propriété | +Action | +Type d'accès | +||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
+
|
+
+
|
+
+
|
+
+Ici, vous interdisez à tout autre que vous l'accès à votre fichier +(c'est ce qu'à l'ENS on appelle couramment le « mode parano »). +
+sas ~ $ ls -l fichier.txt +-rw-r--r-- 1 toto phy03 42 Jan 5 12:08 fichier.txt +sas ~ $ chmod og-r fichier.txt +sas ~ $ ls -l fichier.txt +-rw------- 1 toto phy03 42 Feb 5 12:08 fichier.txt ++
+Même chose pour un répertoire... +
+sas ~ $ ls -l | grep repertoire +drwxr-xr-x 2 toto phy03 512 Feb 5 12:19 repertoire/ +sas ~ $ chmod go-rx repertoire +sas ~ $ ls -l | grep repertoire +drwx------ 2 toto phy03 512 Feb 5 12:19 repertoire/ ++
+Certains fichiers sont par défaut en mode parano. C'est le cas par +exemple de votre mail : quand vous sauvegardez un fichier en +provenance de votre boîte aux lettres, il est protégé. Pour permettre +aux autres l'accès au fichier : +
+sas ~ $ chmod og+r fichier.txt
+
+ sas ~ $ chmod go+rx repertoire
+
+ +Par défaut un fichier n'est pas un exécutable. Pour rendre exécutable +par tout le monde le joli script que vous venez d'écrire, faites +simplement : +
+sas ~ $ chmod +x script
+
+
+Cette notation est un peu plus complexe. Elle se fonde sur le principe
+suivant : considérons un bloc de permissions,
+rw-r--r--
. Quand une lettre est présente, ça veut dire
+que l'accès est autorisé, quand elle est absente (-), il est
+refusé. On peut traduire ceci de façon binaire :
+
r | +w | +- | +r | +- | +- | +r | +- | +- | +
1 | +1 | +0 | +1 | +0 | +0 | +1 | +0 | +0 | +
+Ce qui donne 110-100-100. 110 vaut 6 en décimal, 100 vaut 4 (voir le
+teableau ci-dessous), donc la représentation numérique de
+rw-r--r--
est 644. Cette valeur peut être indiquée
+exactement à chmod
:
+
sas ~ $ ls -l fichier.txt +-rw------- 1 toto phy03 42 Feb 5 12:08 fichier.txt +sas ~ $ chmod 644 fichier.txt +sas ~ $ ls -l fichier.txt +-rw-r--r-- 1 toto phy03 42 Jan 5 12:08 fichier.txt ++
Accès | +--- | +--x | +-w- | +-wx | +r-- | +r-x | +rw- | +rwx | +
---|---|---|---|---|---|---|---|---|
Binaire | +000 | +001 | +010 | +011 | +100 | +101 | +110 | +111 | +
Décimal | +0 | +1 | +2 | +3 | +4 | +5 | +6 | +7 | +
Permission | +Valeur +numérique | +Type de fichier | +Signification | +
---|---|---|---|
--------- | +000 | +N'importe quel type. | +Aucun +accès à qui que ce soit | +
rw------- | +600 | +Fichiers | +Fichier parano : +lecture et écriture réservées au propriétaire. | +
rw-r--r-- | +644 | +Fichiers | +Standard : tout le +monde peut lire le fichier mais vous êtes le seul à pouvoir le +modifier. | +
rw-rw-rw | +666 | +Fichiers | +Fichier public : +tout le monde peut lire et écrire. | +
rwx------ | +700 | +Répertoires | +Répertoire parano : +lecture, accès et écriture réservés au propriétaire. | +
rwxr-xr-x | +755 | +Fichiers | +Fichier +lisible et exécutable par tous, vous seul pouvez le modifier. | +
Répertoires | +Standard : tout le monde peut accéder au +répertoire et lire son contenu, vous seul pouvez modifier le contenu. | +||
rwxrwxrwx | +777 | +Répertoires | +Répertoire public : tout +le monde peut y accéder, lire le contenu et modifier celui-ci. | +
Fichiers | +Exécutable public : tout le +monde peut le lire, l'exécuter et le modifier. | +
+Voici une classification par niveau des degrés de connaissance de son éditeur. +Nous développons les deux premiers niveaux, en indiquant juste le nom de la +commande pour les niveaux suivants : nous estimons en effet qu'à partir +du niveau 3 vous êtes capables de trouver par vous-mêmes la façon de faire les +choses, et de chercher tout seuls dans les documentations... +
++Trois éditeurs sont ici abordés : emacs, nano et vim. L'ordre de préséance +entre éditeurs répond à un critère alphabétique neutre. Nous nous sommes aussi +efforcés de ne mettre en avant que des fonctionnalités communes à au moins +deux éditeurs : les avantages spécifiques de chaque éditeur n'ont donc +pas leur place ici.
++Enfin, quand nous disons «emacs», cela concerne bien entendu aussi +«xemacs». +
++Pour noter les raccourcis claviers, on utilise des notations différentes +suivant les éditeurs, pour suivre la façon dont les touches sont indiquées +dans l'aide. On a donc: +
+C-x
pour control-x, c'est à dire
+la touche x avec le modificateur control en même temps. De même
+M-x
représente la touche x avec le modificateur méta.^X
pour control-x. CTRL-X
pour control-x. +Pour lancer son éditeur favori, la procédure est partout la même. Il faut +taper dans un terminal* le nom de +l'éditeur suivi du nom du fichier à éditer; par exemple : +
+prao ~ $ emacs rapport.tex +prao ~ $ nano index.html +prao ~ $ vim monbofichier ++
+Pour emacs
, si vous êtes dans un xterm*, vous pouvez taper :
+
prao ~ $ emacs -nw rapport.tex
+
+ +pour lancer emacs dans le terminal où vous vous trouvez (sans ouvrir de +nouvelle fenêtre graphique), ce qui est plus rapide mais vous n'avez pas +la souris. +
+C-x C-s
(save).
+Vous pouvez aussi cliquer sur le bouton Save
, ou
+sélectionner Save fichier
dans le menu
+File
. Pour sauver votre fichier sous un nom différent, tapez
+C-x C-w
ou sélectionner Save as...
dans le menu
+File
. Emacs vous demande alors un nom de fichier.^O
. Nano vous demande
+alors sous quel nom enregistrer le fichier. Appuyez sur la touche Entrée
+si vous voulez garder le même nom.:w
(write). Pour
+enregistrer sous un autre nom, faire :sav nouveaunom
.Quelle que soit l'application, vous devez la quitter +correctement, avec sa commande. Vous ne devez jamais fermer une fenêtre en +sélectionnant «Fermer» dans le cadre de la fenêtre; dans le cas d'un éditeur +mal configuré vous risquez de perdre votre travail. Des copies de sauvegarde +existent et permettent d'en récupérer la majeure partie, mais ce n'est pas un +pli à prendre... Quittez donc correctement votre éditeur.
+C-x C-c
ou cliquer sur Exit
+Emacs
dans le menu File
. Emacs vous demande si vous voulez
+sauvegarder votre texte.^X
. Cette commande
+quitte nano en vous demandant si vous voulez enregistrer en
+quittant.:wq
(write quit)
+pour quitter en sauvant. Si vous essayez de quitter vim sans avoir sauvé
+votre texte (avec :q
), il refuse; il faut taper
+:q!
pour forcer la sortie sans sauver le document.+Ce sont ces deux touches qui servent à alterner entre les deux modes. Vous +découvrirez plus tard les autres touches qui servent à insérer au début ou à +la fin de la ligne, avant ou après la ligne courante, etc. +
+ ++Pour effacer du texte en mode insertion, utilisez la touche Backspace. La +souris ne sert à placer le curseur qu'avec gvim. L'effacement de texte en +mode commande, beaucoup plus précis, relève du Deuxième +Cercle...
C-f
pour avancer (forward), C-b
pour
+reculer (backward), C-n
pour descendre (next) et
+C-p
pour monter (previous).Help
et
+choisissez ce qui vous plaît... Je vous conseille de commencer par le tutorial
+et la FAQ*. Vous pouvez aussi utiliser les
+commandes en C-h
suivi d'une lettre pour avoir de l'aide sur
+différent aspects d'emacs. Par exemple, C-h t
lance le
+tutorial, et C-h C-h
vous donne l'aide sur l'aide.^G
ou F1
.:h
+(help). La fenêtre se divise en deux, et un fichier d'aide
+apparaît. Son fonctionnement est décrit dans les premières lignes.
+
+
+Des thèmes sont indiqués entre barres verticales
+(par exemple, |quickref|
. Pour y accéder, placez le curseur sur le
+mot-clé entre barres et tapez CRTL-] (Controle-crochet fermant). Pour revenir
+au début de l'aide, taper CRTL-T (top). Je vous conseille de
+commencer par |howto.txt|
, qui classe par thèmes les commandes.
+Pour refermer l'écran d'aide, taper :q
(quit).
+
Undo
, ou
+sélectionner Undo
dans le menu Edit
. Vous pouvez aussi
+utiliser le raccourci clavier C-x u
+(qui n'est pas C-x C-u
...) ou C-_
ou C-/
.
+
++Il n'y a pas de commande spécifique pour refaire. Un moyen de s'en sortir est +de taper un caractère et de faire des Undo : il défera alors les Undo +précédents, i.e. refera ce qui a été défait. +
^K
, vous pouvez les
+insérer en faisant ^U
.u
(undo)
+défait la dernière commande. CTRL-R
(redo) refait la dernière
+commande. On peut ainsi faire et refaire l'ensemble des actions
+faites depuis que le fichier a commencé à être édité. C-f
, C-b
,
+C-n
et C-p
agissent différemment si on change de
+modificateur:
+M-f
et M-b
se déplacent par mot.M-n
et M-p
se déplacent par paragraphes.Home
ou C-a
placent le curseur en début de
+ligne.End
ou C-e
place le curseur en fin de ligne.
+M-a
placent le curseur en début de phrase.M-e
place le curseur en fin de phrase.C-v
/ M-v
fait
+respectivement avancer/reculer le texte d'un écran. M-<
/ M->
placent respectivement tout
+au début/tout à la fin du fichier.less
.
+
+$
place le curseur en fin de ligne.^
et 0
(zéro) placent le curseur en début de ligne
+(vous saurez plus tard la différence entre les deux commandes...).w
(word) / b
(back)
+avance/recule d'un mot, curseur au début du mot.e
(end) avance d'un mot, curseur en fin de
+mot.{
et }
(accolades) : respectivement,
+recule et avance d'un paragraphe.(
et )
(parenthèses) : respectivement, recule et avance
+d'une phrase.CTRL-D
(down) / CTRL-U
(up) fait
+respectivement avancer/reculer le texte d'un demi-écran. CTRL-F
(forward) / CTRL-B
(back fait
+avancer/reculer le texte d'un écran.CTRL-E
/CTRL-Y
fait avancer/reculer le texte d'une
+ligne.gg
ou [[
placent tout au début du
+fichier.G
ou ]]
placent tout à la fin du
+fichier.15w
+fait avancer le curseur de 15 mots. M-g
(méta) et indiquer
+le numéro de ligne.^_
(line) et
+indiquer le numéro de la ligne.G
à un
+numéro de ligne. Par exemple, 38G
place sur la ligne
+38.C-k
efface la fin de la ligne courante.Cut
, ou sélectionner Cut
dans le menu
+Edit
.C-w
à l'autre extrémité.^H
) efface le caractère à gauche du curseur.^D
) efface le caractère placé sous le curseur.^K
efface la fin de la ligne courante.x
détruit le caractère sous le curseur.X
détruit le caractère à gauche le curseur.dd
détruit la ligne courante.D
détruit la fin de la ligne courante.d
à une commande de déplacement : par
+exemple, dG
pour détruire toute la fin du fichier, d}
pour
+détruire la fin du paragraphe, d3w
pour détruire trois
+mots.v
et utiliser les
+touches de déplacement pour sélectionner un fragment de texte : le texte
+sélectionné est mis en valeur. Taper d
pour détruire le texte
+sélectionné.Edit
et cliquer sur Search
ou Search
+Backwards
, et taper le mot recherché. Il est quand même plus
+simple de taper C-s
(search) ou C-r
+(rear) pour chercher en arrière; indiquez le mot et tapez à
+nouveau C-s
(C-r
) pour aller à la prochaine
+occurrence du mot. Une fois arrivé en bas (ou en haut), emacs bippe et
+revient à l'autre bout du texte.^W
; indiquez
+le mot recherché./
) et indiquer le mot recherché (comme avec less
). La casse des caractères
+peut avoir de l'importance suivant votre configuration (tapez donc les
+mots clefs en minuscules), et vim sait revenir au début du texte quand il
+a atteint la fin du fichier. Pour aller à la prochaine occurrence du mot,
+taper n
(next). Pour aller à la précédente
+occurrence du mot, taper N
.?
puis le mot.
+On se sert de n
et de N
de la même façon.*
.
+
+M-%
et compléter, en validant
+chaque terme par un retour à la ligne. Vous pouvez aussi utiliser le bouton
+Replace
ou sélectionner Replace
dans le menu
+Edit
.y
pour accepter, n
pour refuser, !
+pour tout remplacer d'un coup et q
pour arrêter les
+remplacements.^\
. Entrez la chaîne à
+chercher puis la chaîne de remplacement. Nano demande confirmation pour chaque remplacement : taper y
pour
+accepter le remplacement, n
pour le refuser, a
pour
+remplacer toutes les occurrences restantes.:%s/mot1/mot2/g
. Le pour-cent signifie que le remplacement
+se fera dans tout le fichier, s/mot1/mot2/
signifie qu'il
+faut remplacer (substitute
) le mot1 par le mot2. La dernière
+lettre, g
, signifie que l'on veut remplacer toutes les
+occurrences présentes sur chaque ligne. En effet, sans le «g», seule la
+première occurrence serait traitée.:%s/mot1/mot2/gc
. Vim vous propose alors plusieurs
+réponses possibles : y
pour accepter le remplacement,
+n
pour le refuser, a
(all) pour tout
+remplacer d'un coup, q
pour quitter. Vous retrouvez aussi
+les commandes CTRL-Y
et CTRL-E
, pour faire reculer ou
+avancer le texte d'une ligne.
+Copy
. Cliquer avec le bouton du milieu de
+la souris à l'endroit où on veut coller le texte. Vous aurez reconnu ici
+la méthode standard pour copier/coller du texte d'une fenêtre à
+l'autre.C-w
ou
+C-k
peut
+être collé ailleurs en tapant C-y
(yank). Si on veut
+copier un bout de texte sans l'effacer, il suffit de l'effacer et de le
+recopier juste après là où il était (ce qui n'empêche pas de le recopier
+ailleurs en autant d'exemplaires qu'on veut). On peut récupérer un texte
+copié il y a longtemps avec C-y
suivis d'un ou plusieurs
+M-y
. On peut aussi copier la région sélectionnée sans la
+couper avec M-w
v
et utiliser les touches de déplacement pour sélectionner
+un fragment de texte. Appuyer sur y
(yank) pour
+copier le texte en mémoire. Placer le curseur à l'endroit où on veut
+coller le texte, et appuyer sur p
(put) si vous
+voulez coller après le curseur ou sur P
si vous voulez
+coller avant le curseur.
+yy
fait une copie de la ligne courante. On peut aussi utiliser
+y commande-de-déplacement
pour copier un fragment de texte, sans
+passer par une sélection visuelle.
+
+M-q
.^J
. Q
(si ça ne marche pas : gqap
).Inser
pour balancer entre les modes
+insertion et écrasement.r
et R
(replace).
+ s
et S
(substitute).M-l
et M-u
.~
(tilde).C-x ESC ESC
..
(point).J
(join).C-M-f
+/ C-M-b
.%
(pour-cent).
+M-x local-set-key
ou M-x
+global-set-key
.:map touche fonction
.C-x i
ou Insert file
dans le menu
+File
.^R fichier
.:r fichier
.M-x write-region
:w
+nouveau-fichier
).C-x 2
ou Split
+Window
dans le menu File
. Options du menu
+File
. C-x o
pour changer de fenêtre.-CTRL-W N
(window
+new). CTRL-W k
et
+CTRL-W j
pour monter/descendre d'une fenêtre interne.M-!
:!commande
C-u M-!
:r!commande
Ce tutorial est destiné aux gens souhaitant se familiariser avec +GNU Emacs. Un +aide-mémoire des principales commandes +d'emacs est disponible.
+Emacs est un éditeur de texte très puissant, qui est également +capable de beaucoup d'autres choses (invoquer une commande shell, +envoyer ou recevoir du courrier électronique, lire les news, se +transformer en psy, et même faire le café selon certaines mauvaises +langues). En contrepartie, Emacs est assez lourd (beaucoup plus en +tout cas que l'éditeur standard d'UNIX, vi) et souvent ésotérique.
+Emacs date de 1975. Il a été écrit par Richard M. Stallman qui +était alors au MIT. Emacs a été conçu à l'origine comme un ensemble de +macros pour un TECO, un vieil éditeur de texte. Emacs veut donc dire +« Editing MACroS ». Par la suite, plusieurs +versions d'Emacs ont été développées, mais la version la plus répandue +reste GNU Emacs (alias FSF Emacs), celle de M. Stallman, qui est +la réécriture du Emacs originel.
+Emacs est principalement utilisé sous les systèmes de type UNIX, +mais il existe également pour MS-DOS ou Windows.
+Les commandes d'emacs utilisent les touches
+Control
(souvent abrégé en Ctrl
sur la
+touche) ou Meta
de votre clavier. Si vous n'avez pas de
+touche Meta
ou que vous ne savez pas où elle est,
+utilisez la touche Escape
(ou Échap
). Comme
+les commandes sont assez complexes, on utilise des
+abréviations. Ainsi, C-c
signifie : appuyez sur
+Ctrl
et, en gardant la touche enfoncée, appuyez sur
+c
. M-g
signifie : appuyez sur la touche
+Meta
et, en gardant la touche enfoncée, sur
+g
.
ESC
à la place de
+la touche Meta
, il faut appuyer sur
+ESC
puis sur l'autre touche.En particulier, par exemple, C-x i
(insertion d'un
+fichier) ne fait pas la même chose que C-x C-i
+(qui décale une région sélectionnée d'un caractère vers la
+droite)... Taper des commandes complexes d'emacs requiert parfois un
+peu de doigté. Si vous vous êtes trompé de commande, vous pouvez
+annuler avec C-_
(cf. ci-dessous la gestion des
+erreurs).
Dernière précision : toutes les commandes emacs sont
+accessibles en utilisant leur nom complet, qu'on peut appeler en
+tapant d'abord M-x
. Certaines d'entre elles sont
+disponibles par le biais de raccourcis comme ceux cités plus
+haut : M-g
par exemple a pour nom complet M-x
+goto-line
. Mais beaucoup de commandes sont accessibles
+seulement par un nom complet. En outre, vous pouvez parfois retrouver
+une commande en passant par son nom complet (on retient mieux que
+M-c
met en majuscule la première lettre d'un mot quand on
+se souvient que le c est pour capitalize-word).
Emacs a la particularité d'avoir une aide en ligne importante. Pour
+y accéder, lancez emacs tout seul (cf. infra) ou
+tapez C-h
ou encore M-x help
.
C-h
+mais M-?
. Le remplacement est à faire pour toutes les
+commandes d'aide qui suivent.C-h k
vous permet d'obtenir des renseignements
+succincts sur une commande donnée. Exemple : vous voulez savoir ce
+que fait la commande M-g
. Tapez C-h k
. Emacs
+vous demande de décrire la commande (key en
+anglais) que vous souhaitez connaître. Tapez alors
+M-g
. Emacs ouvre en 2 la fenêtre et vous dit qu'il s'agit
+de la commande goto-line
, qu'on l'emploie comme
+ceci : M-g <nombre n>
et qu'il s'agit d'aller
+à la ligne n.
C-h t
lance le tutorial officiel d'emacs (en
+anglais).
C-h i
vous donne accès aux répertoires
+« info » qui contiennent de l'aide sur différents
+programmes, parmi lesquels emacs. Cette commande vous envoie
+directement sur la rubrique emacs. On navigue entre les fichiers grâce
+à des liens hypertexte. On passe de lien en lien avec TAB
+et M-TAB
, on suit un lien avec Enter
et on
+remonte vers le répertoire père avec u
;
Pour quitter l'aide, on utilise les commandes de manipulation des +buffers (cf. ci-dessous « Manipuler plusieurs buffers en +même temps »).
+Vous pouvez obtenir la liste des commandes d'emacs en tapant
+M-x describe-bindings
.
Emacs se lance comme n'importe quel programme sous UNIX. Si vous +tapez :
+sas ~ $ emacs
+ Emacs se lancera dans une fenêtre. Pour lancer emacs dans votre
+terminal, utilisez l'option -nw
. Cette option est
+particulièrement pratique lorsque vous souhaitez travailler à distance
+sur un fichier qui est sur votre compte clipper, par exemple, mais
+elle vous privera de certaines possibilités (les menus déroulants et
+les boutons, par exemple). Si vous souhaitez travailler sur un fichier
+précis, tapez emacs puis le nom du fichier :
sas ~ $ emacs maitrise.tex
+ Si vous observez la fenêtre d'emacs, vous pourrez voir un certain +nombre d'informations qui dépendent de la version d'emacs qui est +installée. À la date où cette documentation est écrite, c'est la +version 23.3.1 qui est installée par défaut sur sas.eleves. Pour savoir +quelle est votre version, tapez
+sas ~ $ emacs --version
+ Les renseignements donnés ici valent pour cette version. Il est +possible que certaines choses ne fonctionnent pas avec des versions +plus vieilles.
+À l'heure actuelle, emacs ressemble à ceci :
+Tout d'abord, vous voyez en haut de la fenêtre des menus déroulants +(File, Edit, Options, Buffers, Tools, Help), et en-dessous quelques +icônes. Il est commode au départ d'utiliser menus déroulants et +icônes, mais il ne faut pas en abuser. C'est en apprenant les +raccourcis claviers que vous exploiterez au maximum les possibilités +d'emacs et que vous serez plus efficaces. Remarquez aussi en bas de la +fenêtre ce qu'on appelle le mini-buffer, qui sert à emacs pour +communiquer avec vous. Lorsque vous tapez une commande, elle s'affiche +dans le mini-buffer.
+Entre les deux se trouve, en gris sur l'image (avec « GNU +Emacs »), la « ligne de mode » (mode line en anglais). Elle donne de précieuses +indications telles que le nom du fichier en cours d'édition, le mode +majeur et le(s) mode(s) mineur(s) dans lequel vous vous trouvez +(cf. ci-dessous sur les modes d'emacs), éventuellement le numéro de la +ligne où se trouve votre curseur, etc.
+Emacs peut s'adapter au type de fichier que vous éditez. Ce sont
+ses « modes ». Le mode par défaut est appelé
+« fondamental », il n'a pas de comportement
+particulier. Il existe de nombreux modes, mais les plus important sont
+le mode texte, le mode C ou encore le mode LaTeX. Quand vous éditez un
+fichier, emacs choisit son mode en fonction de l'extension du fichier
+en question. Par exemple, si vous éditez un fichier en
+.tex
, il se mettra automatiquement en mode LaTeX. S'il ne
+peut pas déterminer quel type de fichier vous allez éditer, il se met
+en mode fondamental.
Les modes C, texte ou LaTeX sont des modes majeurs. Il existe aussi +des modes mineurs qui peuvent s'activer ou se désactiver à l'intérieur +d'un mode majeur. Par exemple, le mode « fill » +signifie qu'emacs va aller à la ligne dès que c'est nécessaire. Le +mode « overwrite » signifie qu'il va écrire +par-dessus les caractères déjà tapés au lieu de les insérer. Le mode +majeur et le(s) mode(s) mineur(s) dans lesquels vous vous trouvez sont +indiqués dans la ligne de mode.
+Tout d'abord, un rappel d'ordre général. Les éditeurs de texte
+n'éditent pas directement un fichier. Ils mettent le contenu de votre
+fichier dans un buffer (qu'on traduit parfois par
+« tampon ») temporaire, qu'ils éditent. Quand vous
+sauvegardez, l'éditeur retransfère les contenus du buffer dans votre
+fichier. Si vous quittez l'éditeur sans sauvegarder, le buffer est
+détruit et votre fichier demeure donc intact. C'est pourquoi, quand on
+lance emacs sans argument, il ouvre un buffer appelé
+*scratch*
: c'est un buffer sans fichier
+associé. *Help*
est un autre exemple de buffer non
+associé : c'est l'aide en ligne.
Que vous ayez lancé emacs tout court ou en lui demandant d'ouvrir +un fichier, vous pouvez insérer tout de suite du texte en tapant +directement ce que vous voulez.
+Vous pouvez ouvrir un fichier, comme nous l'avons vu, simplement en
+le donnant comme argument à emacs, ou encore le faire une fois emacs
+lancé. Pour cela, faites C-x C-f
(nom complet :
+M-x find file
). Emacs vous demande alors quel fichier
+vous voulez ouvrir. Il suffit de compléter le nom du fichier puis
+d'appuyer sur Entrée
, puis emacs crée un nouveau buffer
+qui porte le nom du fichier que vous voulez éditer. À noter que si
+vous jonglez entre plusieurs buffers, appuyer sur la flèche vers le
+haut après un C-x C-f
vous donne accès à l'historique de
+tous les fichiers déjà ouverts par ce moyen.
TAB
. Emacs essaiera de compléter le nom de
+fichier pour vous. C'est ce qu'on appelle la complétion.Avec un seul et même emacs, vous pouvez manipuler plusieurs buffers
+en même temps en utilisant le multi-fenêtrage, c'est-à-dire la
+capacité d'emacs à couper sa fenêtre en deux (ou plus) pour vous
+permettre d'avoir plusieurs buffers en regard. Pour ouvrir un deuxième
+buffer, tapez C-x 2
(la fenêtre se coupe en 2
+horizontalement dans ce cas, si vous préférez un découpage vertical,
+utilisez C-x 3
). Pour passer d'un buffer à l'autre,
+faites C-x o
. Pour faire disparaître le buffer où se
+trouve votre curseur, tapez C-x 0
. Pour faire disparaître
+l'autre c'est C-x 1
.
Le multi-fenêtrage est une fonctionnalité très utile d'emacs. Elle +vous permet de comparer facilement plusieurs fichiers, de faire +facilement des copier-coller depuis plusieurs fichiers vers un seul, +etc.
+Déplacez votre curseur jusqu'à l'endroit où vous souhaitez insérer
+un autre fichier. Puis tapez C-x i
(M-x
+insert-file
). Emacs suit la même procédure qu'avec C-x
+C-f
: il vous demande quel fichier insérer.
Si vous tapez C-x C-s
(M-x save-buffer
),
+emacs sauvegarde le buffer dans le fichier associé et indique à
+l'écran (dans le mini-buffer) « Wrote
+/users/00/litt/toto/maitrise.tex ». Si vous voulez
+sauvegarder vos modifications dans un autre fichier,
+il faut utiliser la commande C-x C-w
. Le nom complet,
+M-x write-file
est transparent : emacs écrit le
+contenu du buffer dans un fichier qui n'est pas nécessairement celui
+associé au buffer. C-x C-w
peut être pratique pour éditer
+un fichier que vous n'avez pas le droit de modifier.
Tapez C-x C-c
pour quitter emacs. Si vous avez édité
+un ou des buffers que vous n'avez pas sauvegardé(s), emacs vous
+demandera s'il doit le faire avant de se fermer.
Si vous désirez seulement quitter emacs temporairement (pour lire
+votre mail ou faire une pause dans l'édition de votre fichier), la
+meilleure solution est d'utiliser C-z
qui
+suspend emacs sans le fermer. Dès que vous voudrez reprendre
+emacs, tapez fg
dans le shell et vous retrouverez votre
+fenêtre avec le même buffer et le curseur exactement où vous l'aviez
+laissé. Si vous êtes en mode graphique, C-z
minimise la
+fenêtre d'emacs.
Les raccourcis claviers vous permettent de vous déplacer très +facilement dans votre fichier. Ils peuvent remplacer les touches +« flèches », certes, mais plus encore vous +permettre d'être beaucoup plus rapide que si vous n'utilisiez que les +touches de déplacement du clavier. Leur apprentissage est un peu +laborieux mais ils vous feront gagner beaucoup de temps.
+Bouger d'un(e)... | +Vers l'arrière | +Vers l'avant | +
---|---|---|
caractère | +
+ C-b
+ |
+
+ C-f
+ |
+
mot | +
+ M-b
+ |
+
+ M-f
+ |
+
ligne | +
+ C-p
+ |
+
+ C-n
+ |
+
début/fin de ligne | +
+ C-a
+ |
+
+ C-e
+ |
+
... à l'indentation près | +
+ M-m
+ |
+ - | +
phrase | +
+ M-a
+ |
+
+ M-e
+ |
+
paragraphe | +
+ M-{
+ |
+
+ M-}
+ |
+
buffer | +
+ M-<
+ |
+
+ M->
+ |
+
Pour effacer quelques caractères, vous pouvez utiliser les touches
+delete
ou backspace
de votre
+clavier. Évidemment, vous pouvez aussi utiliser des commandes pour
+faire ce travail. C-d
efface le caractère sur lequel se
+trouve le curseur. M-d
efface la suite d'un mot à partir
+de l'endroit où se trouve le curseur (pour que le mot entier soit
+effacé, il faut placer le curseur au début du mot).
Au niveau d'une ligne, C-k
efface le reste de la ligne
+à partir de la position du curseur. Pour effacer la ligne entière, il
+faut placer le curseur au début de la ligne.
Commande | +Nom complet | +Action | +
---|---|---|
C-d | +M-x delete-char | +Efface le caractère +sur lequel est le curseur. | +
M-d | +M-x kill-word | +Efface le mot à partir du +curseur. | +
M-backspace | +M-x backward-kill-word | +Efface le +mot précédent. | +
C-k | +M-x kill-line | +Efface la ligne à partir du +curseur | +
_ | +M-x kill-paragraph | +Efface le paragraphe à +partir du curseur. | +
On peut faire une sélection (pour couper ou copier, par exemple)
+avec la souris dans emacs. Si vous ne pouvez/voulez pas sélectionner à
+la souris (par exemple vous utilisez emacs -nw
), vous
+pouvez utilisez le système de marquage d'emacs. On place une
+« marque » au début du texte à sélectionner avec
+C-espace
. Ensuite, déplacez le curseur jusqu'à la fin du
+texte à sélectionner (on appelle l'endroit où est le curseur le
+« point »). Votre sélection est faite (même si
+vous ne la voyez pas).
Commande | +Nom complet | +Action | +
---|---|---|
C-espace | +M-x set-mark-command | +Poser une +marque | +
C-x C-x | +M-x +exchange-point-and-mark | +Échanger la marque et le point | +
M-h | +M-x mark-paragraph | +Sélectionner tout le +paragraphe | +
Quand emacs efface quelque chose (mot, ligne, paragraphe, mais pas
+un caractère isolé), il le place en mémoire (dans ce qu'en anglais on
+appelle le kill ring). Vous pouvez ensuite
+« coller » tout ce qui a été effacé (que ce soit
+une seule grosse suppression ou plusieurs suppressions d'affilée) avec
+C-y
. Pour couper à proprement parler, il faut utiliser
+C-w
(ou M-x kill-region
).
À noter que M-y
permet de naviguer dans l'historique
+du kill ring. C-y
colle la dernière
+chose à avoir été copiée ou coupée, mais si vous voulez coller quelque
+chose coupé ou collé précédemment, utilisez M-y
+après.
Pour copier quelque chose (pour le coller ensuite), sélectionner ce
+qu'il faut copier puis faites M-w
.
Pour effectuer une recherche simple vers la fin du fichier, c'est
+C-s
suivi du mot ou de l'expression recherchée. Pour une
+recherche vers le début du fichier, c'est C-r
. Avec
+emacs, il est également possible de faire des recherches en utilisant
+des expression régulières (avec des métacaractères comme ., *, ?, $,
+etc.) : taper C-M-s
. Pour aller à l'occurence
+suivante du mot ou de l'expression correspondant à votre recherche
+(simple ou avec une expression régulière), tapez C-s
ou
+C-r
. Pour annuler votre recherche, tapez
+C-g
).
+
De même, pour les remplacements, emacs vous offre deux
+possibilités. Pour remplacer simplement un mot ou une expression,
+tapez M-%
. Pour faire un remplacement à partir d'une
+expression régulière, c'est M-x
+query-replace-regexp
. Dans les deux cas, une fois qu'emacs aura
+trouvé la première occurrence correspondant à votre demande, il vous
+demandera s'il doit effectuer le remplacement.
Répondez y
pour remplacer cette occurrence,
+n
pour ne pas le faire. Dans ces deux cas, après avoir
+effectué ou pas le remplacement, emacs passera à l'occurrence
+suivante. Pour faire de manière automatique le remplacement sur la
+suite du fichier, répondez !
. Pour abandonner le
+remplacement demandé, appuyez sur ESC
.
Quand vous êtes en mode Fill
(regardez votre ligne de
+mode), emacs coupe naturellement les lignes de la meilleure manière
+possible pour lui. Mais au fur et à mesure de l'édition de votre
+fichier, vous pouvez vous retrouver avec des lignes très courtes et
+d'autres trop longues. Une commande très utile est M-q
+qui réarrange le texte d'un paragraphe de manière harmonieuse.
Vous pouvez également changer la longueur des lignes. Par exemple,
+pour fixer à 20 caractères la longueur des lignes, tapez C-u 20
+C-x f
.
Emacs possède des commandes spéciales pour les problèmes de casse
+(vous tapez deux majuscules de suite au lieu de la majuscule initiale
+suivie de minuscules, etc.). Pour mettre en majuscules la première
+lettre d'un mot, tapez M-c
(c comme capitalize. Pour mettre un mot entier en majuscules,
+c'est M-u
(u pour uppercase). Pour le
+mettre en minuscules, c'est M-l
(l pour lowercase). Emacs effectue ces transformations à partir
+de l'endroit où se trouve le curseur, pour changer le mot entier, il
+faut donc se placer sur sa première lettre.
Comme beaucoup de gens, vous faites des fautes de frappe qui sont
+souvent dues à un manque de coordination entre les doigts. Vous tapez
+donc « poru » au lieu de
+« pour ». Emacs possède des commandes qui peuvent
+résoudre votre problème en vous permettant de permuter des lettres,
+des mots, des lignes, des phrases, et même des paragraphes. Ainsi,
+alors que votre curseur est sur le u de « poru »,
+tapez C-t
pour intervertir r et u.
Commande | +Nom complet | +Action | +
---|---|---|
+ C-t
+ |
+
+ M-x
+transpose-chars
+ |
+ Intervertit deux lettres | +
+ M-t
+ |
+
+ M-x
+transpose-words
+ |
+ Intervertit deux mots | +
+ C-x C-t
+ |
+
+ M-x
+transpose-lines
+ |
+ Intervertit deux lignes | +
+ _
+ |
+
+ M-x
+transpose-sentences
+ |
+ Intervertit deux phrases | +
+ _
+ |
+
+ M-x
+transpose-paragraphs
+ |
+ Intervertit deux paragraphes | +
Si vous vous êtes trompé et que vous souhaitez revenir à l'action
+précédente, tapez C-x u
(ou C-_
, plus facile
+à taper). Vous pouvez revenir en arrière ainsi jusqu'à l'ouverture de
+votre session emacs. Attention, C-_
ne s'applique qu'à
+une modification du buffer. Ainsi, on ne peut pas annuler le
+déplacement du curseur ou une opération de copier.
C-_
par erreur, la
+même touche peut servir à faire un redo (c'est-à-dire un undo
+d'undo !). Pour cela, il vous suffit de faire un déplacement
+quelconque du curseur (pour éviter de continuer la séquence d'undo
+commencée) et de retaper C-_
. Dans certains cas, les
+C-_
en série et imbriqués peuvent avoir des conséquences
+étonnantes.Pour revenir carrément à l'état où était votre fichier au moment où
+vous l'avez sauvegardé pour la dernière fois, tapez M-x
+revert-buffer
.
C-g
.Emacs affichera « Quit » dans le mini-buffer +et abandonnera la commande en cours.
+Il est possible d'exécuter une commande shell depuis emacs, par
+exemple pour compiler le fichier tex que vous êtes en train
+d'éditer. C'est la commande M-!
. Emacs vous demande dans
+le mini-buffer la commande que vous souhaitez lancer, et vous donne
+son résultat. Si la commande s'est effectuée sans compte-rendu, emacs
+vous dit « (Shell command succeeded with
+no output) ». Sinon, il coupe sa fenêtre en deux et
+vous donne la sortie de la commande.
Pour exécuter une commande shell puis insérer le résultat de cette
+commande dans le buffer, tapez plutôt C-u
+M-!
. Exemple : vous souhaitez insérer dans votre fichier
+la date exacte. Tapez C-u M-!
, puis emacs vous demande
+quelle commande vous souhaitez exécuter. Répondez
+« date ». Emacs insérera le résultat de la
+commande date
directement dans le fichier, au point où se
+trouve votre curseur.
Vous pouvez même demander un terminal dans un nouveau buffer, qui
+s'appelle précisément *Shell*, avec la commande M-x
+shell
. Attention, ce terminal ne traite pas les séquences
+d'échappement, pour cela il faut plutôt faire M-x term
+qui lance *terminal*.
Emacs permet de répéter autant de fois qu'on le souhaite le même
+caractère ou la même commande grâce à C-u
+<nombre>
. Ainsi, C-u 50 C-p
permet de
+répéter 50 fois la commande C-p
et donc de remonter de 50
+lignes. C-u 5 !
vous permet d'insérer 5 points
+d'exclamation.
Dans le cadre de commandes plus complexes, C-u
+<nombre>
agit comme un modificateur. On l'a vu par
+exemple pour changer la taille des lignes.
M-/
vous permet de compléter un mot en cours de
+frappe. Admettons que vous écriviez un article de droit
+constitutionnel et que vous deviez taper
+« anticonstitutionnellement » à plusieurs
+reprises. La deuxième fois, tapez simplement
+« anti » puis M-/
. Emacs complètera
+tout seul. Si d'autres mots commençant par
+« anti » apparaissent déjà dans le buffer, taper
+de nouveau M-/
permet de cycler entre tous les mots
+possibles.
On prétend qu'emacs sait aussi faire le café, en attendant, vous
+pouvez toujours vous faire psychanalyser par lui. Essayez donc
+M-x doctor
!
Emacs est extrêmement configurable. Pour modifier quelque chose à
+sa configuration, il faut modifier le fichier .emacs
se
+trouvant dans votre répertoire personnel. Le .emacs
de la
+config conscrits 2002 contient une petite introduction au langage
+utilisé ainsi qu'aux configurations de base que l'on peut faire.
Cet aide-mémoire a uniquement pour but de vous dépanner quand vous +demandez « Bon sang, c'est quoi déjà la commande pour +permuter deux caractères ? » Si vous débutez avec +emacs, il vaut mieux lire le tutorial qui est +conçu pour vous.
+ Pour savoir comment décrypter les abréviations de commande
+(comment taper C-x C-c
), voir la section « Format des commandes emacs » du tutorial.
On lance emacs simplement en tapant :
+prao ~ $ emacs
+ Pour éditer un fichier précis :
+prao ~ $ emacs monbofichier.html
+ Commande | +Commande étendue | +Description | +
---|---|---|
C-z | +M-x suspend-emacs | +Suspendre (ou +iconfier quand on est en mode graphique) emacs | +
C-x C-c | +M-x quit-window | +Quitter emacs | +
Commande | +Nom complet | +Action | +
---|---|---|
C-h | +M-x help | +Aide d'emacs (M-? pour la config +conscrits 2002) | +
C-h k | +M-x describe-key | +Brève description d'une +commande | +
C-h i | +M-x info | +Lance les fichiers d'aide +info. | +
C-h m | +M-x describe-mode | +Description d'un mode +majeur ou mineur | +
C-h t | +M-x help-with-tutorial | +Lance le tutorial +d'emacs | +
Commande | +Commande étendue | +Description | +
---|---|---|
C-x C-f | +M-x find-file | +Ouvrir un (nouveau) fichier | +
C-x C-s | +M-x save-buffer | +Sauvegarder le buffer +courant | +
C-x s | +M-x save-some-buffers | +Sauvegarder tous +les buffers en cours d'édition | +
C-x C-b | +M-x list-buffers | +Avoir la liste de tous les buffers. | +
C-x b | +M-x switch-to-buffer | +Changer de buffer | +
C-x C-q | +M-x vc-toggle-read-only | +Passer le buffer en lecture seule, ou lecture-écriture (selon +l'état de départ) | +
C-x o | +M-x other-window | +Passer à une autre fenêtre | +
C-x 1 | +M-x delete-other-windows | +Faire disparaître toutes les fenêtres sauf la fenêtre courante | +
C-x 2 | +M-x split-window-horizontally | +Partage la fenêtre courante en 2, horizontalement | +
C-x 3 | +M-x split-window-vertically | +Partage la fenêtre courante en 2, verticalement | +
Bouger d'un(e)... | +Vers +l'avant | +Vers l'arrière | +
---|---|---|
caractère | +
+ C-b
+ |
+
+ C-f
+ |
+
mot | +
+ M-b
+ |
+
+ M-f
+ |
+
ligne | +
+ C-p
+ |
+
+ C-n
+ |
+
début/fin de ligne | +
+ C-a
+ |
+
+ C-e
+ |
+
phrase | +
+ M-a
+ |
+
+ M-e
+ |
+
paragraphe | +
+ M-{
+ |
+
+ M-}
+ |
+
buffer | +
+ M-<
+ |
+
+ M->
+ |
+
Commande | +Nom complet | +Action | +
---|---|---|
C-d | +M-x delete-char | +Efface le caractère sur +lequel est le curseur. | +
M-d | +M-x kill-word | +Efface le mot à partir du +curseur. | +
M-backspace | +M-x backward-kill-word | +Efface +le mot précédent. | +
C-k | +M-x kill-line | +Efface la ligne à partir +du curseur | +
_ | +M-x kill-paragraph | +Efface le paragraphe à +partir du curseur. | +
M-z <c> | +M-x zap-to-char | +Efface jusqu'à la +prochaine occurrence de <c> (<c> compris) | +
La sélection peut se faire à la souris mais aussi au +clavier :
+Commande | +Nom complet | +Action | +
---|---|---|
C-espace | +M-x set-mark-command | +Poser une +marque | +
C-x C-x | +M-x +exchange-point-and-mark | +Échanger la marque et le point | +
M-@ <n> | +M-x mark-word | +Sélectionne + <n> mots à partir de la position du curseur | +
M-h | +M-x mark-paragraph | +Sélectionner tout le +paragraphe | +
C-x h | +M-x mark-whole-buffer | +Sélectionner le +buffer entier | +
Commande | +Nom complet | +Action | +
---|---|---|
C-w | +M-x kill-region | +Couper la +sélection | +
M-w | +M-x copy-region-as-kill | +Copier la +sélection | +
C-y | +M-x yank | +coller | +
M-y | +M-x yank-pop | +(uniquement après un
+C-y ) navigue dans l'history de la kill-ring |
+
Commande | +Nom complet | +Action | +
---|---|---|
C-s | +M-x isearch forward | +Recherche simple vers +la fin du fichier | +
C-r | +M-x isearch backward | +Recherche simple vers +le début du fichier | +
C-M-s | +M-x isearch-forward-regexp | +Recherche +une expression régulière vers la fin du fichier | +
C-M-r | +M-x isearch-backward-regexp | +Recherche +une expression régulière vers le début du fichier | +
M-% | +M-x query-replace | +Remplacer | +
_ | +M-x query-replace-regexp | +Remplacer en +utilisant une expression régulière | +
+ | + | + |
Commande | +Nom complet | +Action | +
---|---|---|
M-c | +M-x capitalize-word | +Met en majuscules la +premier caractère d'un mot | +
M-u | +M-x upcase-word | +Met le mot en +majuscules | +
M-l | +M-x downcase-word | +Met le mot en +minuscules | +
C-x C-u | +M-x upcase-region | +Met la région en +majuscules (désactivé par défaut) | +
C-x C-l | +M-x downcase-region | +Met la région en +minuscules (désactivé par défaut) | +
Commande | +Nom complet | +Action | +
---|---|---|
+ C-t
+ |
+
+ M-x
+transpose-chars
+ |
+ Intervertit deux lettres | +
+ M-t
+ |
+
+ M-x
+transpose-words
+ |
+ Intervertit deux mots | +
+ C-x C-t
+ |
+
+ M-x
+transpose-lines
+ |
+ Intervertit deux lignes | +
+ _
+ |
+
+ M-x
+transpose-sentences
+ |
+ Intervertit deux phrases | +
+ _
+ |
+
+ M-x
+transpose-paragraphs
+ |
+ Intervertit deux paragraphes | +
Commande | +Nom complet | +Action | +
---|---|---|
C-_ ou C-x u | +M-x undo | +Annule la dernière +action | +
C-g | +M-x keyboard-quit | +Annule une commande en +cours de frappe ou d'exécution | +
_ | +M-x recover-file <fichier> | +Récupérer +un fichier dont l'édition a été interrompue par une erreur +système | +
_ | +M-x revert-buffer | +Récupérer le buffer dans +l'état de dernière sauvegarde | +
Commande | +Nom complet | +Action | +
---|---|---|
M-! | +M-x shell-command | +Exécute une commande +shell | +
C-u M-! | +_ | +Insère le résultat d'une commande +dans le buffer courant | +
M-| | +M-x shell-command-on-region | +Exécute une +commande sur la région sélectionnée | +
C-u M-| | +_ | +Applique un filtre sur une région, +puis insère le résultat dans le buffer courant | +
_ | +M-x shell | +Lance un shell dans terminal +rudimentaire (sans séquences d'échappement) | +
_ | +M-x term | +Lance un terminal plus élaboré | +
Commande | +Nom complet | +Action | +
---|---|---|
M-$ | +M-x ispell-word | +Vérifie l'orthographe du +mot | +
_ | +M-x ispell-region | +Vérifie l'orthographe de +la région | +
_ | +M-x ispell-buffer | +Vérifie l'orthographe du +buffer entier | +
_ | +M-x ispell-change-dictionary | +Change le +dictionnaire utilisé pour vérifier l'orthographe | +
Commande | +Nom complet | +Action | +
---|---|---|
M-q | +M-x command fill-paragraph | +Reformate le +paragraphe | +
M-/ | +M-x dabbrev-expand | +Développe à la volée le +début d'un mot déjà tapé précédemment | +
C-u <n> <commande> | +_ | +Répète +<n> fois la commande | +
C-u <n> <c> | +_ | +Répète <n> +fois le caractère <c> | +
M-g <n> | +M-x goto-line | +Va à la ligne +<n> | +
_ | +M-x calendar | +Lance un calendrier du mois | +
Commande | +Nom complet | +Action | +
---|---|---|
_ | +M-x spook | +Génère une liste des mots clefs +censés confuser Echelon et la NSA (hum...) | +
_ | +M-x hanoi | +Devant vos yeux ébahis, emacs +résout le casse-tête des tours de Hanoi | +
_ | +M-x handwrite | +Transforme votre fichier texte +en PostScript prêt à imprimer, avec une écriture manuscrite | +
_ | +M-x dunnet | +Jeu de type +« adventure » | +
_ | +M-x gomoku | +Jeu de go | +
_ | +M-x doctor | +Le psychanalyste d'emacs. Emacs +est votre ami. | +
+Un éditeur de texte est un programme qui sert à... éditer des textes
+(c'est-à-dire à les créer et à les modifier). Contrairement à un
+traitement de texte, il ne sert pas à faire de la mise en
+forme, la mise en page qu'on peut y faire est seulement une question
+de lisibilité. Dans le monde Windows, par exemple, le Bloc-notes
+(notepad.exe
) est l'éditeur de texte (très rudimentaire)
+fourni avec le système. Sous UNIX, vous connaissez sans doute
+pico
, l'éditeur de texte utilisé par le lecteur de
+courrier pine
.
+
+Un éditeur de texte vous sert à : +
++Donc, chaque fois que vous avez besoin d'écrire quelque chose, vous vous +servez d'un éditeur de texte. +
++Voici les documentations que nous vous proposons : +
+pico
. Il ne déroutera pas les habitués des éditeurs
+Windows ou Mac.nano
(éditeur simple et convivial dérivé de
+pico
), emacs
et vim
(éditeurs
+plus puissants, mais plus compliqués)Emacs
, un éditeur très puissant et polyvalent :
+Vim
, un éditeur
+très puissant et rapide (encore en construction)
+Vous tapez le nom de l'éditeur, suivi du nom du fichier. Par exemple, pour
+écrire le fichier rapport.tex
avec l'éditeur nano
, on
+tape :
+
corvette ~ $ nano rapport.tex
+ +Ce qui peut vous dérouter, c'est que certains éditeurs sont en +mode texte : ils se lancent dans la fenêtre où vous +avez tapé la commande, au lieu de se lancer dans une nouvelle +fenêtre. Quand on n'est pas habitué, on n'a pas l'impression d'être +«dans» un programme. C'est une question d'habitude! +
++Dans tous les cas, il faut veiller à sauver son document très régulièrement +pendant qu'on l'écrit, et à quitter correctement l'éditeur (avec sa commande spécifique). +
++Il y a plusieurs éditeurs, certains très simples et spartiates, +d'autres simples et à la souris, d'autres plus complexes... Le choix +dépend des goûts personnels, si on aime la souris ou non, les +raccourcis claviers, le syntax highlighting (colorisation +syntaxique), etc. +
+
+Pour les débutants, on conseille nano
(similaire à
+l'éditeur de pine
), joe
, ou, en mode
+graphique, nedit
et kwrite
. Si vous souhaitez
+un éditeur plus puissant, ou plus polyvalent, vous avez le choix entre
+Vim
et Emacs
.
+
pico
et continuer
+avec vim
ou autre.
+Nom | +Menus souris | +Couleur | +Remarques | +
---|---|---|---|
axe | +Oui | +Non | +Pas testé | +
cooledit | +Oui | +Oui | +Graphique et joli, peu connu. | +
elvis | +Oui | +Oui | +Vi en mode graphique. Peu testé. | +
+ emacs + | +Oui | +Oui | +Intuitif ou puissant (les fonctions puissantes ne sont pas intuitives +et vice-versa). | +
joe | +Non | +Non | +Mode texte. Simple et puissant. | +
kwrite | +Oui | +Oui | +L'éditeur de KDE | +
kate | +Oui | +Oui | +Variante plus perfectionnée de kwrite |
+
mcedit | +Oui | +Non | +Pas vraiment testé. Mode texte cliquable. | +
nano | +Non | +Non | +Un clone amélioré pico |
+
+ NEdit + | +Oui | +Oui | +Simple et intuitif | +
pico | +Non | +Non | +L'éditeur intégré de Pine | +
+ vim + | +Non | +Oui | +Très puissant, très déroutant | +
xed | +Oui | +Non | +Simple et spartiate | +
xedit | +Oui | +Non | +Simple et spartiate | +
xemacs | +Oui | +Oui | +Presque identique à emacs. | +
gedit
.
+ NEdit est un éditeur de texte en +mode graphique, disponible pour UNIX mais aussi MacOS X et Windows. Il +est simple et intuitif, et son fonctionnement ne devrait pas vous +poser trop de problèmes si vous êtes habitué à utiliser les éditeurs +Windows ou Mac. Bien que facile à apprendre, il est assez +puissant. C'est un bon choix si vous êtes effrayé par Emacs ou Vim. Gros +inconvénient quand même : comme il est en mode graphique, vous ne +pourrez pas le lancer à distance depuis un Windows ou un Mac. +
+
+On utilise les conventions suivantes dans cette page : « File >
+Open
» veut dire « cliquez sur File
, un menu
+déroulant va s'ouvrir, parcourez-le et cliquez sur
+Open
». « Ctrl+O
» signifie « tapez sur la
+touche Control (souvent abrégée en Ctrl
) puis sur la
+touche 'o' ». Shift+Ctrl+Z
veut dire « tapez sur la
+touche Shift (celle qui sert à faire les majuscules), puis la touche
+Control, puis la touche 'z' ».
+
+Voici un aperçu de ce que donne NEdit en train d'éditer un fichier +(ici, la page source de ce que vous êtes en train de lire). +
++Observez que NEdit fait de la colorisation syntaxique, c'est-à-dire +qu'il colore les différents éléments du texte suivant leur +fonction. Ici, c'est un fichier XML (sorte de dérivé du HTML, le langage des pages +Web). Les « tags » sont de couleur différente du texte à proprement +parler, ce qui rend le tout beaucoup plus lisible. Cette +fonctionnalité est très utile quand vous tapez des fichiers LaTeX ou +HTML, par exemple, ou quand vous programmez... +
++Rien de très différent des autres éditeurs ici. Si vous tapez : +
+sas ~ $ nedit
+
+ NEdit va se lancer. Comme c'est un éditeur +graphique, il s'ouvre dans une nouvelle fenêtre. Vous pouvez aussi lui +indiquer directement le fichier à ouvrir : +
+sas ~ $ nedit index.html
+
+
+Pour ouvrir un fichier, vous pouvez indiquer le fichier à ouvrir en
+ligne de commande, comme vu plus haut, mais aussi utiliser File
+> Open
(ou Ctrl+O
). À chaque fois, le fichier
+s'ouvre dans une autre fenêtre. Il n'y a pas de
+limite au nombre de fichiers que vous pouvez ouvrir.
+
+NEdit garde en mémoire les fichiers que vous avez récemment
+édités. Pour en réouvrir un, choisissez parmi ceux que vous propose
+File > Open previous
.
+
+Si vous avez tapé nedit
tout court, vous avez à votre
+disposition une fenêtre sans titre (« Untitled »). Vous pouvez taper directement pour créer un
+nouveau fichier. NEdit vous demandera comment l'appeler quand vous
+sauvegarderez. Sinon, c'est File > New
(ou
+Ctrl+N
).
+
+C'est File > Save
ou Ctrl+S
. Si le fichier
+ne possède pas de titre (« Untitled »), NEdit vous
+demandera de lui en donner un. Pour sauvegarder sous un autre nom,
+File > Save As
.
+
+À noter que quand NEdit se ferme mal, il crée une sauvegarde du
+fichier que vous étiez en train d'éditer. Cette sauvegarde porte le
+nom ~monfichier
, ou « monfichier » est évidemment le nom
+du fichier que vous éditiez.
+
+Si vous souhaitez seulement fermer une fenêtre, c'est File >
+Close
(Ctrl+W
). Si vous souhaitez quitter
+définitivement NEdit (ce qui fermera toutes vos fenêtres, si vous en
+avez plusieurs), c'est File > Quit
(Ctrl+Q
).
+
+Pour effacer, utilisez les touches Del
(aussi appelées
+Suppr
) et backspace
(<-
) de
+votre clavier. Pour effacer tout un bloc de texte, sélectionner-le
+simplement à la souris, puis faites Ctrl-X
(ou appuyez
+sur Del
).
+
+Sélectionner avec votre souris l'expression à copier, puis tapez
+Ctrl+C
. Cette commande place l'expression sélectionnée
+dans le presse-papiers. Ensuite, cliquez à l'endroit ou vous voulez
+copier l'expression, et tapez Ctrl+V
. Pour couper-coller,
+même chose avec Ctrl+X
(couper) et Ctrl+V
.
+
+Pour inclure tout un fichier à l'endroit où se trouve votre curseur,
+utilisez File > Include file
(Alt+I
).
+
+Pour chercher une expression dans votre fichier, il faut passer par
+Search > Find
(Ctrl+F
). Différentes options
+sont possibles : faire une recherche simple, utiliser une expression
+régulière, rechercher en indiquant ou non la casse, etc. La recherche
+commence à l'endroit où se trouve votre curseur.
+
+Pour remplacer, c'est Search > Replace
+(Ctrl+R
). Indiquez d'abord l'expression à remplacer, uis
+la nouvelle expression. Vous aurez ensuite à choisir entre différentes
+manières de remplacer : pour remplacer seulement la première
+occurrence, cliquez sur « Replace ». Pour remplacer sur tout le
+document, cliquez sur « Window ». Si vous voulez pouvoir remplacer ou
+pas au cas par ca, cliquez sur « Replace and Find ». NEdit va
+rechercher chaque occurrence du terme à remplacer, puis vous
+l'indiquer en grisé. Vous devrez alors choisir entre remplacer
+(Ctrl+T
) ou passer à l'occurence suivante sans rien
+toucher (Ctrl+G
).
+
Edit > Undo
(ou Ctrl+Z
) annule votre
+dernière action. Vous pouvez faire des Undo
successifs
+jusqu'à ce que mort s'ensuive.
+
+Vous pouvez aussi faire des Redo
. Cétikoi ? Imaginons que
+vous ayez collé un paragraphe à un endroit de votre fichier. Vous
+changez d'avis et faites un Undo
. Vous réfléchissez de
+nouveau et vous vous dites que non, il était très bien là. Vous voulez
+donc annuler l'opération « Annuler l'opération précédente » : c'est ce
+qu'on appelle un « redo », faisable avec Shift+Ctrl+Z
.
+
+Enfin, si vous n'aimez vraiment pas les modifications que vous avez
+faites à un fichier, vous pouvez revenir à létat où il était lors de
+sa dernière sauvegarde avec File > Revert to saved
.
+
Action | +À la souris | +Raccourci clavier | +
---|---|---|
Ouvrir un fichier | +File > Open | +Ctrl+O | +
Créer un nouveau fichier | +File > New | +Ctrl+N | +
Sauvegarder | +File > Save | +Ctrl+S | +
Fermer une fenêtre | +File > Close | +Ctrl+W | +
Quitter NEdit | +File > Quit | +Ctrl+Q | +
Couper la sélection | +Edit > Cut | +Ctrl+X | +
Copier la sélection | +Edit > Copy | +Ctrl+C | +
Coller la sélection | +Edit > Paste | +Ctrl-V | +
Rechercher | +Search > Find | +Ctrl+F | +
Remplacer | +Search > Replace | +Ctrl+R | +
Annuler la dernière action | +Edit > Undo | +Ctrl+Z | +
« Redo » | +Edit > Redo | +Shift+Ctrl+Z | +
+Cette page n'était qu'un simple tour d'horizon. NEdit a bien sûr,
+beaucoup plus de fonctionnalités. Pour en savoir plus, reportez-vous à
+la documentation fournie (Menu Help
), également
+disponible en ligne.
+
Cette page contient une collection d'astuces pour l'utilisateur +déjà rompu à GNU Emacs. Si vous êtes débutant et souhaitez vous +initier à Emacs, allez plutôt voir le tutorial de +tuteurs.
+ Vous connaissez déjà la commande M-/
qui permet de
+compléter un mot en cours de frappe (sinon, voir le tutorial. Dans le même genre, emacs gère les
+abréviations.
Le mode mineur « abbreviation » vous permet, +comme son nom l'indique, de définir des abréviations qu'emacs se +chargera de développer au cours de l'édition du fichier. Par exemple, +vous pouvez définir l'abréviation ENS qui se développera en +« École Normale supérieure. »
+Essayons un peu. Tapez M-x abbrev-mode
pour basculer
+dans le mode « abbreviation » (Cf. la mode line). Tapez ensuite l'abréviation de votre choix
+(pour des raisons évidentes, ne choisissez pas un mot existant). Si
+vous souhaitez des abréviations locales (limitées au mode dans lequel
+vous vous trouvez), tapez ensuite C-x ail
. Pour les
+abréviations globales (qui s'appliquent à tous les modes), c'est
+C-x aig
. Tapez ensuite la version développée, puis
+appuyez sur ENTER
. Dorénavant, dans cette session, à
+chaque fois que vous taperez « ENS », emacs
+développera en « École Normale supérieure. »
+Pour sortir du mode abréviation, tapez M-x
+kill-all-abbrevs
.
+
On peut s'en servir pour faire comme dans MS Word et définir une +liste de mots sur lesquels on fait tout le temps des coquilles. Genre +« teh » pour « the » ou « poru » pour « pour ». Il suffit de dire à +Emacs que ce sont des abréviations pour qu'il les remplace au vol par +le mot orthographié correctement.
+ Commençons par indiquer à emacs que l'on souhaite utiliser le mode
+abréviation par défaut, que l'on a un fichier d'abréviations qui
+s'appelle ~/.abrev
et que l'on souhaite sauvegarder ce
+fichier à chaque fois. D'abord, on crée le fichier
+.abrev
, vide pour l'instant.
sas ~ $ touch .abrev
+
+ Puis on indique dans son .emacs
:
+(setq-default abbrev-mode t) +(read-abbrev-file "~/.abrev") +(setq save-abbrevs t) ++
Quittez puis relancez emacs tout seul, « Abbrev » figurera dans la
+mode line. Suivez la procédure décrite
+ci-dessus : on tape l'abréviation, puis C-x aig
ou
+C-x ail
, l'abréviation développée, puis
+Enter
. Répétez l'opération autant de fois que souhaité
+pour constituer votre liste d'abréviations. Ensuite, on sauvegarde
+cette liste : M-x write abbrev-file
puis
+Enter
. Emacs vous demande alors le nom de votre fichier,
+tapez donc ~/.abrev
puis Enter
.
+Par la suite, pour ajouter de nouvelles abréviations, contentez-vous +de les définir comme indiqué ci-dessus, emacs vous demandera si vous +voulez sauvegarder votre fichier d'abréviations. Il suffira de +répondre oui. +
+Pour effacer une abréviation, tapez M-x edit-abbrevs
+qui lance l'éditeur d'abréviations (pour simplement voir la liste,
+c'est M-x list-abbrevs
). Ladite liste ressemble à
+ceci :
+
+(global-abbrev-table) + +"gwb" 1 "George W. Bush" +"usa" 1 "États-Unis" +"pour" 1 "pour" ++
+Entre parenthèses, emacs vous dit qu'il s'agit d'abréviations globales
+(si elles avaient été locales, vous auriez vu
+(text-mode-abbrev-table)
, ou
+(fundamental-mode-abbrev-table)
, etc.). La colonne de
+gauche affiche les abréviations proprement dites, la seconde colonne
+est la cuisine interne d'emacs, la colonne de droite contient les
+abréviations développées. Pour effacer une abréviation, utilisez une
+commande standard pour effacer la ligne en question, C-k
+par exemple, puis sauvegardez.
+
Vous connaissez les bookmarks (alias « signets » pour Netscape ou +« favoris » pour Internet Explorer) dans un navigateur. Eh bien dans +emacs, il y en a aussi. Ils jouent très exactement le rôle de +marque-pages : vous pouvez ainsi retrouver exactement l'endroit +où vous en étiez d'une session à l'autre. +
+Commande | +Commande complète | +Action | +
---|---|---|
C-x r m Enter |
+ _ | +Pose un bookmark à +l'endroit où se trouve le point | +
C-x r m <nom> Enter |
+ M-x +bookmark-set | +Pose un bookmark et lui donne un nom | +
_ | +M-x bookmark-delete <nom> | +Détruit le bookmark <nom> | +
C-x r b <nom> | +M-x bookmark-jump | +Aller au +bookmark <nom> | +
C-x r l | +M-x bookmark-list | +Lister tous les bookmarks | +
_ | +M-x bookmark-file | +Sauve les bookmarks | +
+Emacs vous permet d'agir sur vos répertoires : regarder le
+contenu d'un répertoire, effacer des fichiers, les renommer, les
+copier, etc. Bref, tout ce que vous faites d'ordinaire avec les
+commandes cp
, rm
ou encore mv
+sous UNIX. Tout cela, grâce à Dired (DIRectory EDitor)...
+
+Commençons par demander à Emacs de lire un répertoire. Par exemple, le
+répertoire armoire/
de tuteurs.
+
sas ~ $ emacs ~tuteurs/armoire
+
+
+On obtient alors le résultat suivant, similaire à ce que vous aurait
+donné un ls -la
sur le même répertoire :
+
+ /users/staffs/tuteurs/armoire: + used 8 available 222601 + drwxr-xr-x 3 tuteurs 512 Jan 8 02:30 . + drwxr-xr-x 30 tuteurs 2560 Apr 1 20:06 .. + drwxr-xr-x 2 tuteurs 512 Jan 8 02:32 affiche + -rw-r--r-- 1 tuteurs 1334 Oct 14 2002 inventaire.txt + -rw-r--r-- 1 tuteurs 954 Nov 14 11:24 livres.txt ++
Vous pouvez vous déplacer dans Dired à l'aide de la touche
+n
, de la barre d'espace ou encore de
+C-n
. Pour éditer un fichier, appuyez sur
+e
. Pour simplement jeter un coup d'œil au fichier,
+v
demande à emacs d'afficher le fichier dans un buffer en
+lecture seule appelé « View ». On quitte ce buffer avec un simple
+q
.
+
+Autre remarque : si vous modifiez le contenu de votre directoire
+en dehors de Dired (par exemple, en suspendant emacs pour revenir au
+shell), il faudra relancer Dired pour prendre en compte les
+modifications du disque (C-x C-f <répertoire>
).
+
Le mécanisme est identique que celui pour effacer un buffer dans la
+liste des buffers (C-x C-b
). Placez votre curseur sur la
+bonne ligne puis tapez sur d
. Un « D » apparaît alors sur
+la ligne, tout à gauche :
+ /users/staffs/tuteurs/armoire: + used 8 available 222601 + drwxr-xr-x 3 tuteurs 512 Jan 8 02:30 . + drwxr-xr-x 30 tuteurs 2560 Apr 1 20:06 .. +D drwxr-xr-x 2 tuteurs 512 Jan 8 02:32 affiche + -rw-r--r-- 1 tuteurs 1334 Oct 14 2002 inventaire.txt +D -rw-r--r-- 1 tuteurs 954 Nov 14 11:24 livres.txt ++
+Pour aller plus rapidement, #
marque comme à effacer tous
+les fichiers d'auto-save (ceux dont le nom commence et finit par des
+#, précisément) et ~
, tous les fichiers de backup (dont
+le nom finit en ~). Pour enlever la marque d'effacement d'un fichier,
+appuyez sur u
(comme « undelete »).
+
+Quand vous avez fini, et que vous souhaitez vraiment détruire les
+fichiers, tapez x
. Emacs vous demandera de confirmer la
+destruction des fichiers marqués.
+
Pour copier, tapez C
(ou M-x
+dired-do-copy
) sur le fichier à copier. Emacs vous demande
+alors le nom du nouveau fichier. Pour renommer, même principe en
+tapant R
(ou M-x dired-do-move
).
Dired vous permet de faire quasiment toutes les opérations sur +fichier ou répertoire que les commandes UNIX standard. Le tableau +suivant récapitule des points déjà expliqués et vous présente d'autres +possibilités.
+Commande | +Nom complet | +Action | +Équivalent UNIX | +
---|---|---|---|
e | +_ | +Éditer le fichier | +emacs | +
R | +M-x dired-do-rename | +Renommer le +fichier | +cp | +
C | +M-x dired-do-copy | +Renommer le +fichier | +mv | +
d | +M-x dired-do-delete | +Marquer pour +l'effacement | +rm | +
~ | +_ | +Marquer pour l'effacement tous les fichiers de +backup | +rm *~ | +
# | +_ | +Marquer pour l'effacement tous les fichiers +d'autosave | +rm *# | +
u | +_ | +Enlever la marque d'effacement | +_ | +
+ | +M-x dired-create-directory | +Créer un +répertoire | +mkdir | +
M | +M-x dired-do-chmod | +Changer les droits +d'accès | +chmod | +
G | +M-x dired-do-chgrp | +Changer le +groupe | +chgrp | +
O | +M-x dired-do-chown | +Changer le propriétaire du +fichier | +chown | +
S | +M-x dired-do-symlink | +Faire un lien +symbolique | +ln -s | +
H | +M-x dired-do-hardlink | +Faire un lien +dur | +ln | +
Z | +M-x dired-do-compress | +Compresse un fichier (avec +gunzip) | +gzip | +
Vous pouvez également lire des pages de man directement dans
+emacs, grâce à la commande M-x man
. Appuyez sur
+Enter
, puis emacs vous demandera quelle page de man vous
+souhaitez lire. Par défaut, il s'agit du mot sur lequel est placé
+votre curseur. Vous pouvez également spécifier la section dans
+laquelle se trouve la page recherchée. Par exemple, vous recherchez la
+page de man du test, célèbre distraction normalienne, qui se trouve
+dans la section I :
+Manual entry: test I ++
+Ce qui vous donne : +
++Misc. Manual Pages TEST(I) + +NAME + test - distraction normalienne + +DESCRIPTION + Le test est une distraction spécifiquement normalienne. Le + test consiste à dire ou faire quelque chose avec l'intention + de tirer de son interlocuteur une réaction précise. Si + cette réaction se produit effectivement, on dira « test », +--11:%%-F1 *Man test I* { page 1 of 1} (Man)--L1--Top--------------------- ++
Il est plus facile de lire une page de man dans emacs qu'en
+invoquant la commande man
dans le shell. Seul
+inconvénient : vous ne pouvez pas interrompre emacs pendant qu'il
+est en train de mouliner à la recherche de la page de man demandée,
+pas même avec C-g
...
+Ce qu'on appelle time stamp ici, c'est la date +précise d'un événement. Emacs permet d'insérer automatiquement des +time stamps, typiquement pour indiquer la date de dernière +modification d'un fichier. +
+
+Par exemple, pour insérer automatiquement la date à chaque sauvegarde
+du fichier, commencez par écrire dans votre .emacs
:
+
+(add-hook 'write-file-hooks 'time-stamp) ++
+Ensuite, dans votre fichier, indiquez dans les 8 premières +lignes : +
++Time-stamp: <> ++
+Lors de votre prochaine sauvegarde, emacs indiquera la date entre les +<> : +
++Time-stamp: <2003-07-27 22:18:53 monlogin> ++
+Comme vous le voyez, par défaut la date est indiquée au format +année-mois-jour, suivie de votre login. À chaque fois que vous +sauvegarderez ce fichier, emacs mettra à jour la date. +
++Non, je rigole...
+ ++Nous allons voir ici comment taper de l'Unicode, ce qui recouvre plus ou +moins toutes les langues et tous les alphabets bizarres de la planète, et +peut-être même d'au-delà (l'intégration du Tengwar est en discussion). +
++Unicode, c'est une collection de caractères utilisés dans toutes les langues +du monde, avec un numéro pour chaque caractère. Ce qu'on entend par « taper +de l'Unicode », c'est taper un fichier texte qui utilise ces caractères, +probablement au delà de simplement les caractères latins. Pour bien +comprendre tout ce qui va suivre, il est probablement utile d'avoir lu +notre page théorique sur les +encodages. +
++Les difficultés qui se présentent sont principalement de mettre en place un +environnement permettant de taper et d'afficher ces caractères, de choisir +et configurer un éditeur pour travailler en Unicode, et de taper des +caractères qui ne sont pas disponibles sur le clavier. +
++Note : partout dans ce texte, quand il sera question d'un fichier en +Unicode, ça sous-entendra un fichier codé en UTF-8. +
++La gestion d'Unicode demande un boulot non trivial de la part de l'éditeur, +c'est pourquoi la plupart n'en sont hélas pas capables. +
++Parmi les éditeurs disponibles ici, seuls Vim et +Emacs en sont capables. Par chance, ce sont, de +loin, les deux meilleurs éditeurs, et vous avez tout intérêt à choisir l'un +d'eux même sans ça. +
++Sauf si vous comptez utiliser exclusivement Emacs en mode graphique, vous +avez besoin d'un terminal capable d'afficher de l'Unicode et d'en recevoir +de l'utilisateur. +
+
+L'émulateur de terminal par défaut proposé sur les machines de l'École
+(gnome-terminal
supporte l'Unicode.
+
+Un terminal Unicode est un terminal très particulier. Si vous lancez dedans +une application qui ne connaît pas Unicode, il est très probable qu'elle +fasse à peu près n'importe quoi (et le pire c'est que ça peut passer +inaperçu pendant un temps). Donc n'utilisez de terminal Unicode que pour des +applications prévues pour. +
++Ceci concerne en particulier Pine, ainsi que Flrn (Forum ; même si celui-ci +a un semblant d'options pour gérer Unicode). +
++Si on n'a pas à sa disposition le script uxterm, mais qu'on est sous Unix, +on peut quand même lancer xterm avec les bonnes options : +
+drakkar ~ $ LC_CTYPE=en_US.UTF-8 xterm \
+ -fn -misc-fixed-medium-r-normal--18-120-100-100-c-90-iso10646-1 \
+ -fw -misc-fixed-medium-r-normal-ja-18-120-100-100-c-180-iso10646-1 -u8
+
+
+Les deux polices indiquées sont fournies avec le projet
+XFree86, et sont des polices Unicode
+relativement complètes. Il est possible d'en utiliser d'autres, mais il faut
+les choisir en -iso10646-1
.
+
+Il se peut également que vous ayez le script uxterm, mais qu'il choisisse +des polices trop pauvres, avec lesquelles la moitié de vos caractères +apparaîtront comme des blancs ou des carrés : dans ce cas, précisez les +polices à utiliser avec la commande ci-dessus. +
+Attention, si vous vous loguez à distance, +une commande est nécessaire pour informer les applications distantes que le +terminal est en Unicode : +
+drakkar ~ $ export LC_CTYPE=en_US.UTF-8
+
+Note : inutile d'essayer de changer le en_US
en autre chose,
+c'est le .UTF-8
qui est important ici, pour le reste il suffit
+que ce soit un code qui existe.
+
+Sous windows, avec
+PuTTY,
+il est possible d'avoir un terminal Unicode : dans les options de la
+connexion, dans la rubrique « Window », sous-rubrique « Translation »,
+indiquez UTF-8
à « Character set translation on received
+data ».
+
+Sous MacOS, avec Terminal.app, il est également possible d'avoir un terminal +Unicode : dans le menu « Terminal, Réglages de la fenêtre », sous-menu +« Affichage », sous-sous-menu « Codage du jeu de caractères », +choisissez « Unicode (UTF-8) ». +
+
+Si vous avez correctement mis en place votre terminal (en particulier le
+LC_CTYPE
si vous vous connectez à distance), il n'y a quasiment
+rien à faire.
+
Avec Vim, après avoir lancé normalement votre éditeur, vous +pouvez vérifier qu'il est a bien détecté que vous étiez en Unicode avec : +
+:set encoding + encoding=utf-8+
+Si quand vous ouvrez un fichier, Vim écrit [converted]
à côté
+du nom, c'est qu'il a détecté que ce fichier n'était pas en Unicode ; il
+note quel était le codage de ce fichier, et l'utilisera pour sauver (et se
+plaindra s'il y a des caractères impossibles à sauver). On peut changer ça
+avec l'option fileencoding
.
+
Avec Emacs, si on l'utilise en mode graphique, il
+ n'arrive pas forcément à trouver tout seul les bonnes polices (on peut
+ taper correctement, mais tous les caractères exotiques sont affichés
+ comme des carrés). Une solution est de mettre la ligne suivante dans
+ votre fichier .Xresource
qui se trouve dans votre
+ répertoire personnel :
+
+Emacs.font: 9x15 ++
+Pour qu'Emacs veuille travailler en Unicode, le mieux est de le lancer en
+ayant positionné LC_CTYPE
. Si ce n'est pas fait, on peut le lui
+dire a posteriori avec M-x prefer-coding-system, puis
+mule-utf-8 ; cependant, certaines facilités (comme compose-o-e
+pour œ ne seront ainsi pas disponibles.
+
+Si on lance Emacs dans un terminal il faut faire une manipulation +supplémentaire : M-x set-keyboard-coding-system puis +mule-utf-8. +
+
+Quand vous ouvrez un fichier qui n'est pas en Unicode, Emacs va peut-être le
+détecter correctement. Pour le savoir, regardez en bas à gauche : un
+u
indique un fichier en Unicode, un 1
indique un
+fichier en latin-1. À la sauvegarde, Emacs tentera de garder le même codage,
+et à défaut passera en Unicode).
+
+Dans le cas de Vim comme d'Emacs, il est possible d'aider la détection +automatique et le choix du codage d'un fichier. Nous ne nous y attarderons +pas dans cette page : travaillez tout le temps en Unicode quand le latin-1 +ne suffit pas et tout se passera bien. +
++C'est bien d'avoir un terminal qui affiche de l'Unicode, mais sur un clavier +occidental normalement constitué, taper un Ω, un ҳ, un +פ, un ฆ ou un 鰻, ce n'est pas facile. Le problème se +résout avec ce qu'on appelle des méthodes d'entrée. Vous connaissez +certainement déjà celle qui utilise la touche Compose pour taper les accents +sur les claviers américains. +
+
+Si vous lancez uxterm
sur (ou depuis) une station Sun, vous
+remarquerez en bas à gauche une petite fenêtre où est écrit
+« English/European ». Cette fenêtre indique que le clavier est en mode
+occidental, il est possible de changer de mode.
+
+D'autres méthodes d'entrée sont disponibles, en tapant directement le numéro +Unicode du caractère ou en choisissant dans des tables thématiques. Il est +normalement possible d'utiliser cette fenêtre comme un menu pour changer le +mode, mais ça marche très mal. Ce système n'est hélas pas disponible sur les +PC. +
+
+Le fonctionnement exact ce ces méthodes d'entrées est décrit dans le fichier
+/usr/local/util/packages/xterm/lib/X11/locale/en_US.UTF-8/Compose
.
+Ce n'est pas très lisible, on en fera peut-être un jour un tableau
+récapitulatif. De toutes façons, il ne s'agit que d'une touche compose un
+peu enrichie (mode occidental), ou d'un simple changement des touches qu'on
+détermine en quelques essais.
+
+En plus des méthodes d'entrée fournies par le terminal (s'il est lancé en +mode texte) ou des mêmes méthodes d'entrée qu'uxterm (s'il est lancé en mode +graphique), Emacs propose son propre jeu de méthodes d'entrée. Elles +présentent deux avantages : elles sont locales à un buffer, il n'est donc +pas nécessaire de se soucier de les désactiver avant d'éditer un autre +fichier ou de taper une commande ; et elles affichent dans le minibuffer +des informations intéressantes, comme les différents caractères possibles +pour finir une frappe. +
++On obtient la liste des méthodes disponibles avec M-x +list-input-methods, et on peut obtenir une description détaillée +d'une méthode particulière avec M-x describe-input-method. Il +faut faire attention à un point subtil : Emacs ne sait pas bien convertir +entre les différents codages, or beaucoup de ces méthodes d'entrée ne sont +pas prévues pour Unicode, il ne faut donc pas les utiliser. Il vaut mieux se +restreindre aux méthodes explicitement indiquées pour Unicode, ou dont le +nom contient « latin » (Emacs à partir de la version 21.3 sait convertir +entre unicode et les divers codages « latin »). +
++Une fois la méthode choisie, il faut la sélectionner, ce qui se fait avec +M-x set-input-method (qui se dit aussi C-x RET c C-\ +(RET signifie « entrée »), Emacs demande alors d'entrer le nom +de la méthode dans le minibuffer (avec bien sur la complétion). Cela +sélectionne et active la méthode pour le buffer courant. On peut la +désactiver puis la réactiver avec C-\ ou M-x +toggle-input-method. Il est à noter que ces fonctions n'activent la +méthode que dans le buffer courant. +
++Termim est un programme qui permet de donner des méthodes d'entrée à presque +n'importe quel terminal. Ces méthodes sont elles aussi capables d'afficher +le caractère en cours de construction en bas, et sont disponibles pour +n'importe quel programme tournant dans le terminal. +
++Termim n'est pas spécifique à l'ENS, mais comme il a été développé par +d'anciens élèves, il est probable qu'il soit rarement installé ailleurs. +
+
+Pour utiliser termim, il suffit de taper termim
dans un
+terminal Unicode. On a alors la configuration par défaut (qu'il est possible
+de changer) :
+
+Pour plus de détails, consulter la page de man de termim, ainsi que les
+documentations des diverses méthodes d'entrée dans
+/usr/local/util/packages/termim/doc/
.
+
+Vim est un éditeur de textes difficile à prendre en main, mais extrêmement +puissant. Il s'agit d'un des nombreux héritiers (moraux) de l'historique Vi +des Unix ancestraux, et c'est dans cette famille probablement le plus +puissant. L'essentiel de ce qui sera dit ici sera aussi valable pour les +autres, mais pas tout ; la documentation de Vim précise pour chaque +commande si elle est spécifique ou pas. +
++Vi possède deux modes. En fait, ce n'est pas vrai, il en possède plus, et +Vim encore plus, mais il y en a deux qui sont plus importants que les autres +pour comprendre le fonctionnement. L'un de ces modes s'appelle le mode +insertion : c'est dans ce mode-là qu'on tape l'essentiel du texte. La +particularité de Vi est que ce mode propose très peu de fonctions de +manipulation du texte (recherche, copier-coller, sauvegarde). En effet, la +manipulation du texte se fait en mode normal : dans ce mode, à +peu près tous les caractères ont une signification et déclenchent des +modifications du texte ou un déplacement du curseur. +
++Il est possible, avec Vi, de définir de nouvelles touches pour des actions. +Quand on débute, il est tentant de définir des touches pour les actions les +plus fréquentes (sauver, rechercher, quitter, copier, coller), et de rester +tout le temps en mode insertion. L'usage montre que c'est en général une +mauvaise idée : une fois l'habitude des deux modes prises, et l'automatisme +du changement de mode connu des doigts, l'efficacité croît avec +l'utilisation des commandes évoluées. Autant prendre l'habutude rapidement +donc. +
+
+On revient en mode normal avec la touche Escape
+
+Suivant la configuration, le changement peut ne prendre effet qu'au moment +où la touche suivante est tapée. En cas de problème, Ctrl-C +ramène toujours en mode normal. +
++Beaucoup de commandes de Vi (en mode normal, donc) servent à déplacer le +curseur. Vers la droite ou la gauche, le haut et le bas bien sûr, mais aussi +de paragraphe en paragraphe, de mot en mot, en sautant à des marques +prédéfinies ou en recherchant rapidement un caractère donné, etc. +
++Vi a aussi des commandes pour supprimer, copier, ou d'autres plus exotiques, +comme passer en majuscules. C'est bien beau, mais supprimer ou copier +quoi ? Faut-il une commande pour supprimer un mot, une autre pous supprimer +une ligne, encore une autre pour supprimer un paragraphe, etc. ? Là, on +découvre un des aspects les plus astucieux de Vi : les commandes d'action +définissent ce qu'il y a à faire, mais attendent ensuite une commande de +déplacement. L'action est alors appliquée à tout le texte parcouru par le +curseur dans le déplacement. +
++Par exemple la commande w avance jusqu'au mot suivant, la +commande d est celle pour effacer. Alors dw supprime +tout du curseur au début du mot suivant. +
++Avec ce système, connaître n commandes de déplacement et m commandes +d'action se conjuguent en n×m possibilités de manipulations différentes. +
++Voici un tableau récapitulant les principales commandes de Vim. Les +commandes marquées « action » attendent une commande de déplacement pour +agir (cette dénomination n'est pas standard), et agissent alors sur le texte +toucert par le déplacement ainsi désigné. Certains des termes utilisés dans +ce tableau seront expliqués un peu plus loin. Cette liste n'est pas +exhaustive du tout. +
+Commande | +Sens | +Type | +Effet | +
---|---|---|---|
+ i + | +insert | ++ | passe en mode insertion | +
+ a + | +append | ++ | passe en mode insertion en faisant avancer le curseur | +
+ o + | +open | ++ | passe en mode insertion en créant une nouvelle ligne sous le curseur | +
+ O + | +open | ++ | passe en mode insertion en créant une nouvelle ligne au dessus du curseur | +
+ R + | +replace | ++ | passe en mode remplacement | +
+ A + | ++ | + | passe en mode insertion en allant à la fin de la ligne | +
+ I + | ++ | + | passe en mode insertion en allant au début de la ligne | +
+ v + | +visual | ++ | passe en mode visuel | +
+ V + | ++ | + | passe en mode visuel par ligne | +
+ Ctrl-V + | ++ | + | passe en mode visuel par bloc | +
+ h + | ++ | déplacement | +déplace le curseur vers la gauche | +
+ j + | ++ | déplacement | +déplace le curseur vers le bas | +
+ k + | ++ | déplacement | +déplace le curseur vers le haut | +
+ l + | ++ | déplacement | +déplace le curseur vers la droite | +
+ w + | +word | +déplacement | +avance d'un mot | +
+ b + | +back | +déplacement | +recule d'un mot | +
+ e + | +end | +déplacement | +avance jusqu'à la fin d'un mot | +
+ W + | ++ | déplacement | +avance d'un MOT | +
+ B + | ++ | déplacement | +recule d'un MOT | +
+ E + | ++ | déplacement | +avance jusqu'à la fin d'un MOT | +
+ fx + | +forward | +déplacement | +avance jusqu'au prochain x | +
+ Fx + | ++ | déplacement | +recule jusqu'au x précédent | +
+ tx + | ++ | déplacement | +avance jusqu'à juste avant le prochain x | +
+ Tx + | ++ | déplacement | +recule jusqu'à juste après le x précédent | +
+ gg + | ++ | déplacement | +va au début du texte | +
+ G + | ++ | déplacement | +va à la fin du texte | +
+ $ + | ++ | déplacement | +va à la fin de la ligne | +
+ 0 + | ++ | déplacement | +va au début de la ligne | +
+ { + | ++ | déplacement | +va au début du paragraphe | +
+ } + | ++ | déplacement | +va à la fin du paragraphe | +
+ ( + | ++ | déplacement | +va au début de la phrase | +
+ ) + | ++ | déplacement | +va à la fin de la phrase | +
+ n + | +next | +déplacement | +continue une recherche | +
+ N + | ++ | déplacement | +continue une recherche, en sens inverse | +
+ u + | +undo | ++ | annule la dernière action | +
+ Ctrl-R + | +redo | ++ | refait la dernière action annulée | +
+ . + | +redo | ++ | répète la dernière opération | +
+ x + | ++ | + | supprime un caractère vers la droite (« delete ») | +
+ X + | ++ | + | supprime un caractère vers la gauche (« backspace ») | +
+ s + | +substitute | ++ | supprime un caractère et passe en mode insertion | +
+ rx + | +replace | ++ | remplace un caractère par x | +
+ p + | +paste | ++ | colle un registre après le curseur | +
+ P + | ++ | + | colle un registre avant le curseur | +
+ ~ + | ++ | + | passe un caractère de majuscule en minuscule ou l'inverse | +
+ / + | ++ | + | fais une recherche | +
+ ? + | ++ | + | fais une recherche vers l'arrière | +
+ * + | ++ | + | cherche le mot sous le curseur | +
+ # + | ++ | + | cherche le mot sous le curseur vers l'arrière | +
+ d + | +delete | +action | +supprime | +
+ c + | +change | +action | +supprime et passe en mode insertion | +
+ y + | +yank | +action | +copie dans un registre | +
+ gu + | ++ | action | +passe en minuscules | +
+ gU + | ++ | action | +passe en majuscules | +
+ g? + | ++ | action | +passe en rot13 | +
+ < + | ++ | action | +décale vers la gauche | +
+ > + | ++ | action | +décale vers la droite | +
+ gq + | ++ | action | +recoupe les lignes | +
+ = + | ++ | action | +met en forme un programme | +
+ " + x + | ++ | + | sélectionne le registre x | +
+ m + x + | ++ | + | pose la marque x | +
+ ' + x + | ++ | déplacement | +va à la marque x (par ligne) | +
+ ` + x + | ++ | déplacement | +va à la marque x (par caractère) | +
+La plupart des commandes peuvent être précédées d'un nombre, tapé +directement avec les chiffres : ce nombre va alors en général multiplier +l'action. Ainsi, puisque w avance d'un mot, 42 avance +de 42 mots. +
++Le mode remplacement est similaire au mode insertion, mais les caractères +viennent remplacer ceux qui se trouvaient auparavant. Les modes visuels sont +des modes utilisés pour sélectionner du texte, nous verrons leur fonction +plus en détail plus bas. +
+
+Un mot est une suite de lettres et de chiffres, ou une suite de signes
+autres, exceptés les espaces. Un « MOT » est une suite de signe qui ne
+sont pas des espaces. Ainsi, tuteurs@sas.eleves.ens.fr
est un seul
+MOT, formé de sept mots.
+
+Quand on répète une touche correspondant à une action, le résultat est +souvent d'agir sur la ligne entière. Ainsi dd supprime une ligne. +Quand on la met en majuscule, elle agit souvent de la position du curseur à +la fin de la ligne (comme si la commande de déplacement était $. +Ainsi D supprime jusqu'à la fin de la ligne. +
++Certaines commandes de déplacement sont dites horizontales alors +que d'autres sont verticales. Quand une action est suivie d'un +déplacement vertical, elle agit par lignes entières (par exemple +dj supprime la ligne où est le curseur et la ligne en dessous, en +entier). Cette distinction peut paraître difficile à saisir, mais à l'usage +le comportement est tel qu'on peut s'y attendre naturellement. +
++Vim possède un certain nombre de registres qui peuvent contenir du texte. +Ils servent pour les opérations de copier-coller. Lors qu'une opération +supprime une portion de texte, celle-ci est automatiquement copiée dans le +registre sélectionné. La commande y sert à copier du texte dans +un registre sans le supprimer. +
+
+Si on ne précise rien, c'est le registre "
qui est sélectionné.
+La commande " permet de choisir le registre pour la prochaine
+opération. Il y a 26 registres génériques portant les lettres de
+a
à z
. Si on utilise une lettre en majuscule, le
+texte copié où coupé va s'ajouter au contenu du registre au lieu de le
+remplacer. Il est donc possible de maintenir 26 bouts de textes qu'on peut
+ensuite coller n'importe où.
+Par exemple, si on veut copier du texte dans le registre r
, on
+tape "ry.
+
+C'est la commande p ou P qui sert à coller le contenu
+d'un registre. Comme les autres, elle peut être précédée de "
+pour sélectionner le registre qui doit être collé.
+Par exemple, si on veut coller le contenu du registre r
, on
+tape "rp.
+
+À chaque fois qu'un registre est modifié, le registre 1
est
+rempli également, tandis que son ancien contenu est transféré dans le
+registre 2
, dont l'ancien contenu est à son tour transféré dans
+le registre 3
, et ainsi de suite jusqu'à 9.
+
+Attention. Un registre se souvient de la manière dont il a été rempli : par +une action verticale ou horizontale. Lors du collage, il s'insère de la +même manière : un registre copié verticalement s'insérera sur des lignes +entières, quelle que soit la position du curseur. Ça marche également pour +des copies faites en mode visuel par bloc. +
++Le mode visuel, ou plutôt les modes visuels, permettent de sélectionner du +texte. Une commande de modification faite en mode visuel va agir sur la zone +sélectionnée au lieu d'un seul caractère, ou d'attendre un déplacement. Pour +les déplacements, le mode visuel fonctionne comme le mode commande. +
++Le mode visuel normal sélectionne une zone qui va précisément de l'endroit +où se trouvait le curseur quand on a appuyé sur v à la position +curseur courante. Il est donc similaire à une commande de déplacement +horizontal. Le mode visuel par ligne sélectionne des lignes +entières, il est donc similaire à une commande de déplacement +vertical. +
+
+Le mode visuel par bloc sélectionne un rectangle de texte, indépendemment
+des coupures des lignes. Ceci peut servir pour des constructions en colonnes
+ou des alignements. Dans ce mode, les commandes de remplacement
+(c et s) et d'insertion (I et A
+au lieu de i et a) ont un fonctionnement
+particulier : le texte tapé sur la première ligne va être répété de la même
+manière sur toutes les lignes. Attention : pour que ça marche il ne faut
+pas utiliser de déplacement du curseur pendant l'insertion. Exemple : pour
+ajouter un >
au début de toutes les lignes d'un bout de
+texte, se placer au début, faire Ctrl-V, descendre jusqu'à la
+dernière ligne, faire I>, puis Escape.
+
+Vim est capable de poser des marques dans le texte, afin d'y revenir plus +tard facilement. On pose une marque avec m suivi d'une lettre. Il +y a donc 26 marques librement utilisables. +
++On peut aller à une marque ainsi posée avec la commande ' suivie +de la lettre, ou ` pour un déplacement horizontal. Si la lettre +est donnée en majuscule, le saut peut faire changer de fichier si la marque +est dans un autre. +
++Il existe deux marques spéciales, < et >, qui +désignent respectivement le début et la fin du dernier mode visuel. Elles +sont surtout utiles pour désigner un intervalle en ligne de commande. +
++Pour les opérations plus complexes, en particulier celles qui agissent sur +la totalité du texte, Vim utilise une ligne de commande. Si on tape +: en mode normal, on peut taper une commande entière, qui ne sera +évaluée que lorsqu'on validera avec entrée. Avec Vim (et pas avec Vi), la +ligne de commande est complètement éditable, et comporte un hitorique. +
++La plupart des commandes peuvent s'abréger. Les plus utilisées peuvent +descendre jusqu'à une seule lettre. +
+Commande | +Abbréviation | +Effet | +
---|---|---|
+ :write
+ |
+
+ :w
+ |
+ sauve le fichier en cours d'édition | +
+ :write fichier
+ |
+
+ :w
+ |
+ écrit le texte dans le fichier indiqué | +
+ :saveas fichier
+ |
+
+ :sav
+ |
+ sauve le fichier sous un nouveau nom | +
+ :edit fichier
+ |
+
+ :ed
+ |
+ édite un nouveau fichier | +
+ :quit
+ |
+
+ :q
+ |
+ quitte | +
+ :exit
+ |
+
+ :x
+ |
+ sauve si nécessaire et quitte | +
+ :wq
+ |
+ + | sauve et quitte | +
+La différence entre :w
avec un nom de fichier et
+:save
, c'est le nom qui sera utilisé pour les :w
+suivants : l'ancien nom dans le premier cas, le nouveau dans le second.
+
+Selon la configuration de Vim, ouvrir un nouveau fichier va soit fermer le +fichier en cours d'édition (avec confirmation, évidemment) soit simplement +le cacher, tout en permettant d'y revenir. +
+
+On peut insister pour quitter sans sauver, ou pour sauver sur un fichier qui
+existe déjà, en ajoutant !
à la fin de la commande, ce qui
+donne :w!
et :q!
.
+
+Les recherches ne se font pas en ligne de commande à proprement parler, mais
+le comportement de Vim y est le même. Une recherche se fait avec la touche
+/
. Vim passe alors dans un mode proche de la ligne de commande,
+et attend qu'on saisisse une expression rationnelle. On valide par entrée,
+et Vim saute à la premire occurence. On navigue alors entre les différentes
+occurences avec n
(comme next) et N
.
+
+Selon la configuration, Vim peut afficher la première occurence au fur et à +mesure de la saisie de l'expression cherchée. Attention toutefois : quand +on a trouvé, il faut bien valider, sinon on se retrouve au point de départ. +
+ +qui
).qui
).qui
).date
).pot
).cal
).who
).mlnguyen
?
+De quelle promotion est-il ? (finger
).whoami
). write
et talk
?cp
et mv
Ces exercices sont des questions de cours : les solutions se +trouvent toutes dans les pages de man des commandes +en question. On suppose donc connues les commandes de less, qui servent à se +déplacer dans les pages de man... Testez les commandes sur des fichiers +et répertoires d'essai pour vous faire la main et comprendre ce qui se +passe.
++Pour voir la solution, cliquer sur le bouton . +
+cp
+
+ tentative/
de son répertoire essai/
, et que le
+répertoire tentative/
existe déjà ?+cp fichier1 fichier2 fichier3 repertoire/ ++ +
+Quel est l'effet de cette ligne ? +
+mv
est mv fichier1
+fichier2
; fichier1
est renommé en fichier2
.
+Mais que se passe-t-il si fichier2
existe déjà ?~/Rapport/docs/
.
+
+
+Comment faites-vous pour y amener Rapport.tex
qui se trouve dans
+le répertoire père ?
+Comment faites-vous ensuite pour ramener ce fichier à son emplacement +d'origine ? +
bla
en
+blo
? Que se passe-t-il si le répertoire blo
+existe déjà ?mv
avec les
+options -i
et -f
ensemble ?On n'a pas traité de la commande cat dans la page consacrée aux +commandes de base, parce que cat s'utilise le plus souvent avec des +redirections.
++cat bla blo > blu ++
et
++cat bla blo >> blu ++ +
+Que se passe-t-il, pour chaque ligne, selon que le fichier blu +existe ou n'existe pas ?
find
Ces exercices sont des questions de cours : les solutions se
+trouvent toutes dans les pages de man des commandes
+en question. On suppose donc connues les commandes de less, qui servent à se
+déplacer dans les pages de man... Testez les commandes sur des fichiers
+et répertoires d'essai pour vous faire la main et comprendre ce qui se
+passe. Pour une présentation élémentaire de find
, vous
+pouvez aller lire le cours.
+
+Pour voir la solution, cliquer sur le bouton . +
+grep
grep
+ Ces exercices sont des questions de cours : les solutions se
+trouvent toutes dans les pages de man des commandes
+en question. On suppose donc connues les commandes de less, qui
+servent à se déplacer dans les pages de man... Testez les commandes sur
+des fichiers et répertoires d'essai pour vous faire la main et comprendre
+ce qui se passe. Pour une présentation élémentaire de grep
,
+vous pouvez aller lire le cours.
+Pour voir la solution, cliquer sur le bouton . +
+grep
+ grep
qui
+permettent d'obtenir des lignes de contexte (qui précèdent et/ou suivent la
+ligne où figure le mot) ?grep
ignore la casse
+des caractères (différence entre majuscules et minuscules) dans sa
+recherche ?grep
ne recherche
+que les lignes où figure le mot tel quel, et non pas ses variantes ? Par
+exemple : on cherche le mot «travail», mais pas «travailleur» ou
+«travailler».Les exercices portants sur les fenêtres, les réactions de la souris, etc, ont +été conçus pour des gens utilisant la config conscrits version 2000. Les +façons de procéder peuvent être différentes selon les configurations, et tous +les raccourcis claviers de la config conscrits n'ont pas été indiqués. +
+
+Plusieurs exercices utilisent le texte de la première partie de
+Germinal. Les fichiers se trouvent dans
+~tuteurs/exercices/
. Vous pouvez aussi récupérer zola.tgz
(à décompresser avec tar zxvf
+zola.tgz
).
À plusieurs reprises, dans +les corrigés des exercices du début, vous rencontrerez des paragraphes +signalés par cette icône; ce 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.
++Les corrigés sont accessibles par un lien placé avant chaque énoncé (icône +).
+cat
+ head
et
+tail
+ gamma
.gamma
.Que +faut-il impérativement quitter ou fermer avant de se déloguer ?
+ +less
+La commande less
sert à visualiser des fichiers sans les éditer.
+less
sert aussi à lire les pages de man. Pour une présentation
+élémentaire de cette commande, allez lire le cours des
+tuteurs.
+
less
?less
?less
d'ouvrir le fichier en
+plaçant en haut de l'écran la ligne n ?less
d'ouvrir le fichier en
+plaçant en haut de l'écran la première ligne où apparaît un motif
+donné ?less
qui
+permettent de chercher un motif dans un fichier, respectivement après et avant
+la position courante ?less
de chercher le mot à
+partir de la première ligne du fichier, et ce où que l'on soit dans le
+fichier ?-i
à
+less
? Quelle option faut-il mettre à la place de
+-i
pour chercher toTo
tout en ignorant la casse des
+caractères ?/
?ls
Ces exercices sont des questions de cours : les solutions se
+trouvent toutes dans les pages de man des commandes
+en question. On suppose donc connues les commandes de less, qui servent à se
+déplacer dans les pages de man... Testez les commandes sur des fichiers
+et répertoires d'essai pour vous faire la main et comprendre ce qui se
+passe. Vous pouvez aussi aller lire le cours sur
+ls
.
/usr/local/games/bin
..flnewsrc.forum
?-R
de
+ls
?Mail
? Qu'est-ce que cela signifie ?ls -l
.ls
vous affiche le contenu de votre
+répertoire avec des signes distinctifs qui permettent d'identifier plus vite
+le type de fichiers (slash /
pour les répertoires, arobase
+@
pour les liens, etc). Quelle est l'option qui ajoute ces
+caratères ?+drwx--x--x ++ + +
+Je ne suis pas propriétaire; puis-je afficher le contenu du répertoire ? +
mkdir
,
+rmdir
, cd
)mkdir
et rmdir
+ cd
+
+ Ces exercices sont des questions de cours : les solutions se +trouvent toutes dans les pages de man des commandes +en question. On suppose donc connues les commandes de less, qui servent à se +déplacer dans les pages de man... Testez les commandes sur des fichiers +et répertoires d'essai pour vous faire la main et comprendre ce qui se +passe. Vous pouvez aussi aller lire le cours sur les répertoires. +
+mkdir
et rmdir
+ +mkdir mkdir +
bla/
,
+dont ls
vous dit qu'il est vide. Cependant, quand vous tapez
+
++rmdir bla ++ +
la machine vous répond :
+ ++rmdir: bla: Directory not empty ++ + +
+Que faut-il faire ? +
+mkdir
peut prendre des
+options ?+mkdir Rapport/annexes ++
+peut fonctionner et créer effectivement ce sous-répertoire ? +
+mkdir
qui permette
+de créer à la fois un répertoire et un sous-répertoire de ce
+répertoire ?rmdir -p toto/tata/tutu/ +
toto/
et un sous répertoire tutu/
dans
+toto/
. Quelle option faut-il utiliser pour que :
+
+toto/
n'existe pas, le répertoire et son sous-répertoire
+soient créés;toto/
existe déjà, le sous-répertoire tutu/
+soit créé, sans message d'erreur.cd
+
+
+But de l'exercice : apprendre à se servir de .
et
+..
(«point» et «point point»). Supposons que vous avez
+l'arborescence suivante chez vous :
+
+ + + +
+~/Rapport/docs/afaire/
.~/Rapport/docs/fait/
.~/Rapport/
.less
le contenu de ~/www/index.html
.~/Rapport/docs/
.~/Mail/
vedette
, à Jourdan ?
+ drakkar
+ ?
+ mlnguyen
? De quelle promotion est-elle ?
+ rwrite
et
+talk
?
+ 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.
+Le nom de votre machine est indiqué dans le prompt (la série de
+caractères qui précède le curseur dans une fenêtre où on peut taper des
+commandes). Par exemple, le prompt de chaland
est, avec la
+config conscrits :
bireme ~ $
+
+
+Le prompt (en bon français : l'invite) affiche également le répertoire où
+vous vous trouvez; par exemple, si vous travaillez sur drakkar
et
+que vous êtes dans votre répertoire Rapport
, le prompt
+sera :
bireme ~/Rapport $
+
+ Évidemment, tout dépend de votre configuration; il se peut
+qu'elle n'affiche pas le nom de la machine, et se limite à un
+$
. Pour afficher le nom de la machine si celui-ci n'est pas
+indiqué par défaut, vous avez plusieurs solutions :
+uname -n +bireme ++ +La commande
uname
affiche diverses informations sur le système;
+l'option -a
donne l'ensemble de ces informations (nom de la
+machine, système d'exploitation et sa version, etc).hostname
+bireme
+
+affiche le nom de la machine sur laquelle vous êtes logué. Cette commande fait
+en fait appel à uname
, et est parfaitement standard.HOSTNAME
avec
+echo
:
++echo $HOSTNAME +bireme ++ +Nota bene : la variable
HOSTNAME
n'est pas définie
+dans toutes les configurations.
+Repérez d'abord l'emplacement physique de l'imprimante. Ensuite tapez
+qui
et orientez vous.... L'imprimante est surnommée
+josianne
, vous n'aurez donc pas de mal à repérer
+prao
et felouque
.
+
vedette
, à Jourdan ?
+
+Il faut utiliser les options de qui
permettant de spécifier une
+salle. Ici, c'est Jourdan qui nous intéresse; on tape donc :
+
bireme ~ $ qui -jourdan
+
+ ou encore
+bireme ~ $ qui j
+
+
+Si quelqu'un est logué, son nom figure en dessous du nom de la machine,
+parfois entre crochets (s'il n'a pas touché son clavier depuis quelques
+minutes, mais aussi s'il travaille avec emacs
, s'il utilise
+Netscape, ou s'il joue à un jeu...).
+
Cette fois-ci, c'est la carte de l'Infi que l'on demande. On tape : +
+bireme ~ $ qui -46
+
+ +Avec la config conscrits, les tuteurs ont leur nom souligné, afin d'être +facilement localisables et joignables. +
+Il suffit de taper date
. Attention, par défaut la date est en
+anglais...
+Avec la plupart des horloges numériques, la date apparaît quand on clique sur +l'horloge.
+pot
par défaut affiche le menu du jour, midi et soir.
+Elle peut prendre différentes options : hier
,
+demain
, semaine
. Pour savoir quel était le menu
+d'hier, il faut taper :
+
+bireme ~ $ pot hier
+
+
+Vous disposez de la commande cal
(calendrier) pour savoir cela.
+Sans arguments, cal
affiche le calendrier du mois en cours. On
+peut aussi lui préciser le numéro du mois (entre 1 et 12) et l'année (entre 1
+et 9999). Si vous êtes né en mars 1982, vous tapez donc :
+
bireme ~ $ cal 3 1982
+
+ cal
lancé
+par défaut est différent de celui des stations Sun et a tendance à mettre
+des couleurs repoussantes. Pour pallier ce problème, tapez
+/usr/bin/cal
au lieu de cal
.
+drakkar
+ ?
+
+Vous voulez savoir qui se trouve présent informatiquement sur
+drakkar
; vous avez deux solutions :
+
drakkar
, en tapant :
+paquebot ~ $ drakkar
+
+
+
+Et tapez who
: une liste s'affiche, indiquant le nom de
+login de l'utilisateur, le type de terminal qu'il utilise, la date et l'heure
+à laquelle il s'est logué et depuis où il est connecté. Repérez votre nom
+dans cette liste...
+Les types de terminaux apparaissent sous la forme
+pts/numéro
, à l'exception d'un seul, qui s'appelle
+console
: c'est le terminal associé physiquement à la
+machine; la personne loguée sur la console est donc celle qui est physiquement
+loguée sur drakkar
.
finger
, sous la
+forme suivante :
+
+paquebot ~ $ finger @drakkar
+
+
+
+Vous obtenez ainsi des renseignements sur les personnes présentes sur
+drakkar
, de façon un peu plus complète qu'avec
+who
: nom de login, nom complet, type de terminal
+(TTY
-«ti ti ouaille»; TeleTYpe), idle time,
+date et heure du login, endroit depuis lequel la personne est loguée.
+
+L'idle time est théoriquement le temps depuis lequel la personne n'a
+pas touché son clavier; c'est cependant une donnée peu fiable, dans la mesure
+où des «jeux» comme xkobo
, emacs
ou
+Netscape
ne sont pas considérés comme utilisant le clavier.
+
+Vous auriez pu utiliser ces méthodes pour savoir qui se trouvait physiquement
+sur vedette
, dans l'exercice 3, en regardant qui se trouvait sur
+la console.
+
mlnguyen
? De quelle promotion est-elle ?
+ Il faut taper
++finger mlnguyen ++
+Dans le texte qui s'affiche figurent divers renseignements : le nom de
+login (Login name: mlnguyen
), le nom complet (In real
+life: Marie-Lan Nguyen
) ainsi que la promotion et la
+branche :
+Directory: /users/98/litt/mlnguyen ++
+C'est une littéraire de la promotion 1998. +
++Il y a aussi diverses indications : dernière fois qu'elle s'est logué sur +la machine sur laquelle vous vous trouvez, si elle a lu son mail récemment. +
+
+Il y a aussi une ligne Plan
, et une autre Project
.
+Elles correspondent à deux fichiers qui se trouvent sur le compte de
+l'utilisateur, qui y fait figurer diverses informations personnelles. Le
+.plan
contient plusieurs lignes, et le .project
en
+contient une seule.
+
C'est la commande whoami
qui permet de faire cela.
Autres manières de procéder :
+USER
, de la
+façon suivante :
+
++echo $USER ++ +
+Cependant, celle-ci n'est pas nécessairement toujours définie. +
id
, qui affiche le login et le groupe de
+l'utilisateur, accompagné de deux numéros, l'uid (user
+identification : le numéro de l'utilisateur) et le gid
+(group identification : numéro du groupe). id
se
+prononce aille-di.rwrite
et
+talk
?
+ rwrite
envoie des messages qui apparaissent dans la console du
+destinataire (il faut donc qu'il soit logué). Exemple
+d'utilisation :
bireme ~ $ rwrite toto@drakkar
+Salut, tu manges au pot?
+^D
+
+ +De son côté, Toto voit apparaître ceci dans sa console : +
++Message from titi@corvette on /dev/pts/4 at 15:12 ... +Salut, tu manges au pot? +<EOT> ++
talk
(ou mieux : ytalk
) est une conversation
+interactive entre deux personnes ou plus. La demande de talk se fait de la
+même façon que pour écrire un rwrite
:
bireme ~ $ ytalk toto@drakkar
+
+ +Toto reçoit un message dans sa console, et répond par +
+drakkar ~ $ ytalk titi@corvette
+
+ On quitte la conversation en tapant ^C
.
+
+Pour une présentation complète de ce programme, allez voir le cours des +tuteurs sur ytalk. +
+ +cp
et mv
+Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans les
+pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
+
cp
+
+
+Oui, c'est à cela que sert l'option -r
(recursive).
+Supposons, suivant l'arborescence d'exemple,
+que vous voulez copier le répertoire Rapport
et ses
+sous-répertoires dans le répertoire www
. Il faut
+taper :
+cp -r Rapport/ www/ ++
+ou +
++cp -R Rapport/ www/ ++
tentative/
de son répertoire essai/
, et que
+le répertoire tentative/
existe déjà ?
+
+ Quand on indique le nom d'un répertoire qui n'existe pas, cp
+considère qu'il s'agit du nom à donner à la copie du premier répertoire (ou
+fichier). Quand le répertoire existe déjà, cp
considère qu'il
+s'agit de l'endroit où il faut placer la copie du premier élément (la
+«cible» : target).
+Si donc on tape +
++cp -R essai/ tentative/ ++
+et que tentative/
existe déjà, on obtient une copie de
+essai/
, également appelée essai/
, placée dans le
+répertoire tentative/
.
+
+Le programme demande si vous voulez vraiment effacer le fichier déjà existant +pour le remplacer par celui dont vous faites la copie. +
+ Il en est
+ainsi parce que vous avez un alias de cp
sur cp -i
,
+qui demande confirmation. Ce n'est pas nécessairement le cas partout.
+
Pour savoir quels sont vos
+alias, tapez «alias
» ou allez voir dans votre fichier
+.alias
. Avec la config conscrits, les alias sont dans le
+.zshrc
(le fichier de configuration du shell
+zsh
).
+cp fichier1 fichier2 fichier3 repertoire/ ++
+Les fichiers fichier1
, fichier2
et
+fichier3
sont copiés sous leur nom dans le répertoire
+répertoire/
, qui doit exister.
+
mv
+
+
+Si vous avez un alias de mv
sur mv -i
(cas de la
+config conscrits), le programme demande si vous voulez réécrire le fichier
+cible en remplaçant son contenu par celui du fichier de départ :
+
bireme ~ $ ls +rapport.tex notes complements +bireme ~ $mv notes complements +mv: overwrite complements (yes/no)? y +bireme ~ $ls +rapport.tex complements ++
~/Rapport/docs/
.
+
+Rapport.tex
qui
+se trouve dans le répertoire père ?+mv ../Rapport.tex . +
Amener le fichier Rapport.tex
situé dans répertoire père
+(../Rapport.tex
) dans le répertoire où on se trouve
+(.
: ici).
+
+mv Rapport.tex .. +
Amener le fichier Rapport.tex
situé dans le répertoire courant,
+dans le répertoire père (..
).
bla/
en blo/
? Que se passe-t-il si le
+répertoire blo
existe déjà ?
+
+ Il suffit de taper +
++mv bla/ blo/ ++
+Si jamais blo/
existe déjà, bla/
devient un
+sous-répertoire de blo/
.
+
+Supposons que l'on veut amener Rapport.tex
dans le répertoire
+courant, et l'appeler stage
. On tape :
+
+mv ../Rapport.tex stage ++
Rapport.tex
est à la fois déplacé et renommé; vous pouvez
+vérifier qu'il n'est plus dans Rapport
et qu'il y a désormais un
+fichier stage
dans docs/
.
+
+Si le fichier d'arrivée existe déjà, on se retrouve dans le cas vu tout au +début de cet exercice (remplacement ou non). +
+Pour déplacer et renommer, la syntaxe est la même que pour un fichier : +
+mv ../bla ble/ +
+déplace le répertoire bla/
du répertoire père dans le répertoire
+courant, et le renomme en ble/
. Si jamais ble/
+existe déjà, bla/
y est déplacé sous son nom, et devient un
+sous-répertoire de ble/
.
+
mv
+avec les options -i
et -f
ensemble ? .
+
+
+L'option -f
(force) sert à renommer le fichier
+impérativement, même si le fichier cible existe déjà, sans demander
+confirmation. L'option -i
(interactive) demande
+confirmation. Des deux options, c'est -f
qui l'emporte :
+
bireme ~ $ ls +bla tutu Rapport/ +bireme ~ $ alias mv +mv='mv -i' +bireme ~ $ mv bla tutu +mv: overwrite tutu (yes/no)? n +bireme ~ $ mv -f bla tutu +bireme ~ $ ls +tutu Rapport/ +
+ +Il suffit de taper les deux noms de fichiers à la suite; par exemple, pour +visualier bla puis blo, on tape :
++cat bla blo ++
+On demande à cat d'afficher le contenu d'un fichier, puis de placer +le résultat dans un fichier :
++cat toto > copie ++
+On demande à cat de rediriger sa sortie dans un fichier, puis on n'a +plus qu'à taper le texte et à indiquer la fin du texte avec ^D : +
+galion ~ $ ls +maitrise.tex +galion ~ $ cat > notes +Faire la bibliographie +Revoir le chapitre 1. +^D +galion ~ $ ls +maitrise.tex notes +galion ~ $ cat notes +Faire la bibliographie +Revoir le chapitre 1. +galion ~ $ ++
+C'est bien sûr un moyen un peu spartiate pour écrire du texte, mais dans le +cas de choses très courtes dans ce style, ce peut être plus rapide que de +lancer un véritable éditeur. +
+cat bla blo > blu+
+ et +
+cat bla blo >> blu+
+ Que se passe-t-il, pour chaque ligne, selon que le fichier blu +existe ou n'existe pas ? +
+cat bla blo > blu+
+concatène les deux fichiers bla et +blo, et place le résultat dans un nouveau fichier appelé +blu. Si blu existe déjà, le shell affiche un message +d'erreur et ne fait rien.
+cat bla blo >> blu place la concaténation de bla et +blo à la fin d'un fichier blu déjà existant. S'il n'existe +pas, le shell affiche un message d'erreur et en reste là, sans créer de +fichier blu.
++Les deux redirections ne sont donc pas du tout équivalentes, mais leur action +dépend du shell, qui a des options qui modifie leur comportement par défaut. +
++Il faut utiliser l'option -n de cat. Par exemple : +
+galion ~ $ cat bla +Pomme +Poire +Prune +galion ~ $ cat -n bla > blo +galion ~ $ cat blo + 1 Pomme + 2 Poire + 3 Prune +galion ~ $ ++
+Il s'agit de donner le nom des fichiers en indiquant qu'ils commencent par +essai et qu'ils finissent par un chiffre. Il y a en fait plusieurs +façons de faire : +
++Ici, on trouvera tous les fichiers commençant par essai, suivi d'un +unique caractère qui peut ne pas être un chiffre.
++On commande par créer un répertoire C avec mkdir, puis, avec +mv, on déplace tous les fichiers ayant un suffixe . et +dont le nom est fait d'une suite de caractères quelconques : +
+galion ~ $ ls +hello* zoinx* +hello.c zoinx.c +galion ~ $ mkdir C +galion ~ $ mv *.c C/ +galion ~ $ ls +C/ hello* zoinx* +galion ~ $ ls C/ +hello.c zoinx.c ++
+On commence par créer le répertoire Rangement avec mkdir. +Pour désigner les noms des fichiers, il faut indiquer la notion de +«minuscule». On pourrait écrire explicitement l'alphabet entre crochets, pour +dire «l'un de ces caractères», puis faire de même avec les majuscules. Mais on +gagne du temps en utilisant des intervalles ([a-z] et +[A-Z]). Le reste du nom du fichier, avant et après la minuscule puis +la majuscule, est indéfini. On écrit donc : +
+galion ~ $ mkdir Rangement +galion ~ $ mv *[a-z][A-Z]* Rangement/ ++
+Le principe est le même, sauf que l'on indique explicitement les voyelles +entre crochets : +
+galion ~ $ mkdir Rangement +galion ~ $ mv *[aeiou][aeiou][aeiou]* Rangement/ ++
+On peut procéder de deux façons : utiliser ls seul et des jokers, ou +rediriger ls dans grep et utiliser les expressions +régulières de grep. +
+Dans la suite du corrigé, on suppose que l'on se trouve déjà dans +/bin/.
+On met des apostrophes autour des expressions de +grep pour les protéger contre le shell. Enfin, on ne détaille pas les +expressions régulières; à noter ces points importants à propos de +grep :
++On constate que grep est plus complexe mais bien plus puissant que +les jokers du shell. +
++ | Avec ls seul | +Avec ls et grep | +|
Commence par «a» et dont la deuxième lettre est «s» ou «t» | ++ ls a[st]* + | ++ ls | grep '^a[st].*' + | +|
Contient «un» et se termine par «t» | ++ ls *un*t + | ++ ls | grep '.*un.*t$' + | +|
Contient «gre» ou «st» | ++ ls *(gre|st)* + | ++ ls | grep '\(gre\|st\)' + | +|
Contient exactement deux lettres «m» | ++ | + ls | grep '[^m]*m[^m]*m[^m]*' + | +|
Contient au moins deux lettres «m» | ++ | + ls | grep '.*m.*m.*' + | +|
Contient au moins quatre caractères et aucun chiffre | ++ | + ls | grep '^[^0-9]\{4,\}$' + | +|
Est constitué de deux lettres exactement | ++ ls ?? + | ++ ls | grep '^..$' + | ++ |
Commence et finit par un chiffre | ++ ls [0-9]*[0-9] + | ++ ls | grep '^[0-9].*[0-9]$' + | +
Une ligne vide est différente d'une ligne ne contenant +que des blancs, c'est-à-dire des espaces ou des tabulations, même si pour un +oeil humain cela revient au même. La commande de recherche sera différente +selon le cas : +
+grep '^$' fichier
grep '^[[:space:]]$' fichier+
+Pour éliminer toutes les lignes blanches pour un oeil humain, on combine les +deux expressions et on utilise l'option -v qui inverse le sens de la +recherche. On n'a plus qu'à rediriger la sortie dans un fichier. On écrit +donc :
+grep -v '\(^[[:space:]]$\|^$\)' fichier1 > fichier2+
+en remplaçant éventuellement le motif par '^$' ou +^[[:space:]]$' selon que l'on veut ôter les lignes vides ou les +lignes contenant des blancs. +
++ + +On cherche la chaîne de caractère «mine», qui soit un mot, éventuellement +suivi d'un «s». On va donc désigner le début du mot avec le symbole +\<, la fin du mot avec le symbole \>, et le «s» +optionnel avec le point d'interrogation. On veut aussi faire apparaître le +nombre d'occurences du mot, dans chaque fichier du répertoire zola, +avec l'option -c de grep.
++Les noms des fichiers de Germinal sont de la forme +zola1.txt, de 1 à 6. Pour chercher dans tous les fichiers de cette +sorte, on peut écrire, au choix (attention à ne pas confondre les +wildcards du shell avec les expressions régulières de grep). +
++On peut donc écrire : +
+grep -c '\<mines?\>' *.txt+
Et on obtient :
++zola1.txt:5 +zola2.txt:0 +zola3.txt:3 +zola4.txt:3 +zola5.txt:1 +zola6.txt:2 ++
+Attention : les chiffres indiqués correspondent au nombre de lignes où figure +le mot «mine», mais pas au nombre réel d'occurences du mot. Pour un mot précis +comme celui-ci, la marge d'erreur est faible, mais si vous cherchez un article +défini, par exemple, cette méthode est insuffisante. C'est là qu'un langage +comme Perl est très utile. +
+Une ligne blanche, c'est rien entre un début de ligne +et une fin de ligne, ou alors une ligne ne contenant que des espaces et des +tabulations. On va donc chercher toutes les lignes correspondant à ce schéma +(voir plus haut pour ces questions de définitions). +Comme il y a deux motifs à chercher, on utilise l'expression régulière qui +permet de chercher un motif ou un autre :
+\(motif1\|motif2\)+
+La commande à taper est : +
+grep '\(^[[:space:]]$\|^$\)' zola1.txt+
+Ensuite, on veut compter le nombre de lignes ainsi produites par +grep, avec la commande wc (word count); on va +utiliser l'option -l (lines, lignes). On tape donc : +
+grep '\(^[[:space:]]$\|^$\)' zola1.txt | wc -l+
+Et on obtient «81». Bien évidemment, on aurait pu se rappeler que l'option +-c de grep donne le nombre de lignes matchant la chaîne +recherchée, et obtenir le même résultat en ne lançant qu'un seul processus... +
+À propos du fichier /etc/hosts : les ordinateurs sur +l'Internet sont désignés par une adresse IP, constituée de 4 nombres entre 0 +et 255 séparés par des points. C'est cette adresse IP qui permet à un +ordinateur d'envoyer un message (datagramme IP) à un autre. +
++Cependant, mémoriser les adresses IP n'est pas commode pour un humain. Pour +cette raison, les ordinateurs ont aussi un «nom», constitué d'un nombre +variable de composantes séparées par des points (par exemple, +research.att.com). +
++Le mécanisme de conversion d'un nom en adresse IP (ou le mécanisme inverse) +s'appelle la «résolution de noms». Elle se fait normalement par +l'intermédiaire de nameservers, ordinateurs sur lequel tourne le +programme BIND, qui se chargent de répondre aux questions de résolution de +noms. +
++Cependant, pour certaines machines très communément accédées depuis un +ordinateur donné (par exemple, les machines de la même salle) ou bien +pour éviter d'avoir à configurer un nameserver, on préfère parfois +utiliser le fichier /etc/hosts : celui-ci définit un certain nombre +de conversions nom -> adresse IP qui seront consultées avant les +nameservers.
++La bibliothèque qui se charge de faire la traduction, et qui consulte d'abord +le /etc/hosts puis les nameservers, s'appelle la +libresolv.
+head -15 /etc/hosts
tail -15 /etc/hosts
tail +15 /etc/hosts
head -20 /etc/hosts | tail -6
+ + +Il y a deux solutions : +
+head -9 fichier | tail -5+
tail -8 fichier | head -5+
+On utilise la commande head pour extraire les cinq premières +lignes du fichier, puis la commande tail pour ne conserver que la +dernière des cinq :
+head -5 fichier | tail -1+
+C'est la commande sort qui permet de trier des fichiers selon un +ordre donné.
+sort sans option trie automatiquement en fonction du premier caractère, +par ordre alphabétique si c'est une lettre, par ordre croissant si ce sont des +chiffres. Il suffit donc de taper : +
+sort fichier+
Pour cela, sans utiliser d'éditeur, on peut +utiliser la commande cut, qui élimine des champs dans une ligne. Par +défaut, le séparateur de champs est une tabulation. Ici, on peut demander à +cut de considérer le slash comme un séparateur de champs (option +-d, «délimiteur»), et de ne conserver que le deuxième champ du +fichier (option -f, field). On redirige ensuite la sortie +dans un autre fichier :
cut -d/ -f2 fichier > fichier2
sort -r fichier2
+La réponse n'est pas simple, car vous avez également des répertoires de +configuration, comme .netscape/ qui contient entre autres vos +marque-pages (bookmarks.html), vos préférences +(preferences), etc. On va compter le nombre de fichiers commençant +par un point situés dans votre répertoire principal, en éliminant les copies +de sauvegarde (qui finissent par un tilde). Il y a plusieurs manières de +procéder.
++On peut penser à une solution complexe et bien lourde utilisant toutes ces +commandes, ce qui permet de les apprendre plus qu'autre chose... On affiche +une liste longue avec l'ensemble des fichiers (ls -la) puis qui +élimine tous les répertoires et les liens avec grep en ne gardant que +les lignes qui commencent par un tiret :
+ls -al | grep '^-'+
+Ensuite, on utilise tr pour ne conserver qu'un seul espace entre +chaque champ de la liste, en utilisant l'option -s (squeeze) +qui remplace par une seule occurence la répétition d'un caractère spécifié; on +met des apostrophes autour de l'espace pour qu'il soit compris comme tel et +non comme un simple espace : +
+tr -s ' '+
+On utilise cut pour conserver le dernier champ avec les noms de +fichiers (en l'occurence le neuvième champ), en indiquant que l'espace sert de +délimiteur de champ :
+cut -d' ' -f9+
+Enfin, on demande à grep de ne retenir que les fichiers commençant +par un point, et ne finissant pas par un tilde, et on les comptel'option +-c de grep. Cela donne pour finir :
+ls -al | grep '^-' | tr -s ' ' | cut -d' ' -f 9 | grep -c '^\..*[^~]$' ++
+Mais que de tourments pour si peu... :-) +
+Il y a plus simple... On demande à +ls une liste des fichiers commençant par un point (avec l'option +-d pour ne pas descendre dans les répertoires de configuration), on +ne garde que les lignes ne finissant pas par un / ou un tilde, et on +compte :
+ls -ad .* | grep -vc '\(~\|/\)$'+
+On demande à find de chercher dans le répertoire courant +(.), sans descendre dans l'arborescence (-maxdepth 1), tous +les fichiers normaux (-type f : file), dont le nom commence +par un point (-name '.*'). On les compte ensuite avec wc : +
+find . -maxdepth 1 -name '.*' -type f | wc -l+
+Cette solution est préférable car elle ne lance que deux processus et non pas +au moins cinq comme la précédente. +
++ + +Il y a deux solutions, l'une faisant appel à ls et grep, +l'autre faisant appel à find. +
++Le principe est le même que dans l'exercice précédent. La différence est que +grep va chercher les lignes qui commencent par un point +et finissent par un slash. Cela se fait de la manière +suivante :
+grep '^\..*/$'+
.* signifie «n'importe quel caractère (point) répété zéro ou +plusieurs fois (étoile)». +
++On tape donc :
+ls -ad .* | grep '^\..*/$' | wc -l+
+On part ici du principe que vous avez un alias de ls sur ls +-F (qui met un slash après les noms de répertoires, une étoile après les +noms d'exécutables et une arobase après les noms de liens). Si ce n'est pas le +cas, ajoutez-le dans un fichier .alias ou tapez ls -lF. +
++On demande à find de chercher tous les fichiers de type «répertoire» +(-type d : directory), et dont le nom commence par un point +(-name '.*', les quotes servant à protéger du shell le contenu de +l'expression), dans descendre dans l'arborescence. +
++On tape donc :
+find . -maxdepth 1 type d -name '.*' | wc -l+
+Il y a une inexactitude dans le résultat : find compte aussi +./ dans le résultat. +
++ +C'est l'option -R de ls qui permet d'afficher +récursivement le contenu d'un répertoire et de ses sous-répertoires (à ne +pas confondre avec -r qui inverse le tri). Pour rediriger la +sortie d'une commande dans un fichier, on utilise le caractère +>. Pour mettre la liste de tous les fichiers de l'arborescence +dans un fichier toto, il faut donc taper :
+ls -R > toto+
+Il va s'agir de faire une liste récursive de l'ensemble de votre compte +(option -R de ls), incluant les fichiers de configuration +(option -a) et les renseignements donnés par l'option -l. +
++De la longue liste obtenue, on ne veut retenir que les fichiers, dont les +droits commencent par un tiret (un d identifie les répertoires). On +va donc demander à grep de chercher toutes les lignes commençant par +un tiret. +
++Enfin, on va placer le résultat dans un fichier appelé liste. On tape +donc :
+ls -alR | grep '^-' > liste+
+ +L'option -l de ls donne une liste longue des fichiers, +incluant les droits et le type des fichiers, identifiés par une +lettre : rien pour un fichier, «d» pour un répertoire +(directory), «l» pour un lien (link); par exemple : +
++drwxr-xr-x 2 emilia users 1024 mai 10 02:27 www/ ++
+Pour obtenir la liste des fichiers du répertoire courant qui sont des liens +symboliques, il suffit donc d'afficher cette liste longue et de ne retenir +que les lignes qui commencent par un «l», grâce à la commande +grep. On utilise une expression régulière pour cela : le +chapeau (^) désigne le début de la ligne, et l'ensemble de +l'expression est placée entre apostrophes pour qu'elle ne soit pas +interprétée par le shell. On tape donc : +
+ls -l | grep '^l'+
+ + +Il faut lancer le man de less, et ensuite chercher dedans le nombre +de lignes contenant le mot file («fichier» en anglais), avec +grep. C'est l'option -c (count) de grep +qui va servir. +
++Finalement, on écrit :
+man less | grep -c file+
+Et on obtient 205. C'est le nombre de lignes contenant au moins une fois la +chaîne de caractères file, mais pas le nombre d'occurences du mot +dans le fichier : il pourrait y avoir plusieurs fois file sur la même +ligne. On atteint là encore la limite de ce que sait faire grep. +
++Il faut d'abord faire une liste des fichiers avec leurs tailles (option +-l de ls. Ensuite, il faut trier ces lignes en fonction de +la taille, avec la commande sort. Une ligne est de la forme +suivante : +
++-rwxr-xr-x 1 root staff 5872 Jan 21 1994 /usr/bin/rm* ++
+C'est le cinquième champ, celui de la taille, qui nous intéresse. La +numérotation commençant à 0 (comme les étages), pour indiquer le cinquième +champ on écrit +4. Ensuite, on veut que le tri se fasse selon un +critère numérique (option -n) et à l'envers, en commençant par les +plus grandes valeurs (option -r, reverse). +
++Pour finir, on veut les dix premières lignes du résultat. On les sélectionne +avec la commande head; par défaut, elle prend les dix premières +lignes d'un fichier, il n'est donc pas nécessaire de préciser le nombre de +lignes voulues. Finalement, on écrit : +
+ls -l /usr/bin | sort -nr +4 | head+
Une manière de résoudre cet exercice consiste à utiliser le programme
+sed
qui sert à manipuler du texte.
Nous allons utiliser la commande s
de sed
.
+Sa syntaxe est la
s/regexp/remplacement/+
où regexp est une expression régulière et +remplacement une chaîne devant la remplacer.
+sas ~ $ cat /etc/hosts | sed -e "s/^.\{4\}\(.\).*/\1/"
+
+Le "^.\{4\}"
du début sert à filtrer les
+4 premiers caractères de chaque ligne. Ensuite, \(.\)
filtre
+n'importe quel caractère, le fait de mettre des parenthèses enregistre le
+caractère en question dans une variable que l'on peut utiliser dans
+la chaîne de remplacement avec "\1"
. Ensuite,
+.*
filtre le reste de la ligne.
sas ~ $ cat /etc/hosts | sed -e "s/^.\{4\}\(.\{6\}\)..\(.\).*/\1 \2/"
+
+sas ~ $ cat /etc/hosts | sed -e "s/^.\{14\}//"
+
++Les pages jaunes (yellow pages) sont un système qui centralise +certaines bases de données communes à toutes les machines du système (logins +et noms utilisateurs, mots de passes, groupes d'utilisateurs, noms et adresses +des autres machines sur le réseau) sur un petit nombre de serveurs redondants; +cela permet de garder des bases de données cohérentes, plus facilement que si +on devait mettre à jour leur contenu sur plusieurs centaines de machines à la +fois. +
++On dit plutôt aujourd'hui NIS ou Network Information System, Yellow Pages +étant une marque déposée de British Telecom.
++La commande ypcat permet de visualiser une base de données: citons en +particulier: ypcat passwd, ypcat group, ypcat +hosts.
++Ces bases de données sont les versions centralisées des fichiers +/etc/passwd, /etc/group et /etc/hosts, lesquels ne +contiennent alors plus que quelques informations; par exemple, le fichier +/etc/hosts contient tout de même des adresses de machines, ne +serait-ce que celle du serveur de pages jaunes.... +
++ +Pour avoir une liste de tous les comptes, on tape
+ypcat passwd+
+On veut ensuite sélectionner les gens dont le répertoire personnel contient +/96/, et dont le login commence par l, et compter le nombre +de lignes (option -c de grep). On tape donc :
+ypcat passwd |grep c '^l.*/96/'+
+et on obtient 19. +
++ +On veut savoir si des chemins d'accès de répertoires personnels sont de la +forme
+/users/8[0-9]+
+On tape donc : +
+ypcat passwd | grep '/users/8[0-9]'+
+ +On veut avoir une liste des gens dont le chemin d'accès du répertoire +personnel commence par /users/ et un numéro : /users/9[0-9] +(puisqu'on vient de voir qu'il n'y a pas de gens des promotions antérieures). +On utilise l'option -c (count) pour avoir le nombre de +personnes :
+ypcat passwd | grep -c '/users/9[0-9]/'+
+ + +Le numéro d'ID (user identification) identifie les utilisateurs, les +numéros les plus bas correspondant au système (l'UID de root est 0). C'est le +troisième champ, les champs étant séparés par des deux-points. +
++On va utiliser sort pour trier, selon un critère numérique (option +-n). Par défaut, avec sort les champs sont délimités par des +blancs, il faut donc indiquer qu'ici ce sont des deux-points, avec l'option +-t. Enfin, on trie en fonction du troisième champ (2, +la numérotation commençant à 0).
++On suppose aussi que l'on veut pouvoir lire le résultat du tri avec +less. On tape donc :
+ypcat passwd | grep '/users/9[0-9]' | sort -n -t: +2 | less+
grep
pour ne garder que les lignes des pages
+jaunes correspondant aux personnes ayant zsh
comme shell de
+login et on utilise sed
pour n'afficher que le login :
+bireme ~ $ ypcat passwd | grep "zsh$" | sed -e "s/:.*//"
+
+clipper
, tout le
+monde à /bin/sh
comme shell de login. Le shell (en général
+zsh
) n'est lancé qu'à partir du script
+.profile
. Il s'agit d'un choix de l'administrateur système.
+bireme ~ $ ypcat passwd | sed -e "s/:\/.*//
+s/.*://" | grep " .*[aeiou][aeiou].*"
+
+ +C'est la commande df qui donne des informations sur le disque et sur +les partitions montées. Pour rediriger la sortie d'une commande dans un +fichier, on utilise l'opérateur de redirection > suivi du nom du +fichier. Dans notre cas, pour conserver les informations dans un fichier +appelé disque, on écrira : +
++df > disque ++
+C'est la commande finger qui donne des renseignements sur les +utilisateurs. Si on tape +
++finger martin ++
+ou mieux (plus rapide), +
++finger -m martin ++
+les renseignements concernant l'utilisateur s'affichent. On y trouve la +date de son dernier login sur la machine où vous êtes, ainsi que la date de la +dernière fois où il a lu son courrier (mais ce à condition qu'il ait reçu du +courrier depuis...). +
++C'est la commande file qui permet d'afficher le type des fichiers. +Dans notre cas, il suffit d'écrire: +
+galion ~ $ file /etc/passwd /usr/include/stdio.h /bin/ls . +/etc/passwd: ASCII text +/usr/include/stdio.h: C program text +/bin/ls: ELF 32-bit MSB executable, SPARC, version 1, stripped +.: directory +galion ~ $ ++
find
Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans les
+pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
+
find
+
+
+
+C'est l'option -name
qui permet de spécifier le nom du ou des
+fichiers recherchés. On peut indiquer le nom d'un fichier complet
+(bofichier.tex
), ou utiliser des expressions régulières (celles du
+shell, pas celles de grep
...) :
*
) désigne «un ou plusieurs caractères»;
+Dans notre cas, le premier caractère est un «a» ou un «A» ([aA]
),
+suivi de quelque chose (*
) et terminé par un chiffre entre 3 et 6
+([3456]
ou [3-6]
). On écrit donc :
+
+find . -name '[aA]*[3-6]' -print ++
+C'est l'option -mtime
qui permet de donner une indication en
+jours. La syntaxe varie selon ce que l'on souhaite :
+
-mtime 30
: le fichier a été modifié il y a 30
+jours;-mtime +30
: le fichier a été modifié il y a 30
+jours ou plus;-mtime -30
: le fichier a été modifié il y a 30
+jours ou moins.
+
+On utilise l'option -newer
(«plus récent»). Par exemple, on
+cherche un fichier .tex
modifié plus récemment que
+bofichier.tex
:
+
+find . -newer bofichier.tex -name '*.tex' ++
+On peut raffiner la demande, en combinant cette option avec l'option
+-mtime
: cherchons les fichiers modifiés plus récemment que
+bofichier.tex
, mais il y a plus de 5 jours :
+find . -newer bofichier.tex -mtime +5 -name '*.tex' ++
+On utilise l'option -type
pour spécifier le genre de fichier
+recherché : les principaux sont f
(file) pour un
+fichier normal, et d
(directory) pour un répertoire.
+On tape donc :
+
+find . -type d ++
+
+On utilise l'option -size
, suivie d'un nombre et d'une lettre
+indiquant l'unité de mesure (c
: octets,
+k
: kilo-octets). Comme pour -mtime
, on
+utilise +
, -
ou [rien]
pour indiquer
+que la taille est, respectivement, supérieure, inférieure ou égale à la valeur
+donnée.
+Par exemple, on recherche un fichier modifié il y a moins de 12 jours et dont +la taille soit supérieure à 30 K :
++find . -type f -size +30k -mtime -12 -print ++
+ + +La ligne utilisée pour trouver ces fichiers et la suivante : +
++find . -mtime +30 -name '*~' ++
+Il y a deux façons de faire exécuter des commandes sur les fichiers trouvés
+par find
: utiliser l'option «-exec
+commande», ou utiliser un pipe avec xargs
.
+
-exec
commande exécute la commande
+sur le fichier courant. La commande est terminée par le marqueur
+;
, qu'il faut protéger du shell avec un backslash. Le fichier
+courant est désigné par la chaîne {}
.
+
++Pour effacer tous les fichiers de sauvegarde vieux de plus d'un mois, on tape +donc :
+ ++find . -mtime +30 -name '*~' -print -exec rm \; ++ + +
+On peut faire exécuter la commande de façon interactive en remplaçant
+-exec
par -ok
:
+find . -mtime +30 -name '*~' -print -ok rm \; ++ +
+Le programme demande, pour chaque fichier trouvé, si on veut bien exécuter la
+commande; la réponse doit être «y
» ou «Y
».
+
-exec
est en fait très lourde, car elle
+crée un nouveau processus pour chaque fichier; il vaut mieux
+rediriger le résultat de find
avec un pipe et
+xargs
. Dans notre cas, on tapera donc :
+
+
++find . mtime +30 -name '*~' | xargs -p rm ++ +
+L'option -p
de xargs
rend cette commande
+interactive. Il faut répondre «y
» ou «Y
» pour
+confirmer.
+
+Quelle différence y a-t-il entre un simple pipe et
+«| xargs
» ? Pour la comprendre, voici un
+exercice : cherchez tous les fichiers contenus dans
+/usr/local/lib/texmf/tex
et cherchez dedans le mot «supertab». Il
+y a deux solutions :
+
+find /usr/local/lib/texmf/tex -type f | grep supertab ++ +
+Vous obtenez une liste de fichiers contenant «supertab» dans leur nom. +
++find /usr/local/lib/texmf/tex -type f | xargs grep supertab ++ +
grep
cherche dans chaque fichier passé en argument la chaîne de
+caractères «supertab», ce qui est très différent...
grep
: corrigésgrep
+
+Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans les
+pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
+
grep
+ grep
+qui permettent d'obtenir des lignes de contexte (qui précèdent et/ou suivent
+la ligne où figure le mot) ?
+
+ + +Il y en a plusieurs, qui se recoupent :
+-num
: le numéro indique le nombre de
+lignes de contexte que l'on veut voir figurer avant et après la ligne où
+figure le mot recherché. Par exemple, si on veut trois lignes de contexte,
+avant et après la mot (soit sept lignes au total), on tape :
+
++grep -3 ... ++
-A num
(after) : le numéro
+indique le nombre de lignes qui doivent suivre la ligne où figure le mot. Si
+on en veut quatre, on tapera :
+
+
++grep -A 4 ... ++
-B num
(before) : le
+numéro indique le nombre de lignes qui doivent précéder la ligne où
+figure le mot. Si on en veut dix, on tape :
+
++grep -B 10 ... ++
-C num
(context) : équivalent à
+ -num
. En fait, les trois lignes suivantes sont
+ strictement équivalentes :
++grep -2 ... +grep -C 2 ... +grep -A 2 -B 2 ... ++
+C'est l'option -n
(number) qui sert à cela; le numéro
+figure tout au début de la ligne, suivi d'un deux-points (:
) et
+du texte. Par exemple :
bireme ~ $ grep -n violon verlaine.tex
+12:des violons de l'automne
+
+ +Quand on fait une recherche dans plusieurs fichiers, le nom du fichier figure +d'abord, puis le numéro de la ligne, et enfin le texte, le tout séparé par des +deux-points. Par exemple : +
+bireme ~ $ grep -n violon *
+verlaine.tex:12:des violons de l'automne
+orchestre:45:Cordes : contrebasse, violoncelle, alto, violons.
+
+ Que se passe-t-il quand on demande également des lignes de
+contexte ?
+
+
+La disposition générale ne change pas, par contre, le signe utilisé pour
+séparer la ligne de son numéro est un tiret (-
) quand il s'agit
+des lignes de contexte, et un deux-points quand il s'agit de la ligne voulue.
+Par exemple :
bireme ~ $" grep -nC violon verlaine.tex
+10-
+11-Les sanglots longs
+12:des violons de l'automne
+13-bercent mon coeur
+14-d'une langueur monotone
+
+
+
+On utilise l'option -c
(count) :
+
bireme ~ $ grep -c violon *
+verlaine.tex:1
+orchestre:1
+
+ grep
+ignore la casse des caractères (différence entre majuscules et minuscules)
+dans sa recherche ?
+
+
+Par défaut, grep
fait la différence entre les majuscules et les
+minuscules; pour invalider ce comportement, on utilise l'option
+-i
(ignorecase).
+C'est l'option -l
qui permet de faire cela : afficher les
+noms des fichiers où figure au moins une fois la chaîne de caractères
+recherchée.
+On veut en fait inverser le sens de la recherche : c'est l'option
+-v
qui fait cela.
+
+On utilise l'option -L
, qui affiche les noms de fichiers où ne
+figurent pas la chaîne de caractères recherchée. Il ne faut bien sûr pas
+confondre les options -l
et -L
...
+
grep
ne
+recherche que les lignes où figure le mot tel quel, et non pas ses
+variantes ?
+
+
+
+C'est l'option -w
(comme word) qui sert à cela : un
+mot complet est délimité comme suit :
+
+Si donc on veut chercher «travail» et aucune forme dérivée de ce mot, on +écrit : +
++grep -w travail mon-fichier ++
+On veut chercher toutes les occurences des mots «terre» et «ciel» dans les
+deux premiers chapitres de la première partie de Germinal, avec les
+numéros des lignes. On propose deux solutions, la première utilisant les
+ressources de la syntaxe de grep
, la seconde utilisant l'option
+-f
avec un fichier.
grep
: La structure
+\(mot1\|mot2\)
permet de chercher plusieurs mots. Ici, on tape la
+ligne suivante :
+
++grep '\(ciel\|terre\)' fichier ++ +
+On met des apostrophes de part et d'autre de l'expression pour la protéger +contre le shell, c'est-à-dire pour que le shell ne cherche pas à interpréter +l'expression. +
-f
fichier» : dans un
+fichier quelconque, que nous appellerons liste
, on indique les
+mots que l'on recherche : «ciel» et «terre». Chaque ligne correspond à un
+mot recherché. Il ne faut donc pas mettre de ligne comme
+
++terre ciel ++ + +
+car le programme chercherait la chaîne de caractères «terre ciel», qui est +assez improbable en français. Il ne faut pas non plus laisser de ligne +blanche : le programme afficherait l'ensemble du texte. +
+
+Quelle que soit la solution retenue, on veut ensuite afficher le numéro des
+lignes (option -n
); d'autre part, pour que la recherche soit
+exhaustive, il vaut mieux que grep
ne fasse pas de différence
+entre les majuscules et les minuscules, avec l'option -i
+(ignore case, ignorer la casse des caractères). Il faut aussi décider
+si on cherche les mots tels quels, sans leurs variantes (comme «terre» au
+pluriel), ou si on accepte ces variantes. Si on ne veut que le mot sans ses
+dérivés, on utilise l'option -w
.
+
+Pour désigner les deux fichiers où faire la recherche, on peut les écrire +littéralement : +
++zola1.txt zola2.txt ++
+ou, mieux, utiliser les joker du shell : +
++zola[12].txt ++
[12]
signifie «le caractère 1 ou le caractère 2».
Finalement, on peut taper, au choix :
++grep -inw -f liste zola1.txt zola2.txt +grep -inw -f liste zola[12].txt +grep -inw '\(ciel\|terre\)' zola1.txt zola2.txt +grep -inw '\(ciel\|terre\)' zola[12].txt ++
+Et on obtient : +
++zola1.txt:13:ciel, le pavé se déroulait avec la rectitude d'une jetée, au +milieu de +zola1.txt:36:brûlaient si haut dans le ciel mort, pareils à des lunes fumeuses. +Mais, au +zola1.txt:50:besogne. Les ouvriers de la coupe à terre avaient dû travailler +tar d, on +zola1.txt:124:terre, lorsqu'un accès de toux annonça le retour du charretier. +Le ntement, +zola1.txt:191:bleues en plein ciel, comme des torches géantes. C'était d'une +tristesse +zola1.txt:207: Le manoeuvre, après avoir vidé les berlines, s'était assis à +terre, +zola1.txt:222:fois avec tout le poil roussi, une autre avec de la terre jusque +dans le + +(...) ++
+Le résultat est un peu différent quand on n'utilise pas l'option
+-w
.
grep
recherche des chaînes de caractères, qui peuvent être un mot
+complet («terre»), une suite de lettres («tre»), ou une expression régulière.
+Les expressions régulières sont des formules qui représentent des chaînes de
+caractères. On cherche alors non pas un mot précis, mais des suites de
+caractères correspondant aux critères demandés. Elles sont d'un usage fréquent
+avec grep
bien sûr, mais aussi avec des commandes comme
+less
, ou encore au sein d'un éditeur.
+
+«Expressions régulières» (Regular expressions en anglais) se +traduisent en bon français par «expressions rationnelles», mais l'usage est de +dire «régulières». +
++Ces exercices n'entendent pas remplacer un cours sur les expressions +régulières, ni faire le tour de leurs possibilités. +
++Il faut indiquer que l'on veut le début de la ligne, avec le chapeau +(caret en anglais). Ensuite, on veut préciser que la ligne commence +par un «a» minuscule ou majuscule. Il y a deux façons de le faire : +
-i
qui fait ignorer la différence entre
+les majuscules et le minuscules.[abc]
signifie «a ou b ou c». Ici, ce sera
+[aA]
.+Enfin, il faut protéger les signes contre le shell, pour qu'il ne les +interprète pas; on met donc l'expression entre apostrophes. Remarque : +la protection des expressions régulières contre le shell est une question +complexe.... +
+Il faut donc écrire : +
+grep -i '^a' fichier +
+ou +
+grep '^[aA]' fichier +
+
+
+C'est le dollar ($
) qui représente la fin de la ligne. Il faut
+donc écrire :
+grep 'rs$' fichier ++
+
+
+Pour désigner un chiffre, on peut en indiquer une liste entre crochets :
+[0123456789]
. Il est plus simple d'utiliser une classe de
+caractères : [0-9]
qui désigne, comme la solution précédente,
+n'importe quel chiffre de zéro à neuf.
+
+Il faut donc taper :
++grep '[0-9]' fichier ++
+
+
+Comme on l'a vu, c'est le chapeau qui indique le début de la ligne. Pour
+indiquer que l'on cherche une majuscule, on peut soit en donner une liste
+([ABCDEFGHIJKLMNOPQRSTUVWXYZ]
), soit utiliser une classe de
+caractères : [A-Z]
, la seconde solution étant, de loin,
+préférable...
+
+Il faut donc taper : +
++grep '^[A-Z]' fichier ++
+ + +Il faut indiquer entre crochets les trois lettres recherchées : +
++grep '^[BEQ]' fichier ++
+
+
+Le point d'exclamation n'a pas de signification particulière avec
+grep
, on peut donc le mettre tel quel :
+
+grep '!$' fichier ++
+ + +Il faut donner une liste de caractères, que l'on ne veut pas voir figurer; la +liste sera entre crochets, comme on l'a déjà vu, et c'est le chapeau qui +signifiera, dans ce contexte, «sauf». Par exemple, si on cherche tous les «a», +sauf ceux suivi de «b», «c» ou «t», on écrit : +
++grep 'a[^bct]' ++
+Il y a une seconde difficulté, qui vient de ce que certains caractères sont
+spéciaux avec grep
. Vous vous doutez que le chapeau est spécial
+quand il est placé au début de l'expression, et que le dollar l'est quand il
+est placé en fin d'expression. Dans notre cas :
+
egrep
, il fonctionne tout seul, avec
+grep
, il faut le faire précéder d'un backslash pour qu'il
+fonctionne; par exemple (avec grep
), pour chercher «charbon» ou
+«vagabond», on écrit :
++grep 'ar\?bo' fichier ++ +
+(chercher la suite de lettre «abo» avec un «r» facultatif entre le «a» et le +«b»).
+
+Pour que grep
interprète littéralement ces caractères, et ne les
+considère plus comme spéciaux, il faut les faire précéder d'un backslash
+(\
). Si par exemple vous cherchez toutes les lignes qui se
+terminent par un point, il faut taper :
+
+grep '\.$' fichier ++
+Dans notre cas cependant, ces caractères sont protégés par les crochets. On +peut donc écrire : +
++grep '[^.,;:?!]$' fichier ++
+On peut aussi utiliser l'option -v
, qui prend toutes les lignes
+où ne figure pas une chaîne de caractères donnée; dans ce cas, on tape :
+
+grep -v '[.,;:?!]$' fichier ++
+
+On cherche une chaîne de caractères qui soit indifféremment au début ou au
+milieu d'un mot. N'importe quelle lettre, ce sont les classes de caractères
+[a-zA-Z]
ou [:alpha:]
, qui sont équivalentes.
+
+Il y a une petite subtilité avec l'emploi de classes du second type; elles +désignent un groupe de caractères, et il faut mettre une seconde paire de +crochets pour dire «n'importe quel caractère de cette classe prédéfinie». +On tape donc au choix : +
++grep '[a-zA-Z]r' fichier' ++
+ou +
++grep '[[:alpha:]]r' fichier' ++
+Attention, dans ces listes ne sont pas compris les caractères accentués... +
+
+C'est le symbole \<
qui désigne un début de mot. La première
+lettre du mot est indifférente, la seconde est un «r». On écrit donc :
+
+grep '\<.r' fichier +
+Il y a cependant un problème avec les caractères accentués, que
+grep
considère comme des blancs. Dans ce cas, il vaut mieux
+procéder autrement : un mot est précédé d'un début de ligne, ou d'un
+blanc ou d'une tabulation. Un début de ligne, c'est le chapeau, un blanc ou
+une tabulation, c'est la classe de caractères [:space:]
.
+
+On va se servir du pipe (|
) qui signifie «ou». Avec
+grep
, il faut backslasher le pipe, avec egrep
ce
+n'est pas nécessaire. On écrit donc (avec grep
) :
+
+grep '^.r\|[[:space:]].r' fichier +
+Ce n'est quand même pas si simple; les mots peuvent être précédés d'un tiret
+(mots composés), d'une apostrophe, de guillemets divers (``
,
+"
, «
, <<
), et, si l'auteur du
+texte n'est pas respectueux des règles de typographie, d'une ponctuation. Il y
+a donc bien des cas à envisager...
+
Veuillez utiliser les liens présents dans le sommaire pour accéder aux +solutions.
+ +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.
++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.
+
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. +
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.
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
.
+Vous pouvez aussi l'appeler au clavier en tapant :
++xterm -name gamma & ++
Déplacement
et mettre la fenêtre où bon vous semble.
+Minimiser
dans le
+menu de la première case à gauche. 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.
+Dimensionner
et
+donner à la fenêtre la taille souhaitée.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.
gamma
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é).+Beaucoup ! Par exemple : +
+Front
(disponible
+uniquement sur les claviers des stations Sun) ;+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).
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).
++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.
+méta-flèche
pour vous déplacer dans les écrans
+virtuels.+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/ &
+
+ 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...
+ 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. +
+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.
+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).
+
+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 :
+joe
, pico
,
+(x
)emacs
,
+(x
)vi
(m
)...).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.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.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.
+
less
+On aborde ici less
, qui est une version plus élaborée de
+more
; ce dernier est toujours détaillé dans dans les ouvrages sur
+Unix, et de fait il est toujours présent sur ces systèmes, ce qui n'est pas
+forcément vrai pour less
(qui est quand même très courant).
+more
est beaucoup plus rudimentaire, alors que less
+a beaucoup de fonctionnalités appréciables : vidéo inverse pour les
+motifs recherchés, déplacements en avant et en arrière pour la recherche, etc.
+
less
?
+
+ On tape h
ou H
pour afficher une page d'aide. On s'y
+déplace comme dans less
(flèches, ^D
,
+^F
, ^B
, ^P
, SPC
,
+j
, k
...). Pour quitter l'aide, ce sont les mêmes
+commandes que pour quitter less
: q
,
+Q
, :q
, :Q
, ZZ
.
+
+Il suffit de donner plusieurs fichiers en argument à la commande
+less
; par exemple, pour examiner sucessivement les fichiers
+toto
, bla
et blu
, on tape :
+
+less toto bla blu ++
+Pour passer au fichier suivant, on tape :n
(next); pour
+revenir au fichier précédent, on tape :p
(previous).
+:x
permet de revenir au premier fichier spécifié.
+
less
?
+
+
+Ce sont : q
, Q
, :q
, :Q
,
+ZZ
.
+
less
d'ouvrir le
+fichier en plaçant en haut de l'écran la ligne n ?
+
+
+
+On spécifie le numéro de la ligne après le signe +
; par exemple,
+pour ouvrir le fichier rapport
sur la ligne 57, on tape :
+
+less +57 rapport ++
less
d'ouvrir le
+fichier en plaçant en haut de l'écran la première ligne où apparaît un motif
+donné ?
+
+
+On utilise l'option -p
de la commande less
; par
+exemple, pour chercher le mot «toto» dans le fichier rapport
, on
+tape :
+
+less -p toto rapport ++
+On peut aussi indiquer le motif recherché de la façon suivante : +
++less +/toto rapport ++
less
qui permettent de chercher un motif dans un fichier,
+respectivement après et avant la position courante ?
+
+
+Pour chercher un motif plus en avant dans le texte, on utilise le slash (barre
+oblique vers la droite : /
). Par exemple :
+
+/mot ++
+Pour chercher en arrière de la position courante, on utilise le point
+d'interrogation. Pour aller à la prochaine occurence du mot, il suffit de
+taper n
(next). Pour aller à la précédente occurence du
+mot, il faut taper N
. Évidemment, quand on cherche un motif avec
+?
, n
remonte dans le texte et N
+descend dans le texte.
+Une fois le début ou la fin du fichier atteint, la recherche s'arrête. On +peut utiliser les expressions régulières. +
+less
de chercher le
+mot à partir de la première ligne du fichier, et ce où que l'on soit dans le
+fichier ?
+
+
+Il faut taper ^F
après avoir tapé /
. En fait,
+^F
fait commencer la recherche au premier fichier dont on a donné
+le nom; quand il n'y en a qu'un seul, cela place de fait tout au début du
+fichier. Par exemple, pour chercher toto
alors qu'on se trouve à
+la fin du fichier, on tape :
+/^F ++
+Le prompt devient alors : +
++First-file / ++
+et il n'y a plus qu'à taper le motif recherché. +
+-i
à
+less
? Quelle option faut-il mettre à la place de
+-i
pour chercher toTo
tout en ignorant la casse des
+caractères ?
+
+
+L'option -i
signifie ignorecase, c'est-à-dire ignorer la
+casse des caractères (différence entre majuscules et minuscules). Si donc
+je tape (au choix) :
+
+less -ip TOTO rapport +less -ip toto rapport +less -i +/toto rapport +less -i +/TOTO rapport ++
less
ne fera pas la différence entre les majuscules et les
+minuscules, et je trouverai toto
comme TOTO
. Bien
+sûr, c'est la même chose si je lance less
avec l'option
+-i
et que je cherche ensuite le mot à l'intérieur du fichier avec
+/
ou ?
.
+
Mais l'option -i
est invalidée si le motif
+recherché contient des majuscules et des minuscules : si, en
+lançant less
comme ci-dessus, je cherche le motif
+Toto
, je ne trouverai que Toto
et pas
+TOTO
par exemple. Pour contourner cette restriction, il faut
+lancer less
avec l'option -I
, qui est donc un
+ignorecase «robuste».
+
+Pour aller à l'occurence suivante (resp. précédente) d'un motif dans un
+fichier, on utilise n
(resp. N
). Pour faire la même
+opération mais sans passer manuellement de fichier en fichier, on tape
+ESC n
pour chercher en avant, et ESC N
pour chercher
+en arrière. ESC
désigne bien sûr la touche d'échappement
+(Escape
).
+
/
?
+
+
+Le caractère /
sert à chercher un mot dans le fichier. Si on tape
+
+// ++
less
répond : Pattern not found
. Il faut donc
+dire à less
de considérer le /
comme un caractère
+ordinaire, et pas comme un caractère spécial. Comme avec toutes les
+expressions régulières, c'est le backslash (barre oblique vers la
+gauche : \
) qui sert à cela. Pour chercher un
+/
, on tape donc :
+
+/\/ ++
La page de man donne une liste de caractères qui sont spéciaux avec
+/
et ?
. Ces commandes de recherche utilisent les
+expressions régulières de ed
(et de vi
par
+conséquent).
+
ls
Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans les
+pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
/usr/local/games/bin
+
+ +ls /usr/local/games/bin ++
Vous obtenez une liste des jeux installés.
+.flnewsrc.forum
?
+
+
+ls -al .flnewsrc.forum+ + +
+L'option -a
fait apparaître les fichiers de configuration, qui
+commencent par un point; l'option -l
affiche plusieurs
+renseignements, en particulier la taille. En fait, si vous indiquez le nom
+complet du fichier cherché, avec le point, l'option -a
est
+inutile; c'est le cas ici.
+
+Le .flnewsrc.forum
contient la liste de continua de forum avec
+des indications sur les contis auxquels vous êtes abonnés et les messages que
+vous avez déjà lus. Il est remis à jour à chaque fois que vous lisez
+forum : la date indiquée correspond donc à la dernière fois que vous avec
+lancé (ou plus précisément, quitté...) forum.
+
-R
de
+ls
?
+
+ Cette option permet d'afficher une liste récursive, c'est-à-dire qui indique
+le contenu des répertoires listés, ainsi que de leurs sous-répertoires. Si
+vous tapez ls -R
dans votre répertoire personnel, vous aurez une
+liste de tout ce que vous avez chez vous.
+Pour savoir cela, il faut chercher le mot sort dans le man de
+ls
. La première occurence vous dit que par défaut le résultat est
+trié par ordre alphabétique, selon la première lettre des fichiers. De façon
+plus précise, l'ordre est le suivant : ponctuations, chiffres,
+majuscules, minuscules, selon l'ordre défini par la table des caractères
+ASCII.
+En continuant à chercher, vous trouvez des options intéressantes :
+-r
(reverse), qui inverse l'ordre de classement,
+-t
(time) qui trie en fonction de la date de dernière
+modification.
+ls -t ++
+si vous voulez juste modifier le critère de tri, sans plus de renseignements; +ou encore
+ls -lt+
+si vous voulez une longue liste. +
+Mail
? Qu'est-ce que cela signifie ?
+
+ +La ligne ressemble à ceci : +
++drwx------ 2 toto litt98 512 Apr 2 19:02 Mail ++
+Le d
indique qu'il s'agit d'un répertoire (directory).
+Suivent ensuite neuf caractères, allant par trois; r, w, x
+correspondent aux droits que vous avez sur le répertoire (ou le
+fichier) : r
(read) pour le droit de lecture,
+w
(write) pour le droit d'écriture, x
+(execute) pour le droit d'exécution.
+
+Les six tirets qui suivent correspondent aux droits qu'ont le groupe (ici
+litt98
) puis le reste des utilisateurs. Ici il y a des tirets, ce
+qui signifie qu'ils n'ont aucun droit sur ce répertoire.
+
+Cela veut dire que seul le propriétaire a le droit de lire et écrire dans son
+répertoire Mail/
, ainsi que d'y accéder. Les répertoires et les
+fichiers de courrier sont protégés contre les indiscrétions.
+
+Un fichier de texte standard a les droits suivants : +
++-rw-r--r-- ++
Il y a un tiret tout au début, ce qui signifie que c'est un fichier
+normal; vous avez le droit d'écrire et de lire (rw-
), votre
+groupe et les autres utilisateurs ont le droit de lire le fichier
+(r--
). La commande chmod
permet de
+changer ces droits, si l'on veut restreindre la lecture, ou rendre un
+fichier exécutable.
+Remarque : ne cédez pas à la paranoïa... vos camarades ne passent pas +leur temps à farfouiller sur les comptes des voisins, donc vous n'avez pas +besoin d'interdire à la lecture tout ce que vous avez chez vous. +
+ls -l
.
+
+ -rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
Les dix premiers caractères détaillent les droits du fichier. Le premier +caratère identifie le type du fichier : ici, rien n'est spécifié, c'est +donc un fichier normal. L'exercice précédent détaille la signification des +lettres suivantes. Ce sont les droits normaux d'un fichier standard : +tout le monde (propriétaire, groupe et autres utilisateurs) peut lire le +fichier, seul le propriétaire peut écrire dedans. +
++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
+Le chiffre indique le nombre de liens. Nous vous renvoyons aux exercices sur +les liens pour plus d'explications (qui peuvent attendre à un niveau +débutant...). +
++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
+Le troisième champ donne le nom du propriétaire du fichier. Ici, il s'agit de
+l'utilisateur robin
.
+-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
+Ce champ indique le groupe de l'utilisateur. Ici, nous apprenons qu'Émilia est +une littéraire de la promotion 1995. +
++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
+Ce chiffre donne la taille en octets du fichier considéré. Ici, le fichier +fait 754 octets, soit moins d'un Ko (1000 octets). C'est un petit fichier. +
++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
Ce champ indique la date de dernière modification du fichier, ici le 22 mars +de l'année courante, à 11h59. Quand le fichier date d'une année antérieure, +celle-ci est indiquée et l'heure ne figure plus.
++-rw-r--r-- 1 robin litt95 754 Mar 22 11:59 projet.aux ++
+Vient enfin le nom du fichier. Le suffixe .aux
montre qu'il s'agit
+d'un fichier produit par LaTeX lors de la compilation d'un fichier
+projet.tex
.
+Si on tape +
++ls -l repertoire/ ++
+c'est le contenu du répertoire qui s'affiche, et pas son statut à lui.
+L'option -d
(directory) permet de lister le répertoire
+lui-même.
+
+Ce sont les caractères suivants : +
+slash | +(/ ) |
+ pour un répertoire | +
arobase | +(@ ) |
+ pour un lien symbolique | +
étoile | +(* ) |
+ pour un exécutable | +
+ pipe + | +(| ) |
+ pour un pipe nommé | +
égal | +(= ) |
+ pour un socket | +
+C'est l'option -F
qui permet de les afficher.
+
+Avoir le droit d'«exécuter» un répertoire, c'est avoir le droit d'y accéder, +de s'y déplacer; mais je n'ai pas le droit de «lire» son contenu. Donc, à +moins d'en être propriétaire, je ne peux pas afficher le contenu d'un +répertoire ayant comme droits : +
++drwx--x--x ++
mkdir
, rmdir
, cd
)mkdir, rmdir
+
+ cd
+
+
+Ces exercices sont des questions de cours : les solutions se trouvent
+toutes dans les pages de man des commandes en question. On suppose donc
+connues les commandes de less
, qui servent à se déplacer dans
+les pages de man... et la commande servant à chercher un mot. Testez les
+commandes sur des fichiers et répertoires d'essai pour vous faire la main et
+comprendre ce qui se passe.
mkdir, rmdir
+
+
+Si vous voulez créer trois répertoires bla
, ble
et
+bli
, tapez
+
+mkdir bla ble bli +
+Il faut taper +
+rmdir bla ble bli +
mkdir
+mkdir
?
+
+ Vous créez chez vous un répertoire appelé mkdir
.
bla/
... mais ça ne marche pas.
+
+ ls
vous dit qu'il est vide, et pourtant vous ne réussissez pas à
+l'effacer : c'est qu'il n'est pas vide. Il doit y avoir des fichiers
+cachés, commençant par un point, que vous ne voyez pas avec ls
+sans option. Il faut taper
+
+ls -a ++
+et effacer les fichiers trouvés. +
+mkdir
peut prendre des
+options ?
+
+
+Oui, une : l'option -p
, dont on va parler tout de suite.
+
mkdir Rapport/annexes
» peut fonctionner et créer effectivement
+ce sous-répertoire ?
+
+
+Il faut que le répertoire Rapport
existe, pour que l'on puisse y
+créer un sous-répertoire.
+
mkdir
qui
+permette de créer à la fois un répertoire et un sous-répertoire de ce
+répertoire ?
+
+
+Oui, c'est l'option -p
. Quand vous tapez
+
mkdir -p Rapport/annexes ++
+un répertoire Rapport
est créé, et dans ce répertoire un
+sous-répertoire annexes
.
+
+On utilise l'option -m
(mode) de mkdir
.
+Par exemple :
+
bireme ~ $ mkdir -m 700 Mail +bireme ~ $ ls -ld Mail +drwx------ 2 robin litt95 2048 Jun 2 15:27 Mail/ ++
rmdir -p toto/tata/tutu/+
+Cette commande efface toute la hiérarchie des répertoires, à condition qu'ils
+soient vides; si par exemple tutu/
est vide mais
+toto/
ne l'est pas, tutu/
sera effacé mais pas
+toto/
, et le programme s'arrête.
+
+On achève avec ceci le tour de l'option -p
... Si donc on tape
+
+mkdir -p toto/tutu/ ++
+le sous-répertoire tutu/
est créé si toto/
existe
+déjà; et si toto/
n'existe pas, ce répertoire et son
+sous-répertoire sont créés. Il n'y a pas de message d'erreur.
+
cd
+
+
+But de l'exercice : apprendre à se servir de .
et
+..
(«point» et «point point»). ..
désigne le
+répertoire père du répertoire courant, et .
désigne le répertoire
+courant. ..
sert beaucoup avec cd
, pour remonter
+d'un niveau dans une arborescence; .
est très utile avec des
+commandes comme mv
ou cp
, où il signifie en fait
+«ici».
+
+ + + +
+
+Vous vous trouvez dans votre répertoire personnel, dans ~
(tilde).
+
~/Rapport/docs/afaire/
+
+ +Taper +
++cd Rapport/docs/afaire ++
~/Rapport/docs/fait/
+
+ +cd ../fait ++
~/Rapport/
+
+ +Taper +
++cd ../.. ++
+ou +
++cd ~/Rapport ++
less
le contenu de ~/www/index.html
+
+ +Il faut taper +
++less ~/www/index.html ++
+ou +
++less ../www/index.html ++
~/Rapport/docs/
+
+ +cd docs/ ++
~/Mail/
+
+ +Il y a un petit piège dans cette question. En effet, si vous tapez
++ls -l Mail/ ++
+vous allez obtenir le contenu du répertoire Mail/
, mais pas le
+statut du répertoire lui-même. Il faut donc utiliser l'option -d
+de ls
:
+
bireme ~ $ ls -ld Mail
+drwx------ 2 toto litt98 512 Apr 2 19:02 /users/98/litt/toto/Mail/
+
+
+Taper cd
, sans arguments.
+
+Strictement rien ! Ça n'a aucune importance. +
++chmod g+w fic1 ++
+chmod uog+x script ++
+chmod u-wx toto ++
+chmod og+wx toto ++
+C'est l'option -R
. Par exemple, pour interdire tous les
+droits aux fichiers présents dans une branche du répertoire
+confidentiel
, on peut faire :
+
+chmod -R og-rwx confidentiel ++
+C'est l'option -m
qui permet de le faire. Par exemple, pour
+créer un répertoire en lecture interdite aux autres :
+
+mkdir -m og-r repertoire ++
bireme ~ $ ll /usr/sbin/mount
+-r-xr-xr-x 1 root bin 27208 Jan 9 2000 /usr/sbin/mount*
+
+Il s'agit d'un fichier éxécutable par tout utilisateur.+ln tmp/bidon blo ++ +Les contenus sont identiques. Les noms de fichiers
tmp/bidon
+et blo
renvoient au même endroit sur le disque dur.
++ln -s tmp/bidon blo ++ +Le contenu semble être identique, cependant, à propos du +
blo
, le disque dur ne contient comme information que le nom
+du fichier vers lequel le lien pointe (tmp/bidon
).
+On vient d'en voir une. On en déduit que le temps d'accès au contenu +d'un lien dur est plus rapide que pour un lien symbolique. Une autre +différence notable est que, contrairement aux liens symboliques, un lien +dur ne peut pas pointer vers un répertoire.
+On ne peut pas faire de lien dur vers un répertoire. Dans ce cas, il faut +donc utiliser un lien symbolique.
++S'il s'agit d'un lien dur, les droits des deux fichiers liés +sont modifiés. En revanche, s'il s'agit d'un lien symbolique, les deux +fichiers peuvent avoir des droits différents. +
+bireme ~ $ ps + PID TT S TIME COMMAND + 16970 pts/2 S 0:00 /usr/local/util/bin/zsh4 + 16992 pts/2 S 0:07 vim systeme-sol.tml + 17382 pts/3 R 0:00 /usr/local/util/bin/zsh4 +bireme ~ $ ps -l + F UID PID PPID %C PRI NI SZ RSS WCHAN S TT TIME COMMAND + 8 9625 16970 16967 0 48 20 4032 3152 mutex_ex S pts/2 0:00 /usr/local/u + 8 9625 16992 16970 1 58 20 4312 3760 mutex_ex S pts/2 0:07 vim systeme- + 8 9625 17382 17379 0 48 20 3912 2840 mutex_ex S pts/3 0:00 /usr/local/u ++
Les numéros apparaissant dans la colonne PID sont les numéros +des différents processus. Le PPID désigne lui le numéro du +processus père du processus en question. Par exemple, ici, le processus +16992 (vim) est un fils du processus 16970 (zsh). +
++Pour envoyer un signal à un processus, on peut faire : +
+bireme ~ $ kill -23 17382
+
+ +17382 désignant un numéro de processus (PID) et 23 le numéro d'un signal +(SIGSTOP). +
+Le processus est tué sans pouvoir de défendre.
+Le processus s'interrompt. +
+Le processus interrompu redémarre. +
bireme ~ $ nice -19 ./calcul
+
+ Pour vous aider à comprendre, vous pouvez afficher un arbre en +lançant la commande pstree (FreeBSD) ou ptree +(Solaris).
++Ce sont les processus associés aux commandes ps et wc +que vous venez de lancer ! +
++Vous disposez des commandes fg et bg. fg +permet de poursuivre le déroulement du programme. bg le fait +aussi mais il relance le programme en tâche de fond. +
++Il faut éditer un fichier saluer et le rendre ensuite +éxécutable :
++#!/bin/sh +if [ -n "$1" ]; then LOGIN=$1; else LOGIN=`whoami`; fi +echo "Bonjour, $LOGIN" ++
chaland ~ $ params bla ble bli blo blu
+La commande params a 5 paramètre(s), que voici : bla ble bli blo blu
+
+ +#!/bin/sh +echo "La commande $0 a $# paramètre(s), que voici| : $@" ++
+#!/bin/sh +echo "J'ai reçu $# arguments" +echo "Le premier d'iceux est $1" ++
drakkar ~ $ combien galion +Il y a 5 personne(s) loguées sur galion en ce moment. +drakkar ~ $ ++
+#!/bin/sh +N=`who | wc -l | sed -e "s/ *//"` +MACHINE=`whoami` +echo "Il y a $N personne(s) logués sur $MACHINE en ce moment" ++
+Le script suivant lancé avec "**/*.htm" comme paramètre devrait +fonctionner : +
++#!/bin/sh +for i in $@; +do +mv $i `echo $i | sed -e "s/htm$/html/"` +done; ++
+#!/bin/sh +for i in $@; +do +mv $i `echo $i | tr '[:upper:]' '[:lower:]'` +done; ++
+indice toto tata titi toto tutu ++
+renvoie l'indice de toto dans la liste tata titi toto +tutu, c'est-à-dire 3.
++#!/bin/sh +ARG=$1 +shift +N=0 + +for i in $@; +do +N=`expr $N + 1` +[ x$ARG = x$i ] && echo $N +done; ++
+Dans ce fichier, vous avez : +45 mots contenant «r», «s» ou «t», et parmi eux, +12 contiennent deux de ces lettres au moins. +Il y a aussi 10 mots ne contenant aucune voyelle. ++
+#!/bin/sh + +RST=`grep "[rst]" $1 | wc -l` +DEUX=`grep "[rst].*[rst]" $1 | wc -l` +CONS=`grep -v "[aeiou]" $1 | wc -l` + +(echo "Dans ce fichier, vous avez| :"; +echo "$RST mots contenant «r», «s» ou «t» et parmi eux,"; +echo "$DEUX contiennent deux de ces lettres au moins."; +echo "Il y a aussi $CONS mots ne contenant aucune voyelle.") | +sed -e "2,3s/^ *// +\$s/i */i /" ++
+On veut aussi que le résultat soit placé dans un fichier, et que le résultat +soit classé : toutes les lignes qui contiennent «air», puis toutes celles qui +contiennent «eau», etc.
++#!/bin/sh + +FICHIER=resultat +MOTS="terre air eau feu" + +[ -w $FICHIER ] && echo "Le fichier $FICHIER existe déjà" && exit 1 + +for i in $MOTS; +do +echo "Lignes contenant $i" >> $FICHIER +grep $i zola*.txt >> $FICHIER +echo >> $FICHIER +done; + ++
+#!/bin/sh + +FICHIER=resultat + +[ -w $FICHIER ] && echo "Le fichier $FICHIER existe déjà" && exit 1 + +for i in zola[345].txt; +do +echo "Dans le fichier $i, voici les lignes contenant «mine»" >> $FICHIER +NB=`grep -n mine $i | tee -a $FICHIER | wc -l` +(echo "$NB lignes";echo ) >> $FICHIER +done; ++
+coupe fic 4 8 ++
+affichera les lignes 4 à 8 du fichier fic. Affichez des messages +en cas d'erreur (nombre de paramètres incorrect, fichier inexistant, etc). +
++#!/bin/sh + +[ $# != "3" ] && echo "Nombre de paramètres incorrects" && exit 1 +[ ! -r $1 ] && echo "Fichier $1 inexistant" && exit 1 + +cat $1 | sed -n -e "$2,$3p" + ++
tar zcvf nouveaunom fichiersaregrouper+
+Avant d'envoyer des fichiers tar, on utilise uuencode. +
++ Écrivez une commande tarmail qui prend deux arguments, une +adresse et un nom de répertoire, et qui envoie par mail le contenu de +l'arborescence du répertoire précédée d'un message expliquant comment la +récupérer. +
++ +Note : pour récupérer un fichier uuencodé, on tape uudecode et +pour reconstruire l'arborescence, on utilise tar zxvf fichier. + +
++(echo "To: $1"; +echo "Subject: $2"; +echo " Pour lire ce document, sauvegardez ce mail (par exemple sous le " +echo "nom bidule) et faites "; +echo "uudecode bidule | tar tvzf -"; +echo "pour récupérer les fichiers du répertoire $2"; +tar cvf - $2 | gzip | uuencode /dev/stdout) | mail $1 ++
+find . -name '*~' ++
+Écrivez un script qui prend en argument un nom de répertoire et qui +détruit tous les fichiers :
++#!/bin/sh + +for i in `find . \( -name '*~' -o -name 'core' -o -name 'a.out' -o -name '#*#' \) -type f` ; +do +rm -f $i +done; + ++
+#!/bin/sh + +if [ $# != "1" ]; then echo "Indiquez un nom de fichier";exit 1; fi +if [ ! -r $1 ]; then echo "Fichier $1 inexistant";exit 1; fi + +TRAVAIL=$1 + +while true; +do +read CMD +case $CMD in +end) exit 0;; + +cherche) echo -n "Motif ? ";read MOTIF; + echo -n "Fichier ? ";read FICHIER; + if [ -w $FICHIER ]; then + echo "Le fichier $FICHIER existe déjà"; + else + grep $MOTIF $TRAVAIL > $FICHIER + fi + ;; + +tete|fin) + echo -n "Lignes ? ";read LGN; + echo -n "Fichier ? ";read FICHIER; + if [ -w $FICHIER ]; then + echo "Le fichier $FICHIER existe déjà"; + else + case $CMD in + tete) head -n $LGN < $TRAVAIL > $FICHIER;; + fin) tail -n $LGN < $TRAVAIL > $FICHIER;; + esac + fi + ;; + +*) echo "Commande inexistante";; +esac +done + ++
joe
, less
,
+ls
)
+ cp
, ls
,
+mv
)
+ mkdir
,
+mv
, cp
, ls
,
+cd
)
+ rmdir
, cd
,
+rm
)
+ 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.
+joe
, less
,
+ls
)
+ premiertexte
contenant une ou
+deux phrases.
+
+
+Pour créer un fichier et écrire du texte dedans, il faut l'éditer avec un
+éditeur de votre choix. Nous proposons nano
aux débutants. Il
+faut donc taper
bireme ~ $ nano premiertexte
+
Utilisation de nano
: le prompt
+affichant le nom de la machine disparaît; vous avez à la place une page
+blanche où vous pouvez taper du texte. Le nom du fichier que vous éditez
+et le nom de l'éditeur sont affichés en haut.
+La liste des commandes disponibles est écrite en bas. Vous pouvez faire
+Ctrl-O
pour enregistrer et Ctrl-X
pour
+quitter.
+Vous pouvez maintenant taper ce que vous voulez et quitter en
+enregistrant (Ctrl-X
puis répondre y
au moment
+où nano
vous demande si vous voulez enregistrer le texte).
+
premiertexte
sans
+l'éditer
+ C'est la commande less
qui permet de faire cela (ou
+more
, si less
n'est pas installée là où vous vous
+trouvez). Pour lire le contenu de premiertexte
, il faut taper
+
bireme ~ $ less premiertexte
+
+
+Pour quitter less
ou more
, taper q
.
+
premiertexte
?
+
+C'est l'option -l
de ls
qui permet de savoir la
+taille d'un fichier, sa date de dernière modification, etc. Vous tapez
+donc :
bireme ~ $ ls -l
+
+
+Cette commande sans arguments vous donne la liste de tous vos fichiers. Si
+vous voulez connaître les caractéristiques de premiertexte
et rien
+d'autre, tapez
+
bireme ~ $ ls -l premiertexte
+
+
+La config conscrits propose l'alias ll
pour
+ls -l
.
+
PREMIERTEXTE
. Que
+constatez-vous ?
+
+Pour éditer PREMIERTEXTE
, vous tapez
+
bireme ~ $ joe PREMIERTEXTE
+
+
+Vous constatez qu'il s'agit d'un nouveau fichier, et que vous ne retrouvez pas
+le contenu de premiertexte
. C'est normal : Unix est case
+sensitive, c'est-à-dire sensible à la casse des
+caractères : majuscules et minuscules ne sont pas interchangeables. C'est
+pourquoi premiertexte
et PREMIERTEXTE
sont deux
+fichiers différents.
+
cp
, ls
,
+mv
)
+ premiertexte
appelée
+double
+
+C'est la commande cp
(copy) qui sert à faire une copie
+d'un fichier, en indiquant le nom du fichier à copier puis nom du nouveau
+fichier. Il faut donc taper :
bireme ~ $ cp premiertexte double
+
+
+Comme dans l'exercice 1, c'est l'option -l
de ls
qui
+va servir. En tapant ls -l
sans argument, vous affichez le
+contenu du répertoire en entier. Si vous voulez limiter l'affichage aux deux
+fichiers souhaités, tapez
+
bireme ~ $ ls -l premiertexte double
+
+ double
en
+introduction
+
+C'est la commande mv
(move) qui sert à renommer un
+fichier. Pour renommer double
, il faut donc taper :
+
bireme ~ $ mv double introduction
+
+
+En tapant ls
, vous pouvez vérifier que le fichier
+double
a disparu au profit d'un fichier
+introduction
.
mv double introduction
et
+cp double introduction
?
+ mv
(move) renomme un fichier : seul son nom est
+modifié, son contenu reste inchangé et aucun autre fichier n'est créé.
+double
disparaît au profit de introduction
.
+
cp
(copy) fait une copie du premier fichier : un
+nouveau fichier est créé, son contenu est identique à celui du fichier
+d'origine, mais leurs noms sont différents. double
et
+introduction
existent de façon parallèle.
+
mkdir
,
+mv
, cp
, ls
,
+cd
)
+ essai/
+ +Il faut taper +
+bireme ~ $ mkdir essai
+
+ (make directory «essai»)
+
+Vous pouvez vérifier en tapant ls
que le répertoire a bien été
+créé.
+
double
dans essai/
+ C'est mv
(move) qui sert à déplacer des fichiers, ainsi
+qu'à les renommer :
bireme ~ $ mv double essai/
+
+
+Le slash (/
) n'est pas obligatoire, c'est en fait un agrément
+pour identifier plus vite les répertoires dans une liste de fichiers
+
C'est l'option -F
de ls
qui
+fait apparaître ce symbole; vous avez en fait un alias de ls
+sur ls -F
).
premiertexte
appelée
+copie
, et placez-la également dans
+essai/
.
+ +On peut faire ça de plusieurs façons : +
+essai/
:
+
+bireme ~ $ cp premiertexte copie +bireme ~ $ mv copie essai/ +
essai/
:
+
+bireme ~ $ cp premier texte essai/copie
+
essai/
. On pourrait d'abord faire la copie
+dans le répertoire père, puis amener cette copie là où on se trouve :
+
+bireme ~/essai $ cp ../premier texte ../copie +bireme ~/essai $ mv ../copie . ++ +
Ou plus simplement, on pourrait copier le fichier du répertoire père +directement dans le répertoire courant :
+ +bireme ~/essai $ cp ../premiertexte copie
+
essai/
+ +Si l'on est dans le répertoire personnel, on tape : +
+bireme ~ $ ls essai
+
+
+pour avoir une liste de ce que contient essai
. Le résultat
+ressemblera à ça :
bireme ~ $ ls essai
+copie double
+
+
+Et si vous vous trouvez alors dans essai/
, le résultat sera le
+suivant :
bireme ~/essai $ ls
+copie double
+
+ rmdir
, cd
,
+rm
)
+ essai/
. Que se
+passe-t-il ? Que faut-il faire pour détruire un
+répertoire ?
+ C'est la commande rmdir
(remove directory) qui
+sert à détruire les répertoires. Cependant, on ne peut détruire un
+répertoire qu'à condition qu'il soit entièrement vide, c'est pourquoi le
+programme vous répond
+
+rmdir: essai: directory not empty ++
+Il faut donc vider le répertoire pour pouvoir le détruire.
+essai/
+
+C'est la commande rm
qui permet de détruire des fichiers. Il faut
+donc taper :
bireme ~/essai $ rm double copie
+
+
+Vous pouvez aussi vous servir de certains caractères spéciaux; ici, c'est
+*
(étoile) qui est utile. «Étoile» signifie «Tout chaîne de
+caractères ne commençant pas par un point». Donc, pour effacer d'un seul coup
+tous les fichiers du répertoire, vous pouvez taper :
+
bireme ~/essai $ rm *
+
+ Il se trouve que votre configuration est ainsi faite
+que le programme demande confirmation avant d'effacer des fichiers . Cela
+vient de ce qu'il y a un alias de rm
sur
+rm -i
; l'option -i
est l'option «interactive»,
+qui demande confirmation.
+Soyez donc prudents : on a vite fait de confondre mv
+(move) et rm
(remove), et l'option
+-i
n'est pas systématiquement mise.
+
essai/
+Revenez dans le répertoire père (cd ..
) et tapez :
+
bireme ~ $ rmdir essai/
+
+(remove directory «essai»)
+chaland ~ $ params bla ble bli blo blu
+La commande params a 5 paramètre(s), que voici : bla ble bli blo blu
+
drakkar ~ $ combien galion +Il y a 5 personne(s) loguées sur galion en ce moment. +drakkar ~ $ +
+indice toto tata titi toto tutu ++ +
+renvoie l'indice de toto dans la liste tata titi toto +tutu, c'est-à-dire 3.
+Dans ce fichier, vous avez : +45 mots contenant «r», «s» ou «t», et parmi eux, +12 contiennent deux de ces lettres au moins. +Il y a aussi 10 mots ne contenant aucune voyelle. ++
+On veut aussi que le résultat soit placé dans un fichier, et que le résultat +soit classé : toutes les lignes qui contiennent «air», puis toutes celles qui +contiennent «eau», etc.
+coupe fic 4 8 ++
+affichera les lignes 4 à 8 du fichier fic. Affichez des messages +en cas d'erreur (nombre de paramètres incorrect, fichier inexistant, etc). +
tar zcvf nouveaunom fichiersaregrouper+ + +
+Avant d'envoyer des fichiers tar, on utilise uuencode. +
+ ++Écrivez une commande tarmail qui prend deux arguments, une +adresse et un nom de répertoire, et qui envoie par mail le contenu de +l'arborescence du répertoire précédée d'un message expliquant comment la +récupérer.
+ + ++Note : pour récupérer un fichier uuencodé, on tape uudecode et +pour reconstruire l'arborescence, on utilise tar zxvf fichier. +
+find . -name '*~' ++ +
+Écrivez un script qui prend en argument un nom de répertoire et qui +détruit tous les fichiers :
+ +joe
, less
,
+ls
)
+ cp
, ls
,
+mv
)
+ mkdir
,
+mv
, cp
, ls
, cd
)
+ rmdir
,
+cd
, rm
)
+ joe
, less
,
+ls
)
+ premiertexte
contenant une ou deux
+phrases.premiertexte
sans
+l'éditer.premiertexte
?PREMIERTEXTE
. Que constatez-vous ?+ Solution + +
+cp
, ls
,
+mv
)
+ premiertexte
appelée
+double
.double
en introduction
.+mv double introduction ++
et
++cp double introduction +
+ Solution +
+mkdir
,
+mv
, cp
, ls
, cd
)
+ essai/
.introduction
dans essai/
.premiertexte
appelée copie
,
+et placez-la également dans essai/
.essai/
.+ Solution +
+rmdir
,
+cd
, rm
)
+ essai/
. Que se passe-t-il ? Que
+faut-il faire pour détruire un répertoire ?essai/
.essai/
.+ Solution +
+ +cat
+ more
et
+less
+ +Un fichier est un paquet d'informations : ce peut +être aussi bien du texte, que de la musique ou une image. Chaque objet +que vous manipulez en informatique (une page Web, la musique de +Casimir, vos photos de vacances, un logiciel, etc.) correspond à un +fichier. +
++Quand vous écrivez un texte avec OpenOffice.org et que vous le +sauvegardez sous le nom « Rapport de maîtrise », vous créez un fichier +à ce nom, écrit sur le disque dur. Chaque fois que vous écrivez +quelque chose sur le disque, vous créez un ou plusieurs fichiers. +
+
+Une des opérations les plus courantes consiste à écrire du texte. Pour
+cela, voir le cours sur les éditeurs de
+texte. Quand on vous demande de créer un fichier, généralement il
+faut utiliser un éditeur de texte. Ainsi, pour créer le fichier
+index.html
(accueil d'une page Web), utilisez l'éditeur
+de KDE, kwrite, et tapez :
+
brick ~/www/ $ kwrite index.html
+
+
+Si vous êtes pressé, la commande cat
peut faire office
+d'éditeur minimaliste. Tapez la commande suivante, et quelques mots :
+
brick ~ $ cat > notes
+Faire les courses
+Passer à la bibliothèque
+
+
+Et finissez par Ctrl+D
. Le fichier notes
+contient les quelques lignes que vous avez saisies.
+
+On peut aussi créer un fichier à l'aide de la commande
+touch
. touch toto
crée un fichier vide
+appelé « toto ». En fait, cette commande sert essentiellement à
+modifier la date de dernière modification d'un fichier.
+
www
un fichier vide appelé .last_modified
:
+brick ~/www/ $ touch .last_modified
+
+
+Votre page, désormais, ne figurera dans la liste des récentes
+modifications qu'après un nouveau touch
du fichier
+.last_modified
.
+
+Les noms de fichiers s'écrivent avec des caractères
+alphanumériques (lettres et chiffres). On peut utiliser
+des majuscules et des minuscules, mais elles ne sont pas
+interchangeables : document
et Document
sont
+deux fichiers distincts.
+
+Il est préférable d'éviter les espaces dans les noms de fichiers. On
+peut les remplacer par un underscore (_
)
+ou un tiret (-
). :
+
+banque-de-france.tex +banque_centrale.dvi ++
+Il vaut mieux éviter les caractères accentués, et proscrire le reste
+(ponctuations diverses, signes bizarres). Il faut aussi éviter de
+faire commencer un fichier par un .
(par exemple
+.document
). Il est également sage d'éviter de donner des
+noms trop longs (même si en théorie vous avez droit à 255 caractères).
+
+Certains fichiers ont des suffixes conventionnels qui les identifient +auprès des utilisateurs et de certains programmes (liste non +exhaustive de suffixes et d'outils) : +
+Suffixe | +Nature | +Logiciel à utiliser | +
---|---|---|
+ .tex
+ |
+ Fichier source pour LaTeX | ++ Éditeur de texte + | +
+ .dvi
+ |
+ Résultat de la compilation LaTeX | +kdvi , xdvi |
+
.aux , .log , .toc , .mp , etc. |
+ Fichiers produits automatiquement par la compilation LaTeX | +À regarder avec less |
+
.ps , .eps |
+ Fichiers PostScript | +kghostview , gv |
+
+ .txt
+ |
+ Fichier texte | +Éditeur si vous voulez le
+modifier, less si vous voulez juste
+le lire. |
+
.html , .shtml , .htm |
+ Pages Web | +Navigateur
+ (konqueror , firefox , w3m ...) |
+
.au , .ogg , .mp2 , .mp3 |
+ Son | +Les fichiers .au s'écoutent avec play , les
+ .ogg avec ogg123 , les .mp3 avec mpg123 . |
+
.tiff , .png , .jpg ,
+.gif , .ppm ... |
+ Images | +kview
+pour les regarder ; gimp pour les modifier |
+
.mov , .avi |
+ Séquences animées | +
+ mplayer
+ |
+
+ .pdf
+ |
+ Portable Document Format | +kpdf , acroread (Acrobat Reader) |
+
.gz , .tgz , .tar ,
+.tar.gz , .Z , .tar.Z ,
+.zip , .zoo , .lha , .lzx ,
+.z , .uu , .shar |
+ Divers formats d'archives plus ou moins compressés | +Consultez la page sur la compression | +
cat
+
+Pour pouvoir consulter un fichier (sans l'éditer), le plus simple est
+la commande cat
:
+
brick ~ $ cat fichier
+
+
+Le problème est que cat
affiche l'intégralité du fichier
+que vous lui demandez. Si le fichier est plus long que la taille de
+votre écran (ce qui arrive quand même souvent), vous verrez défiler
+très vite à l'écran le contenu de votre fichier, sans pouvoir
+l'arrêter ou le ralentir. Pas très pratique...
+
more
et
+less
+
+Mieux vaut alors utiliser ce qu'en anglais on appelle un pager (parfois traduit par « visionneuse » en
+français). Le nom « pager » vient du fait qu'il affiche un fichier
+page par page et non tout d'un coup comme le fait
+cat
. Sur les Unix un minimum récents, la commande qui
+fait cela est less
. Pour lire le fichier
+toto.txt
, tapez simplement :
+
brick ~ $ less toto.txt
+
+
+Voici un tableau des commandes utiles de less
:
+
+ h
+ |
+ afficher une aide. | +
+ SPC
+ |
+ faire défiler le texte page par page | +
d, ^D (down) |
+ descendre d'un demi-écran | +
f, ^F (forward) |
+ descendre d'un écran | +
p, ^P (previous) |
+ remonter d'un demi-écran | +
b, ^B (back) |
+ remonter d'un écran | +
+ j
+ |
+ descendre d'une ligne | +
+ k
+ |
+ remonter d'une ligne | +
+ G
+ |
+ aller à la fin du texte | +
+ nombreG
+ |
+ aller à la ligne de numéro nombre (par exemple, 1G
+place à la première ligne du fichier). |
+
+ /mot
+ |
+ chercher le « mot » dans le texte. Il sera signalé en inverse dans
+tout le texte. Pour aller à la prochaine occurence du mot, taper
+n , pour aller à la précédente occurence, taper
+N . |
+
+ q
+ |
+ quitter | +
more
(en savoir davantage sur
+un fichier) est une commande standard sur tous les systèmes Unix
+(alors que less
n'est pas installé
+partout). less
(installé à l'École) est cependant plus
+performant : les mots recherchés apparaissent sur fond noir au lieu
+d'être juste placés en haut de l'écran, le défilement du texte est
+plus précis. Si vous n'avez que more
à disposition, vous
+pouvez utiliser les commandes suivantes :
+
+ h
+ |
+ afficher une aide | +
d ( down) |
+ descendre d'un demi-écran | +
f ( forward) |
+ descendre d'un écran | +
b ( back) |
+ remonter d'un demi-écran | +
+ /mot
+ |
+ chercher le « mot » dans le texte (le résultat est beaucoup moins clair
+qu'avec less ). |
+
+ q
+ |
+ quitter | +
+On utilise la commande head
pour afficher le début d'un
+fichier :
+
brick ~ $ head point_de_lendemain.txt
+J'aimais éperdumment la comtesse de ... ; j'avais vingt ans, et
+j'étais ingénu ; elle me trompa, je me fâchai, elle me
+quitta. J'étais ingénu, je la regrettai ; j'avais vingt ans, elle
+me pardonna : et comme j'avais vingt ans, que j'étais ingénu,
+toujours trompé, mais plus quitté, je me croyais l'amant le mieux
+(...)
+
+
+Par défaut, head
affiche les 10 premières lignes. Pour
+lui spécifier un nombre de lignes précis, utilisez l'option
+-n
, n étant le nombre de votre choix :
+
brick ~ $ head -2 point_de_lendemain.txt +J'aimais éperdumment la comtesse de ... ; j'avais vingt ans, et +j'étais ingénu ; elle me trompa, je me fâchai, elle me +brick ~ $ ++
+« Mais à quoi est-ce que ça peut bien servir ? », vous direz-vous. Là, +comme ça, c'est vrai que l'utilité est limitée. Mais en combinaison +avec d'autres commandes, c'est très utile. Un exemple tiré de notre +page sur la place disque : +
+sas ~ $ du -ak | sort -nr | head -10
+98280 .
+22007 ./www
+1658 ./Mail
+9637 ./www/hist
+5005 ./www/hist/maitrise
+4910 ./histoire
+3941 ./Mail/archives
+3757 ./www/philo/
+3274 ./www/philo/cours
+3112 ./www/philo/cours/hegel
+2841 ./prive
+
+ +Nous avons ici les 10 fichiers ou répertoires les plus gros de notre +compte. Toutes les explications sur cette suite de commandes se +trouvent dans nitre page sur la place +disque. +
+
+Cette fois, c'est la commande tail
qu'on utilise, avec
+les mêmes options que head
:
+
brick ~ $ tail -3 point_de_lendemain.txt
+sensible. Adieu, encore une fois. Vous êtes charmant... Ne me
+brouillez pas avec la Comtesse ». Elle me serra la main, et
+me quitta.
+
+
+Cette commande devient très intéressante avec l'option
+-f
: celle-ci dit à tail
de ne pas s'arrêter
+à la fin du fichier, mais de continuer à afficher les nouvelles
+informations qui seraient ajoutées au fichier. Une applications
+typique est la surveillance des fichiers de logs (journaux où le
+système, ou certains programmes, consignent des informations sur leur
+travail).
+
+Vous êtes en train de rédiger votre .htaccess
+(fichier de configuration du serveur Web, Apache) et vous voulez
+regarder en temps réel les messages d'erreur du serveur.
+
~webmaster/logs/access_log.curr
, il faut donc surveiller
+les messages d'erreur sui arrivent au fur et à mesure que vous faites
+vos essais. Tapez dans l'une de vos fenêtres la commande suivante :
+sas ~ $ tail -f ~webmaster/logs/access_log.curr | grep monlogin
+
+
+et vous verrez s'afficher, au fur et à mesure et en temps réel, toutes
+les erreurs qui contiennent votre login, donc vos pages. Pour arrêter
+tail
quand vous en avez assez, tapez Ctrl+C
.
+
Copier un fichier, c'est prendre un fichier déjà existant
+et en créer une copie rigoureusement identique sous un nom
+différent. On utilise pour cela la commande cp
(comme cp). Pour copier toto.txt
en
+toto2.txt
:
+
brick ~ $ cp toto.txt toto2.txt
+
+
+Notez qu'on ne peut pas se servir de cp
pour copier un
+répertoire. Ainsi, si vous essayez de copier votre répertoire
+www
, cp
va se plaindre :
+
brick ~ $ cp www www2
+cp: www: is a directory
+
+ cp
.
+Renommer un fichier, c'est lui donner un nouveau nom, sans
+rien modifier d'autre. On utilise pour cela la commande
+mv
(comme move). Pour renommer
+dissert.tex
en dissertation.tex
:
+
brick ~ $ mv dissert.tex dissertation.tex
+
+
+La même commande sert également, avec la même syntaxe, pour les
+répertoires. Ainsi, si vous voulez renommer votre répertoire
+boulot
en répertoire magistere
:
+
brick ~ $ mv boulot magistere
+
+
+C'est toujours la commande mv
que l'on utilise. La
+syntaxe est la suivante : mv fichier
+nouvel_endroit
. Ainsi, vous voulez déplacez le fichier
+cv.html
, situé à la racine de votre compte, dans votre
+répertoire www
:
+
brick ~ $ mv cv.html www
+
+ +Autre exemple : +
+brick ~ $ mv fichier ..
+
+
+déplace un fichier dans le répertoire père — si vous ne
+comprenez pas ce terme, reportez-vous au tableau qui illustre la
+commande cd
dans la
+page sur les répertoires.
+
mv
.
+Sous Unix, effacer un fichier, c'est le détruire de façon
+irréversible. Pas de concept de poubelle dans
+laquelle on peut fouiller, comme sous Windows ou Mac OS. C'est la
+commande rm
(comme remove) qui efface un
+fichier :
+
brick ~ $ rm fichier
+
+ rm
+vous demande de confirmer l'ordre d'effacement :
+brick ~ $ rm fichier
+rm: remove fichier (yes/no)?
+
+ rm
que vous utilisez fait en fait rm
+-i
, comme vous le montrera la commande which
:
+brick ~ $ which rm
+rm: aliased to nocorrect rm -i
+
+
+Cette précaution évite le fameux doigt qui glisse et autres erreurs
+qui effacent par mégarde des fichiers importants. Mais cette
+précaution n'existe pas pour toutes les configurations : observez donc
+la plus grande prudence en utilisant rm
.
+
+Il existe aussi RCS, qui +enregistre des copies de sauvegarde de vos fichiers, et permet de gérer +les différentes versions de votre travail. +
+
+Nettoyage de printemps sur votre compte, vous voulez supprimer
+plusieurs fichiers en même temps. Il suffit tout simplement de les
+indiquer à la suite à rm
:
+
brick ~ $ rm article_vn.tex article_leveque.tex article_leveque2.tex
+
+
+La commande pour effacer un répertoire est rmdir
+(cf. notre page sur les répertoires),
+mais elle ne marche que si le répertoire est vide. La commande
+rm
ne peut pas effacer directement un répertoire :
+
brick ~ $ rm www
+rm: www is a directory
+
+
+Pour effacer un répertoire et son contenu, utilisez l'option
+-R
(comme recursive de
+rm
. Pour effacer votre répertoire toto/
et
+les fichiers qu'il contient, tapez :
+
brick ~ $ rm -R toto
+
+ rm
est en fait rm -i
,
+rm
vous demandera confirmation pour chacun des fichiers
+contenus dans le répertoire toto/
:
+brick ~ $ rm -R toto
+rm: examine files in directory toto (yes/no)? yes
+rm: remove toto/titi (yes/no)? y
+rm: remove toto/tata (yes/no)?
+(...)
+
+
+Si vous trouvez fastidieux de devoir répondre oui à chaque fois, vous
+pouvez utiliser en plus l'option -f
(comme force) de rm
. Cette option supplante
+l'option -i
et efface irrémédiablement sans
+demander confirmation. Faites donc très attention avec.
+
+Comment effacer des fichiers qui comment par des caractères bizarres,
+ou qui comportent des espaces dans leur nom ? La commande
+rm
semble devenir subitement inefficace ! Essayons
+d'abord avec un fichier avec des espaces :
+
brick ~ $ rm siècle de périclès.doc
+rm: siècle: No such file or directory
+rm: de: No such file or directory
+rm: périclès.doc: No such file or directory
+
+
+En fait, rm
croit que vous voulez effacer d'abord un
+fichier appelé siècle
, puis un autre appelé
+de
, etc. La solution est de mettre le nom du fichier
+entre guillemets ("), et rm
l'efface sans problème :
+
brick ~ $ rm "siècle de périclès.doc" +remove siècle de périclès.doc? y +brick ~ $ ++
+Essayons maintenant avec un fichier commençant par un caractère +bizarre, par exemple un tiret : +
+brick ~ $ rm -bla +rm: illegal option -- b +usage: rm [-f | -i] [-dPRrvW] file ... + unlink file +brick ~ $ rm "-bla" +rm: illegal option -- b +usage: rm [-f | -i] [-dPRrvW] file ... + unlink file ++
+Pas bien brillant... La commande rm
croit à cause du
+tiret initial qu'il s'agit d'options. Or il n'y a pas d'option
+-b
pour rm
. Solution : utiliser l'option
+--
:
+
brick ~ $ rm -- -bla
+remove -bla?
+
+
+Une autre solution consiste à donner à rm
un chemin,
+absolu ou relatif. Avec un chemin relatif, par exemple :
+
brick ~ $ rm ./-bla
+remove -bla?
+
+ Concaténer des fichiers, c'est les placer bout à bout. On
+utilise la commande cat
(comme concatenate) :
+
brick ~ $ cat fichier1 fichier2 > fichier3
+
+
+Les fichiers 1 et 2 placés bout à bout et le résultat est mis dans un
+fichier3
créé automatiquement. Le shell
+refuse d'écraser un fichier existant.
+
+Dans fichier3
apparaît d'abord fichier1
puis
+fichier2
. Concaténer deux fichiers de la sorte ne les
+détruit pas (il existe à la fois fichier1
,
+fichier2
et fichier3
).
+
+On peut aussi placer deux fichiers bout à bout sans créer de troisième +fichier. La syntaxe est alors la suivante : +
+brick ~ $ cat fichier2 >> fichier1
+ fichier2
est placé « au bout » de fichier1
.
+fichier2
reste inchangé, fichier1
contient
+désormais son propre texte suivi du texte de fichier2
.
+
+On veut renommer le fichier chrono
du sous-répertoire
+ancienne/
en evolution
, et le mettre dans le
+répertoire histoire/
. Dans cet exemple, nous sommes dans
+histoire/ancienne/
:
+
+ (1) État de départ : + + |
+
+
+ (2)
+ |
+
+
+ (3)
+ |
+
+
+ (4)
+ |
+
+On peut aussi faire plus rapidement : +
++mv chrono evolution +mv evolution ..+
+Ou, en une seule ligne de commande : +
++mv chrono ../evolution+
+La même série d'opérations est possible depuis histoire/
; elle se
+fera avec la suite de commandes suivantes :
+
+ cp ancienne/chrono evolution +rm ancienne/chrono+ |
+ On recopie le fichier chrono du sous-répertoire
+ancienne/ en un second fichier evolution placé dans
+le répertoire courant : on se retrouve directement dans l'état 3.
+Ensuite, on efface le fichier chrono qui est toujours dans le
+répertoire ancienne/ . |
+
+ mv ancienne/chrono .. +mv chrono evolution+ |
+ D'abord on déplace le fichier, ensuite on le renomme. | +
+ mv ancienne/chrono evolution+ |
+ En une seule ligne, on déplace le fichier et on le renomme. | +
+Il y a donc rarement une seule façon de manipuler ses fichiers, c'est +une question d'aisance et de rapidité. +
+ +Sous Gnome, double-cliquer sur un fichier dans le gestionnaire de +fichier suffit généralement à l'ouvrir avec un logiciel approprié. +Vous trouverez ci-dessous un tableau récapitulant la plupart des +formats de fichiers, et pour chaque type de fichier, des instructions pour +afficher, modifier, imprimer des fichiers à l'aide de logiciels (pour la +plupart) indépendants d'environnements comme KDE ou Gnome, et +disponibles sous la plupart des systèmes Unix. +
+La notion de format de fichiers est introduite dans une page théorique +sur les formats. +
+Format +(extension) | +Afficher | +Imprimer | +Modifier | +
---|---|---|---|
Portable Document Format (pdf ) |
+
+ acroread fichier.pdf
+ |
+ + | |
Word (doc ) |
+ OpenOffice.org (openoffice ) permet de lire, modififer
+et imprimer facilement des fichiers Word. |
+ ||
Page Web (html , htm ) |
+ Utiliser un navigateur Web comme Firefox
+(firefox ). |
+ Éditeur +de texte (voir nos pages sur +HTML) | +|
LaTeX (tex ) |
+ Utiliser un éditeur de texte pour modifier un
+fichier tex , cf. comment faire du LaTeX pour
+en savoir plus. |
+ ||
LaTeX
+(dvi ) |
+
+ xdvi fichier.dvi
+ |
+
+ dvips fichier.dvi
+ |
+ + |
Fichier compressé (gz ) |
+ Voir notre page archiver
+et compresser sous Unix. Dans le cas particulier des fichiers
+.ps.gz , vous pouvez les visualiser directement en faisant gv
+fichier.ps.gz |
+ ||
Fichier archive (tar ) |
+ |||
Fichier archive compressé (tgz , tar.gz ,
+zip ) |
+ |||
Image (bmp , jpg ,
+png , tiff , xpm ,
+gif ...) |
+
+ xv fichier.bmp
+ |
+
+ gimp fichier.png
+ |
+ |
Pour convertir un fichier image d'un format à l'autre, vous
+pouvez par exemple faire IMconvert fichier.xpm fichier.png (en
+dehors de l'ENS, faites convert à la place de
+IMconvert ). Il est également possible de convertir des
+images en utilisant xv et gimp . |
+ |||
PostScript
+(ps ) |
+
+ gv fichier.ps
+ |
+
+ lpr fichier.ps
+ |
+ Vous pouvez utiliser un éditeur de texte, mais seulement si vous +êtes un fan de PostScript ! | +
PostScript encapsulé
+(eps ) |
+
+ gv fichier.eps
+ |
+
+ lpr fichier.eps
+ |
+ |
Fichiers auxiliaires (aux , log ,
+toc ) |
+ Ces fichiers sont générés
+automatiquement, pour les lire faire less fichier puisqu'il sont
+au format texte brut |
+ ||
Fichier texte (pas de suffixe, ou alors txt ) |
+ + Éditeur de texte + | +
+ a2ps fichier.txt
+ |
+ + Éditeur de texte + | +
Scripts (pas de suffixe, ou alors sh , pl ,
+cgi |
+ |||
Fichiers exécutables binaires (pas de suffixe en général sous Unix,
+sous Windows : exe , com , pif ) |
+ Sauf cas très exceptionnels, cela ne se modifie pas, ni ne +s'imprime. Si vous voyez un fichier exécutable attaché dans votre +courrier électronique depuis Windows, ne le lancez surtout pas à moins d'avoir +de très bonnes raisons de le faire (voir la page sur les virus. | +||
Sauvegardes (noms se terminant par « ~ ») |
+ Le plus souvent, ce sont des fichiers de sauvegardes produits par +votre éditeur de texte. | +
Le programme file
permet de déterminer rapidement le format de
+certains fichiers quand on ne dispose pas d'indication comme un suffixe pour le
+savoir :
sas ~ $ file note.png +note.png: PNG image data, 32 x 32, 4-bit colormap, non-interlaced +sas ~tuteurs/tex/documents/doc/doc-2003 $ file questionnaire.ps +questionnaire.ps: PostScript document text conforming at level 2.0 ++ +
+Unix est un système d'exploitation multi-utilisateurs (qui peut être +utilisé simultanément par plusieurs personnes) et multi-tâches (un +utilisateur peut exécuter plusieurs programmes en même temps). L'une +de ses particularités est d'être un système très ouvert, où +l'utilisateur peut choisir librement comment il va travailler. Sous +Unix, on peut toujours faire quelque chose de plusieurs manières +différentes. +
++Les origines d'Unix remontent à la fin des années 1960 et à un +laboratoire d'AT&T (à l'époque, +la compagnie nationale de télécommunications américaine) appelé « Bell +Labs ». Ce labo, en collaboration avec le MIT, développait un OS +appelé « Multics ». +
+
+En 1969, Ken Thompson, l'un des collaborateurs du labo, écrit alors un
+jeu, « Space Travel » (« voyage spatial »), d'abord
+sur Multics, puis sous d'autres systèmes d'exploitation. Sur sa
+lancée, il écrit, en collaboration avec Dennis Ritchie, un système de
+gestion de fichiers, quelques utilitaires basiques comme
+cp
ou rm
et un interpréteur de commandes
+appelé shell
. En 1970, Brian Kernighan, un autre
+collaborateur de Thompson, suggère le nom « UNIX », un jeu de mot sur
+Multics.
+
+L'essor d'Unix est très fortement lié à un langage de programmation, +le C. À l'origine, le premier Unix était écrit en assembleur, puis Ken +Thompson crée un nouveau langage, le B. En 1971, Dennis Ritchie écrit +à son tour un nouveau langage, fondé sur le B, le C. Dès 1973, presque +tout Unix est réécrit en C. Ceci fait probablement d'Unix le premier +système au monde écrit dans un langage portable, c'est-à-dire autre +chose que de l'assembleur (l'assembleur est un langage très proche de +la machine, compris directement par le processeur, il est donc +particulier à chaque type de machine). +
++Bell Labs distribue son nouveau système d'exploitation sous forme de +code source. Chacun étant libre de développer des nouveautés, très +vite apparaissent des familles différentes d'Unix. On peut regroupes +les premiers clients d'Unix en deux groupes, les universités et +centres de recherches américains d'une part, les grands constructeurs +informatiques d'autre part. +
++Pour les universités et centres de recherche, Unix était un système +peu onéreux (AT&T le leur vendait à un prix symbolique) et +puissant. Encore maintenant, beaucoup utilisent Unix. L'Université de Californie à +Berkeley (UCB) notamment est à l'origine de l'une des plus +anciennes branches d'Unix, BSD (Berkeley Software +Distribution). +
++L'autre grande branche d'Unix est Unix System V (lire +« cinq »), vendu par AT&T aux grands constructeurs de matériel +comme Sun Microsystems, IBM, DEC ou encore Hewlett-Packard. Chacun de +ces grands groupes a développé Unix selon ses propres besoins et +intérêts, créant ainsi son propre Unix. +
++La situation est un brin compliquée. La propriété intellectuelle +d'Unix est passée d'AT&T à Novell en 1993, qui aussitôt (en 1994) +a donné la marque déposée +UNIX® au consortium XOpen, devenu de nos jours l'Open Group. Celui-ci a pour but +de standardiser tous les systèmes Unix. Au sens strict, seuls sont des +Unix les systèmes certifiés comme tel par l'Open Group, qui sont tous +des Unix de constructeurs. +
++À l'heure actuelle, pour simplifier les choses, il y a deux grandes +branches d'Unix : +
++Au sens strict, Linux n'est pas un +Unix puisqu'il ne comprend pas de code provenant de +l'original. D'ailleurs, Linux à proprement parler n'est que le +noyau, le cœur du système d'exploitation. Le système +d'exploitation est GNU/Linux, le noyau plus les outils basiques +fournis par le projet GNU (pour Gnu's Not Unix : « Gnu N'est pas Unix ») de la Free Software Foundation. +
++Néanmoins, GNU/Linux a en commun avec Unix une bonne part de son +fonctionnement et de son comportement. Pour un utilisateur lambda, il +est bien difficile de faire la différence entre un Linux et un +Unix. Pour éviter toute pinaillerie, certains parlent d'« Unixoïdes » +(« Unix-like » en anglais) pour évoquer la grande +famille des Unix et Linux. +
++À consulter également : +
+Il y a une imprimante dans chaque salle info : quand vous lancez une + impression depuis un logiciel en mode graphique, vérifiez bien que + vous imprimez dans la salle où vous vous trouvez ! +
+
+ En mode graphique, les logiciels Gnome
+ vous proposent une boîte de dialogue avec une liste déroulante
+ permettant de choisir l'imprimante. L'imprimante d'une salle comporte
+ l'indication de la salle dans son nom, par exemple,
+ lwinfo3
est l'imprimante de la salle S. En fait, les
+ imprimantes qui savent imprimer en recto-verso apparaissent une
+ seconde fois, avec le suffixe -2
. Choisir cette deuxième
+ variante active le mode recto-verso : par exemple, imprimer sur
+ lwinfo3-2
permet d'imprimer en recto-verso sur
+ l'imprimante de la salle S. Tout ça (la localisation de l'imprimante
+ et le mode recto-verso éventuel) est rappelé dans la description qui
+ apparaît en-dessous quand vous cliquez sur le nom de l'imprimante.
+
+ Si vous avec des difficultés pour imprimer (ce qui arrive assez + souvent, les imprimantes sont des machines capricieuses), n'hésitez + pas à demander un coup de main aux tuteurs. +
+
+Les imprimantes sont partagées entre les élèves, ce qui impose
+quelques règles de savoir-vivre : vérifier ce que fait l'imprimante
+avant d'envoyer une nouvelle impression, supprimer une impression si
+on doit partir, si l'imprimante est bloquée, s'il n'y a plus de
+papier, etc. Deux commandes vous aideront à ce faire, lpq
+et lprm
.
+
lpq
+
+ lpq
(comme line printer queue) indique
+la liste des documents à imprimer en attente dans la queue de
+l'imprimante, la personne qui les a envoyés, leur taille, leur numéro
+(dans la colonne Job), leur taille et l'heure à laquelle ils
+ont été envoyés. Par exemple :
+
sas ~ $ lpq
+Printer: lp is lwsalles@snekkar
+Printer: lwsalles@snekkar 'HP 4200 Salle S'
+ Queue: 1 printable job
+ Server: pid 14662 active
+ Unspooler: pid 14663 active
+ Status: printing 'toto@drakkar', file 1 '(stdin)', size 215136, format 'f' at 10:34:57
+ Rank Owner/ID Class Job Files Size Time
+active toto @drakkar A 760 (stdin) 215136 10:34:57
+
+
+Vous savez donc qu'un utilisateur dont le login est « toto », logué
+sur la machine drakkar
, est en train d'imprimer un
+document qui fait 215136 octets (210 Ko). Le numéro attribué à cette
+impression est 760.
+
+Si personne n'a lancé d'impression, lpq
vous répondra
+seulement ceci :
+
sas ~ $ lpq
+Printer: lp is lwsalles@snekkar
+Printer: lwsalles@snekkar 'HP 4200 Salle S'
+ Queue: no printable jobs in queue
+ Status: server finished at 10:42:16
+
+ lprm
+
+ lprm
(comme line printer remove) : sans
+arguments, cette commande supprime tous les documents en attente dans
+la queue (à condition que l'impression n'ait pas encore
+commencé). Avant de tout supprimer, demandez leur avis aux personnes
+qui ont lancé des impressions (voir la partie sur lpq
)...
+
lprm numéro
supprime l'impression de numéro
+tant (utile quand on renonce finalement à imprimer son
+fichier).
+
lprm
ne supprime que
+les documents dans la queue. Si le processus d'impression a déjà
+commencé, on ne peut l'annuler qu'en appuyant sur le bouton « reset »
+de l'imprimante.
++Le PostScript est un format utilisé initialement pour +décrire une page à une imprimante. Il est conçu comme un langage de +programmation totalement opérationnel, et permet donc de faire des +choses vraiment très souples. Un document PostScript décrit +exactement l'aspect graphique d'une page. +
++C'est le format d'impression standard des Macintosh et des machines +Unix, ainsi que celui qu'utilisent la plupart des imprimantes laser +haut de gamme. Comme l'aspect graphique d'un document PostScript est +parfaitement spécifié et que PostScript est un format standard, il est +fréquemment utilisé pour diffuser des documents dont la mise en page +doit être exactement préservée. Toutefois, il est actuellement +supplanté dans cet usage par le format PDF qui en est dérivé. +
++Les logiciels incluent le plus souvent le format PostScript dans leurs +formats possibles de sauvegarde. Par exemple, avec Mozilla, quand vous +téléchargez un document, vous avez le choix entre le texte brut, le +fichier HTML complet ou un fichier PostScript. +
+
+Un fichier DVI est un fichier résultant de la compilation d'un fichier
+LaTeX. Pour le transformer
+en fichier PostScript, on utilise la commande dvips
.
+
sas ~ $ dvips dissert.dvi -o
+This is dvips(k) 5.90a Copyright 2002 Radical Eye Software (www.radicaleye.com)
+' TeX output 2000.03.01:0202' -> dissert.ps
+<texc.pro><texps.pro>. <cmbx10.pfb><cmr8.pfb><cmr6.pfb><cmr7.pfb><cmr10.pfb>
+<cmr12.pfb><cmbx12.pfb>[1] [2] [3] [4] [5] [6] [7]
+
+
+Après un petit charabia technique, dvips
vous indique
+donc qu'il a transformé votre document en fichier PostScript qui fait
+7 pages. L'argument -o
(o comme output,
+résultat) placé à la fin signifie qu'on veut garder le même nom de
+fichier. Ainsi, dvips dissert.dvi -o
produit
+automatiquement le fichier dissert.ps
Si vous voulez
+spécifier un autre nom, la syntaxe est légèrement différente :
+
sas ~ $ dvips -o dissertation.ps dissert.dvi
+This is dvips(k) 5.90a Copyright 2002 Radical Eye Software (www.radicaleye.com)
+' TeX output 1999.12.03:1601' -> dissertation.ps
+<texc.pro><cm-super-t1.enc><texps.pro>. <sfcc1095.pfb><cmsy8.pfb>
+<sfrm0900.pfb><sfrm0600.pfb><sfti1095.pfb><sfrm0800.pfb><sfbx1200.pfb>
+<sfbx1440.pfb><sfrm1095.pfb><sfbx1095.pfb>[1] [2] [3] [4] [5] [6] [7]
+
+
+Quand vous faites du LaTeX, il est plus fiable de visualiser le
+résultat final en regardant le PostScript, plutôt que le
+DVI. L'afficheur gv
(pour GhostView), qui affiche les
+fichiers PostScript, est plus fiable que XDvi pour les
+dessins ou les mises en page bizarres. Par contre, ils sont beaucoup
+plus gros que les documents .dvi
; il faut donc soit les
+compresser (voir gzip
)
+soit les effacer quand on n'en a pas besoin.
+
+Utilisez le logiciel gv
(pour GhostView). Entre autres choses, il vous permet de
+marquer les pages, pour n'imprimer que les pages
+sélectionnées. GhostView est également disponible pour Windows (sous
+le nom de GSView) et Mac OS (sous le nom de MacGSView).
+
+On utilise simplement la commande lpr
.
+
lpr
+
+ lpr
imprime un fichier PostScript. Pour imprimer en
+recto-verso, on utilise l'option -Zdouble
:
+
lpr -Zdouble hublot4.ps+
dvips
+
+
+La commande dvips
imprime les documents
+.dvi
, produits par LaTeX. Il y a plusieurs options à
+cette commande, dont celles-ci (pour savoir toutes les options,
+regardez le man, ou taper
+dvips
tout court, sans argument) :
+
+ -p
+ |
+ indique le numéro de la première page à imprimer. | +
-l (last) |
+ indique le numéro de la dernière page à imprimer. | +
-pp num-num (pages) |
+ Imprimer les pages tant à tant. | +
+Par exemple : +
+
+ dvips -p 5 document.dvi+ |
+ Imprimer le document à partir de la page 5. | +
+ dvips -l 3 document.dvi+ |
+ Imprimer jusqu'à la page 3. | +
+ dvips -pp 8-11 document.dvi+ |
+ Imprimer de la page 8 à la page 11. | +
+ dvips -pp 7 document.dvi+ |
+ Imprimer la page 7. | +
dvips
sert aussi à produire les fichiers PostScript (voir
+ci-dessus).
+
Les commandes à taper pour ouvrir ou imprimer des fichiers de +différents types de formats se trouvent sur l'aide-mémoire sur les formats. +
+
+Touche %
(pourcent) avec pine
,
+touche p
(print) avec mutt
.
+
+Cliquer sur le bouton Print
de Mozilla, ou sélectionner
+Print
dans le menu File
, ou taper
+Ctrl-P
.
+
+Taper dvips fichier.dvi
.
+
+Taper lpr fichier.ps
.
+
+Convertissez-la en PostScript avec xv
, puis imprimez le
+fichier .ps
.
+
+Nous présentons ici les notions de base pour l'utilisation des +machines fonctionnant sur un système d'exploitation de type Unix. Pour +savoir ce qu'est Unix et d'où vient ce système, lisez nos +présentations d'Unix (pour débutants ou plus technique) et notre brève histoire d'Unix. +
+Un éditeur vous permet de créer ou modifier un texte, sans mise en +forme (contrairement à un traitement de texte). Plusieurs éditeurs +sont disponibles à l'ENS, comme Emacs, joe, nano, pico, NEdit ou +encore Vim. Les plus puissants (et aussi les plus complexes) sont +Emacs et Vim.
+Les pages suivantes concernent la manipulation des fichiers et des +répertoires.
+Vous pouvez imprimer différents types de documents dans les salles +informatique, cette page vous apprend à +utiliser ces imprimantes.
++Pendant le fonctionnement d'un ordinateur sous le système +d'exploitation Unix, plusieurs processus fonctionnent en même temps +(plus précisément l'un après l'autre en alternance dans le cas d'un +ordinateur ayant un unique processeur). Ainsi, une défaillance d'un de +ces processus n'implique pas de défaillance globale du système. Cette page permet d'apprendre à gérer +concrètement ses processus. +
+L'information constituée par un fichier est soumise à un certain +nombre de droits d'accès. Par exemple, c'est ce genre de mécanismes qui +assure que vous êtes la seule personne autorisée à lire votre propre +courrier électronique (en théorie, l'administrateur système peut +techniquement le faire, mais il ne le fait évidemment pas). Pour plus de +détails, consultez la page sur les droits +d'accès. +
+ Les commandes que vous entrez dans les terminaux (xterm
ou Konsole, par
+exemple) sont exécutées par ce
+que l'on appelle un shell
. Cette page contient quelques notions de base sur le
+shell
.
+
-h
,
+pages info.Elle a certainement des utilisateurs connectés à distance, qui n'ont +pas particulièrement envie de perdre leur travail, des calculs en cours, +etc, ou simplement de se faire déloguer arbitrairement. De plus, éteindre +une machine est un aveu d'impuissance à la remettre en marche par +d'autres moyens.
+Ce n'est pas parce qu'elle ne répond pas au clavier qu'elle + est plantée : quelqu'un dans la salle pourra peut-être la + remettre en service en s'y connectant depuis le réseau + (demandez !).
+Sachez que le plantage d'une machine Unix est très rare :
+clipper
, le serveur des élèves, tourne régulièrement une
+centaine de jours (soit trois mois) sans aucun réamorçage... Et la
+plupart des réamorçages sont dûs à des opérations de maintenance
+(changement de disques durs, etc.)
Pour quitter un programme en mode texte (pine/alpine, mutt...), + attention à bien fermer le programme lui-même, et non la fenêtre où il + fonctionne. La fenêtre est un support, dans lequel s'affiche un programme, +ce n'est pas le programme lui-même (en fait, on peut lancer des +programmes sans qu'il y ait de fenêtre physique associée). Pour prendre +une comparaison imagée, la fenêtre est un escabeau, et le programme la +personne qui utilise l'escabeau.
+Si vous utilisez « Détruire » ou « fermer », ou la petite croix en + haut à droite de la fenêtre (sous KDE) pour mettre fin au +programme, vous ne le quittez pas, vous le suicidez en l'obligeant à +finir prématurément. Pour poursuivre la comparaison, vous ôtez l'escabeau +de dessous la personne (et le peintre ne peut pas s'accrocher au +pinceau...).
+Un programme se quitte donc uniquement avec sa commande spécifique ; +pour les principaux :
+Programme | +Commande pour quitter | +
---|---|
+ mutt
+ |
+ Taper q
+(Quit) et confirmer, le cas échéant |
+
+ (al)pine
+ |
+ |
+ elm
+ |
+ |
+ mutt
+ |
+ |
+ less
+ |
+ |
+ netscape
+ |
+ Sélectionner
+Exit
+dans le menu File |
+
+ gv
+ |
+ |
+ xdvi
+ |
+ Taper q ou cliquer sur Quit |
+
+ pico
+ |
+ Taper ^X (quitter en sauvant) |
+
+ joe
+ |
+ Taper ^KX (quitter en sauvant) |
+
+ (x)emacs
+ |
+ Taper ^X^C (quitter en sauvant) ou sélectionner
+Exit dans le menu File |
+
+ vi(m)
+ |
+ Taper :wq (write quit) |
+
Si vous ne savez pas quitter un programme quelconque, demandez à vos +voisins. Ce n'est pas là une coquetterie : si vous quittez mal un +programme, il peut ne pas enregistrer correctement les nouvelles données +(par exemple, les rangements, destructions... fait dans son courrier +électronique).
+Pour vérifier que le programme a bien été quitté :
+
+ corvette-~ $
+
+ Quand vous quittez une machine en libre service, attention à vous +déloguer (déconnecter) correctement, sans quoi le premier plaisantin +venu pourra sans difficulté accéder à vos fichiers privés, etc. +Assurez-vous que l'écran de login permettant au suivant de se connecter +à son tour est bien revenu. Ne vous contentez pas de fermer toutes les +fenêtres : même si vous obtenez un écran vide, sans fenêtre graphique, +ni tableau de bord, ni autre moyen évident de lancer un logiciel, vous +êtes encore connecté. +
+Avis : il y a une commande pirate
qui permet de fermer les
+ sessions laissées ouvertes et de gagner des points. Voir cette page pour
+ plus de détails.
+Les administrateurs système du SPI sont intelligents et ne font pas la +chasse aux jeux (ils permettent même officiellement aux gourous d'en +installer, et fournissent de la place disque à cette fin !). Cependant, +il est bien évident que les machines sont d'abord destinées à +travailler : si vous êtes dans la douloureuse obligation de le +faire, vous avez toute latitude de demander à une personne qui est en train de +jouer de vous laisser sa place. Et inversement. Bref, vous avez +compris... +
++Dans les salles élèves, les jeux sont en réseau, ou tout au moins possèdent une +table des scores partagée entre tous les joueurs depuis l'installation du +jeu. +
++Lancer les jeux : un certain nombre de jeux sont disponibles dans le +sous-menu « Jeux » du menu K. Vous pouvez aussi les lancer en +tapant leur nom au clavier. +
++ La liste ci-dessous présente quelques jeux qui étaient installés à + l'école il y a quelques années. Certains sont encore là, d'autres non, + il y en a de nouveaux... Bref. +
++Certains jeux utilisent la puissance du système X Window pour s'exécuter +sur une machine... et afficher le résultat sur une autre. Ceci nécessite +toutefois que le propriétaire de l'écran soit d'accord avec la manoeuvre, +sinon n'importe qui pourrait afficher des images politiquement incorrectes +dans une fenêtre par-dessus votre rapport de stage à tout moment (!). +
+
+Pour donner l'autorisation à la machine chaland
de vous envoyer
+une fenêtre afin de jouer à un jeu en réseau qui utilise ce procédé, tapez
+
xhost +chaland+
+Si ça ne marche pas, essayez xhost +
tout en sachant que
+cela permet à n'importe quelle machine au monde à vous envoyer des
+fenêtres voire de voler des mots de passe en espionnant votre clavier.
+
+Les commandes permettant de retirer ces permissions sont respectivement
+xhost -chaland
et xhost -
. Retirer la permission
+ne ferme pas les fenêtres déjà ouvertes par votre correspondant, vous pouvez
+donc le faire aussitôt que la fenêtre apparaît pour limiter l'intervalle de
+temps pendant lequel vous êtes vulnérable.
+
+Ce sont des tetris en 3D, dont les touches sont un peu difficiles à +mémoriser, mais qui ont beaucoup de succès. +
++Le tetris de GNOME, avec un nom étrange. +
++Même principe que X-Tiles, avec une jolie interface KDE. Trois couleurs +seulement, non configurable. +
++Un jeu de réflexion de KDE, sur un vieux principe. +
++Un jeu de stratégie KDE au tour par tour en multijoueur (hotseat). +
++Le jeu de mah-jongg de KDE, avec de belles pièces sur un modèle classique. +
++Un autre jeu de dominos chinois, avec le graphisme KDE. On retire les pièces +par paires identiques, à condition qu'elles puissent être reliées par un trait +qui fasse au plus deux coudes. +
++Un jeu de reversi où vous jouez contre l'ordinateur. +
++Le jeu de cartes de KDE. Il est naturellement lancé sur le solitaire, et +propose d'autres jeux. +
++ C'est un port pour unix du grand classique PC Doom. Pour ceusse qui + seraient trop jeunes pour en avoir entendu parler, c'est l'un des + premiers FPS, absolument révolutionaire pour l'époque où il est + sorti. Les commandes doom et doom2 lancent + respectivement doom1 et doom2. On peut y jouer à plusieurs en + réseau. Pour ce faire : +
++ Le successeur de Doom. +
++ Un jeu absolument stupide, où l'on controle des petits lapins qui doivent + se fragger en se sautant dessus. Se joue jusqu'à 4 sur une même + machine. Les commandes sont qzd pour le + premier joueur (gauche, sauter, droite), jkl pour le deuxième, + les flêches pour le troisième, et 486 (pavé numérique) pour le + quatrième. Pour commencer la partie, il faut déplacer tout les lapins qui + vont jouer à droite du tronc d'arbre, puis faire sortir un lapin par la + droite de l'écran. +
++ Un shoot them up vu de dessus, dans un genre un peu différent du + classique. +
++ Kobo Deluxe, une autre version du précédent. +
++C'est sans aucun doute la catégorie dont le rapport temps de jeu sur qualité +graphique est le plus élevé ! Un coach humain est de rigueur pour +apprendre à jouer à ces jeux, mais ils sont d'une richesse incroyable et comme +ils n'autorisent qu'une seule sauvegarde, gare aux moments de déprime à la +mort de votre personnage ! +
++Le jeu mythique. +
++L'ancêtre du jeu mythique, encore plus austère... Attention, la +sauvegarde ne marche pas. +
++Le successeur du jeu mythique. Plus joli, plus facile d'accès, plus ou +moins riche que nethack suivant les aspects. +
++ Casse-briques. La grande variété des bonus et malus, et la quantité de + niveaux fins et subtils le rendent très amusant. +
+
+(programmé par David Madore). Il faut taper les lettres de mots avant qu'ils
+n'atteignent le bas de l'écran (en un sens c'est un logiciel pédagogique...).
+xletters
a été décrit par son auteur dans le numéro 2 du
+Hublot : Le
+jeu xletters, novembre 1999.
+
+Semblable à xletters, mais en console. +
++Un joli démineur, avec l'interface KDE. +
+ +Les stations Unix sont munies d'un système de contrôle d'accès par mot +de passe. Ce n'est pas (uniquement) du flicage, cela permet également de +protéger les utilisateurs contre les fausses manœuvres (ou les mauvaises +intentions !) de leurs semblables : l'ordinateur sait qui est qui, et +il n'autorise pas n'importe quelle opération.
+Cela signifie que, si ça n'a pas déjà été fait à +votre rentrée de conscrit, vous devez vous faire ouvrir un compte, en vous +présentant au bureau d'un membre du SPI. +
+Lors de l'ouverture du compte, il vous sera remis un
+login
(une abréviation en huit lettres et malheureusement
+invariable de votre patronyme), et votre premier mot de passe.
+VOUS NE DEVEZ LE DIVULGUER À PERSONNE, SOUS AUCUN PRÉTEXTE, NI
+AUCUN DE CEUX QUE VOUS CHOISIREZ PAR LA SUITE !
Aucune personne de l'administration (le SPI) ou des organisations +élèves (les tuteurs, les gourous) n'a besoin de votre mot de passe, même +pour faire à votre place certaines opérations sur votre compte (il est +possible de donner une procuration électronique). Ceux qui vous +prétendront le contraire soit seront mal intentionnés, soit voudront +squatter votre compte parce qu'ils n'en ont pas eux-mêmes à l'ENS.
+Vous vous y engagez de toute façon dans la Charte d'utilisation +des moyens informatiques signée lors de l'ouverture de votre +compte.
+Dans le jargon informaticien, l'action de se présenter à l'ordinateur +s'appelle le login, et le verbe dérivé est « se loguer ». La +procédure décrite ici est celle pour se loguer sur les PC sous Ubuntu +qui équipent les salles en libre service en 2011.
+Lorsqu'il est disponible, un PC sous Ubuntu affiche une boîte de +dialogue du genre « Welcome to goelette » vous invitant à vous +identifier. Installez-vous, et tapez votre nom de login. Attendez +que l'ordinateur affiche « Password » à la place de « Username », et +tapez votre mot de passe, puis Entrée.
+Suivant votre promo, si c'est la première fois que vous vous loguez +ou que vous utilisez Gnome, il est possible que l'ordinateur vous propose +d'installer les options spécifiques à l'ENS. Acceptez.
+La machine va ramer quelques instants et lancer la config conscrit KDE (ou +tout autre environnement graphique que vous auriez choisi, voir plus bas pour +les détails).
+Quand vous voulez partir, il faut vous déloguer, c'est-à-dire quitter +pour que la machine soit disponible pour la personne suivante ; si vous +ne le faites pas, toute personne qui vient derrière vous peut utiliser +votre compte ! Sous la config Gnome, choisissez simplement « Déconnexion » +dans le menu en haut à droite de l'écran. Puis confirmez.
+On peut aussi utiliser la combinaison de touches CRTL-méta-backspace +(pratique quand la souris en répond plus).
+Le système installé sur les PC des salles en libre service donne le +choix entre plusieurs environnements graphiques. Depuis la rentrée +2010, la config conscrit utilise Gnome : choisir Gnome démarrera une +interface graphique moderne, configurée par des élèves et anciens +expérimentés, les gourous, pour vous permettre d'accéder facilement aux +ressources informatiques de l'école. C'est le choix par défaut pour les +conscrits : cette section s'adresse donc aux vieux cons qui voudraient +passer à la nouvelle config, ou aux conscrits qui voudraient essayer +autre chose.
+Pour choisir votre environnement de travail, avant de vous loguer, cliquez sur Session, en haut à gauche de +la boîte de dialogue qui vous demande votre nom d'utilisateur. Cela +ouvrira un menu présentant les différents environnements disponibles. +Outre Gnome, vous y trouverez quelques autres environnements comme KDE +ou Xfce. Aucune configuration spécifique à l'ENS n'est proposée pour ces +derniers en 2011.
+Entrez ensuite votre login et votre mot de passe comme d'habitude. Il se peut qu'une nouvelle boîte de +dialogue vous demande si vous souhaitez faire de l'environnement choisi +votre session par défaut : cliquez sur « Make default », cela vous +évitera de retourner le chercher dans le menu à chaque fois que vous +voudrez vous loguer. Vous pourrez toujours revenir sur votre décision +en le demandant explicitement.
+Si c'est la première fois que vous utilisez Gnome, l'ordinateur vous +proposera d'installer les options spécifiques à l'ENS. Pour passer à la +nouvelle config conscrit, acceptez. (Si vous vous êtes déjà fait votre +propre config Gnome et que vous ne voulez pas la voir écrasée, +refusez.)
+C'est la première chose à faire après l'ouverture de votre +compte...
+Le mot de passe est, vous l'aurez compris, un élément clé de la +sécurité de votre compte et des informations qu'il contient, mais +aussi de votre « personnalité informatique » : vous êtes responsable +de ce que vous faites à partir de votre compte (les courriers que vous +envoyez, etc.). Si un intrus vole votre mot de passe, il pourra +usurper votre identité pour commetre des actions malintentionnées et +c'est vous qui en subirez les conséquences. Sachez qu'en raison du +raccordement de l'ENS à l'Internet, vous devez vous méfier d'une +population infiniment plus vaste que la communauté normalienne !
+Un minimum de paranoïa s'impose donc à propos de votre mot de +passe : comme un code de Carte bleue, il est STRICTEMENT +PERSONNEL. Vous ne devez pas le noter sur un papier, vous ne +devez en aucun cas le communiquer à quiconque, même pour donner +procuration sur votre compte. Si vous le divulguez par erreur (par +exemple, en confondant les moments de taper votre login et votre mot +de passe...), vous devez en changer immédiatement. Vous devez aussi en +changer à chaque fois que le SPI vous le demande, à la réception de +votre compte, et lorsque vous craignez d'avoir été piraté.
+Pour des raisons de sécurité, choisir un mot de passe n'est pas si +simple. Il faut qu'il comporte au moins six caractères, qu'il +contienne des majuscules, des minuscules et des signes +non-alphabétiques (chiffres ou ponctuation), et surtout qu'il ne soit +pas trop proche d'un mot du dictionnaire ni d'une donnée qui vous est +personnelle (votre nom de login, votre date de naissance, etc.)
+Toutes ces précautions ont pour but de vous protéger contre les +attaques dites à dictionnaire, qui consistent à essayer de deviner votre +mot de passe en en essayant des milliers et en espérant que votre mot de +passe ressemble à un mot d'un dictionnaire. Plus votre mot de passe ne +veut rien dire, plus il est sûr par rapport à ce genre d'attaques !
+Une excellente et mnémotechnique façon de choisir un mot de passe est +de prendre les initiales de tous les mots d'un poème que vous connaissez, +mais rajoutez tout de même quelques chiffres ou variations en +majuscules.
+Si vous êtes à court d'idées, utilisez le programme APG (comme Automated Password generator,
+c'est-à-dire « générateur automatique de mots de passe »). Tapez
+simplement apg
pour obtenir une liste de 6 mots de
+passe. Vous pouvez recommencer jusqu'à en trouver un qui vous plaît.
+
+Pour produire des mots de passe conformes à la politique de sécurité
+de l'ENS, utilisez l'option -M N
qui exige l'inclusion
+d'un ou plusieurs chiffres dans le mot de passe. Il peut être également
+très pratique de rajouter l'option -t
qui permet d'afficher
+la prononciation du mot de passe :
+
sas ~ $ apg -t -M N
+natbyn7 (nat-byn-SEVEN)
+whon3ok (whon-THREE-ok)
+vajmyik4 (vaj-myik-FOUR)
+epijyec3 (ep-ij-yec-THREE)
+eymraf9 (eym-raf-NINE)
+jeygs3 (jeygs-THREE)
+
+
+Entre parenthèses, à droite du mot de passe proposé, figure sa
+prononciation (anglaise), ce qui vous permet de mieux retenir votre
+nouveau mot de passe. Pour plus de sécurité, vous pouvez également
+utiliser l'option -M C
, qui mêle majuscules et
+minuscules.
+
sas ~ $ apg -t -M NC
+PakCod0 (Pak-Cod-ZERO)
+ekMyk6 (ek-Myk-SIX)
+prubEn3 (prub-En-THREE)
+HykVav2 (Hyk-Vav-TWO)
+VepOt4 (Vep-Ot-FOUR)
+kijEs9 (kij-Es-NINE)
+
+ Enfin, si vous voulez encore plus de sécurité, quitte à frôler la
+paranoïa, vous pouvez choisir de générer un mot de passe
+absolument aléatoire, présentant donc de très fortes chances
+d'être absolument imprononçable. Par défaut, apg
génère en
+effet des mots de passe prononçables, mais vous pouvez désactiver ce
+mode par défaut avec l'option -a 1
. Vous obtiendrez par
+exemple :
sas ~ $ apg -a 1 -M NC
+ZM9SX0S9O0
+ZIRU7XIR3
+ZLOPH9XJ
+EVHLZWE2
+W6HSRS9JXC
+29IIU89EO
+
+
+Pour des raisons techniques, on ne peut pas toujours (suivant
+l'évolution de la config des machines de l'école) changer son mot de
+passe depuis n'importe quelle machine des salles info. Le plus simple
+est de commencer par se connecter sur le serveur des élèves,
+sas
, en tapant dans une fenêtre de terminal la commande
+ssh sas.eleves
:
+
trimaran ~ $ ssh sas.eleves
+Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.2.0-54-generic x86_64)
+
+ * Documentation: https://help.ubuntu.com/
+
+86 packages can be updated.
+41 updates are security updates.
+
+No mail.
+Last login: Sat Oct 19 23:46:59 2013 from gam92-1-78-192-93-110.fbxo.proxad.net
+sas ~ $
+
+ Une fois que vous avez choisi votre nouveau mot de passe, tapez
+toujours dans la fenêtre de terminal passwd
:
+
sas ~ $ passwd
+passwd: Changing password for toto
+Enter login(NIS) password:
+
+ Tapez ensuite votre mot de passe
+actuel, puis Entrée
. Le programme
+demande votre nouveau mot de passe, puis le redemande
+(ainsi, on est sûr que c'est le bon mot de passe, ou du moins que vous
+avez fait deux fois la même faute de frappe !).
+ Sous Unix, contrairement aux autres systèmes d'exploitation, il n'y a + pas de notion de lecteurs. Il y a une unique arborescence de + répertoires, sur laquelle viennent se greffer (le terme consacré est + en fait « monter ») les systèmes de fichier en provenance + des divers lecteurs disponibles. +
++ Les systèmes de fichiers « fixes » sont montés une fois pour + toutes au démarrage de la machine. Cela n'est évidemment pas possible + pour les systèmes de fichiers venant sur des supports amovibles. Il y a + dans la config conscrit un mécanisme pour les monter automatiquement + lorsqu'ils sont insérés. +
+Les supports amovibles se montent dans des répertoires sous + /media. Lorsqu'on insère un support, un répertoire de nom + variable (souvent dérivé du nom du modèle) y est créé automatiquement, et + le contenu du support est monté dedans. Ce répertoire peut mettre + quelques secondes à apparaître, il faut afficher répétitivement le + contenu du répertoire jusqu'à ce qu'il apparaisse.
++ Une fois que l'on a terminé, avant de retirer le support, il faut le + démonter. Attention, c'est indispensable. Si vous + oubliez de le faire, votre système de fichiers risque d'être endommagé, + car le système d'exploitation est peut-être encore en train d'écrire + dessus. Si le CD refuse de sortir lorsque vous appuyez sur le bouton, + c'est que vous ne l'avez pas démonté. +
++Avec le gestionnaire de fichiers de la config conscrit, il faut aller dans +le répertoire /media (aller à la racine dans l'arbre du panneau +de gauche) choisir le bon répertoire, cliquer du droit dessus, et choisir +« unmount » dans le menu. +
+On peut aussi utiliser la commande + umount pointdemontage. +
++ Il se peut que le système d'exploitation refuse le + démontage. Normalement, cela veut dire qu'un programme a ouvert un + fichier du support que l'on cherche à démonter, ou a son répertoire + courant dessus. Il faut alors veiller à fermer tous les fichiers que + l'on avait ouverts, et à changer le répertoire courant des shells. +
+Sur certains PCs, les ports USB sur la face avant sont au fond d'un + creux, ce qui empêche d'enfoncer suffisament certaines clefs. Il suffit + d'utiliser un port USB arrière à la place. +
++ Contrairement aux CD-ROMs, ils ne se montent pas. Il faut utiliser un + programme spécial qui accède directement au lecteur, comme + kscd. +
++ On ne peut pas monter les disquettes sur les Sun. On peut néanmoins y + accéder via l'interface graphique nommée mtoolsfm (taper la + commande mtoolsfm dans un terminal). En ligne de commande, + on peut aussi utiliser les mtools, qui sont expliqués ici. +
++ On ne peut pas accéder aux clefs USB sur les Sun. +
++ On monte un CD-ROM sur les Sun avec + op mount cdrom, et on le démonte avec + op umount cdrom. Les CD sont montés dans le + répertoire /cdrom. +
+ +du
+
+ df
+ clipper
, le serveur principal de l'ENS, héberge de nombreux
+comptes : ceux de tous les élèves, des jeunes archicubes, des
+magistériens et autres invités, ce qui représente un total de plus de
+2000 comptes. Les comptes sont regroupés par année de promotion,
+toutes disciplines confondues.
Chaque promotion dispose d'une partition (sorte de disque dur +virtuel) séparée sur laquelle est stockée ses données. Il n'y a pas de +système de quotas par personne, mais la place totale occupée par une +promotion est limitée... à la taille de la partition. Si une partition +est pleine, plus personne ne peut enregistrer de données, rendant ainsi +tout travail impossible.
+ Le courrier électronique est, lui, stocké dans
+ /var/mail
et dans /d
. Si ces partitions sont
+ pleines, plus personne ne peut envoyer ni recevoir de courrier.
+
+Faire attention à l'espace disque que l'on prend est donc à la fois
+une nécessité, et une obligation (la charte des moyens informatiques
+que vous avez signée l'exige). Deux outils vous permettent de
+contrôler la taille de vos fichiers et celle de votre compte :
+du
et df
.
+
du
+
+La commande du
(disk usage)
+indique la taille de vos répertoires et sous-répertoires. Sur certains
+systèmes, du
indique la taille des fichiers en blocs et non
+en Ko, prenez donc le réflexe d'ajouter l'option -k
+(kilobytes).
+
+L'option -h
est aussi très utile : elle donne des
+résultats beaucoup plus lisibles par un humain (la taille est exprimée
+en Ko, Mo ou Go quand c'est possible).
+
ps
ou du
n'ont pas le même comportement sur
+les stations Sun (sous Solaris) et les PC (sous
+Linux). Reportez-vous aux pages de man (l'aide en ligne)
+pour vérifier quelles sont les options disponibles sur chaque système.
++Par exemple, voici le contenu du répertoire « histoire » de +Toto (arborescence donnée dans le cours +sur les répertoires) : +
+sas ~ $ du -k histoire
+1973 histoire/maitrise
+127 histoire/sources/AN
+36 histoire/sources/divers
+30 histoire/sources/etudes
+38 histoire/sources/godefroy
+335 histoire/sources/images
+62 histoire/sources/memoires/saint-simon
+161 histoire/sources/memoires
+141 histoire/sources/mscrits
+913 histoire/sources
+2023 histoire/dea
+4910 histoire
+
+ +La dernière ligne indique la taille totale du répertoire +« histoire », avec tout ce qu'il contient, soit +4 910 Ko. +
+
+Ajouter l'option -h
(comme « human readable ») donne des résultats plus
+lisibles :
+
brick ~ $ du -h histoire
+2.0M histoire/maitrise
+127K histoire/sources/AN
+36K histoire/sources/divers
+30K histoire/sources/etudes
+38K histoire/sources/godefroy
+335K histoire/sources/images
+62K histoire/sources/memoires/saint-simon
+161K histoire/sources/memoires
+141K histoire/sources/mscrits
+913K histoire/sources
+2.0M histoire/dea
+4.8M histoire
+
+
+L'option -s
permet de n'afficher que la dernière ligne,
+c'est-à-dire le total de tous les répertoire et sous-répertoires, sans
+tous les détails. Ainsi, pour connaître la taille de votre compte,
+faites un du -sk
à la racine de votre compte :
+
sas ~ $ du -sk
+98280 .
+
+
+Encore une fois, si vous êtes sur un PC, utiliser l'option
+-h
ne fera pas de mal :
+
brick ~ $ du -sh
+96M .
+
+
+L'option -a
demande l'affichage la taille de tous les
+fichiers contenus dans vos répertoires et sous-répertoires. Ici,
+toujours pour le répertoire « histoire » de Toto :
+
sas ~ $ du -ak histoire
+200 histoire/maitrise/maitrise.dvi.bz2
+29 histoire/maitrise/1.html
+6 histoire/maitrise/maitrise.tex
+18 histoire/maitrise/intro.tex
+29 histoire/maitrise/1a.tex
+11 histoire/maitrise/conclu.tex
+112 histoire/maitrise/maitrise.idx
+22 histoire/maitrise/A.tex
+27 histoire/maitrise/biblio.tex
+10 histoire/maitrise/maitrise.toc
+(...)
+
+
+Pour connaître la taille d'un fichier précis, il suffit d'indiquer à
+du -ak
le nom de votre fichier (ls -s
fait
+la même chose) :
+
sas ~ $ du -ak histoire/maitrise/maitrise.tex
+6 histoire/maitrise/maitrise.tex
+
+
+En utilisant du -ak
et le en combinant avec d'autres
+commandes, vous pouvez savoir précisément quels sont les fichiers et
+les répertoires qui prennent le plus de place sur votre compte.
+
sas ~ $ du -ak | sort -nr | head -10
+98280 .
+22007 ./www
+1658 ./Mail
+9637 ./www/hist
+5005 ./www/hist/maitrise
+4910 ./histoire
+3941 ./Mail/archives
+3757 ./www/philo/
+3274 ./www/philo/cours
+3112 ./www/philo/cours/hegel
+2841 ./prive
+
+
+Vous savez donc que sur ce compte, le répertoire le plus volumineux
+est www
(le répertoire qui contient la page Web), puis
+Mail
(qui contient les dossiers de votre boîte aux
+lettres). À l'intérieur de www
, le répertoire le plus
+gros est www/hist
dont www/hist/maitrise
+occupe la plus grande part, etc.
+
du -ak
: on demande la taille de tous les fichiers
+et répertoires du compte, en kilo-octets.|
: c'est ce qu'on appelle en anglais un pipe, un tuyau. Ce « tuyau » sert à envoyer à une autre
+commande le résultat de du -ak
.sort -nr
: la commande sort
sert à
+trier des données, en l'espèce on lui demande de trier par taille
+(-n
) puis de classer par ordre décroissant
+(-r
) la liste des fichiers et de leur taille (donnée par
+du -ak
).head
, qui affiche seulement le début d'un fichier. En
+l'espèce, on lui demande de ne montrer que les 10 premières lignes du
+résultat des opérations précédentes.
+Le résultat de toutes ces opérations un peu complexes, c'est que vous
+avez affiché les 10 plus gros répertoires ou fichiers (les deux
+confondus) de votre compte. Pour ajuster le nombre de fichiers à
+afficher, changez le nombre après head
.
+
+Si vous voulez conserver quelque part la liste de vos gros fichiers,
+par exemple si vous demandez une longue liste, utilisez une
+redirection (>
) :
+
sas ~ $ du -ak | sort -nr | head -50 > gros_fichiers.txt
+
+
+Le résultat de votre tri sera conservé dans le fichier
+gros_fichiers.txt
que vous pourrez étudier à tête
+reposée.
+
+Nous allons de nouveau utiliser le mécanisme des pipes décrit
+ci-dessus. Toutes les boîtes aux lettres des gens ayant un compte sur
+clipper
sont dans le répertoire /var/mail
(pour les
+anciens comptes, au format mbox) ou /d
(pour
+les comptes depuis 2014, au format Maildir).
+À
+chaque utilisateur correspond le fichier
+/var/mail/login
ou /d/login
+(remplacez login par votre identifiant) : c'est le contenu de votre
+boîte aux lettres principale. Les exemples qui suivent s'appliquent aux comptes
+dont la boîte aux lettres se trouve dans /var/mail
.
+
sas ~ $ ls -s /var/mail | grep toto
+1142 /var/mail/toto
+
+ +Cette fois-ci, il s'agit de : +
+/var/mail
;grep
le fichier qui vous correspond.
+La boîte mail de l'utilisateur toto
fait donc
+1 142 Ko. Pour savoir qui ont les plus grosses boîtes aux
+lettres :
+
sas ~ $ ls -s /var/mail | sort -nr | head -10
+161704 blevy
+116728 derrida
+ 75888 hcartan
+ 64912 raron
+ 51744 pasteur
+ 45368 htaine
+ 44720 poincare
+ 44712 cpeguy
+ 44336 rthom
+ 43896 egalois
+
+ df
+
+La commande df
(disk free)
+indique la place disponible sur les partitions montées.
+
+Comme pour du
, sur certains systèmes il faut ajouter
+l'option -k
(kilobytes), pour être sûr que le
+résultat sera en Ko et non en blocs.
+
df
+fait appel à des notions délicates sur la façon dont les fichiers sont
+organisés, d'autant que nous sommes en réseau (par NFS). On n'entrera
+donc pas dans les détails dans ce topo. Dans un premier temps,
+remplacez le mot « partition » par « disque (dur) »
+et ça suffira largement. Si vous êtes curieux, vous pouvez aller lire Concept :
+place-disque (article du numéro 6 du Hublot,
+avril 2000). df
affiche un tableau, avec une ligne par point de
+montage. Les colonnes sont respectivement le système de fichiers, sa
+taille, la place utilisée, la place libre, la proportion d'espace
+utilisé, et le point de montage. Voici un exemple presque complet :
+
sas ~ $ df -h
+Filesystem Size Used Avail Use% Mounted on
+(...)
+/dev/dsk/c0t8d0s1 4.2G 3.9G 261M 94% /users/95
+/dev/dsk/c0t9d0s0 8.4G 7.7G 604M 93% /users/97
+/dev/dsk/c0t0d0s5 2.5G 319M 2.1G 13% /users
+/dev/dsk/c0t10d0s1 4.4G 2.4G 2.0G 55% /users/guests
+/dev/dsk/c0t10d0s3 8.4G 5.1G 3.2G 62% /var/mail
+/dev/dsk/c0t8d0s3 4.2G 3.7G 421M 91% /users/96
+/dev/dsk/c0t8d0s6 2.0G 974M 932M 52% /users/94
+/dev/dsk/c0t8d0s4 2.0G 841M 1.1G 44% /var/forum2
+/dev/dsk/c0t12d0s1 12G 11G 549M 96% /users/99
+/dev/dsk/c0t11d0s0 12G 11G 605M 95% /users/00
+/dev/dsk/c0t11d0s1 12G 8.8G 2.4G 79% /users/98
+/dev/dsk/c0t12d0s0 12G 11G 489M 96% /users/01
+/dev/dsk/c0t11d0s3 12G 11G 838M 93% /users/02
+/dev/dsk/c0t12d0s3 12G 6.4G 4.8G 58% /users/03
+(...)
+
+ Pour connaître simplement l'état d'une partition
+donnée, on utilise df -h <nom de la
+partition>
. Chaque promotion ayant une partition, ceci vous
+permet de repérer facilement la vôtre :
+
sas ~ $ df -h /var/mail +Filesystem Size Used Avail Use% Mounted on +/dev/dsk/c0t10d0s3 8.4G 5.1G 3.2G 62% /var/mail +sas ~ $ df -h /users/03 +Filesystem Size Used Avail Use% Mounted on +/dev/dsk/c0t12d0s3 12G 6.4G 4.8G 58% /users/03 ++
Nous voyons donc qu'à l'heure où est écrite cette
+page, /var/mail
est plein à 62 %, et
+/users/03
est plein à 58 %. La situation est bonne. La
+situation est considérée comme critique quand on dépasse les
+95 % : il suffit de plusieurs personnes qui stockent des
+images, de gros documents PDF, leur DEA, d'un programme emballé qui
+écrit sur le disque pour que 100 % de l'espace disque soit pris,
+rendant ainsi tout travail impossible pour cette promotion. Ceci arrive
+de temps à autres, et ce n'est vraiment pas drôle...
+
spi@clipper
), qui prendra des mesures
+techniques (déplacement de fichiers, etc.). Prévenez également les
+Tuteurs, qui enverront un mail de rappel aux coupables (ceux qui ont les
+plus gros comptes). +Votre compte est avant tout un outil de travail, pas +un espace de stockage gratuit et illimité de mp3, DivX, photos de +vacances et autres fichiers gourmands en place. Imaginez votre tête si +vous ne pouviez pas travailler sur un mémoire urgent, parce qu'un zozo +conserve l'intégrale de Village People sur son compte... +
+
+Même s'il n'y a pas de quotas, on considère généralement qu'il faut de
+bonnes raisons pour occuper plus de 100 Mo d'espace
+disque. « C'est ridicule, le disque dur de mon PC fait
+1000 Go ! », me direz-vous. Certes, mais
+clipper
n'a pas les mêmes contraintes qu'une machine
+personnelle : le matériel est différent, et il y a des sauvegardes
+quotidiennes, imaginez le volume des données stockées !
+
+Votre mailbox ne devrait pas contenir plus de 50-60 courriers en
+attente, surtout s'ils contiennent des attachements. Il faut ranger
+votre courrier dans des dossiers (folders), ainsi ils
+seront stockés sur votre compte et non dans /var/mail
. Pour
+savoir comment faire, consultez la documentation sur le courrier électronique, ou
+plus spécifiquement la page indiquant comment vider sa
+messagerie. Ajoutons qu'en plus, ranger son courrier est plus
+sûr : si votre lecteur de mail perd les pédales, vous n'aurez pas
+tout perdu.
+
+Première question à vous posez : ne conservez-vous pas des fichiers
+inutiles ou obsolètes ? Pas la peine de les garder ad
+vitam æternam sur le disque, dans ce cas. Compresser ou archiver vos fichiers fait
+économiser une place précieuse. Vous pouvez également supprimer des
+fichiers qui peuvent être recréés facilement (par exemple les
+fichiers .dvi
, .aux
, .log
,
+.toc
liés à LaTeX : en 5 secondes de compilation,
+vous pouvez les retrouver). Ces fichiers vous seront signalés par un
+courrier du « Démon mange-disque », chargé précisément de repérer ce
+genre de gros fichiers.
+
clipper
n'est pas votre seule et unique solution pour
+stocker vos données. Vous pouvez les stocker sur d'autres comptes de
+l'École : à Montrouge, en salle T pour les matheux... et sur votre
+ordinateur personnel si vous en avez un, bien sûr. Sous Unix et Linux,
+utilisez scp
;
+sous Windows, consultez
+la page des WinTuteurs sur le transfert de fichiers. Vous pouvez
+également utiliser FTP.
+
La mauvaise méthode est d'éliminer les PC et les Macs et de regarder +ce qui reste. En fait, la plupart des PC de l'école fonctionnent sous +Linux, une sorte d'Unix. De plus vous avez le droit de ne pas savoir +reconnaître un PC au premier coup d'oeil !
+La bonne méthode est de regarder si la machine parle aux inconnus :
+si on peut lancer un programme de but en blanc, ce n'est pas une machine
+Unix. Si elle vous affiche imperturbablement « login :
»
+et refuse les ordres nonobstant une éventuelle et superbe image de fond,
+pas de doute c'est une machine Unix !
C'est un nom pompeux pour désigner une machine reliée en réseau +activement (c'est-à-dire, dont la puissance de calcul est utilisable +depuis ailleurs sur le réseau). On peut travailler dessus à distance (ce +qu'on appelle « se loguer à distance »).
+En bref et dans le cas qui nous intéresse, c'est tout ordinateur qui
+n'est ni PC sous Windows ni Mac, et sur lequel il y a un écran et un
+clavier (sinon, c'est un serveur, comme clipper
).
+Unix est un système multi-tâches, c'est-à-dire qu'il peut exécuter +plusieurs programmes à la fois. Un processus est une instance d'un programme +en train de s'exécuter, une tâche. Le shell crée un nouveau processus pour +exécuter chaque commande. +
+
+Si on lance une commande qui prend beaucoup de temps (comme un calcul, ou une
+nouvelle fenêtre), on peut l'interrompre par Control-C
. Ceci
+interrompt (définitivement) la commande. On peut aussi exécuter une commande
+en tâche de fond. Le shell rend alors la main avant la fin de la
+commande. Pour le faire, on ajoute un &
à la fin de la
+commande ; par exemple :
+
chaland ~ $ cc -o grosprogramme grosfichier.c & + +chaland ~ $ xdvi monrapport.dvi &+
+Dans le premier exemple, on lance le compilateur cc
en parallèle
+avec le shell; dans le second exemple, on met le dvi
en tâche de
+fond, ce qui évite d'avoir à le relancer à chaque modification.
+
+On reprend la main immédiatement, sans attendre la fin de l'exécution de +la commande. On peut donc taper d'autres commandes dans le même terminal, +pendant que la précédente s'exécute. +
+
+Comme on vient de le voir, si vous avez pensé à terminer votre ligne de
+commande par une esperluette, le programme que vous avez lancé tourne en
+arrière-plan (background, abrégé en bg
).
+
+Si vous avez omis l'esperluette, le programme prend la précédence sur le shell.
+On dit qu'il tourne au premier plan (foreground, abrégé en
+fg
).
+Les lignes tapées au clavier sont mémorisées mais ne seront pas exécutées par le
+shell avant que le programme en cours d'exécution n'ait fini son calcul. Vous
+pouvez malgré tout faire passer ce programme en tâche de fond, grâce à la
+manipulation suivante :
+
chaland ~ $ xdvi rapport.dvi +^Z +zsh: suspended xdvi rapport.dvi +chaland ~ $ bg +[1] + continued xdvi rapport.dvi +chaland ~ $+
^Z
est un signal intercepté par le shell, qui suspend
+l'exécution du programme sans détruire le processus correspondant. Les
+calculs déjà effectués par ce programme ne sont pas perdus. Dans l'exemple
+précédent, si on demande à un xdvi
suspendu de changer de page
+(SPC
), il ne le fera pas, mais il se souviendra de le faire dès
+qu'il aura à nouveau accès aux ressources de l'ordinateur.
+À partir de l'état suspendu, on peut faire passer un programme :
+
fg
;bg
.+Son exécution reprend alors là où on l'avait laissée. +
+
+Quand il n'y a qu'un seul programme en arrière-plan dans le terminal
+courant, on peut le faire passer au premier plan en tapant fg
.
+Cela permet en particulier d'interrompre son exécution grâce à
+^C
, que la plupart des programmes comprennent.^C
+n'affecte que l'éventuel unique programme qui tourne au premier plan dans le
+terminal où il est tapé. Quand il y en a plusieurs, c'est un peu plus
+compliqué, mais c'est bien sûr possible.
+
+Vous pouvez pratiquer ^C
, ^Z
, fg
,
+bg
de façon visuelle et didactique en lançant la commande
+
xdaliclock -seconds -geometry 500x100+0+0 -font BUILTIN+
+et en observant attentivement les secondes (pensez à en laisser +quelques-unes s'écouler). Vous remarquerez que ce programme finit la +transition en cours avant de se remettre à l'heure. +
++Résumé : +
+^Z
le suspend ;^C
l'interrompt.fg
le passe au premier plan ;bg
le passe en arrière-plan.fg
le passe au premier plan ;
+La commande ps
montre où en sont les tâches de fond :
+
chaland ~ $ ps
+ PID TT STAT TIME COMMAND
+ 4450 p9 S 0:00 /usr/local/bin/lcsh
+ 4782 p9 S 0:02 cc -o grosprogramme grosfichier.c
+ 4841 p9 R 0:00 ps
+ ps
affiche la liste des processus que vous avez lancés :
+
PID
(process identificator) : c'est le numéro du
+processus.
+TT
: indique le terminal dans lequel a été lancé le processus.
+Un point d'interrogation signifie que le processus n'est attaché à aucun
+terminal (par exemple les démons).
+STAT
: indique l'état du processus :
+R
: actif ( running)S
: non activé depuis moins de 20 secondes
+ (sleeping)I
: non activé depuis plus de 20 secondes (idle)T
: arrêté (suspendu)Z
: zombieTIME
: indique le temps machine utilisé par le programme (et
+non pas le temps depuis lequel le processus a été lancé !).
+
+La commande ps
a différentes options, dont les suivantes :
+
a
(all) : donne la liste de tous les processus, y
+compris ceux dont vous n'êtes pas propriétaire.
+g
(global, général...) : donne la liste de tous les processus
+dont vous êtes propriétaire.
+u
(user, utilisateur) : donne davantage
+d'informations (nom du propriétaire, heure de lancement, pourcentage de
+mémoire occupée par le processus, etc.).
+x
: affiche aussi les processus qui ne sont pas associés à un
+terminal.
+w
: ne tronque pas à 80 caractères (peut être utilisée deux fois pour ne pas tronquer du tout)
+ps agux
est en fait souvent utilisé pour avoir des informations sur
+tout les processus.
+
+La commande top
affiche les mêmes informations, mais de façon
+dynamique : elle indique en fait par ordre décroissant le temps machine des
+processus, les plus gourmands en premier. C'est rigolo quand la machine rame,
+et c'est très instructif sur les processus gourmands en ressources...
+Le logiciel KSysGuard, accessible sous la config KDE par la combinaison
+de touches ^Esc
, fait la même chose que top
en
+mode graphique.
+
+Les programmes ont tous une commande spécifique pour les quitter
+(q
, menu où cliquer, etc). C'est seulement dans le cas où vous
+ne parvenez pas à les quitter correctement, pour une raison ou une autre,
+que vous pouvez avoir besoin de tuer le processus.
+
+Avant toute chose, essayez de taper ^C
ou ^D
. Si
+cependant ça ne marche pas, utilisez la commande kill
(plus le
+numéro du processus).
+
chaland ~ $ ps + PID TT STAT TIME COMMAND + 4450 p9 S 0:00 /usr/local/bin/lcsh + 4782 p9 S 0:02 cc -o grosprogramme grosfichier.c + 4841 p9 R 0:00 ps +chaland ~ $ kill 4782 +chaland ~ $ ps + PID TT STAT TIME COMMAND + 4450 p9 S 0:00 /usr/local/bin/lcsh + 4851 p9 R 0:00 ps+
kill -9
tue le processus à tous les coups. Vous ne pouvez tuer que
+les processus dont vous êtes propriétaire. Il convient de ne l'utiliser que
+si aucune autre méthode ne marche, car dans ce cas le programme n'a aucun
+moyen de faire quoi que ce soit avant de mourir.
+
+La possibilité d'exécuter plusieurs commandes à la fois (et aussi sur +plusieurs machines) pose un problème immédiat de coexistence pacifique. Ce +n'est pas gentil de lancer tous ses programmes de calcul lourds sur la +machine d'un copain et partir en vacances le weekend : il peut arriver (et il +est arrivé) qu'il ne puisse même plus se connecter. Voilà quelques outils +pour vivre paisiblement : +
+nice
exécute un programme à priorité plus basse (faire
+man nice
).
+limit
(commande interne du shell) permet de limiter les
+ressources à disposition de votre processus (très utile typiquement avec
+maple
ou autres applications gourmandes en mémoire) (faire
+man csh
, man zshbuiltins
).
+ls
(list)
+ ls
+ ls
+ cd
(change
+directory)
+ cd
sans argument
+ cd
suivi d'un nom de répertoire
+ pwd
(print working
+directory)
+ +Le cours Unix du Hublot, pendant l'année 1999-2000, a abordé les +notions de répertoire et de fichier. Vous pouvez allez lire +Concept : + arborescence dans le numéro 3, janvier 2000). +
+mkdir
+
+ mkdir truc
(make directory) : crée un
+répertoire de nom « truc ».
+
rmdir
+
+ rmdir chose
(remove directory) :
+détruit le répertoire de nom « chose ». Cela ne fonctionne que si le
+répertoire est absolument vide.
+
+ Au départ j'ai juste un répertoire |
+
+ mkdir histoire+ + |
+
+ rmdir histoire+ + |
+
+Le tilde ~
désigne le home-directory
+(« répertoire-maison » ; répertoire d'accueil), c'est-à-dire l'utilisateur
+lui-même, « chez soi » ; par exemple le home-directory de Toto (nom de login
+toto
) est ~toto
.
+
+ Exercices sur mkdir et rmdir +
+ls
(list)
+ ls
+ ls
donne le contenu du répertoire où l'on se
+trouve, dans l'ordre suivant : symboles, chiffres, majuscules,
+minuscules. Les fichiers apparaissent sous leur nom, les sous-répertoires ont
+leur nom suivi d'un slash (par exemple, truc/
). Les noms de
+fichiers suivis d'une étoile sont des exécutables.
+
ls nom-de-répertoire
donne le contenu du
+répertoire désigné; là aussi on peut taper par exemple ls -l
+truc/
pour savoir la taille des fichiers contenus dans le répertoire
+truc/
. Par exemple :
+
+ Si j'ai une arborescence comme celle-ci : + + |
+
+ corvette ~ $ ls +egypte.tex +histoire/ +corvette ~ $ ls -a histoire/ +./ +../ +Revolution +chronologie+ |
+
ls
+ ls
a un tas d'options, entre autres pour déterminer le critère du
+tri (tri alphabétique, inverse, par date, etc). Voici les options les plus
+courantes (pour d'autres options, voir les exercices) :
+
ls -l
+
+Donne la liste des fichiers avec entre autres les droits (possibilité pour
+d'autres personnes de lire les fichiers, écrire dedans ou les exécuter), la
+taille (en octets) et la date de dernière modification. Et ls
+-l
donnera (par exemple) :
+
Droits | +Liens | +Propriétaire | +Groupe | +Taille | +Date | +Nom | +
---|---|---|---|---|---|---|
-rw-r--r-- | +
+ 1
+ |
+
+ robin
+ |
+
+ litt98
+ |
+
+ 2166
+ |
+
+ Aug 30 15:04
+ |
+
+ egypte.tex
+ |
+
+ drwxr-xr-x
+ |
+
+ 2
+ |
+
+ robin
+ |
+
+ litt98
+ |
+
+ 512
+ |
+
+ Mar 6 2000
+ |
+
+ histoire/
+ |
+
ls -a
+ +Donne la liste de tous les fichiers, y compris ceux commençant par un point +(fichiers de configuration essentiellement). +
+ls -F
+
+C'est l'option qui ajoute un caractère aux noms de fichiers afin de les
+identifier. L'option -F
est activée avec la config conscrits,
+ce qui explique que, par défaut, ls
affiche ces caractères.
+
+ Exercices sur ls +
+cd
(change
+directory)
+ cd
sert à changer de répertoire :
+
cd
sans argument
+ +Ramène au répertoire d'accueil, autrement dit chez soi, au point de départ +de l'arborescence du compte. +
+cd
suivi d'un nom de répertoire
+ +Sert à aller dans ce répertoire. +
+cd histoire/+
+place dans le répertoire histoire/
.
+
cd ..
(point point) fait remonter d'un niveau dans
+l'arborescence.
+
+
+
+Supposons que nous nous trouvons dans
+ |
+ |
Pour retourner du premier coup au home directory : | +
+ cd+ |
+
Si on veut remonter dans moderne (répertoire parent de
+ documents/ ) : |
+
+ cd ..+ |
+
Si on veut remonter jusqu'à histoire/ : |
+
+ cd ../..+ |
+
Si on veut aller dans medievale/ : |
+ cd ../../medievaleou cd ~/histoire/medievale |
+
Si on veut aller de documents dans
+ Bourbons/ : |
+
+ cd ../Bourbons+ |
+
Pour aller directement d'histoire/ dans
+ documents/ : |
+
+ moderne/documents+ |
+
+ Exercices sur cd +
+pwd
(print working
+directory)
+ pwd
affiche le répertoire courant, c'est-à-dire le répertoire où
+vous vous trouvez actuellement. C'est utile quand le prompt ne l'indique pas.
+Prenons comme référence l'arborescence de la figure ci-dessus :
+
corvette ~/histoire/moderne/documents $ pwd +/users/98/litt/toto/histoire/moderne/documents +corvette ~/histoire/moderne/documents $ cd ~/geo +corvette ~/geo $ pwd +/users/98/litt/toto/geo+
+Comme vous le constatez, c'est l'adresse absolue du répertoire qui
+est indiquée : pwd
indique tous les noms de répertoires
+traversés depuis la racine (/users
) pour l'atteindre.
+L'adresse relative d'un fichier ou d'un répertoire est donnée par
+rapport au répertoire personnel de l'utilisateur : « ~ » signifie en fait
+/users/98/litt/toto
(dans le cas de Toto).
+
if
et case
+ if
+ case
+ while
, until
+et for
+ while
+ until
+ for
+ select
+ +Une fois que vous avez compris qu'un script n'est rien d'autre qu'une +suite de commandes, vous avez fait un grand pas ; chaque script +consiste à poser des rails : l'utilisateur n'a plus qu'à les suivre +(si tout cela ne vous paraît pas évident, consultez la page d'initiation à la programmation en shell). +
+Toutefois, avoir posé les rails ne suffit pas toujours : il peut +importer de disposer de mécanismes d'aiguillage. Les structures de contrôle vous +permettront de réaliser ces mécanismes d'aiguillage, qui donneront à vos +scripts souplesse et efficacité.
+if
et case
+ if
+
+Robert le jardinier programme un hachoir en shell, et veut en interdire
+l'accès à tout autre utilisateur que lui-même, afin de protéger le petit
+Émile de ce dangereux instrument. Le programme hachoir
se
+pose la question suivante : est-ce que $USER
vaut
+« Robert » ?
+
+C'est pour les structures de type « si... alors... ou sinon »,
+la commande if
a été faite. Elle est constituée de cinq
+termes, dont trois sont obligatoires :
if
(si), qui marque la condition à remplir ;
+then
(alors), qui marque les conséquences si la
+condition est remplie ; elif
(contraction de else if, qui signifie
+« sinon, si... »), qui est facultatif et marque une
+condition alternative ;else
(sinon), qui est facultatif et marque le
+comportement à adopter si la condition n'est pas remplie ; fi
(if
à l'envers), qui marque la fin de
+la structure de branchement.On peut donc taper :
+if commande ; then commandes ; else commandes ; fi+
ou bien (car le point et virgule équivaut à un saut +de ligne) :
+if condition + then commandes +elif condition + then commandes +else commandes +fi+
+Par exemple, pour le hachoir de Robert le jardinier, on aura : +
++if test $USER = Robert + then echo "Le hachoir va se mettre en marche." + mettre en marche le hachoir +else echo "Quand tu seras grand, $USER." + echo "Et fais bien attention en traversant la rue." +fi+
Comme vous pouvez le constater, à la suite des commandes
+then
et else
, vous pouvez mettre autant de
+commandes que vous le voulez. Le shell exécute tout ce qu'il
+trouve jusqu'à la prochaine instruction.
Par exemple, si la condition indiquée par if
est
+remplie, le shell va exécuter tout ce qui suit then
jusqu'à
+ce qu'il trouve l'une de ces instructions :
elif
,else
oufi
.Autre exemple :
++#!/bin/sh +# Fichier "mon-pwd" + +if test $PWD = $HOME + then echo "Vous êtes dans votre répertoire d'accueil." +elif test $PWD = $HOME/bin + then echo "Vous êtes dans votre répertoire d'exécutables." +elif test $PWD = $HOME/bin/solaris + then echo "Vous êtes dans votre répertoire d'exécutables pour Solaris." +else echo 'Vous êtes dans un répertoire quelconque, qui n'est ni $HOME,' + echo 'ni $HOME/bin, ni $HOME/bin/solaris. '"Vous êtes dans $PWD." +fi ++
elif
successifs est
+illimité, alors qu'il ne peut (et c'est logique) y avoir qu'une
+seule condition if
, une seule instruction else
+et une seule instruction fi
correspondant au if
initial. $HOME
+est cité dans des guillemets simples, alors que $PWD
est
+cité entre guillemets doubles. Par conséquent, $HOME ne sera pas
+interprété (le mot « $HOME » apparaîtra tel quel), tandis que
+$PWD
sera interprété (il sera remplacé, par exemple, par
+/home/toto
).case
+ case
à if
?La structure de contrôle if
est très pratique, mais devient rapidement
+illisible lorsqu'un aiguillage offre plusieurs sorties, et que l'on doit
+répéter une condition pusieurs fois sous des formes à peine
+différentes. Typiquement, un programme comme celui-ci est pénible à
+écrire, à lire et à débuguer :
+if test $PWD = $HOME + then echo "Vous êtes dans votre répertoire d'accueil." +elif test $PWD = $HOME/bin + then echo "Vous êtes dans votre répertoire d'exécutables." +elif test $PWD = $HOME/bin/solaris + then echo "Vous êtes dans votre répertoire d'exécutables pour Solaris." +elif test $PWD = $HOME/prive + then echo "Vous êtes dans votre répertoire privé." +else echo 'Vous êtes dans un répertoire quelconque, qui n'est ni $HOME,' + echo 'ni $HOME/bin, ni $HOME/bin/solaris. '"Vous êtes dans $PWD." +fi ++
Pourquoi ce programme est-il pénible à écrire, à lire et à +débuguer ?
+test
+$PWD =
» ; et qui dit redondance dit possibilité de
+faute de frappe – erreur particulièrement difficile à repérer
+à l'œil nu ;if
correspond un fi
mais les elif
+n'ont pas besoin d'être ainsi « refermés », alors que logiquement les deux
+instructions le sont), ce qui nuit à la lisibilité.La structure de contrôle case
entend remédier à ces inconvénients. Il
+s'agit tout simplement de la simplification d'un usage fréquent de la
+structure if
. On peut récrire le programme suivant avec
+case
:
+case "$PWD" in +"$HOME") echo "Vous êtes dans votre répertoire d'accueil.";; +"$HOME/bin") echo "Vous êtes dans votre répertoire d'exécutables.";; +"$HOME/bin/solaris") echo "Vous êtes dans votre répertoire d'exécutables pour Solaris.";; +"$HOME/prive") echo "Vous êtes dans votre répertoire privé.";; +*) echo 'Vous êtes dans un répertoire quelconque, qui n'est ni $HOME,' + echo 'ni $HOME/bin, ni $HOME/bin/solaris. '"Vous êtes dans $PWD.";; +esac ++
Le gain de lisibilité est flagrant (si si, c'est flagrant, je vous +assure) :
+elif
;case
La structure case
adopte la syntaxe suivante :
+case chaîne in + motif) commandes ;; + motif) commandes ;; +esac ++
+La structure case
commence par évaluer la
+chaîne. Ensuite, elle va lire chaque motif. Enfin, et
+dès qu'une chaîne correspond au motif, elle exécute
+les commandes appropriées. En anglais, case signifie
+« cas » ; cette structure de contrôle permet en effet de
+réagir adéquatement aux différents « cas de figure »
+possibles.
+Vous observerez que : +
+case
est close par l'instruction
+esac
, qui n'est autre que le mot case
à
+l'envers (de même que la structure if
est terminée par
+l'instruction fi
).
+Un motif (pattern) est un mot contenant éventuellement
+les constructions *
, ?
, [a-d]
,
+avec la même signification que pour les raccourcis dans les noms de
+fichiers (les jokers). Exemple :
+
+case $var in + [0-9]*) echo "$var est un nombre.";; + [a-zA-Z]*) echo "$var est un mot.";; + *) echo "$var n'est ni un nombre ni un mot.";; +esac+
Que faire si je veux aiguiller plusieurs motifs différents de la même +façon ? Le premier réflexe est de répéter, presque à l'identique, +des lignes, de la façon suivante :
++#!/bin/sh +# Fichier "canards" + +echo "Quel est ton nom ?" +read nom + +case $nom in +"Riri") echo "Ton oncle s'appelle Donald, Riri.";; +"Fifi") echo "Ton oncle s'appelle Donald, Fifi.";; +"Loulou") echo "Ton oncle s'appelle Donald, Loulou.";; +*) echo "Tu n'es pas un neveu de Donald.";; +esac ++
+Mais il n'est jamais bon de répéter manuellement des lignes de +programmation, car c'est générateur de fautes. Il faut toujours +chercher des raccourcis, et ne se répéter qu'en dernier recours. On +utilisera donc le caractère « | », qui permet de mettre sur le +même plan différents motifs. On pourra donc écrire : +
++#!/bin/sh +# Fichier "canards" + +echo "Quel est ton nom ?" +read nom + +case $nom in +"Riri"|"Fifi"|"Loulou") echo "Ton oncle s'appelle Donald, $nom.";; +*) echo "Tu n'es pas un neveu de Donald.";; +esac ++
On gagne ainsi en concision, et on évite bien des +fautes d'inattention, qui sont particulièrement coriaces à débuguer. +
+La structure case
exécute les commandes correspondant au
+premier motif correct, et ne parcourt pas les motifs
+suivants si elle en a trouvé un. Par conséquent, si le dernier
+motif est « * », cela revient à l'instruction
+else
dans la structure if
.
while
, until
+et for
+ Les structures if
et case
sont des
+structures d'aiguillage ; les structures while
,
+until
et for
sont des
+boucles. C'est-à-dire qu'elles soumettent à une condition déterminée la
+répétition (ou non) d'une suite de commandes.
while
+
+La boucle while
exécute les commandes de manière
+répétée tant que la première commande réussit ; en
+anglais, while signifie « tant que ».
while
La boucle while
adopte la syntaxe suivante :
while condition + do commandes +done+
Après l'instruction do
, vous pouvez mettre
+autant de commandes que vous le désirez, suivies de retours
+chariot ou bien de points et virgules (« ; »). Le shell
+exécutera tout ce qu'il trouve, jusqu'à ce qu'il tombe sur l'instruction
+done
.
+echo "Tapez le mot de passe :" +read password + +while test "$password" != mot de passe correct +do echo "Mot de passe incorrect." + echo "Tapez le mot de passe" + read password +done + +echo "Mot de passe correct." +echo "Bienvenue sur les ordinateurs secrets du Pentagone." ++
Les lignes qui suivent la boucle while
+seront exécutées si, et seulement si, la condition est remplie,
+c'est-à-dire si l'utilisateur tape le bon mot de passe. (En pratique, il
+est très fortement déconseillé de taper un mot de passe en clair dans un
+script, car rien n'est plus facile que de l'éditer !...).
+
while
Supposons que vous vouliez créer cinquante fichiers sous la forme
+fichier1
, fichier2
, fichier3
,
+etc. Un petit script vous fera ça plus vite que cinquante lignes de
+commande.
+#!/bin/sh +# Fichier "50fichiers" + +numero=1 + +while test $numero != 51 + do + # la commande "touch" permet de créer un fichier vide : + touch fichier"$numero" + + # cette commande ajoute 1 à la variable "numero" : + numero=$(($numero + 1)) +done ++
Avec ce script, la variable numero
est
+d'abord créée avec la valeur 1. Ensuite, le shell examine si la
+valeur de numero
est différente de 51 ; c'est le
+cas. Par conséquent, le shell exécute les commandes suivantes : il
+crée un fichier fichier1
, puis ajoute 1 à la variable
+numero
, qui vaut donc 2. Et c'est reparti pour un
+tour ! Le shell examine si la valeur de numero
,
+c'est-à-dire 2, est différente de 51, etc.
+
Petit conseil pour faire les choses le plus proprement +possible : dans le script qui précède, +remplacez « 51 » par une variable : le script sera +beaucoup plus lisible. Exemple :
++#!/bin/sh +# Fichier "50fichiers" + +numero=1 +limite=51 + +while test $numero != $limite + do + # la commande "touch" permet de créer un fichier vide : + touch fichier"$numero" + + # cette commande ajoute 1 à la variable "numero" : + numero=$(($numero + 1)) +done ++
until
+ Until signifie « jusqu'à ce que » en anglais. Cette
+boucle est le pendant de la boucle while
, à ceci près que
+la condition ne détermine pas la cause de la répétition
+de la boucle, mais celle de son interruption.
until
+until condition + do commandes +done ++
On aura ainsi :
++echo "Tapez le mot de passe :" +read password + +until test $password = mot de passe correct +do echo "Mot de passe incorrect." + echo "Tapez le mot de passe" + read password +done + +echo "Mot de passe correct." +echo "Bienvenue sur les ordinateurs secrets de la NASA." ++
Il revient en effet au même de répéter une suite de commandes +« tant que le mot de passe est +incorrect » ou bien « jusqu'à ce que +le mot de passe soit correct », car un mot de +passe déterminé ne peut être que correct ou incorrect. +
+while
ou until
?Vous allez donc me demander que préférer entre while
et
+until
, si les deux sont si souvent équivalentes ? Eh
+bien, celle dont la condition sera la plus facile à écrire, à lire et à
+débuguer. Si, comme dans notre exemple, elles sont aussi simples
+l'une que l'autre, choisissez votre préférée ou prenez-en une au hasard.
+
for
+
+La boucle for
affecte successivement à une variable chaque
+chaîne de caractères trouvée dans une liste de chaînes, et
+exécute les commandes une fois pour chaque chaîne.
+
for
for var in liste de chaînes +do commandes +done+
+#!/bin/sh +# Fichier "liste" + +for element in * + do echo "$element" +done ++
+affiche les noms de tous les fichiers du répertoire courant, un par ligne. +
+Concrètement, le shell va prendre la liste des chaînes, en
+l'occurrence « * », c'est-à-dire tous les fichiers et
+répertoires du répertoire courant. À chacun de ces éléments, il va
+attribuer la variable element
, puis exécuter les commandes
+spécifiées, en l'occurrence echo
+"$element"
. Ainsi, si dans mon répertoire j'ai les
+fichiers a
, b
et c
, le shell va
+exécuter successivement echo "a"
, echo
+"b"
et echo "c"
.
for
+Comme while
et until
, for
est une
+boucle au sens propre. Mais il y a une différence notable entre ces deux
+groupes de boucle : while
et until
sont
+plus appropriés à la répétition à l'identique d'une séquence de
+commandes, tandis que for
convient particulièrement
+aux répétitions soumises à de légères variations.
+
+Prenons par exemple le script qui permettait, avec while
,
+de créer 50 fichiers rapidement. La numération des passages par la
+boucle était assez pénible, et éclatée en trois endroits :
+
numero
(et, éventuellement, de la valeur 51 à
+la variable limite
) ;test $numero != 51
ou
+test $numero != $limite
;numero
, avec la
+ligne numero=$(($numero + 1))
.
+Pourquoi dire en trois fois ce qui, dans les langages naturels
+(c'est-à-dire humains), s'énonce en une seule : « répéter
+n fois cette séquence de commandes » ? La boucle
+for
se révèle alors indispensable :
+
+#!/bin/sh +# Fichier "50fichiers-for" + +# la commande "seq a b" compte de a à b +for numero in `seq 1 50` + do touch fichier"$numero" +done ++
Avouez que le script est beaucoup plus simple de +cette manière !
+select
+ +Il est parfois utile de donner à l'utilisateur du script des formulaires +sous forme de questions à choix multiples.
+Par exemple, je suis sociologue et je veux dresser des statistiques +sur les opinions d'un échantillon représentatif de normaliens : +sont-ils favorables ou défavorables à la destruction du NIR (Nouvel +Immeuble Rataud) et à la reconstruction du VIR (Vieil Immeuble +Rataud, a.k.a. Pavillon) ? +
++Spontanément, je fais le script suivant : +
++#!/bin/sh +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" +echo "(Répondez « pour » ou « contre »)" +read opinion + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++
Seulement voilà, de nombreuses personnes vont faire des fautes de +frappe, et taper « poru » au lieu de « pour », +« cnotre » au lieu de « contre », +etc. Résultat : au lieu de laisser d'autres scripts traiter +automatiquement les résultats des statistiques qui me sont envoyés par +courriel, je devrai tout regarder à la main et cocher moi-même les +résultats pour ne pas en oublier. Dans ce cas, autant faire un sondage +classique à la sortie du Pot !
+Heureusement, il existe une parade : la boucle
+select
.
select
+select variable in valeurs possibles + do commandes +done ++
+Voici le script de notre sociologue : +
++#!/bin/sh +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" +select opinion in Pour Contre + do break +done + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++
+Les utilisateurs verront alors : +
++Êtes-vous favorable au remplacement du NIR par le VIR ? +1) Pour +2) Contre ++
+Ils devront alors taper 1 ou 2, selon leur opinion. +
+Vous avez remarqué que l'instruction do
est suivie de la
+commande break
. Celle-ci indique de sortir de la boucle
+select
. Sans break
, select
est en
+effet une boucle, comme while
, until
et
+for
. Nous allons voir pourquoi.
select
comme boucle
+Par défaut, select
se comporte comme une boucle. Observons
+le comportement du script suivant :
+
+#!/bin/sh +# Fichier "piege" + +echo "Si tu arrives à sortir de ce script, je te donne 30 euros." +select issue in "Sortir" "Quitter" + # la commande "continue" est une commande vide : elle ne fait rien de spécial + do continue +done ++
Essayez maintenant d'exécuter ce script :
++Si tu arrives à sortir de ce script, je te donne 30 euros. +1) Sortir +2) Quitter +#? 1 +#? 2 +#? 1 +#? 2 +#? 1 +(etc.) ++
Ce comportement est parfois utile, par exemple si vous programmez un +petit jeu, ou autre. Ou encore, pour prévenir les réponses non +valides. Exemple :
++#!/bin/sh +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" +select opinion in Pour Contre + do + case $opinion in + # Laisser passer ceux qui répondent correctement à la question + "Pour"|"Contre") break;; + + # Au cas où des zozos tapent sur autre chose que 1 ou 2 + *) continue;; + esac +done + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++
Grâce à cela, si un normalien tape une réponse
+invalide, select
attend qu'il tape quelque chose de
+correct ; s'il tape quelque chose de correct, la réponse est
+envoyée au sociologue.
+Vous aurez remarqué au passage que l'on peut sans problème +imbriquer des structures de contrôle les unes dans les autres. +
+
+On remarque que la condition des commandes if
et
+while
est une commande. Chaque commande renvoie un code de
+retour (qui est ignoré en utilisation normale). Si le code est 0, la
+commande a réussi ; sinon, la commande a échoué. Par exemple, le
+compilateur cc
renvoie un code d'erreur non nul si le
+fichier compilé contient des erreurs, ou s'il n'existe pas.
+
+Les commandes if
et while
considèrent donc le
+code de retour 0 comme « vrai », et tout autre code comme
+« faux ».
+
+Il existe une commande test
, qui évalue des expressions
+booléennes (c'est-à-dire dont la valeur ne peut être que vraie ou
+fausse) passées en argument, et renvoie un code de retour en fonction du
+résultat. Elle est bien utile pour les scripts. Exemple :
+
+if test $var = foo +then echo 'La variable vaut foo' +else echo 'La variable ne vaut pas foo' +fi+
+Pour en savoir plus sur les opérateurs de test, consultez la page tests et calculs arithmétiques Ou bien vous pouvez +revenir à la page centrale sur le shell, d'où +vous pourrez vous orienter vers d'autres parties du cours. +
+ +Le shell a la faculté de lancer de nombreux programmes, sinon +tous. C'est une des raisons pour lesquelles on peut dire que c'est un +outil extrêmement puissant. +
+Lancer un programme, c'est créer un +processus. Tautologisons : un processus est une +instance d'exécution d'un programme, c'est-à-dire +l'exécution particulière d'un programme universel (i.e qui +n'est pas réductible à l'une de ses exécutions).
+Par exemple, si je lance Mozilla, un processus se crée, du nom de
+mozilla
. Ensuite, sans fermer ce programme, je lance une
+deuxième fois Mozilla ; un nouveau processus se crée, du nom
+de mozilla
également. J'ai donc deux processus
+distincts, même s'ils concernent le même programme. Et à chaque
+fois que je lance un programme, un processus se crée.
+
Dans notre exemple, nous avons deux processus
+mozilla
. Ils sont indépendants l'un de l'autre :
+quoi qu'il puisse se passer dans l'un, cela ne devrait pas influer sur
+le comportement de l'autre.
+
Toutefois, s'ils sont indépendants l'un de l'autre, tous deux
+dépendent du processus qui les a lancés. Eh oui, le shell
+est un programme comme un autre, donc chacune de ses exécutions
+correspond également à la création d'un processus. Si
+vous lancez trois shells en même temps, par exemple dans trois
+terminaux différents, vous aurez trois processus shell
+distincts.
+Les processus entretiennent entre eux des relations de parenté. Mais +comme les processus ont tous le même sexe, chaque processus +n'a qu'un parent. Un processus peut avoir plusieurs enfants. +
+ Le shell est, comme nous venons de le voir, un processus qui
+peut enfanter d'autres processus. Par exemple, à chaque fois
+que je tape mozilla
, mon shell crée un processus
+mozilla
.
Par défaut, le shell met le processus enfant en +avant-plan. Cela veut dire que si je tape simplement : +
+chaland ~ mozilla
+
+
+le processus mozilla
prend la main, et le shell ne
+réagit plus (il n'affiche même plus l'invite de commande) avant
+la fin du processus enfant. Ce n'est que lorsque le processus
+mozilla
prend fin (si je ferme ce programme, par exemple)
+que le shell reprend la main.
+
Ce comportement par défaut n'est parfois pas très pratique. Par +exemple, si je veux lancer Mozilla, mais aussi Emacs et d'autres +programmes qui s'ouvrent dans leur propre fenêtre, je suis obligé +d'ouvrir à chaque fois un nouveau terminal avec un nouveau shell, et +ce uniquement pour y taper une commande, après quoi le shell se +retrouve inutilisable jusqu'à la fin de chacun de ces +programmes.
+Il faudrait donc que l'on puisse lancer des processus enfants en +arrière-plan, de telle sorte que ces processus se lancent +dans leur propre fenêtre et me permettent toutefois de dialoguer avec +le shell sans avoir à :
+Pour cela, il faut ajouter le signe « & » à la +fin d'une ligne de commande. On peut ainsi taper :
+chaland ~ mozilla & +chaland ~ mozilla & +chaland ~ ++
et de la sorte, un même shell peut engendrer +autant de processus que vous voulez.
+La vie est déjà plus pratique comme cela. Mais parfois, on
+aimerait que le processus enfant survive au processus parent. Car par
+défaut, la mort d'un processus parent entraîne celle de
+tous ses enfants. Par exemple, si le shell qui a enfanté les
+deux processus mozilla
vient à décéder (si je le
+ferme brutalement, ou s'il plante), les deux processus
+mozilla
le suivront dans la mort.
+Il faudrait donc qu'un processus parent puisse émanciper des +processus enfants, pour que sa propre mort n'entraîne pas les +leurs. Pour cela, il faut utiliser les symboles +« &! ». Par exemple, si je tape : +
+chaland ~ mozilla &! +chaland ~ mozilla &! +chaland ~ ++
puis que je ferme brutalement le shell en tapant
+Ctrl-D et en ignorant d'éventuels avertissements, le shell
+disparaîtra, mais pas les processus mozilla
.
Jusqu'ici, l'exemple de processus enfant que nous avons pris
+était relativement simple : il s'agissait de la commande
+mozilla
, que l'on peut lancer en tapant simplement son
+nom.
+Jusqu'ici, on peut se dire que la ligne de commande, c'est comme quand +on clique sur une icône, sauf que c'est plus fatigant. Effectivement, +pourquoi se fatiguer à taper une suite de caractères quand il +suffit d'appuyer une ou deux fois sur le bouton d'une souris ? +
++C'est dans l'usage des arguments et des options que la ligne de commande +commence à révéler une partie de sa puissance, et de sa nette +supériorité sur les interfaces graphiques. +
+Un argument est une suite de caractères que l'on donne à une +commande et qui lui indique comment se comporter. Les options sont un +type d'argument.
+Par exemple, si je veux ouvrir le fichier hermocrate.txt
+avec l'éditeur de texte nano
, j'ai le choix entre deux
+possibilités :
chaland ~ nano
+puis Ctrl-R pour indiquer d'ouvrir un fichier, puis Ctrl-T
+pour voir la liste des fichiers, puis les flèches pour choisir mes
+fichiers, enfin Entrée pour sélectionner
+hermocrate.txt
— mais tout cela est bien
+fastidieux ; chaland ~ nano hermocrate.txt
+Ou encore, pour reprendre l'exemple de Mozilla, si je veux aller voir +la page des tuteurs et que ce n'est pas ma page d'accueil par défaut +(ce qui est un tort !), je peux taper :
+chaland ~ mozilla http://www.tuteurs.ens.fr/
+ +Les options sont un cas particulier d'arguments, qui donnent au +programme que l'on exécute toutes sortes d'information, souvent +plus ou moins périphériques, en général moins importantes +que les arguments. +
+Sous Unix, les options commencent généralement par un +tiret. Certaines options peuvent à leur tour prendre des +arguments.
+Par exemple, si l'on veut ouvrir un fichier au format MS-DOS, on peut +taper :
+chaland ~ nano -D hermocrate.txt
+
+L'option -r
de nano
prend un argument ;
+ainsi, si l'on veut que Nano coupe les lignes au bout de 75
+caractères, on doit ouvrir Nano en tapant :
+
chaland ~ nano -r 75 hermocrate.txt
+ Traditionnellement, et pour des raisons de concision, la majorité +des options, sous Unix, est composée d'un tiret et d'une seule +lettre. Toutefois, pour des raisons pratiques, il peut également +exister des noms d'option longs ; ils sont en général +précédés, non d'un, mais de deux tirets. Exemple :
+chaland ~ nano --fill=75 hermocrate.txt
+ Dans cet exemple, il se trouve que l'option à nom
+long --fill=
équivaut à l'option à nom
+court -r
. Mais toutes les commandes courtes n'ont pas
+systématiquement leur équivalent à nom long, et vice versa.
+Il est souvent ennuyeux d'avoir à taper une longue liste de fichiers +pour les donner en arguments à une commande, comme : +
+cc -o foo bar.c gee.c buz.c gog.c+
+(pour les curieux, sachez que cette commande sert à compiler un +programme écrit en langage C, c'est-à-dire à le traduire en langage +machine. Mais avant de vous mettre au langage C, attendez de bien +connaître le shell, il vous apprendra plus facilement et plus +agréablement les bases de la programmation...) +
++Pour éviter les problèmes liés à la frappe de longues lignes de +commandes, on peut utiliser des jokers (wildcards en +anglais). Pourquoi ce nom ? Eh bien, dans certains jeux de cartes, +le joker permet de remplacer n'importe quelle carte ; dans le +shell, les jokers permettent de remplacer n'importe quel caractère ou +n'importe quelle séquence de caractères. +
++Il existe principalement trois types de jokers : +
+
+Une étoile *
dans un nom de fichier est
+interprétée par le shell comme « n'importe quelle séquence de
+caractères » (mais ça ignore les fichiers dont le nom commence par un
+point). Exemple :
+
cc -o foo *.c+
+Pour interpréter l'étoile, le shell va faire la liste de tous les noms de
+fichiers du répertoire courant qui ne commencent pas par .
et
+qui finissent par .c
. Ensuite, il remplace *.c
+par cette liste (triée par ordre alphabétique) dans la ligne de commande, et
+exécute le résultat, c'est-à-dire par exemple :
+
cc -o foo bar.c buz.c foo.c gee.c gog.c+
+On a aussi le point d'interrogation ?
, qui
+remplace un (et exactement un) caractère quelconque (sauf un point en début
+de nom). Par exemple, ls *.?
liste tous les dont l'extension
+ne comporte qu'un caractère (.c
, .h
...).
+
+La forme [abcd]
remplace un caractère quelconque parmi
+a
, b
, c
, d
. Enfin,
+[^abcd]
remplace un
+caractère quelconque qui ne se trouve pas parmi a
, b
,
+c
, d
.
+
echo /users/*+
+affiche à peu près la même chose que +
+ls /users+
+(La commande echo
se contente d'afficher ses arguments.)
+
Attention : +
+mv *.c
+*.bak
, car le shell va passer à mv
les arguments
+foo.c bar.c foo.bak bar.bak
, et mv
ne sait pas
+quel fichier remplacer. rm *
+~
, le shell remplace l'étoile par la liste des fichiers présents,
+et ils seront tous effacés. Si vous tapez rm *~
, seuls les
+fichiers dont le nom finit par un tilde seront effacés. Interlude : comment effacer un fichier nommé
+?*
? On ne peut pas taper rm ?*
car le shell
+remplace ?*
par la liste de tous les fichiers du répertoire
+courant. On peut taper rm -i *
qui supprime tous les
+fichiers, mais en demandant confirmation à chaque fichier. On répond
+n
à toutes les questions sauf rm: remove ?*
.
+Autre méthode: utiliser les mécanismes de citation.
+
+Avec tous ces caractères spéciaux, comment faire pour passer des
+arguments bizarres à une commande ? Par exemple, comment faire
+afficher un point d'interrogation suivi d'une étoile et d'un dollar par
+echo
?
+On ne peut pas les taper directement dans la ligne de commande (ici,
+avec le shell zsh
), car le shell essaye de les interpréter
+comme des jokers :
+
chaland ~ echo ?*$
+zsh: no matches found: ?*$
+ Il faut donc indiquer au shell de ne pas interpréter ces caractères +comme des jokers. Pour cela, nous allons utiliser des mécanismes fournis +par le shell : les quotations (mot anglais +signifiant citation). +
++Les mécanismes de citation sont les suivants : +
+\
), qui protège un caractère de
+l'interprétation par le shell ;'
), qui protègent une chaîne de caractères de
+l'interprétation par le shell ;"
), qui protègent également une chaîne de caractères
+de l'interprétation par le shell, mais avec plus de souplesse que les
+précédents ;`
), qui cite la
+sortie d'une commande.\
)+ Il suffit de précéder un caractère spécial d'un backslash, et le shell +remplace ces deux caractères par le caractère spécial seul. Évidemment, le +backslash est lui-même un caractère spécial. +
++Exemples : +
+chaland ~ $ echo \?\*\$ +?*$ +chaland ~ $ echo \\\?\\\*\\\$ +\?\*\$+
'
)
+Un autre moyen est d'inclure une chaîne de caractères entre apostrophes
+(simples quotes) '
. Tout ce qui se trouve entre deux
+apostrophes sera passé tel quel par le shell à la
+commande. Exemple :
+
chaland ~ $ echo '$?*'
+$?*
+ "
)+Les guillemets se comportent comme les apostrophes, à une exception près: les +dollars et les backslashes sont interprétés entre les guillemets. +Exemple : +
+chaland ~ $ echo "$HOME/*"
+/users/87/maths/doligez/*
+ +Une technique utile: Quand on juxtapose deux chaînes de caractères +quotées, le shell les concatène, et elles ne forment qu'un argument. +Exemple : +
+chaland ~ $ echo "'"'"'
+'"
+
+Quant aux interactions plus compliquées (backslashes à l'intérieur des
+guillemets, guillemets à l'intérieur des apostrophes, etc.), le meilleur moyen
+de savoir si ça donne bien le résultat attendu est d'essayer. La commande
+echo
est bien utile dans ce cas.
+
`
)
+Dernière forme de citation : `commande`
. Le
+shell exécute la commande indiquée entre backquotes, lit la
+sortie de la commande mot par mot, et remplace `
+commande `
par la liste de ces mots.
+Exemple :
+
chaland ~ $ echo `ls` +Mail News bin foo lib misc mur notes.aux notes.dvi notes.log +notes.tex planar text +chaland ~ $ ls -l `which emacs` +-rwxr-xr-t 1 root taff 978944 Jul 16 1991 /usr/local/bin/emacs+
+La commande which cmd
employée ci-dessus affiche sur sa
+sortie le nom absolu du fichier exécuté par le shell quand on lance la
+commande it cmd :
+
chaland ~ $ which emacs
+/usr/local/bin/emacs
+ Vous êtes maintenant en mesure de faire ces exercices pour vous +entraîner. Ou bien vous pouvez revenir à la page +centrale sur le shell, d'où vous pourrez vous orienter vers d'autres +parties du cours.
+ ++Un programme consiste à traiter des données, et à renvoyer des données +transformées : il transforme des informations, et c'est pourquoi +l'on parle d'informatique.
+ Prenons un programme hachoir
, par exemple : on y
+fait entrer des choses, elles sortent sous une autre forme, et dans
+l'intervalle, elles subissent des transformations régulières. Par
+exemple, on fait entrer une vache, il en ressort du steak haché ;
+on y fait entrer des carottes, il en ressort des carottes rapées.
+
+Deux concepts permettent de modéliser cette transformation +d'informations : les concepts d'entrée et de +sortie. L'entrée, c'est la vache ou les carottes ; +la sortie, c'est le steak haché ou les carottes +rapées. +
++Mais cette première distinction entre entrée et sortie ne suffit pas, +car la sortie d'un programme, c'est-à-dire les messages qu'il renvoie, +sont de deux ordres : il y a les messages normaux relevant +de la transformation d'informations (par exemple le steak haché ou les +carottes rapées), mais il y a aussi des messages d'erreur.
+Par exemple, si vous mettez, sur le tapis roulant qui mène au +hachoir, un objet trop gros pour y rentrer, le hachoir, s'il est bien +conçu, devra vous prévenir qu'il n'arrive pas à hacher un objet si +gros. Et ce message, quoiqu'il sorte aussi bien du hachoir que le steak +haché, ne doit pas être traité de la même façon à sa sortie, et n'est +pas suivi des mêmes conséquences. C'est pourquoi l'on distingue la +sortie standard et la sortie d'erreur. +
++Pour résumer, chaque commande a donc :
+Par défaut, l'entrée standard est le clavier, la sortie standard est +l'écran, et la sortie d'erreur est aussi l'écran.
+C'est sur le clavier que vous tapez ; ce que vous tapez et ce +que renvoient les programmes s'inscrit à l'écran ; les messages +d'erreur renvoyés par les programmes s'affichent à l'écran. +
++Mais il ne s'agit là que du comportement par défaut, et pas d'un +comportement obligatoire. Vous pouvez tout à fait orienter différemment +vos programmes.
+Par exemple, si vous donnez une vache comme entrée au hachoir, vous +pouvez orienter la sortie vers une imprimante (au lieu de l'écran, +proposé par défaut), et vous imprimerez ainsi du steak haché.
+
+Ou encore, vous pouvez donner un plant de carottes comme entrée au
+programme cueillette
, et envoyer la sortie (c'est-à-dire
+les carottes cueillies) au programme hachoir
.
+
+Nous allons étudier successivement : +
++Ces différentes configurations esquissent la grammaire d'une utilisation +très performante des fonctionnalités du shell ; vous saurez +en effet comment brancher un fichier sur l'entrée ou sur la sortie d'une +commande, et comment brancher la sortie d'une commande sur l'entrée +d'une autre. Il n'y a pas d'autre combinaison possible. +
+>
+
+On peut rediriger la sortie standard d'une commande vers un
+fichier (caractère « >
»). Le résultat de la
+commande sera placé dans le fichier au lieu de s'afficher sur l'écran.
+Exemple :
+
chaland ~ $ ls -l > foo
+
+Le résultat de ls -l
ne s'affiche pas à l'écran, mais il est placé
+dans le fichier foo
. On peut alors taper
+
chaland ~ $ less foo
+
+(ou more foo
)
+pour lire le fichier page par page.
+
>>
+ On veut parfois ajouter la sortie d'un programme à un fichier, sans +effacer ce qui précède. Or, par défaut, si l'on tape plusieurs fois +
+chaland ~ $ ls -l > foo
+
+à chaque fois, le contenu antérieur du fichier foo
est
+écrasé par le contenu ultérieur.
+
+Pour éviter cela, il existe l'outil de redirection >>. Ainsi, si +vous tapez plusieurs fois +
+chaland ~ $ ls -l >> foo
+
+le fichier foo
contiendra à la suite tout ce que
+vous a renvoyé la commande.
+
<
+
+On peut aussi rediriger l'entrée standard d'une commande (caractère
+« <
»). La commande lira alors le fichier au
+lieu du clavier. Exemple :
+
chaland ~ $ elm leroy < foo
+
+envoie par mail à Xavier Leroy le résultat de la commande ls -l
de
+tout à l'heure.
+
+On peut aussi taper more < foo
qui est équivalent à
+more foo
car more
sans argument lit son entrée
+standard et l'affiche page par page sur le terminal.
+
|
+ +Il devient rapidement ennuyeux de taper : +
+chaland ~ $ ls -l > foo +chaland ~ $ less < foo +chaland ~ $ rm foo+
+On peut se passer du fichier intermédiaire (foo
dans notre
+exemple) grâce à un pipe (caractère
+« |
»). Un pipe connecte directement la sortie
+standard d'une commande sur l'entrée standard d'une autre commande.
+Exemple : pour afficher page par page la liste des fichiers du
+répertoire courant, faire
+
chaland ~ $ ls -l | less
+ +Le pipe, ou tube, est d'un usage très courant, et rend beaucoup de +services. +
+
+On a parfois besoin de savoir si une commande a réussi ou non avant d'en
+lancer une autre. Les indicateurs &&
et
+||
permettent, respectivement, de lancer une commande si
+(et seulement si) la précédente a réussi ou échoué.
+
+Par exemple, si j'ai un fichier foo
, j'obtiens :
+
chaland ~ $ ls foo && echo "J'ai un fichier foo."
+foo
+J'ai un fichier foo.
+
+
+Si je n'ai pas de fichier foo
, le message ne s'affiche
+pas. En revanche, si je tape alors :
+
chaland ~ $ ls foo || echo "Je n'ai pas de fichier foo."
+ls: foo: No such file or directory
+Je n'ai pas de fichier foo.
+
+ +Pour en savoir plus sur les structures de test, consultez la page sur +les tests et calculs arithmétiques. +
+
+Il est parfois utile de rediriger la sortie standard et la sortie
+d'erreur vers un même endroit. Pour cela, on utilise le motif
+2>&1
avant la redirection.
+
Fonction | +Bourne shell (sh, bash) | +Z-shell (zsh) | +
---|---|---|
Redirige la sortie d'erreur (2) et la sortie standard (1) sur l'entrée +de la commande suivante | +
+ 2>&1 |
+ |
+
+ |&
+ |
+
Redirige la sortie d'erreur et la sortie standard vers fichier |
+
+ >fichier 2>&1
+ |
+
+ >& fichier
+ |
+
Redirige la sortie d'erreur et la sortie standard à la fin de fichier |
+
+ >>fichier 2>&1
+ |
+
+ >>& fichier
+ |
+
+Normalement, une redirection avec >
sur un fichier qui
+existe déjà efface le contenu du fichier avant d'y placer le résultat de la
+commande. Les shells ont des options pour demander confirmation, ou
+refuser d'effacer le fichier.
+
+Une ligne de commandes contenant des |
s'appelle un pipe-line.
+Quelques commandes souvent utilisées dans les pipe-lines sont:
+
less
, bien plus évolué) à la fin du pipe-line, affiche le
+résultat page par page, pour laisser le temps de le lire. fold
coupe les lignes de son
+entrée à 80 caractères et écrit le résultat sur sa sortie.
+cat glop buz > toto+
+Concatène les fichiers glop
et buz
et place le
+résultat dans toto
.
+
wc -w /usr/dict/words+
+Affiche le nombre de mots du dictionnaire Unix. +
+grep gag /usr/dict/words | tail+
+Affiche les 10 derniers mots du dictionnaire qui contiennent la chaîne
+gag
.
+
+La panoplie complète des redirections est la suivante : +
+>
: change la sortie standard de la commande pour la placer
+dans un fichier.
+<
: change l'entrée standard de la commande pour la prendre
+dans un fichier.
+|
: branche la sortie standard de la commande de gauche sur
+l'entrée standard de la commande de droite.
+>>
: change la sortie standard pour l'ajouter à la fin
+d'un fichier existant.
+||
: exécuter la commande suivante si la première a
+échoué.
+&&
: n'exécuter la commande suivante que si la
+première a réussi.
+Vous êtes maintenant en mesure de faire ces exercices pour vous +entraîner. Ou bien vous pouvez revenir à la page +centrale sur le shell, d'où vous pourrez vous orienter vers d'autres +parties du cours.
+ ++Vous savez qu'un script shell n'est rien d'autre qu'une série de +commandes (si vous ne le savez pas, lisez la page d'initiation à la programmation en shell). Mais +parfois cela pose des problèmes, car lorsqu'un script devient un peu +long et surtout lorsqu'il est obligé de se répéter, les risques de +bogues (dysfonctionnements) croissent. +
++L'usage des fonctions permet de : +
+
+Utilisateur de TeX ou LaTeX
+(ou non), vous voulez effacer régulièrement tous les fichiers
+.aux
et .log
qui polluent vos répertoires.
+Pour ceux qui ne connaissent pas TeX, sachez que ce sont des fichiers
+construits automatiquement, et que l'on peut recréer facilement à partir
+du fichier .tex
: les supprimer permet donc de gagner
+de l'espace disque sans dommages.
+
+Votre script ressemble donc à ceci : +
++#!/bin/sh + +# fichier "texcleaner" : efface les fichiers aux et log + +# Je prends chaque fichier .aux du répertoire courant +for fichier in *.aux + do + # J'affiche son nom et demande confirmation pour l'effacer + echo "$fichier" + echo "Voulez-vous vraiment l'effacer ? (o/n)" + + # Je lis la réponse de l'utilisateur + read reponse + + # Et s'il dit oui, j'efface + if [[ $reponse == "o" ]] + then rm -f $fichier + fi +done + +# Je prends chaque fichier .log du répertoire courant +for fichier in *.log + do + # J'affiche son nom et demande confirmation pour l'effacer + echo "$fichier" + echo "Voulez-vous vraiment l'effacer ? (o/n)" + + # Je lis la réponse de l'utilisateur + read reponse + + # Et s'il dit oui, j'efface + if [[ $reponse == "o" ]] + then rm -f $fichier + fi +done ++
+Vous venez de terminer ce programme, et vous êtes content, car il +fonctionne comme vous le voulez. +
++rm -i *.aux *.log ++ +Mais ici, cet exemple à la limite est là pour illustrer d'une +façon simple l'intérêt des fonctions... Disons alors que cet exemple +permet de donner une version francisée de la commande +
rm -i *.aux *.log
!
++Ce programme présente certains aspects déplaisants : +
++Il faudrait, pour pallier ces inconvénients, trouver un moyen de +centraliser les informations destinées à être répétées, afin que +l'on puisse s'y référer à chaque endroit où cela est +nécessaire. C'est pour cela que les fonctions existent. +
++L'utilisation des fonctions se fait en deux moments : +
++Dans le monde naturel, on peut comparer cela à l'horloge parlante : +celle-ci commence par dire « au quatrième top, il sera neuf heures +cinquante-deux », puis « top... top... top... top. » +
++On pourrait dire que dans un premier temps, l'horloge parlante +définit une fonction, en assignant un signal (le quatrième top) +à ce qu'il signale (il est neuf heures cinquante-deux) ; une fois +cela clairement défini, l'horloge égrène les quatre +« top », et le quatrième renvoie à l'énoncé « il est +neuf heures cinquante-deux ». +
++En langage naturel, définir une fonction équivaut à dire : +quand je dirai le nom de la fonction, vous l'exécuterez. C'est +un acte de langage, comme quand un arbitre dit aux athlètes : +« Go ! » ; car tous les athlètes savent que le +signifiant « Go ! » (ou le coup de pistolet tiré en +l'air) signifie qu'ils doivent partir (la fonction a été définie dans +le règlement officiel de leur sport). +
++Définir une fonction est extrêmement simple : +
++nom () { +instruction1 +instruction2 +... +} ++
liste_des_fichiers
, effacer_fichier
, etc. Il
+est toutefois fortement recommandé :
+
+ls
, mutt
,
+etc. Cela pourrait en effet poser de graves problèmes, car les fonctions
+définies dans un programme sont prioritaires sur les commandes integrées
+du shell (cd
, alias
, etc.) et les commandes
+externes (mutt
, mozilla
, etc.). Le
+comportement devient difficilement prévisible, et surtout, le script
+sera très difficile à débuguer... +Comme l'interpréteur de scripts shell lit des scripts ligne à ligne, +il faut que la fonction soit définie avant d'être +appelée. Sinon, vous recevez un message de type : +« Command not found » (commande introuvable). Par convention, +il est préférable de placer toutes les définitions de +fonction vers le début du programme, avant toutes les +instructions. +
++Notre programme sera donc considérablement allégé : +
++#!/bin/sh + +# fichier "texcleaner" : efface les fichiers aux et log + +# Je définis ma fonction effacer_fichier + +effacer_fichier () { + # J'affiche son nom et demande confirmation pour l'effacer + echo "$1" + echo "Voulez-vous vraiment l'effacer ? (o/n)" + + # Je lis la réponse de l'utilisateur + read reponse + + # Et s'il dit oui, j'efface + if [[ $reponse == "o" ]] + then rm -f $1 + fi +} + +# Je prends chaque fichier .aux du répertoire courant +for fichier in *.aux + do + # J'appelle la fonction effacer_fichier pour chaque fichier + effacer_fichier $fichier +done + +# Je prends chaque fichier .log du répertoire courant +for fichier in *.log + do + # J'appelle la fonction effacer_fichier pour chaque fichier + effacer_fichier $fichier +done ++
+On économise une dizaine de lignes, on gagne en lisibilité, et les +risques de bogues diminuent considérablement car s'il y a des +corrections à apporter, c'est à un seul endroit du script, et non d'une +façon disséminée sur l'ensemble du programme. +
+
+Un détail de la fonction effacer_fichier
peut vous
+étonner : nous utilisons l'argument $1
. Comme vous le
+savez sans doute (sinon, lisez la page sur
+les commandes shell et leurs
+arguments), $1
désigne le premier argument passé à une
+commande ; or les fonctions peuvent recevoir des
+arguments, exactement de la même façon que les commandes. C'est
+même tout à fait normal, car les fonctions sont en fait des
+commandes comme les autres, à ceci près qu'elles ne sont valables qu'à
+l'échelle d'un script, et non à celle d'un système tout entier.
+
+Sachez enfin que des fonctions peuvent appeler d'autres +fonctions, ce qui donne une extrême souplesse à leur +utilisation. +
++En voici un bref exemple : +
++#!/bin/sh + +# Je définis une première fonction + +ecrire_sur_une_ligne () { + echo -n $* +} + +# Je définis une deuxième fonction qui appelle la première + +saluer_utilisateur () { + ecrire_sur_une_ligne "Bonjour " + echo $USER +} + + +# J'appelle la deuxième fonction +saluer_utilisateur + ++
+De là, passons à un conseil de programmation : abusez des +fonctions ! N'hésitez pas à créer des fonctions pour tout +et n'importe quoi. Vous en tirerez : +
+Un programme sans fonction n'est lisible que s'il est très +petit : une vingtaine de lignes tout au plus. Dès qu'un +programme dépasse cette taille, il cesse d'être intelligible d'un seul +coup d'œil pour un humain. +
++Supposons qu'un programme soit amené à répéter n fois un +même fragment de code comportant p lignes ; en +utilisant des fonctions on économise +(n - 1) x p lignes (toutes +les occurrences de la répétition, moins la définition de la fonction). +
++Ce gain de lignes est indissociable d'un gain de lisibilité, car les +répétitions fatiguent inutilement le cerveau humain. +
++En recopiant « à la main » des fragments identiques de codes, +vous risquez toujours la faute de frappe. Or, la moindre coquille peut +avoir des conséquences, au mieux, imprévisibles ; au pire, +catastrophiques. +
++En isolant les séries d'instructions dans des définitions de fonctions, +vous concentrez en un seul endroit la situation possible d'un bogue +donné. Vous pouvez circonscrire le bogue. +
++En utilisant des fonctions, vous donnez à vos programmes une grande +souplesse. Si vous voulez apporter une modification d'ensemble à un +programme, vous n'avez plus à corriger autant de morceaux du script +qu'il y a d'occurrences du même fragment : vous apportez vos +modifications de manière centralisée. +
++Pour décrire ce phénomène, on parle souvent de +modularité, ou encore +d'encapsulation. Il s'agit en effet de privilégier +l'assemblage simple d'éléments simples à l'assemblage complexe +d'éléments complexes. Ainsi, chaque fonction cache aux +fonctions qui l'appellent la complexité de son travail, pour leur offrir +une interface simple : le travail est divisé en autant de petites +tâches que nécessaires, au lieu d'une seule tâche gigantesque et +labyrinthesque. +
++Pour toutes ces raisons, n'hésitez surtout pas à créer des fonctions et +à les emboîter entre elles. La programmation vous paraîtra de plus en +plus facile, à mesure que vous réaliserez des tâches de plus en plus +complexes. +
++Vous pouvez revenir à la page centrale sur le +shell, d'où vous pourrez vous orienter vers d'autres parties du +cours. +
+ +
+Le shell est le programme que vous utilisez
+régulièrement sur les machines Unix de l'ENS (que ce soient les Sun, les
+PC sous Linux ou autres dérivés d'Unix), et qui interprète les
+commandes. Par exemple, vous y tapez pine
ou
+mutt
, forum
, cc
,
+mozilla
, etc. Le shell est ce programme qui attend vos
+instructions et vous dit quelque chose comme :
+
+ sas ~ $
+
+ +Le mot shell signifie « coquille » en anglais. Mais +quel rapport avec une coquille ? Eh bien, dans une coquille vous +pouvez mettre de l'eau, pour la porter ensuite à votre bouche ; +vous pouvez y mettre du sable avant de le verser dans des bocaux ; +en somme, une coquille est un récipient qui permet de manipuler toutes +sortes de contenus. Il en va de même du shell. C'est un outil en mode +texte qui permet l'exploitation d'un grand nombre de ressources de +l'ordinateur. +
++Ces pages vous donneront les rudiments pour exploiter les deux +principales fonctionnalités du shell : +
++Ces deux usages du shell sont tout à fait complémentaires. Pour une +utilisation quotidienne, il est important de connaître quelques bases de +l'utilisation du shell en ligne de commande ; et l'écriture de +scripts shell permet de personnaliser son système en automatisant des +tâches répétitives et fastidieuses. +
++Par ailleurs, la programmation en shell fournit un excellent marche-pied +pour apprendre la programmation. C'est un langage simple, qui permet +d'arriver rapidement à des résultats visibles. +
++Les pages que nous consacrons ici à l'apprentissage du shell vous +apprendront à manipuler cet outil précieux et puissant. Elles +sont accessibles à des débutants, même s'ils n'ont aucune connaissance +préalable avancée en informatique, ni même en mathématiques ; elles +sont accessibles à ceux qui ont une formation littéraire. +
+Si vous souhaitez utiliser le shell en ligne de commandes, nous vous +recommandons en priorité la lecture des pages suivantes :
+Si vous souhaitez apprendre à programmer en shell (écrire des +scripts), alors nous vous conseillons de lire également :
+.profile
+ .xinitrc
+ +Le shell, comme le normalien, ne connaît que deux états : +
++Le shell, une fois lancé, est inactif : il attend qu'on lui donne +des ordres. Quand on lui en donne un, il l'exécute ; et quand il a +terminé, il retourne à son état d'inactivité, en attente d'un nouveau +commandement. +
++Quand le shell est inactif, il affiche une invite +(prompt en anglais), qui ressemble à cela : +
+
+ chaland ~ $
+
+ +Un curseur, parfois clignotant, indique que le shell attend que vous lui +tapiez des instructions. +
++J'ai l'habitude de taper des commandes dans +le shell, et je vois qu'il réagit. Mais comment comprend-il ce que je +veux faire ? +
+
+Prenons un cas simple. Je tape la commande bonjour
à
+l'invite (prompt) du shell. Il va chercher à plusieurs endroits
+ce que j'entends par là :
+
bonjour
n'est pas une de
+ses commandes intégrées ; si c'est le cas, il l'exécute
+directement, sinon il passe à l'étape suivante ;PATH
, et
+qui indique le « chemin » où trouver les commandes que l'on
+appelle. Par exemple, si la variable PATH contient les
+répertoires :
+
+/usr/bin
/bin
et /home/toto/bin
,/usr/bin/bonjour
,/bin/bonjour
et /home/toto/bin/bonjour
;PATH
, il va renvoyer un message d'erreur
+en disant que désolé, il ne voit pas ce que l'on entend par
+bonjour
. Exemple :
+
+chaland ~ $ bonjour
+bonjour: Command not found
La variable PATH
consiste en une liste de répertoires
+séparés par des « :
». Si vous voulez voir à quoi
+ressemble votre PATH, tapez :
+
chaland ~ $ echo $PATH
+
+Certaines commandes du shell ne sont pas des programmes mais des
+commandes internes (builtins functions). Comme nous
+l'avons vu, elles sont directement reconnues et exécutées par le shell.
+Un exemple de commande interne est cd
; elle modifie
+le répertoire courant du shell.
+
+Attention : si vous créez un script (c'est-à-dire un programme
+écrit en langage shell) qui utilise cd
, il ne modifie pas
+le répertoire courant du shell qui lance ce script, mais celui d'un
+shell qui est créé à l'occasion de l'exécution de ce script, et qui
+meurt à la fin de cette exécution.
Exemple : je crée un script aller
qui contient les
+lignes suivantes :
+#! /bin/sh +cd $*+
+Nous aurons alors : +
+chaland ~ $ aller toto +chaland ~ $ cd toto +chaland ~/toto $+
+La répétition de commandes complexes en ligne de commande du shell est +rapidement fastidieuse ; aussi est-il très pratique de connaître +les bases de la programmation de scripts shell. Les scripts servent à +automatiser ou systématiser des tâches. +
+.profile
+
+Il existe un script spécial, qui est exécuté au moment où on se connecte. Ce
+script est contenu dans le fichier $HOME/.profile
. C'est ce
+fichier qui vous dit si vous avez du courrier, etc.
+
+Ce fichier est normalement mis à jour automatiquement par les scripts de la +config conscrits. Il est néanmoins possible de le modifier pour changer des +options. +
+.xinitrc
+ Il existe encore le script .xinitrc
, qui lance X ;
+X est le gestionnaire de fenêtres classique sous Unix.
+
+Le nombre de scripts possibles est illimité ; vous pouvez en créer +autant que vous voulez, selon vos besoins : c'est ainsi que l'on +personnalise son système et qu'on l'adapte à ses exigences, plutôt que +l'inverse. Pour en savoir plus sur la programmation en shell, consultez +les pages consacrées à la programmation de scripts +en shell. Ou bien vous pouvez revenir à la page +centrale sur le shell, d'où vous pourrez vous orienter vers d'autres +parties du cours. +
+ +echo
+ echo
+ read
+ +Un shell, quel qu'il soit, peut exécuter des commandes prises dans un +fichier. Un fichier contenant des commandes pour le shell est appelé un +script. C'est en fait un programme écrit dans le +langage du shell. Ce langage comprend non seulement les commandes que +nous avons déjà vues, mais aussi des structures de contrôle +(constructions conditionnelles et boucles). +
+
+Pour la programmation du shell, nous allons utiliser le shell
+sh
, qui est le plus répandu et standard. Ce que nous avons
+vu jusqu'ici s'applique aussi bien à sh
qu'à
+zsh
et aussi à csh
, à quelques exceptions
+près, que nous vous signalerons en temps voulu.
+Un script shell est un fichier en mode texte. C'est-à-dire que ce n'est +pas un fichier binaire, exécutable directement par la machine, mais +il doit être interprété. +
++L'interprétation signifie que chaque commande contenue dans un script +doit être lue par un programme, appelé interpréteur (et non +interprète, bizarrement) ; l'interpréteur analyse chaque commande +du script et la traduit « à la volée » en langage machine, ce +qui permet l'exécution du script. +
+Dans le cas des scripts shell, l'interpréteur, c'est le shell +lui-même. Dans d'autres langages, comme le Perl, l'interpréteur est un +programme indépendant du shell.
+Un script étant un fichier en mode texte, il doit être créé avec un +éditeur de texte. Un éditeur de texte est un programme dont la fonction +est... d'éditer du texte. Pour savoir plus à leur sujet, consultez les +pages sur les éditeurs.
+Mais quel éditeur choisir ?
+Tout d'abord, il faut savoir que n'importe quel éditeur est +capable d'ouvrir et d'écrire des scripts shell, et vous pouvez +tout à fait modifier avec n'importe quel éditeur de texte ce que vous +avez écrit avec n'importe quel autre.
+Mais il faut savoir aussi que certains éditeurs de texte sont
+plus appropriés que d'autres à l'écriture de scripts shell. Par
+exemple, nano
permet d'éditer des scripts comme tout autre
+éditeur, mais quand un script fait plus d'une dizaine de lignes, on
+commence à s'y perdre un peu. À l'inverse, emacs
et
+vim
+offrent quelques fonctionnalités qui deviennent rapidement
+indispensables :
L'indentation consiste à « aérer » votre texte selon sa +construction logique. C'est très utile, en particulier, quand on a un +script qui ressemble à ceci :
++#!/bin/bash +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" +select opinion in Pour Contre +do case $opinion in +# Laisser passer ceux qui répondent correctement à la question +"Pour"|"Contre") break;; +# Au cas où des zozos tapent sur autre chose que 1 ou 2 +*) continue;; +esac +done + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++
Même (surtout) si vous ne comprenez pas ce que tout cela veut dire, +vous conviendrez que ce n'est pas très lisible. Comparez donc avec +ceci :
++#!/bin/bash +# Fichier "vote-nir" + +echo "Êtes-vous favorable au remplacement du NIR par le VIR ?" + +select opinion in Pour Contre + do + case $opinion in + # Laisser passer ceux qui répondent correctement à la question + "Pour"|"Contre") break;; + + # Au cas où des zozos tapent sur autre chose que 1 ou 2 + *) continue;; + esac +done + +# M'envoyer le résultat par mail +echo "$opinion" | mail bourdieu ++
Les deux scripts sont interprétés exactement de la même façon : +l'interpréteur ignore les espaces et les lignes vides. Mais avec +l'indentation, on perçoit immédiatement (en tout cas, beaucoup plus +vite) la structure logique du script.
+Les éditeurs comme emacs
et
+vim
+analysent automatiquement le statut des différents mots et symboles que
+vous tapez et les colorent logiquement. Par exemple, avec emacs, vous
+pouvez avoir :
Ça n'a l'air de rien, dit comme cela, mais comparez vous-même et vous +verrez que ces outils sont indispensables, et que l'on y gagne au moins +la moitié du temps d'écriture et de débugage.
+emacs
ou vim
Apprenez donc, si ce n'est pas déjà le cas, les commandes de base +d'emacs ou de vim, ce sont des outils quasi incontournables au +programmeur shell, surtout débutant.
+ Heureusement, les tuteurs vous ont concocté des pages
+d'initiation : le tutorial
+emacs
et le tutorial
+vim
.
Vous hésitez entre emacs
et vim
? Tout
+le monde est passé par là. Jetez un coup d'œil à chacun des deux,
+puis concentrez-vous sur celui qui vous paraît le plus sympathique et le
+plus pratique ; et si vous hésitez encore, tirez-en un au
+sort, ils se valent vraiment.
Pour que le shell sache comment l'interpréter, un script shell doit +commencer par la ligne:
+#!/bin/sh+
+Il doit aussi avoir être exécutable (bit x
). Le
+#!/bin/sh
sur la première ligne indique que ce script doit être
+exécuté par le shell sh
dont on indique le chemin
+d'accès. Pour rendre un fichier exécutable, tapez :
+
chaland ~ chmod u+x fichier
+
+ +(pour en savoir plus sur les droits attachés à un fichier, consultez la +page sur les droits +d'accès). +
+
+Pour comprendre ce qui suit, vous devez savoir ce qu'est le
+PATH
. Si ce n'est pas le cas, lisez la présentation du shell.
+
+Quand vous exécutez un script, vous pouvez vous trouver à
+n'importe quel endroit de l'arborescence de vos répertoires. Si le
+répertoire courant ne se situe pas dans votre PATH
et
+que vous voulez exécuter un programme qui s'y trouve, vous ne pouvez
+pas taper :
+
clipper ~ commande
+
+ car si le répertoire courant n'est pas dans le
+PATH
, le shell n'ira pas y chercher
+commande
.
+Vous recevrez donc un message comme : +
+clipper ~ commande
+zsh: command not found: commande
+ +Pour que le shell comprenne où chercher votre commande, il faut donc +spécifier l'emplacement de la commande en donnant son chemin, qu'il +soit absolu : +
+clipper ~ /home/toto/repertoire/courant/commande
+
+ ou relatif :
+clipper ~ repertoire/courant/commande
+
+ ou encore sous la forme :
+clipper ~/repertoire/courant ./commande
+
+ ~/bin
+Il y a un certain nombre de commandes que l'on peut vouloir utiliser +depuis n'importe quel répertoire. Dans ce cas, il est fastidieux de : +
+Il suffit donc de mettre tous vos scripts dans un même
+répertoire, et de mettre ce répertoire dans le
+PATH
. Par convention, ce répertoire s'appelle
+bin
et se place dans votre répertoire personnel. Si
+votre répertoire personnel est /home/toto
, ce
+répertoire sera donc /home/toto/bin
.
+Commencez donc par créer ce répertoire : +
+clipper ~ mkdir bin
+
+
+Ensuite, vérifiez qu'il soit bien dans votre PATH
:
+
clipper ~ echo $PATH
+
+ Si vous voyez par exemple $HOME/bin
+dans votre PATH
, alors c'est bon, tous les fichiers
+exécutables situés dans ce répertoire seront accessibles depuis
+n'importe quel répertoire.
+
+Si ce n'est pas le cas, il faut ajouter ce répertoire au
+PATH
. Pour cela, ajoutez dans le fichier de configuration
+de votre shell, par exemple le fichier .zshrc
, la
+ligne :
+
PATH=$PATH:$HOME/bin+
Cette ligne indique que la prochaine fois que vous
+ouvrirez votre shell, le répertoire bin
figurera dans
+votre PATH
.
+
Si vous manipulez déjà le shell en ligne de commande, vous +pouvez commencer vos premiers scripts. Un script shell est en effet +avant tout une succession de commandes. +
+Par exemple, si vous avez coutume de taper successivement, quand +vous vous loguez à l'ENS : +
+clipper ~ mozilla & +clipper ~ mutt ++
vous pouvez vous créer le script suivant dans le
+fichier ~/bin/amorce
:
+#!/bin/sh + +mozilla & +mutt ++
Ainsi, dès que vous vous connectez, vous pouvez taper
+amorce
dans le shell, et vos commandes s'exécuteront
+automatiquement.
+Presque tous les langages informatiques autorisent d'insérer des +commentaires ; le shell n'échappe pas à la règle. Pour +cela, il suffit de faire précéder chaque ligne de commentaire du +caractère « # ». Exemple : +
++#!/bin/sh + +# Tout ce que j'écris ici ne sera pas lu. +echo "Ce que je tape ici sera lu." ++
+Les lignes de commentaire sont tout bonnement ignorées par +l'interpréteur. Alors, allez-vous demander, à quoi servent-elles si +elles ne servent à rien ? Elles sont indispensables pour tout +programmeur, car elles lui permettent de « commenter » son +programme, c'est-à-dire d'écrire ce qu'il veut, comme dans la marge d'un +livre. +
++Les commentaires jouent pour beaucoup dans la lisibilité d'un programme +par un humain. Car les lignes de commande pures sont relativement +austères ; des commentaires permettent de les décrire à l'intention +d'un être humain. +
++Sans doute allez-vous vous demander quel être humain cela peut bien +intéresser. Eh bien, quelqu'un d'autre que vous qui lit ce code ; +ou bien vous-même, dans un mois, un an, une décennie, ou plus, quand +vous aurez tout oublié de ce programme et de son fonctionnement. +
++N'hésitez donc pas à recourir abondamment aux commentaires, qui +accroissent la lisibilité de votre programme, même s'ils n'ont +absolument aucune influence directe sur son fonctionnement intrinsèque. +
++Les lignes blanches ne sont pas interprétées non +plus. N'hésitez donc surtout pas à espacer votre script, les +lignes blanches ne consomment presque rien en termes d'espace disque, ce +n'est donc pas une ressource rare ; et elles facilitent +considérablement la lecture pour un être humain. +
++Pourquoi espacer son script ? Pourquoi insérer des +commentaires ? Pour une seule et même raison : +votre script doit être lisible. Pourquoi être +lisible ?
+D'abord, pour autrui : si d'autres gens lisent votre script, il +doit être intelligible, et les passages complexes doivent être +explicités par des commentaires.
+Ensuite, pour vous-même ; au moment où vous écrivez un +script, vous comprenez tout, naturellement ; mais si vous le +relisez dans quelques mois, voire quelques années, les passages +obscurs risqueront d'être incompréhensibles, ce qui est +particulièrement pénible quand on essaye de débuguer +un programme, c'est-à-dire d'en corriger les erreurs. +
+echo
+ +Maintenant que vous savez comment on peut exécuter un script, il s'agit +de le remplir... Commençons par ce qu'il y a de plus simple : +afficher du texte. +
+
+Traditionnellement, on commence par faire un programme qui affiche
+simplement la ligne « Hello world » (ce qui signifie en
+anglais : bonjour au monde entier). Faites donc un fichier
+helloworld
contenant les lignes suivantes :
+
+#!/bin/sh + +# Fichier "helloworld" +echo "Hello world" ++
+Exécutez ensuite ce programme, par exemple en tapant, dans le répertoire +où il se trouve : +
+clipper ~ $ ./helloworld
+Hello world
+ +Ça y est, vous avez créé votre premier programme ! Lancez-le autant +de vous que vous voulez, vous avez bien mérité d'être fier de vous. +
++Exercice : francisez ce script. +
+echo
+
+La commande echo
sert à afficher du texte. Chaque ligne de
+texte est écrite sur une ligne à part. Exemple :
+
+#!/bin/sh +# Fichier "bonjour" + +echo "Bonjour... " +echo "Comment allez-vous ?" ++
affiche les lignes suivantes :
++Bonjour... +Comment allez-vous ? ++
et non :
++Bonjour... Comment allez-vous ? ++
+Si vous voulez annuler le retour chariot qui a lieu par défaut à la fin
+de toute commande echo
, il faut utiliser l'option
+-n
. Le programme sera alors :
+
+#!/bin/sh + +echo -n "Bonjour..." +echo "Comment allez-vous ?" ++
+Alors seulement, vous pourrez avoir : +
++Bonjour... Comment allez-vous ? ++
Faisons mieux encore : votre script va citer des variables. Pour +savoir ce que sont des variables, allez voir la page sur les variables.
+La variable USER
contient le login de
+l'utilisateur ; la variable PWD
(pour print
+working directory) affiche le répertoire courant. Faisons donc le
+script suivant :
+#/bin/sh +# Fichier "mon-pwd" + +echo "Bonjour $USER..." +echo "Tu es actuellement dans le répertoire $PWD." ++
Comme vous pouvez le remarquer, pour citer le contenu d'une variable, +on ajoute le signe dollar ($) devant son nom.
+read
+ Parler c'est bien, écouter c'est mieux. Jusqu'ici, votre programme +est capable de parler, de dire bonjour, mais il n'est même pas capable +de vous appeler par votre nom, tout juste par votre login, ce qui n'est +pas très intime...
+
+Nous allons donc lui donner la faculté d'écouter, grâce à la commande
+read
. Prenons le script suivant :
+
+#!/bin/sh +# Fichier "mon-nom" + +echo "Bonjour... Comment vous-appelez-vous ?" +read nom +echo "Je vous souhaite, $nom, de passer une bonne journée." ++
Vous connaissez déjà la commande echo
. La commande
+read
permet de lire des variables. Si vous exécutez ce
+script, après avoir affiché la ligne
+Bonjour... Comment vous-appelez-vous ? ++
le shell va attendre que vous tapiez votre
+nom. Tapez par exemple Toto
, puis appuyez sur Entrée, et
+vous verrez :
+Bonjour... Comment vous-appelez-vous ? +Toto +Je vous souhaite, Toto, de passer une bonne journée.+
read
doit être suivie du seul nom de la
+variable, non précédé du signe dollar. Le signe
+dollar ne doit précéder le nom de la variable que lorsque l'on cite son
+contenu.
+
+La commande read
permet également de lire plusieurs
+variables. Il suffit pour cela d'indiquer à la suite les noms des
+différentes variables. Exemple :
+
+#!/bin/sh +# Fichier "administration" + +echo "Écrivez votre nom puis votre prénom :" +read nom prenom +echo "Nom : $nom" +echo "Prénom : $prenom" ++
Vous aurez :
++Écrivez votre nom puis votre prénom : +Hugo Victor +Nom : Hugo +Prénom : Victor ++
Nous avons vu comment utiliser read
avec un seul
+argument et avec plusieurs arguments ; il reste à voir l'usage de
+read
sans argument. Oui, c'est possible !
+Cela équivaut simplement à attendre un réaction de l'utilisateur, mais
+sans mémoriser ce qu'il tape.
Concrètement, cela est très utile après un message « Appuyez +sur Entrée pour continuer. » Exemple :
++#!/bin/sh +# Fichier "continuer" + +echo "Quelle est la différence entre un canard ?" +echo "(Appuyez sur Entrée pour avoir la réponse)" +read +echo "Les pattes, surtout la gauche." ++
+Vous connaissez maintenant les bases de la programmation en shell. Vous +avez déjà de quoi écrire de nombreux scripts qui peuvent vous faciliter +la vie de tous les jours. Pour cela, lorsque vous ressentez un besoin, +ne vous demandez pas si vous avez les connaissances requises pour écrire +un programme donné, mais plutôt comment, à partir de vos +connaissances actuelles, vous pourriez le réaliser. +
++Pour poursuivre votre apprentissage, vous pouvez passer à la lecture des +pages suivantes : +
++Ou bien vous pouvez revenir à la page centrale sur +le shell, d'où vous pourrez vous orienter vers d'autres parties du +cours. +
+ +Un test est une opération dont le but est d'évaluer la valeur +d'une expression. Cette expression peut être simplement +l'existence de quelque chose (par exemple, d'un fichier, ou +bien d'une variable), ou ce peut être une proposition.
+Concrètement, cela veut dire qu'un programme n'est pas limité +à la possibilité de donner des ordres : il peut aussi poser des +questions, et agir comme vous le décidez en fonction des +réponses apportées aux questions.
+Posons par exemple le principe suivant : « Si Dieu n'existe +pas, alors tout est permis. » Nous allons ensuite tester si Dieu +existe, et s'il n'existe pas, nous saurons que tout est permis. Autre +exemple : posons que « si le train passe sous le tunnel avant +que j'aie compté jusqu'à dix, alors Manek est vivant. » Je vais +donc tester si le train passe sous le tunnel avant que j'aie compté +jusqu'à dix, et si c'est le cas, alors c'est que Manek est vivant. C'est +aussi simple que cela.
+Le shell propose deux principales façons de réaliser un test ; +ces deux méthodes sont équivalentes :
+test expression
+ [ expression ]
+ +Les deux commandes suivantes reviennent donc au même :
+clipper ~ $ test -f foo || echo "Le fichier foo n'existe pas." +Le fichier foo n'existe pas. +clipper ~ $ [ -f foo ] || echo "Le fichier foo n'existe pas." +Le fichier foo n'existe pas. ++
Un test renvoie un code de retour. Un code de retour
+est un nombre (0 ou autre), qui correspond à une réponse de
+type « vrai » ou « faux ». C'est ce code de
+retour qui permet la manipulation des tests dans des structures de
+contrôle comme if
, etc.
+Le code de retour 0 correspond à la réponse +« vrai ». Pour répondre « faux », le programme +répond... autre chose (ce peut être 1, 2, -1 ou autre). +
+Par exemple, un conducteur de voiture utilise le programme +suivant :
++while [[ "$couleur_du_feu" != "vert" ]] +do attendre +done + +démarrer ++
!
»L'opérateur logique « non » inverse le code de +retour d'une commande, c'est-à-dire renvoie vrai si elle +renvoie faux, et vice versa.
+On utilise cet opérateur en précédant une condition d'un point +d'exclamation (« ! »).
+Pour illustrer l'usage de cet opérateur, voici quatre cas de figure +différents :
++# Premier cas +[ -f foo ] && echo "Le fichier foo existe." ++
Dans l'exemple précédent, le shell teste si le
+fichier foo
existe. Comme il n'existe pas, le code de
+retour de ce test est faux (un nombre différent de 0). Or, l'opérateur
+« && » n'exécute ce qui suit que si le code de retour est vrai
+(i.e. 0) car si a
est faux
+alors a&&b
sera aussi nécessairement faux. Comme
+ce n'est pas le cas, les commandes ne sont pas exécutées.
+# Deuxième cas +[ -f foo ] || echo "Le fichier foo n'existe pas." +Le fichier foo n'existe pas. ++
Dans cet exemple, l'opérateur n'est plus
+« && » mais « || ». Les commandes ne s'exécutent que si le
+code de retour vaut faux (i.e. différent de 0); comme c'est le cas,
+elles sont exécutées. En effet si a
est vrai
+alors a||b
sera aussi nécessairement vrai, ce n'est pas la
+peine de l'exécuter.
+# Troisième cas +[ ! -f foo ] && echo "Le fichier foo n'existe pas." +Le fichier foo n'existe pas. ++
Ici, l'opérateur est de nouveau « && » ;
+mais contrairement aux deux exemples précédents, le test n'est
+plus [ -f foo ]
mais [ ! -f foo ]
. Par
+conséquent, le code de retour est vrai (i.e. 0), et les commandes sont
+exécutées.
+# Quatrième cas +[ ! -f foo ] || echo "Le fichier foo existe." ++
Voici la dernière combinaison possible. Le code de +retour est vrai (i.e 0), mais il fallait faux (e.g. 1) pour que les +commandes soient exécutées.
+Ces quatre exemples correspondent aux énoncés suivants :
+foo
existe, alors il faut
+écrire : « Le fichier foo existe. ».foo
existe, alors il
+faut écrire : « Le fichier foo n'existe pas. ».foo
n'existe pas, alors il
+faut écrire : « Le fichier foo n'existe pas. ».foo
n'existe pas,
+alors il faut écrire : « Le fichier foo existe. ».if
Dans un script, outre la formulation précédente, on pourra +écrire :
++# Premier cas +if [ -f foo ] + then echo "Le fichier foo existe." +else continue +fi + +# Deuxième cas +if [ -f foo ] + then continue +else echo "Le fichier foo n'existe pas." +fi + +# Troisième cas +if [ ! -f foo ] + then echo "Le fichier foo n'existe pas." +else continue +fi + +# Quatrième cas +if [ ! -f foo ] + then continue +else echo "Le fichier foo existe." +fi ++
-a
»L'opérateur « et » renvoie 0 (vrai) si et seulement si les +différentes conditions sont toutes réalisées ; si au moins l'une +d'entre elles ne l'est pas, le code de retour est 1 (faux). On note +cet opérateur en insérant « -a » entre les différentes +conditions. Exemples :
++touch foo # donc foo existe +rm bar # donc bar n'existe pas + +# [ -f foo ] = vrai si le fichier foo existe +# [ ! -f bar ] = vrai si bar n'existe pas + +# à n'exécuter que si foo existe ET que bar n'existe pas. +[ -f foo -a ! -f bar ] && + mv foo bar ++
Autres formulations possibles : +
++test -f foo -a ! -f bar +[ -f foo ] -a [ ! -f bar ] +[[ -f foo && ! -f bar ]] ++
Si vous débutez, vous n'êtes pas tenu de retenir par +cœur toutes les combinaisons possibles. Sachez simplement les +reconnaître si vous les lisez quelque part ; et pour vos +propres scripts, vous il vous suffit de savoir bien manipuler la syntaxe +qui vous paraît la plus lisible.
+-o
»Pour réaliser la condition de l'opérateur « ou », il suffit +qu'une seule des conditions qu'il rassemble soit vraie :
+Exemple :
++if [[ "$fichier" == "fichier_interdit" -o ! -f "$fichier" ]] + then echo "Je ne veux pas lire $fichier ou bien il n'existe pas." +fi ++
$fichier
vaut
+"fichier_interdit"
, il n'est pas lu ;$fichier
n'existe pas, il n'est pas lu ;$fichier
vaut
+"fichier_interdit"
et qu'en plus il n'existe pas,
+il n'est pas lu ;$fichier
ne vaut pas
+"fichier_interdit"
et qu'il existe bien, il est
+lu.+Le shell permet d'opérer des calculs arithmétiques, même s'il est moins +puissant que d'autres langages (Perl, Scheme, C, etc.) pour cela. +
++Les opérateurs sont les suivants : +
+-eq
(equal) : « égal à » (signe
+« = ») ;-ne
(not equal) : « différent
+de » (signe « ≠ ») ;-gt
(greater than) : « strictement
+supérieur à » (signe « > ») ;-lt
(lesser than) : « strictement
+inférieur à » (signe « < ») ;-ge
(greater or equal) : « supérieur
+ou égal à » (signe « ≥ ») ;-le
(lesser or equal) : « inférieur
+ou égal à » (signe « ≤ ») ;+On utilise ces opérateurs entre deux nombres ou variables +numériques. Par exemple : +
++#!/bin/sh +if test 2 -lt 3 +then echo "C'est normal." +fi + +if test 2 -gt 3 +then echo "C'est absurde." +fi + +petit=2 +grand=3 + +if test $petit -ne 3 +then echo "C'est normal." +fi + +if test 2 -eq $grand +then echo "C'est absurde." +fi ++
+Si vous exécutez ce programme, vous obtenez : +
++C'est normal. +C'est normal. ++
+Une grande partie de la puissance du shell se déploie dans sa faculté de +manipuler des fichiers. +
++Les principaux opérateurs disponibles sont : +
+-e
(exists) : vérifie l'existence d'un
+fichier ;-f
(file) : vérifie l'existence d'un
+fichier, et le fait qu'il s'agisse bien d'un fichier au sens
+strict ;-d
(directory) : vérifie l'existence d'un
+répertoire ;-L
(link) : vérifie si le fichier est un
+lien symbolique ;-s
(size) : vérifie qu'un fichier n'est
+pas vide ;-r
(readable) : vérifie si un fichier peut
+être lu ;-w
(writable) : vérifie si un fichier peut
+être écrit ou modifié ;-x
(writable) : vérifie si un fichier peut
+être exécuté ;-nt
(newer than) : vérifie si un fichier
+est plus récent qu'un autre ;-ot
(older than) : vérifie si un fichier
+est plus ancien qu'un autre.Exemple :
++#!/bin/sh + +if test -e ~/.emacs + then echo "~/.emacs existe." + else echo "~/.emacs n'existe pas." +fi + +if test -d ~/.emacs + then echo "~/.emacs est un répertoire." + else echo "~/.emacs n'est pas un répertoire." +fi + +if test -f ~/.emacs + then echo "~/.emacs est un fichier." + else echo "~/.emacs n'est pas un fichier." +fi + +if test ~/.vimrc -nt ~/.emacs + then "~/.vimrc est plus récent que ~/.emacs." +fi ++ +
+Une variable est l'assignation d'une étiquette à un contenu ; ce +contenu, comme l'indique le mot « variable », peut changer +autant que l'on veut ; l'assignation de l'étiquette à ce contenu, +elle, est fixe, aussi longtemps que l'on ne dissout pas la +variable.
++La notion de variable est commune à presque tous les langages +informatiques, et en particulier aux langages de programmation. Ceux qui +ont déjà manipulé des langages sont donc familiers avec cette +notion. Pour les autres, un petit exemple les aidera peut-être à la +saisir. +
++Mettons que vous programmiez un hachoir, comme nous le proposions sur la +page consacrée au shell en ligne de +commande. Un hachoir est un instrument dangereux, à ne pas mettre +à la portée des enfants. Robert le jardinier, qui a conçu ce +hachoir, veut être le seul à pouvoir l'utiliser, sans quoi le +petit Émile pourrait se blesser en y mettant le doigt.
+ Ainsi, il va dire au programme hachoir
de vérifier la
+variable USER
, qui contient le nom de l'utilisateur. Si le
+nom « Robert » est associé à l'étiquette USER
,
+alors le programme se met en route ; sinon, il dit à l'utilisateur
+de ne pas utiliser cet instrument sans la présence d'un adulte, et de
+bien regarder des deux côtés avant de traverser la rue.
+
+Certaines variables sont prédéfinies, par exemple
+USER
; mais on peut en créer autant que l'on veut. Par
+exemple, si Robert veut autoriser d'autres adultes que lui à utiliser
+son hachoir, il peut faire que le programme demande à l'utilisateur quel
+âge il a ; la réponse est enregistrée dans la variable
+age
; ensuite, le programme va examiner le contenu de
+cette variable. Si age >= 18
, alors le hachoir peut se
+mettre en route ; mais si age < 18
, le hachoir
+refuse de se mettre en marche.
+
+En shell, pour désigner le contenu d'une variable, on écrit le nom de la
+variable précédé du signe dollar. Exemple : echo
+$HOME
affiche le nom du répertoire personnel de l'utilisateur,
+mémorisé par la variable HOME
.
+
+Par convention, les variables relevant du système, comme
+HOME
, USER
et beaucoup d'autres, sont en
+majuscules, tandis que l'on recommande d'écrire en minuscules les
+variables que l'on se crée soi-même. On évite ainsi la désagréable
+surprise de remplacer une variable importante et de casser tout ou
+partie de son système.
+
+Les noms de variables sont en effet sensibles à la casse :
+USER
, user
, User
,
+uSeR
etc. sont des variables différentes.
+
+La façon de donner une valeur à une variable varie selon le type de shell +utilisé : +
+C-Shell (csh
, tcsh
,
+lcsh
) : on utilise la commande setenv
:
+
chaland ~ $ setenv foo bar +chaland ~ $ echo $foo +bar+
+Famille des Bourne Shell (sh
, bash
,
+zsh
, ksh
) : on utilise export
:
+
chaland ~ $ foo=bar +chaland ~ $ export foo +chaland ~ $ echo $foo +bar+
+Les valeurs des variables sont accessibles aux commandes lancées par le
+shell. L'ensemble de ces valeurs constitue l'environnement.
+On peut aussi supprimer une variable de l'environnement avec
+unsetenv
(C-Shell) ou unset
(Bourne Shell).
+
+Quelques variables d'environnement: +
+DISPLAY
: L'écran sur lequel les programmes X
+travaillent. Cette variable est souvent de la forme :
+machine.somehost.somewhere:0.0
Si cette variable est vide,
+c'est qu'il n'y a pas d'affichage graphique possible. PRINTER
: pour les commandes d'impression. Contient le
+nom de l'imprimante sur laquelle il faut envoyer vos fichiers. EDITOR
: utilisée par mutt
,
+forum
, et beaucoup d'autres commandes. Contient le nom de
+votre éditeur de textes préféré. VISUAL
: la même chose qu'EDITOR
. SHELL
: contient le nom de votre shell. HOME
: contient le nom de votre répertoire personnel.
+USER
: contient votre nom de login. LOGNAME
: la même chose que USER
. PATH
: contient une liste de répertoires dans lesquels
+le shell va chercher les commandes.
+
+Exercice : Assurez-vous que /usr/local/games/bin
se trouve
+bien dans votre PATH.
+
+Dans les scripts, on peut utiliser des variables définies à l'extérieur
+(avec setenv
ou export
), mais aussi définir ses
+variables locales propres au script. On donne une valeur à une variable avec
+une commande de la forme
+nom-de-variable=valeur
. Les variables sont
+utilisées pour stocker des informations.
+
+On a aussi des variables spéciales, initialisées automatiquement au +début du script: +
+
+ $0
+ |
+ Le nom de la commande (i.e. : du script) | +
$1 , $2 , etc. |
+ Le premier, deuxième, etc, argument passés au script. | +
+ $*
+ |
+ La liste de tous les arguments passés au script. | +
+ $#
+ |
+ Le nombre d'arguments passés au script. | +
+ $?
+ |
+ Le code de retour de la dernière commande lancée. | +
+ $!
+ |
+ Le numéro de process de la dernière commande lancée en tâche de fond. | +
+ $$
+ |
+ Le numéro de process du shell lui-même. | +
+Les répertoires sont appelés directories en anglais. Un répertoire +est une boîte qui peut contenir des fichiers et d'autres répertoires (comme +les catalogues de MS-DOS, ou les dossiers du Macintosh). Des exemples de +répertoires : +
++/users +/bin +/usr/local/bin ++
+On désigne les fichiers (et les répertoires) contenus dans un répertoire +par : +
+nom de répertoire/nom de fichier+
+Par exemple : /bin/sh
est le fichier sh
contenu
+dans le répertoire /bin
.
+
+Les répertoires sont organisés en arbre, c'est-à-dire qu'ils sont tous +contenus dans un répertoire appelé la racine, et désigné par "/". +Chaque répertoire contient deux répertoires spéciaux : +
+.
désigne le répertoire lui-même...
désigne le père du répertoire.
+Exemples :
+/users/92/.
est le même répertoire que /users/92
,
+/users/92/..
est le même répertoire que /users
.
+
+Chaque utilisateur a un home-directory, ou répertoire
+personnel. C'est l'endroit ou il range ses fichiers. Sur les machines
+de la salle S, le répertoire personnel a pour nom
+/users/année/groupe/nom-de-login
.
+
Exemples :
+/users/92/maths/vous
,
+/users/formel/doligez
.
+
+On peut aussi désigner le répertoire personneld'un autre utilisateur par le
+nom de login de l'utilisateur précédé d'un tilde (le caractère tilde).
+Exemple : ~leroy
.
+
+Un nom de fichier qui commence par /
est dit absolu.
+Il est interprété en partant de la racine, et en descendant dans l'arbre.
+Un nom de fichier qui ne commence pas par /
est
+relatif. Il est interprété en partant du répertoire
+courant. Le répertoire courant est initialement (au moment où vous vous
+connectez) votre répertoire personnel ; le répertoire courant est le
+répertoire dans lequel vous vous trouvez.
+
+Exemples :
+/users/formel/doligez/foo
est un nom (ou chemin) absolu.
+bar
est un nom relatif. Il désigne un fichier appelé
+bar
et situé dans le répertoire courant. Le fichier exact dont
+il s'agit dépend donc de votre répertoire courant.
+
+Remarque :
+Le seul caractère spécial dans les noms de fichiers est le slash
+/
. Un nom de fichier peut avoir jusqu'à 255 caractères, et
+contenir un nombre quelconque de points.
+
pwd
+ +Affiche le répertoire courant. +Exemple : +
+chaland ~ $ pwd
+/users/formel/doligez
+ cd
+ +Change le répertoire courant. Si on ne lui donne pas d'argument, on +retourne dans le répertoire personnel. Exemple : +
+chaland ~ $ pwd +/users/formel/doligez +chaland ~ $ cd .. +chaland /users/formel/ $ cd +chaland ~ $ pwd +/users/formel/doligez+
mkdir
+
+Crée un nouveau répertoire, (presque) vide. Il ne contient que
+.
et ..
.
+
rmdir
+
+Supprime un répertoire vide. Si le répertoire contient autre
+chose que .
et ..
ça ne marche pas.
+
mv
+ +Renomme un fichier, mais peut aussi le déplacer d'un répertoire à +un autre. Exemple : +
+chaland ~ $ mkdir foo +chaland ~ $ nano bar +chaland ~ $ mv bar foo/bar2 +chaland ~ $ cd foo +chaland ~/foo $ pwd +/users/formel/doligez/foo +chaland ~/foo $ ls +bar2+
ls
+
+Liste les fichiers et les répertoires qu'on lui donne en arguments,
+ou le répertoire courant si on ne lui donne pas d'argument. ls
+ne liste pas les fichiers dont le nom commence par .
C'est
+pourquoi .
et ..
n'apparaissent pas ci-dessus.
+
+Il est parfois ennuyeux d'avoir à taper un nom complet de fichier comme
+nabuchodonosor
. Il est encore plus ennuyeux d'avoir à taper une
+liste de fichier pour les donner en arguments à une commande, comme :
+cc -o foo bar.c gee.c buz.c gog.c
. Pour éviter ces problèmes,
+on peut utiliser des jokers (wildcards en anglais).
+
+Une étoile *
dans un nom de fichier est interprétée par le shell
+comme « n'importe quelle séquence de caractères ».
+Exemple : cc -o foo *.c
.
+
+Pour interpréter l'étoile, le shell va faire la liste de tous les noms de
+fichiers du répertoire courant qui ne commencent pas par .
et
+qui finissent par .c
Ensuite, il remplace *.c
par
+cette liste (triée par ordre alphabétique) dans la ligne de commande, et
+exécute le résultat, c'est-à-dire par exemple : cc -o foo bar.c buz.c
+foo.c gee.c gog.c
.
+
+On a aussi le ?
, qui remplace un (et exactement un) caractère
+quelconque. Par exemple, *.?
liste tous les fichiers sont
+l'extension n'a qu'une seule lettre.
+
+La forme [abcd]
remplace un caractère quelconque parmi
+a
, b
, c
, d
. Enfin,
+[^abcd]
remplace un caractère quelconque qui ne se trouve pas
+parmi a
, b
, c
, d
.
+
+Exemple : echo /users/*
+affiche la même chose que
+ls /users
+(La commande echo
se contente d'afficher ses arguments.)
+
+Attention : +
+mv *.c *.bak
, car le shell va
+passer à
+mv
les arguments foo.c bar.c foo.bak bar.bak
, et
+mv
ne sait pas quel fichier remplacer.
+rm * ~
, le shell remplace
+l'étoile par la liste des fichiers présents, et ils seront tous effacés. Si
+vous tapez rm *~
, seuls les fichiers dont le nom finit par un
+tilde seront effacés.
+
+Interlude : comment effacer un fichier nommé ?*
? On ne peut
+pas taper rm ?*
car le shell remplace ?*
par la
+liste de tous les fichiers du répertoire courant. On peut taper rm -i
+*
qui supprime tous les fichiers, mais en demandant confirmation à
+chaque fichier. On répond no
à toutes les questions sauf
+rm: remove ?*?
. Autre méthode : utiliser les mécanismes de
+quotation (voir ci-dessous).
+
Le contenu de cette page est assez aride, mis à part pour les deux +premiers paragraphes, et nettement plus difficile à comprendre que le +reste de cette documentation. Si vous êtes néophyte en informatique, +lisez plutôt notre page d'introduction à +Unix.
+Sun Microsystems est un fabricant américain d'ordinateurs, qui + vend(ait) les ordinateurs qui équipaient l'ENS il y a quelques années. + Le mot « station » est une abréviation de « station de travail », un + vieux vocable désignant les machines reliées en réseau et disposant + d'une puissance de calcul propre (différant en cela des terminaux).
+Unix est le nom générique d'un certain type de systèmes +d'exploitation pour machines haut de gamme. Pour +des raisons historiques, ces machines se regroupent en (en gros) +deux catégories, System V et BSD. La version qui tourne sur les stations +Sun de l'ENS s'appelle Solaris, c'est un System V. La plupart des PC de +l'ENS tournent sous Fedora, une distribution Linux. Ce n'est pas à +proprement parler un Unix (il n'appartient à aucune des deux familles +BSD et SystemV), mais son fonctionnement est très voisin de celui +d'Unix. La présence de deux systèmes différents explique les petites +différences de comportement que vous pouvez observer entre les stations +Sun et les PC FreeBSD.
+Unix est sans conteste le système préféré des informaticiens de l'ENS. +Veuillez donc m'excuser d'être partial dans les questions qui vont +suivre...
+clipper
, le serveur des
+élèves, point névralgique du résdeau de l'École, ne réamorce en
+moyenne qu'une fois tous les trois mois (et pour faire des opérations
+de maintenance, rajouter des disques durs, etc.) ! Cela permet de
+faire de très longs calculs sur plusieurs semaines, ou bien de faire
+de nuit de grosses opérations réseau.C:\WINDOWS\SYSTEM
»). C'est pourquoi Unix est
+extrêmement configurable et s'adapte à tous types d'environnement, de
+la plus petite à la plus grosse des machines, avec ou sans réseau, et
+quelle que soit la marque de l'ordinateur considéré.Bon, soyons vraiment honnêtes : la qualité d'Unix se traduit par un +aspect spartiate décourageant, et il est vrai que la sécurité coûte un +peu en performances (mais la puissance correspondante est de toute +façon perdue sous Windows 95 ou MacOS). Pourtant, si autant d'efforts +avaient été consacrés à l'aspect extérieur d'Unix qu'il y en eut pour +Windows et le Système 7, nul doute qu'il les ridiculiserait +aujourd'hui sur tous les tableaux ! Mais programmer des interfaces +utilisateur est un travail long et peu passionnant (c'est toujours la +même chose), et l'histoire d'Unix est surtout faite de programmeurs +bénévoles.
+Depuis plusieurs années, avec le développement de Linux et son +ouverture au grand public, des interfaces graphiques se développent; +citons en particulier KDE (dont une partie des logiciels sont +installés sur les stations), Gnome, etc. Unix ne se traduit plus +forcément par « interface fruste »...
+Parce qu'il est plus facile de dire « trimaran » que « la station +Sun 4 située à gauche le mur Sud de la salle S ». Il est également +plus facile de dire « trimaran » que « la station trimaran » (ou même +pire, « la station 42 »), ce qui conduit à une personnalisation +affectueuse (certains diront lobotomique) des machines par les +habitués...
+Quoi qu'il en soit, les machines administrées par le SPI sont
+repérables au fait qu'elles ont un nom de bateau ; parmi elles,
+clipper
est le serveur des élèves à Ulm (il est dans une
+salle du niveau -2 du DI climatisée et inaccessible au commun des
+mortels) ; vedette
est le serveur de Jourdan ;
+paquebot
est le serveur de Montrouge.
Les autres groupements de machines respectent également l'unité de
+noms : ainsi, les machines du DMI ont un nom de végétal ou de
+champignon, dont l'embranchement caractérise le bâtiment et l'étage, et
+les machines des biologistes ont des noms de dieux (horus
+est leur serveur).
Pour connaître le nom d'une machine dans une salle d'informatique +élèves, il y a deux méthodes :
+steamer
(par
+exemple) affiche steamer login:
(c'est le cas le plus
+simple). Et pour un utilisateur de la config conscrits, le nom de sa
+machine apparaît dans l'invite de ses fenêtres de terminal une fois qu'il
+est logué ; par exemple :
+ steamer ~ $
+
+ qui
:
+ qui
+ |
+ Salle S | +
+ qui t
+ |
+ Salle T | +
+ qui i
+ |
+ Infi | +
+ qui j
+ |
+ Salle de Jourdan | +
+ qui m
+ |
+ Salle de Montrouge | +
+ qui p
+ |
+ Salle des physiciens | +
root
?
+ root
est le nom de login traditionnel de l'administrateur
+système. Il a tous les droits, c'est-à-dire qu'aucune opération ne lui
+sera refusée sous prétexte qu'elle outrepasse la limite de l'utilisateur
+root
(par contre, il est toujours sous le coup de la
+protection contre le plantage par exemple). Il peut donc lire votre
+courrier électronique, savoir quels programmes vous avez utilisés,
+suspendre ou fermer votre compte, etc. Ces droits sont nécessaires à
+assurer le fonctionnement du système : que feriez-vous sinon lorsque vous
+oubliez votre mot de passe ?
Mais à l'ENS, les administrateurs sont intègres et dignes de confiance +et ne se servent presque jamais de ce droit de « super-utilisateur » : +même si votre boîte aux lettres électronique déborde, l'administrateur en +fait une copie chez vous et ne regarde pas dedans (le cas s'est déjà +présenté).
+« Devenir root » est un fantasme courant d'une certaine frange de la +population de la salle S, parce que c'est interdit et théoriquement +impossible (donc tentant) et que les informaticiens se divisent en deux +sous-castes : ceux qui savent passer root sans y être autorisés et les +autres... C'est la raison d'être de la banderole en salle S. N'oubliez +jamais que Jacques Beigbeder n'est pas un imbécile, et que si vous vous +faites prendre la sanction sera très lourde...
+Non (sur les Suns, on appelle cela la trap table). La +philosophie même du système d'exploitation Unix fait que pour garantir +la sécurité et la disponibilité de la machine, il doit absolument +interdire quiconque de prendre le contrôle exclusif d'un élément +matériel. Même l'administrateur système n'a pas ce pouvoir, à moins de +modifier Unix lui-même.
+De toute façon, dans la pratique on n'a jamais besoin de le faire : +sous réserve que vous en ayez le droit, vous avez toujours moyen de +faire ce que vous voulez en programmation Unix sans avoir à réinventer +la roue à la place d'un incompétent qui aurait dû le faire pour vous +comme c'est le cas sur un PC sous DOS.
+Les copyrights de divers noms cités ici se trouvent là-bas.
+ +