One of the things I love about emacs is being able to specify a master file, then compile an included .tex file - I just use C-c C-b

For sweave documents, I have the following layout:

  • master.Rnw

    • \SweaveInput{chapter1}

    • \SweaveInput{chapter2}

    • \SweaveInput{chapter3}

I would like to use the same idea as C-c C-b to only sweave/latex chapter1. Is this possible in emacs?


2 Answers 2


I am no expert on Sweave, but it seems to be integrated in the ESS package with an Rnw and Snw mode where you can have it run Sweave or R on the buffer code directly. So that might be what you want if it's just to preview the sweave file result.

I also found details on integrating ESS more tightly with AUCTeX here. It's not tested, but C-c C-c is mapped to run the command on the master file, so it might work for you.

While this is not a complete answer, I hope it helps. I put it in WIKI mode so you can add more details if you find anything more.


I doubt this sort of thing is possible, because running tex just on chapter 1 won't work, since it will need the common preamble which is presumably in the master document. And if you run tex on the master, then it doesn't know to only do the first chapter.

One way to do what you want is to use \includeonly to tell the compiler which files to include. (I expect the \SweaveInput has a similar command...) See here for some details

If the problem is you want emacs to treat .Rnw files like .tex files, try adding this to your .emacs:

(add-to-list 'auto-mode-alist '("\\.Rnw~?$" . latex-mode))
  • In emacs C+c C+b copies the preamble and the "included file" into a temporary file called _region.tex. It then latexs that file. Of course, chapter numbers, etc, are off. But it's very handy for quick checks. Jan 17, 2011 at 11:09
  • @csgillespie That's interesting. I've always just compiled with C-c C-c. Why doesn't exactly the same thing work with sweave documents? I'd have thought the process would be identical...
    – Seamus
    Jan 17, 2011 at 11:20
  • To sweave a document you use the command M-n s and it doesn't (seem) to have any idea about the concept of a master file. I tried to hack my .emacs, but things quickly got messy. For example, auctex expects .tex file extensions. At this point, I thought there must be a better way. Jan 17, 2011 at 11:28
  • @csgillespie C-c C-b type Other and then try typing Sweave at the next prompt. Does this work?
    – Seamus
    Jan 17, 2011 at 11:56
  • No. I think it something to do with the file extensions (they're .Rnw not .tex). Jan 17, 2011 at 12:26

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.