Éditeurs de texte
L’ éditeur de texte de base de Linux est un programme appelé ed, écrit par Ken Thompson. ed a été conçu vers 1970 pour fonctionner dans un environnement de petites machines. Malgré les évolutions technologiques, ed n’a pas changé et il est aujourd’hui toujours disponible sur tous les systèmes Linux.Sur Linux, on dispose bien sûr de l’éditeur ed, mais aussi d’un autre éditeur ligne ex et d’un éditeur plein écran vi. L’ éditeur ex possède les mêmes commandes que l’éditeur ed à quelques améliorations près ; notamment les messages d’erreur sont donnés explicitement au lieu d’un simple ? sur ed.Il existe d’autres éditeurs, en mode caractères ( emacs,..) et en mode graphique X11 ( nedit,…). Nous ne présentons ici que l’éditeur vi et un sous-ensemble des commandes de ex (recherche, substitution, copie, etc.). En effet, il est intéressant de connaître cet éditeur car il est disponible sur tous les systèmes Linux. Cet éditeur nous permettra, par exemple, l’écriture rapide de fichiers de commandes (voir chapitre 8).L’ éditeur vi, fonctionnant en pleine page, est essentiellement utilisé pour la créa- tion de nouveaux fichiers ou pour des modifications ponctuelles. ex est par contre plus adapté pour les recherches de motif ou pour des modifications systématiques. Comme sous vi, il est possible d’exécuter des commandes de ex en les faisant précéder d’un « : », ce sont les commandes de ex que nous utiliserons pour effec- tuer un traitement global (liste et effacement sélectif, substitution), les mouvements ou copies de groupes quelconques de lignes, la sauvegarde du fichier en cours d’édition ou la sortie de vi.
Caractères spéciaux en mode insertion
Le mode insertion est obtenue en tapant au choix I, i, a, A, o, O suivi du texte à insérer et terminé par la touche <Esc>. Cette touche remet l’éditeur en mode commande (en cas de doute, taper encore une fois <Esc> ; le signal sonore fera savoir que l’on n’est plus en mode insertion). Les commandes d’insertion sont :Cette commande permet d’affecter à une touche spéciale du clavier (qui génère une séquence particulière de caractères) une série de commandes de vi. C’est ce que l’on appelle le mapping.Si la séquence de caractères nouvelle commande ne comporte qu’un seul carac- tère, il ne doit pas être numérique. Si cette séquence comporte plus qu’un caractère, elle ne doit débuter ni par un caractère alphanumérique, ni par le caractèreCette commande permet d’affecter à une touche spéciale du clavier (qui génère une séquence particulière de caractères) une série de commandes de vi (le mapping) en mode insertion.