每次我开始工作的时候,我都会打开Emacs,M-x cd到工作目录,M-x启动Slime,然后在Slime的repl中运行run (ql:quickload 'myproject) (或者,load-system myproject),然后输入 +p myproject 在repl中切换当前包。最后,在repl中运行一个(start-server)获取我的Web服务器启动。
我希望这一切都能成为单个Emacs按键或命令。很尴尬,因为这都是LISP,但我并不能完全理解Emacs和Slime之间的相互作用。但是作为一个程序员,我觉得应该自动化所有的繁琐过程,并且我预测还会增加几步。
我想棘手的部分是发送slime命令,然后等待quicklisp完成,然后再发送下一个命令。
任何提示都将不胜感激!
编辑:感谢Svante给出的C-c ~提示,这对我来说是新闻。
我希望这一切都能成为单个Emacs按键或命令。很尴尬,因为这都是LISP,但我并不能完全理解Emacs和Slime之间的相互作用。但是作为一个程序员,我觉得应该自动化所有的繁琐过程,并且我预测还会增加几步。
我想棘手的部分是发送slime命令,然后等待quicklisp完成,然后再发送下一个命令。
任何提示都将不胜感激!
编辑:感谢Svante给出的C-c ~提示,这对我来说是新闻。
ql:quickload
来加载我的项目,而是使用,
open-system
(我想是来自slime-asdf)。使用helm或类似的工具进行类型提示非常有用。然后从项目文件缓冲区中使用C-c ~
切换工作目录和包。你也可以将slime放在F键上,例如。我目前已经决定不为单个项目编写整个序列(我通常会同时处理多个项目),因为对我来说速度已经足够快了。 - Svante