Function: TeX-master-file-ask

TeX-master-file-ask is an interactive and byte-compiled function defined in tex.el.

Signature

(TeX-master-file-ask)

Documentation

Ask for master file, set TeX-master and add local variables.

Key Bindings

Source Code

;; Defined in ~/.emacs.d/elpa/auctex-14.1.2/tex.el
(defun TeX-master-file-ask ()
  "Ask for master file, set `TeX-master' and add local variables."
  (interactive)
  (if (TeX-local-master-p)
      (error "Master file already set")
    (let* ((default (TeX-dwim-master))
           (name (or (and (eq 'dwim TeX-master) default)
                     (condition-case nil
                         (read-file-name (format-prompt "Master file"
                                                        (or default "this file"))
                                         nil default)
                       (quit "<quit>")))))
      (cond ((string= name "<quit>")
             (setq TeX-master t))
            ((string= name default)
             (setq TeX-master default)
             (TeX-add-local-master))
            ((or
              ;; Default `read-file-name' proposes and buffer visits a file.
              (string= (expand-file-name name) (TeX-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 ""))
             (setq TeX-master t)
             (TeX-add-local-master))
            (t
             (setq TeX-master (TeX-strip-extension (file-relative-name name)
                                                   (list TeX-default-extension)
                                                   'path))
             (TeX-add-local-master))))))