Browse Source

fix two bugs related to calling tangle with a prefix argument

* lisp/ob-tangle.el (org-babel-tangle): Don't prompt for a file name
  if :tangle is specified.
* lisp/ob.el (org-babel-expand-noweb-references): Widen buffer when
  expanding noweb references.
Eric Schulte 9 years ago
parent
commit
efe039db93
2 changed files with 8 additions and 4 deletions
  1. 5 3
      lisp/ob-tangle.el
  2. 3 1
      lisp/ob.el

+ 5 - 3
lisp/ob-tangle.el

@@ -185,9 +185,11 @@ exported source code blocks by language."
   (when only-this-block
     (unless (org-babel-where-is-src-block-head)
       (error "Point is not currently inside of a code block"))
-    (unless target-file
-      (setq target-file
-	    (read-from-minibuffer "Tangle to: " (buffer-file-name))))
+    (save-match-data
+      (unless (or (cdr (assoc :tangle (nth 2 (org-babel-get-src-block-info))))
+		  target-file)
+	(setq target-file
+	      (read-from-minibuffer "Tangle to: " (buffer-file-name)))))
     (narrow-to-region (match-beginning 0) (match-end 0)))
   (save-excursion
     (let ((block-counter 0)

+ 3 - 1
lisp/ob.el

@@ -2169,6 +2169,8 @@ block but are passed literally to the \"example-block\"."
           (setq index (point))
           (nb-add
 	   (with-current-buffer parent-buffer
+	     (save-restriction
+	       (widen)
 	     (mapconcat ;; interpose PREFIX between every line
 	      #'identity
 	      (split-string
@@ -2228,7 +2230,7 @@ block but are passed literally to the \"example-block\"."
 				   "could not be resolved (see "
 				   "`org-babel-noweb-error-langs')"))
 		    "")))
-	       "[\n\r]") (concat "\n" prefix)))))
+	       "[\n\r]") (concat "\n" prefix))))))
         (nb-add (buffer-substring index (point-max)))))
     new-body))