★ CODING ★ CLASSEURS WEKA ★ Comment exploiter toutes les ressources et augmenter les performances de votre AMSTRAD CPC ★ |
4/4.5.4 Programmation d'un traitement de texte | Coding Classeurs Weka |
4/4.5 - Utilisation du Turbo-Pascal4/4.5.4 Programmation d'un traitement de texte Afin de mieux comprendre l'utilisation des commandes du Turbo-Pascal, nous vous présentons un programme qui réalise la fonction de traitement de texte sur une ou plusieurs pages d'écran. Il est écrit totalement en Turbo-Pascal et présente l'avantage d'utiliser de nombreuses commandes. La mémoire nécessaire pour entrer la source de ce programme, pour le compiler et l'exécuter n'est disponible que sur les CPC 6128. Ce programme ne concerne donc que les possesseurs de 6128. D'une manière générale, Turbo-Pascal n'est vraiment intéressant que sur les CPC 6128. En effet, sur les CPC 464 et 664, seulement 6 Ko de mémoire sont réservés pour le programme exécutable et les données, ce qui est bien peu. Pour donner un ordre d'idées, le traitement de texte dont le listing est donné ici demande environ 5 Ko de mémoire pour les données, 9 Ko de mémoire pour le code exécutable et 15.6 Ko pour le code source. Il s'agit d'un traitement de texte pleine page dont les possibilités sont les suivantes : En mode « un écran » :
En mode « plusieurs écrans » : Les fonctions disponibles sont les mêmes que celles du mode « un écran ». Le scrolling d'écran (haut et bas) est automatique lorsque le curseur se trouve positionné respectivement sur la dernière ligne ou sur la première ligne de l'écran. Le programme est organisé en plusieurs procédures dont voici les listes et les descriptions : Lecture Cette procédure lit un caractère tapé au clavier et le renvoie dans la variable caractère Ch. On notera l'utilisation de l'ordre keypressed de la manière suivante : While not keypressed do;qui signifie : tant qu'aucune touche du clavier n'est pressée, attendre.Lit On notera également l'élimination du code ESCape (127). En effet, ce caractère précède le code de certaines touches pour préciser que leur fonction est spéciale. Cette procédure lit plusieurs caractères tapés au clavier et les affiche sur l'écran. Le retour chariot en fin de saisie est automatique. La longueur du texte à saisir est placée dans la variable longueur par l'appelant, et le texte entré au clavier est disponible dans la variable A en sortie de la procédure. Saisie 1 Cette procédure réalise la saisie de texte plein écran en mode une page. Le curseur peut être déplacé en utilisant les touches du pavé numérique. La touche BS (Back Space) peut être utilisée pour effacer le caractère qui se trouve à gauche du curseur. La touche home positionne le curseur au début de la ligne courante, et la touche end à la fin de la ligne courante. Une ligne peut être insérée avant la ligne courante en appuyant simultanément sur les touches CTRL et I. La ligne courante peut être effacée en appuyant simultanément sur les touches CTRL et X. Enfin, la fin de saisie de texte est signalée par l'appui simultané des touches CTRL et F. Saisie 2 Cette procédure reprend les facilités d'édition de Saisie 1 mais intègre en plus un scrolling automatique vers le haut et vers le bas lorsque le curseur se trouve respectivement sur la dernière ou sur la première ligne de l'écran. Depl_haut Cette procédure déplace le curseur vers le haut et réalise éventuellement un scrolling d'écran si nécessaire (curseur positionné sur la première ligne de l'écran). A_la_ligne Cette procédure positionne le curseur au début de la ligne qui suit la ligne courante, et réalise éventuellement un scrolling d'écran si nécessaire (curseur positionné sur la dernière ligne d'écran). Depl_bas Cette procédure déplace le curseur vers le bas et réalise éventuellement un scrolling d'écran si nécessaire (curseur positionné sur la dernière ligne de l'écran). Initialisation Cette procédure initialise les diverses variables du programme en début d'exécution. Beep Cette procédure émet un beep sonore. Elle est appelée par le programme principal ou par les diverses procédures lorsqu'une erreur d'ordre général se produit. Voir la liste de la procédure Beep partie 4 chapitre 4.5.2 pages 4 à 6. Sauvegarde Cette procédure sauvegarde sur disquette ou disque dur le texte entré. La sauvegarde se fait dans un fichier texte. La première ligne du fichier texte précise le nombre de lignes du fichier. Les autres lignes représentent le texte entré, en clair. Cette procédure initialise les diverses variables du programme en début d'exécution. Retrouve Cette procédure lit le fichier écran dont le nom a été précisé. Les 25 premières lignes sont affichées à l'écran, et le curseur est positionné en haut et à gauche de l'écran. Programme principal Il fait appel aux diverses procédures que nous venons d'énumérer selon l'ordre précisé dans l'ordinogramme ci-dessous : Ordinogramme du traitement de texte Le programme de traitement de texte en Turbo-Pascal®
|