एक ही मशीन पर विम और कैफीन का उपयोग करना


12

पृष्ठभूमि

मैं एक अनुसंधान प्रयोगशाला में काम करता हूं और तीन अलग-अलग ओएस के दैनिक उपयोग करता हूं। विंडोज और मैक मशीनों पर मैं उन मशीनों को स्क्रीनसेवर को सक्षम करने से रोकने के लिए कैफीन का उपयोग करता हूं, जबकि मैं एक अलग मशीन पर काम करता हूं (लिनक्स में यह समस्या नहीं है)। जब मैं वापस स्विच करता हूं तो फिर से लॉग इन करना बहुत कष्टप्रद होता है।

मुसीबत

जब vim या gvim इन्सर्ट मोड में होते हैं, तो अक्षर में <F15>छिटपुट रूप से वर्ण प्रकट होता है। मैंने थोड़ी खोजबीन के बाद इसे वापस कैफीन को ट्रैक किया। कैफीन के लिए वेबसाइट बताती है कि सॉफ्टवेयर कभी-कभार एक <F15>महत्वपूर्ण प्रेस घटना का अनुकरण करके काम करता है :

उपलब्ध सभी प्रमुख प्रेसों में से, F15 शायद कम से कम घुसपैठ है (मैंने उस कुंजी के साथ पीसी कीबोर्ड कभी नहीं देखा है!) और कम से कम आपके काम में हस्तक्षेप करने की संभावना है।

तो कैफीन स्पष्ट अपराधी है। हालाँकि, मैं अभी भी तीनों मशीनों पर अपने पसंदीदा टेक्स्ट एडिटर का उपयोग करना पसंद करता हूं, और इसे बदलने का इरादा नहीं है, बस कैफीन का उपयोग करने के लिए समायोजित करें।

सवाल

क्या कोई ऐसी चीज़ है जिसे मैं दबा सकता हूँ vimrcताकि विम को <F15>मुख्य प्रेस घटनाओं को अनदेखा किया जा सके ?


स्पष्टता के लिए संपादित करें

मैं स्क्रीनसेवर टाइमआउट को अक्षम नहीं कर सकता; यह सुरक्षा उद्देश्यों के लिए आईटी विभाग द्वारा निर्धारित किया गया है। इसलिए कैफीन के साथ काम करने के लिए, आज्ञाकारी बने रहने के लिए, मुझे अपनी मशीनों को मैन्युअल रूप से लॉक करना पड़ता है जब मैं अपने डेस्क से दूर जाता हूं। ये उतना बुरा नहीं है; लेकिन हर कुछ मिनट बाद उन्हें अनलॉक किया जाता है।

इसके अलावा, मैंने कैफीन नहीं लिखा, इसलिए मुझे नहीं पता कि डेवलपर ने <F15>एक मिनट में एक बार क्लिक करने का विकल्प क्यों चुना । जैसा कि @ random832 ने सुझाव दिया था, शायद मैंने इसे अलग तरह से किया होगा, शायद एक मामूली माउस मोशन या टचपैड टैप के साथ।


4
सिर्फ स्क्रीनसेवर / टाइमआउट-टू-लॉक को उन मशीनों पर क्यों नहीं अक्षम करें? यह कैफीन के अजीब व्यवहार के आसपास काम करने के लिए विम को कॉन्फ़िगर करने की तुलना में बहुत क्लीनर समाधान होगा। या कम से कम कैफीन की तरह कुछ के <Ctrl>बजाय अनुकरण करते हैं <F15>
रुस्लान

1
@Ruslan उपयोग करने <F15>की बात यह है कि यह बहुत कम ही किसी भी चीज़ का अर्थ है और आमतौर पर इसे अनदेखा किया जाता है; <Ctrl>, तथापि, है सार्थक, और जब गलत समय पर शुरू हो रहा अनायास ही व्यवहार हो सकता है।
काइल स्ट्रैंड

@Ruslan ओएस को निष्क्रियता की अवधि के बाद लॉक करने के लिए आईटी विभाग द्वारा कॉन्फ़िगर किया गया है; चल कैफीन मुझे बायपास करने की अनुमति देता है, जब तक कि मैं अपने डेस्क से दूर जाने पर मैन्युअल रूप से अपनी मशीनों को लॉक कर देता हूं। इसके अलावा, कैफीन के लिए मेरे पास स्रोत कोड नहीं है, इसलिए मैं इसे बदल नहीं सकता।
जोनाथन लैंड्रम

जब आप टैपपैड सक्षम होने पर टचपैड को टैप करते हैं, तो यह केवल उस घटना का अनुकरण नहीं करता है जो आपको मिलती है, लेकिन यह अभी भी उस विंडो को केंद्रित करता है जो आपके ऊपर है - लेकिन वर्तमान विंडो पर इसलिए यह कुछ भी नहीं करता है?
रैंडम 832

@ Random832 यह एक अच्छा सवाल है; मैंने प्रोग्राम नहीं लिखा था, इसलिए मुझे <F15>साइट पर पोस्ट किए जाने के अलावा अन्य चुनने के पीछे के तर्क का पता नहीं है ।
जोनाथन लैंड्रम

जवाबों:


20

आप <nop>इसे "कुछ भी नहीं" बनाने के लिए एक कुंजी ("ऑपरेशन नहीं" के लिए संक्षिप्त) कर सकते हैं।

यह विम <F15>को सभी मोड में कुंजी को अनदेखा करना चाहिए :

:noremap <F15> <nop> 
:noremap! <F15> <nop>

यह शायद आपकी समस्या को ठीक कर देगा , लेकिन मैंने आपकी विशिष्ट स्थिति में इसका परीक्षण नहीं किया है, क्योंकि मेरे पास विभिन्न विंडोज / OSX मशीनें नहीं हैं जिनमें कैफीन स्थापित है :-)


ऐसा लगता है कि यह किया! आपके सहयोग के लिए धन्यवाद।
जोनाथन लैंड्रम

1
यह ध्यान दिया जाना चाहिए कि <f15>आमतौर पर मृत कुंजी की तरह अक्सर उपयोग किया जाता है जब टर्मिनल विम में फास्ट कीकोड्स को मैप करते हैं । एक प्लगइन का उदाहरण जो ऐसा काम करता है rsi.vim
पीटर रिनेकर
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.