weaveR {relax}R Documentation

function to weave a file

Description

weaveR reads a file that is written according to the rules of the noweb system and performs a simple kind of weaving. As a result a LaTeX file is generated.

Usage

weaveR(in.file,out.file)

Arguments

in.file name of input file
out.file name of output file; if missing the extension of the input file is turned to .tex

Details

General remarks: A noweb file consists of a mixture of text and code chunks. An @ character (in column 1 of a line) indicates the beginning of a text chunk. <<name of code chunk>>= (starting at column 1 of a line) is a header line of a code chunk with a name defined by the text between << and >>=. A code chunk is finished by the beginning of hte next text chunk. Within the code chunk you are allowed to use other code chunks by referencing them by name ( for example by: <<name of code chunk>> ). In this way you can separate a big job in smaller ones.

Technical remarks: To format small pieces of code in text chunks you have to put them in [[...]]-brackets: text text [[code]] text text. One occurence of such a code in a text line is assumed to work always. If an error emerges caused by formatting code in a text chunk simplify the line by splitting it. Sometimes you want to use [[- or even <<-characters in your text. Then it may be necessary to escape them by an @-sign and you have to type in: @<<, @[[ and so on.

weaveR expands the input by adding some latex macros to typeset code by a typewriter font. Furthermore chunk numbers are appended to code chunk headers. The number of the last code chunk is stored in LaTeX-counter Rchunkno. After defining \newcommand{\chunklabel}[1]{\newcounter{#1}\setcounter{#1}{\value{Rchunkno} } } and \newcommand{\chunkref}[1]{\arabic{#1} } you can label a code chunk by \chunklabel{xyzname} and reference it by \chunkref{xyzname} .

Value

a latex file is generated

Author(s)

Hans Peter Wolf

References

http://www.eecs.harvard.edu/~nr/noweb/intro.html

See Also

tangleR

Examples

## Not run: 
## This example cannot be run by examples() but should be work in an interactive R session
  weaveR("testfile.rev","testfile.tex")
  weaveR("testfile.rev")
## End(Not run)
## The function is currently defined as
weaveR<-function(in.file,out.file){
  # german documentation of the code:
  # look for file webR.pdf, P. Wolf 050204
  ...
}

[Package relax version 1.00 Index]