original in fr Georges Tarbouriech
Georges est un vieil utilisateur d'Unix (commercial ou libre). Il aime beaucoup NEdit et l'utilise sur quatre Unices différents.
Que serait le monde Unix sans les éditeurs? Même si cette question se pose pour la majorité des OS,
une fois de plus, Unix a été un précurseur. Toutefois, n'oublions pas que ces
systèmes fonctionnaient à l'origine en mode texte et que la convivialité ne pouvait donc
pas être celle que nous connaissons aujourd'hui avec les interfaces graphiques.
Tout cela bien sûr pour en venir à l'incontournable vi, modèle de richesse mais d'un
abord pour le moins rébarbatif. vi est à Unix ce que le DOS est à Windows: ils sont inséparables.
Avec le temps, vi a évolué vers vim (pour im...proved) ce qui permet maintenant d'effacer
le caractère précédant le curseur avec la touche "backspace": une révolution!
Ce n'est pas méchant, simplement un peu ironique et dans tous les cas ça n'enlève rien à ses
innombrables caractéristiques. Lorsqu'on commence à utiliser vi, il est préférable d'avoir un
manuel à portée de la main pour comprendre son fonctionnement.
Le deuxième poids lourd de la catégorie est l'oeuvre de R. Stallman, le "père" de GNU, sans qui nous
ne serions pas là pour partager avec vous les joies du logiciel libre. Il s'agit bien évidemment
d'Emacs, plus connu sous le nom de EscapeMetaAltControlShift. En clair, c'est un éditeur réservé aux
pieuvres ou à utiliser sur les ordinateurs équipés de pédales.
Sérieusement, c'est un fantastique éditeur mais qui
réclame lui-aussi une longue période d'apprentissage. Pour ce qui est de la version graphique,
Xemacs, elle est encore plus puissante. C'est carrément le couteau Suisse: Xemacs est un éditeur,
un lecteur de news, un navigateur... C'est une véritable usine à gaz. A titre indicatif, la
compilation d'Xemacs sous Linux m68k avec un 68030 à 25 Mhz et 16Mo (je sais, il faut être fou) ne dure
que 18 heures.
Ces deux produits (trois, si l'on considère Xemacs) sont des piliers de la communauté Unix mais
ont été portés sur des tas d'autres systèmes. Ce n'est pas par hasard mais bien parce qu'ils
étaient (sont) des références.
Depuis, l'Unix libre s'est répandu et les développements ont été multipliés. Il doit exister
aujourd'hui plus d'une cinquantaine d'éditeurs.
Alors, pourquoi NEdit?
NEdit est disponible à l'adresse: http://nedit.org/
Il existe sous forme de sources à compiler ou de binaires précompilés.
Nombreux sont les utilisateurs d'Unix libres qui ne connaissent pas NEdit,
pour une raison très simple: il n'était pas sous licence GPL, jusqu'à ce début d'année. En clair, il
ne pouvait pas être intégré aux distributions Linux ou autres NetBSD, FreeBSD...
NEdit était distribué sous licence Fermitools puisqu'il a été développé au Fermi
National Accelerator Laboratory. Mais le problème majeur vient du fait qu'il
repose sur la bibliothèque Motif qui est un produit commercial.
Théoriquement, sans l'achat de Motif, point de salut.
Heureusement notre propos concerne essentiellement les systèmes libres, et nous
avons la chance d'avoir accès à des tonnes de freeware ou de shareware.
Ainsi Motif possède son équivalent gratuit: Lesstif.
Merci Lesstif: la prochaine version de NEdit sera GPL!
La différence entre les versions Motif et Lesstif est encore sensible mais elle
devrait se réduire rapidement.
Quelques anomalies existent encore, particulièrement pour ce qui concerne la
gestion des clicks de souris, mais vraiment rien de grave. Nous y reviendrons.
A l'origine NEdit n'était donc distribué que pour les Unix commerciaux, Motif
oblige.
Il existe par conséquent des versions Irix (SGI), Solaris (Sun), AIX (IBM),
HP-UX, VMS... précompilées avec Motif.
Pour Linux, FreeBSD, NetBSD, le mieux est de télécharger le source et surtout
d'installer Lesstif. Celui-ci est disponible a l'adresse:
http://www.lesstif.org
Description
Window in a window
NEdit est un éditeur en mode graphique, doté d'innombrables fonctionnalités.
Il est entièrement manipulable à la souris, dispose de menus, de raccourcis clavier,
de fenêtres de dialogue...
Il est totalement configurable par l'intermédiaire de Préférences accessibles par menu.
Ces préférences génèrent un fichier .nedit modifiable manuellement.
Les options de configuration sont très nombreuses. Par exemple, il est possible de définir
une coloration syntaxique par langage utilisé. Ce langage peut être choisi parmi une longue liste
(C, Fortran, Pascal, HTML...).
Vous pouvez d'ailleurs créer votre propre coloration syntaxique en utilisant
les "patterns". Un pattern consiste en une expression régulière correspondant à un style
représentant polices et couleurs. Si votre texte correspond à cette expression il s'affichera
dans la couleur et la police choisies.
Lorsque vous ouvrez un fichier *.c par exemple, après avoir choisi le langage C, NEdit détermine une
coloration spécifique et une indentation rendant la lecture beaucoup plus évidente.
Ce choix peut se faire ponctuellement pour une fenêtre. Il suffit de sélectionner
le langage dans le menu Préférences.
Une grande quantité de caractéristiques indispensables est bien évidemment disponible.
En vrac citons les inévitables Couper, Copier et Coller, les Chercher et Remplacer,
la numérotation des lignes...
Il existe une option intéressante qui autorise la sélection de texte en colonne, afin de
le copier et de le coller.
Si vous travaillez avec une souris à trois boutons, vous bénéficiez d'options supplémentaires,
telles que la sélection secondaire. Celle-ci remplacera par exemple du texte déjà sélectionné
(sélection primaire) sans devoir le couper au préalable.
Autre caractéristique marquante: le remplissage de paragraphe. A l'utilisateur de découvrir
ce concept. Pour cela, (comme d'habitude!) il faudra lire la documentation fournie, bien sûr.
Mais NEdit peut faire encore mieux. Il permet par exemple de lancer une commande Shell
directement dans une de ses fenêtres. La sortie de la commande s'affiche dans cette
fenêtre à la position du curseur.
Il est très facile de créer des macros de manière interactive par exemple.
Sinon, NEdit possède son propre langage de macros et il devient alors possible de créer
toutes sortes d'outils favorisant l'utilisation, le développement...
NEdit peut aussi s'interfacer avec des environnements de développement, (comme le
CaseVision de SGI, par exemple) via nc, l'interface client-serveur.
Toujours pour les programmeurs, la vérification de la correspondance des parenthèses ou
autres crochets ouvrants et fermants s'exécute en choisissant une option de menu.
Il offre également la possibilité d'ouvrir automatiquement des fichiers "include".
Si vous ouvrez un fichier source en C, en sélectionnant une ligne du style:
#include "config.h"
et en appelant la rubrique de menu "Open selected", NEdit affichera le fichier "config.h".
NEdit est aussi capable de rechercher des expressions régulières.
N'hésitez pas à visiter le répertoire contrib sur le serveur ftp de fnal
ftp://ftp.fnal.gov/pub/nedit ou le répertoire macro de
http://www.nedit.org/macro afin d'améliorer
encore les capacités de l'éditeur.
Comme nous l'avons vu précédemment, la configuration de NEdit s'effectue à partir du menu Préférences.
La plupart des options peut se choisir dans ce menu.
Les réglages par défaut possèdent un menu principal et un sous-menu.
Le menu principal s'applique à la fenêtre en cours alors que le sous-menu concerne NEdit
dans son ensemble.
Dans le menu principal vous pouvez définir un langage afin de déterminer
la coloration syntaxique, l'indentation, le passage à la ligne automatique,
les marges, les polices de caractères...
Dans le sous-menu vous bénéficiez d'options supplémentaires telles que la personnalisation
de certains menus. Si vous sauvegardez ces réglages, NEdit génère un fichier qui sera lu à chaque
ouverture du logiciel.
Tout cela est évident et ne mérite pas un long développement, et ... tout se trouve facilement
dans la doc.
Par contre, NEdit autorise une configuration beaucoup plus élaborée par l'intermédiaire
des fichiers de configuration de X.
Le fichier créé par la sauvegarde des Préférences est au même format que .Xdefaults ou .Xresources.
Vous pouvez donc copier le contenu de ce fichier .nedit directement
dans un des fichiers mentionnés ci-dessus.
L'intérêt d'une telle manipulation concerne surtout certains Unix, dans la mesure où elle permet
de bénéficier de caractéristiques système dans NEdit. Si votre système ne possède pas de
caractéristiques particulières et s'il s'agit d'un système personnel, vous pouvez laisser
cette fonctionnalité de côté.
Toutefois, si vous souhaitez modifier des raccourcis clavier, sachez qu'il faudra en passer
par là.
Le cas le plus flagrant concerne la touche Delete qui se comporte comme la touche Backspace.
Soit, vous essayez de vous habituer à ce comportement, soit vous modifiez le fichier concerné.
Les versions compilées avec Lesstif peuvent parfois provoquer des comportements bizarres de
la souris. Par exemple, il peut devenir difficile de sélectionner un fichier dans la boîte
de dialogue. Le remède est simple: remplacez le double-click par un retour chariot.
Un autre petit problème concerne la fenêtre de dialogue d'ouverture de fichiers.
Il se peut qu'aucun fichier n'apparaisse dans la fenêtre. A ce moment-là, ajoutez un "/"
à la fin du nom du répertoire dans la ligne de filtre.
Autre grand classique: les raccourcis clavier ne fonctionnent pas. Désactivez le verrouillage
des majuscules et le verrouillage du pavé numérique et miracle, ça marche... en principe.
NEdit se lance par la commande nedit ou en double-cliquant sur son icône selon le gestionnaire
de fenêtres utilisé.
Sa particularité consiste à ouvrir une instance par fichier. Si vous ouvrez dix fichiers, vous
lancerez dix fois NEdit. C'est un comportement très classique mais qui finit par être pénible.
Personnellement, j'ai la chance d'utiliser un Amiga (si, ça existe!) et cette machine posséde
certainement des éditeurs parmi les plus performants. Il est possible d'ouvrir de nombreux fichiers
dans la même fenêtre et c'est très pratique.
Maintenant que j'ai réussi à placer l'Amiga dans un article sur Unix, revenons à NEdit.
Son fonctionnement est évident. Rubriques de menu ou raccourcis clavier permettent toutes les
manipulations. La souris tient un rôle prépondérant puisque nous sommes dans un environnement
graphique et si elle possède trois boutons, c'est encore mieux.
Si vous êtes un inconditionnel des raccourcis clavier, la liste est longue.
Quelques exemples:
Ctrl + Backspace efface le mot précédant le curseur
Ctrl + U efface la ligne si vous êtes à la fin de celle-ci
Ctrl + Delete efface jusqu'à la fin de la ligne
Ctrl + flèche droite déplace le curseur d'un mot vers la droite. La flèche gauche provoque l'inverse.
Ctrl + Retour chariot indente automatiquement la ligne suivante
Vous pouvez dans NEdit définir la taille des fenêtres par défaut, partager la fenêtre en deux
parties pour le même fichier. Cette option est pratique pour travailler sur des textes longs
par exemple.
La recherche et/ou le remplacement de texte disposent de filtres concernant la casse, par exemple.
Les options de menu "Find again" et "Replace again" permettent de continuer la recherche et/ou
le remplacement de la même chaîne de caractères sur tout le document.
Ces options fonctionnent également pour du texte sélectionné, même si ce texte se trouve dans
une autre fenêtre, voire d'une autre application, à partir du moment où cette fenêtre est affichée à
l'écran.
L'enregistrement d'une macro est aussi très simple. Il suffit de lancer le mode "apprentissage"
en sélectionnant "Learn Keystrokes" dans le menu Macro. NEdit va enregistrer alors les frappes
de touches et les commandes de menu sélectionnées. Choisir le bouton "Paste learn" de la boîte
de dialogue de création de macro collera le résultat dans le corps de la macro.
En cas de "crash" du système (c'est très rare, nous sommes sous Unix...) vous pouvez récupérer
votre travail. NEdit duplique en permanence le fichier sur lequel vous travaillez: il suffira
de renommer ce fichier pour le retrouver quasiment intact.
Vous disposez aussi d'une aide en ligne très complète.
Bref, la prise en main de l'outil est vraiment facile et c'est certainement le facteur primordial
de son choix en plus de ses innombrables possibilités.
Comme pour beaucoup d'applications pléthoriques, chacun choisit en fonction de ses goûts, de ses
besoins. NEdit n'est pas forcément l'outil absolu mais il fait partie des très bons.
Il est loin d'être ridicule au milieu des poids-lourds du genre.
Il n'a pas besoin d'énormes ressources tout en étant très performant et encore une fois, convivial.
Si vous venez des mondes MAC, PC ou autres BeOS, AmigaOS, NEdit vous semblera familier.
Le problème de la licence est résolu et Lesstif s'améliore en permanence.
Par conséquent, vous n'êtes pas obligés d'attendre qu'il figure dans les distributions pour l'essayer.
Un petit tour vers nedit.org?
Vous verrez, vous ne serez pas déçus.
Nous vivons une époque formidable!