Untuk menambah pertanyaan stackoverflow ini , apa yang harus dimasukkan .vimrc
untuk memastikan 'pengeditan pribadi' ekstensi file tertentu (misalnya .gpg
file).
Tanpa mengurangi keefektifan sesi, tidak ada info tentang pekerjaan yang dilakukan yang harus disimpan, termasuk register, riwayat pencarian, riwayat perintah, tampilan, swap, dll. Untuk gpg
file, seseorang dapat menggunakan plugin vim ini , tetapi selain mengedit plugin, bagaimana caranya satu memperluas ide-ide yang dibahas ini ke jenis file yang sewenang-wenang?
Kami mungkin akan menggunakan perintah berikut,
if <ft in privacy_ext_list>
set noswapfile
set noundofile
set viminfo=
endif
tetapi selain pernyataan kondisional yang sesuai, apa yang hilang?
Lebih lanjut, apakah ada cara dengan Vimscript untuk membuat array ekstensi file dan kemudian mengevaluasi apakah tipe file saat ini dalam array?
Jawaban:
Berikut adalah daftar lengkap pengaturan yang harus ditambahkan ke Anda
.vimrc
jika Anda ingin mencegah kebocoran file sensitif.Saya sarankan Anda membuat file konfigurasi baru yang disebut
.vimrc_secure
dan menjalankan Vim denganvim -u ~/.vimrc_secure
(atau membuat skrip / alias) ketika Anda ingin mengedit file sensitif Anda. Ini akan meminimalkan risiko plugin jahat atau fitur buggy.sumber
.vimrc_secure
independen dari.vimrc
(melakukan seperti yang Anda katakan kemudian memungkinkan pengguna untuk:e private file
[sehingga menjaga file dari sejarah shell juga]), tetapi menggunakanvim -u ~/.vimrc-incognito
tidak akan sumber~/.vimrc
sama sekali, benar? Kegembiraan privasi tidak harus datang dengan mengorbankan kenyamanan berkurang (kecuali kenyamanan secara mendasar cacat melalui plugin jahat atau fitur kereta). Meskipun harus ada penekanan pada risiko yang tidak diketahui, pasti, harus ada beberapa cara untuk membungkus solusi Anda secara kondisional ...au BufRead * if &key != "" | setlocal nobackup noundofile ... | endif
harus melakukan keajaiban untuk Anda, dan tidak mungkin untuk dilupakan.&l:cm != ""
?&cryptmethod
, yang merujuk ke pengaturan itu. Bagianl:
itu kesalahan (saya menggunakan kekuatan mod khusus saya untuk mengedit komentar saya). Terima kasih telah menunjukkan itu!