Vim Autocompletar para Python

Fariba Laiq 21 junio 2023
  1. Vim para Python
  2. Vim Autocompletar para Python
Vim Autocompletar para Python

Vim, abreviatura de Vi mejorado, es un poderoso editor de texto que a menudo se prefiere como entorno de desarrollo en Python. Este artículo explorará Vim y su función de autocompletar para Python.

Vim para Python

Vim ha existido al servicio de los desarrolladores en todo el mundo, una hazaña bastante admirable en este mundo en constante cambio de continuo avance tecnológico. Se sabe que Vim sigue una escuela particular de pensamiento con respecto a sus características, que solo se puede explicar mejor con el término: Eficiencia del teclado.

Significa que Vim se creó en torno a la idea de que, al igual que un escritor con lápiz y papel, un desarrollador de software debería poder escribir su código de manera eficiente sin distraerse con una miríada de otras distracciones, como tener que desplazarse o encontrar opciones para seleccionar durante el desarrollo. . Para un desarrollador, el teclado es su bolígrafo.

Vim sigue un lenguaje de comandos estructurado y operar dentro de él puede ser intimidante al principio. Sin duda, hay muchos comandos clave a los que debemos acostumbrarnos antes de que finalmente podamos dominar el arte de la programación en un entorno libre de distracciones como Vim.

Sin embargo, los comandos existen en una pila lógica y fácil de entender, lo que hace que acostumbrarse sea mucho más rápido.

Características de Vim

Vim y Python hacen una combinación poderosa y son una preferencia para muchos desarrolladores de software.

Vim es fácil de configurar como un IDE con muchos complementos para ofrecer. Estos ayudan al desarrollador de software a personalizar Vim y crear un entorno que mejor se adapte a sus necesidades de desarrollo.

Si bien no es posible cubrir todas las funciones disponibles que se pueden usar para utilizar mejor Vim como IDE en este artículo, sí podemos proporcionar una lista de las más demandadas:

  1. Diseños divididos

    ​Podemos abrir un nuevo archivo justo debajo del archivo actual usando: sp <nombre de archivo>.

  2. Código de plegado

    ​Podemos colapsar clases o métodos que no son vitales para que los veamos completamente en este momento.

  3. Amortiguador

    Vim ofrece fácil acceso a nuestros archivos abiertos recientemente con la ayuda de búferes. Simplemente use b <nombre o número de búfer> para abrir un archivo o ls para listar todos los búferes.

  4. Compatibilidad con UTF-8

    ​Podemos asegurarnos de que Vim está usando UTF-8 para la codificación al configurarlo usando este script: set encoding=utf-8.

  5. Marcar espacios en blanco innecesarios

    Con un editor como Vim, es posible que haya espacios en blanco adicionales cuando estamos desarrollando. Podemos hacer que Vim marque este espacio en blanco para detectarlo y eliminarlo fácilmente.

    au BufRead,BufNewFile *.py,*.pyw,*.c,*.h match BadWhitespace /\s\+$/
    
  6. Sangría automática

    Con el uso de Python como lenguaje de desarrollo, la sangría es una parte crucial de la fase de desarrollo. La sangría automática ayuda al desarrollador a preocuparse menos por los errores causados por la sangría adicional o la falta de sangría.

    A veces, cuando la definición de un método dura más de una línea, la sangría automática no funciona. Podemos contrarrestar esto configurando indentpython.vim así:

    Plugin 'vim-scripts/indentpython.vim'
    
  7. Verificación de sintaxis

    La marca de cualquier IDE moderno es su capacidad para mantener la sintaxis de cualquier lenguaje de desarrollo. Podemos configurar esto para Vim agregando el complemento sintáctico y flake8 para agregar la función pep8 de esta manera.

    Sintáctico:

    Plugin 'vim-syntactic/syntactic
    

    Escama8:

    Plugin 'nvie/vim-flake8' #adds pep8
    
  8. Pep8

    ​Podemos configurar pep8 checks para Vim para mantener una revisión de nuestros estándares de codificación.

Vim Autocompletar para Python

El mejor complemento para que la función Autocompletar esté disponible para Python es YouCompleteMe. Si bien es cierto que YouCompleteMe usa varios otros autocompletados como Jedi para funcionar, es el mejor complemento que existe para las versiones recientes de Python.

Podemos usar Vundle para instalarlo y configurarlo en nuestro entorno así:

Bundle 'Valloric/YouCompleteMe'

Podemos encontrar las instrucciones de instalación completas en esta documentación extensa para todos los tipos de SO.

Aquí se explica cómo configurarlo en un sistema Linux de 64 bits:

  1. Comenzamos ejecutando el siguiente comando para instalar todos los paquetes completos. El siguiente comando instalará el complemento YCM a través de Vundle, CMake, Vim y Python; si ya tiene estos paquetes instalados, no se reinstalarán.

    apt install build-essential cmake vim-nox python3-dev
    
  2. Ahora, instalamos mono-complete, go, node, java y npm con el siguiente comando:

    apt install mono-complete golang nodejs default-jdk npm
    
  3. Ahora, todo lo que debemos hacer es compilar YCM así:

    cd ~/.vim/bundle/YouCompleteMe
    python3 install.py --all
    

Si bien la instalación es bastante sencilla, podemos personalizarla así:

let g:ycm_autoclose_preview_window_after_completion=1
map <leader>g  :YcmCompleter GoToDefinitionElseDeclaration<CR>

Esta secuencia de comandos garantiza que una vez que hayamos terminado con la función de autocompletar, la ventana desaparezca y se cree un acceso directo para la definición de Ir a en la segunda línea de la secuencia de comandos.

Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn