¿Cómo activar los números de línea en IDLE?

5 minutos de lectura

avatar de usuario
Usuario

En el shell principal de IDLE, los errores siempre devuelven un número de línea, pero el entorno de desarrollo ni siquiera tiene números de línea. ¿Hay alguna forma de activar los números de línea?

  • Vaya, ¿un IDE sin números de línea? ¿Alguien más encuentra eso tan extraño como yo?

    -Paul Feakins

    23 de marzo de 2019 a las 12:54

  • @PaulFeakins Los diseñadores originales de IDLE aparentemente sintieron que el número de línea en la barra de estado y las dos formas de ir a un número de línea eran mínimamente suficientes. Y hubo problemas técnicos para hacerlos bien. He usado IDLE diariamente y para mi uso casi no los he extrañado. En cualquier caso, los acabamos de agregar. Detalles en mi respuesta.

    – Terry Jan Reedy

    25 de julio de 2019 a las 5:12

  • En Python 3.8 IDLE se ha agregado una nueva opción en la barra de menú: Opciones -> Mostrar números de línea

    – Diroallu

    27 de octubre de 2019 a las 5:40

avatar de usuario
Chris Prosser

Versión 3.8 o más reciente:

Para mostrar los números de línea en la ventana actual, vaya a Options y haga clic Show Line Numbers.

Para mostrarlos automáticamente, vaya a Options > Configure IDLE > General y revisa el Show line numbers in new windows caja.

Versión 3.7 o anterior:

Desafortunadamente, no hay una opción para mostrar los números de línea en IDLE, aunque hay una solicitud de mejora abierto para esto.

Sin embargo, hay un par de maneras de evitar esto:

  1. En el menú de edición hay una opción para ir a la línea (hay un atajo predeterminado de Alt+G para esto).

  2. Hay una pantalla en la parte inferior derecha que le indica su número de línea actual / posición en la línea:

ingrese la descripción de la imagen aquí

  • En Mac, el atajo para navegar entre líneas es cmd+j.

    – tommy.carstensen

    25 de abril de 2014 a las 11:01

  • Si bien esta solución funciona, ¿por qué no se incluyeron líneas numeradas en la primera versión? Parece una característica obvia. Muy decepcionante que esto no esté incluido.

    – JayRugMan

    28 de diciembre de 2017 a las 1:29

  • Si usar corchetes para determinar el alcance es confuso, entonces los números de línea son ciencia espacial.

    – aj.toulan

    30 mayo 2018 a las 17:33

  • Se acaba de fusionar un parche mejorado para la solicitud de número de línea, problema 17535. Ver mi respuesta para más detalles.

    – Terry Jan Reedy

    25 de julio de 2019 a las 5:08

  • no funciona, y esto debería estar habilitado de forma predeterminada, ¿cómo encuentra la fuente del error mientras que el error informado indica claramente el número de línea, esto no tiene sentido?

    – usuario7082181

    5 de marzo de 2021 a las 19:22

Hay un conjunto de extensiones útiles para IDLE llamado IDLEX que funciona con MacOS y Windows http://idlex.sourceforge.net/

Incluye numeración de líneas y lo encuentro bastante útil y gratuito.

De lo contrario, hay muchos otros IDE, algunos de los cuales son gratuitos: https://wiki.python.org/moin/IntegratedDevelopmentEnvironments

  • Lo creas o no, ahora me gusta mucho VS Code de Microsoft. Es un gran IDE liviano con muy buenos complementos de python. También funciona en mac/linux/windows. Qué mundo tan extraño (bueno) vivimos en el que Microsoft se está volviendo de código abierto.

    – Davos

    1 de enero de 2017 a las 21:31

Si está tratando de rastrear qué línea causó un error, si hace clic con el botón derecho en el shell de Python donde se muestra el error de línea, aparecerá “Ir al archivo/línea” que lo lleva directamente a la línea en cuestión. .

Como lo mencionó Davos, puede usar el IDLEX

Sucede que estoy usando la versión de Linux y de todas las extensiones solo necesitaba LineNumbers. Así que descargué el archivo IDLEX, tomé LineNumbers.py de él, lo copié en la carpeta lib de Python (en mi caso es /usr/lib/python3.5/idlelib) y agregué las siguientes líneas al archivo de configuración en mi carpeta de inicio, que es ~/.idlerc/config-extensiones.cfg:

[LineNumbers]
enable = 1
enable_shell = 0
visible = True

[LineNumbers_cfgBindings]
linenumbers-show = 

Los números de línea se agregaron al editor IDLE hace dos días y aparecerán en el próximo 3.8.0a3 y posterior 3.7.5. Para las ventanas nuevas, están desactivadas de manera predeterminada, pero esto se puede revertir en el cuadro de diálogo Configuración, pestaña General, sección Editor. Para las ventanas existentes, hay una nueva entrada Mostrar (Ocultar) Números de línea en el menú Opciones. Actualmente no hay ninguna tecla de acceso directo. Se puede seleccionar una línea o un bloque de líneas haciendo clic en una línea o haciendo clic y arrastrando.

Es posible que algunas personas se hayan perdido Editar / Ir a línea. El menú contextual del botón derecho Ir a archivo/línea funciona en la salida grep (Buscar en archivos), así como en los trackbacks.

avatar de usuario
Akshay Vilas Patil

Como @StahlRat ya respondió. Me gustaría agregar otro método para ello. Hay un paquete de extensión para el editor inactivo predeterminado de Python Paquete de extensiones de Python.

avatar de usuario
Aarón

Como se mencionó anteriormente (una forma rápida de hacer esto):

pip install IDLEX

Luego creo un acceso directo en el escritorio (Win10) como este:

C:\Python\Python37\pythonw.exe "C:\Python\Python37\Scripts\idlex.pyw"

Las rutas pueden ser diferentes y deben cambiarse:

C:\Python\Python37

(Gracias por las excelentes respuestas anteriores)

  • Es C:\Python\Python37\pythonw.exe "C:\Python\Python37\Scripts\idlex.pyw" guardado como .bat en Windows?

    – Ynjxsjmh

    29 ago. 2019 a las 5:00

  • Primero, cree un acceso directo de pythonw.exe en el escritorio. En segundo lugar, haga clic derecho en el acceso directo -> propiedad o atributo (R). Tercero, llene Target(T): con C:\Python\Python37\pythonw.exe "C:\Python\Python37\Scripts\idlex.pyw". hecho.

    – Aarón

    29 de agosto de 2019 a las 11:25


  • Gracias, pero descubrí que podemos crear un idlex.bat archivo como que Python36\Lib\idlelib\idle.bat hace y crea un atajo para idlex.bat.

    – Ynjxsjmh

    29 de agosto de 2019 a las 11:44

¿Ha sido útil esta solución?