(defun asf-hack-slime-remotely (host)
(interactive "sHost: ")
(setq slime-translate-to-lisp-filename-function
`(lambda (file-name)
(if (string-match (concat "^/" ,host ":") file-name)
(subseq file-name (length (concat "/" ,host ":")))
file-name))
slime-translate-from-lisp-filename-function
`(lambda (file-name)
(let ((foo (concat "/" ,host ":" file-name)))
(message foo)
foo))))
(defun asf-hack-slime-locally ()
(interactive)
(setq slime-translate-to-lisp-filename-function 'identity
slime-translate-from-lisp-filename-function 'identity))(defun asf-hack-slime-remotely (host)
(interactive "sHost: ")
(setq slime-translate-to-lisp-filename-function
`(lambda (file-name)
(if (string-match (concat "^\\(/\\(scp:\\)?" ,host ":\\)") file-name)
(subseq file-name (length (match-string 1 file-name)))
file-name))
slime-translate-from-lisp-filename-function
`(lambda (file-name)
(concat "/" ,host ":" file-name))))
(defun asf-hack-slime-locally ()
(interactive)
(setq slime-translate-to-lisp-filename-function 'identity
slime-translate-from-lisp-filename-function 'identity))
(defmacro define-slime-connector (name port remote-host-name)
`(defun ,(intern (format "slime-%s" (symbol-name name))) ()
(interactive)
(slime-connect "127.0.0.1" ,port)
(asf-hack-slime-remotely ,remote-host-name)))
(define-slime-connector autobench-web 4006 "baker")
(define-slime-connector autobench 4007 "baker")
(define-slime-connector chavatar 4008 "baker")
(defun asf-hack-slime-remotely (host)
(interactive "sHost: ")
(setq slime-translate-to-lisp-filename-function
`(lambda (file-name)
(if (string-match (concat "^/" ,host ":") file-name)
(subseq file-name (length (concat "/" ,host ":")))
file-name))
slime-translate-from-lisp-filename-function
`(lambda (file-name)
(concat "/" ,host ":" file-name))))
(defun asf-hack-slime-locally ()
(interactive)
(setq slime-translate-to-lisp-filename-function 'identity
slime-translate-from-lisp-filename-function 'identity))