Mx ansi-term में Zsh के साथ शीघ्रता से पहले 4 मीटर की दूरी पर भटका


10

मैं हाल ही में पढ़ा Emacs में शेल चल रहा है , और कुछ समय की सीमित क्षमताओं के साथ काम करने के लिए अपने विस्तृत Zsh शीघ्र अनुकूल करने के लिए खर्च करते हैं M-x shellऔर M-x ansi-term

इस प्रयास के बाद, मैं अब Emacs के भीतर से Zsh का उपयोग करने में सक्षम हूं, हालांकि इसके साथ-साथ एक मामूली-उपद्रव है M-x ansi-term। मैं हमेशा 4mप्रॉम्प्ट से पहले आवारा पाठ देखता हूं ।

शीघ्र पाठ से पहले

जैसा कि आप देख सकते हैं, यह घटना वास्तविक शीघ्र विषय से स्वतंत्र लगती है। यह किसी भी अंतर्निहित संकेतों के साथ भी दिखाई देता है, यहां तक ​​कि सरल भी जो किसी भी फैंसी नियंत्रण वर्णों का उपयोग नहीं करते हैं। तथ्य की बात के रूप में, यह डिफ़ॉल्ट प्रॉम्प्ट के साथ भी होता है, अर्थात यदि मैं अपने बिना Zsh शुरू करता हूं .zshrc

खैर, यह वास्तव में सिर्फ एक मामूली उपद्रव है, और अगर मैं इससे छुटकारा पाने में सक्षम नहीं था, तो मैं वास्तव में बुरा नहीं मानूंगा- मैं ज्यादातर M-x shellवैसे भी पसंद करता हूं , जहां यह समस्या नहीं होती है।

लेकिन यह वास्तव में मुझे गुस्सा दिलाता है कि मैं इस मुद्दे का कारण खोजने में सक्षम नहीं हूं, हालांकि मैंने वास्तव में इसे डिबग करने की कोशिश की थी। हालांकि, मुझे कहना होगा कि टर्मिनलों के बारे में मेरी समझ सीमित है, इसलिए मैं बहुत स्पष्ट याद कर सकता हूं।

मैं OS X 10.10 पर हूं। मेरा Emacs 25.0.50 है, होमब्रे के साथ ट्रंक से सीधा निर्माण करें, और कोई विशेष झंडे नहीं। Zsh 5.0.5 है, जैसा कि योसेमाइट के साथ शामिल है, लेकिन होमब्रेव के माध्यम से 5.0.7 के साथ समस्या भी होती है।

क्या कोई इस मुद्दे पर प्रकाश डाल सकता है?


एक्सपोर्ट TERM = xterm-256color को अपने .zshrc या (सेटैक सिस्टम-यूज़-टर्मोफ़िल) में सेट करने का प्रयास करें ।
किमीकु

system-user-terminfoकुछ भी नहीं बदला। $TERMमुद्दे को बदलना , लेकिन यह समाधान नहीं हो सकता है, क्या यह हो सकता है? आखिरकार, यह एक झूठ है, अनिवार्य रूप से: ansi-termकोई एक्सटरम नहीं है, और निश्चित रूप से 256 रंगों का समर्थन नहीं करता है।
चंद्रग्रहण

4 मी एक रंग को परिभाषित करने के लिए उपयोग किए जाने वाले एएनएसआई एस्केप कोड से एक विरूपण साक्ष्य है। \x1b[37;4m37 के साथ एक सफेद रंग निर्दिष्ट करता है और 4. के साथ रेखांकित पाठ मैं आपकी समस्या को पुन: पेश नहीं कर सकता। मेरा ज़िश 5.0.7 है और 'एको $ टर्म' एएनआई- टर्म में मुझे इटरम-कलर देता है , मेरा एमएसीएस 24.4.1 है । मैंने डिफ़ॉल्ट डिफ़ॉल्ट संस्करण 'env HOME = ~ / tmp / emacstest emacs -Q' का भी परीक्षण किया और मैं कोई समस्या नहीं देख सकता।
किमीकु

@kmicu OS X 10.10 पर, मैं इस मुद्दे को लगातार emacs -Qऔर बिना किसी Zsh कॉन्फ़िगरेशन के पुन: उत्पन्न कर सकता हूं ।
चंद्रग्रहण

जवाबों:


10

जाहिरा तौर पर इस मुद्दे के लिए लापता termfo केeterm-color कारण होता है । मैं उस निर्देश का पालन करते हुए समस्या को हल करने में कामयाब रहा, जो कि टर्मो डेटाबेस में एक उपयुक्त प्रविष्टि स्थापित करने के लिए है। विशेष रूप से:

$ tic -o ~/.terminfo /usr/local/share/emacs/25.0.50/etc/e/eterm-color.ti

मुझे अभी भी यकीन नहीं है कि इसकी आवश्यकता क्यों है। term.elवास्तव में $TERMINFOउस निर्देशिका की ओर इशारा करते हुए चर का निर्यात करता है , इसलिए शेल को टर्मोफ़ायर खोजने में सक्षम होना चाहिए। Zsh निर्देशिका को नजरअंदाज करने लगता है, हालांकि ...

~/.terminfoयद्यपि, यह देखता है , इसलिए उपरोक्त आदेश, Zsh के लिए टर्मफ़्लो प्रविष्टि उपलब्ध कराता है।

मुझे खुशी होगी कि अगर कोई बेहतर स्पष्टीकरण या कोई समाधान दे सके जिसके लिए मैन्युअल हस्तक्षेप की आवश्यकता नहीं है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.