2009-08-07 24 views
21

Estoy buscando desarrollar una aplicación de consola en python que pueda ejecutarse tanto en Windows como en Linux. Para esto, me gustaría usar una biblioteca de consola de alto nivel como maldiciones. Sin embargo, hasta donde yo sé, curses no está disponible en Windows.biblioteca similar a curses para la aplicación de consola multiplataforma en python

¿Qué otras opciones tengo? Desafortunadamente, usar cygwin en Windows no es una opción ...

¡Gracias por su ayuda!

+0

así que, si miro sus respuestas, no parece haber una buena solución para mi problema ... probablemente intentaré obligar a los usuarios a usar cygwin en Windows.Desearme suerte;) –

+5

Existe una compilación disponible de una implementación de PDCurses para Python: http://www.lfd.uci.edu/~gohlke/pythonlibs/#curses –

Respuesta

6

Hay un wcurses. Nunca lo intenté pero puede satisfacer tus necesidades. Parece que no tiene compatibilidad con maldiciones completas, pero puede ser lo suficientemente cerca. Además, podría no estar utilizando el terminal DOS, pero abriendo una ventana GUI y dibujando texto monoespaciado dentro.

Otras opciones de modo de texto de Windows son:

Creo que ambas son solo ventanas.

+1

Solo una nota: última instantánea de 'wcurses' en [Curses para Windows & Python - archive.org] (http://web.archive.org/web/ 20101025073658/http: //adamv.com/dev/python/curses/) que encontré es de 2010. – sdaau

4

PDCurses funciona en Windows, pero no conozco ningún contenedor de Python. Me pregunto si el módulo curses podría implementarse en Windows con PDCurses?

-8

desarrollan dos interfaces para su programa, una interfaz de usuario de la interfaz de usuario de texto y una interfaz gráfica de usuario. Haz que la consola funcione solo en Linux. Nadie en Windows usa aplicaciones de consola de texto.

+1

+1 Los que sí usan aplicaciones de consola de texto en Windows usa cygwin, que tiene ncurses. Siempre es bueno si es posible separar la interfaz de usuario de la implementación y esto ofrece un buen incentivo para hacerlo. – DrAl

+8

Si una IU de texto es suficiente, sería un desperdicio escribir IMO tanto en texto como en gráficos. –

+4

bueno, las personas que usan esta aplicación también la usarían en Windows. especialmente porque lo usarían en Windows y en Linux, por lo que dos interfaces diferentes no serían agradables para ellos. Además, tendría que desarrollar dos interfaces, que preferiría no tener. –

3

No sé por qué las personas responden en los comentarios de interrogación, pero debustad tiene razón, hay una maldición prediseñados para Windows:

nota un montón de otras bibliotecas votos allí también . Después de hacerlo, instale PIP y la bpython intérprete interactivo (menos conocido pero excelente) para probarlo de inmediato:

pip install bpython 

también recomiendo el Urwid library de algo más elevado nivel. Nunca lo intenté en Windows, pero es should be possible con uno de los paquetes de curses.

2

Hace un momento abordé este problema por un paquete que estaba preparando (https://github.com/peterbrittain/asciimatics). No estaba muy contento con las soluciones que requerían que instalaras (o peor) crearas ejecutables binarios separados como PDCurses o cygwin, así que creé una API unificada que proporciona colores de consola, posicionamiento de cursor y entrada de mouse & de teclado para Windows, OSX y Plataformas UNIX.

Esto ahora es en vivo y ha sido probado en CentOS 6/7 y Windows 7/8/10 y OSX 10.11. Puedes instalarlo desde PYPI usando pip y luego usar la clase Screen para controlar tu consola. Como puede ver en el proyecto gallery, debe proporcionar todas las necesidades de su consola, pero si necesita algunas características adicionales, publique una solicitud de mejora en GitHub y veré lo que puedo hacer.

Cuestiones relacionadas