Lisp asdf从命令行安装库

Lisp asdf从命令行安装库,lisp,common-lisp,asdf,Lisp,Common Lisp,Asdf,来自Perl的背景,我不得不说我更喜欢cpan Foo::Bar而不是必须启动sbcl、(require:asdf install)以及最后的(asdf install:install:Foo Bar)。有什么比这更方便的吗?有clbuild: http://common-lisp.net/project/clbuild/ 但我将此添加到我的.bashrc中: function asdf_install { sbcl --eval "(asdf:operate 'asdf:load-o

来自Perl的背景,我不得不说我更喜欢
cpan Foo::Bar
而不是必须启动sbcl、
(require:asdf install)
以及最后的
(asdf install:install:Foo Bar)
。有什么比这更方便的吗?

有clbuild:

http://common-lisp.net/project/clbuild/
但我将此添加到我的.bashrc中:

function asdf_install {
    sbcl --eval "(asdf:operate 'asdf:load-op :asdf-install)" --eval "(asdf-install:install :$1)" --eval "(quit)"
}

function asdf_oos {
    rlwrap sbcl --eval "(asdf:operate 'asdf:$2 :$1)"
}

公共Lisp可以是冗长的;然而,大多数(所有?)实现都支持一个Lisp启动文件,该文件定义/加载您想要个性化开发环境的任何内容

另外,请检查。

您可以检查-它可以快速方便地安装,然后下载、安装和加载系统:

(ql:quickload :cxml)
要转换为Perl,这类似于(shell)
cpanm-cxml
和(在Perl内部)
使用cxml
一体机

你也可以搜索系统;例如,要列出所有:

(ql:system-apropos "xml")
通常情况下,您会运行一个lisp进程并直接向其提供这些命令,但如果您更喜欢从shell执行安装等操作,则可以定义别名(如答案中所示):


“verbose”是什么意思?我的意思是:与Unix命令行或我对perl所知甚少的东西相比,常见的Lisp程序员倾向于使用长名称;对一些新来者来说,添加包前缀和名称看起来很长。它使代码更易于阅读,但键入一次就不那么方便了。键入一次就可以享受很长时间:)oos=在系统上操作。jrockway显示了
asdf:operate'asdf:load op
的快捷方式,但您可能需要执行其他操作(例如
asdf:test op
)。据报道,asdf-install未维护;考虑QuasLISP;看见
function ql_install {
    sbcl --eval "(ql:quickload :$1)" --eval "(quit)"
}

function ql_apropos {
    sbcl --eval "(ql:system-apropos \"$1\")" --eval "(quit)"
}