afficher >><< masquer ]
SAMPI - Editeur structuré
1. Le Problème et la Proposition
2. Le Langage Primitif de Représentation Textuelle
2.1. Présentation de la Syntaxe Concrète
2.2. Notations
2.3. Exemple de structuration des données
2.4. Exemple de structuration des traitements
2.5. Exemple de structurations connexes
3. Le Langage Complété pour la Structuration des Textes
3.1. Présentation de la Syntaxe Complétée
3.2. Etude quantitative de l'évolution des programmes
3.3. L'édition syntaxique
3.4. étude de cas : le langage LTR3 et l'atelier ENTREPRISE
4. L'Enrichissement du Langage par de Nouveaux Concepts
4.1. Présentation de la Syntaxe Abstraite
4.2. Les difficultés
4.3. Compléter la Syntaxe
5. La Formalisation des Solutions Techniques
5.1. L'évaluation fonctionnelle
5.2. La structuration par les objets
5.3. Modèle sémantique comparé de l'évaluateur
5.4. Comparaison critique
5.5. Construction de la Syntaxe Abstraite
6. Les Comparaisons avec d'autres Approches
7. Les Perspectives
8. Les Editeurs
8.0. brisé sur la barrière de la complexité (une fois de plus)
8.1. L'éditeur ligne : Manuel de l'utilisateur
8.2. L'éditeur page : Guide de l'utilisateur
8.2.0. L'état des travaux
8.2.1. Généralités
8.2.2. Le curseur
8.2.3. Les fenêtres
8.2.4. Les tampons
8.2.44.1. Le Buffer
8.2.44.2. Le Buffer-Edit
8.2.44.3. Les noms
8.2.44.4. Recherche sur les noms
8.2.44.5. Déplacement entre tampons
8.2.5. Les fichiers
8.2.6. Le mode "Défaire"
8.2.7. Commandes du Buffer
8.2.8. Commandes du Buffer-Edit
8.2.9. Résumé
9. Les Aspects d'Implantation
9.1. Contexte d'évaluation
9.2. La Syntaxe Abstraite : Manuel du concepteur
9.3. L'éditeur page : Guide de l'implanteur
Références
Rubrique Perl-Javascript

Les tampons

Un tampon est une définition de « texte » def ; il se définit par :

forme visuelle des champs du tampon

1. Le Buffer

2. Le Buffer-Edit

3. Les noms

4. Recherche sur les noms

5. Déplacement entre tampons

5. Déplacement entre tampons

Un déplacement entre tampons revient :

déplacement absolu

 *^X-v  visiter un tampon : selon que le nom est terminé ou non par "/" il s'agira d'un Buffer ou d'un Buffer-Edit.
 *^X-^Y  visiter le Kill Buffer ; pour des raisons de cohérence, la fenêtre ouverte sur le Kill Buffer est fermée dès qu'on la quitte.
 *^X-^V  visiter un fichier : le fichier et le tampon associé sont placés dans l'environnement des définitions courant englobant – en particulier, à partir d'un des tampons de la racine, le fichier visité est placé dans l'environnement global.
 *^X-f  visiter un « fichier plat » : un fichier plat est un fichier de caractères qui est mis en forme pour être accueilli par l'éditeur.
Note : le tampon d'un fichier plat n'est initialement associé à aucun fichier, et en particulier il n'est pas associé au nom du fichier plat d'origine, pour des raisons de cohérence des fichiers ; le nom du tampon, à la manière d'emacs, est construit à partir du nom du fichier.

déplacement depuis un Buffer

déplacement depuis un Buffer
env = Buffer-Edit

rep = Buffer
 *^X-e  visiter le Buffer-Edit associé au même tampon.
 *^X-^B  visiter le Buffer-Edit du tampon englobant : on va y retrouver entre autres le tampon dont on est parti.
 *^X-q  visiter le Buffer du tampon englobant ; si le tampon de départ est l'environnement global, la commande est refusée, puisque l'environnement global n'a pas de représentation.

déplacement depuis un Buffer-Edit

déplacement depuis un Buffer-Edit
env = Buffer-Edit

rep = Buffer

(le tampon désigné est le tampon devant lequel est placé le curseur dans le Buffer-Edit).

 *^X-^B  identique au cas du Buffer.
 *^X-q  identique au cas du Buffer.
 *q  visiter le Buffer associé au même tampon.
 *e  visiter le Buffer-Edit du tampon désigné.
 *v  visiter le Buffer du tampon désigné.
 *g  aller dans le Buffer du tampon désigné : les autres fenêtres sont détruites.
 *l  voir le Buffer du tampon désigné : on reste placé dans le Buffer-Edit de départ.

appel récursif

 *ESC-r  appeler récursivement l'éditeur, dans la fenêtre d'édition* : le Buffer local devient le Buffer ; l'holophraste sous lequel on voit le Buffer local devient l'holophraste minimal accessible.
 *ESC-q  quitter l'appel récursif.
Note : ces deux commandes permettraient, à plus long terme, de modifier la représentation du « texte » utilisé depuis le « texte » utilisateur : par exemple, on définirait les paramètres effectifs d'utilisation d'un autre « texte » dans le contexte textuel et visuel de leur apparition.

Note : ESC-q et ESC-r définissent dans emacs les commandes de remplacement interactif ou automatique d'un motif textuel par un autre ; elles ne sont pas définies ici.

hiérarchie des tampons

 *^X-h  afficher, dans une fenêtre d'alarme, la hiérarchie des tampons depuis un tampon donné.
Par exemple, dans les notations précédentes, il s'affiche :
-> "texte"
- -> "texte-1"
- -> "texte-2"