Question

Je veux comprendre comment des programmes tels que vim ou le travail de man dans une coquille. Comment peuvent-ils laisser le rouleau utilisateur, actualiser l'affichage et tel?

Ils semblent interagir avec une bibliothèque de la console et de manipuler donc ce que nous voyons. Qu'est-ce qui se passe réellement?

Était-ce utile?

La solution

Le terminal a ce qu'on appelle un pilote de terminal . Ce n'est pas un conducteur dans le sens d'une interface au matériel, mais il interprète certaines séquences de caractères qui provoquent à effectuer des opérations telles que le défilement, les attributs de texte, et ainsi de suite.

Les séquences de caractères sont stockées dans la base de données terminfo . Une bibliothèque appelée malédictions (ou son équivalent moderne, ncurses ) lit la base de données terminfo et émet les différentes séquences de caractères en fonction des fonctions appelées.

La séparation de la base de données terminfo à partir du pilote terminal lui-même permet à des programmes pour soutenir un certain nombre de terminaux tels que xterm, la console de texte, les clients du réseau, même à distance des terminaux passifs reliés par l'intermédiaire d'une ligne série.

Autres conseils

Voici une excellente façon à:

Vous voulez sans doute jeter un oeil au chapitre 17 -. Utilisation de la borne

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top