txtStart {TeachingDemos} | R Documentation |
These functions save a transcript of your commands and their output to a script file, possibly for later processing with the "enscript" program.
They work as a combinations of sink
and history
with a
couple extra bells and whistles.
txtStart(file, commands=TRUE, results=TRUE, append=FALSE, cmdfile, visible.only=TRUE) txtStop() txtComment(txt,cmdtxt) txtSkip(expr) etxtStart(dir = tempfile("etxt"), file = "transcript.txt", commands = TRUE, results = TRUE, append = FALSE, cmdbg = "white", cmdcol = "red", resbg = "white", rescol = "navy", combg = "cyan", comcol = "black", cmdfile, visible.only = TRUE) etxtStop() etxtComment(txt, cmdtxt) etxtSkip(expr) etxtPlot(file=paste(tempfile('plot',R2txt.vars$dir),'.eps',sep=''), width=4, height=4)
dir |
Directory to store transcript file and any graphics file in |
file |
Text file to save transcript in |
commands |
Logical, should the commands be echoed to the transcript file |
results |
Logical, should the results be saved in the transcript file |
append |
Logical, should we append to file or replace it |
cmdbg |
Background color for command lines in file |
cmdcol |
Color of text for command lines in file |
resbg |
Background color for results sections in file |
rescol |
Text color of results sections in file |
combg |
Background color for comments in file |
comcol |
Text color of comments in file |
cmdfile |
A filename to store commands such that it can be
source d or copied and pasted from |
visible.only |
Should non-printed output be included, not currently implemented. |
txt |
Text of a comment to be inserted into file |
cmdtxt |
Text of a comment to be inserted into cmdfile |
expr |
An expression to be executed without being included in
file or cmdfile |
width |
Width of plot, passed to dev.copy2eps |
height |
Height of plot, passed to dev.copy2eps |
These functions are used to create transcript/command files of your R session. There are 2 sets of functions, those starting with "txt" and those starting with "etxt". The "txt" functions create a plain text transcript while the "etxt" functions create a text file with extra escapes and commands so that it can be post processed with enscript (an external program) to create a postscript file and can include graphics as well. The postscript file can be converted to pdf or other format file.
If results
is TRUE and commands
is FALSE then the result
is similar to the results of sink
. If commands
is true as well then the results will show both the commands
and results similar to the output on the screen. If both
commands
and results
are FALSE then pretty much
the only thing these functions will accomplish is to waste some
computing time.
If cmdfile
is
specified then an additional file is created with the commands
used (similar to the history
command), this file can be
used with source
or copied and
pasted to the terminal.
The Start functions specify the file/directory to create and start the transcript. The prompts are changed to remind you that the commands/results are being copied to the transcript. The Stop functions stop the recording and reset the prompts.
The R parser strips comments and does some reformating so the
transcript file may not match exactly with the terminal
output. Use the txtComment
or etxtComment
functions to add a comment. This will show up as a line offset
by whitespace in the transcript file and highlighted in the
etxt version. If cmdtxt
is specified then that line
will be inserted into cmdfile
preceeded by a # so it
will be skipped if sourced or copied.
The tktSkip
and etxtSkip
functions will run the
code in expr
but will not include the commands or
results in the transcript file (this can be used for side
computations, or requests for help, etc.).
The etxtPlot
function calls dev.copy2eps
to
create a copy of the current plot and iserts the proper command
into the transcript file so that the eps file will be included
in the final postscript file after processing.
Most of these commands do not return anything of use. The exceptions
are:
etxtStop
returns the name of the transcript file (including the
directory path).
txtSkip
and etxtSkip
return the value of expr
.
These commands do not do any fancy formatting of output, just what you
see in the regular terminal window. If you want more formatted output
then you should look into Sweave
or the R2HTML package.
Do not use these functions in combination with R2HTML or sink
.
Greg Snow, greg.snow@imail.org
sink
, history
,
Sweave
, the odfWeave package, the R2HTML package
## Not run: etxtStart() etxtComment('This is todays transcript') date() x <- rnorm(25) summary(x) stem(x) etxtSkip{?hist} hist(x) etxtPlot() Sys.Date() Sys.time() my.file <- etxtStop() # assumes enscript and ps2pdf are on your path system(paste('enscript -e -B -p transcript.ps ', my.file) ) system('ps2pdf transcript.ps') ## End(Not run)