string list emacs elisp

string - Cómo convertir lista a cadena en Emacs Lisp



elisp (4)

¿Cómo puedo convertir una lista en cadena para que pueda llamar a insert o insert message con ella? Necesito mostrar c-offsets-alist pero tengo un Wrong type argument: char-or-string-p para insertar o un Wrong type argument: stringp para mensaje.


No estoy seguro de lo que está intentando lograr, pero el format convierte "cosas" en cadenas. Por ejemplo:

(format "%s" your-list)

Volverá una representación de su lista. message utiliza formato internamente, por lo que

(message "%s" your-list)

lo imprimirá


O

(prin1-to-string your-string)

Por fin algo especial

(princ your-string)


(format) insertará paréntesis en la cadena, por ejemplo:

ELISP> (format "%s" ''("foo" "bar")) "(foo bar)"

Por lo tanto, si necesita un análogo a Ruby / JavaScript- join() , hay (mapconcat) :

ELISP> (mapconcat ''identity ''("foo" "bar") " ") "foo bar"


M-x pp-eval-expression RET c-offsets-alist RET