Risposte:
Il comando dweliminerà dalla posizione corrente del cursore all'inizio del carattere della parola successiva. Il comando d$(nota che è un simbolo di dollaro, non una "S") verrà eliminato dalla posizione corrente del cursore alla fine della riga corrente. Dè sinonimo di d$.
dw, ma immagino di aver appena pensato che ci sarebbe stato un comando "elimina il resto di questa riga". Per esempio la mia linea ha ip=|10.1.1.1con |essendo la posizione del cursore. C'è un comando che cancellerà tutto 10.1.1.1?
d$
:!rm -f %e quindi :q!. Ciò elimina l'intero file.
d^('d' + caret) ... praticamente d + qualsiasi personaggio che normalmente sposterebbe il cursore, penso, ma sto imparando Vim me stesso, quindi potrei sbagliarmi.
Come altri hanno già detto: è possibile utilizzare d$o D( shift- d) per eliminare dalla posizione del cursore fino alla fine della riga.
Quello che in genere trovo più utile è c$o C( shift- c) perché eliminerà dalla posizione del cursore fino alla fine della riga e vi metterà in modalità [INSERIRE].
Dper la maggior parte delle persone, secondo me, in quanto non ti sposta indietro di uno spazio alla fine della linea.
iche si inserisce prima del cursore e ache si inserisce dopo il cursore. Se il cursore si trova alla fine della riga e si desidera inserire alla fine della riga, è possibile utilizzare solo a.
Una delle cose belle di vi è la sua struttura di comando logica. dseguito da un comando di movimento d eletes al target di tale movimento. $si sposta alla fine della linea (mnemonico: come in regexps). Quindi d$cancella fino alla fine della linea. Allo stesso modo, esi muove al di posta ND della parola corrente, e wmosse per l'inizio del prossimo w ord; quindi deelimina la fine della parola corrente e dwinoltre elimina i seguenti spazi bianchi.
<kbd>per i tasti effettivi, non per le sequenze di comandi. Ad esempio <kbd>Ctrl</kbd>+<kbd>C</kbd>, ma d$.
Probabilmente vuoi usare D. Sposta il cursore sul primo carattere che vuoi eliminare, quindi premi maiusc-D. Tutto finito. In realtà, si trova nel buffer di taglio predefinito, quindi è possibile incollarlo nuovamente.
Uso Dp (elimino alla fine della riga, quindi lo rimetto), mi sposto alla fine di un'altra riga, quindi p di nuovo per incollare lo stesso testo alla fine di questa altra riga. Funziona a meraviglia nei file di configurazione, in cui è necessario inserire alcuni URL complicati in due o più posizioni.
Penso che una scorciatoia in modalità inserimento possa tornare utile.
In modalità insert forse sarebbe meglio iniziare a cambiare fino alla fine della riga (mettilo sul tuo ~/.vimrc):
inoremap <C-l> <C-o>C
Quindi, come è stato detto, Din modalità normale e Ctrl+ lin modalità inserimento. Come puoi vedere, hai anche Ciniziato a cambiare fino alla fine della riga.
<C-o> ......... insert normal keystroke in insert mode
Ho scelto Ctrl- lperché lè sotto le tue dita. Il Ctrl- kè già usato per inserire digraph.
Ho cercato :h i_Ctrlalcune combinazioni di tasti gratuite, ed è in realtà il problema più grande quando si tratta di creare nuove scorciatoie per eseguire azioni in vim.
Per eliminare un intervallo di righe da dopo la posizione del cursore, 3Dverrà eliminato dal cursore fino alla fine della riga, così come le due righe successive completamente (ovvero, elimina 3 righe dopo la posizione del cursore).
ad es. per il seguente testo (cursore rappresentato come |),
If there's a cursor |in the line
here
we
go
Utilizzando il comando 3Dverrà emesso:
If there's a cursor
go