कुछ फ़िल्टरों के लिए रिकॉर्डिंग की घटनाओं से विम को रोकें


12

इस स्टैकओवरफ़्लो प्रश्न में जोड़ने के लिए , किसी .vimrcको कुछ फ़ाइल एक्सटेंशनों (जैसे .gpgफ़ाइलों) के 'निजी संपादन' को सुनिश्चित करने के लिए क्या करना चाहिए ।

सत्र की प्रभावशीलता से समझौता किए बिना, किए गए काम के बारे में कोई भी जानकारी नहीं बचाई जानी चाहिए, जिसमें रजिस्टरों, खोज इतिहास, कमांड इतिहास, विचार, स्वैप आदि शामिल हैं। gpgफ़ाइलों के लिए, कोई भी इस प्लगइन का उपयोग कर सकता है , लेकिन प्लगइन को संपादित करने के अलावा, कैसे होगा फ़ाइल के प्रकारों के लिए इन चर्चित विचारों का विस्तार करें?

हम संभवतः निम्नलिखित आदेशों का उपयोग करेंगे,

if <ft in privacy_ext_list>
  set noswapfile
  set noundofile
  set viminfo=
endif 

लेकिन उचित सशर्त बयान के अलावा, क्या गायब है?

इसके अलावा, क्या फ़ाइल एक्सटेंशन की एक सरणी बनाने के लिए Vimscript के साथ एक तरीका है और फिर मूल्यांकन करें कि क्या वर्तमान फ़ाइल प्रकार सरणी के भीतर है?


6
@Carpetsmoker मुझे लगता है कि यह सवाल व्यापक है। लेखक सिर्फ यह नहीं पूछ रहा है कि किसी विशेष फाइलपेट के बफर में पैरामीटर कैसे सेट करें, बल्कि एक निश्चित सीमा तक गोपनीयता को सुनिश्चित करने के लिए कौन से पैरामीटर सेट करें। यह निश्चित रूप से स्पष्ट नहीं है या एक केंद्रीय स्थान में एक साथ एकत्र किया गया है, इसलिए मुझे लगता है कि यह एक अच्छा सवाल है।
एंड्रयू फेरियर

जवाबों:


6

यहां उन सेटिंग्स की पूरी सूची दी गई है, जिन्हें .vimrcयदि आप संवेदनशील फ़ाइलों के किसी भी रिसाव को रोकना चाहते हैं, तो आपके साथ जोड़ा जाना चाहिए ।

set nobackup
set nowritebackup
set noundofile
set noswapfile
set viminfo=""
set noshelltemp
set history=0
set nomodeline
set secure

जब आप अपनी संवेदनशील फ़ाइल को संपादित करना चाहते हैं, तो मैं आपको एक नई कॉन्फ़िगरेशन फ़ाइल बनाने की सलाह देता हूं, जिसे .vimrc_secureVim के साथ vim -u ~/.vimrc_secure(या एक स्क्रिप्ट / उपनाम) बनाएं। यह एक दुर्भावनापूर्ण प्लगइन या छोटी गाड़ी सुविधा के जोखिम को कम करेगा।


मैं इस अर्थ में इसे पसंद करता हूं जो .vimrc_secureस्वतंत्र है .vimrc(जैसा कि आप कहते हैं कि तब उपयोगकर्ता को :e private file[इस प्रकार शेल इतिहास से फ़ाइल को रखने के साथ ही] अनुमति देता है), लेकिन इसका उपयोग vim -u ~/.vimrc-incognitoकरना ~/.vimrcबिल्कुल भी सही नहीं होगा ? गोपनीयता की खुशियाँ कम आराम की कीमत पर नहीं आनी चाहिए (जब तक कि आराम से मौलिक रूप से दुर्भावनापूर्ण प्लगइन या बगडान सुविधा के माध्यम से त्रुटिपूर्ण हो)। जबकि अज्ञात के जोखिम पर जोर होना चाहिए, निश्चित रूप से, आपके समाधान को सशर्त रूप से लपेटने का कोई रास्ता होना चाहिए ...
एचएएल 9001

1
मैं एक अलग vimrc फ़ाइल का उपयोग करने की अनुशंसा नहीं करूंगा, साधारण कारण के लिए जिसे भूलना इतना आसान है। इस आटोक्मड की तरह कुछ: au BufRead * if &key != "" | setlocal nobackup noundofile ... | endifआपके लिए जादू करना चाहिए, और इसे भूलना असंभव है।
मार्टिन टूरनोइज

@Carpetsmoker, आखिर क्या है &l:cm != ""?
वाइल्डकार्ड

1
@Wildcard Ehm .... जैसा कि मैंने इरादा किया है &cryptmethod, जो उस सेटिंग को संदर्भित करता है। l:भाग एक गलती (मैं अपने विशेष आधुनिक शक्तियों का इस्तेमाल किया मेरी टिप्पणी को संपादित करने) था। यह बात बताने के लिए धन्यवाद!
मार्टिन टूरनोइज

@Carpetsmoker, क्या आप अपनी टिप्पणी पर विस्तार से बता सकते हैं? मैंने यहाँ एक धागा बनाया है: vi.stackexchange.com/questions/6195/…
Mateusz Piotrowski
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.