Hi again, I've integrated this into the current feature branch. It was not too painful ;-)
Best, /PA On Wed, 2 Jul 2025 at 18:03, Pedro Andres Aranda Gutierrez <paag...@gmail.com> wrote: > > Hi Ihor, > > just to check. > > What you mean is: > > diff --git a/lisp/ox-latex.el b/lisp/ox-latex.el > index c6fb6b06b..f1c9d090f 100644 > --- a/lisp/ox-latex.el > +++ b/lisp/ox-latex.el > @@ -171,6 +171,7 @@ > (:latex-toc-command nil nil org-latex-toc-command) > (:latex-compiler "LATEX_COMPILER" nil org-latex-compiler) > (:latex-multi-lang "LATEX_MULTI_LANG" nil org-latex-multi-lang-driver) > + (:languages "LANGUAGE" nil (list org-export-default-language) split) > ;; Redefine regular options. > (:date "DATE" nil "\\today" parse))) > > diff --git a/lisp/ox.el b/lisp/ox.el > index d95e031e8..36716dfc7 100644 > --- a/lisp/ox.el > +++ b/lisp/ox.el > @@ -3099,6 +3099,10 @@ still inferior to file-local settings." > (append (org-export-get-all-options backend) > org-export-options-alist)))) > tree modified-tick) > + ;; Get :languages and insert it into :language > + (when-let* ((languages (plist-get info :languages)) > + (lang (nth 0 languages))) > + (setq info (plist-put info :language lang))) > ;; Run first hook with current backend's name as argument. > (run-hook-with-args 'org-export-before-processing-hook > (org-export-backend-name backend)) > > And then, of course, use :languages in ox-latex.el > > Right? > > Best, /PA > > On Tue, 1 Jul 2025 at 07:28, Pedro Andres Aranda Gutierrez > <paag...@gmail.com> wrote: > > > > On Mon, 30 Jun 2025 at 19:34, Ihor Radchenko <yanta...@posteo.net> wrote: > > > > > > Pedro Andres Aranda Gutierrez <paag...@gmail.com> writes: > > > > > > >> >> Also, since we now allow multiple languages to be listed in > > > >> >> #+LANGUAGE, > > > >> >> we may need to update the manual when talking about #+LANGUAGE > > > >> >> keyword > > > >> >> in other places as well; not just in latex export section. > > > >> You seemingly did not address this comment. > > > > > > > > I've gone through the code once again and I think we need to start > > > > looking at places where #+LANGUAGE is used outside the LaTeX exporter. > > > > There we will need to filter out and keep the first language if we > > > > find a comma separated list of languages... > > > > > > > > WDYT? > > > > > > 1. It will be better to use space instead of comma. Then, we will be > > > able to use "split" directive in `org-export-options-alist' > > > 2. We will probably need to do some backwards compatibility refactoring, > > > making sure that no extra package using :language is broken. > > > Preliminary, I am thinking of the following approach: > > > (i) We introduce a new :languages export option > > > (:languages "LANGUAGE" nil (list org-export-default-language) > > > split) > > If I get you right, :languages will be an array, right? > > > (ii) We introduce pre-processing into `org-export--annotate-info' > > > extracting the first language from :languages property into > > > :language. That way, everything relying on :language value being > > > a single string, will remain operational. Newer code can then > > > use :languages directly. > > > > > > WDYT? > > My concern is the impact it might have for other backends... > > > > Let's go through a use case: > > > > Say you have an Org document you want to export to PDF and HTML from Org. > > Your Web page needs to be in Italian, and you want to have ancient > > Greek text on it. > > To produce the PDF, you intend to use =polyglossia=. > > > > What would be the approach? > > > > Thx, /PA > > > > > > -- > > > Ihor Radchenko // yantar92, > > > Org mode maintainer, > > > Learn more about Org mode at <https://orgmode.org/>. > > > Support Org development at <https://liberapay.com/org-mode>, > > > or support my work at <https://liberapay.com/yantar92> > > > > > > > > -- > > Fragen sind nicht da, um beantwortet zu werden, > > Fragen sind da um gestellt zu werden > > Georg Kreisler > > > > Sagen's Paradeiser, write BE! > > Year 1 of the New Koprocracy > > > > -- > Fragen sind nicht da, um beantwortet zu werden, > Fragen sind da um gestellt zu werden > Georg Kreisler > > Sagen's Paradeiser, write BE! > Year 1 of the New Koprocracy -- Fragen sind nicht da, um beantwortet zu werden, Fragen sind da um gestellt zu werden Georg Kreisler Sagen's Paradeiser, write BE! Year 1 of the New Koprocracy