2009-10-14 14 views
13

का सम्मान करने के लिए Emacs प्राप्त करना मैं अपने मानक टर्मिनल सत्रों की नकल करने के लिए अपने Emacs खोल प्राप्त करने का प्रयास कर रहा हूं। असल में मैं इसे एक ही पथ के साथ-साथ कमांड प्रॉम्प्ट का सम्मान करना चाहता हूं।मेरे डिफ़ॉल्ट खोल + विकल्प

अब तक मैं कुछ मुद्दे हैं:

  • पथ नहीं मिला है, नीचे दिए गए ठीक मुझे लगता है कि के लिए उपयोग कर रहा हूँ है।
  • मुझे एक और फिक्स के साथ पूरे स्थान पर एसीआईआई रंग कोड मिल रहा है।

मेरे पास मेरी mwilliams.el फ़ाइल में निम्न है। पहली कुछ पंक्तियां मुझे एम-एक्स शैल में/usr/local/bin तक पहुंच प्रदान करती हैं, जो आधा समस्या हल करती है और आखिरी कुछ पंक्तियां मुझे ज़श के साथ चलती हैं लेकिन मेरा संकेत बहुत पेंच है।

(setenv "PATH" (concat (getenv "PATH") ":/usr/local/bin")) 
(setq exec-path (append exec-path '("/usr/local/bin"))) 


(defun shell() 
    (interactive) 
    (ansi-term "/bin/zsh")) 

उपरोक्त के साथ मैं एम-एक्स खोल के दौरान निम्नलिखित में मिलता हूं।

4m\342/236/234 

मोड इस्तेमाल किया जा रहा हैं: (शब्द: चार रन Yas)

जहां तक ​​मेरा बता सकते हैं कि यह मेरे Zsh विषय में ascii रंग कोड के कुछ सम्मान नहीं है। हालांकि मैं कुछ रंगों को देख रहा हूं; तो यह आधा रास्ता है। मेरा सबसे अच्छा अनुमान यह है कि मुझे अपने .zshrc का सम्मान करने की आवश्यकता है जिसमें मेरी थीम और पथ के बारे में जानकारी शामिल है।

मैं सिर्फ अपने पैरों को इमाक्स में गीला कर रहा हूं और एक ठोस खोल प्राप्त कर रहा हूं, इससे पहले कि मैं अपने दैनिक काम (और बाकी सब कुछ) इमाक्स पर माइग्रेट करना शुरू कर सकूं, मुझे पहले कुछ चीजों में से एक है।

मैं ओएसएक्स हिम तेंदुए में Emacs 23.1 (9.0) चला रहा हूं।

उत्तर

16

मैं zsh का उपयोग नहीं करता लेकिन मुझे यह zsh FAQ में मिला और इसे आज़माया। मुझे कोई रंगीन पात्र नहीं मिला, जिसमें कोई फर्क नहीं पड़ता।

 
3.10: Why does zsh not work in an Emacs shell mode any more? 

Read more: http://www.faqs.org/faqs/unix-faq/shell/zsh/#ixzz0TyTJsHMq 

एक अन्य विधि एक फ़ाइल ~/bin/eshell, तो chmod +x ~/bin/eshell में

#!/bin/sh 
TERM=emacs exec zsh 

रखा, और ~/.emacs को

(setenv "ESHELL" (expand-file-name "~/bin/eshell")) 

जोड़कर कि शेल के रूप में उपयोग करने के लिए Emacs बताने के लिए है।

+0

बहुत बढ़िया, विधि # 2 एक आकर्षण की तरह काम किया! धन्यवाद! – mwilliams

+0

मुझे कोड 1 \ nopen टर्मिनल विफल होने के साथ असामान्य रूप से निकाला गया प्रक्रिया खोल प्राप्त होता है: ऐसा करने पर टर्मिनो डेटाबेस नहीं मिल सकता है। क्या आप में से कोई भी इसका अनुभव करता था और यदि आप इसके आसपास पहुंचने में सक्षम थे? –

1

पथ के लिए, पैकेज exec-path-from-shell (केवल ओएस एक्स) है।

यह $MANPATH, $PATH और exec-path खोल से मिलता है और उन्हें emacs के लिए सेट करता है।

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