मैकविम: <df> जैसे कमांड मैप्स को फिर से मैप करें


17

मैं मैकविम में अप्रयुक्त संयोजनों <d-1>(सीएमडी + 1) को रीमैप कर सकता हूं , लेकिन ऐसे कई संयोजन हैं <d-f>, <d-o>या <d-b>जो पहले से ही मैकविम मेनू आइटम के लिए बाध्य हैं। अगर मैं अपने .vimrc के अंदर उन लोगों को हटाने की कोशिश करता हूं, तो कुछ भी नहीं बदलता है।

क्या कोई तरीका है कि मैं मैकविम के अंदर उन संयोजनों को हटा सकता हूं, या मैकविम को उन्हें मेनू आइटम पर असाइन करने से रोक सकता हूं ताकि वे ठीक से विम कोर पर पारित हो जाएं?

जवाबों:


21

यह मिला: कमांड-टी निम्नलिखित स्निपेट का उपयोग करने की सिफारिश करता है:

if has("gui_macvim")
  macmenu &File.New\ Tab key=<nop>
  map <D-t> :CommandT<CR>
endif

तो मूल रूप से आप संबंधित मेनू आइटम को अनमैप करते हैं, और फिर आप उस शॉर्टकट को मैप करने के लिए स्वतंत्र होते हैं जिसे आप मैप करने की कोशिश कर रहे थे। (मुझे यकीन नहीं है कि एम्परसैंड क्या कर रहा है; यह इसके साथ और इसके बिना काम करता है।)

इसे ~ / .gvimrc में डाला जाना चाहिए, ~ / .vimrc में नहीं! (जाहिरा तौर पर ~ / .vimrc बहुत जल्दी पढ़ा जाता है, इसलिए यदि आप उन्हें वहां डालते हैं तो (संयुक्त राष्ट्र) मैपिंग बंद हो जाएगा।)


3
मैंने मैकविम (7.3) के वर्तमान संस्करण पर यह कोशिश की और यह काम नहीं किया। मैंने अंत में $ VIMRUNTIME / menu.vim में जाना, खोज करना <D-और && 0आसपास के अंत में स्टेटमेंट में डाल दिया। फिर मैंने सामग्री को अपने .gvimrc पर कॉपी किया और उसके <D-[^>]*>साथ बदल दिया <nop>
डैश-टॉम-बैंग

1
@ डैश-टोर्न-बैंग एचएम, ऊपर दिया गया मेरा कोड अभी भी लायन पर 7.3 स्नैपशॉट 62 के साथ ठीक काम कर रहा है। मुझे MacVim के menu.vim को संपादित करने की आवश्यकता नहीं थी। मुझे यकीन नहीं है कि यह मेरे लिए काम कर रहा है लेकिन आपके लिए नहीं ...
जो लिस

1
मैं इसे macmenu File.Print key=<nop>
एम्परसैंड के

धन्यवाद! मेरे लिए काम किया। हालांकि एक मामूली संशोधन के साथ:macmenu File.Close key=<nop>
हालिल ürzgür
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.