modif de STEAD

### Modifications récentes de STEAD (Ancienne version : stead36)

### apports des versions stead-v0.63-alpha (14/01/02)

- nettoyage léger et figeage
- inclusion de wish36 avec stead (précompilée et source)
- inclusion d'une version précompilée améliorée de wish36 pour mipspro (architecture sgi-irix)
  merci à Damien Mercier !
- recompilation de wish36 pour i386-linux pour utiliser la librairie glibc au lieu de la libc5 (avant, cette version de stead ne tournait plus sous les versions récentes de linux !)
  merci à Damien Mercier !

### apports des versions stead-v0.62-alpha (11/08/00)

- Utilisation possible d'une variable d'environnement (facultative) pour le lancement de stead :

      STEAD_WISH

  dont la valeur par défaut est "wish3.6 -f"
- Nombreuses modifs internes (verrues) pour permettre l'utilisation de stead avec wish8.3 (pas fini !)
- (mineur) création du nom de variable "stead(balance_list)" synonyme à l'ancienne globale "balance_list"

### apports des versions stead-v0.58-alpha (18/07/00)

- nouveau raccourci clavier pour iconifier/déiconifier : <Meta-m> (pour "Minimize", conformément à MacOS-X :-)
- (mineur : proc te:alert) les messages d'alerte sont affichés dans une nouvelle fenetre d'édition seulement si le résultat nécessite plusieurs lignes, ou bien si est trop long (> 200 caractères)
- création de la proc "admin" pour passer en mode administration de l'éditeur

### Modifications récentes de STEAD

### apports des versions stead-v0.57-alpha (26/05/00)

- (mineur) mode HTML : modif colorisation et rajout des abréviations dynamiques pour <span> et <div>.
  Essayer spa, span, div ou divi et name suivi de <Meta-Space>
