auctex-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [AUCTeX-devel] Sharing value of a variable between all files of the


From: Matthew Leach
Subject: Re: [AUCTeX-devel] Sharing value of a variable between all files of the same document
Date: Wed, 20 Apr 2016 22:12:48 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux)

Mosè Giordano <address@hidden> writes:

> Hi Matt,

Hi Mosè,


[...]

> please find attached my proposal.  It's only a proof-of-concept to show
> how my idea works, it should then be extended to include other options
> (for example, `TeX-engine', `TeX-PDF-mode', `TeX-PDF-from-DVI',
> `ConTeXt-Mark-version', please suggest other relevant variables).

This looks good to me.  I have a few small comments below.

>
>
> Bye,
> Mosè
>
> diff --git a/tex.el b/tex.el
> index b85a72a..b3e9465 100644
> --- a/tex.el
> +++ b/tex.el
> @@ -2513,6 +2513,16 @@ Return nil otherwise."
>      (search-backward "\n\^L" (max (- (point-max) 3000) (point-min)) 'move)
>      (re-search-forward "^%+ *TeX-master:" nil t)))
>  
> +(defun TeX-add-document-variables (&rest var-val)
> +  "Set first element of SYM-VAL to the next one, and so on.
                           ^^^^^^^
                           Should this be VAR-VAL?

> 
> + +The variables are set if current file is not the master.  This is
> +used to store variables shared among the whole document into the
> +auto-saved file."  + (unless (equal TeX-master t) + (while var-val +
> (set (pop var-val) (pop var-val))))) + ;;; Style Paths
>  
>  (defcustom TeX-style-global (expand-file-name "style" TeX-data-directory)
> @@ -3988,22 +3998,29 @@ If TEX is a directory, generate style files for all 
> files in the directory."
>                           LaTeX-provided-class-options))
>           (pkg-opts (if (boundp 'LaTeX-provided-package-options)
>                         LaTeX-provided-package-options))
> -         (tex-cmd-opts TeX-command-extra-options)
>           (verb-envs (when (boundp 'LaTeX-verbatim-environments-local)
>                        LaTeX-verbatim-environments-local))
>           (verb-macros-delims (when (boundp 
> 'LaTeX-verbatim-macros-with-delims-local)
>                                 LaTeX-verbatim-macros-with-delims-local))
>           (verb-macros-braces (when (boundp 
> 'LaTeX-verbatim-macros-with-braces-local)
>                                 LaTeX-verbatim-macros-with-braces-local))
> -         (dialect TeX-style-hook-dialect))
> +         (dialect TeX-style-hook-dialect)
> +         (master (equal TeX-master t))
> +         tex-cmd-opts)
> +     (when master
> +       (setq tex-cmd-opts TeX-command-extra-options))
>       (TeX-unload-style style)
>       (with-current-buffer (generate-new-buffer file)
>         (erase-buffer)
>         (insert "(TeX-add-style-hook\n \""
>                 style "\"\n (lambda ()")
> -       (unless (string= tex-cmd-opts "")
> -         (insert "\n   (setq TeX-command-extra-options\n"
> -                 "         " (prin1-to-string tex-cmd-opts) ")"))
> +       (and
> +        ;; Save only if current file is the master.
> +        master
> +        (null (string= tex-cmd-opts ""))

If we are going to be extending this idea for other variables, maybe we
could have a macro that builds the TeX-command-extra-options form to be
written to the auto-save file?  Performing these checks for every
variable may become a little cumbersome.

HTH,
-- 
Matt



reply via email to

[Prev in Thread] Current Thread [Next in Thread]