2009-11-07 7 views
26

जब भी मैं विम में एक खोल खोलता हूं: sh, यह मेरी ~/.bashrc फ़ाइल को स्रोत नहीं करता है। मैं इसे स्वचालित रूप से करने के लिए कैसे प्राप्त कर सकता हूं?मैं अपने bashrc स्रोत के लिए vim कैसे प्राप्त करूं: sh कमांड?

उत्तर

33

:help 'shell' देखें। आप इस स्ट्रिंग को -l या --login शामिल करने के लिए सेट कर सकते हैं, जो आपकी .bashrc फ़ाइल को स्रोत करेगा। तो, आप अपने .vimrc में इस तरह की एक लाइन हो सकता है:

set shell=bash\ --login 

ध्यान दें कि यह सब कुछ है कि खोल invokes, :! सहित बदल देगा। यह एक समस्या का अधिक नहीं होना चाहिए, लेकिन आपको इसके बारे में पता होना चाहिए।

इस आदेश का मूल्य $SHELL पर्यावरण चर सेट करके भी बदला जा सकता है।

+1

आप मेरे नायक हैं। मैंने किया था: अतीत में मदद करें, दुर्भाग्य से यह आपको बहुत कुछ नहीं बताता है। –

0

यदि यह आपकी .bashrc फ़ाइल को स्रोत नहीं करता है, तो यह अब भी आपकी .bash_profile फ़ाइल को स्रोत कर सकता है। मैं आमतौर पर उनमें से एक को दूसरे के लिए एक सिम्लिंक बना देता हूं। यदि आपका .bashrc कुछ विशेष रूप से विषम एक-बार संचालन करता है, तो आपको इसे केवल लॉगिन ऑपरेशन के साथ उन परिचालनों को निष्पादित करने के लिए संपादित करना पड़ सकता है, लेकिन मुझे इसके साथ कभी समस्या नहीं हुई है।

0

~/.vimrc

cmap sh<CR> !bash --login<CR> 

आप जल्दी से दर्ज करते हैं "श < दर्ज करें>" कमांड लाइन में, आप सोर्सिंग ~/.bashrc के साथ बैश शुरू कर सकते हैं। कितना गन्दा।

+3

यह समस्या पहले से ही एक साफ तरीके से हल हो चुकी है। अनावश्यक मैपिंग के साथ हमारी vimrc फ़ाइलों को प्रदूषित करने की आवश्यकता नहीं है। –

संबंधित मुद्दे