> The following will do what you want. > > set the value > #+begin_src lisp :results silent > (defvar foo '(defun square (x) (* x x))) > #+end_src > > #+begin_src lisp :results output pp code > foo > #+end_src > > #+RESULTS: > #+BEGIN_SRC lisp > > (DEFUN SQUARE (X) (* X X)) > #+END_SRC > > Best, > > -- > Eric Schulte > https://cs.unm.edu/~eschulte > PGP: 0x614CA05D
Thanks, Eric, but this isn't what I had in mind. I want the org-mode file to remain unchanged while behaving as if it was changed, something like C macros: C compiler is not aware of macros and I'm not aware of the expanded code, but we get along nicely anyway. First use-case is that I'm writing documentation for a library of functions, so some of them are mentioned a few times. I'd like to refer to them not by name, which can be subjected to change but by a file local variable. For instance, I've got a link in a table referring to a heading. They both have the same name and I'd like to keep them consistent, but I don't want to do it manually. Second use-case is that I'm generating a HTML block with `htmlize-buffer' that I want to include in the document. I'd prefer not to have hundreds of lines of HTML that correspond to 3 lines of code that they're supposed to represent. I'd rather generate this HTML via this macro mechanism that I hope exists in some form, maybe in conjunction with a makefile-like mechanism. Here's the org file that I'm working on: https://raw.github.com/abo-abo/lispy/gh-pages/index.org. As you see a lot of redundancy there and also several huge ugly HTML blocks. Btw, is there a way to #include HTML blocks? Here's the export result: http://abo-abo.github.io/lispy/. regards, Oleh