Hace 4 años | Por mr_b a begriffs.com
Publicado hace 4 años por mr_b a begriffs.com

Este artículo se basa en investigaciones históricas y en simplemente la lectura del manual del usuario de Vim de principio a fin. Esperemos que estas notas le ayuden a (re)descubrir la funcionalidad principal de este editor y así poder abandonar los archivos vimrc preempaquetados y usar los complementos de manera más reflexiva.

Comentarios

Cuchipanda

#21 mientras un humano siga teniendo un cable del que tirar o una batería que sacar seguimos a salvo del orden mundial de las máquinas. Positivo por recordarme la liada de atajos de teclado que me llevé el primer día que se me ocurrió intentar arreglar con eso una interfaz gráfica hecha trizas con el xorg.conf y sin acceso a internet. Por lo demás dejo el flame ya que estamos lol ¡VIM, mis gónadas! ¡lo bueno es el NANO!

t

#8 Vimmmmmvimmmmmvimvimvim

m

#8: VIM: Vuilding information modelling. lol #Chistes_malos

D

#11 zless

mandelbr0t

#11 #24 less también abre comprimidos. Y con F mayúscula hace las funciones de 'tail -f'

D

#4 lol
como toca los cojones abrir un archivo con vim las primeras veces y no saber cerrarlo ni que estas haciendo lol

Yo la verdad es que lo uso para leer logs y en sistemas donde no hay otra cosa

pkreuzt

#7 Para leer logs lo más adecuado es usar un paginador, que estará instalado por defecto en cualquier *nix. Poder, se puede, pero usar Vim para leer logs kilométricos es bastante incómodo. La mayoría de distros Linux traerán al menos less como paginador. Si tienes suerte o puedes instalarlo, most es un paginador excelente con soporte de scrolling con ratón, resaltado de sintaxis y todo.

D

#9 es que por ssh para las cosas que tengo que mirar me es bastante cómodo, rápido, y eficaz.
Aunque le echaré un ojo

D

#10 Lo del ssh es completamente irrelevante en el contexto, tanto da si estás en ssh como si no. Lo normal para ver logs es usar less, most o more.

D

#26 #23
Si lo del SSH es irrelevante pero bueno es como accedo yo a los servidores.

#22 soy programador pero hago cosillas de sysadmin. Nunca he aprendido a usar bien vim, pero para revisar unas cosas muy concretas viene muy bien mucho mejor que lo que comentáis. Porque yo ando moviéndome como un loco por el log no es que lo use para leer las ultimas líneas o algo así.
Y obviamente hay mil alternativas las habrá mejores las habrá peores.

D

#28 Yo también accedo a mi servidor dedicado con ssh, pero fíjate en la ayuda de less, (pulsando la tecla h en un documento abierto) que podrás navegar por los logs como quieras, ya que tiene porrón de opciones para ello.

D

#10 ¿Por consola o puerto serie usas otro entonces? o para el resto levantas las x en un server?

D

#26 lol lol lol

D

#9
En las distribuciones de GNU, además de less viene zless.

Para conseguir resaltado de sintaxis puedes utilizar pygments. Pygments te servirá para muchas otras cosas, no solo para el less. Otra opción es GNU source-highlight.
Ambos requieren modificar la variable LESSOPEN para usarlos en conjunción con less.

D

#7 Dice mucho de tu perfil.

leporcine

#7 Es para lo único que le veo sentido, para sistemas donde no hay otra cosa, aunque personalmente uso nano, no veo en que me puede ayudar vim para mejorar mi trabajo.

Trigonometrico

#4 Será por eso que me encanta.

D

Gran articulo, gracias por compartirlomr_bmr_b

D

#19 Su comando más útil:
:q!

c

#41 Ese es para vi, para vim es :qa!

llorencs

#53 mmm, yo .q! lo he usado mil veces en vim Es más, yo ahora recuerdo solo los comandos básicos después de años sin usarlo, y el :qa! no me suena de nada

Y siempre he usado vim. Si en la distro venía instalado por defecto vi, el primer paso que hacia era instalar vim.

c

#57 eso es que no has usado la edición de varios archivos a la vez. Con el Split horizontal o vertical.

D

#57 yo uso mucho :q! lol y te confirmo que esta en vim

Peazo_galgo

La Vim compae!

#granainospowah!

u

#15 Es mejor el psicoanalista... m-x doctor

n

He intentado forzarme muchas veces a usar solo Vim para programar pero ufff.... Visual Studio Code. Vim esta bien pero si quiero anyadirle todas las cosas que necesito, ni es liviano en memoria ni es muy 2019 friendly. Eso si, en el terminal es king.

m

#5: ¿Seis dedos? ¡Como los pandas 🐼 ! ¿Ya dominas el comando para usar mariposas?

D

#5
No sé a qué te refieres. Con Elisp puedes hacer lo que te dé la gana.

samsaga2

#5 La mejor implementación de vim es evil para emacs. Y si le pones Spacemacs ya no hay editor que le llegue a la suela de los zapatos. Lastima que en Windows no funcione tan bien.

