--- title: "Working in other languages" output: rmarkdown::html_vignette vignette: > %\VignetteIndexEntry{Working in other languages} %\VignetteEngine{knitr::rmarkdown} %\VignetteEncoding{UTF-8} --- ```{r, include = FALSE} knitr::opts_chunk$set( collapse = TRUE, comment = "#>" ) library(plume) ``` If you work in a language other than English, you can extend plume classes with default names in your desired language. plume provides `set_default_names()` to help you set new default names. For example, to extend `Plume` with default names in French: ```{r} PlumeFr <- R6::R6Class( classname = "PlumeFr", inherit = Plume, private = list( names = set_default_names( initials = "initiales", literal_name = "nom_complet", corresponding = "correspondant", given_name = "prénom", family_name = "nom", email = "courriel", phone = "téléphone" ) ) ) ``` ```{r} PlumeFr$new(encyclopedists_fr) ``` You can also override the default arguments of some methods to match your language. Expanding on the example above, we can add a new `get_contributions()` method to replace the default arguments of the `divider` and `sep_last` parameters: ```{r} PlumeFr <- R6::R6Class( classname = "PlumeFr", inherit = Plume, private = list( names = set_default_names( initials = "initiales", literal_name = "nom_complet", corresponding = "correspondant", given_name = "prénom", family_name = "nom", email = "courriel", phone = "téléphone" ) ), public = list( get_contributions = function( roles_first = TRUE, by_author = FALSE, alphabetical_order = FALSE, literal_names = FALSE, divider = " : ", sep = ", ", sep_last = " et " ) { super$get_contributions( roles_first = roles_first, by_author = by_author, alphabetical_order = alphabetical_order, literal_names = literal_names, divider = divider, sep = sep, sep_last = sep_last ) } ) ) ``` ```{r} aut <- PlumeFr$new( encyclopedists_fr, roles = c(supervision = "Supervision", rédaction = "Rédaction") ) aut$get_contributions() ```