emacs-orgmode
[Top][All Lists]
Advanced

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

Re: [O] exporting org to docx


From: John Kitchin
Subject: Re: [O] exporting org to docx
Date: Tue, 27 Jun 2017 10:53:13 -0400
User-agent: mu4e 0.9.19; emacs 25.2.1

can you post a small org file that has this problem?

Doyley, Marvin M. writes:

> Thanks for point this out, which I have now removed, but  I still get an 
> error. This time I get
>
> pandoc: nil: openFile: does not exist (No such file or directory)
> helm-M-x: Wrong type argument: stringp, nil
>
> Thanks,
> M
> PS here is the back trace
> Debugger entered--Lisp error: (wrong-type-argument stringp nil)
>   delete-file(nil)
>   (let* ((bibfiles (mapcar (quote expand-file-name) 
> (org-ref-find-bibliography))) (temp-bib) (bibtex-entries) biboption csl 
> (current-file (buffer-file-name)) (basename (file-name-sans-extension 
> current-file)) (tex-file (concat basename ".tex")) (docx-file (concat 
> basename ".docx"))) (save-buffer) (if bibfiles (progn (setq bibtex-entries 
> (let* ((bibtex-files bibfiles) (keys (reverse ...)) 
> (bibtex-entry-kill-ring-max (length keys)) (bibtex-entry-kill-ring (quote 
> nil))) (let ((wconfig ...)) (unwind-protect (progn ...) 
> (set-window-configuration wconfig))) (mapconcat (quote identity) 
> bibtex-entry-kill-ring "\n\n")) temp-bib (make-temp-file "ox-word-" nil 
> ".bib") biboption (format " --bibliography=%s " temp-bib)) (let ((temp-file 
> temp-bib) (temp-buffer (get-buffer-create (generate-new-buffer-name " *temp 
> file*")))) (unwind-protect (prog1 (save-current-buffer (set-buffer 
> temp-buffer) (insert bibtex-entries)) (save-current-buffer (set-buffer 
> temp-buffer) (write-region nil nil temp-file nil 0))) (and (buffer-name 
> temp-buffer) (kill-buffer temp-buffer)))))) (setq csl (cdr (assoc 
> "PANDOC-CSL" (org-element-map (org-element-parse-buffer) (quote keyword) 
> (function (lambda (key) (cons ... ...))))))) (if csl (setq csl (format " 
> --csl=%s " csl)) (setq csl " ")) (org-latex-export-to-latex async subtreep 
> visible-only body-only options) (if (file-exists-p docx-file) (progn 
> (delete-file docx-file))) (shell-command (format "pandoc -s -S %s%s\"%s\" -o 
> \"%s\"" biboption csl tex-file docx-file)) (delete-file temp-bib) 
> (org-open-file docx-file (quote (16))))
>   ox-export-via-latex-pandoc-to-docx-and-open()
>   funcall-interactively(ox-export-via-latex-pandoc-to-docx-and-open)
>   call-interactively(ox-export-via-latex-pandoc-to-docx-and-open record nil)
>   command-execute(ox-export-via-latex-pandoc-to-docx-and-open record)
>   helm-M-x(nil #("ox-export-via-latex-pandoc-to-docx-and-open" 0 43 
> (match-part "ox-export-via-latex-pandoc-to-docx-and-open")))
>   funcall-interactively(helm-M-x nil 
> #("ox-export-via-latex-pandoc-to-docx-and-open" 0 43 (match-part 
> "ox-export-via-latex-pandoc-to-docx-and-open")))
>   call-interactively(helm-M-x nil nil)
>   command-execute(helm-M-x)
>
>
>
>
>> On Jun 24, 2017, at 1:07 PM, John Kitchin <address@hidden> wrote:
>> 
>> what is this function: my-other-delete-trailing-blank-lines
>> 
>> it appears it is not defined. but is getting called in a before-save-hook.
>> 
>> Doyley, Marvin M. writes:
>> 
>>> Hi there,
>>> 
>>> I am play with John’s ox-word.el function, which us pandoc to convert org 
>>> via latex to docx. However, when I try to use it, I get  the following error
>>> 
>>> helm-M-x: Wrong type argument: stringp, nil
>>> 
>>> 
>>> Any suggestion on how to resolve this issue.
>>> 
>>> Cheers,
>>> M
>>> 
>>> Ps Here is the backtrace
>>> 
>>> Debugger entered--Lisp error: (void-function 
>>> my-other-delete-trailing-blank-lines)
>>>  my-other-delete-trailing-blank-lines()
>>>  run-hooks(before-save-hook)
>>>  basic-save-buffer(nil)
>>>  save-buffer()
>>>  write-file("./test.tex.tex")
>>>  (let ((coding-system-for-write encoding)) (write-file file))
>>>  (progn (insert output) (let ((coding-system-for-write encoding)) 
>>> (write-file file)))
>>>  (unwind-protect (progn (insert output) (let ((coding-system-for-write 
>>> encoding)) (write-file file))) (and (buffer-name temp-buffer) (kill-buffer 
>>> temp-buffer)))
>>>  (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn 
>>> (insert output) (let ((coding-system-for-write encoding)) (write-file 
>>> file))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))
>>>  (let ((temp-buffer (generate-new-buffer " *temp*"))) (save-current-buffer 
>>> (set-buffer temp-buffer) (unwind-protect (progn (insert output) (let 
>>> ((coding-system-for-write encoding)) (write-file file))) (and (buffer-name 
>>> temp-buffer) (kill-buffer temp-buffer)))))
>>>  (let ((output (org-export-as backend subtreep visible-only body-only 
>>> ext-plist))) (let ((temp-buffer (generate-new-buffer " *temp*"))) 
>>> (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn 
>>> (insert output) (let ((coding-system-for-write encoding)) (write-file 
>>> file))) (and (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if 
>>> (and (org-export--copy-to-kill-ring-p) (org-string-nw-p output)) (progn 
>>> (org-kill-new output))) (or (and (functionp post-process) (funcall 
>>> post-process file)) file))
>>>  (if async (let ((with-temp-message "Initializing asynchronous export 
>>> process") (current-message)) (unwind-protect (progn (if with-temp-message 
>>> (progn (setq current-message (current-message)) (message "%s" 
>>> with-temp-message))) (let ((--copy-fun (org-export--generate-copy-script 
>>> ...)) (--temp-file (make-temp-file "org-export-process")) (--coding 
>>> buffer-file-coding-system)) (let ((temp-file --temp-file) (temp-buffer 
>>> ...)) (unwind-protect (prog1 ... ...) (and ... ...))) (let* 
>>> ((process-connection-type nil) (--proc-buffer ...) (--process ...)) 
>>> (org-export-add-to-stack (get-buffer --proc-buffer) nil --process) (let 
>>> (...) (set-process-sentinel --process ...))))) (and with-temp-message (if 
>>> current-message (message "%s" current-message) (message nil))))) (let 
>>> ((output (org-export-as backend subtreep visible-only body-only 
>>> ext-plist))) (let ((temp-buffer (generate-new-buffer " *temp*"))) 
>>> (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn 
>>> (insert output) (let (...) (write-file file))) (and (buffer-name 
>>> temp-buffer) (kill-buffer temp-buffer))))) (if (and 
>>> (org-export--copy-to-kill-ring-p) (org-string-nw-p output)) (progn 
>>> (org-kill-new output))) (or (and (functionp post-process) (funcall 
>>> post-process file)) file)))
>>>  (let ((ext-plist (org-combine-plists (list (quote :output-file) file) 
>>> ext-plist)) (encoding (or org-export-coding-system 
>>> buffer-file-coding-system))) (if async (let ((with-temp-message 
>>> "Initializing asynchronous export process") (current-message)) 
>>> (unwind-protect (progn (if with-temp-message (progn (setq current-message 
>>> ...) (message "%s" with-temp-message))) (let ((--copy-fun ...) (--temp-file 
>>> ...) (--coding buffer-file-coding-system)) (let (... ...) (unwind-protect 
>>> ... ...)) (let* (... ... ...) (org-export-add-to-stack ... nil --process) 
>>> (let ... ...)))) (and with-temp-message (if current-message (message "%s" 
>>> current-message) (message nil))))) (let ((output (org-export-as backend 
>>> subtreep visible-only body-only ext-plist))) (let ((temp-buffer 
>>> (generate-new-buffer " *temp*"))) (save-current-buffer (set-buffer 
>>> temp-buffer) (unwind-protect (progn (insert output) (let ... ...)) (and 
>>> (buffer-name temp-buffer) (kill-buffer temp-buffer))))) (if (and 
>>> (org-export--copy-to-kill-ring-p) (org-string-nw-p output)) (progn 
>>> (org-kill-new output))) (or (and (functionp post-process) (funcall 
>>> post-process file)) file))))
>>>  (if (not (file-writable-p file)) (error "Output file not writable") (let 
>>> ((ext-plist (org-combine-plists (list (quote :output-file) file) 
>>> ext-plist)) (encoding (or org-export-coding-system 
>>> buffer-file-coding-system))) (if async (let ((with-temp-message 
>>> "Initializing asynchronous export process") (current-message)) 
>>> (unwind-protect (progn (if with-temp-message (progn ... ...)) (let (... ... 
>>> ...) (let ... ...) (let* ... ... ...))) (and with-temp-message (if 
>>> current-message (message "%s" current-message) (message nil))))) (let 
>>> ((output (org-export-as backend subtreep visible-only body-only 
>>> ext-plist))) (let ((temp-buffer (generate-new-buffer " *temp*"))) 
>>> (save-current-buffer (set-buffer temp-buffer) (unwind-protect (progn ... 
>>> ...) (and ... ...)))) (if (and (org-export--copy-to-kill-ring-p) 
>>> (org-string-nw-p output)) (progn (org-kill-new output))) (or (and 
>>> (functionp post-process) (funcall post-process file)) file)))))
>>>  org-export-to-file(latex "./test.tex.tex" nil nil nil nil nil)
>>>  (let ((outfile (org-export-output-file-name ".tex" subtreep))) 
>>> (org-export-to-file (quote latex) outfile async subtreep visible-only 
>>> body-only ext-plist))
>>>  org-latex-export-to-latex(nil nil nil nil nil)
>>>  (let* ((bibfiles (mapcar (quote expand-file-name) 
>>> (org-ref-find-bibliography))) (temp-bib) (bibtex-entries) biboption csl 
>>> (current-file (buffer-file-name)) (basename (file-name-sans-extension 
>>> current-file)) (tex-file (concat basename ".tex")) (docx-file (concat 
>>> basename ".docx"))) (save-buffer) (if bibfiles (progn (setq bibtex-entries 
>>> (let* ((bibtex-files bibfiles) (keys (reverse ...)) 
>>> (bibtex-entry-kill-ring-max (length keys)) (bibtex-entry-kill-ring (quote 
>>> nil))) (let ((wconfig ...)) (unwind-protect (progn ...) 
>>> (set-window-configuration wconfig))) (mapconcat (quote identity) 
>>> bibtex-entry-kill-ring "\n\n")) temp-bib (make-temp-file "ox-word-" nil 
>>> ".bib") biboption (format " --bibliography=%s " temp-bib)) (let ((temp-file 
>>> temp-bib) (temp-buffer (get-buffer-create (generate-new-buffer-name " *temp 
>>> file*")))) (unwind-protect (prog1 (save-current-buffer (set-buffer 
>>> temp-buffer) (insert bibtex-entries)) (save-current-buffer (set-buffer 
>>> temp-buffer) (write-region nil nil temp-file nil 0))) (and (buffer-name 
>>> temp-buffer) (kill-buffer temp-buffer)))))) (setq csl (cdr (assoc 
>>> "PANDOC-CSL" (org-element-map (org-element-parse-buffer) (quote keyword) 
>>> (function (lambda (key) (cons ... ...))))))) (if csl (setq csl (format " 
>>> --csl=%s " csl)) (setq csl " ")) (org-latex-export-to-latex async subtreep 
>>> visible-only body-only options) (if (file-exists-p docx-file) (progn 
>>> (delete-file docx-file))) (shell-command (format "pandoc -s -S %s%s\"%s\" 
>>> -o \"%s\"" biboption csl tex-file docx-file)) (delete-file temp-bib) 
>>> (org-open-file docx-file (quote (16))))
>>>  ox-export-via-latex-pandoc-to-docx-and-open()
>>>  funcall-interactively(ox-export-via-latex-pandoc-to-docx-and-open)
>>>  call-interactively(ox-export-via-latex-pandoc-to-docx-and-open record nil)
>>>  command-execute(ox-export-via-latex-pandoc-to-docx-and-open record)
>>>  helm-M-x(nil #("ox-export-via-latex-pandoc-to-docx-and-open" 0 43 
>>> (match-part "ox-export-via-latex-pandoc-to-docx-and-open")))
>>>  funcall-interactively(helm-M-x nil 
>>> #("ox-export-via-latex-pandoc-to-docx-and-open" 0 43 (match-part 
>>> "ox-export-via-latex-pandoc-to-docx-and-open")))
>>>  call-interactively(helm-M-x nil nil)
>>>  command-execute(helm-M-x)
>> 
>> 
>> --
>> Professor John Kitchin
>> Doherty Hall A207F
>> Department of Chemical Engineering
>> Carnegie Mellon University
>> Pittsburgh, PA 15213
>> 412-268-7803
>> @johnkitchin
>> https://urldefense.proofpoint.com/v2/url?u=http-3A__kitchingroup.cheme.cmu.edu&d=DwIFaQ&c=kbmfwr1Yojg42sGEpaQh5ofMHBeTl9EI2eaqQZhHbOU&r=s3_3riAscdqtNAzgOuwYB9g0dZVGcp8BNCy_RylYdxU&m=fpDGKjoBGMLn-IR_Ppzt26Yc5eU8GW50J-DqGll1blc&s=jqihIKTRKkfrF9V2SuWfN6RqVs6ghQUh-wXvKohuNi8&e=


-- 
Professor John Kitchin
Doherty Hall A207F
Department of Chemical Engineering
Carnegie Mellon University
Pittsburgh, PA 15213
412-268-7803
@johnkitchin
http://kitchingroup.cheme.cmu.edu



reply via email to

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