- (let ((form (match-string 1 (riece-message-text message)))
- object string)
- (condition-case err
- (progn
- (setq object (eval (read form)))
- (setq string
- (cond
- ((stringp object) object)
- ((and (listp object)
- (not (eq object nil)))
- (let ((string (pp-to-string object)))
- (substring string 0 (1- (length string)))))
- ((numberp object)
- (number-to-string object))
- ((eq object nil) "")
- (t (pp-to-string object)))))
- (error
- (unless riece-eval-ignore-error
- (setq string (format "Error evaluating %s: %s" form err)))))