emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] unfortunate "feature interaction" of org-export and emacs-latex-


From: Marcin Borkowski
Subject: Re: [O] unfortunate "feature interaction" of org-export and emacs-latex-auctex mode
Date: Mon, 09 Nov 2015 22:08:17 +0100
User-agent: mu4e 0.9.15; emacs 25.0.50.1

On 2015-11-09, at 21:49, Nick Dokos <address@hidden> wrote:

> Marcin Borkowski <address@hidden> writes:
>
>> On 2015-11-09, at 19:54, Martin Steffen <address@hidden> wrote:
>>
>>> Hi,
>>>
>>> Perhaps it's not really a "fault" of org (nor of auctex), but both
>>> things interact unfortunate. 
>>>
>>> The reason is: when I export org to LaTeX, and I visit the latex file
>>> afterwards, I want that auctex/emacs is instructed about some facts. Thus I
>>> like to have some lines such as
>>>
>>> %%% Local Variables: 
>>> %%% mode: latex
>>> %%% TeX-master: t
>>> %%% End: 
>>>
>>> at the end of the latex file. Org allows that, in that I add the
>>> "LATEX-only" export at the end of the org-file
>>>
>>> #+BEGIN_LATEX
>>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>>> %%% Local Variables: 
>>> %%% mode: latex
>>> %%% TeX-master: t
>>> %%% End: 
>>> #+END_LATEX
>>>
>>>
>>> Doing that produces the desired lines at the end of the generated latex, and
>>> if I visit the latex file, emacs/auctex is instructed according to my 
>>> wishes.
>>>
>>>
>>> Now the problem: If I refresh the /org/ file, emacs/org thinks that actually
>>> the file is a latex file (due to the line "mode: latex") and switches from
>>> org-mode to latex-mode.
>>>
>>>
>>> It's a minor thing, obviously, but I just wonder if there's an easy 
>>> workaround.
>>
>> Note: this is a terrible hack, so use it your own risk, only if there's
>> no sane alternative etc.
>>
>> #+BEGIN_COMMENT
>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>> %%% Local Variables: 
>> %%% mode: org
>> %%% End: 
>> #+END_COMMENT
>> #+BEGIN_LATEX
>> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
>> %%% Local Variables: 
>> %%% mode: latex
>> %%% TeX-master: t
>> %%% End: 
>> #+END_LATEX
>>
>
> Is there some rule about what happens when emacs sees two local variable
> blocks in a file? It seems that the first one is enforced and the second
> ignored: the above works in the given order of the two blocks, but not
> if the order is reversed.

I guess this is just implementation detail: the last 3000 characters of
the last page are scanned, and if a file local variables list is found,
it is applied, no matter what happens /after/ it.

> In any case, another solution along the same lines is as follows:
> local variables are only recognized in the last "page" of the file so
> just add a Control-L at the end of the org file:
>
> --8<---------------cut here---------------start------------->8---
> ...
> #+BEGIN_COMMENT
> Insert a control-L here to prevent emacs from interpreting the local
> variables block above - local variables blocks are recognized only on
> the last "page" of the file.
> 
> #+END_COMMENT
> --8<---------------cut here---------------end--------------->8---

Still not pretty, but /much/ better than mine!

Best,

-- 
Marcin Borkowski
http://octd.wmi.amu.edu.pl/en/Marcin_Borkowski
Faculty of Mathematics and Computer Science
Adam Mickiewicz University



reply via email to

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