Editor#

El panel del Editor de varios lenguajes de Spyder es el elemento clave del IDE, donde puedes crear, abrir y modificar los archivos de origen. El editor ofrece una variedad de características básicas, tales como autocompletado, análisis en tiempo real, resaltado de sintaxis, división horizontal y vertical, y mucho más. Además, integra una serie de poderosas herramientas para una experiencia de edición fácil y eficiente.

Spyder's Editor pane, split horizontally and with style analysis

Componentes clave#

El panel del Editor consta de las siguientes áreas:

Spyder's Editor pane, showing its different areas (described below)
  1. La barra lateral izquierda muestra los números de línea y muestra las advertencias de análisis de código que existen en el archivo actual. Al hacer clic en un número de línea selecciona el texto en esa recta, y haciendo clic a la derecha se establece un punto de interrupción.

  2. Las barras de desplazamiento permiten la navegación vertical y horizontal en un archivo.

  3. El menú contextual (clic derecho) muestra acciones relevantes a cualquier cosa que se haya seleccionado.

  4. El menú de opciones (icono «Hamburguesa» en la parte superior derecha) incluye opciones útiles y acciones relevantes para el Editor.

  5. La barra de ubicación en la parte superior del panel del Editor muestra la ruta completa del archivo actual.

  6. La barra de pestañas muestra los nombres de todos los archivos abiertos. También tiene un botón Navegar por las pestañas (a la izquierda) para mostrar cada pestaña abierta y cambiar entre ellas, que es útil si muchas están abiertas.

Interfaz#

Pestañas#

Puedes explorar y navegar entre archivos abiertos en el Editor con pestañas. Haz clic en el botón Navegar por las pestañas a la izquierda de la barra de pestañas para mostrar una lista de archivos abiertos, con la pestaña activa seleccionada.

Spyder's Editor pane, showing the tabs browser

Reordenar archivos arrastrando y soltando, o con Ordenar las pestañas alfabéticamente en el menú de opciones, que también permite cerrar todas las pestañas a la derecha de, o todas las pestañas excepto la activa.

Spyder's Editor pane, showing how to browse and sort open tabs alphabetically

Cambiador de archivos#

El Editor incluye un cambiador de archivos, que te permite navegar y cambiar entre varios archivos abiertos. El cambiador de archivos es útil para localizar cualquier archivo cuando hay varios archivos abiertos.

Spyder's Editor pane, showing the file switcher

Se puede acceder desde el menú Archivo ‣ Cambiador de archivos o Ctrl-P, e incluye una función de búsqueda. Puedes escribir cualquier parte del nombre de un archivo abierto y, si existe, puede ser cambiado pulsando Enter.

Spyder's Editor pane, showing searching and switching to an existing file

Dividir paneles#

El Editor puede dividirse horizontal y verticalmente en tantos paneles distintos como se desee. Esto permite visualizar y editar el contenido de varios archivos (o partes diferentes del mismo archivo) al mismo tiempo.

Spyder's Editor pane, showing how to split panels

