Browse Source

Merge branch 'master' of orgmode.org:org-mode

Bastien Guerry 12 years ago
parent
commit
ad5085517f
3 changed files with 39 additions and 40 deletions
  1. 2 2
      contrib/lisp/org-contacts.el
  2. 35 36
      lisp/ob-core.el
  3. 2 2
      lisp/ox.el

+ 2 - 2
contrib/lisp/org-contacts.el

@@ -160,7 +160,7 @@ This overrides `org-email-link-description-format' if set."
   "Return list of Org files to use for contact management."
   "Return list of Org files to use for contact management."
   (or org-contacts-files (org-agenda-files t 'ifmode)))
   (or org-contacts-files (org-agenda-files t 'ifmode)))
 
 
-(defun org-contacts-db-need-update? ()
+(defun org-contacts-db-need-update-p ()
   "Determine whether `org-contacts-db' needs to be refreshed."
   "Determine whether `org-contacts-db' needs to be refreshed."
   (or (null org-contacts-last-update)
   (or (null org-contacts-last-update)
       (some (lambda (file)
       (some (lambda (file)
@@ -174,7 +174,7 @@ This overrides `org-email-link-description-format' if set."
 	 (contacts-matcher
 	 (contacts-matcher
 	  (cdr (org-make-tags-matcher org-contacts-matcher)))
 	  (cdr (org-make-tags-matcher org-contacts-matcher)))
 	 markers result)
 	 markers result)
-    (when (org-contacts-db-need-update?)
+    (when (org-contacts-db-need-update-p)
       (message "Update Org Contacts Database")
       (message "Update Org Contacts Database")
       (dolist (file (org-contacts-files))
       (dolist (file (org-contacts-files))
 	(org-check-agenda-file file)
 	(org-check-agenda-file file)

+ 35 - 36
lisp/ob-core.el

@@ -521,23 +521,21 @@ Optionally supply a value for PARAMS which will be merged with
 the header arguments specified at the front of the source code
 the header arguments specified at the front of the source code
 block."
 block."
   (interactive)
   (interactive)
-  (let* ((info (or info (org-babel-get-src-block-info)))
-	 (params (if params
-		     (org-babel-process-params
-		      (org-babel-merge-params (nth 2 info) params))
-		   (nth 2 info)))
-	 (cache-p (and (not arg) (cdr (assoc :cache params))
-		       (string= "yes" (cdr (assoc :cache params)))))
-	 (new-hash (when cache-p (org-babel-sha1-hash info)))
-	 (old-hash (when cache-p (org-babel-current-result-hash)))
-	 (cache-current-p (and (not arg) new-hash (equal new-hash old-hash))))
-    (when (or cache-current-p
-	      (org-babel-confirm-evaluate
-	       (let ((i info))
-		 (setf (nth 2 i) (org-babel-merge-params (nth 2 info) params))
-		 i)))
+  (let ((info (or info (org-babel-get-src-block-info))))
+    (when (org-babel-confirm-evaluate
+	   (let ((i info))
+	     (setf (nth 2 i) (org-babel-merge-params (nth 2 info) params))
+	     i))
       (let* ((lang (nth 0 info))
       (let* ((lang (nth 0 info))
+	     (params (if params
+			 (org-babel-process-params
+			  (org-babel-merge-params (nth 2 info) params))
+		       (nth 2 info)))
+	     (cache? (and (not arg) (cdr (assoc :cache params))
+			  (string= "yes" (cdr (assoc :cache params)))))
 	     (result-params (cdr (assoc :result-params params)))
 	     (result-params (cdr (assoc :result-params params)))
+	     (new-hash (when cache? (org-babel-sha1-hash info)))
+	     (old-hash (when cache? (org-babel-current-result-hash)))
 	     (body (setf (nth 1 info)
 	     (body (setf (nth 1 info)
 			 (if (org-babel-noweb-p params :eval)
 			 (if (org-babel-noweb-p params :eval)
 			     (org-babel-expand-noweb-references info)
 			     (org-babel-expand-noweb-references info)
@@ -564,7 +562,7 @@ block."
 			  (funcall lang-check (symbol-name
 			  (funcall lang-check (symbol-name
 					       (cdr (assoc lang org-src-lang-modes))))
 					       (cdr (assoc lang org-src-lang-modes))))
 			  (error "No org-babel-execute function for %s!" lang))))
 			  (error "No org-babel-execute function for %s!" lang))))
-	      (if cache-current-p
+	      (if (and (not arg) new-hash (equal new-hash old-hash))
 		  (save-excursion ;; return cached result
 		  (save-excursion ;; return cached result
 		    (goto-char (org-babel-where-is-src-block-result nil info))
 		    (goto-char (org-babel-where-is-src-block-result nil info))
 		    (end-of-line 1) (forward-char 1)
 		    (end-of-line 1) (forward-char 1)
@@ -578,26 +576,27 @@ block."
 		    (progn
 		    (progn
 		      (funcall cmd body params)
 		      (funcall cmd body params)
 		      (message "result silenced"))
 		      (message "result silenced"))
-		  (setq result
-			((lambda (result)
-			   (if (and (eq (cdr (assoc :result-type params)) 'value)
-				    (or (member "vector" result-params)
-					(member "table" result-params))
-				    (not (listp result)))
-			       (list (list result)) result))
-			 (funcall cmd body params)))
-		  ;; if non-empty result and :file then write to :file
-		  (when (cdr (assoc :file params))
-		    (when result
-		      (with-temp-file (cdr (assoc :file params))
-			(insert
-			 (org-babel-format-result
-			  result (cdr (assoc :sep (nth 2 info)))))))
-		    (setq result (cdr (assoc :file params))))
-		  (org-babel-insert-result
-		   result result-params info new-hash indent lang)
-		  (run-hooks 'org-babel-after-execute-hook)
-		  result)))
+		(setq result
+		      ((lambda (result)
+			 (if (and (eq (cdr (assoc :result-type params)) 'value)
+				  (or (member "vector" result-params)
+				      (member "table" result-params))
+				  (not (listp result)))
+			     (list (list result)) result))
+		       (funcall cmd body params)))
+		;; if non-empty result and :file then write to :file
+		(when (cdr (assoc :file params))
+		  (when result
+		    (with-temp-file (cdr (assoc :file params))
+		      (insert
+		       (org-babel-format-result
+			result (cdr (assoc :sep (nth 2 info)))))))
+		  (setq result (cdr (assoc :file params))))
+		(org-babel-insert-result
+		 result result-params info new-hash indent lang)
+		(run-hooks 'org-babel-after-execute-hook)
+		result
+		)))
 	  (setq call-process-region 'org-babel-call-process-region-original))))))
 	  (setq call-process-region 'org-babel-call-process-region-original))))))
 
 
 (defun org-babel-expand-body:generic (body params &optional var-lines)
 (defun org-babel-expand-body:generic (body params &optional var-lines)

+ 2 - 2
lisp/ox.el

@@ -1784,9 +1784,9 @@ OPTIONS is a plist holding export options."
       (mapc
       (mapc
        (lambda (blob)
        (lambda (blob)
 	 (when (and (eq (org-element-type blob) 'headline)
 	 (when (and (eq (org-element-type blob) 'headline)
+		    (not (org-element-property :footnote-section-p blob))
 		    (not (memq blob (plist-get options :ignore-list))))
 		    (not (memq blob (plist-get options :ignore-list))))
-	   (setq min-level
-		 (min (org-element-property :level blob) min-level)))
+	   (setq min-level (min (org-element-property :level blob) min-level)))
 	 (when (= min-level 1) (throw 'exit 1)))
 	 (when (= min-level 1) (throw 'exit 1)))
        (org-element-contents data))
        (org-element-contents data))
       ;; If no headline was found, for the sake of consistency, set
       ;; If no headline was found, for the sake of consistency, set