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
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
9.3.1. La structure de données du Buffer
9.3.2. Les utilitaires
9.3.3. L'écran
9.3.4. Les fenêtres
9.3.5. La modification
9.3.6. La structure de données du tampon
9.3.7. Les tampons
9.3.8. La configuration
9.3.9. Les modes
9.3.10. Les commandes
Références
Rubrique Perl-Javascript

Les fenêtres

les données globales

fen-init-0 : initialisation des variables globales des fenêtres :

fen-log liste des fenêtres sauvegardées.
var-22 numéro de la ligne d'écran de la ligne de contrôle (défaut=24).
var-60 numéro d'abscisse d'écran du message "<cursor>" (défaut=72).
fen-nbr nombre de fenêtres ouvertes.
fen-nomlog nom logique de la fenêtre ouverte (entre 0 et fen-nbr -1).

fen-log>old : sauvegarde de la fenêtre active.

fen-old>log : restauration de la fenêtre, de nom fen-nomlog.

fen-new>log : ouverture d'une nouvelle fenêtre, concernant les données du Buffer.

 

données globales d'une fenêtre

fen-nommem nom du tampon ouvert dans la fenêtre.
fen-typmem type de la fenêtre :
- aux : fenêtre du Kill Buffer,
- alm : fenêtre d'alarme,
- env : fenêtre de Buffer-Edit,
- rep : fenêtre de Buffer.
var-1 var-20 var-21 var-16 var-8 var-11  données de cadrage.
reginfo-lst reghol  données du Buffer local.
phyx phyy phycol phylgn  données du curseur physique.
curdeb curfin données du curseur.
beg end données de la page.

les fonctions externes

ACTIVER ‹log› : activer la fenêtre ‹log›.

REACTIVER ‹log› : idem, et réafficher la fenêtre.

DESACTIVER ‹log› : désactiver la fenêtre active fen-nomlog.

RELIRE ‹log› : relire les données la fenêtre ‹log› – complet.

RELIRE-log ‹log› : relire les données la fenêtre ‹log› – les données de la fenêtre uniquement.

ECRIRE : écrire les données de la fenêtre active fen-nomlog – complet.

ECRIRE-log : écrire les données de la fenêtre active fen-nomlog – les données de la fenêtre uniquement.

VISITER ‹mem› ‹typ› : ouvrir une fenêtre pour visiter le tampon ‹mem› de type ‹typ›.
Si la fenêtre active est celle du Kill Buffer ou une fenêtre d'alarme, elle est écrasée. Sinon, la fenêtre qui suit immédiatement la fenêtre active est écrasée. Sinon, c'est-à-dire s'il n'y a qu'une seule fenêtre ouverte, celle-ci est coupée en deux.

REENTRER : réentrer dans la fenêtre après un écrasement par la commande ^X-! – celle-ci n'étant pas une vraie fenêtre, elle est détruite dès qu'on sort du dialogue avec l'interpréteur.

AFFICHER ‹mem› ‹typ› : afficher le tampon ‹mem› de type ‹typ› sur la totalité de l'écran.

REAFFICHER ‹mem› ‹typ› : idem, avec le message "Exiting to Buffer ...".

fen-DELETE : détruire la fenêtre active.

deb-ALARME ‹mem› : la fenêtre courante devient une fenêtre d'alarme sur le tampon ‹mem›.

fin-ALARME : la fenêtre courante d'alarme est fermée.

fen-APPARAIT ‹mem› ‹typ› : test, vrai si la fenêtre sur le tampon ‹mem› de type ‹typ› est ouverte.

fen-FAMILY ‹mem› : retourne la liste des fenêtres qui sont de la famille du tampon ‹mem› – les fenêtres ouvertes sur des tampons englobés au sens large par ‹mem›.

les fonctions internes

PLACER : placer une nouvelle fenêtre sur l'écran ; retourne "faux" si la fenêtre active a été coupée et "vrai" si c'est la fenêtre suivante qui a été activée.

REDUIRE-haut ‹num› ‹log› : réduire la taille de la fenêtre ‹log› de ‹num› lignes par le haut.

REDUIRE-bas ‹num› ‹log› : idem, réduire par le bas.

ETENDRE-haut ‹num› ‹log› : idem, étendre par le haut.

ETENDRE-bas ‹num› ‹log› : idem, étendre par le bas.

REDUIRE ‹num› ‹flag-bas› : réduire la fenêtre active, par le bas si ‹flag-bas› est vrai, et réciproquement.

AGRANDIR ‹num› ‹flag-bas› : idem, agrandir.

ETENDRE ‹log› ‹log1› ‹log2› : étendre la fenêtre ‹log› de ‹log1› à ‹log2›.

COUPER : couper la fenêtre active en deux : retourne "faux" en cas d'échec, c'est-à-dire si l'une des deux fenêtres coupées est d'une taille strictement inférieure à 2 lignes.

les fonctions auxiliaires

fen-pred ‹log› : fenêtre précédente de ‹log› – la fenêtre précédant la première fenêtre de l'écran est la dernière.

fen-succ ‹log› : fenêtre suivante.

fen-fstq ‹log› : première fenêtre d'écran.

fen-lstq ‹log› : dernière fenêtre d'écran.

fen-fstp ‹log› : test, vrai si ‹log› est la première fenêtre d'écran.

fen-lstp ‹log› : idem, dernière fenêtre d'écran.

fen-put ‹symb› ‹val› ‹prop› : sauvegarder sur le symbole ‹symb› pour la propriété ‹prop› la valeur ‹val›‹symb› = fen-log ; ‹prop› = le nom de la propriété ; ‹val› = les données de la fenêtre.

fen-get ‹symb› ‹prop› : retourner la valeur sur le symbole ‹symb› de la propriété ‹prop›.

fen-rem ‹symb› ‹prop› : supprimer sur le symbole ‹symb› la propriété ‹prop›.

fen-ins ‹symb› ‹prop› : insérer sur le symbole ‹symb› la propriété ‹prop›.