Re: [O] Tangled Latex code gives error

2015-04-28 Thread e.fraga
On Monday, 27 Apr 2015 at 07:58, Lawrence Bottorff wrote:

[...]

 will result in both the * Introduction blurb as well as the stuff
 between
 the tatex structural elements being exported. With latex babel I can
 tangle and get only what I want. This is handy if I want to throw
 around a
 lot of chatter and extraneous stuff that ultimately I won't want in my
 final document. We might call this annotations a la orgmode. But,
 yes,
 then I don't get the built-in orgmode latex support that comes with a
 regular latex export. Please advise if I'm wrong on this
 understanding.

No, your understanding is spot on.  What you can do is have sections in
your org file which do not get exported, using either the :noexport: tag
or by commenting out individual headlines (C-c ;).  However, this is not
quite what you have illustrated in your email.

-- 
: Eric S Fraga (0xFFFCF67D), Emacs 24.4.1, Org release_8.3beta-790-gb719c1.dirty



Re: [O] Tangled Latex code gives error

2015-04-27 Thread Eric S Fraga
On Sunday, 26 Apr 2015 at 19:20, Lawrence Bottorff wrote:
 I'm following the Latex howto of org-mode babel. Here's the snippet from
 the howto I've got in a separate .org file (see bottom of howto page):

[...]

 My real confusion starts when I try to tangle the babel code blocks. The
 C-c C-v t command produces two separate files just fine, a .tex and .el,
 but then if I try to Run Latex on the .tex file just by itself it gives an
 error. Here's what the org-mode tangle produces:

Why do you wish to tangle?  The LaTeX will definitely not work
standalone as it is not complete.  You can export your document to LaTeX
(C-c C-e l l) which is probably what you want?
-- 
: Eric S Fraga (0xFFFCF67D), Emacs 25.0.50.1, Org release_8.3beta-1062-gce4e64



Re: [O] Tangled Latex code gives error

2015-04-27 Thread Andreas Leha
Hi Lawrence,

