Re: [O] Bug: Modifying org-latex-pdf-process doesn't modify the async export behaviour

2018-04-07 Thread Rasmus
Leo Vivier  writes:

> Hello,
>
> Thank you for pointing me in the right direction. I've created another
> init file just for async-export, and not only have I got it to work,
> but it's also quite a lot faster than it used to be.
>
> All that remains now is to find a way to re-write my function. My
> knowledge of elisp if fairly limited, and I don't see how to
> communicate with the background process other than by writing the
> value of my toggle-variable to a file. I guess I could also make a
> modularise async-init.el and control which module is loaded from the
> main init.el.

Would it be possible to use latexmk or rubber or one of the other
"intelligent" LaTeX compilers?  That /should/ automatically make the
compilation as short as possible.

Rasmus

-- 
I almost cut my hair, it happened just the other day




Re: [O] Bug: Modifying org-latex-pdf-process doesn't modify the async export behaviour

2018-04-07 Thread Neil Jerram
Leo Vivier  writes:

> Hello,
>
> Thank you for pointing me in the right direction. I've created another 
> init file just for async-export, and not only have I got it to work, but 
> it's also quite a lot faster than it used to be.
>
> All that remains now is to find a way to re-write my function. My 
> knowledge of elisp if fairly limited, and I don't see how to communicate 
> with the background process other than by writing the value of my 
> toggle-variable to a file.

Hi Leo,

In general, one would communicate with a subprocess through its input
and output, and to do that in elisp please see (elisp) Input to
Processes.

Neil



Re: [O] Bug: Modifying org-latex-pdf-process doesn't modify the async export behaviour

2018-04-07 Thread Leo Vivier

Hello,

Thank you for pointing me in the right direction. I've created another 
init file just for async-export, and not only have I got it to work, but 
it's also quite a lot faster than it used to be.


All that remains now is to find a way to re-write my function. My 
knowledge of elisp if fairly limited, and I don't see how to communicate 
with the background process other than by writing the value of my 
toggle-variable to a file. I guess I could also make a modularise 
async-init.el and control which module is loaded from the main init.el.


At any rate, thank you for your prompt reply.

Best,

On 07/04/18 09:59, Nicolas Goaziou wrote:

Hello,

Leo Vivier  writes:


I've encountered an issue trying to write a function to toggle between
two org-latex-pdf-process states (short & long). The function works as
intended when using synchronous export (the PDF is created with the
appropriate number of steps), but it doesn't work with asynchronous
export (org-latex-pdf-process isn't grabbed past the first run).


[...]


I've tried appending (org-reload) to my function, but it didn't work.
I've also tried modifying org-latex-pdf-process on a fresh emacs
session prior to any async export, and I can confirm that it grabs the
latest state of org-latex-pdf-process. I'd surmise that async export
has a process running in the background, but I don't know how to force
it to reload.


The background process doesn't use whatever configuration is loaded in
current Emacs. Instead it loads a configuration file. See
`org-export-async-init-file'.

You may also use local variables in your document, or switch async
configuration files.

Regards,



--
Leo Vivier
English Studies & General Linguistics
Master Student, English Department
Rennes 2



Re: [O] Bug: Modifying org-latex-pdf-process doesn't modify the async export behaviour

2018-04-07 Thread Nicolas Goaziou
Hello,

Leo Vivier  writes:

> I've encountered an issue trying to write a function to toggle between
> two org-latex-pdf-process states (short & long). The function works as
> intended when using synchronous export (the PDF is created with the
> appropriate number of steps), but it doesn't work with asynchronous
> export (org-latex-pdf-process isn't grabbed past the first run).

[...]

> I've tried appending (org-reload) to my function, but it didn't work.
> I've also tried modifying org-latex-pdf-process on a fresh emacs
> session prior to any async export, and I can confirm that it grabs the
> latest state of org-latex-pdf-process. I'd surmise that async export
> has a process running in the background, but I don't know how to force
> it to reload.

The background process doesn't use whatever configuration is loaded in
current Emacs. Instead it loads a configuration file. See
`org-export-async-init-file'.

You may also use local variables in your document, or switch async
configuration files.

Regards,

-- 
Nicolas Goaziou



[O] Bug: Modifying org-latex-pdf-process doesn't modify the async export behaviour

2018-04-06 Thread Leo Vivier

Hi,

I've encountered an issue trying to write a function to toggle between 
two org-latex-pdf-process states (short & long). The function works as 
intended when using synchronous export (the PDF is created with the 
appropriate number of steps), but it doesn't work with asynchronous 
export (org-latex-pdf-process isn't grabbed past the first run).


Here's my function:
# --
(defvar zaeph/org-latex-pdf-process-mode)
(defun zaeph/toggle-org-latex-pdf-process ()
  "Toggle the number of steps in the xelatex PDF process."
  (interactive)
  (if (or (not (bound-and-true-p zaeph/org-latex-pdf-process-mode))
  (string= zaeph/org-latex-pdf-process-mode "short"))
  (progn (setq org-latex-pdf-process '("xelatex -shell-escape\
-interaction 
nonstopmode\
-output-directory 
%o %f"

   "biber %b"
   "xelatex -shell-escape\
-interaction 
nonstopmode\
-output-directory 
%o %f"

   "xelatex -shell-escape\
-interaction 
nonstopmode\
-output-directory 
%o %f")

   zaeph/org-latex-pdf-process-mode 'long)
 (message "XeLaTeX process mode: Long"))
(progn (setq org-latex-pdf-process '("xelatex -shell-escape\
  -interaction nonstopmode\
  -output-directory %o %f")
 zaeph/org-latex-pdf-process-mode 'short)
   (message "XeLaTeX process mode: Short"
(zaeph/toggle-org-latex-pdf-process)
# --

I've tried appending (org-reload) to my function, but it didn't work.
I've also tried modifying org-latex-pdf-process on a fresh emacs session 
prior to any async export, and I can confirm that it grabs the latest 
state of org-latex-pdf-process. I'd surmise that async export has a 
process running in the background, but I don't know how to force it to 
reload.


Would you have any idea?

Thanks.

Best,
--
Leo Vivier
English Studies & General Linguistics
Master Student, English Department
Rennes 2