Cambia i buffer in vim senza salvare in un file attualmente modificato


24

Ok, sono un utente VIM con il plugin Minibufexl che mostra le schede buffer, ho mappato Shift + J e Shift + K per passare da una scheda all'altra. Una cosa che mi frustra spesso è durante la modifica di un file e il passaggio a un altro buffer, DEVO scrivere sul file corrente e quindi passare.

Ad esempio, ho foo.cpp e foo.h aperti in due buffer e sto modificando foo.cpp e non l'ho salvato, ho bisogno di controllare foo.h per vedere una definizione di funzione. Quindi uso rapidamente il plug-in dei file alternativi (a.vim) o il mio collegamento sopra. Qui è dove devo salvare prima di passare, diventa fastidioso rapidamente.

Non so quale query di ricerca utilizzare in Google, quindi chiedo qui, mi scuso se è fuorviante.

Risposte:


39

Vuoi avere

set hidden

nel tuo .vimrcfile. Leggere un (poco) di più sul nascosto di opzione e buffer nascosti


il tuo primo link è solo un reindirizzamento da vim.wikia.com alla pagina vimdoc nel secondo link. vim.wikia.com/wiki/… potrebbe anche essere di interesse.
— Jamessan,

@jamessan - sì, lo so, ma la pagina a cui reindirizza ha virgolette singole nell'URL e non sono riuscito a farlo apparire correttamente usando il markdown, quindi ho usato l'indirizzo di reindirizzamento.
— Hamish Downer,

0

Potresti trovare utile usare le finestre divise. Ad esempio, durante la modifica di foo.c, eseguire

:split foo.h

Questo aprirà foo.h in una finestra sopra foo.c. Puoi spostarti tra le finestre con ^W^W(Ctrl-W Ctrl-W) e ingrandire la finestra corrente con ^W_. Puoi trovare maggiori informazioni su questo eseguendo

:help windows

Lo facevo un po 'di tempo fa, ma il mio mignolo è diventato dolorante rapidamente e non volevo davvero rimappare Cntrl su Maiusc, ma se mi sposto su una macchina senza il mio pratico file .vimrc, seguirò assolutamente il tuo suggerimento. Grazie.
— Kai,
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.