> I was able to test this on my local machine and it seems to work as weThank you for the patch. Here are a few comments.
> discussed.
>
> If there are any other changes to the patch you'd like to see, please let
> me know.
I think we can drop the "-p" suffix since this is no longer a predicate.
> - (:latex-hyperref-p nil "texht" org-latex-with-hyperref t)
> + (:latex-hyperref-p nil "texht" (if org-latex-hyperref-template t) t)
So the property can be named :latex-hyperref.
Also we can replace "texht" with nil since it doesn't make much sense to
specify a full template from the OPTIONS line.
Eventually, the default value should be `org-latex-hyperref-template'.
This boils down to the following line:
(:latex-hyperref nil nil org-latex-hyperref-template t)
The first line of the docstring should contain complete sentences only.
> -(defcustom org-latex-with-hyperref t
> - "Toggle insertion of \\hypersetup{...} in the preamble."
> +
> +(defcustom org-latex-hyperref-template "\\hypersetup{\n
> pdfkeywords={%k},\n pdfsubject={%d},\n pdfcreator={%c}}\n"
> + "The value of \\hyperrefsetup{...} in the preamble. String is a
> format-spec which accepts keywords for %k (pdfkeywords), %d
> (pdfdescription) and %c (pdfcreator). Set to nil for no \\hyperrefsetup."
> :group 'org-export-latex
> - :type 'boolean)
> + :type 'string)
I would say something along the lines:
"Template for hyperref package options.
Value is a format string, which can contain the following placeholders:
%k for KEYWORDS line
%d for DESCRIPTION line
%c for CREATOR line
An empty string disables the setup."
Since you specify :type as 'string, it is wrong to expect a nil value in
the variable. Note that nil is not an absolute necessity. We can allow
to disable the template with an empty string instead.
You are not using the :latex-hyperref property. This should be:
> + (format-spec org-latex-hyperref-template
> + (format-spec-make
> + ?k (or (plist-get info :keywords) "")
> + ?d (or (plist-get info :description)"")
> + ?c (if (plist-get info :with-creator)
> + (plist-get info :creator)
> + ""))))
(format-spec (plist-get info :latex-hyperref)
...)
Regards,
--
Nicolas Goaziou