क्या मैं टर्मिनल Vim में `<cmd>` कुंजी का उपयोग कर सकता हूँ?


22

अपने अन्य हालिया प्रश्न से निम्नलिखित: मैं विम में Ack प्लगइन चलाने के लिए <cmd> - <shift> का नक्शा कैसे बनाऊं?

क्या <cmd>विम में कुंजी का उपयोग करना संभव है ?

विम कुंजी को नहीं पहचानता है, तो यह कुछ और करने के लिए विम (किसी भी तरह?) के प्रमुख के बाहर पुन: मैप और मैप करने के लिए संभव है कि विम के भीतर प्रमुख?

मैं ..३ के साथ शेर पर iTerm 2 का उपयोग कर रहा हूं।

धन्यवाद!

जवाबों:


12

<D-> केवल MacVim में काम करता है।

एक त्वरित Google हैक और तीसरे पक्ष के समाधान का एक गुच्छा लौटाएगा। सभी समाधान जो मुझे पता है कि या तो सिस्टम-वाइड काम करते हैं या एप्लिकेशन-विशिष्ट हैं: यदि आप Cmdकेवल iTerm2 में रीमैप करते हैं, तो आप एक नई विंडो या एक नया टैब कैसे खोलने जा रहे हैं? के साथ ... के साथ ... माउस?

मैं Cmdएक मैक पर कुछ भी करने के लिए कुंजी को फिर से बनाने के लिए एक अच्छे कारण की कल्पना नहीं कर सकता । वह पागल हो जाएगा।

विम TextMate या इससे पहले आपके द्वारा उपयोग किए जाने वाले अन्य संपादक नहीं हैं। आपकी सभी पुरानी आदतों को मूल रूप से स्थानांतरित करने का कोई तरीका नहीं है, बिंदु रिक्त।

अपना समय बर्बाद करने के बजाय विम और अपने टर्मिनल को किसी ऐसी चीज़ में बनाने की कोशिश करें जो यह नहीं है और यह नहीं हो सकता है कि आप सीखें कि कैसे और कैसे बुद्धिमानी से Vim को कस्टमाइज़ करें। आपके सभी Cmd+ Shift+ Ctrl+ Altकॉम्बो आपको कहीं भी नहीं ले जाएंगे। विशेष रूप से एक टर्मिनल में जहां Altअक्सर समस्याग्रस्त और Cmdअनुपयोगी होता है।

उपयोग पर विचार करें <leader>( :help leader):

  • यह हर मंच पर पोर्टेबल है
  • यह आपके ओएस या टर्मिनल एमुलेटर के साथ संघर्ष की संभावना कम है
  • यह संभावनाओं को याद रखने के लिए बहुत आसान खोल देता है

हाहा, शुक्रिया ग्रेविटी, अभी बहुत सफाई है।
रोमन

उत्तर के लिए धन्यवाद। मैंने सुना था, <leader>लेकिन मुझे यकीन नहीं था कि इसका उपयोग कैसे किया जाना चाहिए। मैं पोर्टेबिलिटी के बारे में आपकी बात से सहमत हूं, यह इस कारण का हिस्सा है कि मैं विम पर जा रहा हूं। धन्यवाद।
जॉर्डेल्वर

आप पुन: मैप कर सकते हैं Cmdकरने के लिए ControliTerm2 में, और फिर एक ही विंडो में, के साथ एक नया टैब खोलने के लिए शॉर्टकट जोड़ने ^tआदि, तो फिर सब कुछ काम करता है!
सीन क्लार्क हेस

5

मैंने पाया कि इस तरह की चीज़ करने के लिए कीबोर्ड सेटिंग्स में iterm2 का एक विकल्प है। पूर्व से नीचे के लिए मैंने मैप-कमांड दर्ज किया है: विक

यहाँ छवि विवरण दर्ज करेंयहाँ छवि विवरण दर्ज करें


इस समाधान के लिए धन्यवाद। यह ठीक वही है जिसकी तलाश मुझे थी। मैं <लीडर> के बारे में जानता हूं, लेकिन मुझे लगता है कि कुछ चीजें जैसे फाइल को सहेजना सार्वभौमिक होना चाहिए।
दिमित्री बिल्सेट्स्की

4

साधारण आदेशों के लिए टर्मिनल के लिए उपयुक्त हेक्स कोड भेजने के माध्यम से एक समाधान है। उदाहरण के लिए, मैं दबाकर विम को बचाना चाहता था cmd-s। मैं मैप किया cmd-siterm2 में हेक्स कोड भेजने के लिए 0x13, जिसके लिए कोड है ctrl-s, तो मैं मैप किया गया ctrl-sकरने के लिए :wqvim में।


आप वास्तव में ऐसा कैसे करते हैं? धन्यवाद।
ननोस

मेरे लिए 0x13 हेक्स कोड काम नहीं किया: / imgur.com/RjxOoLY
michalzuber

ऐसा करने के लिए, नीचे दिए गए चित्रों को देखें - iTerm2 को देखने के लिए धन्यवाद @jhickner
नील मैकगिल

3

2016 का समाधान Karabiner के ओपन-सोर्स प्रोग्राम का उपयोग करने के लिए है जो आपको उदाहरण के लिए बहुत ही बारीक से संशोधक और अन्य कुंजियों को हटाने की अनुमति देता है

  • केवल बायीं ⌘ Cmd या Optionचाबी को रिमैप करें ।
  • केवल विशिष्ट अनुप्रयोगों के लिए एक कुंजी को रिमैप करें, जैसे कि केवल टर्मिनल, ईमैक या वर्चुअल मशीन के अंदर।

उदाहरण के लिए, यहां केवल टर्मिनल के अंदर⌘ Cmd कार्य करने के लिए बाएं कुंजी को कैसे रिमैप किया जाए (और सही एक को अप्रभावित छोड़ दें ताकि आप अभी भी एप्लिकेशन के बीच स्विच करने के लिए उदाहरण के लिए उपयोग कर सकें ):Ctrl ⌘ Cmd + Tab

karabiner-स्क्रीनशॉट


बहुत बढ़िया। अब मैं इसका उपयोग ठीक से विम में कर सकता हूं, हालांकि (बाएं) कमांड + टैब "ऑल्ट टैब" नहीं है। मैं सही कमांड का उपयोग कर सकता हूं, लेकिन क्या किसी भी तरह रखने के लिए वैसे भी है?
पदक विजेता
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.