Ipython: Mensaje de color para incrustar ()

Creado en 4 dic. 2018  ·  10Comentarios  ·  Fuente: ipython/ipython

import IPython; IPython.embed() no tiene colores para mí. https://github.com/ipython/ipython/issues/9450 está relacionado pero es antiguo.

IPython 7.1.1
Python 3.6.6
Ubuntu 18.04

Comentario más útil

Para cualquiera que se encuentre con esto, pude solucionarlo así:

IPython.embed(colors="neutral")

Todos 10 comentarios

Aquí igual.

iPython 7.1.1
Python 3.7.0,
Mac OS X 10.14

También aquí.

IPython 7.2.0
Python 3.6.6
RHEL 7.4 / Mac OS 10.14

Parece que este problema se origina en # 11265.

https://github.com/ipython/ipython/blob/0acd580fce7192044a6f846dd09d31d498018347/IPython/terminal/embed.py#L369 -L371

¿Por qué el valor predeterminado ahora es asignar colores implícitamente a 'NoColor'?

Para una solución sucia, configuré

IPython.embed(using=False)

que obviamente está abusando del código, y usa IPython.core.async_helpers._AsyncIORunner lugar de IPython.core.async_helpers._pseudo_sync_runner . Para mi caso particular, no estoy seguro de los efectos secundarios no deseados que pueda tener.

También estamos abordando este problema, que es una de las cosas que nos impide actualizar desde la versión 5.x ... Realmente apreciaríamos una solución para este problema.

Sí, este es un comportamiento extraño. En mi caso, toda la configuración se sobrescribe sin la solución de @topherocity

Parece que todavía es un problema.

Sigue siendo un problema tanto en Windows como en Linux. Por cierto, puede usar %colors linux o %colors lightbg antes de que se solucione.

Sigue siendo un problema tanto en Windows como en Linux. Por cierto, puede usar %colors linux o %colors lightbg antes de que se solucione.

@ Arnie97 ¿Podría dar más detalles sobre eso? No sé a qué te refieres con "usar %colors linux ".

Escriba '% colors linux' en el terminal integrado y presione Intro.

Para cualquiera que se encuentre con esto, pude solucionarlo así:

IPython.embed(colors="neutral")

¡Gracias @banool!

Espero que esto también ayude a otros, pero aquí está la lista de opciones de color predeterminadas. Esto se toma de la excepción que se genera si intenta utilizar un rasgo de color no admitido.

The 'colors' trait of an InteractiveShellEmbed instance must be any of ['Neutral', 'NoColor', 'LightBG', 'Linux'], but a value of True <class 'bool'> was specified

Para otro ejemplo usando el rasgo de colores "Linux" . Obtengo una bonita terminal de colores brillantes con colores de Linux.

$ python -c 'import IPython; IPython.embed(colors="Linux")'
Python 3.7.4 (default, Aug 13 2019, 15:17:50) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.8.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]:    
¿Fue útil esta página
0 / 5 - 0 calificaciones