¿Cómo hago una búsqueda y reemplazo de bloques con Vim?

Pregunta:

Tengo texto en Vim

  1. presione Ctrl+V para poner VIm en modo de bloque
  2. resaltar el texto que quiero
  3. tipo : esto da el mensaje this :'<,'>
  4. Agrego al indicador mi expresión regular s/ /*/g . Esto me deja con :'<,'>s/ /*/g el texto resaltado
  5. Presioné enter

Desafortunadamente, opera en toda la línea del bloque, no solo en el bloque. ¿Hay alguna forma de hacer una búsqueda de bloque y reemplazar?

Respuesta:

Cuando se utilizan comandos ex en el modo de bloque visual, : , siempre operan en toda la línea. Hay dos formas de evitar esto:

  1. El átomo \%V coincidirá solo dentro del área visual. Tratar

     :'<,'>s/\%V /*/g

    Ver :help %V

  2. Hay versiones visuales especiales de algunos comandos, live v_s o v_r. Ver :help visual-operators

Leave a Comment

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

web tasarım