Come visualizzi il nome del file su cui stai lavorando in vim?
Come visualizzi il nome del file su cui stai lavorando in vim?
Risposte:
:f( :file) farà lo stesso di <C-G>. :f!fornirà una versione non troncata, se applicabile.
:f!non funziona sempre, premi 1, quindi Ctrl-G per il percorso completo.
~/dev/file.pyed eseguo :fall'interno di vim, ottengo file.pycome output anziché ~/dev/file.py.
ctrl-gper restituire path + file. :frestituirà il nome file senza percorso, come potrebbe ctrl-g. Un 1prima ctrl-gmostrerà il percorso e il nome (non necessariamente espansi però). cioè mostrerà ~/dev/file.pyinvece di file.py. 2seguita da ctrl-gcomprenderanno che buffer: buf 1: "~/dev/file.py".
ctrl+ glo farà.
Inoltre, mi piace avere:
set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"
Che produce:
foo.c [C] [0x23] <code / foo.c 1, 1 2% su 50
Inoltre, come qualcuno ha menzionato (ma ora eliminato) %verrà sostituito con il nome file corrente. Per esempio:
:! echo "file corrente:%" file corrente: foo.c Premere INVIO o digitare il comando per continuare
[C]e [0x23]?
'statusline'è una stringa, ma non includi le virgolette nel set: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ linesnecessita anche di spazi di escape
imposta la riga di stato. maggiori informazioni con:help statusline
Questi comandi possono andare nel tuo file .vimrc, oppure puoi inserirli come comandi mentre sei in vim digitando ':' in modalità comando.
Innanzitutto, imposta l'ultimo stato su 2 utilizzando quanto segue:
set laststatus=2
Quindi impostare la riga di stato su% f per il nome file breve.
set statusline=%f
Per il percorso completo del file, utilizzare% F.
Per mostrare il percorso completo di qualsiasi file, inclusi i collegamenti simbolici risolti, utilizzare quanto segue.
:echo resolve(expand('%:p'))
Questo può essere aggiunto alla barra di stato aggiungendo la riga in basso alla tua ~./vimrc
set statusline +=%{resolve(expand('%:p'))}\ %*
Uno dei suggerimenti di cui sopra ha dovuto essere modificato in
set statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ lines
per farlo funzionare. Anche
set laststatus=2
era usato.
Uso l'incredibile vimrcdi amix: https://github.com/amix/vimrc
Utilizza il lightline.vimplug-in e visualizza il nome file sulla barra di stato.
La cosa grandiosa dell'uso di questo amix/vimrcè che questo plugin si occupa della maggior parte della personalizzazione, è molto stabile ed è stato testato da migliaia di persone, come puoi verificare guardando il numero di stelle github .. e i problemi rari.
Inoltre è aggiornato abbastanza frequentemente.
PS: non l'autore di nessuno dei plugin .. solo un fan :)
Ho anche dovuto metterlo nel mio file .vimrc:
set noruler
set laststatus=2
Quindi potrei inserire qualcosa di simile set statusline="%f%m%r%h%w [%Y] [0x%02.2B]%< %F%=%4v,%4l %3p%% of %L"nel mio file .vimrc e dopo aver riavviato il mio terminale la linea di stato viene visualizzata correttamente.
'statusline'è una stringa, ma non includi le virgolette nel set: set statuslineset statusline=%f%m%r%h%w\ [%Y]\ [0x%02.2B]%<\ %F%4v,%4l\ %3p%%\ of\ %L\ linesnecessita anche di spazi di escape