A

#3 Vim está bien para scripts y algún apaño desde consola. Para desarrollo serio uso geany, kate o atom, según surja.

mgm2pi

#3 el visual studio code tiene plugins muy buenos para que la edición sea como el vim.

n

#44 si, eso es lo que uso... los comandos de movimiento que es lo que mas me da productividad.

c

#3 Para ruby o lo disfruto mucho y eso de que es mas pesado y engorroso, los cojones! https://github.com/barrerajl/vim-dot-files

Schrödinger_katze

Yo uso Vim todos los días y cuando tengo que usar un editor de texto normal acabo con todo lleno de jkkkkkjjjkkii.

Gracias a Vim y tmux ya apenas quito las manos del teclado, lo cuál me hace feliz. Detesto tener que desplazarlas, incluso para simplemente tocar las flechas (en tmux las he sustituido, me parecen un error de diseño).

De hecho, no hace falta saber muchos comandos para que Vim sea útil. Yo sólo uso unos pocos y, aún así, me va muy bien. El comienzo es un poco tortuoso, pero si decides cambiarte, no se tarda más de una tarde en adaptarte lo suficiente como para poder usarlo y no más de dos días en usarlo de forma bastante decente.

pawer13

#58 Aquí lo tienes: https://insights.stackoverflow.com/survey/2019#technology-_-most-popular-development-environments

Visual Studio Code 50.7%
Visual Studio 31.5%
Notepad++ 30.5%
IntelliJ 25.4%
Vim 25.4%
Sublime Text 23.4%
Android Studio 16.9%
Eclipse 14.4%
PyCharm 13.4%
Atom 13.3%
IPython / Jupyter 9.5%
Xcode 9.4%
PHPStorm 7.6%
NetBeans 5.9%
Emacs 4.5%

Hay que tener en cuenta que IntelliJ, Android Studio, PyCharm y PHPStorm son realmente el mismo editor con diferentes plugins incluidos para adaptarse a distintos lenguajes o entornos

llorencs

#67 Vale, sí que me sonaba el 25%, pero en el comentario no me quería arriesgar a dar un número por si la cagaba mucho. Veo que mi memoria no ha fallado. Gracias por tomarte las molestías de poner el enlace a la encuesta.

analphabet

#34 A ver, no siempre puedes usar otras alternativas. Estás en un cliente que tiene los paquetes basicos de tal distribución o tal unix o bsd y a veces estás forzado a usar el vi, no te puedes poner a instalar paquetes entre los cuales lo mismo ni siquiera está el joe.

D

#36 Ahí te doy toda la razón, vi siempre está.

j

#54 Yo creo que si vim lo usa hoy en día poca gente, emacs no lo usa ni Blas.

https://es.wikipedia.org/wiki/Guerra_de_editores

j

¿"vim clorex verde"?

c

#65 Usé eclipse y rubymine mucho tiempo, cambié a vim un día y en nada, dos o tres días (hasta que me cambiaron un poco los esquemas mentales) estaba ya trabajando perfectamente. Lo mas difícil suele ser encontrar los plugins dependiendo del lenguaje de programación, pero hay mucha gente que ya te cuenta esas cosas en blogs.
Lo de los menús, en realidad también es diferente, pero a la vez sencillo en vim pones : y le das al tabulador y te sale ahí toda la ristra de menús que quieres.
El vim tiene cosas muy chulas, como si en vez de abrir un archivo, abres un directorio ya te sale un árbol para moverte por el, luego abres con split un buffer y a jugar...

D

Vim es esa herramienta que la amas o la odias. Yo estuve un tiempo programando en Vim. Si soy de los que le encantan esta herramienta.

j

Es mejor emacs (abro paraguas)

joffer

#45 Yo creo que si vim lo usa hoy en día poca gente, emacs no lo usa ni Blas.

llorencs

#54 Vim no creo que lo use poca gente. Por ejemplo en mi empresa, todos los trabajadores que trabajan con terminales linux el editor que usan es vim, y en algunos casos nano. Por lo tanto, entre los usuarios técnicos el vim tiene bastante uso, diría. Basta ver los comentarios de esta noticia donde hay un buen porcentaje de personas que lo usan habitualmente o puntualmente para algunas acciones.

Me suena haber visto en una de las útlimas encuestas de StackOverflow el uso del editor de vim y no estaba muy bajo. Pero quizás recuerde mal, y eso que estaba exclusivamente para desarrolladores. Porque yo creo que entre administradores de sistemas debe ser bastante común su uso.

c

#46 Eso lo dices tu, si que se gana en eficiencia.

pawer13

