Seguramente todos debéis conocer Vim, a mi parecer el mejor editor de texto para GNU/Linux. Las primeras veces que usé Vim me pareció muy complicado, pero desde que administro el servidor dedicado de mi blog personal, se ha convertido en mi editor por defecto, incluso para programar, en este artículo veremos cómo aplicar la configuración definitiva para Vim gracias a un repositorio que encontré en GitHub.
Como es habitual en el mundo del software libre, Vim posee una gran capacidad de configuración y personalización. Así que decidí buscar en la red configuraciones que facilitaran la tarea de programar y me topé con un repositorio en GitHub creado por Amix, que durante 8 años ha estado usando y modificando Vim para obtener un vimrc definitivo. El repositorio en cuestión lo podéis encontrar aquí, veamos cómo instalarlo.
Índice
Versión básica o versión “Awesome”
Es posible elegir entre dos versiones, una básica que no instalará ningún plugin, u otra mucho más completa que hará de Vim un editor muy potente.
Para instalar la básica basta con ejecutar el comando siguiente:
$ git clone git://github.com/amix/vimrc.git ~/.vim_runtime $ sh ~/.vim_runtime/install_basic_vimrc.sh
Y para la avanzada o “Awesome”:
git clone git://github.com/amix/vimrc.git ~/.vim_runtime sh ~/.vim_runtime/install_awesome_vimrc.sh
El vimrc para la versión “Awesome” es como sigue:
set runtimepath+=~/.vim_runtime source ~/.vim_runtime/vimrcs/basic.vim source ~/.vim_runtime/vimrcs/filetypes.vim source ~/.vim_runtime/vimrcs/plugins_config.vim source ~/.vim_runtime/vimrcs/extended.vim try source ~/.vim_runtime/my_configs.vim catch endtry
Para añadir nuestras propias configuraciones hemos de editar el fichero ~/.vim_runtime/my_configs.vim.
Editar la configuración por defecto
En la instalación el esquema de colores por defecto se establece a peaksea, es posible cambiar los colores usados para resaltar la sintaxis por Vim editando el fichero ~/.vim_runtime/my_configs.vim y añadiendo la siguiente línea:
colorscheme peaksea
Hay que reemplazar peaksea por cualquiera de estos otros 3 esquemas de colores:
- solarized
- pyte
- ir_black
Posibles problemas con el fondo transparente
Es posible que al instalar esta configuración para Vim perdamos el fondo transparente de la terminal y veamos vim de la siguiente forma:
Para solucionar el problema es necesario añadir las siguientes líneas al archivo ~/.vim_runtime/my_configs.vim:
hi NonText ctermfg=18 ctermbg=NONE cterm=NONE hi Normal ctermfg=16 ctermbg=NONE cterm=NONE hi Special ctermfg=Yellow ctermbg=NONE hi Comment ctermfg=DarkYellow ctermbg=NONE hi Constant ctermfg=Blue ctermbg=NONE hi Number ctermfg=Yellow ctermbg=NONE hi LineNr ctermfg=DarkGrey ctermbg=NONE hi PreProc ctermfg=Green ctermbg=NONE hi Statement ctermfg=Cyan ctermbg=NONE hi Type ctermfg=Cyan ctermbg=NONE hi Error ctermfg=Red ctermbg=NONE hi Identifier ctermfg=Magenta ctermbg=NONE hi SpecialKey ctermfg=Cyan ctermbg=NONE hi NonText ctermfg=Blue ctermbg=NONE hi Directory ctermfg=Blue ctermbg=NONE hi MoreMsg ctermfg=Green ctermbg=NONE hi Title ctermfg=Magenta ctermbg=NONE hi WarningMsg ctermfg=Red ctermbg=NONE hi DiffDelete ctermfg=Blue ctermbg=NONE
Lo cual elimina el fondo negro (ctermbg=NONE) de todas las palabras clave del lenguaje de programación y de los sitios en los que no haya texto (NonText).
Otras modificaciones
Personalmente me gusta resaltar la línea actual con la siguiente apariencia:
hi CursorLine guifg=NONE guibg=#121212 gui=NONE ctermfg=NONE ctermbg=NONE cterm=BOLD hi CursorColumn guifg=NONE guibg=#121212 gui=NONE ctermfg=NONE ctermbg=NONE cterm=BOLD
Tras aplicar todos estos cambios, el aspecto de Vim es el siguiente:
Conclusión
Este ha sido mi primer artículo como colaborador en DesdeLinux, espero que os haya resultado de utilidad. ¿Conocíais esta configuración para Vim?. ¿Qué personalizaciones le habéis hecho? Dejad un comentario!.
47 comentarios, deja el tuyo
Yo era de los que aborrecía VIM, decía que era un editor de texto para Pulpos.. pero de un tiempo para acá lo uso más que Nano (el otro editor, no el eNano de nuestra comunidad) xDD
A mi me pasaba un poco igual que a tí, viendo que Vim era algo más complicado usaba Nano, hasta que me esforcé por acostumbrarme a Vim y se convirtió en mi editor por defecto. Saludos!
Así es.. por cierto, un placer tenerte por acá.. Bienvenido!
Gracias, espero poder contribuir con artículos de calidad. Saludos!
Yo siempre use Vi, ahi modificaba mis scripts COBOL (mi primer trabajo a los 17) xD nunca use otro por pereza pero me acomode muy bien, y tienen atajos increibles!
Saludos.
Pues que yo sepa los dos son Nanos y son Editores, así que sigo sin saber a cuál usas… o quizás también a ambos los usas. xD
El GNU Nano es un software, mientras que el nano que está en esta comunidad es un alias de una persona.
Dejen de usar mi nombre coño, se gasta xD
El eNano con Windows XP.. WTF?
Estaba en la uni u.u
¡Pretextos!, ¡Te fuiste al lado oscuro! XD
Y con respecto al post… Creo que debo de aprender a usar Vim o_o
Yo estoy tanto en Windows Vista como en Debian Wheezy, así que no se quejen si comento con Google Chrome 30 (en realidad, es Chromium 30) con Vista.
I know that feel, bro.
Por algo es que cuando hablo de GNU Nano, escribo GNU Nano (no nano a secas por la ambigüedad que genera tu alias).
Solo los que son suficientemente dignos pueden usar Vim (lo cual no me incluyo).
Es re-complicado, pero es obvio que es mejor editor, todos hablan muy bien de él.
Yo tengo rato usando VIM, aqui les dejo mi config que uso en Ubuntu y OSX
https://github.com/abimaelmartell/dotfiles
yo no entiendo a vim… he intentado pero siempre vuelvo a nano la falta de costumbre supongo pero me cuesta 🙁
Créeme, cuando te adaptas se hace indispensable. Eso de poder copiar/mover/cambiar texto, borrar o editar texto en columna.. en fin, cuando no se tiene interfaz gráfica VIM es genial.. y aún con interfaz gráfica es genial 😀
Cuando no hay entorno lo mejor es MC (Midnight commander)
Yo hago todo eso en Geany. No veo por qué aprender cosas complicadas. Siempre he pensado que es el software el que debe adaptarse a los seres humanos y no al revés. Pero bueno, el mundo es libre… por el momento.
Qué tal?.. ..tengo que disentir con tu comentario.. ..no me parece justo que pienses de forma generalizada que un determinado software no se adapte a ´los seres humanos´.. ..simplemente porque las necesidades y perspectiva de cada uno..varía, y en algunos casos mucho..
Para algunos lo mejor es el editor nano, yo no lo soporte ni para el más mínimo cambio.. ..algunos les gusta geany, ninjaIDE, eclipse..y yo prefiero alguno u otro dependiendo el caso.. ..otros emacs, yo Vi..
Cosas que parecen complicadas de aprender, aunque no siempre, suelen tener sus beneficios.. ..para altos volúmenes de datos de un archivo, y me refiero a realmente altos (TBs)..algunos editores ni te lo dejarían abrir.. ..y con Vi no sólo lo podría abrir..sino que podría hacer un manejo complejo a través de expresiones regulares..
Tan sólo mi opinión.. ..espero sepas entender..
A ver, en casi todos los editores que he usado guardas con Ctrl+S (Save) y sales con Ctrl+Q (Quit). Y te mueves con la convenientes teclas de cursores que tienen unas flechitas. Dime cómo se hace en vim? 😉
Entiendo tu opinión, tranquilo.
Em.. ..simple.. ..para moverte lo podés hacer tanto con las flechitas..como con las teclas ‘HJKL’..normal en los vi-like..
Para guardar y salir ‘:wq’.. 😉
Dale una oportunidad a aprender a manejarte con vim.. ..con pero probarlo por una semana..sólo usando vim.. ..cuando aprendas las herramientas, la rapidez que te proporciona es inmensa..
Tendré que probarlo con la mente abierta, porque la verdad las veces que le he invocado para realizar alguna edición simplemente me desespera, y termino usando nano.
yo feliz con emacs
En eso te apoyo, ya que GNU Emacs es prácticamente una navaja suiza a la hora de editar textos y scripts. Si uno quiere googlear o administrar su correo. Emacs con un par de plugins lo puede hacer y bien.
Yo feliz con monodevelop
TROLLING OFF
Wenas.. ..primero que nada, buenísimo que te hayas decidido a aportar..y más aún con semejante post.. ..muchas gracias!!..
Hace tiempo que venía buscando algo semejante..para empezar a utilizar más seguido Vim.. ..aunque siempre usé Vi.. ..para proyectos grandes, lo ideal es tener una buena config y acomodarse en Vim.. ..de nuevo, gracias.. ..y nos seguimos leyendo.. 😉
Tendría que instalar Vim antes de emitir un juicio ciego. Por ahora estoy usando GNU Nano y GNU Emacs.
La configuración esta genial Alejandro… Sin embargo, los esquemas de colores están terribles. No se si depronto conoces donde se pueden encontrar esquemas de colores más atractivos. A mi personalmente me gusta mucho el esquema Twilight de Textmate.
Si no te gustan ninguno de los esquemas de colores que vienen en el repositorio, puedes probar a instalar cualquier otro, o modificar los colores a tu gusto editando estos los valores de ctermfg.
hi NonText ctermfg=18 ctermbg=NONE cterm=NONE
hi Normal ctermfg=16 ctermbg=NONE cterm=NONE
hi Special ctermfg=Yellow ctermbg=NONE
hi Comment ctermfg=DarkYellow ctermbg=NONE
hi Constant ctermfg=Blue ctermbg=NONE
hi Number ctermfg=Yellow ctermbg=NONE
hi LineNr ctermfg=DarkGrey ctermbg=NONE
hi PreProc ctermfg=Green ctermbg=NONE
hi Statement ctermfg=Cyan ctermbg=NONE
hi Type ctermfg=Cyan ctermbg=NONE
hi Error ctermfg=Red ctermbg=NONE
hi Identifier ctermfg=Magenta ctermbg=NONE
hi SpecialKey ctermfg=Cyan ctermbg=NONE
hi NonText ctermfg=Blue ctermbg=NONE
hi Directory ctermfg=Blue ctermbg=NONE
hi MoreMsg ctermfg=Green ctermbg=NONE
hi Title ctermfg=Magenta ctermbg=NONE
hi WarningMsg ctermfg=Red ctermbg=NONE
hi DiffDelete ctermfg=Blue ctermbg=NONE
Saludos.
Que tal. buen articulo. seria bueno publicar algo sobre como sacarle provecho a esta config. Para aquellos usuarios no tan expertos en vim como yo 🙂
Muy interesante y agradecido, mejora bastante el uso de vim, pero como colocas los numeros de las lineas?, es lo unico que no he logrado conseguir.
Gracias por el aporte
:set number
Abreviado ‘:set nu’ .. ..y para sacarlo ‘:set nonu’ 😉
Yo uso esta:
:set nocompatible ruler laststatus=2 showcmd showmode number
Y para resaltar la línea actual es necesario :set cursorline.
Se me olvidó, un saludo.
Vim, la mejor arma para un usuario de Linux&Unix. Lo mejor de todo, puedes moldear a tu gusto vim, el mio es un IDE de C/C++, NERDTree.
Buen aporte!
Yo sin ser un usuario experto y sin sacarle todo el jugo que tiene vim, he llegado a acostumbrarme bastante y lo uso como editor principal. Creo que lo mejor para empezar a acostumbrarse, ya que puede llegar a desesperar al principio, es realizar el tutorial que viene con el programa (usar el comando «vimtutor»). Así lo hice yo y me ayudó. Mientras lees el tutorial usas vim a la vez.
Hola comunidad, yo uso vim y como muchos de ustedes me resulta una herramienta infaltable para mi trabajo. Quería aportar un tip muy útil para manejar la instalación de plugins. La herramienta se llama «pathogen». Este plugin maneja los paths para los diferentes plugins, haciendo que la instalación y desinstalación de los mismos sean muy sencillos. Si usás vim, tenés que utilizar esta herramienta. Otro tip: en la página vimbits.com hay un montón de maps y configuraciones muy interesantes. Y para los que utilicen Python, les recomiendo el plugin python-mode. Espero que les sirva como a mí.
Usemos Linux.
🙂
Aun no he usado Vim, me esta dando mucho curiosidad. Tengo que probarlo, pero ¡Ya!
Concuerdo con mucho aqui.
Recuerdo, que los primeros dias intentaba usar vim y siempre lo dejaba, porque me parecia complicado usarlo, hasta que un dia empeze a hecharle ganas y pude entender un poco su funcionamiento.
Desde ahi, se combirtio en mi editor de texto favorito, cuando tengo que editar un archivo rapido en la consola.
Por cierto, buen articulo.
Gracias, me alegra que haya sido un artículo interesante.
Saludos.
… muy bueno el post, me gusta mucho vim lo uso para programar pues para configurar arch siempre he tenido algunas dificultades pero es cuestion de practica. Este post a dia de hoy no esta desactualizado.
Saludos!!!
que tal, tengo el problema que este enlace esta roto, alguien me podria decir cual esta funcionando ahora. Por el momento estoy probando unos que recomiendan pero quisiera saber su opinion… Gracias!!
Saludos!!!
source ~/.vim_runtime/vimrcs/plugins_config.vim
… he tenido problemas con el archivo de registro del plugin yankring al intentar crear el archivo de registro yankring_history_v2.txt. Alguna idea que me puedan facilitar de como solucionarlo…
Saludos!!
Me gusta tu blog.
Solo quiero decirte que tienes los enlaces a las imagenes rotos.