From mboxrd@z Thu Jan 1 00:00:00 1970 From: Carsten Dominik Subject: [Accepted] Re: Problem when exporting to PDF to a different directory Date: Fri, 13 Aug 2010 22:44:29 +0200 (CEST) Message-ID: <20100813204429.4570A1AEB719@carsten-dominiks-macbook-pro.local> References: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from [140.186.70.92] (port=45664 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Okx6i-0003Gf-2Y for emacs-orgmode@gnu.org; Mon, 16 Aug 2010 06:40:01 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1Okx6X-000086-DJ for emacs-orgmode@gnu.org; Mon, 16 Aug 2010 06:39:55 -0400 Received: from u016822.science.uva.nl ([146.50.39.34]:52517 helo=carsten-dominiks-macbook-pro.local) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1Okx6X-00007c-2B for emacs-orgmode@gnu.org; Mon, 16 Aug 2010 06:39:45 -0400 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Patch 203 (http://patchwork.newartisans.com/patch/203/) is now "Accepted". Maintainer comment: No comment This relates to the following submission: http://mid.gmane.org/%3CAANLkTikA0%3DvUhyavQ7g12uJyQRJa%2BxJzE-m60zE95PT2%40mail.gmail.com%3E Here is the original message containing the patch: > Content-Type: text/plain; charset="utf-8" > MIME-Version: 1.0 > Content-Transfer-Encoding: 7bit > Subject: Re: [Orgmode] Problem when exporting to PDF to a different directory > Date: Sat, 07 Aug 2010 14:00:49 -0000 > From: Noorul Islam > X-Patchwork-Id: 203 > Message-Id: > To: Manuel Amador > Cc: emacs-orgmode@gnu.org > > On Wed, Aug 4, 2010 at 1:26 AM, Manuel Amador wrote: > > > Hi everybody, > > > > I am running into the following issue. > > > > I would like to export certain subtrees of an org file to a particular > > directory. I set the export property as follows: > > > > * Test 1 > > :PROPERTIES: > > :EXPORT_FILE_NAME: some_directory/some_name > > :END: > > > > > > When I try exporting the above subtree as a pdf (say for example, by > > running > > C-c C-e 1 d), the .tex file is created in the appropriate target directory, > > but > > the .pdf file is created in the current directory (while emacs mistakenly > > reports that the pdf was not created). Is there a way to get this to work > > correctly? > > > > > The following patch solves this problem. Actually html export has no issues > with this. > > * lisp/org-latex.el: > + Modify the custom variable org-latex-to-pdf-process to include > -output-directory option for > the command pdflatex. > + org-export-as-pdf() > Give some respect to EXPORT_FILE_NAME if it has path elements. > Modified some of the messages to include the file name. > > Thanks and Regards > Noorul > > > diff --git a/lisp/org-latex.el b/lisp/org-latex.el > index 056f1b3..2e42399 100644 > --- a/lisp/org-latex.el > +++ b/lisp/org-latex.el > @@ -451,12 +451,13 @@ allowed. The default we use here encompasses both." > :group 'org-export) > > (defcustom org-latex-to-pdf-process > - '("pdflatex -interaction nonstopmode %s" > - "pdflatex -interaction nonstopmode %s") > + '("pdflatex -interaction nonstopmode -output-directory %o %f" > + "pdflatex -interaction nonstopmode -output-directory %o %f") > "Commands to process a LaTeX file to a PDF file. > This is a list of strings, each of them will be given to the shell > -as a command. %s in the command will be replaced by the full file name, %b > -by the file base name (i.e. without extension). > +as a command. %f in the command will be replaced by the full file name, %b > +by the file base name (i.e. without extension) and %o by the base directory > +of the file. > The reason why this is a list is that it usually takes several runs of > pdflatex, maybe mixed with a call to bibtex. Org does not have a clever > mechanism to detect which of these commands have to be run to get to a stable > @@ -840,9 +841,10 @@ when PUB-DIR is set, use this as the publishing directory." > (save-excursion > (goto-char (point-min)) > (re-search-forward "\\\\bibliography{" nil t)))) > - cmd) > + cmd output-dir) > (with-current-buffer outbuf (erase-buffer)) > - (message "Processing LaTeX file...") > + (message (concat "Processing LaTeX file " file "...")) > + (setq output-dir (file-name-directory file)) > (if (and cmds (symbolp cmds)) > (funcall cmds (shell-quote-argument file)) > (while cmds > @@ -852,15 +854,20 @@ when PUB-DIR is set, use this as the publishing directory." > (save-match-data > (shell-quote-argument base)) > t t cmd))) > - (while (string-match "%s" cmd) > + (while (string-match "%f" cmd) > (setq cmd (replace-match > (save-match-data > (shell-quote-argument file)) > t t cmd))) > + (while (string-match "%o" cmd) > + (setq cmd (replace-match > + (save-match-data > + (shell-quote-argument output-dir)) > + t t cmd))) > (shell-command cmd outbuf outbuf))) > - (message "Processing LaTeX file...done") > + (message (concat "Processing LaTeX file " file "...done")) > (if (not (file-exists-p pdffile)) > - (error "PDF file was not produced") > + (error (concat "PDF file " pdffile " was not produced")) > (set-window-configuration wconfig) > (when org-export-pdf-remove-logfiles > (dolist (ext org-export-pdf-logfiles) >