- (mineur) on peut émettre un mail sélectionner par netscape (en plus des autres type d'URL) voir menu "File",
- (mineur) le suffixe .mel fait passer en mode mail,
- (mineur) mode latex : remplacement d'anciens "documentstyle" résiduels dans les alias par "documentclass"

### Modifications récentes de STEAD

### apports des versions stead-v0.56-alpha (16/03/00)

- les fichiers xxx.H font maintenant passer stead en mode C++,
- (interne) correction petit bug colorisation lorsqu'on passait d'un mode "évolué" à un mode mineur (text ou plain...) ne gérant pas les couleurs.
- (interne) Le nom de la version est contenu dans un fichier séparé "VERSION.tcl",
- (interne) undo et colorisation des modes (proc get_state et set_state) Le undo "se trainait" pour gros fichiers avec beaucoup de couleurs. C'est du à la sauvegarde des couleurs (dans le buffer interne) qui est moins efficace que la colorisation automatique !
  Par conséquent le seul tag (couleur) désormais sauvegardé et restituable par undo est la sélection.
  (La procédure "refresh_colors" est exécuter en fait de chaque undo si elle existe)
- Centralisation de la colorisation : rajout d'un menu "Search/Refresh Color" . Mais la gestion des couleur est encore épartillée dans chaque mode.
- mode C++ : rajout colorisation pour les macros du préprocesseur,
- interne : nettoyage (ya du travail :-).

### apports des versions stead-v0.55-alpha (30/11/99)

- interne : début de nettoyage de code et amélioration diverse (menu "/file/...commande unix...").
- Mode latex : refonte colorisation latex (beaucoup plus rapide).
- Rajout d'une option "-readonly 1|0" qui évite l'écrasement du fichier original (impose "Save as...")
- Mode latex : Modif de la fonctionnalité de menu "Latex/Visu log file" et rajout de raccourcis clavier.
- tres nombreuses modif internes, sans aucune influence sur l'utilisation de stead si ce n'est un chargement initial plus lent !
  Objectif : permettre -- à terme -- son utilisation avec la version la plus récente de wish (avec les avantages que cela comporte pour les connaisseurs) (Merci Jean-Luc Commeau :-)
  A partir du moment ou stead tournera sous wish8.2, une refonte en profondeur sera entamée, en exploitant toute les possiblilités de ce merveilleux langage qu'est TCL !

### apports de la version stead-v0.50-alpha (23/11/99)

- Rien
- Par défaut, stead se positionne dorénavant dans le répertoire du fichier édité (ce qui est préférable dans le cas général). Si suffisammant de personnes préfèrent l'ancien comportement : je peux envisager une nouvelle préférence utilisateur.
  Rajout de l'option " -cdf 1 " permettant de se positionner dans un répertoire du fichier " -cdf 1 " ou de rester dans le répertoire de lancement " -cdf 0 "
  . Attention : cette option n'est pas figée : ne pas trop compter sur sa stabilité.
- Tout mode (mais à déplacer ??) : Menu "Format/Convert Char..." Rajout des conversion "iso vers html" et "html vers iso" (incomplet mais couvre déja les cas courants)
- Mode Latex : ajout et modif de raccourcis clavier :
  - <Meta-t><Meta-t> pour lancer Latex
  - <Meta-t><Meta-b> pour lancer bibtex
  - <Meta-t><Meta-p> pour lancer dvips
  - <Meta-t><Meta-x> pour lancer xdvi
  - <Meta-t><Meta-g> pour lancer ghostview
- Tout mode : rajout d'un raccourci clavier :
  - <Meta-Control-h> pour visualiser le fichier courant par netscape
  - <Meta-Control-o> (rappel) ouvrir l'URL sélectionnée par netscape
- Selection rectangulaire :
  - Rajout des raccourcis <Meta-1> et <Alt-1> pour créer la selection rectangulaire (le raccourci <Control-1> est conservé)
  - Plusieurs utilisations successives de ce raccourci ne change plus le point d'insertion.

### apports de la version stead-v0.49-alpha (18/11/99)

- Modification de l'installation : stead est maintenant composé de deux packages séparé :
  - "stead-v0.XX-alpha" seul (indépendant de la plateforme), que vous pouvez renommer, ou lier comme vous le souhaiter,
  - "wish3.6" précompilé pour plusieurs plateformes.

  Rien n'est à modifier dans ces deux arborescences, mais vous devez créer deux liens accessibles dans votre PATH, par exemple :

              /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

  wish3.6 étant figé, seul stead évolue au gré des versions.

### apports de la version stead-v0.48-alpha (17/11/99)

- Les fichiers *.C font maintenant passer stead un mode c++
- modif mineur du mode latex rajout de qq alias dynamiques activable par apres avoir tapé l'abbreviation

              "h1" à "h6 pour les header
              "a", "aa", "ah", "aah" pour les ancres hypertexte

- bug mineur interne au mode tcl : correction de l'entete "... exec tclsh $@" en supprimante le "--" nécessaire à wish mais nuisible pour tclsh.
- Mode Latex : mise à jour (pour Latex2e) de quelques commandes ou environnements fréquents, et ajout de raccourcis-claviers :

              Text Style :
                  Bold          Meta-Control-b;
                  Italic        Meta-Control-i;
                  Emph          Meta-Control-e;
                  TypeWriter    Meta-Control-t;
                  Small Cap     Meta-Control-c;
                  General...    Meta-Control-y;
              Environnement :
                  Verbatim      Shift-Control-V;
                  General...    Shift-Control-Y;

- Sauvegarde des préférences utilisateur : refonte de la procédure pour simplification,
- Rajout de fonctionnalité (tout mode) : On peut ouvrir une URL sélectionnée par le racourcis-claviers

                  <Control-Meta-o>

  (procédure Viewurl URL et viewurl_Selecteddu fichier stead/lib/tk/viewurl)
- Mode latex (mineur) : rajout du raccourci <Meta-t> pour lancer la compil de latex,
- Mode latex (mineur) : modif du template figure (taper :

                  fig<Meta-Space>

- (interne) preference EDITPREFS_DEF(latexmode) valant "latex" ou "latex_old" en ***prévision*** de la refonte du mode latex. Par défaut, on impose la nouvelle version, l'ancien mode étant accessible manuellement par le menu en bas à droite, ou systématiquement en positionnant la préférerence dans le fichier utilisateur : ~/.tk/stead/steadrc par

              # set EDITPREFS_DEF(latexmode) latex ;# (par défaut)
              set EDITPREFS_DEF(latexmode) latex_old

  .

### apports de la version stead-v0.47-alpha (23/09/99)

- modifie le refus de stead d'indenter un texte si plus de 100 lignes sélectionnées par la création d'une variable stead(stead(maxIndentNumber) initialisée à 1000 (la valeur 100 était en dur !)
- Modifs internes (léger nettoyage du code)
- changement du nom des fenetres de l'éditeur
  - stead#5 nom_du_fichier
  par
  - nom_du_fichier (stead#5)
  pour améliorer la lisibilité du titre avec des fenetres de taille réduite, dans la barre de fvwm par exemple.
- postaccentuation : le caractère ccedilla se construit par <c><comma> au lieu de <c><underscore> (si activé dans les préférence)
- mode tcl : modif mineur des template d'en-tete de script tclsh ou wish
- correction d'un bug interne lié à certains serveurs X mal configurés : un caractère 8 bits satisfait l'expression {"$A" == ""} (proc te:tb:insert_nondigit) !!

### apports de la version stead-v0.46-alpha (08/06/99)

- Modif du l'environnement de lancement de stead pour ne plus dépendre de wish3.6. Il est maintenant inutile d'avoir l'interpréteur wish3.6 dans son path.
- (interne) nettoyage de quelques fichiers parasites.
- Un fichier xxx.hh fait maintenant passer stead en mode "cc".
- Correction bug empéchant l'affichage du plan du document en mode HTML.
- Changement du nom de la fenetre et de l'icone : suppression du nom de l'interpreteur (stead #1 ...) et déplacement de l'indicateur de sauvegarde "!" en premier.
  But : obtenir d'avantage d'information utiles parmi les premiers caractères (surtout utile pour le nom d'icone).
  Accessoirement en interne : remplacement du nom de la variable "ME" par "stead(interpName)".
- rien.

### apports de la version stead-v0.45-alpha (22/02/99)

- (interne) preference EDITPREFS_DEF(latexmode) valant "latex" ou "latex_new" en ***prévision*** de la refonte du mode latex.
- (interne) creation variable stead(mode) alias de la variable MODE
- Modif de la distrib. de stead pour faciliter une installation sous Linux : un répertoire "stead_wish3.6/" contenant d'une part wish3.6 pour plusieurs plateformes (linux pour mac et intel) ; ainsi que le répertoire de stead proprement dit.
- rien.

### apports de la version stead-v0.44-alpha (19/02/99)

- (14/01/98) - modif mineur postaccentuation de façon à ce que :

                 e'           ->  é
                 e'   ->  e'   (au lieu de supprimer le é)

  Ce binding existait déja pour <BackSpace> mais a été rajouté pour <Delete>.
- (07/01/98) - rajout de quatre procédures de conversion d'euro en francs et de francs en euro
  Utilisable seulement à partir de la ligne de commande (menu "File/Issue Tcl Command...")
  Les procedure fr et euro fournissent des résultats arrondis au centième, tandis que les procédure fr2 et euro2 (utilisées par les précédente) fournissent de résultats non arrondis. Exemple :

              fr 1     retourne 6.56
              euro 1   retourne 0.15

- (06/11/98) - modif mineur dans le "calcul" du montant du texte sélectionné (accessible menu "Config/Make Extra Menu", ou plus simplement par le raccourci <Escape-k>
  ) Le texte sélectionné est tout d'abord évalué en tant qu'expression TCL.
  - si pas d'erreur : affichage du résultat
  - si erreur : on essaie de calculer la somme de tous les nombres de la selection (pratique pour calculer la somme de la colonne sélectionnée :-)
  L'amélioration effectuée a consisté à rendre accessible sous un seul raccourci-clavier les deux fonctionnalités de stead
  Exemple :
  - selection : 2 * 2e1 + sin (45) => affiche : 40.8509
  - selection : 2 * 2z1 + sin (45) => affiche : 50
  - selection : 1000 200 50 <LineBreak> -7 => affiche : 1243
- (02/11/98) - correction bug dans find : plantait si recherche d'un nombre !
- (28/10/98) - insertion de prefixe (pour commentaire) : en l'absence de sélection, le préfixe est maintenant inséré en début de ligne, et non plus au point d'insertion (essayer ).
  Suppression du préfixe fonctionne même si pas de sélection.
- (28/10/98) - mode c++ : rajout colorisation mot-clé "inline" en rouge
- (26/10/98) - mode c++ : Modif du menu de navigation pour pouvoir accéder directement aux méthodes de la forme : Bench::build_ordersByResources() et renommage de ce menu en de "Object_methods" en "Methods"
- (26/10/98) - Menu "Format/Fill Sel" : en l'absence de sélection : on traite la ligne courante au lieu de ne rien faire (à améliorer en sélectionnant le paragraphe courant)

### apports de la version stead-v0.43-alpha (22/10/98)

- Mode HTML : rajout de la colorisation des chaines représentant des caractères spéciaux tels que &lt; ou &eacute;
- Correction d'un bug de la commande du menu d'insertion du résultat d'une commande UNIX dans le texte :

               File/Insert output of UNIX command...<Meta-!>

  pour faire prendre en compte les méta-caractères et autres caracteres spéciaux :

               grep "    maxbuy = "  *.tes

  Les commandes unix suivantes passent maintenant correctement :

              ls -al *log
              grep "    maxbuy = "  *.log
              grep {  *.log
              grep " [mM][cC][aA][pP]=" *.log

- Modif du comportement d'insertion du prefixe apres l'indentation :
  Le préfixe est maintenant inséré à la position correspondant à l' indentation de la premiere ligne sélectionnée, et non plus après l'indentation de chaque ligne.
  Les prefixes des lignes ainsi commentées apparaissent maintenant sur la même colonne, ce qui est bien plus agréable pour commenter un ensemble de "if" imbriqués dans une partie de fonction.
- Inversion des bindings de mise en commentaire de la sélection :
  1 - insérer préfixe APRES indentation devient
  (c'est ce que j'utilise dans 80% des cas)
  , 2 - insérer préfixe AVANT indentation devient
  (ce que j'utilise dans seulement 20% des cas)
  ,
- Modif des bindings du selecteur de fichier :
  1 - rajout du binding pour annuler
  2 - suppression du binding pour le changement d'entrée, et rajout du binging pour la completion automatique (en plus du binding qui existait déja),
- Amélioration de la POSTACCENTUATION :
  1 - suppression des accents non utilisés en français (tels que aacute, n tilda...)
  2 - Rajout de binding (naturels) permettant d'annuler la post-accentuation sur demande ponctuelle :
  Dans le cas ou on veut vraiment taper la chaine "e'" et non l'accent "é" : on doit taper un "BackSpace" juste après la séquence "e'" ,
- mode C changement du prefix "/* " en "// " (la mise en commentaire type C peut se faire par le raccourci standard (i.e valable indépendament du mode), (au fait saviez-vous que la mise entre guillemet de la sélection pouvait se faire par ,
- Améliorations mineures mode "Make" (colorisation),
- elargissement du nbre de fichiers permettant de passer automatiquement en mode "Make",
- passage des fichiers .h en mode cc au lieu du mode c,
- Modif mineur mode C++ (mots clés colorié supplémentaires),
- bug mode C++ (alias statiques) => changement du nom "c++" en "cc" dans les noms de variable et d'indice de marque.

### apports de la version stead-v0.42-alpha (11/08/98)

- postacentuation : changent pour le c cedille : se saisit désormais par "c_" au lieu de "c," car souvent genant dans les enumerations telles que "sac, boite et autres emball..." La préaccentuation ce saisie toujours par ",c" pour le
- préacentuation dynamique : création de fonctionnalité voir menu
  - "config/accents/e'->é"
  ainsi que la sauvegarde des préférences par le menu :
  - "config/Save current Preferences"
- suppression de l'appel a "xhost" pour la creation du menu "win" car xhost n'existe plus sur certaine machine (fichier interp.tcl) Le menu "Win" est de nouveau opérationnel sur les solaris de l'ENSTA.
- Rajout des suffixes HTM, HTML,... pour la reconnaissance du mode html
- préaccentuation dynamique : modif mineur des menus : pour valider la préaccentuation systématiquement, le plus simple est de
  1 - cocher l'option dans le menu "Config/Accents=>"
  2 - sauver vos préférences par le nouveau sous menu "Config/Save pref"

### apports de la version stead-v0.41-alpha (29/09/97)

- mode TCL : colorisation des commentaires situé après une accolade (typiquement comme première commande des branches d'un switch) Effet de bord : l'accolade est coloriée alors qu'il ne faudrait pas !
- mode ASM68k colorisation en rouge d'une erreur dans l'écriture d'un nombre hexa de la forme (Ox3f avec un Oh au lieu d'un zéro !)
- Prototype de préaccentuation dynamique
  ('e --> é ,c --> ç {' } --> {'} )

  Une préférence "EDITPREFS(accentmode)" doit être positionnée à "preAccentuation" pour valider la préaccentuation, ou à "non" pour línvalider. Vous pouvez le forçer à "none" dans votre "~/.tk/.steadrc"
  Voir aussi menu Config pour l'activation/désactivation en ligne de ces binding

           Utilisation : pour saisir le texte :

             L'exemple de l'éléphant

           Il faut saisir :

             "L' exemple de l''el'ephant"

### apports de la version stead-v0.40-alpha (xx/07/97)

- installation : Suite à la présence de plus en plus rare de l'ancienne version de wish (3.6) nécessaire à STEAD, la procédure d'installation à changé. - S'il existe un exécutable appelé "wish3.6" installé proprement et accessible dans le PATH de l'utilisateur : dans ce cas tout va bien (rien n'a changé) - Sinon, voir la faq de stead... Rajout d'un fichier **stead.sh** (en Bourne Shell) permettant de simplifier de lancement dans les cas de plus en plus fréquent ou wish3.6 est mal voir non installé. Rajout d'un fichier **wish3.6** (en Bourne Shell) permettant d'appeler la bonne version de wish3.6 (suivant la platforme matérielle sur laquelle on travaille). Par défault, stead lance wish3.6
- interne : la procedure jedit:set_mode recoit un parametre optionnel "newMODE". Ceci permet de changer de mode directement par > jedit:set_mode asmTMS
- Rajout des raccourcis .. <...9> associés au coomande d'insertion de séparateurs de lignes (essayez vous-même) Car les raccourci ... déja présent sont utilisés pour autre chose sur Macintosh.
- Création d'un menu "Format/Special Convert=>" avec comme premier sous-menu : "Convert formated Unix Man file to readable text file" But : convertir le resultat d'une commande "man cvs" en fichier text lisible.
- mode asm68k : colorisation en rouge (car erreur) des nombres commencant par Ox au lieu de 0x (amelioration de la reconnaissance)
- mode TCL : les fichiers [Incr TCL] font passer stead en mode tcl (en attendant un mode special itcl) Rajour du mots clé "error" dans les mots à colorier en rouge plutot qu'en bleu.
- mode HTML : remplacement de l'intitulé du menu de navigation de "Label" en "Plan" Rajout des electricAlias url et url2 (expensible par ) Modifif mineur du menu template pour l'insertion des URL.
- colorisation : suppression d'un BUG qui pouvait faire qu'un caractere de début de ligne était inséré avant le return de la ligne précédente
  remplacement de "update" en "update idletasks" en fin de la proc "te:cmd:coloriseStruct" du fichier "colors_new.tcl"

### apports de la version stead-v0.39-alpha (13/01/97)

- modif du mode make (refonte sans fonctionnalité supplémentaire).
- création d'un mode java (mieux que le mode c++).
- refonte du mode c++ (reste probleme pour lister les objets/methodes/classes dans le menu dynamique).
- refonte du mode fortran (merci à Regis Gras (gras@cephag.observ-gr.fr pour les spécif) (je cherche cobayes pour le tester :-) Il reste a rajouter des alias et des sous-menu templates.
- modif mineur du mode c : menu "C/Make..."
- modif mineur du mode fortran : debut de gestion personnalisé des tabulations (proc jedit:mode_tabkey_proc du fichier fortran-mode.tcl)
- modif de l'indentation : si la chaine d'indentation (preference utilisateur) ne contient que des espaces (par defaut 4) alors un appui sur insère un nombre variable d'espace en fonction de la position du point d'insertion. (voir proc jedit:tabkey du fichier special_keys.tcl)
- modif mineur du focus lorsqu'on deiconify (par sur l'icone)
- mode C : bug du bouton "Funct" (menu à droite) : les declarations de fonction dont le nombre de parametres nécessitait plusieurs lignes n'étaient pas prises en compte dans la liste des functions. (remède modification de la chaine régulière TE_MODE_SEARCH_STRING du fichier "c-mode.tcl"

### apports de la version stead-v0.38-alpha (01/10/96)

- modif importante du mode Matlab par Marc Aldebert - inclusion du principe de la colorisation des motclés du mode TCL - prototypage d'une balance généralisés if-end, while-end, ... Tres lent pour l'instant, mais en instance d'optimisation. Pour les volontaire voir les fichiers stead/tk/balanceNew* - acces direct au macro matlab du répertoire courant (sélectionner le par bouble click et ouvrer le par ou bien voir les menu)
- modif importante du principe de la colorisation du mode TCL (David Carqueijal carqueij@ensta.fr) - utilisation de nouvelles procedures : - creePatternMotsClefs beforeMotsClefs AfterMotsClefs listeMotsClefs - te:cmd:coloriseStruct text colorStructure what - te:colours:clear_foregroundStruct text {what select} - recolorisation dynamique Le principe consiste a definir globalement une liste de description de chaque type d'elements a coloriser. Ce principe sera progressivement généraliser puis porté dans les autres modes.
- modif de la doc sur les modes (mais la doc meriterais une refonte !)

### apports de la version stead-v0.37-alpha (06/09/96)

- Modif du mode TCL (merci a David Carqueijal carqueij@ensta.fr)
- creation d'un mode MatLab (merci a Marc Aldebert )
- mode mail : prefix "| " remplacé par ">"

### Versions précédentes

----------- apports de la version stead-v0.30-alpha (26/10/95) -----------

- stead-v0.36-alpha (19/08/96)
- stead-v0.35-alpha (07/05/96)
- stead-v0.34-alpha (26/03/96)
- stead-v0.33-alpha (15/03/96)
- stead-v0.32-alpha (26/01/96)
- stead-v0.31-alpha (12/01/96)
- stead-v0.30-alpha (01/10/96)
- ...
- version te-a.014 (dernière version de Christian ARTIGUE /09/93)
- version te-a.001 (première version de Christian ARTIGUE /02/93)
- <\ul> <\body>