तथ्य यह है कि प्रश्न काफी पुरानी है और चिह्नित के रूप में जवाब है के बावजूद, मैं कह रही है कि आप सामान्य मोड आदेश, जिसके द्वारा प्रदान किया गया उपयोग कर सकते हैं द्वारा जवाब का विस्तार करना चाहते हैं स्वेन Marnach साथ nnoremapइसलिए की तरह:
:nnoremap <C-Up> <Up>ddp<Up>
:nnoremap <C-Down> ddp
यह आपको अपनी फ़ाइल के भीतर Ctrl+ Upऔर Ctrl+ के साथ लाइनों को स्थानांतरित करने की अनुमति देगा Down। हालाँकि यह @"रजिस्टर को अधिलेखित कर देगा , जो आपके पिछले कॉपी किए गए स्ट्रिंग / शब्द / पत्र / आदि को संग्रहीत करता है। तो "(reg) को जोड़ने से पहले ddऔर pआदेश हम इसे ठीक कर सकते हैं:
:nnoremap <C-Up> <Up>"add"ap<Up>
:nnoremap <C-Down> "add"ap
यहां हम रजिस्टर "aमें अपनी लाइन को स्टोर करने के लिए डिलीट और पेस्ट कमांड से पहले जोड़ते हैं @a, इसलिए आपका डिफ़ॉल्ट कॉपी रजिस्टर ओवरराइट नहीं किया जाएगा। हालांकि यह @aरजिस्टर की सामग्री को ओवरराइट कर सकता है (जो जानता है, लेकिन आप इसे अपने उपयोग-मामले में किसी महत्वपूर्ण चीज के लिए उपयोग कर सकते हैं, लेकिन यह चरण बिट पागल है, आप इसे छोड़ सकते हैं यदि आप चाहते हैं), तो इसे भी ठीक करें:
:nnoremap <silent><C-Up> :let save_a=@a<Cr><Up>"add"ap<Up>:let @a=save_a<Cr>
:nnoremap <silent><C-Down> :let save_a=@a<Cr>"add"ap:let @a=save_a<Cr>
( <silent>नीचे संदेश-पंक्ति में हमारी आज्ञाओं को प्रतिध्वनित करने से रोकने की आवश्यकता है।)
अब हमारे पास दो मैपिंग हैं जो हमें कीबोर्ड शॉर्टकट के साथ फाइल के भीतर लाइनों को स्थानांतरित करने की अनुमति देते हैं। आप बटन को फिर से परिभाषित कर सकते हैं, मैं Alt+ j/ का उपयोग करता हूं k, जो कि <A-j>और <A-k>उन आदेशों के लिए होगा । हालांकि सभी टर्मिनल एमुलेटर Alt कुंजी मैपिंग AFAIK का समर्थन नहीं करते हैं।
git config --global core.editor <whatever>शामिल करके एक बार (Git सहित) पर या कई बातों के लिए,export EDITOR=<whatever>अपने में.bashrc।