如何连接到远程主机上的ensime服务器?我的上网本有点慢。我复制了数据,并使用流浪汉远程编辑文件。我运行bin/server
创建服务器和ssh转发以能够连接到它。我使用ensime-connect
连接到本地主机上的端口。远程服务器上的ensime服务器使用Got connection, creating handler...
回答,仅此而已。 Ensime在emacs状态行中处于[ENSIME: wtf]
模式。我该如何解决?
最佳答案
问题是ensime无法找到连接的“配置”(通过ensime-connect进行)。
然后以下行将引发错误:
(if (and loose (ensime-file-in-directory-p file project-root))
因为project-root为nil。
通过将连接设置为ensime-buffer-connection,可以解决此问题。
尝试在您的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))
)
记得在代码中更改配置路径:“/Users/whunmr/lab/scala/.ensime”
编辑1:
“.ensime”文件是由M-x ensime命令在您的scala项目文件夹中创建的。
实际上,只需对配置进行硬编码,就可以忽略该文件。
(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))
)
关于scala - 将emacs连接到远程ensime服务器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13435687/