Jav*_*pps 5 emacs common-lisp slime
每次我开始工作时,我都会启动Emacs,Mx cd到一个工作目录,Mx slime启动Slime,然后在slime repl中运行(ql:quickload'myproject),(或者,加载系统myproject)然后, + p myproject来切换repl中的当前包.最后,我在repl中调用一个(start-server)来启动我的Web服务器.
我希望这一切只是一个Emacs击键或命令.令人尴尬的是,我不得不问这个,因为它都是口齿不清,但我无法弄清楚Emacs和Slime之间的相互作用.然而作为一名程序员,我觉得我应该自动化所有繁琐的过程 - 我预见到会有更多的步骤被添加到此.
我想棘手的部分是发送slime命令,然后在发送下一个命令之前等待quicklisp完成.
任何指针将不胜感激!
编辑:感谢Svante的Cc~提示,这对我来说是新闻
在 Emacs 方面,您可以将键绑定到命令,而不是slime使用附加参数进行调用:
(defun my-lisp ()
(interactive)
(slime (concat "sbcl --load " <path-to-your-lisp-script>)))
Run Code Online (Sandbox Code Playgroud)
在你的 Lisp 脚本中,例如:
(ql:quickload :my-system)
(in-package :my-package)
(start-server)
Run Code Online (Sandbox Code Playgroud)