Divide el Editor con los comandos en el menú de opciones Dividir verticalmente (Ctrl-Shift-{) y Dividir horizontalmente (Ctrl-Shift--), y utiliza Cerrar este panel (Alt-Shift-W) para cerrar el panel de división seleccionado.

Nota

Cerrar este panel cierra un panel dividido, mientras que Cerrar oculta todo el panel del editor (incluyendo todas las divisiones, que se restauran cuando se vuelve a abrir el Editor).

Editar características#

Coloreado de sintaxis#

Para mejorar la legibilidad de tu código, Spyder tiene una función de resaltado de sintaxis que determina el color y el estilo del texto en el editor, así como en el Terminal de IPython.

Puedes configurar y previsualizar los temas y fuentes de resaltado de sintaxis bajo Preferencias ‣ Apariencia. La sección Tema de coloreado de sintaxis te permite cambiar el color y el estilo de los elementos de sintaxis y el fondo para que coincida con tus preferencias. Puedes cambiar entre los temas disponibles en el menú desplegable, modificar el tema seleccionado, crear un nuevo tema y más. La sección Tipo de letra te permite cambiar el tamaño y la fuente de texto.

Spyder's Editor pane, showing how to switch between syntax highlighting themes

Nota

Los cambios realizados al tema de resaltado de sintaxis y a la configuración de fuentes son comunes a todos los archivos de fuente, independientemente de su idioma.

Celdas de código#

Una «celda de código» en Spyder es un bloque de líneas, normalmente un script, que puede ser fácilmente ejecutado todo a la vez en el Terminal de IPython. Esto es similar al comportamiento de «celda» en Jupyter Notebook y MATLAB. Puedes dividir tus scripts en tantas celdas como necesites o ninguna en absoluto, la elección es tuya.

Spyder's Editor pane, showing an example of a code cell

Puedes separar las celdas por líneas comenzando por:

  • # %% (separador estándar de celda), o

  • # <codecell> (separador de celdas de notebook IPython)

Proporcionar una descripción a la derecha del separador dará a esa celda su propio nombre en el Explorador de código. También puedes crear «subsecciones» añadiendo más signos de % al separador de celda, por ejemplo # %%% para crear una subsección de nivel 2, # %%%% para el nivel 3, etc. Esto muestra varios niveles en el panel Explorador de código.

Spyder outline pane, showing an example of sub sections

Nota

Esto solo afecta a cómo se muestra la celda en el Explorador de código, y no afecta a ejecutarla en el Editor.

Para ejecutar el código en una celda, usa Ejecutar ‣ Ejecutar la celda, el botón Ejecutar la celda actual en la barra de herramientas o el atajo de teclado (Ctrl-Enter/Cmd-Return por defecto). También puedes ejecutar una celda y luego saltar a la siguiente, permitiéndote pasar rápidamente por varias células, usando Ejecutar ‣ Ejecutar la celda y avanzar (Shift-Enter por defecto).

Formato automático#

El editor tiene soporte integrado para formatear automáticamente tu código usando varias herramientas populares, incluyendo Autopep8 y Black. El comando Formatear archivo o selección con {tool}, en el Source o en el menú contextual, formatearán el fragmento seleccionado (si se selecciona el texto) o todo el archivo activo.

Spyder Editor pane, showing an example of code selection formatting

Puedes tener el Editor automáticamente para autoformatear un archivo cada vez que guardes tu trabajo. Para configurarlo, ve a Preferencias ‣ Completado y análisis del código ‣ Estilo y formato de código ‣ Formato de código y activa la opción Autoformatear archivos al guardar.

Spyder's preferences dialog, showing checking the autoformat files on save setting

Ejecutar código#

El Editor te permite ejecutar un archivo completo, así como líneas específicas, selecciones o celdas.

Mientras tu código se ejecuta,

Ejecutar archivo#

Ejecuta un archivo completo del Editor usando el elemento del menú Ejecutar ‣ Ejecutar, el botón de la barra de herramientas Ejecutar archivo o la tecla F5. Usa Ejecutar ‣ Ejecutar de nuevo el último archivo para volver a ejecutar el archivo más reciente ejecutado con el anterior.

Ejecutar línea/selección#

Puedes ejecutar la línea actual o varias líneas seleccionadas usando la opción Ejecutar selección o línea actual desde la barra de herramientas o en el menú Ejecutar, así como con la tecla F9. Después de ejecutar la línea actual, el cursor avanza automáticamente a la siguiente, así que puedes pasar a través de tu código línea por línea. A diferencia de Ejecutar archivo, las líneas ejecutadas se muestran en la Terminal de IPython.

Ejecutar celda#

Para ejecutar una celda, coloca tu cursor dentro de ella y usa el elemento de menú Ejecutar ‣ Ejecutar la celda, el botón de la barra de herramientas Ejecutar la celda actual o el atajo de teclado Ctrl-Enter / Cmd-Return. Usa Ejecutar la celda y avanzar a la siguiente en el menú/barra de herramientas Ejecutar o Shift-Enter para saltar a la siguiente celda después de ejecutar, esto es útil para atravesar rápidamente las celdas.

Configuración de ejecución#

Puedes utilizar el cuadro de diálogo Configuración de ejecución por archivo para establecer el directorio de trabajo de cada archivo, el modo de consola (actual, dedicada o terminal de comandos del sistema), argumentos de línea de comandos, opciones de ejecución (borrar todas las variables, ejecutar en un espacio de nombres existente/vacío, depurar en un error) y más.

Spyder's Editor pane, showing the Run Configuration dialog

Para acceder a él, haz clic en Ejecutar ‣ Configuración por archivo… o pulsa Ctrl-F6 / Cmd-F6.

Navegación por código#

Buscar y reemplazar#

Para buscar texto en el archivo actual, usa Buscar ‣ Buscar texto o Ctrl-F / Cmd-F, y para reemplazarlo, usa Buscar ‣ Reemplazar texto o Ctrl-R / Cmd-R. Escribiendo la cadena de búsqueda en el panel resultante debajo del Editor resalta cada resultado y cuenta el total. Navega entre los resultados con los botones Buscar anterior y Buscar siguiente en el panel de buscar/reemplazar, sus correspondientes entradas en el menú Buscar, o utiliza las teclas F2 y F3. Usa . * para procesar texto de búsqueda como una expresión regular, Aa para tratarlo como sensible a mayúsculas y [–] para que solo coincida con palabras enteras (por ejemplo, para data, coincide con data() pero no con dataframe).

Spyder's Editor pane, showing the find and replace panel

Ir a la línea#

El diálogo Ir a la línea permite saltar a una línea específica en el archivo activo. Abrelo con Buscar ‣ Ir a la línea o Ctrl-L / Cmd-L, escribe el número de línea al que quieres desplazarte y pulsa Enter (o haz clic en OK).

Spyder's Editor pane, showing the go to line feature

También muestra el número de línea actual y el recuento total de líneas en el archivo.

Selector de clase/función#

Este panel, activado bajo Código fuente‣ Mostrar selector para clases y funciones, muestra (como aplicable) el nombre de la celda, la función/método y la clase en la que el cursor del Editor se encuentra dentro. Utiliza el menú desplegable para ver y saltar a las funciones, métodos y clases del archivo actual.

Spyder's Editor pane, showing the class and function selector panel

Completado y análisis del código#

Spyder utiliza el Protocolo de Servidor de Idioma (LSP) para proporcionar el completado de código y linting para el Editor, similar a VSCode, Neovim, y otros editores/IDE populares.

Nota

Muchos problemas con el completado y el linting están fuera del control de Spyder y son o bien limitaciones con el LSP o el código que se está introduciendo, pero algunas pueden ser trabajadas. Vea El autocompletado o la ayuda no funcionan para los pasos de solución de problemas.

Python está soportado por defecto, y los usuarios avanzados pueden añadir soporte de completado y linting para otros idiomas configurando los servidores LSP en Preferencias ‣ Completado y análisis de código ‣ Otros idiomas.

Completado de código#

El completado automático de código está activado de forma predeterminada en el Editor mientras escribes, pero también puede ser activado manualmente con Ctrl-Space/Cmd-Space, el cual muestra las posibles formas de completar (con una ayuda emergente para cada una) y los fragmentos de código disponibles. Por ejemplo, escribir cla mostrará la palabra clave class, el decorador classmethod y dos fragmentos incorporados con plantillas de clases. Selecciona la terminación deseada con las teclas de flecha y Enter, o haciendo doble clic.

Spyder's Editor pane, showing a code completion example

Puedes activar o desactivar el completado de código sobre la marcha, así como modificar cuando se activa y qué resultados se muestran, bajo Preferencias ‣ Completado y análisis del código ‣ General ‣ Completado. Spyder también te permite definir fragmentos de completado personalizados a utilizar, además de los ofrecidos por el LSP, bajo Preferencias ‣ Completado y análisis del código ‣ Opciones avanzadas.

Linting y estilo de código#

Spyder puede resaltar opcionalmente errores de sintaxis, problemas de estilo y otros problemas potenciales con tu código en el Editor, lo que puede ayudarte a detectar errores rápidamente y hacer que tu código sea más fácil de leer y entender.

Spyder's Editor pane, showing an example of a highlighted code error

El linting básico del Editor, desarrollado por Pyflakes, advierte los errores de sintaxis y posibles errores en tu código. Está activado por defecto, y puede ser deshabilitado o personalizado bajo Preferencias ‣ Completado y análisis de código ‣ Análisis de código.

Spyder's preferences dialog, showing linting settings

El análisis de estilo de código, desarrollado por Pycodestyle, señala las desviaciones de las convenciones de estilo en PEP 8. No está activo por defecto, pero puedes activarlo y personalizar los códigos de error Pycodestyle mostrados con las opciones Preferencias ‣ Completado y análisis de código ‣ Estilo y formato de código ‣ Estilo del código.

Spyder's preferences dialog, showing code style and formatting settings

Características de introspección#

Si hay una función, clase o variable para la que desea comprobar su definición, necesitas hacer Ctrl/Cmd-clic en su nombre en el Editor (o haz clic en su nombre y pulsa Ctrl-G / Cmd-G para saltar al archivo y línea donde se declara.

Spyder's Editor pane, showing the go to definition feature

Puedes pasar por encima del nombre de un objeto para ayuda emergente, como se describió en la documentación del panel de ayuda.

Spyder's Editor pane, showing an example of a hover hint

Finalmente, si escribes el nombre de una función, método o constructor de clase y luego un paréntesis abierto, aparecerá un calltip que mostrará los parámetros de la función a medida que los escribas, así como un resumen de su documentación. Estas características pueden ser habilitadas y personalizadas bajo Preferencias ‣ Completado y análisis de código ‣ Introspección.

Atajos de teclado#

Para ver los atajos de teclado primarios del Editor, consulta la sección bajo Ayuda ‣ Resumen de atajos. La lista completa se puede buscar, buscar y personalizar (en doble clic) en Preferencias ‣ Atajos de teclado.