Vous n'êtes pas identifié(e).
Hors ligne
Hors ligne
Ce qui permet d'utiliser LESS avec les en-têtes de catégories et texte en gras en vert, les éléments soulignés en jaune et les résultats de recherche en rouge gras.
Or j'obtiens
Dans un terminal fenêtre : une écriture verte grasse et clignotante (pas très pratique à la lecture, cela capture l'attention et perturbe la concentration sur le contenu)
Dans une console virtuelle : une écriture verte non grasse sur fond gris (c'est mieux, mais ce n'est pas ce qui est promis).
Cela provient de la séquence d'échappement déclarée dans la variable LESS_TERMCAP_md (qui indique comment formater, ce que la page de manuel, doit mettre en gras) :
Or la couleur 74 ne peut être appliquée que si le code 38 est prononcée avant (le code 38 est prévu pour dépasser les 8 couleurs, allant de 30 à 37 pour l'écriture et de 40 à 47 pour le fond). Le code couleur 74 n'est donc pas compris. Et donc, il reste les codes 1 (gras), 32 (vert) et 5 (clignotant). Voila pour le terminal fenêtre (qui gère les 256 couleurs).
De plus la couleur 74 n'est pas verte.
Sous la console virtuelle qui ne dispose que de 8 couleurs, le code 74 est caduc, le terminal Linux fait ce qu'il peut pour retourner un rendu.
Cela met en avant que dans un terminal, il ne faut pas utiliser la palette des 256 couleurs, si l'on veut obtenir le même rendu, dans console (virtuelle), que dans un terminal fenêtre.
La correction est donc :
Et voila, ça rox
Dans Couleur à la most il nous est promis, les même couleurs que si l'on utilisait le pager most (non installer par défaut), en utilisant terminfo.
Le tuto réalisé, dans une console ou dans un terminal (fenêtre), un message d'erreur est retourné, lorsque la la commande man est utilisée:
Une fois la touche Entrée pressée :
Dans un terminal fenêtre : Aucune couleur n'est obtenue, les touches de déplacement flèches droite et gauche, pageUp, PageDown, Fin et Début ne sont pas disponibles. Le déplacement se réalise uniquement avec les touches Espace et Entrée.
Dans une console virtuelle : Idem, mais en plus ni la touche Entrée, ni la touche Espace, ne permet le déplacement.
... C'est normal, les fichiers des capacités des terminaux, terminfo, sont des fichiers binaires et doivent être compilés avec la commande tic.
Voila maintenant cela fonctionne correctement dans un terminal fenêtre.
Aussi que dans une console virtuelle, mais avec un petit défaut : Lorsque nous quittons la page de manuel, tout l'écran est vidé, seule est affichée l'invite
Il est beaucoup mieux d'utiliser terminfo que termcap qui chez GNU/Debian est obsolète. Mais en l'état, il est mieux ici, de se tourner vers la solution termcap (corrigée)
Alors, je me suis tourné vers la page de wiki Des pages de Man, en couleur !
Un doublon ?
... Pas tout à fait : Y est proposé deux méthodes pour coloriser les pages de manuel :
Une solution utilisant le pager most (qui doit être installé)
Et une autre, utilisant comme ici, les termcap. Mais le code 38 est bien présent, ce qui permet de comprendre la couleur 74. Toutes fois, utilisant une palette de 256 couleurs, le rendu n'est pas le même dans un terminal fenêtre que dans une console (virtuelle).
Dernière modification par agp91 (27-05-2024 17:31:26)
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
En ligne
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
En ligne
Reconstructed via infocmp from file: /usr/share/terminfo/x/xterm-pcolor
Le code a été obtenu par le retour de la commande infocmp, qui permet de "traduire" un fichier (binaire) de capacité terminfo.
La commande a retourné, dans un langage un peu plus compréhensible, , le contenu du fichier de capacité pour le type de terminal xterm-pcolor
Le code est pratiquement identique à celui donné dans le wiki (probablement du à l'évolution... Presque 9 ans)
... Bien que le code reste (peut-être) obscure, son origine est de confiance.
Les types xterm étant spécifique au terminaux fenêtre, cela peut expliquer le soucis en console.
Dernière modification par agp91 (28-05-2024 14:01:51)
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
En ligne
Mais puisque le type (xterm-pcolor) existe déjà, il est inutile de le recompiler sous un autre nom.
Il suffit juste d'indiquer à less (le pager par défaut de la commande man) d'utiliser ce type via la variable TERMTERM=xterm-pcolor man infocmp
Ainsi l'alias devient simplementalias man="TERM=xterm-pcolor man"Mais il n'ai pas recommander si l'on a un usage de la console pour lire des pages de manuel.
C'est faux, si tu regardes bien, il y a des différences :
Notamment bold, smso et smul qui change les couleurs pour proposer celle de most...
Dernière modification par agp91 (28-05-2024 14:03:09)
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
En ligne
Le soucis pour être utilisé en console, ce sont les séquences d’échappement 2J utilisées.
Les séquences J effacent l'écran :
J ED Erase display (default: from cursor to end of display).
ESC [ 1 J: erase from start to cursor.
ESC [ 2 J: erase whole display.
ESC [ 3 J: erase whole display including scroll-back buffer (since Linux 3.0).
Effectivement les paramètres clear et rmcup contiennent la séquence d’échappement 2J (effacer tout l’affichage).
Les remplacer par un simple J (effacer l'affichage du curseur à la fin), permet de résoudre le problème en console. Et ne modifie par le comportement dans un terminal fenêtre.
Maintenat, que cela soit, dans un terminal fenêtre, ou dans une console (virtuelle), TERM=mostlike man ... fonctionne comme il se doit.
Mais,
Adapter un type xterm pour fonctionner en console, reste du bricolage.
Il serait mieux, d'adapter un type linux (retourné par la commande infocmp linux) aux couleurs most.
Et obtenir deux types : xterm-mostlike et linux-mostlike
Dernière modification par agp91 (29-05-2024 11:28:30)
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
En ligne
Le fichier source mostlike est renommé en fichier mostlike.src
Les séquences 2J y ont été changées en J
Ajout d'une note explicatif sur l'origine de code et les modifications apportées.
Dernière modification par agp91 (29-05-2024 13:48:43)
La liberté est gratuite et accessible à tous. Sinon ça n'en est pas.
En ligne