# [TxMt] LaTeX (Sweave)/HTML/Markdown and Rdaemon (R)

Hans-Joerg Bibiko bibiko at eva.mpg.de
Fri Jul 4 11:37:57 UTC 2008

Hi,

while developing the Rdaemon I had one single question in my mind. How
can you integrate Rdaemon in documents like LaTeX, HTML, Markdown etc.

Up to now I fiddled around with automatically copy&pasting R stuff,

But I believe I found hopefully a very easy solution.
One only has to use TextMate's wondrous facilities. ;P

Everybody knows, e.g. if one writes an HTML doc you have the HTML
scope with all commands behind it. Then one inserts a new CSS
declaration. If you are inside of such a CSS tag you have all CSS
features available. This is done in the Language setting for HTML.
This led me to an idea.

E.g. LaTeX:
If I'm writing an article or paper about my analyses of a topic, and I
did this by using R; then I usually explain how I did this with R.
Or if you give a R course and you want to document it, or if you write
One can use Sweave to typeset it. Fine.

BUT, my idea was to combine LaTeX and Rdaemon. I wrote a new Language
for LaTeX called "LaTeX Rdaemon". The only thing I did is to insert an
include statement

include = 'source.rd.console'

within the 'verbatim' environment.

OK. How does this work now?
You can start the Rdaemon and close that window. Then you open a LaTeX
file, set the language to "LaTeX Rdaemon".
Now you can write your LaTeX stuff, but if you declare a
\begin{verbatim} block AND within that block a line begins with "> "
then you are talking with the Rdaemon with all features coming from R
and Rdaemon. Press RETURN and the line will be executed and the result
will be written into the TeX document. (Remember the Rdaemon runs
further in the background)

I recorded a very tiny movie to illustrate that.

http://www.bibiko.de/TM_Rdaemon_Latex.mov

And this is only a test without fine-tuning! One can think about to
write some code to automate some things like:

- if a line starts with "> " within a tex document this line and the
output will wrapped automatically by a verbatim block after pressing
RETURN
- if one plots something and the Rdaemon recognizes that the command
is coming from a tex document which is saved in a certain folder then
the Rdaemon will plot this image using a Quartz device, dev.copy2eps(/
TEX_FOLDER/THE_NAME) [the Quartz is still open for further stuff!],
and return something like:

\begin{figure}
\begin{center}
\includegraphics{THE_NAME}
\end{center}
\caption{Scatter Plot with Regression Line}
\label{fig:FOO}
\end{figure}

[FOO could be calcualted, I guess]

etc...

By using this approach one could do this also with Markdown or HTML
etc. The only thing is to expand the Language syntax, and to fine-tune
the Rdaemon.

could be expected?
Would this be useful at all?

Kind regards,

--Hans