In Vim, come posso eliminare tutto tra virgolette?


Risposte:


284

Prova la seguente sequenza, che può essere pensata come "d" elete, "i" nside, virgolette, quindi: di"


10
Vedi anche :help text-objectsper altre cose che funzionano in modo simile a "questa situazione.
— Randy Morris,

32
@ funk-shun: vedi se da"fa quello che vuoi. Il mnemonico sarebbe "elimina una citazione [blocco]". Elimina da citazione a citazione più, credo, qualsiasi spazio dopo la citazione di chiusura.
— Herbert Sitz,

1
Per me lo è di"<spacebar>. Per alcune tastiere è necessario premere la barra spaziatrice per inviare il carattere di doppia virgoletta.
— André Staltz,

2
@ funk-shun Se stai cercando di eliminare le virgolette lasciando il testo all'interno, controlla Vim-Surround .
— Jonathan Dumaine,

Strano bug (?) Per me: questo non funzionava se il testo era 'attivo' e il contenuto tra le virgolette scorreva su due righe. Ho dovuto ridimensionare la finestra, quindi era tutto su una riga. Quindi ha funzionato bene.
— nulluser

27

La seguente frase lascia cadere tutto all'interno delle virgolette pur essendo in modalità normale:

di"

dove:

  • d è per cancellare
  • sto per "interno", proprio all'interno del seguente marcatore.
  • "serve per specificare che si eliminerà tra virgolette.

Si noti che non è necessario essere all'interno delle virgolette quando lo si chiama, il comando proprio cerca la prima occorrenza del testo all'interno delle virgolette nella riga corrente e lo elimina, quindi è possibile salvare alcuni tasti.

Inoltre, se sei interessato a cancellare anche le virgolette, applica il seguente comando (un mezzo "e attorno ad esso")

da"
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.