Forum Programmation.c libaescprintf (ANSI Escape Sequences Color Print Format).

Posté par  (site web personnel) . Licence CC By‑SA.
Étiquettes : aucune
2
15
sept.
2017

Bonjours les C, C++,

Il y eu relativement longtemps,

alors que je j'essayais de construire une bibliothèque permettant de colorier et de styler

la sortie sur le terminal, juste pour s'amuser

je suis tombé sur un os…

Un bug insolvable de part sa nature:

quand on colorie le background du terminal et

que l'on ajoute un linefeed (retour a la ligne)

et bien toute la ligne prenait la couleur précédemment définis, malgré le linefeed !

:note: En faisant des recherche dans le système (man page, fichier info) j'ai remarquer que ce bug existe depuis très longtemps.


De nos jours cherchant de nouvelle idées et ayant repris le projet qui avait un problème

quelle joie de remarquer que le bug récurrent sur les terminaux s'était arranger tout seule.

Alors je décida de publier le projet bien que basé sur les séquences d'échappement ANSI et

du coup compatible seulement avec les terminaux acceptant les séquences d'échappement ANSI.


Mais la plupart des terminaux disponible dans les dépôt GNU/Linux sur le quel j'ai tester ma library fonctionne a merveille,

enfin presque certains ne clignote pas.

Les terminaux suivant fonctionnes:

  • gnome-terminal.

  • LXTerminal.

  • Qterminal.

  • Terminal MATE.

  • xfce4-terminal.

  • xterm.


En faites je publie cette mini library nommé: libaescprintf (Ansi Escape Sequence Color Print Format),

dans le but de trouver un dinosaure ayant assez de connaissances avec termcap,

afin de créer un bibliothèque légère et universel pour la coloration de la sortie sur un stream.

:note: Car j'ai bien sur chercher a trouver les équivalents au caractères échappement ANSI par termcap, par moi même, sans succès.

Merci pour vos commentaires éclairés.

  • # ecma-48

    Posté par  . Évalué à 2. Dernière modification le 15 septembre 2017 à 20:00.

    Le seul truc un peu standardise que je connaisse au niveau des terminaux, c'est l'ecma-48.
    Le pdf est gratuit sur le site officiel, et assez petit pour que je me le soit imprime, le papier reste parfois bien utile :)
    La doc est plutot lisible de mon point de vue.Pas sur que tu y trouves ton bonheur, mais ca devrait t'y aider.

    Pour ce qui est de termcap, de memoire ca emule du VT100, et toujours de memoire c'est compatible e-48, du coup ca devrait t'aider sur ton probleme, bien que je ne sois pas un dino boudiou! :)

    Ah, j'oubliai: merci pour tes partages, tu devrai vraiment en faire des journaux, tu aurais plus de visibilite.

    • [^] # Re: ecma-48

      Posté par  (site web personnel) . Évalué à 1. Dernière modification le 16 septembre 2017 à 13:51.

      Merci pour la réponse, c'est gentil,

      j'ai télécharger le pdf aussi, merci pour le lien.

      Sinon j'ai regarder la page de manuel de terminfo, ca parle aussi des fonctionnalités de ma library.

      Autrement je peut regarder les sources de tput pour voir comment il fait ce programme pour que cela soit portable.

      Cordialement Linuxator.

      le papier reste parfois bien utile

      Je suis entièrement d'accord malgré les arbres car le ronflement du ventilo et l'écran qui brule les yeux me déplait.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.