* Problem when exporting to PDF to a different directory @ 2010-08-03 19:56 Manuel Amador 2010-08-07 9:00 ` [PATCH] " Noorul Islam 2010-08-08 12:26 ` David Maus 0 siblings, 2 replies; 4+ messages in thread From: Manuel Amador @ 2010-08-03 19:56 UTC (permalink / raw) To: emacs-orgmode 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? Thanks, -- Manuel ^ permalink raw reply [flat|nested] 4+ messages in thread
* [PATCH] Re: Problem when exporting to PDF to a different directory 2010-08-03 19:56 Problem when exporting to PDF to a different directory Manuel Amador @ 2010-08-07 9:00 ` Noorul Islam 2010-08-13 20:44 ` [Accepted] " Carsten Dominik 2010-08-08 12:26 ` David Maus 1 sibling, 1 reply; 4+ messages in thread From: Noorul Islam @ 2010-08-07 9:00 UTC (permalink / raw) To: Manuel Amador; +Cc: emacs-orgmode [-- Attachment #1.1: Type: text/plain, Size: 1103 bytes --] On Wed, Aug 4, 2010 at 1:26 AM, Manuel Amador <amador.manuel@gmail.com>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 [-- Attachment #1.2: Type: text/html, Size: 1591 bytes --] [-- Attachment #2: org-latex.txt --] [-- Type: text/plain, Size: 2554 bytes --] 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) [-- Attachment #3: Type: text/plain, Size: 201 bytes --] _______________________________________________ Emacs-orgmode mailing list Please use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Accepted] Re: Problem when exporting to PDF to a different directory 2010-08-07 9:00 ` [PATCH] " Noorul Islam @ 2010-08-13 20:44 ` Carsten Dominik 0 siblings, 0 replies; 4+ messages in thread From: Carsten Dominik @ 2010-08-13 20:44 UTC (permalink / raw) To: emacs-orgmode 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 <noorul@noorul.com> > X-Patchwork-Id: 203 > Message-Id: <AANLkTikA0=vUhyavQ7g12uJyQRJa+xJzE-m60zE95PT2@mail.gmail.com> > To: Manuel Amador <amador.manuel@gmail.com> > Cc: emacs-orgmode@gnu.org > > On Wed, Aug 4, 2010 at 1:26 AM, Manuel Amador <amador.manuel@gmail.com>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) > ^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: Problem when exporting to PDF to a different directory 2010-08-03 19:56 Problem when exporting to PDF to a different directory Manuel Amador 2010-08-07 9:00 ` [PATCH] " Noorul Islam @ 2010-08-08 12:26 ` David Maus 1 sibling, 0 replies; 4+ messages in thread From: David Maus @ 2010-08-08 12:26 UTC (permalink / raw) To: Manuel Amador; +Cc: emacs-orgmode [-- Attachment #1.1: Type: text/plain, Size: 1075 bytes --] 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? This is a glitch in Org mode and I'm on it to provide a patch. The problem is, that pdflatex creates the output file in current directory unless we pass the -output-directory switch[1]. I think using this option is better than temporarily switching the working directory. HTH, -- David [1] Which is available here with pdfTeX 3.1415926-1.40.10-2.2 (TeX Live 2009/Debian -- OpenPGP... 0x99ADB83B5A4478E6 Jabber.... dmjena@jabber.org Email..... dmaus@ictsoc.de [-- Attachment #1.2: Type: application/pgp-signature, Size: 230 bytes --] [-- Attachment #2: Type: text/plain, Size: 201 bytes --] _______________________________________________ Emacs-orgmode mailing list Please use `Reply All' to send replies to the list. Emacs-orgmode@gnu.org http://lists.gnu.org/mailman/listinfo/emacs-orgmode ^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2010-08-16 10:40 UTC | newest] Thread overview: 4+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-08-03 19:56 Problem when exporting to PDF to a different directory Manuel Amador 2010-08-07 9:00 ` [PATCH] " Noorul Islam 2010-08-13 20:44 ` [Accepted] " Carsten Dominik 2010-08-08 12:26 ` David Maus
Code repositories for project(s) associated with this public inbox https://git.savannah.gnu.org/cgit/emacs/org-mode.git This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).