Re: [Rd] Sweave processes \Sexpr in commented LaTeX source (2.3.1patched and 2.4.0)

From: Marc Schwartz (via MN) <>
Date: Thu 21 Sep 2006 - 15:58:08 GMT

On Thu, 2006-09-21 at 16:40 +0200, Friedrich Leisch wrote:
> >>>>> On Wed, 20 Sep 2006 10:07:26 -0700,
> >>>>> Seth Falcon (SF) wrote:
> > "Antonio, Fabio Di Narzo" <> writes:
> >> 2006/9/20, Seth Falcon <>:
> >>> Peter Dalgaard <> writes:
> >>> > ..not to mention TeX comments inside Sexpr (e.g. %*%...). Skipping
> >>> > lines with % as the first character might be a viable compromise
> >>> > though.
> >>>
> >>> +1. You could probably ignore any lines where the first
> >>> non-whitespace char is '%'. But if that seems to risky, then only
> >>> recognizing first-char-is-% seems a worthwhile heuristic.
> >>>
> >>> Another place where this has bitten people is when they do:
> >>>
> >>> %\usepackage{Sweave}
> >>>
> >>> Sweave picks that up and doesn't insert the usepackage line itself.
> >>
> >> I've found that extremely useful for sweaving Stex files which aren't
> >> "master" files (i.e., only files to include in a main latex file).
> >> Inserting '\usepackage{Sweave}' in each would result in a latex error.
> >> So commenting it out is a useful workaround.
> > Commenting it out _and_ having Sweave see it?
> Yes, I actually do that quite often, e.g., when I have my own
> definitions of the Sinput/Soutput/... environments in the document
> preamble and don't want to use any Sweave style file.
> Note that we recently had a thread on the \usepackage{Sweave} path
> insertion problems in windows and as a result I will stop being
> special about it at all, i.e., users will have to put a
> \usepackage{Sweave} into their documents, and take care that latex
> finds a version of it.
> The thread was end of August and I didn't do it for 2.4 because I
> didn't want to break all vignettes that close to a release. But I will
> do for the 2.5 series once 2.4.0 is released.
> Ad evaluation of \Sexpr{}: That can be considered a bug, hence I could
> try a fix even in feature freeze. But as I will be offline for a week
> starting tomorrow this will also have to wait until the 2.5 series (or
> 2.4.1, depending on the change).
> My favorite would not be a separate option eval.Sexpr but eveluate
> only when the global option for eval is true. Then an
> \SweaveOpts{eval=false}
> at any place in a document would stop all evalualtions, be it code
> chunks (which do not override the default) or Sexpr. If somebody has
> good useage for a separate option I could be convinced to have it,
> otherwise I'll go for \Sexpr{} listening to the eval option.


I appreciate your consideration of this issue.

I think that your solution using a global evaluation option would be fine.

Thanks again,

Marc mailing list Received on Fri Sep 22 04:27:12 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Thu 21 Sep 2006 - 18:30:08 GMT.

Mailing list information is available at Please read the posting guide before posting to the list.