有人可以帮我调试http-post-simple.el
一下最新版本的 Emacs Trunk: http ://www.emacswiki.org/emacs/http-post-simple.el 这是使用 Org-Mode Toodledo Sync 所需的文件. 打开 Emacs 时,报错信息是:
(lambda (field) ...) quoted with ' rather than with #'
错误来自的摘录http-post-simple.el
如下:
(defun http-post-encode-fields (fields &optional charset)
"Encode FIELDS using `http-post-encode-string', where
FIELDS is an alist of \(
\(field-name-as-symbol . \"field value as string\"\) |
\(field-name \"value1\" \"value2\" ...\)
\)*
CHARSET defaults to 'utf-8"
(let ((charset (or charset 'utf-8)))
(mapconcat #'identity
(mapcar '(lambda (field)
(concat (symbol-name (car field))
"="
(http-post-encode-string (cdr field) charset)))
(mapcan '(lambda (field)
(if (atom (cdr field)) (list field)
;; unpack the list
(mapcar '(lambda (value)
`(,(car field) . ,value))
(cdr field))))
fields))
"&")))
(defun http-post-encode-multipart-data (fields files charset)
"Return FIELDS and FILES encoded for use as the data for a multipart HTTP POST request"
(http-post-join-lines
(mapcar '(lambda (field)
(http-post-bound-field
(format "Content-Disposition: form-data; name=%S" (symbol-name (car field)))
""
(cdr field)))
fields)
(mapcan '(lambda (file)
(destructuring-bind (fieldname filename mime-type data) file
(http-post-bound-field
(format "Content-Disposition: form-data; name=%S; filename=%S" fieldname filename)
(format "Content-type: %s" (http-post-content-type mime-type charset))
""
data)))
files)
(format "--%s--" (http-post-multipart-boundary))))