2012-10-10 67 views
2

我想在插入緩衝一個Lisp列表的長度如下內字符串的長度:的elisp:打印插入

(insert "The list has " (length my-list) " elements") 

然而這就產生了一個奇怪的不可打印的字符,而不是數量元素,所以結果就像

The list has ^A elements 

我必須轉換返回值嗎?該列表不是空的。

回答

4

您需要format函數。

(insert (format "The list has %d elements" (length my-list))) 

另外,在這種情況下,您可以將整數轉換爲字符串:

(insert "The list has " (number-to-string (length my-list)) " elements") 

控制-A是ASCII碼1。很顯然你的名單有一個元素,當你嘗試。