PDF de programación - Tunear el vim

<<>>
Imágen de pdf Tunear el vim

Tunear el vimgráfica de visualizaciones

Actualizado el 1 de Noviembre del 2020 (Publicado el 20 de Octubre del 2020)
893 visualizaciones desde el 20 de Octubre del 2020
2,3 MB
7 paginas
Bash-support vim plugin. Adaptar Vim para editar ...

http://informatica.escuelaedib.com/index.php?opti...

Introducción
Con el "tuning" que supone el "Bash-support plugin" para el Vim  podremos automatizar tareas de
edición que como programadores nos vemos obligados a repetir mucho:

Añadir automáticamente cabeceras a los ficheros
Añadir comentarios a de diversos tipos
Escribir los esqueletos de los distintos comandos de control (if, case, for, while...)
Verificar la sintaxis
Consultar la documentación de un comando de Bash
Convertir un bloque de código en comentario o viceversa
Escribir rápidamente expresiones regulares
...

Este "plugin" de soporte al Bash es capaz de hacer todo lo anterior y por lo tanto nos ahorrará mucho
tecleo. Veremos cómo instalarlo en 3 pasos y 8 de sus potentes prestaciones.
Instalación

Paso 1: Descargar el plugin.

Mediante los comandos siguientes nos podemos descargar los componentes de esta extensión desde
vim.org

$ cd /usr/src
$ wget -O bash-support.zip http://www.vim.org/scripts/download_script.php?src_id=9890 

(¡ ojo ! para descargar el fichero bash-suport.zip en /usr/src es posible que necesites privilegios de
"root" por tanto antes de cada comando antepon "sudo" si usas Ubuntu o entra en una sesión de root
con el comando "su"  para otras distribuciones).

Paso 2: Instalarlo

Vuelve a la sesión de tu usuario personal (repetir ésto con cada usuario para el que quieras activar el
soporte avanzado para Bash en Vim) y teclea:

$ mkdir ~/.vim # puede que el directorio ya exista
$ cd ~/.vim
$ unzip /usr/src/bash-support.zip

(Nota: el carácter "~" lo obtendrás pulsando "Alt Gr" + "ñ")

Paso 3: Activarlo

Edita tu fichero " .vimrc" personal e incorpórale al final el texto que se indica:

$ vim ~/.vimrc
filetype plugin on

Así de fácil, a partir de ahora desded Vim tendrás a tu alcance un conjunto de herramientas que
repasamos a continuación.
8 utilidades para la edición de "bash scripts"
En un intento de mostrar en acción algunas de las cosas que os permitirá el "Bash Support Plugin"
vamos a presentar 8 de sus utilidades. Todas ellas son válidas tanto para la versión de consola como
para GVim, la versión gráfica de Vim para Gnome. Aunque la verdad es que si quieres usar toda la
potencia de este plugin necesariamente deberás usar GVim (disponible en los repositorios de
aplicaciones oficiales de Ubuntu).

1 de 7

08/01/10 10:32

Bash-support vim plugin. Adaptar Vim para editar ...

http://informatica.escuelaedib.com/index.php?opti...

potencia de este plugin necesariamente deberás usar GVim (disponible en los repositorios de
aplicaciones oficiales de Ubuntu).

 

 

Vim para consola y GVim con el menu del Bash Support Plugin desplegado en "Expresiones
Regulares" 



Utilidad 1:Cabeceras automáticas

Simplemente cuando crees un nuevo fichero con extensión ".sh" 

$ vim prueba.sh

éste comenzará con una cabecera como la que aparece a continuación: 

#!/bin/bash
#============================================================
#
# FILE: prueba.sh
#
# USAGE: ./prueba.sh
#
# DESCRIPTION:
#
# OPTIONS: ---
# REQUIREMENTS: ---
# BUGS: ---
# NOTES: ---
# AUTHOR: (),
# COMPANY:
# VERSION: 1.0
# CREATED: 23/02/09 15:42:08 CET
# REVISION: ---
#============================================================

2 de 7

08/01/10 10:32

Bash-support vim plugin. Adaptar Vim para editar ...

http://informatica.escuelaedib.com/index.php?opti...

#============================================================

Esta cabecera puede personalizarse fácilmente editando el fichero: ~/.vim/bash-support/templates
/bash-file-header

Además podemos hacer que aparezca con algunos campos cumplimentados por defecto, por ejemplo
el autor, su correo-e, la compañía, etc. Para ello incluye líneas como las siguientes al final de tu
archivo  ~/.vimrc

let g:BASH_AuthorName = 'Toni Serna'
let g:BASH_Email = ' [email protected] '
let g:BASH_Company = 'EDIB - Escuela de Diseño e Informática de Baleares ' 

Así es como aparecen las cabeceras después de personalizar los ficheros que acabamos de
mencionar:

 

Utilidad 2: Esqueletos de funciones ( \sfu )

Si en el editor en modo Normal pulsamos la secuencia \sfu (statement function - declaración de
función) nos aparece un prompt en el que se pide el nombre de la función. Una vez tecleado
("funcion_ejemplo") veremos que en el lugar del cursor se habrá insertado el esqueleto básico de la
función, tal y como puede verse en la imagen.

3 de 7

08/01/10 10:32

