Alan Schmitt <alan.schmitt <at> polytechnique.org> writes: > > Hi Charles, > > ccberry <at> ucsd.edu writes: > > > Lacking that, another alternative to the approach you have crafted is to > > use elisp src blocks to set up the commands needed to create the > > objects, > > and then place the results of executing the elisp src block in the src > > block of your favored language using noweb, for example > > > > #+BEGIN_SRC mylang :noweb yes > > <<elisp-conversion-to-mylang("arg1","arg2")>> > > #+END_SRC > > > > might convert 'arg2' to an object of the desired type named 'arg1' in a > > 'mylang' src block. > > This looks like a very powerful approach, but it's a bit beyond my > understanding of babel (which is limited) and noweb (whose existence I > just discovered after reading http://orgmode.org/manual/noweb.html). >
Sorry if it was a bit obtuse. The examples given by others seem to have helped. And I will give one more. [deleted] > If you have an example that uses different languages, I'd love to look > at it. I'll then try to write an example for ocaml. > Here is what I use for LaTeX thru elisp to R: * Quote Blocks quote-blks takes two args: - blk :: a string of comma separated src block names - sep :: an optional separator for use when there is more than one block I usually save it in a file and load it in with (org-babel-lob-ingest file). But you can copy and paste and the example below will still work. #+name: quote-blks #+BEGIN_SRC emacs-lisp :var blk="abc" :var sep="\"\n\"" (save-excursion (replace-regexp-in-string "\"\"" "" (mapconcat (lambda (x) (org-babel-goto-named-src-block x) (format "%S" (cadr (org-babel-get-src-block-info t)))) (split-string blk "," t) sep) t t)) #+END_SRC * example of use The LaTeX here can be editted via C-c ' (i.e. org-edit-special --> org-edit-src-code). #+name: lstuff #+BEGIN_SRC latex :eval never :exports none Here is a \backslash. And an unmatched quote: '. #+END_SRC Here is an example using it on the above block. The cat statement prints a formatted version. The str statement shows what R sees (but the outer quotes are not part of the string). #+BEGIN_SRC R :noweb yes :results output some.latex <- <<quote-blks("lstuff")>> cat(some.latex,"\n") str(some.latex) #+END_SRC #+RESULTS: : Here is a \backslash. And an unmatched quote: '. : chr "Here is a \\backslash. And an unmatched quote: '." HTH, Chuck