Potenciando Python en Geany

Este post se divide en dos partes, primero lo básico: chequeo estático de código, y luego lo el plato fuerte: autocompletado para Python.

Chequeo estático del código

Ayer por la noche luego de programar un poco en Sunshine me puse a jugar con el plugin para extender Geany con Lua, entonces en 5 minutos ya tenía un plugin escrito que me hacía chequeo estático del código en Python y en CoffeeScript, señalando errores e imports no usados, lo cual es muy útil cuando se está trabajando a toda prisa para encontrar errores tontos que se esconden a la vista.

Para lograr esto se instala pyflakes, el chequeador estático para Python, coffeescript, el compilador de ese lenguaje, y el plugin para extender Geany en Lua.

$ sudo aptitude install pyflakes coffeescript geany-plugin-lua

Se abre un archivo de Python y vamos a “Construir” » “Establecer comandos de construcción”; se pone en la primera opción, donde dice “Compilar” se escribe:

pyflakes "%f"

y en la expresión regular para detectar errores se pone:

(.+):([0-9]+):(.+)

Quedando de esta forma:

Entonces cuando se tiene abierto un archivo de Python y se presiona F8 se ejecuta el chequeo estático señalándose los errores en el mismo.

Para lograr lo mismo con CoffeeScript, chequeo estático y compilación, se abre un archivo .coffee y se pone en los comandos de compilación:

coffee -c "%f"

Con la expresión regular para errores:

Error: In (.+), .* ([0-9]+): (.+)

Para ejecutar automáticamente estos comandos de compilación cada vez que se salva un archivo y podernos olvidar de apretar F8, copie el archivo contenido aquí en su carpeta personal “~/.config/geany/plugins/geanylua/events”, si esa estructura de directorios no existe: créala.

Así cada vez que salve un archivo en Python o CoffeeScript este es comprobado de forma estática.

Autocompletado para Python

El otro juguete que hice fue este plugin que permite tener un autocompletado comparable con el del plugin PyDev de Eclipse, pero con la velocidad y ligereza de Geany.

Instale rope, una biblioteca para refactorización y análisis de código:

$ sudo aptitude install python-rope

Descomprima los archivos contenidos aquí en la carpeta “~/.config/geany/plugins/” y abra el las preferencias de combinaciones de teclas “Editar” » “Preferencias” » “Combinaciones” y busque la entrada “Python completion” y asígnele la combinación de teclas de autocompletado “<Control>space”, no tema si le hace colisión con el autocompletado por defecto, sobrescriba la combinación sin miedo, si el archivo en el que está siendo ejecutado el autocompletamiento no es de Python se ejecutará la acción por defecto de completado del editor.

De esta forma ya debe contar con un autocompletado decente en Geany.

Concluyendo

Creo, sinceramente, que este plugin es genial para entornos ligeros y adiós a Eclipse, a NetBeans, a KomodoEdit y al bonito SublimeText. Con teste plugin se puede tener la potencia de los grandes editores en el pequeño y sencillo Geany.

En caso de que la “configuradera” esta le sea muy complicada o pesada simplemente use mi configuración de Geany. Salve su carpeta “~.config/geany”, por si a caso, y descomprima allí la nueva configuración; instale:

$ sudo aptitude install pyflakes coffeescript python-rope geany-plugin-lua

y tendrá su editor listo para trabajar.

Espero lo disfruten mucho y me comuniquen sus impresiones del invento este… jejeje….


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.

  1.   Giskard dijo

    Muy bueno! Voy a «bookmarkearlo» para probarlo luego 🙂

  2.   taregon dijo

    Gracias por el aporte y con calidad cubana 😉

  3.   Eddy Ernesto del Valle Pino (xigurat) dijo

    @Titotatin

    Yo soy el autor del post original y el que hizo el plugin.
    Ese tema es oblivion para geany.
    Actualmente comunidades.uci.cu está caído pero ahí en los repositorios git está hosteado un repo que tiene mi configuración de geany tal y como lo uso.

    Saludos, Ed.

    1.    Titotatin dijo

      Muchas gracias, la verdad es que me gusta mas que el tema que viene por defecto.

      Saludos.

  4.   Titotatin dijo

    Muy buen aporte. Por cierto, ¿qué tema es el que se ve en las imágenes del geany?

  5.   Daniel G. dijo

    no me aparece la entrada de python completion en Combinaciones, copié toda la carpeta de configuración e instale los paquetes tal como dice la sección Concluyendo del post 😮

    1.    Daniel G. dijo

      ya encontré lo que me estaba faltando hacer, en Preferencias de complementos, hay que habilitar el complemento Lua y listo 😛

      1.    Daniel G. dijo

        olvidé mencionar que Lua se tiene que habilitar en Herramientas, Administrador de complementos, y si hay no funciona, revisar Editar, Preferencias de complementos 🙂

  6.   sabina dijo

    necesito aprender y un maestro como tu me hace falta cubano

  7.   scGabriel dijo

    Casi 10 años después de la publicación y la orientación y ayuda sigue teniendo valor
    Muchas gracias! Me ayudó un mogollón