Sé que puedo eliminar del cursor hasta e incluyendo la primera aparición de un carácter x con d/x<CR>o con v/x<CR>dsi quiero ver la selección primero y luego eliminar. ¿Cómo puedo eliminar de la posición actual del cursor hasta el n º ocurrencia de x ?
Por ejemplo, si el cursor está después del primer espacio en
yada yada yada
yada yada yada x
yada yada yada x
yada yada yada x
xx
y escribo un comando para eliminar hasta la tercera x, el resultado debe ser:
yada
xx
search
cut-copy-paste
Erwin Rooijakkers
fuente
fuente

fy amigos (F,t,T,;): por ejemplo,2fxva a llegar a la segundax, o2;va a repetir la últimafdos veces.Puedes hacer esto escribiendo
dónde:
fuente
se usa comúnmente en vim para repetir la macro "n" veces.
así que para eliminar hasta la primera aparición de x, usaría
1dfx. Del mismo modo, para eliminar hasta la tercera aparición de x, usaría3dfx.fuente
@xdondexestá su registro. A lo que se refiere es a un comando de modo normal.<n>macrono es una notación estándar en vim para las macros y como su respuesta usa un comando de modo normal, es más o menos lo mismo que el de kapil.Dado:
donde los
$extremos indicados de las líneas (:set listmodo), si el cursor está al comienzo del segundoyadaen la primera línea, primero tenemos que retroceder al espacio anterior usando h, para incluirlo en la eliminación. Entonces solo 4d/xEnter. En otras palabras, solo un recuento delante d/x. El resultado es exactamente:fuente