Come dovrebbe funzionare l'opzione 'switchbuf'?


10

Recentemente ho scoperto l'opzione switchbufe ho provato a usarla ma non posso dire se non capisco come dovrebbe funzionare o se in realtà non funziona sul mio Vim.

A proposito dei diversi valori possibili, il documento dice:

useopen Se incluso, passa alla prima finestra aperta che
              contiene il buffer specificato (se presente).
usetab Come "useopen", ma considera anche le finestre in altre schede.

Ho quindi usato set switchbuf=useopen,usetabi seguenti comandi in una nuova istanza di vim:

  • Apri un primo buffer :e file1
  • Dividi lo schermo :split
  • Apri un secondo buffer :e file2
  • Torna al primo buffer :e file1(ho anche usato :bN)

Gli ultimi comandi per passare al primo buffer lo aprono nella seconda divisione. Da quello che ho capito dal documento, i comandi dovrebbero posizionare il cursore sulla prima divisione in cui il buffer è già aperto grazie a useopen. Anche il comportamento è lo stesso quando provo gli stessi comandi con le schede anziché con le divisioni.

  • Questo comportamento è quello previsto?
  • In tal caso, potresti spiegare cosa dovrebbe fare questa opzione?
  • In caso contrario, so che dovrò eseguire il debug del mio .vimrcma forse esiste un'impostazione comune con cui interferire switchbuf?

Risposte:


10

'switchbuf'è onorato solo dai comandi quickfix (come :cc) e dai comandi di suddivisione del buffer (come :sb).

Non influenza :buffere altri comandi "regolari" relativi al buffer.


1
Oh, capisco. Come dice il documento prima This option controls the behavior when switching between buffers.e solo alcune righe successive menzionano i comandi di correzione rapida e sbho pensato che fosse in aggiunta ai normali comandi del buffer. Grazie!
statox
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.