Hi,
is it possible to export an org file from the command line, so that a
currently running Emacs instance is not disturbed? I want to export the
attached org file and run the included source blocks, so I have an
activity report in the end. I use the shell script pasted below, but
there are two problems:
- my Emacs instance is blocked during the execution of the shell
scripts contained in the file
- the script globally sets org-confirm-babel-evaluate to nil for my
Emacs instance
The second problem could possibly be solved with a local file variable.
But the first problem remains. If I use emacs instead of emacsclient, it
complains about a running Emacs instance.
#!/bin/sh
emacsclient -c \
--eval "(progn
(find-file \"macports.org\"))
(setq org-confirm-babel-evaluate nil)
(org-export-as-html 3)
(kill-buffer)
(delete-frame))"
I'm using Org-Mode 7.7.
Cheers,
Viktor
#+TITLE: MacPorts Update Report
* Helper functions
:noexport:
** Set up =$PATH= environment
Set up =$PATH=:
#+begin_src sh :session port-update :results silent
PATH=$PATH:/opt/local/bin
#+end_src
** Table Header for the list of outdated ports
#+begin_src sh :session port-update :results silent
print_outdated_header() {
echo \|Port\|Installed\|Available\|
echo "|--|"
}
#+end_src
** Format each row of =port outdated= as table entry
#+begin_src sh :session port-update :results silent
format_port_outdated() {
awk '{print "|" $1 "|" $2 "|" $4 "|"}'
}
#+end_src
* Outdated ports
The following ports are outdated:
#+begin_src sh :session port-update :results output raw :exports results
print_outdated_header
port -q outdated | format_port_outdated
#+end_src
The following outdated ports are requested:
#+begin_src sh :session port-update :results output raw :exports results
print_outdated_header
port -q outdated and requested | format_port_outdated
#+end_src
* Update log
#+begin_src sh :session port-update :exports results :results verbatim
for i in 1 2 3 4 5 6 7 8 9 0; do echo "."; done
#+end_src