ob: not including export-variable headers in cache sha1
* lisp/ob.el (org-babel-sha1-hash): Improving code layout and removing export-variable headers in cache sha1.
This commit is contained in:
parent
dacf18e80a
commit
6ddad0a91a
57
lisp/ob.el
57
lisp/ob.el
|
@ -749,31 +749,38 @@ the current subtree."
|
|||
(setf (nth 2 info)
|
||||
(sort (copy-sequence (nth 2 info))
|
||||
(lambda (a b) (string< (car a) (car b)))))
|
||||
((lambda (hash)
|
||||
(when (org-called-interactively-p 'interactive) (message hash))
|
||||
hash)
|
||||
(sha1 (format "%s-%s"
|
||||
(mapconcat
|
||||
#'identity
|
||||
(delq nil
|
||||
(mapcar
|
||||
(lambda (arg)
|
||||
(let ((v (cdr arg)))
|
||||
(when (and v (not (and (sequencep v)
|
||||
(not (consp v))
|
||||
(= (length v) 0))))
|
||||
((lambda (el) (format "%S" el))
|
||||
(cond
|
||||
((and (listp v) ; lists are sorted
|
||||
(member (car arg) '(:result-params)))
|
||||
(sort (copy-sequence v) #'string<))
|
||||
((and (stringp v) ; strings are sorted
|
||||
(member (car arg) '(:results :exports)))
|
||||
(mapconcat #'identity (sort (split-string v)
|
||||
#'string<) " "))
|
||||
(t v)))))) ; atomic are left untouched
|
||||
(nth 2 info))) ":")
|
||||
(nth 1 info))))))
|
||||
(labels ((rm (lst)
|
||||
(dolist (p '("replace" "silent" "append" "prepend"))
|
||||
(setq lst (remove p lst)))
|
||||
lst)
|
||||
(norm (arg)
|
||||
(let ((v (if (listp (cdr arg))
|
||||
(copy-seq (cdr arg))
|
||||
(cdr arg))))
|
||||
(when (and v (not (and (sequencep v)
|
||||
(not (consp v))
|
||||
(= (length v) 0))))
|
||||
(cond
|
||||
((and (listp v) ; lists are sorted
|
||||
(member (car arg) '(:result-params)))
|
||||
(sort (rm v) #'string<))
|
||||
((and (stringp v) ; strings are sorted
|
||||
(member (car arg) '(:results :exports)))
|
||||
(mapconcat #'identity (sort (rm (split-string v))
|
||||
#'string<) " "))
|
||||
(t v))))))
|
||||
((lambda (hash)
|
||||
(when (org-called-interactively-p 'interactive) (message hash)) hash)
|
||||
(let ((it (format "%s-%s"
|
||||
(mapconcat
|
||||
#'identity
|
||||
(delq nil (mapcar (lambda (arg)
|
||||
(let ((normalized (norm arg)))
|
||||
(when normalized
|
||||
(format "%S" normalized))))
|
||||
(nth 2 info))) ":")
|
||||
(nth 1 info))))
|
||||
(sha1 it))))))
|
||||
|
||||
(defun org-babel-result-hash (&optional info)
|
||||
"Return the in-buffer hash associated with INFO."
|
||||
|
|
Loading…
Reference in New Issue