le Buffer
cons-bof-lgn : construit un début de Buffer.
cons-eof-lgn ‹col› ‹lgn› ‹x› : construit une fin de Buffer, sur la colonne ‹col› de numéro ‹x› sur la ligne ‹lgn›.
cons-eol-lgn ‹info-lst› ‹flag-nil› ‹lgn› ‹col<› ‹x<› ‹>col› ‹>x› : construit une fin de ligne (caractère de retour à la ligne LF) et retourne la ligne suivante :
‹info-lst› | liste des liens du caractère LF. |
‹flag-nil› | drapeau : - vrai : on remplit le champ d'information des colonnes, - faux : on ne le remplit pas – cas des colonnes hors de la zone d'accès. |
‹lgn› | ligne à finir. |
‹col<› | dernière colonne de la ligne – avant le LF. |
‹x<› | numéro de ‹col<› dans ‹lgn›. |
‹>col› | première colonne de la ligne suivante. |
‹>x› | numéro de ‹>col› dans la ligne suivante. |
la colonne
ins-col ‹col› ‹lgn› : insérer une colonne sur la colonne ‹col› de la ligne ‹lgn›.
donne | ![]() |
del-col ‹col› ‹lgn› : détruire la colonne ‹col› de la ligne ‹lgn›.
donne |
la ligne
unir-lgn ‹num› ‹lgn<› ‹col<› ‹>lgn› ‹>col› ‹lgrlgn›
unir des lignes :
‹num› | nombre de lignes détruites. |
‹lgn<› | ligne de "réception". |
‹col<› | colonne de "réception". |
‹>lgn› | ligne d'"envoi". |
‹>col› | colonne d'"envoi". |
‹lgrlgn› | longueur de la ligne de réception – après union. |
![]() | donne | ![]() |
fermer-lgn ‹hol› ‹info-lst› ‹oldfinlgn› ‹oldfinx› ‹newfinlgn› ‹newfinx›
unir des lignes :
‹hol› | holophraste de début de fermeture. |
‹info-lst› | liste des liens de début de fermeture – sous l'holophraste hol. |
‹oldfinlgn› | ancienne ligne fermée. |
‹oldfinx› | ancien numéro de la colonne fermée dans la ligne oldfinlgn. |
‹newfinlgn› | nouvelle ligne ouverte. |
‹newfinx› | nouveau numéro de la colonne ouverte dans la ligne newfinlgn. |
La fonction retourne l'holophraste de fermeture.
Fermer une ligne consiste, partant d'une liste de liens et d'un holophraste donnés, à remplacer dans les liens les champs finlgn et numfincol par leur nouvelle valeur new ; l'holophraste retourné est celui du premier lien pour lequel les champs n'ont pas l'ancienne valeur old.
ouvrir-lgn ‹lgn› ‹col›
ouvrir la ligne ‹lgn› sur la colonne ‹col› ; retourne la nouvelle ligne.
![]() | donne | ![]() |
completer-lgn ‹col› ‹x›
compléter la ligne sur la colonne ‹col› de numéro ‹x› ; on ajoute un nombre fixe, assez grand, de colonnes derrière ‹col›.
clean-lgn ‹hol› ‹oldlgn› ‹newlgn› ‹col› ‹x›
nettoyer la ligne :
‹hol› | holophraste de début de nettoyage. |
‹oldlgn› | ancienne ligne à nettoyer. |
‹newlgn› | nouvelle ligne à substituer à l'ancienne. |
‹col› | colonne de début de nettoyage. |
‹x› | numéro de la colonne col dans la ligne. |
Nettoyer une ligne c'est remplacer les liens "physiques" deblgn et finlgn sur l'ancienne ligne ‹oldlgn› par la nouvelle ligne ‹newlgn›.
l'information
set-info ‹col› ‹car› ‹info-lst› : fixer l'information de la colonne ‹col› : le caractère ‹car› et la liste de liens ‹info-lst›.
set-info-nil ‹col› : fixer l'information de la colonne ‹col› – cas des colonnes hors de la zone d'accès.
set-info-car ‹col› ‹car› : fixer l'information de « caractère » de la colonne ‹col› à ‹car›.
set-info-lst ‹col› ‹car› : fixer l'information de « liste de liens » de la colonne ‹col› à ‹info-lst›.
set-info-lst-nil ‹col› : fixer l'information de « liste de liens » de la colonne ‹col› à la liste vide.
set-info ‹hol› ‹col› ‹info-lst› : remplacer l'information de « liste de liens » de la colonne ‹col› par la liste de liens ‹info-lst› sous l'holophraste ‹hol›.
la liste de liens
cons-info-lst ‹debx› ‹deblgn› ‹finx› ‹finlgn› ‹info-lst› : retourne la liste de liens construite par le lien ‹debx› ‹deblgn› ‹finx› ‹finlgn› suivi de la liste ‹info-lst›.
cons-info-lst-deb ‹debx› ‹deblgn› ‹info-lst› : retourne la liste de liens construite par le lien ‹debx› ‹deblgn› suivi de la liste ‹info-lst› ; on ne remplit que les champs de début du lien.
cons-info-lst-fin ‹info-lst› ‹finx› ‹finlgn› : remplace dans la liste de liens ‹info-lst› le premier lien par ‹finx› ‹finlgn› ; on ne remplace que les champs de fin du lien – cette fonction complète cons-info-lst-deb.
incr-numdebcol ‹num› ‹info-ref› : incrémenter de ‹num› le champ numdebcol du lien ‹info-ref›.
incr-numfincol ‹num› ‹info-ref› : idem, incrémenter le champ numfincol.
decr-numdebcol ‹num› ‹info-ref› : idem, décrémenter le champ numdebcol.
decr-numfincol ‹num› ‹info-ref› : idem, décrémenter le champ numfincol.