help.search {utils} | R Documentation |
Search the Help System
Description
Allows for searching the help system for documentation matching a given character string in the (file) name, alias, title, concept or keyword entries (or any combination thereof), using either fuzzy matching or regular expression matching. Names and titles of the matched help entries are displayed nicely formatted.
Vignette names, titles and keywords and demo names and titles may also be searched.
Usage
help.search(pattern, fields = c("alias", "concept", "title"),
apropos, keyword, whatis, ignore.case = TRUE,
package = NULL, lib.loc = NULL,
help.db = getOption("help.db"),
verbose = getOption("verbose"),
rebuild = FALSE, agrep = NULL, use_UTF8 = FALSE,
types = getOption("help.search.types"))
??pattern
field??pattern
Arguments
pattern |
a character string to be matched in the specified
fields. If this is given, the arguments |
fields |
a character vector specifying the fields of the help
database to be searched. The entries must be abbreviations of
|
apropos |
a character string to be matched in the help page topics and title. |
keyword |
a character string to be matched in the help page
‘keywords’. ‘Keywords’ are really categories: the
standard categories are listed in file ‘R.home("doc")/KEYWORDS’
(see also the example) and some package writers have defined their
own. If |
whatis |
a character string to be matched in the help page topics. |
ignore.case |
a logical. If |
package |
a character vector with the names of packages to
search through, or |
lib.loc |
a character vector describing the location of R
library trees to search through, or |
help.db |
a character string giving the file path to a previously
built and saved help database, or |
verbose |
logical; if |
rebuild |
a logical indicating whether the help database should
be rebuilt. This will be done automatically if |
agrep |
if |
use_UTF8 |
logical: should results be given in UTF-8 encoding?
Also changes the meaning of regexps in |
types |
a character vector listing the types of documentation
to search. The entries must be abbreviations of |
field |
a single value of |
Details
Upon installation of a package, a pre-built help.search index is
serialized as ‘hsearch.rds’ in the ‘Meta’ directory
(provided the package has any help pages). Vignettes are also
indexed in the ‘Meta/vignette.rds’ file. These files are used to
create the help search database via hsearch_db
.
The arguments apropos
and whatis
play a role similar to
the Unix commands with the same names.
Searching with agrep = FALSE
will be several times faster than
the default (once the database is built). However, approximate
searches should be fast enough (around a second with 5000 packages
installed).
If possible, the help database is saved in memory for use by subsequent calls in the session.
Note that currently the aliases in the matching help files are not displayed.
As with ?
, in ??
the pattern may be prefixed with a
package name followed by ::
or :::
to limit the search
to that package.
For help files, ‘\keyword’ entries which are not among the standard keywords as listed in file ‘KEYWORDS’ in the R documentation directory are taken as concepts. For standard keyword entries different from ‘internal’, the corresponding descriptions from file ‘KEYWORDS’ are additionally taken as concepts. All ‘\concept’ entries used as concepts.
Vignettes are searched as follows. The "name"
and
"alias"
are both the base of the vignette filename, and the
"concept"
entries are taken from the ‘\VignetteKeyword’
entries. Vignettes are not classified using the help system
"keyword"
classifications. Demos are handled
similarly to vignettes, without the "concept"
search.
Value
The results are returned in a list object of class "hsearch"
,
which has a print method for nicely formatting the results of the
query. This mechanism is experimental, and may change in future
versions of R.
In R.app
on macOS, this will show up a browser with selectable
items. On exiting this browser, the help pages for the selected items
will be shown in separate help windows.
The internal format of the class is undocumented and subject to change.
See Also
hsearch_db
for more information on the help search
database employed, and for utilities to inspect available concepts and
keywords.
help
;
help.start
for starting the hypertext (currently HTML)
version of R's online documentation, which offers a similar search
mechanism.
RSiteSearch
to access an on-line search of R resources.
apropos
uses regexps and has nice examples.
Examples
help.search("linear models") # In case you forgot how to fit linear
# models
help.search("non-existent topic")
??utils::help # All the topics matching "help" in the utils package
## Documentation with topic/concept/title matching 'print'
## (disabling fuzzy matching to not also match 'point')
help.search("print", agrep = FALSE)
help.search(apropos = "print", agrep = FALSE) # ignores concepts
## Help pages with documented topics starting with 'try':
help.search("^try", fields = "alias")
alias??"^try" # the same
## Help pages documenting high-level plots:
help.search(keyword = "hplot")
RShowDoc("KEYWORDS") # show all keywords