From murdoch.duncan at gmail.com  Tue Jun 21 00:58:03 2011
From: murdoch.duncan at gmail.com (Duncan Murdoch)
Date: Mon, 20 Jun 2011 18:58:03 -0400
Subject: [Rd] Quote the path of graphics output in Sweave when it
 contains spaces
In-Reply-To: <BANLkTimwL+GEmXWBe4nroEJWTvF4uFStWA@mail.gmail.com>
References: <BANLkTimwL+GEmXWBe4nroEJWTvF4uFStWA@mail.gmail.com>
Message-ID: <4DFFD07B.6040507@gmail.com>

On 11-06-20 5:57 PM, Yihui Xie wrote:
> Hi,
>
> I'm aware of the definition of a "valid filename" in
> .SweaveValidFilenameRegexp, but I think it might be better to quote
> the filename when it contains spaces instead of just giving a warning.
> This should bring us safer LaTeX code (although I never use spaces in
> paths).

That works in MikTeX 2.9's version of pdflatex, but not in latex.  I 
imagine in 5 years it's possible all the different latex versions will 
consistently handle quotes, but it hasn't happened yet.

Duncan Murdoch

>
> Here is the simple patch:
>
> Index: src/library/utils/R/SweaveDrivers.R
> ===================================================================
> --- src/library/utils/R/SweaveDrivers.R	(revision 56193)
> +++ src/library/utils/R/SweaveDrivers.R	(working copy)
> @@ -390,6 +390,8 @@
>               }
>
>               if (options$include) {
> +                if (grepl("[[:space:]]", chunkprefix))
> +                    chunkprefix = shQuote(chunkprefix, type = "cmd")
>                   cat("\\includegraphics{", chunkprefix, "}\n", sep = "",
>                       file = object$output)
>                   linesout[thisline + 1L]<- srcline
>
> Thanks!
>
> Regards,
> Yihui
> --
> Yihui Xie<xieyihui at gmail.com>
> Phone: 515-294-2465 Web: http://yihui.name
> Department of Statistics, Iowa State University
> 2215 Snedecor Hall, Ames, IA
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel



[Rd] Quote the path of graphics output in Sweave when it contains spaces
Duncan Murdoch