bibentry {utils} | R Documentation |
Bibliography Entries
Description
Functionality for representing and manipulating bibliographic information in enhanced BibTeX style.
Usage
bibentry(bibtype, textVersion = NULL, header = NULL, footer = NULL,
key = NULL, ..., other = list(),
mheader = NULL, mfooter = NULL)
## S3 method for class 'bibentry'
print(x, style = "text", .bibstyle,
bibtex = length(x) <= getOption("citation.bibtex.max", 1),
...)
## S3 method for class 'bibentry'
format(x, style = "text", .bibstyle = NULL,
bibtex = length(x) <= 1,
citMsg = missing(bibtex),
sort = FALSE, macros = NULL, ...)
## S3 method for class 'bibentry'
sort(x, decreasing = FALSE, .bibstyle = NULL, drop = FALSE, ...)
## S3 method for class 'citation'
print(x, style = "citation", ...)
## S3 method for class 'citation'
format(x, style = "citation", ...)
## S3 method for class 'bibentry'
toBibtex(object, escape = FALSE, ...)
Arguments
bibtype |
a character string with a BibTeX entry type. See Entry Types for details. |
textVersion |
a character string with a text representation of
the reference to optionally be employed for printing. It is
recommended to leave this unspecified if
|
header |
a character string with optional header text. |
footer |
a character string with optional footer text. |
key |
a character string giving the citation key for the entry. |
... |
for For the For the For the |
other |
a list of arguments as in |
mheader |
a character string with optional “outer” header text. |
mfooter |
a character string with optional “outer” footer text. |
x |
an object inheriting from class |
style |
an optional character string specifying the print style. If present, must be a unique abbreviation (with case ignored) of the available styles, see Details. |
decreasing |
logical, passed to |
.bibstyle |
a character string naming a bibliography style,
see |
bibtex |
|
citMsg |
|
sort |
logical indicating if bibentries should be sorted, using
|
macros |
a character string or an object with already loaded Rd macros, see Details. |
drop |
logical used as |
object |
an object inheriting from class |
escape |
a logical indicating whether non-ASCII characters should be translated to LaTeX escape sequences. |
Details
The bibentry objects created by bibentry
can represent an
arbitrary positive number of references. One can use c()
to
combine bibentry objects, and hence in particular build a multiple
reference object from single reference ones. Alternatively, one can
use bibentry
to directly create a multiple reference object by
specifying the arguments as lists of character strings.
The print
method for bibentry objects is based on a
corresponding format
method and provides a choice
between seven different styles:
plain text (style "text"
),
BibTeX ("bibtex"
),
a mixture of plain text and BibTeX as traditionally used for citations
("citation"
),
HTML ("html"
),
LaTeX ("latex"
),
R code ("R"
),
and a simple copy of the textVersion
elements (style
"textVersion"
).
The "text"
, "html"
and "latex"
styles make use
of the .bibstyle
argument: a style defined by the
bibstyle
function for rendering the bibentry into
(intermediate) Rd format.
The Rd format uses markup commands documented in the ‘Rd format’
section of the ‘Writing R Extensions’ manual, e.g. \bold
.
In addition, one can use the macros
argument to
provide additional (otherwise unknown, presumably LaTeX-style) Rd
macros, either by giving the path to a file with Rd macros to be
loaded via loadRdMacros
, or an object with macros
already loaded.
Note that the "latex"
result may contain commands from the
LaTeX style file ‘Rd.sty’ shipped with R;
put \usepackage{Rd}
in the preamble of a LaTeX document
to make these available when compiling,
e.g. with texi2pdf
.
When printing bibentry objects in citation style, a
header
/footer
for each item can be displayed as well as
a mheader
/mfooter
for the whole vector of references.
For formatting as R code,
a choice between giving a character vector with one bibentry()
call for each bibentry (as commonly used in ‘CITATION’ files), or
a character string with one collapsed call, obtained by combining the
individual calls with c()
if there is more than one bibentry.
This can be controlled by passing the argument collapse=FALSE
(default) or TRUE
, respectively, to the format()
method.
(Printing in R style always collapses to a single call.)
It is possible to subscript bibentry objects by their keys (which are
used for character subscripts if the names are NULL
).
There is also a toBibtex
method for direct conversion to
BibTeX.
As of R 4.3.0, there is also a transform
method which
allows to directly use the current fields, see the examples.
Value
bibentry
produces an object of class "bibentry"
.
Entry Types
bibentry
creates "bibentry"
objects, which are modeled
after BibTeX entries. The entry should be a valid BibTeX entry type,
e.g.,
- Article:
An article from a journal or magazine.
- Book:
A book with an explicit publisher.
- InBook:
A part of a book, which may be a chapter (or section or whatever) and/or a range of pages.
- InCollection:
A part of a book having its own title.
- InProceedings:
An article in a conference proceedings.
- Manual:
Technical documentation like a software manual.
- MastersThesis:
A Master's thesis.
- Misc:
Use this type when nothing else fits.
- PhdThesis:
A PhD thesis.
- Proceedings:
The proceedings of a conference.
- TechReport:
A report published by a school or other institution, usually numbered within a series.
- Unpublished:
A document having an author and title, but not formally published.
Entry Fields
The ...
argument of bibentry
can be any number of
BibTeX fields, including
- address:
The address of the publisher or other type of institution.
- author:
The name(s) of the author(s), either as a
person
object, or as a character string whichas.person
correctly coerces to such.- booktitle:
Title of a book, part of which is being cited.
- chapter:
A chapter (or section or whatever) number.
- doi:
The DOI (https://en.wikipedia.org/wiki/Digital_Object_Identifier) for the reference.
- editor:
Name(s) of editor(s), same format as
author
.- institution:
The publishing institution of a technical report.
- journal:
A journal name.
- note:
Any additional information that can help the reader. The first word should be capitalized.
- number:
The number of a journal, magazine, technical report, or of a work in a series.
- pages:
One or more page numbers or range of numbers.
- publisher:
The publisher's name.
- school:
The name of the school where a thesis was written.
- series:
The name of a series or set of books.
- title:
The work's title.
- url:
A URL for the reference. (If the URL is an expanded DOI, we recommend to use the ‘doi’ field with the unexpanded DOI instead.)
- volume:
The volume of a journal or multi-volume book.
- year:
The year of publication.
See Also
Examples
## R reference
rref <- bibentry(
bibtype = "Manual",
title = "R: A Language and Environment for Statistical Computing",
author = person("R Core Team"),
organization = "R Foundation for Statistical Computing",
address = "Vienna, Austria",
year = 2014,
url = "https://www.R-project.org/")
## Different printing styles
print(rref)
print(rref, style = "bibtex")
print(rref, style = "citation")
print(rref, style = "html")
print(rref, style = "latex")
print(rref, style = "R")
## References for boot package and associated book
bref <- c(
bibentry(
bibtype = "Manual",
title = "boot: Bootstrap R (S-PLUS) Functions",
author = c(
person("Angelo", "Canty", role = "aut",
comment = "S original"),
person(c("Brian", "D."), "Ripley", role = c("aut", "trl", "cre"),
comment = "R port, author of parallel support",
email = "ripley@stats.ox.ac.uk")
),
year = "2012",
note = "R package version 1.3-4",
url = "https://CRAN.R-project.org/package=boot",
key = "boot-package"
),
bibentry(
bibtype = "Book",
title = "Bootstrap Methods and Their Applications",
author = as.person("Anthony C. Davison [aut], David V. Hinkley [aut]"),
year = "1997",
publisher = "Cambridge University Press",
address = "Cambridge",
isbn = "0-521-57391-2",
url = "http://statwww.epfl.ch/davison/BMA/",
key = "boot-book"
)
)
## Combining and subsetting
c(rref, bref)
bref[2]
bref["boot-book"]
## Extracting fields
bref$author
bref[1]$author
bref[1]$author[2]$email
## Field names are case-insensitive
rref$Year
rref$Year <- R.version$year
stopifnot(identical(rref$year, R.version$year))
## Convert to BibTeX
toBibtex(bref)
## Transform
transform(rref, address = paste0(address, ", Europe"))
## BibTeX reminder message (in case of >= 2 refs):
print(bref, style = "citation")
## Format in R style
## One bibentry() call for each bibentry:
writeLines(paste(format(bref, "R"), collapse = "\n\n"))
## One collapsed call:
writeLines(format(bref, "R", collapse = TRUE))