Saya tahu CTRLgmenampilkan file yang sedang Anda kerjakan. Apakah ada cara untuk memodifikasi .vimrc
nama file / path saya agar selalu ditampilkan?
Jawaban:
Di baris status Anda, tambahkan %F
untuk menampilkan jalur lengkap:
:help statusline
" Add full file path to your existing statusline
set statusline+=%F
Catatan, %F
akan menjadi jalur lengkap. Untuk mendapatkan jalur relatif ke direktori kerja, gunakan %f
.
Jika baris status Anda belum terlihat, Anda mungkin perlu mengkonfigurasinya terlebih dahulu agar selalu terlihat, melalui laststatus=2
set laststatus=2
Lihat :help laststatus
apa arti opsi tersebut. Biasanya, garis status mungkin disembunyikan, atau disembunyikan kecuali beberapa buffer terbuka, tetapi saya merasa sangat berguna untuk memiliki penyesuaian seperti ini setiap saat, sangat berharga untuk menyerahkan satu baris layar cadangan untuk itu.
:set statusline=%F
tanpa+
:set statusline=%F
? Lihat ke kanan atau kiri untuk melihat apakah nama file tersembunyi di sana dalam statusline
set laststatus=2
untuk menjaga statusline terlihat sepanjang waktu. Aku lupa aku pakai itu.
set ls = 2
tambahkan ini di vimrc, dan Anda akan selalu melihat nama file di bagian bawah.
set modeline
sedikit berbahaya dan tidak ada hubungannya dengan pertanyaan tersebut. Ini memungkinkan eksekusi perintah Vim di 5 baris awal / akhir file. Ini harus diaktifkan hanya oleh mereka yang tahu mengapa dan benar-benar menginginkan ini. (Itulah mengapa saya -1 jawaban ini)
Saya menemukan 2 cara untuk menampilkan jalur file di bilah Judul gnome-terminal saat mengedit file dengan Vim.
Cara yang lebih sederhana (dan lebih baik): Tambahkan baris berikut ke ~/.vimrc
:
set title
Yang akan menunjukkan Anda di atas:
filename.ext (~/path_to_directory_where_your_file_is/) - VIM
Cara yang lebih rumit akan menunjukkan kepada Anda jalur file absolut. Ini didokumentasikan lebih detail dalam posting blog yang baru-baru ini saya tulis.
Satu-satunya cara saya menemukan untuk mendapatkan path lengkap dari file saya bekerja di adalah: :echo expand('%:p')
. Anda dapat memetakan ulang ctrl + g jika Anda mau, tetapi saya pribadi tidak suka terlalu banyak bergeser dari standar. Saya telah memetakan F7 seperti ini:
map <F7> <Esc>:echo expand('%:p')<Return>
:help CTRL-G
, dan lihat dua paragraf ke bawah CTRL-G
dengan hitungan.
1 CTRL-G
menunjukkan nama file lengkap. Saya sedang mencari opsi ini.
~
.
Jika Anda menggunakan vim-airline , masukkan .vimrc
:
let g:airline_section_c = '%<%F%m %#__accent_red#%{airline#util#wrap(airline#parts#readonly(),0)}%#__restore__#'
Ini adalah modifikasi dari default maskapai, diubah %f
oleh %F
.
Statusline sangat kuat dan praktis menurut saya. Keluar dari kotak itu akan menampilkan nama file, posisi kursor dan beberapa bendera. Tetapi Anda ingin melakukan hal yang sama seperti saya dan mengganti nama file- bagian dengan path lengkap ke file tersebut.
Jadi saat mengedit .vimrc
baris status saya bisa terlihat seperti ini sebagai default:
.vimrc 26,16 7%
Anda dapat melihat pengaturan statusline Anda dengan:
:set statusline?
Tetapi jika Anda belum membuat perubahan apa pun dan tidak ada modul yang mengubahnya, itu akan kosong. Tetapi dengan contoh di bagian bantuan ( :help statusline
) Anda dapat menemukan bahwa defaultnya adalah:
:set statusline=%<%f\ %h%m%r%=%-14.(%l,%c%V%)\ %P
Jadi, sertakan ini dalam Anda .vimrc
dan ubah %f
ke %F
. Saya juga menambahkan menambahkan bendera tipe file ( %y
) ke baris status saya karena saya merasa nyaman. Jadi konfigurasi yang saya hasilkan terlihat seperti ini:
:set statusline=%<%F\ %h%m%r%y%=%-14.(%l,%c%V%)\ %P
Dan hasilnya akan terlihat seperti ini:
~/.vimrc [vim] 26,16 7%
Bacaan yang bagus:
PS. Saya menjalankan vim 7.3
Jika Anda ingin jalur menyertakan symlink yang diselesaikan, gunakan yang berikut ini:
set statusline +=%{resolve(expand('%:p'))}\ %*
Untuk mempertahankan singkatan '~' untuk direktori home Anda, sertakan fnamemodify
set statusline +=%{fnamemodify(resolve(expand('%:p')),':~')}\ %*
set statusline+=%F
saya~/.vimrc
sepertinya tidak sesuai dengan apa yang Anda katakan. Meskipun dokumen tampaknya setuju dengan Anda ...