2010-09-24 12 views
17

¿Hay alguna forma de eliminar cada carácter en la misma línea como un cursor, hasta llegar al cursor? por ejemplo, podría tener una línea de código que se parece a lo siguiente:vim: borrar todos los caracteres de espacio en blanco hasta mi cursor

foo = [cursor]    Bar.new 

Si mi cursor está en el marcador de posición anterior, es posible eliminar todos los caracteres de espacio en blanco (? sin necesidad de utilizar expresiones regulares) para que Bar .new se coloca en el cursor?

+4

Estas dos preguntas separadas ... ¿Quieres eliminar los espacios en blanco que conduce al cursor, o espacios en blanco desde el cursor hasta el siguiente carácter que no sea de espacio en blanco? –

+1

debería haber leído * desde mi cursor hasta el comienzo de la siguiente palabra *, creo que –

Respuesta

8

Basado en su ejemplo, la respuesta de Neall es correcta. Sin embargo, en base a su pregunta inicial,

hay alguna forma de eliminar todos los personaje en la misma línea que un cursor , todo el camino hasta el cursor?

debería escribir d

En realidad, usted está pidiendo una tercera pregunta en su título ... eliminar todos los espacios en blanco hasta el cursor. Ese no estoy seguro de cómo hacerlo sin regex. dge eliminará todos los espacios en blanco que conducen hacia atrás hasta un espacio no en blanco, pero también elimina el primer carácter que no sea de espacio en blanco.

+0

No es tan limpio, ya que necesita saber el carácter que está eliminando, pero borrar de nuevo a la = podría lograrse con 'dT ='. ** D ** elete al revés- '** T ** il ** = ** –

6

No es exactamente lo que desea, pero quizás diw ayudaría - en el ejemplo anterior, sería eliminar toda el espacio en blanco entre el = y la Bar. Tal vez ciwespacio le daría el resultado que busca?

7

dtB

eliminará cualquier carácter hasta, pero sin incluir el 'B'

Cuestiones relacionadas