3

在远程 SWANK 上的 SLIME repl 中,键入:

(打开“~/

然后按 TAB

这会在我的本地文件系统上创建一个带有自动完成功能的缓冲区。有人知道如何让它显示远程系统上的文件吗?

目前我的 .emacs 看起来像这样:

(load (expand-file-name "~/quicklisp/slime-helper.el"))
(setq inferior-lisp-program "sbcl")
(require 'slime)
(slime-setup '(slime-fancy slime-tramp slime-asdf))
(slime-require :swank-listener-hooks)
(push (slime-create-filename-translator :machine-instance "ws1"
                    :remote-host "ws1"
                    :username "myusername")
      slime-filename-translations)  

我已经在谷歌上搜索并尝试了一些随机的东西,非常感谢任何帮助!

4

1 回答 1

1

您需要提供该函数的新实现slime-maybe-complete-as-filename。它的默认实现调用 Emacs 函数comint-replace-by-expanded-filename

这个问题最通用的解决方案是向远程 Lisp 查询文件系统数据。尽管编写一个简单地通过TRAMP连接将完成重定向到远程系统的函数可能会更容易。

于 2013-09-07T17:37:59.740 回答