Lawrence Bottorff borg...@gmail.com writes:
 I'm following the Latex howto of org-mode babel. Here's the snippet
 from the howto I've got in a separate .org file (see bottom of howto
 page):

 #+LATEX_HEADER: \usepackage{tikz}

 First execute the second code block, to define the convenience macro
 and to set the required new variables in ob-latex.el. Then export to
 HTML and to pdf to see the tree exported as an SVG image and as
 embedded tikz respectively.

 * Tikz test
 Here's a tree, exported to both html and pdf.

 #+header: :file (by-backend (html tree.svg) (t 'nil))
 #+header: :imagemagick
 #+header: :results (by-backend (pdf latex) (t raw))
 #+header: :tangle yes
 #+begin_src latex
 \usetikzlibrary{trees}
 \begin{tikzpicture}
 \node [circle, draw, fill=red!20] at (0,0) {1}
 child { node [circle, draw, fill=blue!30] {2}
 child { node [circle, draw, fill=green!30] {3} }
 child { node [circle, draw, fill=yellow!30] {4} }};
 \end{tikzpicture}
 #+end_src

 * COMMENT setup
 #+header: :tangle yes
 #+begin_src emacs-lisp :results silent
 (setq org-babel-latex-htlatex htlatex)
 (defmacro by-backend (rest body)
 `(case (if (boundp 'backend) (org-export-backend-name backend) nil) ,
 @body))
 #+end_src

 This doesn't really produce a .svg of the tree as advertised, but
 exporting to Latex does produce it just fine.

Works as advertised for me.  What version of orgmode are you using?
There has been a bug fix in that code recently.

Note, that in that example the :imagemagick flag is superfluous.  It is
necessary, for instance, if you want to be able to get a inline
displayable image in png as well.
Then, the example should be
--8---cut here---start-8---
#+header: :file (by-backend (html tree.svg) (t tree.png))
#+header: :imagemagick
#+header: :results (by-backend (pdf latex) (t raw))
#+begin_src latex
  \usetikzlibrary{trees}
  \begin{tikzpicture}
\node [circle, draw, fill=red!20] at (0,0) {1}
child { node [circle, draw, fill=blue!30] {2}
  child { node [circle, draw, fill=green!30] {3} }
  child { node [circle, draw, fill=yellow!30] {4} }};
  \end{tikzpicture}
#+end_src
--8---cut here---end---8---




 My real confusion starts when I try to tangle the babel code blocks.
 The C-c C-v t command produces two separate files just fine, a .tex
 and .el, but then if I try to Run Latex on the .tex file just by
 itself it gives an error. Here's what the org-mode tangle produces:


[ ... snip ... ]

Tangling is not meant to produce full LaTeX files.  If you want a full
and compilable LaTeX document, use the export functionality and export
to tex instead of pdf.  Then, you can manually compile the tex file.

Hope that helps,
Andreas




Re: [O] Tangled Latex code gives error

2015-04-27 Thread Lawrence Bottorff
I'm attracted to the tangle option because the normal latex export seems to
take everything in my .org file, e.g.,

* Introduction
LaTeX is a document markup language and a document preparation system
for the TeX typesetting program.

#+BEGIN_LaTeX
\begin{eqnarray*}
\hat{f}(x)  \propto  \sum_{\nu} \frac{|F(\nu)H(\nu)|^2}{|N(\nu)|^2}
   \frac{G(\nu)}{H(\nu)} e^{\frac{2 \pi i \nu x}{N}}\\
\propto  \sum_{\nu} \frac{|F(\nu)|^2}{|N(\nu)|^2} H(\nu)
H^*(\nu)
   \frac{G(\nu)}{H(\nu)} e^{\frac{2 \pi i \nu x}{N}}\\
\propto  \sum_{\nu} H^*(\nu) G(\nu) e^{\frac{2 \pi i \nu
x}{N}}
\end{eqnarray*}
#+END_LaTeX

will result in both the * Introduction blurb as well as the stuff between
the tatex structural elements being exported. With latex babel I can
tangle and get only what I want. This is handy if I want to throw around a
lot of chatter and extraneous stuff that ultimately I won't want in my
final document. We might call this annotations a la orgmode. But, yes,
then I don't get the built-in orgmode latex support that comes with a
regular latex export. Please advise if I'm wrong on this understanding.

On Mon, Apr 27, 2015 at 5:33 AM, Eric S Fraga e.fr...@ucl.ac.uk wrote:

 On Sunday, 26 Apr 2015 at 19:20, Lawrence Bottorff wrote:
  I'm following the Latex howto of org-mode babel. Here's the snippet from
  the howto I've got in a separate .org file (see bottom of howto page):

 [...]

  My real confusion starts when I try to tangle the babel code blocks. The
  C-c C-v t command produces two separate files just fine, a .tex and .el,
  but then if I try to Run Latex on the .tex file just by itself it gives
 an
  error. Here's what the org-mode tangle produces:

 Why do you wish to tangle?  The LaTeX will definitely not work
 standalone as it is not complete.  You can export your document to LaTeX
 (C-c C-e l l) which is probably what you want?
 --
 : Eric S Fraga (0xFFFCF67D), Emacs 25.0.50.1, Org
 release_8.3beta-1062-gce4e64



[O] Tangled Latex code gives error

2015-04-26 Thread Lawrence Bottorff
I'm following the Latex howto of org-mode babel. Here's the snippet from
the howto I've got in a separate .org file (see bottom of howto page):

#+LATEX_HEADER: \usepackage{tikz}

First execute the second code block, to define the convenience macro
and to set the required new variables in ob-latex.el.  Then export to
HTML and to pdf to see the tree exported as an SVG image and as
embedded tikz respectively.

* Tikz test
Here's a tree, exported to both html and pdf.

#+header: :file (by-backend (html tree.svg) (t 'nil))
#+header: :imagemagick
#+header: :results (by-backend (pdf latex) (t raw))
#+header: :tangle yes
#+begin_src latex
  \usetikzlibrary{trees}
  \begin{tikzpicture}
\node [circle, draw, fill=red!20] at (0,0) {1}
child { node [circle, draw, fill=blue!30] {2}
  child { node [circle, draw, fill=green!30] {3} }
  child { node [circle, draw, fill=yellow!30] {4} }};
  \end{tikzpicture}
#+end_src

* COMMENT setup
#+header: :tangle yes
#+begin_src emacs-lisp :results silent
  (setq org-babel-latex-htlatex htlatex)
  (defmacro by-backend (rest body)
`(case (if (boundp 'backend) (org-export-backend-name backend) nil)
,@body))
#+end_src

This doesn't really produce a .svg of the tree as advertised, but exporting
to Latex does produce it just fine.

My real confusion starts when I try to tangle the babel code blocks. The
C-c C-v t command produces two separate files just fine, a .tex and .el,
but then if I try to Run Latex on the .tex file just by itself it gives an
error. Here's what the org-mode tangle produces:

\usetikzlibrary{trees}
\begin{tikzpicture}
  \node [circle, draw, fill=red!20] at (0,0) {1}
  child { node [circle, draw, fill=blue!30] {2}
child { node [circle, draw, fill=green!30] {3} }
child { node [circle, draw, fill=yellow!30] {4} }};
\end{tikzpicture}

And here's the error log after I try to run it by itself in Emacs:

. . .entering extended mode
 restricted \write18 enabled.
 file:line:error style messages enabled.
 %-line parsing enabled.
**\input prac2.tex
(./prac2.tex
./prac2.tex:2: Undefined control sequence.
l.2 \usetikzlibrary
   {trees}
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.
Another version (from C-c `) produces this error message:

ERROR: Undefined control sequence.

--- TeX said ---
l.2 \usetikzlibrary
   {trees}
--- HELP ---
TeX encountered an unknown command name. You probably misspelled the
name. If this message occurs when a LaTeX command is being processed,
the command is probably in the wrong place---for example, the error
can be produced by an \item command that's not inside a list-making
environment. The error can also be caused by a missing \documentclass
command.

What am I missing here? I'd like to be able to keep my org stuff separate
from the Latex source, which org-mode seems to do nicely. But then it has
to run properly too. . . .

LB


Re: [O] Tangled Latex code gives error

2015-04-26 Thread Lawrence Bottorff
. . . okay, I realize that a viable Latex document has many preliminary
commands. Here's a working version of my tangled code

\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{trees}
\begin{document}

\begin{tikzpicture}
  \node [circle, draw, fill=red!20] at (0,0) {1}
  child { node [circle, draw, fill=blue!30] {2}
child { node [circle, draw, fill=green!30] {3} }
child { node [circle, draw, fill=yellow!30] {4} }};
\end{tikzpicture}
\end{document}

I guess I need to know where to begin to get the default org-mode Latex
export functionality for Latex babel tangling.

But then maybe I'm barking up the wrong tree. One of the hardest things
about learning org-mode is finding out what the best practice of
something really is.

On Sun, Apr 26, 2015 at 7:20 PM, Lawrence Bottorff borg...@gmail.com
wrote:

 I'm following the Latex howto of org-mode babel. Here's the snippet from
 the howto I've got in a separate .org file (see bottom of howto page):

 #+LATEX_HEADER: \usepackage{tikz}

 First execute the second code block, to define the convenience macro
 and to set the required new variables in ob-latex.el.  Then export to
 HTML and to pdf to see the tree exported as an SVG image and as
 embedded tikz respectively.

 * Tikz test
 Here's a tree, exported to both html and pdf.

 #+header: :file (by-backend (html tree.svg) (t 'nil))
 #+header: :imagemagick
 #+header: :results (by-backend (pdf latex) (t raw))
 #+header: :tangle yes
 #+begin_src latex
   \usetikzlibrary{trees}
   \begin{tikzpicture}
 \node [circle, draw, fill=red!20] at (0,0) {1}
 child { node [circle, draw, fill=blue!30] {2}
   child { node [circle, draw, fill=green!30] {3} }
   child { node [circle, draw, fill=yellow!30] {4} }};
   \end{tikzpicture}
 #+end_src

 * COMMENT setup
 #+header: :tangle yes
 #+begin_src emacs-lisp :results silent
   (setq org-babel-latex-htlatex htlatex)
   (defmacro by-backend (rest body)
 `(case (if (boundp 'backend) (org-export-backend-name backend) nil)
 ,@body))
 #+end_src

 This doesn't really produce a .svg of the tree as advertised, but
 exporting to Latex does produce it just fine.

 My real confusion starts when I try to tangle the babel code blocks. The
 C-c C-v t command produces two separate files just fine, a .tex and .el,
 but then if I try to Run Latex on the .tex file just by itself it gives an
 error. Here's what the org-mode tangle produces:

 \usetikzlibrary{trees}
 \begin{tikzpicture}
   \node [circle, draw, fill=red!20] at (0,0) {1}
   child { node [circle, draw, fill=blue!30] {2}
 child { node [circle, draw, fill=green!30] {3} }
 child { node [circle, draw, fill=yellow!30] {4} }};
 \end{tikzpicture}

 And here's the error log after I try to run it by itself in Emacs:

 . . .entering extended mode
  restricted \write18 enabled.
  file:line:error style messages enabled.
  %-line parsing enabled.
 **\input prac2.tex
 (./prac2.tex
 ./prac2.tex:2: Undefined control sequence.
 l.2 \usetikzlibrary
{trees}
 The control sequence at the end of the top line
 of your error message was never \def'ed. If you have
 misspelled it (e.g., `\hobx'), type `I' and the correct
 spelling (e.g., `I\hbox'). Otherwise just continue,
 and I'll forget about whatever was undefined.
 Another version (from C-c `) produces this error message:

 ERROR: Undefined control sequence.

 --- TeX said ---
 l.2 \usetikzlibrary
{trees}
 --- HELP ---
 TeX encountered an unknown command name. You probably misspelled the
 name. If this message occurs when a LaTeX command is being processed,
 the command is probably in the wrong place---for example, the error
 can be produced by an \item command that's not inside a list-making
 environment. The error can also be caused by a missing \documentclass
 command.

 What am I missing here? I'd like to be able to keep my org stuff separate
 from the Latex source, which org-mode seems to do nicely. But then it has
 to run properly too. . . .

 LB