| % File src/library/utils/man/bibentry.Rd |
| % Part of the R package, https://www.R-project.org |
| % Copyright 1995-2017 R Core Team |
| % Distributed under GPL 2 or later |
| |
| \name{bibentry} |
| \title{Bibliography Entries} |
| \alias{bibentry} |
| \alias{print.bibentry} |
| \alias{format.bibentry} |
| \alias{sort.bibentry} |
| \alias{print.citation} |
| \alias{format.citation} |
| \description{ |
| Functionality for representing and manipulating bibliographic |
| information in enhanced BibTeX style. |
| } |
| \usage{ |
| bibentry(bibtype, textVersion = NULL, header = NULL, footer = NULL, |
| key = NULL, \dots, other = list(), |
| mheader = NULL, mfooter = NULL) |
| |
| \method{print}{bibentry}(x, style = "text", .bibstyle, \dots) |
| |
| \method{format}{bibentry}(x, style = "text", .bibstyle = NULL, |
| citation.bibtex.max = getOption("citation.bibtex.max", 1), |
| bibtex = length(x) <= citation.bibtex.max, |
| sort = FALSE, macros = NULL, \dots) |
| |
| \method{sort}{bibentry}(x, decreasing = FALSE, .bibstyle = NULL, drop = FALSE, \dots) |
| |
| \method{print}{citation}(x, style = "citation", \dots) |
| \method{format}{citation}(x, style = "citation", \dots) |
| } |
| \arguments{ |
| \item{bibtype}{a character string with a BibTeX entry type. |
| See \bold{Entry Types} for details. |
| } |
| \item{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 |
| \code{format(x, style = "text")} |
| works correctly. Only if special LaTeX macros (e.g., math |
| formatting) or special characters (e.g., with accents) are |
| necessary, a \code{textVersion} should be provided. |
| } |
| \item{header}{a character string with optional header text.} |
| \item{footer}{a character string with optional footer text.} |
| \item{key}{a character string giving the citation key for the entry.} |
| \item{\dots}{for \code{bibentry}: arguments of the form |
| \code{\var{tag}=\var{value}} giving the fields of the entry, with |
| \var{tag} and \var{value} the name and value of the field, |
| respectively. Arguments with empty values are dropped. |
| See \bold{Entry Fields} for details. |
| |
| For the \code{print()} method, extra arguments to pass to the |
| renderer which typically includes the \code{format()} method. |
| |
| For the \code{citation} class methods, arguments passed to the next |
| method, i.e., the corresponding \code{bibentry} one. |
| } |
| \item{other}{a list of arguments as in \code{\dots} (useful in |
| particular for fields named the same as formals of |
| \code{bibentry}).} |
| \item{mheader}{a character string with optional \dQuote{outer} header |
| text.} |
| \item{mfooter}{a character string with optional \dQuote{outer} footer |
| text.} |
| \item{x}{an object inheriting from class \code{"bibentry"}.} |
| \item{style}{an optional character string specifying the print style. |
| If present, must be a unique abbreviation (with case ignored) of the available |
| styles, see \bold{Details}.} |
| \item{decreasing}{logical, passed to \code{\link{order}} indicating |
| the sort direction.} |
| \item{.bibstyle}{a character string naming a bibliography style.} |
| \item{citation.bibtex.max}{(\emph{deprecated}, use |
| \code{bibtex = T|F} |
| instead!) a number, say \eqn{m}, indicating that the bibtex |
| code should be given in addition to the formatted tex \emph{when} |
| there are not more than \eqn{m} entries. The default is taken as |
| \code{\link{getOption}("citation.bibtex.max", 1)} which is \code{1} |
| typically. For example, to see no bibtex at all, you can change the |
| default by \code{\link{options}(citation.bibtex.max = 0)}.} |
| \item{bibtex}{logical indicating if bibtex code should be given |
| additionally; currently applies only to \code{style = "citation"}. |
| The default depends on on the number of (bib) entries and |
| \code{\link{getOption}("citation.bibtex.max")}.} |
| \item{sort}{logical indicating if bibentries should be sorted, using |
| \code{\link[tools]{bibstyle}(.bibstyle)$sortKeys(x)}.} |
| \item{macros}{a character string or an object with already loaded Rd |
| macros, see \bold{Details}.} |
| \item{drop}{logical used as \code{x[ ..., drop=drop]} inside the |
| \code{sort()} method.} |
| } |
| \details{ |
| The bibentry objects created by \code{bibentry} can represent an |
| arbitrary positive number of references. One can use \code{c()} to |
| combine bibentry objects, and hence in particular build a multiple |
| reference object from single reference ones. Alternatively, one can |
| use \code{bibentry} to directly create a multiple reference object by |
| \dQuote{vectorizing} the given arguments, i.e., use character vectors |
| instead of character strings. |
| |
| The \code{\link{print}} method for bibentry objects provides a choice |
| between seven different styles: |
| plain text (style \code{"text"}), |
| BibTeX (\code{"Bibtex"}), |
| a mixture of plain text and BibTeX as traditionally used for citations |
| (\code{"citation"}), |
| HTML (\code{"html"}), |
| LaTeX (\code{"latex"}), |
| R code (\code{"R"}), |
| and a simple copy of the \code{textVersion} elements (style |
| \code{"textVersion"}). |
| The \code{"text"}, \code{"html"} and \code{"latex"} styles make use |
| of the \code{.bibstyle} argument using the \code{\link{bibstyle}} |
| function. In addition, one can use the \code{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 \code{\link[tools]{loadRdMacros}}, or an object with macros |
| already loaded. |
| |
| When printing bibentry objects in citation style, a |
| \code{header}/\code{footer} for each item can be displayed as well as |
| a \code{mheader}/\code{mfooter} for the whole vector of references. |
| |
| The \code{\link{print}} method is based on a \code{\link{format}} |
| method which provides the same styles, and for formatting as R code |
| a choice between giving a character vector with one \code{bibentry()} |
| call for each bibentry (as commonly used in \file{CITATION} files), or |
| a character string with one collapsed call, obtained by combining the |
| individual calls with \code{c()} if there is more than one bibentry. |
| This can be controlled by setting the option \code{collapse} to |
| \code{FALSE} (default) or \code{TRUE}, respectively. (Printing in R |
| style always collapses to a single call.) Further, for the |
| \code{"citation"} style, \code{format()}'s optional argument |
| \code{citation.bibtex.max} (with default |
| \code{\link{getOption}("citation.bibtex.max")} which defaults to 1) |
| determines for up to how many citation bibentries text style is shown |
| together with bibtex, automatically. |
| |
| It is possible to subscript bibentry objects by their keys (which are |
| used for character subscripts if the names are \code{NULL}). |
| |
| There is also a \code{\link{toBibtex}} method for direct conversion to |
| BibTeX. |
| } |
| \value{ |
| \code{bibentry} produces an object of class \code{"bibentry"}. |
| } |
| \section{Entry Types}{ |
| \code{bibentry} creates \code{"bibentry"} objects, which are modeled |
| after BibTeX entries. The entry should be a valid BibTeX entry type, |
| e.g., |
| \describe{ |
| \item{Article:}{An article from a journal or magazine.} |
| \item{Book:}{A book with an explicit publisher.} |
| \item{InBook:}{A part of a book, which may be a chapter (or section |
| or whatever) and/or a range of pages.} |
| \item{InCollection:}{A part of a book having its own title.} |
| \item{InProceedings:}{An article in a conference proceedings.} |
| \item{Manual:}{Technical documentation like a software manual.} |
| \item{MastersThesis:}{A Master's thesis.} |
| \item{Misc:}{Use this type when nothing else fits.} |
| \item{PhdThesis:}{A PhD thesis.} |
| \item{Proceedings:}{The proceedings of a conference.} |
| \item{TechReport:}{A report published by a school or other |
| institution, usually numbered within a series.} |
| \item{Unpublished:}{A document having an author and title, but not |
| formally published.} |
| } |
| } |
| \section{Entry Fields}{ |
| The \code{\dots} argument of \code{bibentry} can be any number of |
| BibTeX fields, including |
| \describe{ |
| \item{address:}{The address of the publisher or other type of |
| institution.} |
| |
| \item{author:}{The name(s) of the author(s), either as a |
| \code{\link{person}} object, or as a character string which |
| \code{\link{as.person}} correctly coerces to such.} |
| |
| \item{booktitle:}{Title of a book, part of which is being cited.} |
| \item{chapter:}{A chapter (or section or whatever) number.} |
| |
| \item{doi:}{The DOI |
| (\url{https://en.wikipedia.org/wiki/Digital_Object_Identifier}) |
| for the reference.} |
| |
| \item{editor:}{Name(s) of editor(s), same format as \code{author}.} |
| |
| \item{institution:}{The publishing institution of a technical report.} |
| |
| \item{journal:}{A journal name.} |
| |
| \item{note:}{Any additional information that can help the reader. |
| The first word should be capitalized.} |
| |
| \item{number:}{The number of a journal, magazine, technical report, |
| or of a work in a series.} |
| |
| \item{pages:}{One or more page numbers or range of numbers.} |
| |
| \item{publisher:}{The publisher's name.} |
| |
| \item{school:}{The name of the school where a thesis was written.} |
| |
| \item{series:}{The name of a series or set of books.} |
| |
| \item{title:}{The work's title.} |
| |
| \item{url:}{A URL for the reference. |
| (If the URL is an expanded DOI, we recommend to use the \samp{doi} |
| field with the unexpanded DOI instead.)} |
| |
| \item{volume:}{The volume of a journal or multi-volume book.} |
| |
| \item{year:}{The year of publication.} |
| } |
| } |
| \seealso{ |
| \code{\link{person}} |
| } |
| \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 |
| |
| ## Convert to BibTeX |
| toBibtex(bref) |
| |
| ## 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)) |
| } |
| \keyword{ utilities } |
| \keyword{ documentation } |