我正在为一堂课学习LISP。我在Ubuntu中有一个基本的工作流程设置,在VIM中有我的LISP文件,在终端中有一个交互式LISP提示,我用它来编写代码。有没有办法在每次键入命令时让LISP加载特定文件?不得不经常输入(load 'initial-code.cl)
会有点累人(是的,即使我使用终端的历史记录)。
答案 0 :(得分:1)
答案 1 :(得分:1)
总是可以尝试:
(let (fn)
(defun l (&optional filename)
(if filename
(setf fn filename))
(load fn)))
像这样工作:
[2]> (l "x.lisp")
;; Loading file x.lisp ...
;; Loaded file x.lisp
T
[3]> (l)
;; Loading file x.lisp ...
;; Loaded file x.lisp
T
[4]>
非常简单。
您还可以执行以下操作:
(defun go ()
(load "project.lisp")
(yourfunc 'your 'parameters))
然后你只需键入(go)并重新加载文件并调用主入口点。
甚至将它们结合起来:
(defun gogo (&rest args)
(l) ;; call (l "file.lisp") first to initialize it
(apply #'yourfunc args))
然后您可以轻松更改参数
(gogo 1 2)
(gogo 2 4)
雅知道,这是口齿不清。不喜欢什么,改变它。
如果有更多时间,您可以编写一个可以动态构建这些包的简单包装器。但是你明白了。
答案 2 :(得分:1)
你可以尝试slimv,这就像vim的粘液。