* Franz Haeuslschmid (2005-06-10) writes:

> occasionally, that is, when I remove all sorts of generated files
> from my document project's directories, preview asks me to enter
> the path to a master file.

Thanks for the report.

My stab at it would be this:

Index: tex.el
===================================================================
RCS file: /cvsroot/auctex/auctex/tex.el,v
retrieving revision 5.526
diff -u -r5.526 tex.el
--- tex.el	10 Jun 2005 09:45:09 -0000	5.526
+++ tex.el	10 Jun 2005 17:25:20 -0000
@@ -1233,6 +1233,8 @@
 	(widen)
 	(goto-char (point-min))
 	(cond
+	 (TeX-transient-master
+	  (setq TeX-master TeX-transient-master))
 	 ;; Special value 't means it is own master (a free file).
 	 ((equal TeX-master my-name)
 	  (setq TeX-master t))
@@ -1240,28 +1242,27 @@
 	 ;; For files shared between many documents.
 	 ((and (eq 'shared TeX-master) ask)
 	  (setq TeX-master
-		(or TeX-transient-master
-		    (let* ((default (TeX-dwim-master))
-			   (name (read-file-name
-				  (format "Master file: (default %s) "
-					  (or default "this file"))
-				  nil default)))
-		      (cond ((string= name default)
-			     default)
-			    ((or
-			      ;; Default `read-file-name' proposes and
-			      ;; buffer visits a file.
-			      (string= (expand-file-name name)
-				       (buffer-file-name))
-			      ;; Default of `read-file-name' and
-			      ;; buffer does not visit a file.
-			      (string= name default-directory)
-			      ;; User typed <RET> in an empty minibuffer.
-			      (string= name ""))
-			     t)
-			    (t
-			     (TeX-strip-extension
-			      name (list (TeX-default-extension)) 'path)))))))
+		(let* ((default (TeX-dwim-master))
+		       (name (read-file-name
+			      (format "Master file: (default %s) "
+				      (or default "this file"))
+			      nil default)))
+		  (cond ((string= name default)
+			 default)
+			((or
+			  ;; Default `read-file-name' proposes and
+			  ;; buffer visits a file.
+			  (string= (expand-file-name name)
+				   (buffer-file-name))
+			  ;; Default of `read-file-name' and
+			  ;; buffer does not visit a file.
+			  (string= name default-directory)
+			  ;; User typed <RET> in an empty minibuffer.
+			  (string= name ""))
+			 t)
+			(t
+			 (TeX-strip-extension
+			  name (list (TeX-default-extension)) 'path))))))
 
 	 ;; We might already know the name.
 	 ((or (eq TeX-master t) (stringp TeX-master)) TeX-master)
@@ -1286,7 +1287,7 @@
 		  my-name)))
 
       (if (TeX-match-extension name)
-      ;; If it already have an extension...
+	  ;; If it already has an extension...
 	  (if (equal extension TeX-default-extension)
 	      ;; Use instead of the default extension
 	      (setq extension nil)
Index: tex-buf.el
===================================================================
RCS file: /cvsroot/auctex/auctex/tex-buf.el,v
retrieving revision 1.232
diff -u -r1.232 tex-buf.el
--- tex-buf.el	6 Jun 2005 16:06:40 -0000	1.232
+++ tex-buf.el	10 Jun 2005 17:25:20 -0000
@@ -1171,7 +1177,8 @@
 	 (font-lock-auto-fontify nil)
 	 (font-lock-mode-enable-list nil)
 	 ;; And insert them into the FILE buffer.
-	 (file-buffer (find-file-noselect file))
+	 (file-buffer (let ((TeX-transient-master t))
+			(find-file-noselect file)))
 	 ;; But remember original content.
 	 original-content
 
But I have to check that this does not have horrible side effects.

In case this is the way to go, instances of (setq TeX-master t) in
tex-buf.el should probably be replaced by this technique as well.
Looking at them I don't think they are working anyway because the
master file question is triggered via `find-file-hooks', so the the
`setq' comes too late.

-- 
Ralf
_______________________________________________
bug-auctex mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-auctex

Reply via email to