6.23. Vim-6.3

El paquete Vim contiene un poderoso editor de texto.

Tiempo estimado de construcción: 0.4 SBU
Espacio requerido en disco: 38.0 MB
Para su instalación depende de: Bash, Binutils, Coreutils, Diffutils, GCC, Glibc, Grep, Make, Ncurses y Sed
[Sugerencia]

Alternativas a Vim

Si prefieres otro editor en vez de Vim, como Emacs, Joe, o Nano, mira en http://www.lfs-es.com/blfs-es-CVS/postlfs/editors.html las instrucciones de instalación sugeridas (la versión original en inglés se encuentra en http://www.linuxfromscratch.org/blfs/view/stable/postlfs/editors.html).

6.23.1. Instalación de Vim

Primero, desempaqueta en el mismo directorio tanto vim-6.3.tar.bz2 como (opcionalmente) vim-6.3-lang.tar.gz. Después, cambia la localización por defecto de los ficheros de configuración vimrc y gvimrc a /etc.

echo '#define SYS_VIMRC_FILE "/etc/vimrc"' >> src/feature.h
echo '#define SYS_GVIMRC_FILE "/etc/gvimrc"' >> src/feature.h

Vim tiene una vulnerabilidad de seguridad que ya ha sido solucionada por su desarrollador. El siguiente parche corrige el problema:

patch -Np1 -i ../vim-6.3-security_fix-1.patch

Prepara Vim para su compilación:

./configure --prefix=/usr --enable-multibyte

La opción --enable-multibyte, opcional pero muy recomendable, añade a vim el soporte para la edición de ficheros codificados con caracteres multibyte. Esto es necesario si se utiliza un conjunto de caracteres multibyte. También permite editar ficheros creados inicialmente en distribuciones Linux como Fedora Core, que utilizan UTF-8 como conjunto de caracteres por defecto.

Compila el paquete:

make

Para comprobar los resultados, ejecuta: make test. Sin embargo, este banco de pruebas mostrará por pantalla un montón de datos binarios que pueden causar problemas con los ajustes del terminal actual. Esto puede evitarse redirigiendo la salida a un fichero de registro.

Instala el paquete

make install

Muchos usuarios tienden a utilizar vi, en vez de vim. Para permitirles ejecutar vim cuando teclean vi, crea un enlace simbólico:

ln -s vim /usr/bin/vi

Si vas a instalar un sistema X Window en tu sistema LFS, puede que sea necesario recompilar Vim después de instalar X. Vim incluye una bonita versión con interfaz gráfica que necesita X y algunas otras librerías instaladas. Para más información lee la documentación de Vim y la página de instalación de Vim en el libro BLFS, en http://www.lfs-es.com/blfs-es-CVS/postlfs/editors.html#postlfs-editors-vim (el original en inglés se encuentra en http://www.linuxfromscratch.org/blfs/view/svn/postlfs/editors.html#postlfs-editors-vim).

6.23.2. Configuración de Vim

Por defecto, vim se ejecuta en modo no compatible con vi. Esto puede ser nuevo para los usuarios que han utilizado otros editores anteriormente. Se incluye a continuación la opción “nocompatible” para resaltar el hecho de que se va a usar este nuevo comportamiento. Esto también les recuerda a aquellos que quieran cambiar al modo “compatible” que debería ser la primera entrada en el fichero de configuración. Esto es necesario porque cambia otros ajustes, y las modificaciones deberían ir tras este ajuste. Crea un fichero de configuración por defecto de vim ejecutando lo siguiente:

cat > /etc/vimrc << "EOF"
" Inicio de /etc/vimrc

set nocompatible
set backspace=2
syntax on
if (&term == "iterm") || (&term == "putty")
  set background=dark
endif

" Fin de /etc/vimrc
EOF

La opción set nocompatible hace que vim se comporte de un modo (el modo por defecto) más útil que el modo compatible con vi. Elimina el “no” si quieres el antiguo comportamiento vi. La opción set backspace=2 permite el retroceso en saltos de línea, autoindentación e inicio de inserción. La opción syntax on activa la coloración semántica de vim. Por último, el condicional if junto con set background=dark corrige lo que vim se imagina sobre el color de fondo de ciertos emuladores de terminal. Esto le da a la coloración semántica un mejor esquema de color para utilizarlo sobre el fondo negro de estos programas.

Se puede obtener información sobre las opciones disponibles ejecutando el siguiente comando:

vim -c ':options'

6.23.3. Contenido de Vim

Programas instalados: efm_filter.pl, efm_perl.pl, ex (enlace a vim), less.sh, mve.awk, pltags.pl, ref, rview (enlace a vim), rvim (enlace a vim), shtags.pl, tcltags, vi (enlace a vim), view (enlace a vim), vim, vim132, vim2html.pl, vimdiff (enlace a vim), vimm, vimspell.sh, vimtutor y xxd

Descripciones cortas

efm_filter.pl

Un filtro para crear un fichero de error que puede ser leído por vim.

efm_perl.pl

Formatea los mensajes de error del intérprete Perl para usarlos con el modo “quickfix” de vim.

ex

Arranca vim en modo ex.

less.sh

Un guión que arranca vim con less.vim.

mve.awk

Procesa los errores de vim.

pltags.pl

Crea un fichero de etiquetas para el código Perl, de modo que pueda usarse con vim.

ref

Comprueba la ortografía de los argumentos.

rview

Una versión restringida de view. No pueden ejecutarse comandos del intérprete de comandos y view no puede ser suspendido.

rvim

Una versión restringida de vim. No pueden ejecutarse comandos del intérprete de comandos y vim no puede ser suspendido.

shtags.pl

Genera un fichero de etiquetas para los guiones Perl.

tcltags

Genera un fichero de etiquetas para el código TCL.

view

Arranca vim en modo de sólo lectura.

vim

El editor.

vim132

Arranca vim con el terminal en modo de 132 columnas.

vim2html.pl

Convierte la documentación de Vim a HTML.

vimdiff

Edita dos o tres versiones de un fichero con vim y muestra las diferencias.

vimm

Activa el modelo de entrada del buscador de DEC en un terminal remoto.

vimspell.sh

Comprueba la ortografía de un fichero y genera las sentencias de sintaxis necesarias para resaltar las palabras en vim. Este guión necesita el antiguo comando Unix spell, que no se incluye en el LFS ni en el BLFS.

vimtutor

Enseña las teclas y comandos básicos de vim.

xxd

Genera un volcado hexadecimal. También puede hacer lo contrario, por lo que puede usarse para parchear binarios.