Skip to contents

This is documentation for internal functions for translation. If you want a guide to providing translations, please read vignette("translations", package = "sandpaper")

Usage

these

establish_translation_vars()

set_language(lang = NULL)

tr_src(from = "varnish", key = NULL)

tr_get(from = "varnish", key = NULL)

tr_varnish(key = NULL)

tr_computed(key = NULL)

Format

An object of class environment of length 1.

Arguments

lang

a two-letter language code (optionally with a country code). Defaults to NULL, which falls back to English (the language of the source code).

from

a single character specifying the translation list to fetch. This defaults to "varnish" but can be one of the following:

  • src

  • varnish

  • computed

key

a single character specifying a specific key to fetch from the translation list. This defaults to NULL, returning the whole list.

Value

if key = NULL, a list if key is a single character, the result will be an unnamed character vector of length 1 representing the value from that list.

Details

A page generated from {sandpaper} is made up of user-provided content wrapped into templated HTML provided by {varnish}. Since users can provide content in any human language that can be processed by computer, {sandpaper} must have a method to match the template content to the language of the content. These translations are added to the source of {sandpaper} by volunteers using the {potools} package.

Template content strings are stored in the $translations element of the these global environment variable, which is generated by the establish_translation_vars() function, which is run every time {sandpaper} is loaded. The $translations element consists of three lists:

  • varnish: a list of translated strings that are passed directly to {varnish}

  • computed: a list of translated strings that are incorporated into the HTML content before it is passed to {varnish}.

  • src: a source list of the above two lists that serves as the source of the translations.

Whenever a lesson is built, the function set_language() will read the lang item from the config.yaml and apply translations to these$translations$varnish and these$translations$computed before the lesson is generated or updated.

List of Translation Variables

There are 62 translations generated by set_language() that correspond to the following variables in {varnish}:

variablestring
translate.SkipToMain'Skip to main content'
translate.iPreAlpha'Pre-Alpha'
translate.PreAlphaNote'This lesson is in the pre-alpha phase, which means that it is in early development, but has not yet been taught.'
translate.AlphaNote'This lesson is in the alpha phase, which means that it has been taught once and lesson authors are iterating on feedback.'
translate.iAlpha'Alpha'
translate.BetaNote'This lesson is in the beta phase, which means that it is ready for teaching by instructors outside of the original author team.'
translate.iBeta'Beta'
translate.PeerReview'This lesson has passed peer review.'
translate.InstructorView'Instructor View'
translate.LearnerView'Learner View'
translate.MainNavigation'Main Navigation'
translate.ToggleNavigation'Toggle Navigation'
translate.ToggleDarkMode'Toggle theme (auto)'
translate.Menu'Menu'
translate.SearchButton'Search the All In One page'
translate.Setup'Setup'
translate.KeyPoints'Key Points'
translate.InstructorNotes'Instructor Notes'
translate.Glossary'Glossary'
translate.LearnerProfiles'Learner Profiles'
translate.More'More'
translate.LessonProgress'Lesson Progress'
translate.CloseMenu'close menu'
translate.EPISODES'EPISODES'
translate.Home'Home'
translate.HomePageNav'Home Page Navigation'
translate.RESOURCES'RESOURCES'
translate.ExtractAllImages'Extract All Images'
translate.AIO'See all in one page'
translate.DownloadHandout'Download Lesson Handout'
translate.ExportSlides'Export Chapter Slides'
translate.PreviousAndNext'Previous and Next Chapter'
translate.Previous'Previous'
translate.EstimatedTime'Estimated time: {icons$clock} {minutes} minutes'
translate.Next'Next'
translate.NextChapter'Next Chapter'
translate.LastUpdate'Last updated on {updated}'
translate.EditThisPage'Edit this page'
translate.ExpandAllSolutions'Expand All Solutions'
translate.SetupInstructions'Setup Instructions'
translate.DownloadFiles'Download files required for the lesson'
translate.ActualScheduleNote'The actual schedule may vary slightly depending on the topics and exercises chosen by the instructor.'
translate.BackToTop'Back To Top'
translate.SpanToTop'<(Back)> To Top'
translate.ThisLessonCoC'This lesson is subject to the <(Code of Conduct)>'
translate.CoC'Code of Conduct'
translate.EditOnGH'Edit on GitHub'
translate.Contributing'Contributing'
translate.Source'Source'
translate.Cite'Cite'
translate.Contact'Contact'
translate.About'About'
translate.MaterialsLicensedUnder'Materials licensed under {license} by the authors'
translate.TemplateLicense'Template licensed under <(CC-BY 4.0)> by {template_authors}'
translate.Carpentries'The Carpentries'
translate.BuiltWith'Built with {sandpaper_link}, {pegboard_link}, and {varnish_link}'
translate.ExpandAllSolutions'Expand All Solutions'
translate.CollapseAllSolutions'Collapse All Solutions'
translate.Collapse'Collapse'
translate.Episodes'Episodes'
translate.GiveFeedback'Give Feedback'
translate.LearnMore'Learn More'

In addition, there are 26 translations that are inserted before they get to {varnish}:

