Por qué no se recomiendan las teclas de flecha en Vim

Pregunta:

"¡Nunca uses las teclas de flecha en Vim!"

Escuché esto de un orador al azar, pero no tuve la oportunidad de preguntarle por qué. Además, si no usa las teclas de flecha, ¿cómo puede mover el cursor en el modo Insertar ?

Respuesta:

Usar las teclas de flecha se considera un mal hábito, porque si está usando las teclas de flecha probablemente se esté perdiendo muchas de las características encantadoras de vim.

Cuando las personas comienzan a usar vim, tienden a permanecer en el modo de inserción, ya que se parece más a la edición de texto convencional. Sin embargo, para ser efectivo en vim, solo debe estar en modo de inserción cuando esté ingresando texto. Si desea mover el cursor, debe estar en modo normal. Deberías estar prácticamente en modo normal por defecto.

En el modo normal hay un millón de atajos para moverse. Puede usar hjkl para moverse un espacio a la vez, o puede moverse por palabras, párrafos, etc. Si está en modo normal, no tiene sentido usar las teclas de flecha en lugar de hjkl ya que están más lejos.

Existe la actitud de que si está usando las teclas de flecha, está usando vim "incorrectamente". La verdad es que vim tiene una curva de aprendizaje muy empinada, así que mientras aprendes haz lo que sea que te mantenga cuerdo. Cuando comencé a usar vim, hice todo de la manera "incorrecta" y no tuve ningún problema para romper los hábitos una vez que aprendí más sobre los comandos de vim.

Como ejemplo, cuando comencé, digamos que quería cambiar el texto entre comillas:

String mystring = "I want to change this";

Entraría en el modo de inserción, me movería hasta el final de la cadena usando las teclas de flecha, presionaría la tecla de retroceso hasta que la cadena desapareciera e ingresaría el nuevo texto.

Una forma mucho mejor es colocar el cursor en cualquier lugar de la cadena (modo normal), luego presionar c i " . Esto change in " . Eliminará todo entre las comillas y te pondrá en modo de inserción para que pueda ingresar el nuevo texto.

Leave a Comment

Your email address will not be published. Required fields are marked *

web tasarım