[R] more or less pager
(Ted Harding)
Ted.Harding at nessie.mcc.ac.uk
Fri Feb 6 20:58:56 CET 2004
On 06-Feb-04 David A. van Leeuwen wrote:
>## Default pager
> PAGER=${PAGER-'/usr/bin/less'}
>
> But i think it really is because R-users apparently don't look at
> dataframes with more than, say, 24 rows. I always seem to be
> intetrested in column names with some rows of data, so often I type
>
> > data[1,]
>
> just to see what the columns were called again.
I don't think there's a way of getting long output from a raw command
(which "data[1,]" is) to be paged in an interactive terminal (though
I stand to be corrected and would be interested in the details if I
am wrong). If the output is not too long, the scroll bar on the xterm
running R (or Shift-PgUp/Shift-PgDn) will allow you to look at what
has scrolled up off the screen.
> In order to circumvent the problem of data running off the screen, I've
> made a simple hack:
>
> more <- function(x) {
> ...
> }
>
> which isn't the prettiest implementation of `tmpfile', but hey, it
> allows my to type
>
> > more(data)
Since [above] your default pager is 'less', you can do
page(data)
without defining a new function for it. See "?page". (Here, "data"
is no longer a "raw command" since it is wrapped in "page").
You may also be interested in the following, which I owe to helpful
people on the R list. In my ~/.Rprofile I have the following lines:
.xthelp <- function() {
tdir <- tempdir()
pgr <- paste(tdir, "/pgr", sep="")
con <- file(pgr, "w")
cat("#! /bin/bash\n", file=con)
cat("export HLPFIL=`mktemp ", tdir, "/R_hlp.XXXXXX`\n", sep="",
file=con)
cat("cat > $HLPFIL\nxterm -e less $HLPFIL &\n", file=con)
close(con)
system(paste("chmod 755 ", pgr, sep=""))
options(pager=pgr)
}
.xthelp()
rm(.xthelp)
After these have been read in and executed at R startup, the command
page(data)
will open a separate xterm window in which the output from "data"
will be displayed via 'less'. The same applies if you look up
something R-ish using the "?" help command and the "help.search"
command.
Hoping this helps,
Ted.
--------------------------------------------------------------------
E-Mail: (Ted Harding) <Ted.Harding at nessie.mcc.ac.uk>
Fax-to-email: +44 (0)870 167 1972
Date: 06-Feb-04 Time: 19:58:56
------------------------------ XFMail ------------------------------
More information about the R-help
mailing list