如何将字符串列表转换为elisp中的符号
问题描述:
高级别目标是使用org-mode处理程序包配置,使用以字符串列表形式传入的格式良好的列表。 package-installed-p
和package-install
都采用符号。如何将字符串列表转换为elisp中的符号
即:与安装公司
(if (package-installed-p 'company)
(print "yes")
(print "no"))
将输出 “是”
从字符串(if (package-installed-p (intern "company"))
(print "yes")
(print "no"))
仍然输出 “是”
然后
好像我应该能够
(mapcar 'intern company)
获取从列表中的字符串定义的符号列表。 相反,我得到错误:'错误类型参数:stringp,(“company”)'
答
问题是该字符串被包装在一个容器中。
(mapcar (lambda (x) (intern (car x))) packages)
似乎有伎俩。