Los objetos de texto de palabras internos y externos en vim se comportan de manera diferente cuando se combinan con un recuento. Dado el texto (el cursor está dentro de la palabra first
)
first second third fourth
ambos y2iw
pondrán la primera palabra en el registro, y3iw
/ y4iw
las dos primeras palabras, etc. Así que necesito al menos y7iw
tirar de las cuatro palabras (internas). Para las palabras externas, el recuento dado se corresponde con el número de palabras eliminadas.
¿Por qué dos iw
objetos corresponden a una sola palabra en este caso y puedo llegar iw
a comportarme de forma similar a aw
?
Respuesta1
Escriba aproximadamente 5 espacios y hágalo viw
: los aproximadamente 5 espacios se seleccionan porque iw
también se consideran \s+
un "objeto" separado.
En tu ejemplo, tienes 7 iw
objetos:
yiw
tironesfirst
en el registro sin nombre.y2iw
tironesfirst
(con el espacio final) en el registro sin nombre.y3iw
tirafirst second
(con el espacio) en el registro sin nombre.y4iw
tirafirst second
(con los espacios) en el registro sin nombre.- Etcétera…
Por otro lado, aw
considera la palabray cualquier número de espacio siguientecomo un "objeto".
En tu ejemplo, tienes 4 aw
objetos:
yaw
tironesfirst
(con el espacio final) en el registro sin nombre.y2aw
tironesfirst second
(con el espacio final) en el registro sin nombre.y3aw
tironesfirst second third
(con el espacio final) en el registro sin nombre.y4aw
tironesfirst second third fourth
en el registro sin nombre.
Si quieres iw
comportarte como tal, aw
simplemente usa aw
.