Falcon pro

¿Qué editor de código que se precie no tiene una función de autocompletado? Uno de mis editores favoritos siempre ha sido el famoso Sublime Text. Aparte de sus muchas bondades, una de las características que siempre me pareció tremendamente útil era el autocompletado. Recuerdo que en otros programas, escribía una variable y cuando tenía que volverla a repetir en otros lugares del archivo siempre había alguna ocasión en el que metía la pata y terminaba escribiéndola mal, con los errores que acarreaba luego.

El autocompletado es una de las funciones que yo al menos, considero más útiles cuando editamos código. Escribir el principio de una variable o de una palabra larga y que nuestro editor nos muestre sugerencias es fantástico. Pero... ¿y si os dijera que Vim va un paso más allá?

Hoy, en esta sección de nuestro curso de Vim, echaremos un vistazo a las opciones diferentes que nos proporciona Vim para el autocompletado.

El autocompletado más completo

cómo usar Vim

La guía de esta semana va a ser más teoría que otra cosa, pues no hay mucho que mostrar. Eso sí, os recomiendo que probéis con vuestro Vim lo que vamos a ir mirando en breve. Lo primero que tenemos que aclarar es que en *Vim tendremos varias opciones para el autocompletado y que este se realiza siempre en el modo insertar***. Para activar las diferentes opciones de autocompletado tenemos los siguientes atajos de teclado (<c-n> equivale a <control-n>):

  • <c-n> el autocompletado de Vim se activa mediante el atajo de teclado anterior o mediante <c-p>, el primero seleccionará el siguiente resultado en una lista de palabras mientras que el segundo seleccionará el resultado anterior. Busca palabras en todos los archivos abiertos.
  • <c-x><c-n> sirve para buscar una lista de palabras en el buffer (el archivo que estamos editando).
  • <c-x><c-i> muestra autocompletado de archivos incluidos. Muchos lenguajes de programación permiten incluir archivos, este atajo sirve para buscar palabras en ellos.
  • <c-x><c-]> su función es buscar palabras en el archivo tags. Un archivo tags tiene un índice de funciones, clases u otro tipo de estructuras. Pero esto se merece un post más adelante para entenderlo.
  • <c-x><c-k> mira una lista de palabras en el diccionario. Así es, en Vim también podemos tener un corrector de palabras en español, pero esto lo discutiremos más a fondo en otro post.
  • <c-x><c-l> este atajo hace un autocompletado de líneas completas. Imaginad que estamos editando un archivo CSS y vamos a repetir ciertas propiedades, como por ejemplo el background. Podríamos usar ba<c-x><c-l> y nos rellenaría la línea completa, perfecto para ahorrarnos tiempo en escribirlo (imagen anterior).
  • <c-x><c-f> autocompletado para nombres de archivos o carpetas. En mi caso, encuentro tremendamente útil esta opción a la hora de escribir una localización. Por ejemplo /bin/b<c-x><c-f> nos mostraría una lista con los archivos que empiezan por la letra b en el directorio /bin/.
  • <c-x><c-o> sirve para la omni-completion, sugerencias basadas en el código, como propiedades CSS que podemos utilizar. Hay varios lenguajes de programación soportados y mediante plugins podemos agregar más. Muy útil si no nos acordamos del nombre concreto de alguna propiedad.

Como habéis podido leer, el autocompletado de Vim toma en cuenta diferentes contextos y solo nos muestra lo que necesitamos. Toma un tiempo recordar los comandos pero una vez aprendidos, nuestra productividad se disparará. Espero que os haya sido útil y volveremos con más la semana que viene. ¿Cómo lo lleváis hasta ahora?

Posts anteriores sobre cómo usar Vim

1: Introducción a Vim 2: Editar al estilo Vim 3: El modo normal 4: El modo insertar 5: El modo visual 6: El modo de comandos 7: Editar múltiples archivos 8: Paneles y pestañas 9: Cómo moverse rápido por los archivos 10: Cómo moverse rápido por los archivos 2 11: Dominar los registros 12: El poder de las macros 13: Patrones 14: Sustituciones 15: Comandos globales

Recibe cada mañana nuestra newsletter. Una guía para entender lo que importa en relación con la tecnología, la ciencia y la cultura digital.

Procesando...
¡Listo! Ya estás suscrito

También en Hipertextual: