我有一个需要使用emacs lisp格式化的字符串列表。这是我想到的唯一方法:

(setq slist '("is there" "any" "way" "directed iteration"))
(format "%s _%s_ %s to do %S in elisp?"
        (elt slist 0)
        (elt slist 1)
        (elt slist 2)
        (elt slist 3)
        (elt slist 4))

给我我想要的。
is there _any_ way to do "directed iteration" in elisp?

必须有一种更优雅的方法,但是经过深思熟虑,我没有看到它。我对emacs lisp非常陌生,可能会遗漏一些明显的东西。

最佳答案

使用apply:

(apply 'format "%s _%s_ %s to do %S in elisp?" slist)
apply函数将一个函数(或符号)作为其第一个参数,然后是多个单独的参数,最后是一个参数列表。

关于lisp - 如何格式化字符串列表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13041979/

10-13 09:20