Looks good. I came up with something on my own which was basically to re-write print.latex. I call pdflatex a few times because with the longtable package, sometimes things don't line up right until you run pdflatex multiple times. I think mine is less flexible though, and I like your solution better.

The only thing I can see to make your solution more flexible is to note that there is already options("pdfviewer") in R, so maybe you could just use whatever that is for options("xdvicmd") and then in show.dvi, you can test

if(viewer == options("pdfviewer")) {
...
}

--Erik

RICHARD M. HEIBERGER wrote:
Here is the full repair for the latex functions in Hmisc to make pdflatex work in Windows. This version is still slightly awkward. I hope that Charles and Frank will smooth it out
and put it in their next release.
I added two new options() and revised show.dvi so it will use them.

Rich
library(Hmisc) show.dvi <-
function (object, width = 5.5, height = 7)
{
    viewer <- optionsCmds("xdvi")
    cmd <- if (viewer == "yap") {
        paste(viewer, object$file)
    }
    else if (viewer == "kdvi") {
        paste(viewer, object$file)
    }
    else if (viewer == "xdvi") {
        paste(viewer, " -paper ", width, "x", height, "in -s 0 ",
            object$file, sep = "")
    }
    else if (basename(viewer) == "AcroRd32") {
      object$file <- sub("dvi", "pdf", object$file)
        paste(viewer, object$file)
    }
    else {
        paste(viewer, object$file)
    }
    system(cmd, intern = TRUE, wait = TRUE)
    invisible(NULL)
}
environment(show.dvi) <- environment(print.dvi)
options(latexcmd="pdflatex",
        xdvicmd="c:/Progra~1/Adobe/Reader~1.0/Reader/AcroRd32")
x <- matrix(1:24, 6,4, dimnames=list(letters[1:6], LETTERS[1:4]))
show.dvi(dvi(x.tex <- latex(x)))
paste(getwd(), x.tex$file, sep="/")  ## location of the table itself
## The tex file with headers and the pdf file are in the directory
## given in the printed output from dvi().

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to