- Mutiplateforme UNIX (SUN3, SUN4, HP-UX, et sur PC sous UNIX BSD), - aide en ligne, - convention du type MACINTOSH pour la sélection et la plupart des fonctionnalités (mais raccourcis emacs supportés), - indentation ou mise en commentaire automatique de la sélection, - affichage permanent de la ligne en cours, - affichage permanent de l'état du fichier édité (sauvegardé ou non), - accès facile à une ligne donnée à partir d'un nombre contenu dans la sélection, - impression d'une partie sélectionnée du fichier.
- sélection rectangulaire (sélection/suppression/insertion de colonnes !),
(appui sur <Control-B3> ou <Meta-B1> pour sélectionner un rectangle)
- Passage de la sélection (rectangulaire ou non) par un filtre Unix
quelconque,
- recherche régulière et remplacement (globale ou ligne par ligne),
- multiple UNDO et REDO débraillable,
- gestion des modes (dont le mode LATEX), avec :
- le menu <Nom_du_mode> contenant des commandes facilitant la compilation,
- un menu <Templates> facilite l'édition de texte dans le mode choisi
et permet de Naviguer (circulairement) entre les différents champs !
- le menu <Navig> (dont le nom dépend du mode) permet de simplifier la
navigation dans le fichier en accédant directement à une déclaration
de fonction en C ; de "procedure" ou "function" en pascal ; de
"chapter", "section", "subsection", etc... en latex ; de "module" en
Verilog...
- colorisation des mots clés, des titres, des commentaires, ...
- alias dynamiques sur mot déja tapés,
- alias statiques sur dictionnaire, dépendant du mode et contenant des champs,
- possibilité de taper directement des procédures tcl au clavier.
- ra <regexpPattern> <subsPattern> (remplacement partout)
- rs <regexpPattern> <subsPattern> (remplacement dans la sélection)
- ins popo\n 55 (insère 55 ligne "popo")
- personnalisation des couleurs, de la fonte, par panneau graphique, (n'est plus à jour : doit ètre refondu d'une manière générique) - personnalisable en langage TCL (rajouter menu, changement raccourci, créer de nouvelles procédures...), - configurer les modes à sa convenance, - créer de nouveaux modes.
- coller par impulsion sur le bouton 2 de la souris (convention X), mais
aussi scroller par glissé du bouton 2 de la souris (convention tk) !
- convertir des fins de ligne Macintosh en fin de ligne unix :
menu "Format/unix pipe..." tapez :
tr \015 \012,
ou via une commande de l'éditeur :
menu "File/Issue TCL Command...<Meta-T>" et taper(Replace All) :
ra \015 \012
(mais c'est aussi dans le menu "Format/End of lines...")
- rechercher des débuts de ligne : comme vi : ^ = début de ligne,
$ = fin de ligne,
- remplacer 1 ou plusieurs lignes vides par une seule en remplacant
"\n+" par "\n", (ou en tapant la commande TCL ra "\n+" "\n" )
- supprimer les pages 2 à 60 d'un fichier postscript que vous aviez
"presque" fini d'imprimer (voir doc. en ligne),
- insère 64 fois la ligne "popo" : Commande tcl
ins popo\n 64
de même que la commande :
for {set i 80} {$i <= 2} {incr i -2} {ins popo$i\n}
génère les lignes popo80, popo78, ...popo2
- Couper des colonnes, manipuler aisément des pseudos graphiques
(signatures...)
- voir d'un coup d'oeil l'ensemble des sections, sous-sections,... d'un
fichier Latex et s'y déplacer par un simple click souris !
- prévisualiser la sélection d'une formule LaTeX ou une figure sans
avoir à compiler tous les fichiers ...
Sa principale limitation est la relative lenteur de certaines fonctionnalités pour les gros fichiers ( > 300k) : l'éditeur est entièrement interprété et pas forcément bien optimisé (ou plutot pas du tout...).STEAD n'est PAS (pour l'instant) multi buffer : si vous éditer deux fois le même fichier et que vous sélectionner une partie du texte dans une fenêtre, la même partie ne se trouve PAS sélectionnée dans l'autre fenêtre. C'est à vous de gérer le risque d'incohérence.
STEAD (Sympathetic Tk-based Editor for Average Dummies)
Développé en 1993 à :
ENSTA/LEI/AMD
Ecole Nationale Supérieure de Techniques Avancées
Laboratoire d'Électronique Informatique
groupe Architectures de Machines Dédiées
par : Christian ARTIGUES
Maurice DIAMANTINI diam@ensta.fr
à partir de :
- jedit editor of Jay Sekora, js@it.bu.edu
ftp://shore.net/members/js/js.html
Et aussi des idées venant de :
- Alpha de Pete Keleher : l'éditeur LaTeX, entre autre
(shareware pour Macintosh)
pete@cs.rice.edu
- David C. Black pour les ElectricAlias, black@mpd.tandem.com+
- Beth de David Svobodasvoboda@ece.cmu.edu
- TkMan de Tom Phelps, phelps@cs.Berkeley.edu
- TkMail de Paul Raines, raines@bohr.physics.upenn.edu
- mxedit de Brent Welch, welch@parc.xerox.com
Ainsi que la communauté du NewsGroup : comp.lang.tcl
wish3.6.tgz contient les sources ainsi que
les exécutables de wish3.6 prets à l'emploi pour les plateformes
suivantes :
i386-linux (en fait tout X86 Intel et compagnie)
i386-netbsd
sparc-linux
sparc-sunos4.1.4
sparc-solaris2.5 (utilisable sous sparc-solaris2.7)
hppa1.1-hpux9.01
ppc-linux (linuxppcR5 en standard, linuxppcR4 sur demande)
sgi-irix (NEW 30/07/01 : merci Damien Mercier)
Vous pouvez toujours a posteriori
supprimer des binaires (ou les sources) dont vous n'avez pas besoin.
La version totale occupe (apres décompactage) de l'ordre de 5.3 Moctets
pour wish3.6 et 1.7 Moctets pour stead.
/usr/local/bin/stead --> /usr/local/lib/stead-v0.XX-alpha/bin/stead
/usr/local/bin/wish3.6 --> /usr/local/lib/wish3.6/wish3.6
Si votre plateforme ne fait pas partie de celles proposées ci-dessus, Vous devez recompiler les sources de tk3.6 et tcl7.3 fournie avec la distrib de wish (dans le sous-répertoire "wish3.6/archives/src", et mettre à jour le script de lancement shell "wish3.6/wish3.6". (voir le fichier INSTALL.readme dans le répertoire "wish3.6/" précompilé)
Nota : si l'interpréteur porte un autre nom que "wish3.6",
vous pouvez modifier d'en-tête du fichier
<stead_dir>/bin/stead
.htaccess ?)
vous devez connaitre le nom exacte du fichier à récupérer.
En cas de problème/suggestion/remarque : n'hésiter pas à m'envoyer en mail (diam@ensta.fr)