web-dev-qa-db-fra.com

Ncurses est-il disponible pour Windows?

Existe-t-il des bibliothèques ncurses en C/C++ pour Windows qui émulent ncurses dans des fenêtres Win32 natives redimensionnables (pas en mode console)?

53
gio
28
wbruna

Une telle chose n'existe probablement pas "en l'état". Cependant, il n'existe pas vraiment sous Linux ou d'autres systèmes d'exploitation de type UNIX.

ncurses n'est qu'une bibliothèque qui vous aide à gérer les interactions avec l'environnement terminal sous-jacent. Mais il ne fournit pas lui-même d'émulateur de terminal.

La chose qui affiche réellement des choses à l'écran (qui, selon vos besoins, est répertoriée comme "fenêtres Win32 redimensionnables natives") est généralement appelée un émulateur de terminal. Si vous n'aimez pas celui fourni avec Windows (vous n'êtes pas seul; personne sur Terre ne l'aime), il existe quelques alternatives. Il y a Console , qui selon mon expérience fonctionne parfois et semble simplement envelopper un émulateur de terminal Windows sous-jacent (je ne sais pas avec certitude, mais je suppose, car il existe une option de menu pour réellement avoir accès à cet émulateur de terminal sous-jacent, et bien sûr une vieille boîte croustillante Windows/DOS apparaît qui reflète tout dans la fenêtre de la console).

Une meilleure option

Une autre option, qui peut être plus attrayante, est puttycyg . Il se connecte à PuTTY (qui, venant d'un arrière-plan Linux, est assez proche de ce à quoi je suis habitué et gratuit) mais accède en fait à un cygwin sous-jacent au lieu de l'interpréteur de commandes Windows (CMD.EXE). Vous bénéficiez donc de tous les avantages de l'émulateur de terminal génial de PuTTY, ainsi que des bibliothèques Nice ncurses (et bien d'autres) fournies par cygwin. Ajoutez quelques arguments de ligne de commande au raccourci qui lance PuTTY (ou le fichier batch) et votre application peut être lancée automatiquement sans passer par l'interface utilisateur de PuTTY.

16
Adam Batkin