> Thanks for your dissertation stuff. Looks good to me! Did you send
> your professor the AUCTeX patch? And did (s)he accept it? ;-)
Ah shucks.. I must have had the wrong file marked in dired.
Or was it an elaborate scheme to get you to check my homework? :D
Attached is the correct homework.
Best regards,
-- Al
diff --git a/tex.el b/tex.el
index d964940..0dd3c5d 100644
--- a/tex.el
+++ b/tex.el
@@ -2520,13 +2520,14 @@ assumed to be the same as the directory of `TeX-master'."
(string :tag "Custom" "build")))
(make-variable-buffer-local 'TeX-output-dir)
-(defun TeX--master-output-dir (master-dir relative-to-master)
+(defun TeX--master-output-dir (master-dir relative-to-master &optional ensure)
"Return the directory path where output files should be placed.
If `TeX-output-dir' is nil, then return nil.
MASTER-DIR is the directory path where the master file is
located. If RELATIVE-TO-MASTER is non-nil, make the returned path
-relative to the directory in MASTER-DIR."
+relative to the directory in MASTER-DIR. If ENSURE is non-nil,
+the output directory is created if it does not exist."
(when TeX-output-dir
(let* ((master-dir (expand-file-name (or master-dir "")))
(out-dir (file-name-as-directory
@@ -2536,7 +2537,7 @@ relative to the directory in MASTER-DIR."
TeX-output-dir
master-dir))))))
;; Make sure the directory exists
- (unless (file-exists-p out-dir)
+ (unless (or (not ensure) (file-exists-p out-dir))
(make-directory (file-name-as-directory out-dir) t))
(if relative-to-master
(file-relative-name out-dir master-dir)
@@ -2546,7 +2547,7 @@ relative to the directory in MASTER-DIR."
"Format the output directory as a command argument.
ARGNAME is prepended to the quoted output directory. If
`TeX-output-dir' is nil then return an empty string."
- (let ((out-dir (TeX--master-output-dir (TeX-master-directory) t)))
+ (let ((out-dir (TeX--master-output-dir (TeX-master-directory) t t)))
(if out-dir
(concat argname "\"" out-dir "\"")
"")))