Comandos en vim (tutorial)

A raiz de ver en bulma este artículo (incluso mandé un comentario) se me ocurrió hacer un pequeño tutorial sobre cómo meter comandos en vim y aprovechar mejor sus posibilidades.

No es un tutorial de vim, pero le puede ayudar a aquel que lo usa y no pasa de pulsar «i» para escribir y «dd» para borrar: se sorprenderá de las cosas que puede hacer vim pulsando sólo un par de teclas. Os agradecía, si le echáis un vistazo, que me dijeseis si os gusta el enfoque o no. Lo he escrito, pero no estoy seguro de si es o no es didáctico.

Falta explicar un poco qué es la línea de comandos en vim...
He olvidado de adjuntar el fichero...

EDITO: Corregido (gracias, Kedao)

Adjuntos

Leyendo por encima tiene buena pinta. He visto que en las líneas 143-144 hay un error, mira a ver si lo arreglas :)
auxiliar, los comandos de vi y de vim no son los mismo???
Si eso hay un tutorial echo por escufi, que viene muy bien ;-) [oki]

Agur!!!
Escrito originalmente por Zamorate
auxiliar, los comandos de vi y de vim no son los mismo???


No, vim es el vi mejorado, es decir, vi con muchísimas más posibilidades.

Si eso hay un tutorial echo por escufi, que viene muy bien ;-)


Bueno, escufi escribió un tutorial de vim (o vi, no creo que nada de lo que diga no esté en vi) general.

Lo que yo he pretendido es enseñar a usar los comandos de vim de una manera un poco más avanzada. Es decir, escufi abarca mucho. Yo me centro en un único aspecto pero procuro profundizar en él.

Con el tutorial de escufi, sabes hacer de todo un poco, así que si te encuentras con el problema siguiente:

if(variable==otra_variable) {
otra_variable_mas += 5;
.
/* ochocientas líneas de if */
.
}


es decir, un "if" larguísimo que tiene mal la indentación. Como escufi solamente ha dado unas pinceladas para resolverlo con sus indicaciones tienes dos posibilidades:

1) La menos inteligente que es ir una por una metiendo una tabulación
2) Una bastante más rápida que es ir al "if" y apuntar el número de línea, ir a la llave final y hacer lo mismo y luego una sustitución del tipo :X,Ys/^/\t/. Pero esto sigue siendo un poco engorroso porque necesitas estar comprobando los números de línea.

Sin embargo, con el tutorial que he escrito sabrías que existe una orden que es ">" (indentar) y un objeto de texto que es bloque de paréntesis. Así que para indentar el bloque de paréntesis te basta hacer dentro de él ">iB". Es decir, procuro dar unos criterios básicos para lograr composiciones de comandos potentes.

En conclusión, que yo he escrito una cosita muy parcial de vim (no hablo de hacer sustituciones de texto, ni de jugar con las opciones, etc...), pero que pretende convertirte en un manitas en esa parte.

Por cierto, que el tutorial de escufi tiene unos cuantos errores en los comandos (dw,cw,fx, así en una primera parada), así que no lo habéis practicado mucho... }:)
4 respuestas