variablestring
OUTPUT'OUTPUT'
WARNING'WARNING'
ERROR'ERROR'
Overview'Overview'
Questions'Questions'
Objectives'Objectives'
Callout'Callout'
Challenge'Challenge'
Prereq'Prerequisite'
Checklist'Checklist'
Discussion'Discussion'
Testimonial'Testimonial'
Keypoints'Key Points'
Show me the solution'Show me the solution'
Give me a hint'Give me a hint'
Show details'Show details'
Instructor Note'Instructor Note'
SummaryAndSetup'Summary and Setup'
SummaryAndSchedule'Summary and Schedule'
AllInOneView'All in One View'
PageNotFound'Page not found'
AllImages'All Images'
Anchor'anchor'
Figure'Figure {element}'
ImageOf'Image {i} of {n}: {sQuote(txt)}'
Finish'Finish'

See also

known_languages() for a list of known language codes.

Examples

# When sandpaper is loaded, these functions return English
snd <- asNamespace("sandpaper")
head(snd$tr_varnish())
#> $SkipToMain
#> [1] "Skip to main content"
#> 
#> $iPreAlpha
#> [1] "Pre-Alpha"
#> 
#> $PreAlphaNote
#> [1] "This lesson is in the pre-alpha phase, which means that it is in early development, but has not yet been taught."
#> 
#> $AlphaNote
#> [1] "This lesson is in the alpha phase, which means that it has been taught once and lesson authors are iterating on feedback."
#> 
#> $iAlpha
#> [1] "Alpha"
#> 
#> $BetaNote
#> [1] "This lesson is in the beta phase, which means that it is ready for teaching by instructors outside of the original author team."
#> 
head(snd$tr_computed())
#> $OUTPUT
#> [1] "OUTPUT"
#> 
#> $WARNING
#> [1] "WARNING"
#> 
#> $ERROR
#> [1] "ERROR"
#> 
#> $Overview
#> [1] "Overview"
#> 
#> $Questions
#> [1] "Questions"
#> 
#> $Objectives
#> [1] "Objectives"
#> 

# Setting language to Spanish will translate the computed and varnish
snd$set_language("es")
head(snd$tr_varnish())
#> $SkipToMain
#> [1] "Ir al contenido principal"
#> 
#> $iPreAlpha
#> [1] "Pre-Alfa"
#> 
#> $PreAlphaNote
#> [1] "Esta lección se encuentra en la fase pre-alfa, lo que significa que está en las primeras etapas de desarrollo, pero aún no se ha enseñado."
#> 
#> $AlphaNote
#> [1] "Esta lección se encuentra en la fase alfa, lo que significa que se ha enseñado una vesy las autoras de la lección están trabajando en los comentarios."
#> 
#> $iAlpha
#> [1] "Alfa"
#> 
#> $BetaNote
#> [1] "Esta lección se encuentra en la fase beta, lo que significa que está lista para enseñarpor instructoras que no son parte del equipo original de autoras"
#> 
head(snd$tr_computed())
#> $OUTPUT
#> [1] "SALIDA"
#> 
#> $WARNING
#> [1] "ADVERTENCIA"
#> 
#> $ERROR
#> [1] "ERROR"
#> 
#> $Overview
#> [1] "Hoja de ruta"
#> 
#> $Questions
#> [1] "Preguntas"
#> 
#> $Objectives
#> [1] "Objetivos"
#> 

# The source will remain the same
head(snd$tr_src("varnish"))
#> $SkipToMain
#> [1] "Skip to main content"
#> 
#> $iPreAlpha
#> [1] "Pre-Alpha"
#> 
#> $PreAlphaNote
#> [1] "This lesson is in the pre-alpha phase, which means that it is in early development, but has not yet been taught."
#> 
#> $AlphaNote
#> [1] "This lesson is in the alpha phase, which means that it has been taught once and lesson authors are iterating on feedback."
#> 
#> $iAlpha
#> [1] "Alpha"
#> 
#> $BetaNote
#> [1] "This lesson is in the beta phase, which means that it is ready for teaching by instructors outside of the original author team."
#> 
head(snd$tr_src("computed"))
#> $OUTPUT
#> [1] "OUTPUT"
#> 
#> $WARNING
#> [1] "WARNING"
#> 
#> $ERROR
#> [1] "ERROR"
#> 
#> $Overview
#> [1] "Overview"
#> 
#> $Questions
#> [1] "Questions"
#> 
#> $Objectives
#> [1] "Objectives"
#> 

# Running set_language with no arguments defaults to English
snd$set_language()
head(snd$tr_varnish())
#> $SkipToMain
#> [1] "Skip to main content"
#> 
#> $iPreAlpha
#> [1] "Pre-Alpha"
#> 
#> $PreAlphaNote
#> [1] "This lesson is in the pre-alpha phase, which means that it is in early development, but has not yet been taught."
#> 
#> $AlphaNote
#> [1] "This lesson is in the alpha phase, which means that it has been taught once and lesson authors are iterating on feedback."
#> 
#> $iAlpha
#> [1] "Alpha"
#> 
#> $BetaNote
#> [1] "This lesson is in the beta phase, which means that it is ready for teaching by instructors outside of the original author team."
#> 
head(snd$tr_computed())
#> $OUTPUT
#> [1] "OUTPUT"
#> 
#> $WARNING
#> [1] "WARNING"
#> 
#> $ERROR
#> [1] "ERROR"
#> 
#> $Overview
#> [1] "Overview"
#> 
#> $Questions
#> [1] "Questions"
#> 
#> $Objectives
#> [1] "Objectives"
#>