^[]
शोर अपनी सुरक्षा प्रॉम्प्ट में विभिन्न टर्मिनल नियंत्रण वर्ण से आ रही है। echo $PS1
पूर्ण अनुक्रम को देखने का प्रयास करें , और उदाहरण के export PS1='$ '
लिए यह देखने की कोशिश करें कि एक सरल प्रॉम्प्ट स्ट्रिंग उस विशेष समस्या को हटा देती है।
एन्कोडिंग के लिए, आप utf-8 को अपना पसंदीदा एन्कोडिंग बनाने का प्रयास कर सकते हैं:
(prefer-coding-system 'utf-8)
शीघ्र की स्थापना
Emacs INSIDE_EMACS चर सेट करता है ताकि आप एक .bash_profile बना सकें जो PS1 को केवल Emacs में चलने पर सेट करता है।
मेरी मशीन पर परीक्षण, प्रॉम्प्ट की पहली पंक्ति में समस्याग्रस्त नियंत्रण वर्ण हैं। मैंने इसके साथ एक ~ / .bash_profile बनाया।
if [ -n "$INSIDE_EMACS" ]; then
export PS1='\[\033[32m\]\u@\h \[\033[33m\]\w\[\033[36m\]`__git_ps1`\[\033[0m\]\n$ '
fi
यह डिफ़ॉल्ट रूप से सेटिंग-बैश के आधार पर प्रॉम्प्ट सेट करता है, लेकिन मैंने पहली पंक्ति (\ n लाइन ब्रेक तक) को हटा दिया है। मैंने $ MSYSTEM को भी हटा दिया है जो MINGW64 को प्रॉम्प्ट में डालता है - मुझे यह देखने की आवश्यकता नहीं है। क्या रहता है उपयोगकर्ता @ होस्ट, वर्तमान निर्देशिका और गिट रेपो। नियंत्रण वर्ण उन रंगों को सेट करते हैं जो Emacs मेरे लिए ठीक से प्रदर्शित करता है। (अपना प्रॉम्प्ट सेट करने के विवरण के लिए, बैश मैनुअल देखें ।)
Emacs में मैंने शेल को git-bash में सेट किया है:
(setq explicit-shell-file-name "C:/git-for-windows/bin/bash.exe")
(setq explicit-bash.exe-args '("--login" "-i"))
इस सेटअप के साथ मैं अभी भी प्रारंभिक ioctl त्रुटि संदेश देख रहा हूं, लेकिन अन्यथा चीजें अपेक्षा के अनुरूप काम करती हैं और एन्कोडिंग utf-8 है।
MĂĄrton
पढ़ना चाहिएMárton
)