Après un an et demi de développement, la version 6.5 de la bibliothèque ncurses est présentée, destinée à la création d'interfaces utilisateur en console interactives multiplateformes, et prenant en charge l'émulation de l'interface de programme curses de System V Release 4.0 (SVr4). La version 6.5 de ncurses est compatible au niveau du code source avec les branches ncurses 5.x et 6.0, mais étend l'ABI. Parmi les applications populaires créées avec ncurses, on peut citer aptitude, lynx, mutt, ncftp, vim, vifm, minicom, mosh, screen, tmux, emacs, less.
Parmi les nouveautés ajoutées :
- Les interfaces de programmation pour l'accès bas niveau à terminfo et termcap ont été enrichies de nouvelles fonctionnalités : tiparm_s pour transmettre des informations sur les paramètres de chaîne de terminal attendus, utilisés pour formater la sortie vers le terminal ; tiscan_s pour vérifier les capacités de formatage lors de la transmission des paramètres de chaîne à la fonction tiparm_s. Ces fonctions résolvent les problèmes liés au traitement de fichiers corrompus ou incorrects contenant des paramètres de terminal (terminfo et termcap).
- Une option d'assemblage « —enable-check-size » a été ajoutée pour simplifier l'initialisation sur les terminaux qui ne transmettent pas d'informations sur la taille de la fenêtre ou de l'écran. Lorsque l'option est activée, les données de position du curseur sont utilisées dans la fonction setupterm pour déterminer la taille de la fenêtre, si les informations de taille ne sont pas fournies par des variables d'environnement et ne sont pas transmises par ioctl.
- Des fonctions ont été ajoutées pour obtenir les indicateurs TTY à partir de structures de type SCREEN.
- Des vérifications ont été ajoutées pour une manipulation plus sécurisée des paramètres de chaîne dans les fonctions tiparm, tparm et tgoto.
Source : opennet.ru
