ncurses在Windows上是否可用?

73

是否有在Windows下使用C/C++编写的ncurses库,可以在本地可调整大小的Win32窗口中模拟ncurses (而不是在控制台模式下)?


2
你知道PDCurses吗?它是curses库在Windows上的一种实现。这不是你要找的吗?你说的控制台模式是什么意思? - nnyby
我使用PDCurses,尽管文档声称可以调整窗口大小,但我无法做到。您受控制台窗口的设置限制。 - EvilTeach
EvilTeach,你可以使用PDCurses调整窗口大小,请查看PDCurses演示中的testcurs.c文件,它展示了这种效果。 - Bach
ncurses 5.8 (2011) 添加了对MinGW的端口。 - Thomas Dickey
1
现在有没有任何curses库可以与新的Windows终端一起使用? - Lothar
2个回答

39

1
这正是我在寻找的。Win32a项目朝着正确的方向发展。我已经与开发人员交谈过,有可能在某个时候将此实现作为PDCurses的一部分。 - gio
2
在Github上:https://github.com/Bill-Gray/PDCursesMod - Andrew

18
这种东西可能不存在"原样"。它在Linux或其他类UNIX操作系统上也并不存在。
ncurses只是一个帮助你管理与底层终端环境交互的库,但它本身不提供终端仿真器。
实际上在屏幕上显示东西(在您的要求中列出的“本地可调整大小的win32窗口”)的东西通常称为终端仿真器。如果您不喜欢Windows自带的那个(您并不孤单;地球上没有人喜欢),则有几个替代品。有一个名叫Console的程序,根据我的经验,有时会工作,并且似乎只是包装了一个底层的Windows终端仿真器(我不确定,但我猜测,因为有一个菜单选项可以实际访问该底层终端仿真器,确实会出现一个旧的、发脾气的Windows/DOS框,其中镜像了Console窗口中的所有内容)。
更好的选择是puttycyg。它连接到Putty(从Linux背景下来,这很接近我所习惯的,而且是免费的),但实际上访问的是底层的cygwin而不是Windows命令解释器(CMD.EXE)。因此,您可以获得Putty强大终端仿真器的所有优点,以及由cygwin提供的良好的ncurses(和许多其他)库。只需将一些命令行参数添加到启动Putty的快捷方式(或批处理文件)中,您的应用程序就可以在不通过Putty UI的情况下自动启动。

2
不幸的是,puttycyg已经停止维护。个人推荐使用Cygwin/XCygwin Ports相结合,并使用舒适易用的RoxTerm终端仿真器。 - DevSolar

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接