Bash-support vim plugin. Adaptar Vim para editar ...

http://informatica.escuelaedib.com/index.php?opti...

Nota importante: Todas las combinaciones de teclas que se mostrarán a continuación deben teclearse
moderadamente rápido. Si por ejemplo entre la "\" y la"s" o entre ésta y la  "f" o entre ésta y la "u"
dejamos que pasen varios segundos, no aparecerá el prompt con el nombre de la función y
simplemente se escribirá "\sfu" en el texto.

 

Utilidad 3: Comentarios de funciones ( \cfu )

De un modo análogo a las cabeceras del script, podéis personalizar  las cabeceras de comentarios de
las funciones editando el archivo bash-function-description.

$ vim ~/.vim/bash-support/templates/bash-function-description

Después de personalizar y traducir la cabecera con la secuencia \cfu insertaréis un bloque de
comentarios a la función como se muestra en la figura siguiente:

 

Utilidad 4: Crear un marco de comentarios ( \cfr )

Cuando necesitemos insertar un bloque de comentarios, teclearemos \cfr (comment frame).
Obtendremos lo siguiente:

 

 

Utilidad 5: Insertar declaraciones de comandos en un script ( \s... )

4 de 7

08/01/10 10:32

Bash-support vim plugin. Adaptar Vim para editar ...

http://informatica.escuelaedib.com/index.php?opti...

Utilidad 5: Insertar declaraciones de comandos en un script ( \s... )

Todos los atajos de teclado para los diferentes comandos empiezan por \s (de statement):

\sc case in ... esac
\sl elif then
\sf for in do done
\sfo for ((...)) do done
\si if then fi
\sie if then else fi
\ss select in do done
\st until do done
\sw while do done
\se echo e "\n"
\sp printf "\n"

A modo de ejemplo os muestro lo que conseguiremos tecleando \sc mientras estamos en modo
Inserción:

Utilidad 6: Intertar fragmentos de código predefinidos ( \nr \nw)

Para insertar rápidamente esas porciones de código que tecleamos muy a menudo, tenemos la
combinación \nr que debemos usar desde el modo de Comandos (). Al pulsarla nos aparece un prompt
pidiéndonos el nombre del fichero que contiene el pedazo de código que queremos insertar.
Fácilmente podemos recorrerlos uno a uno pulsando la tecla de tabulación varias veces. Por defecto
en el sistema se incluyen unos cuantos fragmentos (snippets), algunos de ellos muy interesantes. La
lista inicial es la siguiente:

assert
basename+pathname
basename-function
check-number-of-command-line-arguments
create-tempfile
create-tempfile-with-trap
free-software-comment
read-and-split-into-array
timestamp

5 de 7

08/01/10 10:32

Bash-support vim plugin. Adaptar Vim para editar ...

http://informatica.escuelaedib.com/index.php?opti...

read-and-split-into-array
timestamp
usage-and-command-line-arguments.noindent
use-file-descriptor-read
use-file-descriptor-write
well-behaved-script

Al pulsar \nr y seleccionar el fichero "assert" éste es el código que se insertará:

 

Los ficheros que almacenan estos fragmentos de código se encuentran en ~/.vim/bash-support
/codesnippets/ de modo que se pueden modificar fácilmente para adaptarlos a nuestras preferencias,
también podemos crear nuevos fragmentos o incluso crear fragmentos a partir del código que estemos
creando.

Para crear un snippet a partir de nuestro código primero deberemos marcar la porción de texto que
queremos guardar (usando + v para entrar en el modo "Visual" y desplazando el cursor para
seleccionar). A continuación teclearemos \nw.  Se nos solicitará un nombre con el que que guardará
ese fragmento y que luego con \nr recuperaremos todas las veces que queramos

Utilidad 7: Obtener ayuda rápida sobre comandos internos de Bash ( \hh )

Debemos situar el cursor sobre el comando interno del Bash del que necesitamos saber más y pulsar
\hh . A continuación se muestra lo que pasa al usarlo sobre el comando "read".

 

6 de 7

08/01/10 10:32

Bash-support vim plugin. Adaptar Vim para editar ...

http://informatica.escuelaedib.com/index.php?opti...

Para cerrar el fichero de ayuda basta usar el conocido :q

Utilidad 8:  Comentarios clave ( \ck... )

Esta característica puede ser útil para facilitar la inserción de comentarios rápidos en nuestro código.
Algunas de las combinaciones disponibles son:
\ckb Comentar un error (BUG)
\ckt Comentario "Pendiente de hacer" (TODO)
\ckr Comentar código truculento (TRICKY)
\ckw Comentario de aviso (WARNING)
\ckn Comentario clave personalizado (NEW KEYWORD)

En la imagen anterior se muestra el resultado de pulsar \ckt. Inserta una línea de comentario "TODO"
con la fech, donde prodremos introducir lo que queremos que no se nos olvide programar más tarde.

Con ésto ya os habréis hecho una idea de la potencia de este plugin. Dejadme decir que todavía hay
mucho más. Explorad las opciones del menú "Bash" en GVim y veréis el gran trabajo que se ha hecho.

7 de 7

08/01/10 10:32
  • Links de descarga
http://lwp-l.com/pdf18382

Comentarios de: Tunear el vim (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad