2012-11-17 16 views
10

पर emacs कनेक्ट करें मैं दूरस्थ होस्ट पर किसी ensime सर्वर से कैसे कनेक्ट कर सकते हैं? मेरी नेटबुक उस तरह की चीजों के लिए थोड़ा धीमी है। मैंने डेटा को कॉपी किया और फ़ाइलों को दूरस्थ रूप से संपादित करने के लिए ट्रम्प का उपयोग किया। मैं सर्वर बनाने के लिए bin/server चला गया और इसे जोड़ने में सक्षम होने के लिए एक एसएसएच अग्रेषण। मैं स्थानीयहोस्ट पर बंदरगाह से कनेक्ट करने के लिए ensime-connect का उपयोग करता हूं। रिमोट सर्वर पर ensime सर्वर Got connection, creating handler... के साथ जवाब देता है, लेकिन यह इसके बारे में है। Emss स्थिति रेखा में [ENSIME: wtf] मोड में Ensime है। मैं यह कैसे तय करुं?एक रिमोट ensime सर्वर

+0

क्या आपके पास क्लाइंट और सर्वर पर एक ही निर्देशिका में स्रोत फ़ाइलें हैं? –

+0

पूर्ण पथ के संदर्भ में नहीं, बल्कि '$ HOME' के सापेक्ष एक ही है। – Reactormonk

+0

ऐसा नहीं लगता कि इससे आपकी मदद मिलेगी –

उत्तर

3

समस्या यह है कि कनेक्शन को कनेक्शन की "कॉन्फ़िगरेशन" नहीं मिल सकती है (ensime-connect के माध्यम से बनाई गई)।

(if (and loose (ensime-file-in-directory-p file project-root)) 

क्योंकि परियोजना जड़ नहीं के बराबर है:

और फिर निम्न लाइन होगा त्रुटि फेंकता है।

ensime-buffer-कनेक्शन से कनेक्शन सेट करके, समस्या को ठीक किया जा सकता है। अपने ensime.el

और कनेक्ट करने के लिए ensime-stackoverflow-connect का उपयोग करके निम्न फ़ंक्शन जोड़ने का प्रयास करें।

(defun ensime-stackoverflow-connect (host port) 
    (interactive (list 
     (read-from-minibuffer "Host: " ensime-default-server-host) 
     (read-from-minibuffer "Port: " (format "%d" ensime-default-port) 
         nil t))) 
    (let ((c (ensime-connect host port)) 
    (config (ensime-config-load "/Users/whunmr/lab/scala/.ensime"))) 
    (ensime-set-config c config) 
    (setq ensime-buffer-connection c)) 
) 

कोड में config पथ को बदलने के लिए याद रखें: "/Users/whunmr/lab/scala/.ensime"

EDIT1: ".ensime" फ़ाइल एमएक्स ensime द्वारा बनाया गया था कमांड, अपने स्कैला प्रोजेक्ट फ़ोल्डर में। वास्तव में, कॉन्फ़िगरेशन को केवल हार्डकोड करके, आप फ़ाइल को अनदेखा कर सकते हैं।

(defun ensime-my-connection (host port) 
     (interactive (list 
      (read-from-minibuffer "Host: " ensime-default-server-host) 
      (read-from-minibuffer "Port: " (format "%d" ensime-default-port) 
          nil t))) 
     (let ((c (ensime-connect host port)) 
     (config '(:project-name "test" :project-package "com.whunmr" :sources ("./src") :compile-jars ("./" "../../apps/scala/lib/") :target "./bin" :root-dir "/Users/twer/lab/scala/"))) 
     (ensime-set-config c config) 
     (setq ensime-buffer-connection c)) 
    ) 
+0

मैं कॉन्फ़िगरेशन फ़ाइल/वहां क्या चला सकता हूं? – Reactormonk

+0

हाय @ टास, अपने प्रश्न के लिए EDIT1 देखें। – whunmr

+0

उदाहरण से कॉन्फ़िगरेशन को आंशिक रूप से पढ़ना संभव नहीं होगा ट्रम्प कनेक्शन? – Reactormonk

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