Suivez-nous sur X
|
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z,
ALL
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
0,
A,
B,
C,
D,
E,
F,
G,
H,
I,
J,
K,
L,
M,
N,
O,
P,
Q,
R,
S,
T,
U,
V,
W,
X,
Y,
Z
|
|
A propos d'Obligement
|
|
David Brunet
|
|
|
|
Test de Gnuemacs 0.3
(Article écrit par Cédric Beust et extrait d'Amiga News - octobre 1990)
|
|
Gnuemacs : le monstre arrive
Non, il ne s'agit pas du dernier jeu d'arcade en date, mais d'un programme qui donne
sûrement des frissons dans le dos des personnes travaillant sous Unix. Gnuemacs est
un éditeur. J'hésite à dire "de texte" car il est d'une puissance tellement extraordinaire
qu'il peut virtuellement servir à tout.
Je ne peux m'étendre sur le long passé de Gnuemacs qui nécessiterait à lui seul un
article entier. Disons pour simplifier que c'est le meilleur éditeur jamais créé
et ceci probablement toutes machines confondues. Son arrivée sur Amiga est un réel
événement car à ma connaissance, aucune machine non-Unix ne l'avait jamais accueilli.
Étant très récent sur Amiga, il est livré avec quasiment aucune documentation. Dans sa version
actuelle, il sert essentiellement à satisfaire les nombreuses demandes qui ont été faites à
son sujet et en même temps de le "bêta-tester" car il reste encore quelques bogues.
Les personnes l'utilisant sont supposées être suffisamment familières avec ses commandes pour
pouvoir se passer de documentation.
Ça pèse
Il vient en deux parties : l'exécutable (540 ko...) et des modules écrits en Lisp (une vingtaine sont fournis).
Sa taille impose à elle seule de posséder un solide Mo de mémoire (comprenez : au moins un Mo et demi...).
Il incorpore un véritable éditeur Lisp qui permet de le reprogrammer au goût de l'utilisateur.
Pour faire une analogie avec un langage plus répandu dans le monde de l'Amiga, le Lisp dans ce cas
se comporte un peu comme ARexx : il permet de programmer vous-même des fonctions qui feraient
défaut à la version que vous utilisez. Notons que la formule ARexx est plus élégante, plus
puissante et n'impose pas au programme d'avoir son propre interprète (qui doit bien compter
pour la moitié des 540 ko, à mon avis). En plus, elle permet une certaine standardisation des
échanges de données.
Mais n'oublions pas que gnuemacs est "très" ancien, et il faut donc bien faire avec (Lisp est agréable à utiliser,
après tout). Quoi qu'il en soit, une interface ARexx est prévue pour une prochaine version.
Gnuemacs > Emacs
Venons-en à l'éditeur lui-même. "Emacs" n'est probablement pas un mot totalement nouveau pour tout
utilisateur de l'Amiga. Un Microemacs figure en effet sur la disquette Extras de n'importe quel
système d'exploitation Amiga. Comme son nom l'indique, Microemacs est un petit Emacs, qui est
lui-même un petit Gnuemacs. Cela devrait vous donner une idée du produit.
Les commandes sont en grande partie les mêmes, ce qui fait que ceux d'entre vous qui ont opté pour
Microemacs sauteront sans aucun mal le pas vers Gnuemacs, celui-ci disposant d'un nombre impressionnant
de nouvelles fonctions.
Gnuemacs s'ouvre sur un écran à lui et permet, moyennant un petit correctif, d'utiliser l'intégralité d'un
écran PAL, soit vingt-neuf lignes. Il permet de charger plusieurs tampons mémoire, de passer de l'un à
l'autre très rapidement, d'ouvrir plusieurs fenêtres, de couper-coller, bref tout ce qu'un éditeur digne
de ce nom se doit de faire.
Une fonction qui devient très vite indispensable est également présente : la complétion des noms de fichiers.
En bref, cela consiste à
laisser Gnuemacs compléter pour vous le nom de fichier que vous êtes trop paresseux pour taper entièrement.
Par exemple, si vous voulez charger un fichier "gnuemacs.c" et qu'il est le seul à commencer par "gnu", il
vous suffira de taper "gnu" puis la touche "Tabulation", Gnuemacs se chargeant d'aller lire le répertoire
et de compléter votre entrée (en cas d'incertitude, Gnuemacs va le plus loin qu'il peut et attend que
vous leviez l'ambiguïté). Méfiez-vous, c'est une habitude dont il est très dur de se débarrasser une fois
qu'on en a fait l'expérience...
Parmi les modules Lisp fournis, il existe par exemple un mode C. Il est chargé automatiquement dès
qu'un fichier se terminant ".c" ou ".h" est présent dans un tampon mémoire (on repense à nouveau à l'interface
ARexx d'éditeurs comme QEd ou CygnusEd...). Celui-ci indente automatiquement, vous montre quelles sont
les paires d'accolades qui vont ensemble, etc. Si vous préférez programmer en Pascal ou en Modula-2, rien
ne vous retient d'écrire un tel mode vous-même (il faut connaître le Lisp, bien sûr). En fait, c'est
quasiment du travail perdu car un tel mode existe sûrement déjà, le tout étant de le récupérer, ce qui m'amène
à la considération suivante.
La compatibilité avec les fichiers Lisp du Gnuemacs d'Unix est parfaite. Je n'irai pas jusqu'à dire à 100%,
mais pas loin. On lit régulièrement sur Usenet l'expérience de personnes ayant fait fonctionner tel ou tel
mode sans aucune modification. C'est très encourageant car la bibliothèque Lisp de Gnuemacs est à l'image
du produit : gigantesque. Certains sont même allés jusqu'à écrire un mode "doctor" qui vous psychanalyse
(un peu comme le très ancien Racter) ou encore une résolution des tours de Hanoi en mode texte...
Z-z-z
Il s'agit pour l'instant de la version 0.3 (c'est-à-dire la troisième version du portage sur Amiga). Il reste
encore des aspects non implémentés. Entre autres, le mode "compile" qui permet de lancer une compilation
(et plus généralement n'importe quelle commande Shell) dans un tampon mémoire séparé et de pouvoir l'analyser
par la suite. Cela est dû au fait que l'auteur du portage n'a pas encore eu le temps de traduire la
fonction Lisp qui permet de lancer un processus détaché, ce que l'Amiga a probablement le plus de facilité
à faire à côté des autres machines. Une telle implémentation ne saurait tarder.
Il n'utilise pas du tout la souris et a la mauvaise habitude de faire du "busy-wait"
(comprenez qu'il mange pas mal de processeur). Enfin, il a tendance à inviter le
gourou un peu trop souvent sans raison particulière.
Pour résumer, Gnuemacs est un véritable mammouth et il n'est pas vraiment utilisable dans sa version présente,
mais son apparition se devait d'être signalée car elle ajoute un critère de sérieux indéniable à l'Amiga.
Je ne serais pas surpris de voir ce portage en argument de vente : quoi de plus agréable que d'utiliser le
même éditeur au travail et à la maison, surtout si celui-ci est le meilleur dans sa catégorie (et gratuit,
qui plus est).
Nom : Gnuemacs 0.3.
Développeur : Richard Stallman. Portage Amiga : Mark Henning.
Genre : éditeur de texte.
Date : 1990.
Configuration minimale : Amiga OCS, 68000, 1 Mo de mémoire.
Licence : à code source ouvert.
Téléchargement : Aminet.
|
|