Merge branch 'master' into next

This commit is contained in:
Nicolas Goaziou 2018-11-28 00:28:53 +01:00
commit 499a590034
2 changed files with 24 additions and 22 deletions

View File

@ -4005,10 +4005,12 @@ A cell is of the format
If SNIPPET-FLAG is non-nil, the package also needs to be included If SNIPPET-FLAG is non-nil, the package also needs to be included
when compiling LaTeX snippets into images for inclusion into when compiling LaTeX snippets into images for inclusion into
non-LaTeX output. COMPILERS is a list of compilers that should non-LaTeX output.
include the package, see `org-latex-compiler'. If the document
compiler is not in the list, and the list is non-nil, the package COMPILERS is a list of compilers that should include the package,
will not be inserted in the final document. see `org-latex-compiler'. If the document compiler is not in the
list, and the list is non-nil, the package will not be inserted
in the final document.
A string will be inserted as-is in the header of the document." A string will be inserted as-is in the header of the document."
:group 'org-latex :group 'org-latex
@ -4042,6 +4044,11 @@ SNIPPET-FLAG, when non-nil, indicates that this package is also
needed when turning LaTeX snippets into images for inclusion into needed when turning LaTeX snippets into images for inclusion into
non-LaTeX output. non-LaTeX output.
COMPILERS is a list of compilers that should include the package,
see `org-latex-compiler'. If the document compiler is not in the
list, and the list is non-nil, the package will not be inserted
in the final document.
A string will be inserted as-is in the header of the document. A string will be inserted as-is in the header of the document.
Make sure that you only list packages here which: Make sure that you only list packages here which:

View File

@ -1440,26 +1440,21 @@ Return the new header."
(defun org-latex--remove-packages (pkg-alist info) (defun org-latex--remove-packages (pkg-alist info)
"Remove packages based on the current LaTeX compiler. "Remove packages based on the current LaTeX compiler.
If the fourth argument of an element is set in pkg-alist, and it PKG-ALIST is a list of packages, as in `org-latex-packages-alist'
is not a member of the LaTeX compiler of the document, the packages and `org-latex-default-packages-alist'. If the fourth argument
is removed. See also `org-latex-compiler'. of a package is neither nil nor a member of the LaTeX compiler
associated to the document, the package is removed.
Return modified pkg-alist." Return new list of packages."
(let ((compiler (or (plist-get info :latex-compiler) ""))) (let ((compiler (or (plist-get info :latex-compiler) "")))
(if (member-ignore-case compiler org-latex-compilers) (if (not (member-ignore-case compiler org-latex-compilers)) pkg-alist
(delq nil (cl-remove-if-not
(mapcar (lambda (package)
(lambda (pkg) (pcase package
(unless (and (`(,_ ,_ ,_ nil) t)
(listp pkg) (`(,_ ,_ ,_ ,compilers) (member-ignore-case compiler compilers))
(let ((third (nth 3 pkg))) (_ t)))
(and third pkg-alist))))
(not (member-ignore-case
compiler
(if (listp third) third (list third)))))))
pkg))
pkg-alist))
pkg-alist)))
(defun org-latex--find-verb-separator (s) (defun org-latex--find-verb-separator (s)
"Return a character not used in string S. "Return a character not used in string S.