#56 ¿Tras cuantos años aprendiendo atajos de teclado y cuantas horas buscando e instalado plugins? Si estás acostumbrado a Eclipse, Visual Studio, IntelliJ, Sublime Text o NetBeans y sus funcionalidades y atajos de teclado, empezar desde cero de nuevo me parece una completa pérdida de tiempo. Uso vim cuando me conecto a través de SSH para editar la configuración de los servidores o mirar algún log, pero más allá de eso me pierdo y para cualquier edición compleja acabo accediendo con el explorador de archivos y editando con Kate o VSC por comodidad y familiaridad. En eclipse puedo usar el atajo de teclado, pero si no lo conozco al menos puedo acceder a través de los menús (donde se muestra el atajo, por si quieres aprenderlo). En Vim esta opción no está por defecto, no sé si habrá algún plugin para añadir menús...

Si empezaste con Vim y es a lo que estás acostumbrado, entiendo que te pase al revés y usar cualquier otra cosa te parezca engorroso; encontrar plugins o herramientas para otros IDEs puede que te sea desesperante, pero por eso mismo te daría el mismo consejo: si no te obligan a cambiar, quédate con lo que conoces y serás más eficiente.

lolerman

Vi y Vim siguen siendo las herramientas básicas de guerra de cualquier sysadmin, solo por el simple hecho de que ya viene instalado y no necesitas internet.

D

Ahhhh el VIM

Sin tocarlo desde los tiempos de FIC y resulta que hace dos meses he cambiado de trabajo y me he vuelto a encontrar con él.... ha sido como un déjà vu

D

Joder, nadie dice nada de joe.

analphabet

#25 A lo mejor es porque el meneo es sobre vim... joe fue el primer editor que use en linux, a mediados de los noventa, era la alternativa facil de usar al vim pero ya ha quedado relegado, el que quiere algo facil de usar se va al nano y sino al vim o al emacs.

A mi vi me gusta bastante porque está en practicamente cualquier distribución de linux y en cualquier otro unix/bsd por defecto y aunque tiene una curva de aprendizaje, una vez que controlas lo básico ayuda muchísimo a hacer cosas cuando solo tienes acceso a la consola.

D

#27 ¿Pero, qué editas con vi que no puedas editar con joe? Yo uso este último para configurar mi servidor dedicado, desde ssh, y tengo desplegado apache y sus amigos, mediawiki, wordpress, awstats, hoteldruid, subsonic y proftpd, y todo lo que ha debido editarse se ha hecho con joe, y algunas veces con jove, y va todo de maravilla.

skatronic

Una pregunta totalmente en serio de alguien que sólo ha usado Vim de forma muy puntual. Para un proyecto en Angular, Java o cualquier otro idioma donde debes andar editando diferentes archivos ¿también lo usáis? Porque no me vería sin navegar la estructura de directorios/archivos con el ratón y seleccionar ahí.

pawer13

#40 No te compliques y usa VSC o Eclipse. Yo intenté aprender Vim y desistí, es demasiado diferente a lo que ya estaba acostumbrado y no ganas nada de eficiencia si tienes que aprender desde cero.

D

#40 No, Vim lo recomendaria solo para proyectos de pocos archivos... con algun plug-in aguanta proyectos medianos. Para cualquier cosa medianamente grande o de segun que lenguaje es mejor usar el IDE correspondiente.

Vim es una herramienta mas... yo si quiero abrir un fichero suelto, lo abro en vim. Si quiero abrir el mega-proyecto usare el IntelliJ o similar.

c

#40 NERDTREE es tu amigo, yo no se que piensa la gente que usamos para desarrollar, pero se parece mucho a un ide, sin ser un ide.

meneandro

#40 Puedes editar múltiples archivos en vim. Puedes dividir la pantalla, puedes crear pestañas, puedes tenerlos en buffers y pasar de uno a otro a conveniencia, pudes hacer diff entre ellos, puedes incluso navegar visualmente por el sistema de ficheros para buscarlos con los cursores... y todo eso sin usar scripts o plugins. Ya con algunos plugins puedes incluso hacer muchas más cosas.

d

#40 Sí, lo uso para todo. Antes usé Visual Studio (aprox 7 años).
Hace 10 años que uso únicamente Vim.
Para navegar por los ficheros sin salir del programa puedes usar los plugins fzf o nerdtree.
Lo mejor de Vim es el sistema de edición modal. Hay plugins para poder usar éste sistema en otros editores como por ejemplo visual studio

D

Edit.

higochungo

Las macros de vim son la ostia. Yo las uso mucho para tratar archivos de texto o json. Cuando modificar 100.000 lineas de datos es cuestión de un par de comandos, empiezas a cogerle cariño.

D

Ah...que los votos en rojo no son comunistas y los verdes ecologistas?

D

Pues a mi me parece una herramienta muy cómoda y ágil

meneandro

Normalmente los que más se quejan del vim son:
1) no saben usarlo (o sólo saben los usos más básicos)
2) nunca lo han entendido (por lo tanto, nunca han sabido usarlo)
3) lo usan donde no deben (toda herramienta tiene sus puntos fuertes y sus puntos débiles; muchas veces también está asociado a no saber explotar los puntos fuertes del vim por 1) o por 2), pero hay casos donde simplemente vim es inadecuado)