You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Eventually we will want to convert the term "episode" to "chapter." This transition should not be sudden or unexpected, so this is very much a future plan.
These all the places that contain the word 'episode' (which is a lot because the class name needs to change):
R/validate_headings.R:11:#' @note This is an internal function implemented for the [Episode] and [Lesson]R/validate_headings.R:26:#' e <- l$episodes[[3]]R/validate_divs.R:1:#' Validate Callout Blocks for sandpaper episodesR/validate_links.R:57:#' This function is internal. Please use the methods for the [Episode] andR/validate_links.R:60:#' @param yrn a [tinkr::yarn] or [Episode] object.R/validate_links.R:67:#' e <- l$episodes[[3]]R/validate_links.R:252:# TODO: add Episode$sandpaper to be `TRUE` if the _initial_ state was aR/validate_links.R:255:# Add home path, assuming that we can link out from the episode and it willR/validate_links.R:260:".", "episodes", "learners", "instructors", "profiles",
R/validate_links.R:262:"_episodes", "_episodes_rmd", "_extras", "_includes"tests/testthat/examples/link-liquid.xml:19:</link><linkxmlns="http://commonmark.org/xml/1.0"destination="{{ page.root }}{% link _episodes/03-expertise.md %}#expertise-and-teaching"sourcepos="72:3-72:243">tests/testthat/examples/link-liquid.xml:83:</link><linkxmlns="http://commonmark.org/xml/1.0"destination="{{ page.root }}{% link _episodes/05-memory.md %}#why-guided-practice-is-important"sourcepos="55:6-55:108">tests/testthat/examples/link-liquid.xml:85:</link><linkxmlns="http://commonmark.org/xml/1.0"destination="{{ page.root }}{% link _episodes/09-motivation.md %}"sourcepos="71:1-71:124">tests/testthat/examples/link-liquid.xml:87:</link><linkxmlns="http://commonmark.org/xml/1.0"destination="{{ page.root }}{% link _episodes/09-motivation.md %}"sourcepos="106:25-106:257">tests/testthat/examples/link-liquid.xml:89:</link><linkxmlns="http://commonmark.org/xml/1.0"destination="{{ page.root }}{% link _episodes/10-eia.md %}"sourcepos="188:1-188:84">tests/testthat/examples/link-liquid.xml:90:<text>earlierepisode</text>tests/testthat/examples/link-liquid.xml:91:</link><linkxmlns="http://commonmark.org/xml/1.0"destination="{{ page.root }}/{% link _episodes/06-feedback.md %}#minute-cards"sourcepos="365:3-365:93">tests/testthat/test-Lesson.R:16: expect_named(snd$episodes, "intro.Rmd")
tests/testthat/test-Lesson.R:41: expect_length(frg$episodes, 4)
tests/testthat/test-Lesson.R:42: expect_s3_class(frg$episodes[[1]], "Episode")
tests/testthat/test-Lesson.R:43: expect_s3_class(frg$episodes[[2]], "Episode")
tests/testthat/test-Lesson.R:44: expect_s3_class(frg$episodes[[3]], "Episode")
tests/testthat/test-Lesson.R:45: expect_s3_class(frg$episodes[[4]], "Episode")
tests/testthat/test-Lesson.R:47: expect_equal(names(frg$episodes), unname(purrr::map_chr(frg$episodes, "name")))
tests/testthat/test-Lesson.R:48: expect_equal(frg$path, unique(purrr::map_chr(frg$episodes, "lesson")))
tests/testthat/test-Lesson.R:89: expect_named(chal, c("Episode", "Block", "from", "to", "pos", "level"))
tests/testthat/test-Lesson.R:95: expect_named(chalr, c("Episode", "Block", "from", "to", "pos", "level"))
tests/testthat/test-Lesson.R:114: expect_equal(xml2::xml_length(frg2$episodes[[1]]$body), 2)
tests/testthat/test-Lesson.R:115: expect_equal(xml2::xml_length(frg2$isolate_blocks()$episodes[[1]]$body), 0)
tests/testthat/test-Lesson.R:117: expect_equal(xml2::xml_length(frg$episodes[[1]]$body), 2)
tests/testthat/test-Lesson.R:121:test_that("Lesson class can remove episodes with $thin()", {
tests/testthat/test-Lesson.R:125: expect_length(frg2$episodes, 4)
tests/testthat/test-Lesson.R:126: expect_message(frg2$thin(), "Removing 1 episode: 10-lunch.md", fixed=TRUE)
tests/testthat/test-Lesson.R:127: expect_length(frg2$episodes, 3)
tests/testthat/test-Lesson.R:128: expect_named(frg2$episodes, c("12-for-loops.md", "14-looping-data-sets.md", "17-scope.md"))
tests/testthat/test-Lesson.R:131: expect_message(frg2$reset()$thin(), "Removing 1 episode: 10-lunch.md", fixed=TRUE)
tests/testthat/test-Lesson.R:133: expect_length(frg$episodes, 4)
tests/testthat/test-Lesson.R:135: expect_length(frg$episodes, 3)
tests/testthat/test-Lesson.R:136: expect_named(frg$episodes, c("12-for-loops.md", "14-looping-data-sets.md", "17-scope.md"))
tests/testthat/helper-test-div.R:2:expect_moved_yaml<-function(episode, class, position) {
tests/testthat/helper-test-div.R:4:act<- quasi_label(rlang::enquo(episode), arg="body")
tests/testthat/_snaps/conversion.md:1:# Episodes with commonmark-violating liquid relative links can be readtests/testthat/_snaps/conversion.md:16:# Episodes can be converted to use sandpapertests/testthat/test-div.R:173:e<-Episode$new(tmp)
tests/testthat/test-get_stylesheet.R:10:# load the test episode and confirm outputtests/testthat/test-get_stylesheet.R:11:scope<-fs::path(lesson_fragment(), "_episodes", "17-scope.md")
tests/testthat/test-get_stylesheet.R:12:e<-Episode$new(scope)
tests/testthat/test-images.R:1:imt<-Episode$new(test_path("examples", "image-test.md"))
tests/testthat/test-get_list_block.R:1:scope<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-get_list_block.R:2:e<-Episode$new(scope)
tests/testthat/test-get_challenges.R:10: expect_length(get_challenges(frg$episodes[[expected[1]]]$body), 0)
tests/testthat/test-get_challenges.R:11: expect_length(get_challenges(frg$episodes[[expected[2]]]$body), 3)
tests/testthat/test-get_challenges.R:12: expect_length(get_challenges(frg$episodes[[expected[3]]]$body), 2)
tests/testthat/test-get_challenges.R:17: expect_s3_class(get_challenges(frg$episodes[[expected[1]]]$body), "xml_nodeset")
tests/testthat/test-validation.R:1:vh<-Episode$new(test_path("examples/validation-headings.md"))
tests/testthat/test-validation.R:2:dv<-Episode$new(test_path("examples/validation-divs.md"))
tests/testthat/test-validation.R:3:cats<-Episode$new(test_path("examples/image-test.md"))
tests/testthat/test-validation.R:4:link<-Episode$new(test_path("examples/link-test.md"))
tests/testthat/test-validation.R:5:loop<-Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))
tests/testthat/test-conversion.R:3:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-conversion.R:4:e<-Episode$new(loop)
tests/testthat/test-conversion.R:6: expect_warning(e$use_sandpaper(), "episode body missing")
tests/testthat/test-conversion.R:7: expect_warning(e$use_dovetail(), "episode body missing")
tests/testthat/test-conversion.R:11:test_that("Episodes with commonmark-violating liquid relative links can be read", {
tests/testthat/test-conversion.R:16: expect_error(Episode$new(lnsp))
tests/testthat/test-conversion.R:18:tmp<-Episode$new(lnsp, fix_liquid=TRUE)
tests/testthat/test-conversion.R:24:test_that("Episodes without include=FALSE in setup chunk are still valid", {
tests/testthat/test-conversion.R:26:rast<-fs::path(lesson_fragment("rmd-lesson"), "_episodes_rmd", "01-test.Rmd")
tests/testthat/test-conversion.R:27:e<-Episode$new(rast, process_tags=TRUE, fix_links=FALSE)
tests/testthat/test-conversion.R:47:test_that("Episodes can be converted to use sandpaper", {
tests/testthat/test-conversion.R:49:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-conversion.R:50:e<-Episode$new(loop)
tests/testthat/test-conversion.R:159:test_that("Episodes can be converted to use dovetail", {
tests/testthat/test-conversion.R:161:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-conversion.R:162:e<-Episode$new(loop)
tests/testthat/test-conversion.R:195:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-conversion.R:196:e<-Episode$new(loop)
tests/testthat/test-conversion.R:252:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-conversion.R:253:e<-Episode$new(loop)
tests/testthat/test-conversion.R:310:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-conversion.R:311:e<-Episode$new(loop)
tests/testthat/test-conversion.R:365:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-conversion.R:366:e<-Episode$new(loop)
tests/testthat/test-fix_sandpaper_links.R:2:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-fix_sandpaper_links.R:3:e<-Episode$new(loop)
tests/testthat/test-get_lesson.R:19:fs::dir_create(dd, "_episodes")
tests/testthat/test-get_lesson.R:42: names(frg$episodes),
tests/testthat/test-get_lesson.R:57: expect_true(fs::dir_exists(fs::path(d, "carpentries--lesson-example", "_episodes")))
tests/testthat/test-get_lesson.R:58:# The episodes in the object are accounted fortests/testthat/test-get_lesson.R:59:episodes<- c(
tests/testthat/test-get_lesson.R:70: expect_named(lex$files, episodes)
tests/testthat/test-get_lesson.R:87: expect_true(fs::dir_exists(fs::path(d, "carpentries--lesson-example", "_episodes")))
tests/testthat/test-get_lesson.R:88:# The episodes in the object are accounted fortests/testthat/test-get_lesson.R:89:episodes<- c(
tests/testthat/test-get_lesson.R:100: expect_named(lex$files, episodes)
tests/testthat/test-get_lesson.R:116: expect_true(fs::dir_exists(fs::path(d, "carpentries--lesson-example", "_episodes")))
tests/testthat/test-get_lesson.R:117:# The episodes in the object are accounted fortests/testthat/test-get_lesson.R:118:episodes<- c(
tests/testthat/test-get_lesson.R:129: expect_named(lex$files, episodes)
tests/testthat/test-get_lesson.R:148:lex$episodes,
tests/testthat/test-get_lesson.R:155:lex$episodes,
tests/testthat/test-get_lesson.R:177:lex$episodes,
tests/testthat/test-get_lesson.R:184:lex$episodes,
tests/testthat/test-get_lesson.R:190:lex$episodes,
tests/testthat/test-get_lesson.R:197:lex$episodes,
tests/testthat/test-get_lesson.R:203:lex$episodes,
tests/testthat/test-get_lesson.R:210:lex$episodes,
tests/testthat/test-get_lesson.R:222:episodes<- c(
tests/testthat/test-get_lesson.R:233: expect_length(lex$files, length(episodes))
tests/testthat/test-get_lesson.R:234: expect_named(lex$files, episodes)
tests/testthat/test-get_lesson.R:238: names(problems) <-episodestests/testthat/test-get_lesson.R:252: names(n_solutions) <-episodestests/testthat/test-get_lesson.R:258:# All the blocktypes are in episode 04tests/testthat/test-get_lesson.R:279:eps<-glue::glue_collapse(episodes[-(4:5)], sep=', ', last=', and ')
tests/testthat/test-get_lesson.R:282:glue::glue("Removing 6 episodes: {eps}")
tests/testthat/test-get_lesson.R:285:# $episodes ------------------------------------------------------------------tests/testthat/test-get_lesson.R:286: expect_named(lex$episodes, episodes[4:5])
tests/testthat/test-get_lesson.R:287: expect_s3_class(lex$episodes[[1]], "Episode")
tests/testthat/test-get_lesson.R:288: expect_s3_class(lex$episodes[[2]], "Episode")
tests/testthat/test-get_lesson.R:298: expect_length(lex$episodes[[4]]$get_blocks(), 12)
tests/testthat/test-get_lesson.R:299: expect_length(lex$episodes[[4]]$unblock()$get_divs(), 15)
tests/testthat/test-get_lesson.R:300: expect_length(lex$episodes[[4]]$challenges, 1)
tests/testthat/test-get_lesson.R:301: expect_length(lex$episodes[[4]]$solutions, 2)
tests/testthat/test-get_lesson.R:314:"could not find _episodes/, using _episodes_rmd/ as the source"tests/testthat/test-get_lesson.R:318: expect_s3_class(rni$episodes[[1]], "Episode")
tests/testthat/test-get_lesson.R:330:"could not find either _episodes/ or _episodes_rmd/",
R/use_sandpaper.R:3:#' @param body the xml body of an episodeR/use_sandpaper.R:11: warning("episode body missing", call.=FALSE)
R/utils.R:37:the_episodes<-fs::dir_ls(src, glob="*md")
R/utils.R:38:the_names<-fs::path_file(the_episodes)
R/utils.R:44:the_episodes<-the_episodes[the_order]
R/utils.R:49:if (!any(grepl("\\.R?md$", the_episodes))) {
R/utils.R:55:episodes<-purrr::map(the_episodes, Episode$new, ...)
R/utils.R:57:purrr::walk(episodes, ~.x$confirm_sandpaper())
R/utils.R:60:# Names of the episodes will be the filename, not the basenameR/utils.R:61: names(episodes) <-the_namesR/utils.R:62:return(episodes)
R/read_jekyll_episodes.R:1:read_jekyll_episodes<-function(path=NULL, rmd=FALSE, ...) {
R/read_jekyll_episodes.R:3:md_src<-fs::path(path, "_episodes")
R/read_jekyll_episodes.R:4:rmd_src<-fs::path(path, "_episodes_rmd")
R/read_jekyll_episodes.R:10: stop(glue::glue("could not find either _episodes/ or _episodes_rmd/ in {path}"))
R/read_jekyll_episodes.R:35: message("could not find _episodes/, using _episodes_rmd/ as the source")
R/read_jekyll_episodes.R:37: stop(glue::glue("The _episodes/ directory must have (R)markdown files"),
R/read_jekyll_episodes.R:56:return(list(episodes=eps, rmd=rmd))
R/use_dovetail.R:14:#' @param body the episode body to convertR/use_dovetail.R:15:#' @return the episode, invisiblyR/use_dovetail.R:20: warning("episode body missing", call.=FALSE)
R/to_dovetail.R:19:#' blo <- frg$episodes$`14-looping-data-sets.md`$get_blocks()[[2]]tests/testthat/_snaps/Lesson.md:86:# Episode: "For Loops" tests/testthat/_snaps/Lesson.md:115:# Episode: "Looping Over Data Sets" tests/testthat/_snaps/Lesson.md:133:::warningfile=_episodes/12-for-loops.md,line=183:: (duplicated)
tests/testthat/_snaps/Lesson.md:134:::warningfile=_episodes/12-for-loops.md,line=200:: (duplicated)
tests/testthat/_snaps/Lesson.md:135:::warningfile=_episodes/12-for-loops.md,line=227:: (duplicated)
tests/testthat/_snaps/Lesson.md:136:::warningfile=_episodes/12-for-loops.md,line=252:: (duplicated)
tests/testthat/_snaps/Lesson.md:137:::warningfile=_episodes/12-for-loops.md,line=270:: (duplicated)
tests/testthat/_snaps/Lesson.md:138:::warningfile=_episodes/12-for-loops.md,line=289:: (duplicated)
tests/testthat/_snaps/Lesson.md:139:::warningfile=_episodes/12-for-loops.md,line=305:: (duplicated)
tests/testthat/_snaps/Lesson.md:140:::warningfile=_episodes/12-for-loops.md,line=336:: (duplicated)
tests/testthat/_snaps/Lesson.md:141:::warningfile=_episodes/12-for-loops.md,line=371:: (duplicated)
tests/testthat/_snaps/Lesson.md:142:::warningfile=_episodes/12-for-loops.md,line=400:: (duplicated)
tests/testthat/_snaps/Lesson.md:143:::warningfile=_episodes/14-looping-data-sets.md,line=119:: (duplicated)
tests/testthat/_snaps/Lesson.md:144:::warningfile=_episodes/14-looping-data-sets.md,line=143:: (duplicated)
tests/testthat/_snaps/Lesson.md:145:::warningfile=_episodes/14-looping-data-sets.md,line=162:: (duplicated)
tests/testthat/_snaps/Lesson.md:157:::warningfile=_episodes/14-looping-data-sets.md,line=191:: [missingfile] ../no-workie.svgtests/testthat/_snaps/Lesson.md:158:::warningfile=_episodes/14-looping-data-sets.md,line=195:: [imagemissingalt-text]
tests/testthat/_snaps/Lesson.md:159:::warningfile=_episodes/14-looping-data-sets.md,line=197:: [missingfile] ../no-workie.svg [imagemissingalt-text]
tests/testthat/_snaps/Lesson.md:168:# Episode: "For Loops" tests/testthat/_snaps/Lesson.md:197:# Episode: "Looping Over Data Sets" tests/testthat/_snaps/Lesson.md:215:::warningfile=_episodes/12-for-loops.md,line=183:: (duplicated)
tests/testthat/_snaps/Lesson.md:216:::warningfile=_episodes/12-for-loops.md,line=200:: (duplicated)
tests/testthat/_snaps/Lesson.md:217:::warningfile=_episodes/12-for-loops.md,line=227:: (duplicated)
tests/testthat/_snaps/Lesson.md:218:::warningfile=_episodes/12-for-loops.md,line=252:: (duplicated)
tests/testthat/_snaps/Lesson.md:219:::warningfile=_episodes/12-for-loops.md,line=270:: (duplicated)
tests/testthat/_snaps/Lesson.md:220:::warningfile=_episodes/12-for-loops.md,line=289:: (duplicated)
tests/testthat/_snaps/Lesson.md:221:::warningfile=_episodes/12-for-loops.md,line=305:: (duplicated)
tests/testthat/_snaps/Lesson.md:222:::warningfile=_episodes/12-for-loops.md,line=336:: (duplicated)
tests/testthat/_snaps/Lesson.md:223:::warningfile=_episodes/12-for-loops.md,line=371:: (duplicated)
tests/testthat/_snaps/Lesson.md:224:::warningfile=_episodes/12-for-loops.md,line=400:: (duplicated)
tests/testthat/_snaps/Lesson.md:225:::warningfile=_episodes/14-looping-data-sets.md,line=119:: (duplicated)
tests/testthat/_snaps/Lesson.md:226:::warningfile=_episodes/14-looping-data-sets.md,line=143:: (duplicated)
tests/testthat/_snaps/Lesson.md:227:::warningfile=_episodes/14-looping-data-sets.md,line=162:: (duplicated)
tests/testthat/_snaps/Lesson.md:239:::warningfile=_episodes/14-looping-data-sets.md,line=191:: [missingfile] ../no-workie.svgtests/testthat/_snaps/Lesson.md:240:::warningfile=_episodes/14-looping-data-sets.md,line=195:: [imagemissingalt-text]
tests/testthat/_snaps/Lesson.md:241:::warningfile=_episodes/14-looping-data-sets.md,line=197:: [missingfile] ../no-workie.svg [imagemissingalt-text]
tests/testthat/_snaps/Lesson.md:250:# Episode: "For Loops" tests/testthat/_snaps/Lesson.md:279:# Episode: "Looping Over Data Sets" tests/testthat/_snaps/Lesson.md:297:::warningfile=_episodes/12-for-loops.md,line=183:: (duplicated)
tests/testthat/_snaps/Lesson.md:298:::warningfile=_episodes/12-for-loops.md,line=200:: (duplicated)
tests/testthat/_snaps/Lesson.md:299:::warningfile=_episodes/12-for-loops.md,line=227:: (duplicated)
tests/testthat/_snaps/Lesson.md:300:::warningfile=_episodes/12-for-loops.md,line=252:: (duplicated)
tests/testthat/_snaps/Lesson.md:301:::warningfile=_episodes/12-for-loops.md,line=270:: (duplicated)
tests/testthat/_snaps/Lesson.md:302:::warningfile=_episodes/12-for-loops.md,line=289:: (duplicated)
tests/testthat/_snaps/Lesson.md:303:::warningfile=_episodes/12-for-loops.md,line=305:: (duplicated)
tests/testthat/_snaps/Lesson.md:304:::warningfile=_episodes/12-for-loops.md,line=336:: (duplicated)
tests/testthat/_snaps/Lesson.md:305:::warningfile=_episodes/12-for-loops.md,line=371:: (duplicated)
tests/testthat/_snaps/Lesson.md:306:::warningfile=_episodes/12-for-loops.md,line=400:: (duplicated)
tests/testthat/_snaps/Lesson.md:307:::warningfile=_episodes/14-looping-data-sets.md,line=119:: (duplicated)
tests/testthat/_snaps/Lesson.md:308:::warningfile=_episodes/14-looping-data-sets.md,line=143:: (duplicated)
tests/testthat/_snaps/Lesson.md:309:::warningfile=_episodes/14-looping-data-sets.md,line=162:: (duplicated)
tests/testthat/_snaps/Lesson.md:321:::warningfile=_episodes/14-looping-data-sets.md,line=191:: [missingfile] ../no-workie.svgtests/testthat/_snaps/Lesson.md:322:::warningfile=_episodes/14-looping-data-sets.md,line=195:: [imagemissingalt-text]
tests/testthat/_snaps/Lesson.md:323:::warningfile=_episodes/14-looping-data-sets.md,line=197:: [missingfile] ../no-workie.svg [imagemissingalt-text]
tests/testthat/_snaps/Lesson.md:332:# Episode: "For Loops" tests/testthat/_snaps/Lesson.md:361:# Episode: "Looping Over Data Sets" tests/testthat/_snaps/Lesson.md:379:::warningfile=_episodes/12-for-loops.md,line=183:: (duplicated)
tests/testthat/_snaps/Lesson.md:380:::warningfile=_episodes/12-for-loops.md,line=200:: (duplicated)
tests/testthat/_snaps/Lesson.md:381:::warningfile=_episodes/12-for-loops.md,line=227:: (duplicated)
tests/testthat/_snaps/Lesson.md:382:::warningfile=_episodes/12-for-loops.md,line=252:: (duplicated)
tests/testthat/_snaps/Lesson.md:383:::warningfile=_episodes/12-for-loops.md,line=270:: (duplicated)
tests/testthat/_snaps/Lesson.md:384:::warningfile=_episodes/12-for-loops.md,line=289:: (duplicated)
tests/testthat/_snaps/Lesson.md:385:::warningfile=_episodes/12-for-loops.md,line=305:: (duplicated)
tests/testthat/_snaps/Lesson.md:386:::warningfile=_episodes/12-for-loops.md,line=336:: (duplicated)
tests/testthat/_snaps/Lesson.md:387:::warningfile=_episodes/12-for-loops.md,line=371:: (duplicated)
tests/testthat/_snaps/Lesson.md:388:::warningfile=_episodes/12-for-loops.md,line=400:: (duplicated)
tests/testthat/_snaps/Lesson.md:389:::warningfile=_episodes/14-looping-data-sets.md,line=119:: (duplicated)
tests/testthat/_snaps/Lesson.md:390:::warningfile=_episodes/14-looping-data-sets.md,line=143:: (duplicated)
tests/testthat/_snaps/Lesson.md:391:::warningfile=_episodes/14-looping-data-sets.md,line=162:: (duplicated)
tests/testthat/_snaps/Lesson.md:403:::warningfile=_episodes/14-looping-data-sets.md,line=191:: [missingfile] ../no-workie.svgtests/testthat/_snaps/Lesson.md:404:::warningfile=_episodes/14-looping-data-sets.md,line=195:: [imagemissingalt-text]
tests/testthat/_snaps/Lesson.md:405:::warningfile=_episodes/14-looping-data-sets.md,line=197:: [missingfile] ../no-workie.svg [imagemissingalt-text]
tests/testthat/_snaps/validation.md:20:# Episode: "Errors in Headings" tests/testthat/_snaps/validation.md:39:_episodes/14-looping-data-sets.md:119 (duplicated)
tests/testthat/_snaps/validation.md:40:_episodes/14-looping-data-sets.md:143 (duplicated)
tests/testthat/_snaps/validation.md:41:_episodes/14-looping-data-sets.md:162 (duplicated)
tests/testthat/_snaps/validation.md:42:# Episode: "Looping Over Data Sets" tests/testthat/_snaps/validation.md:87:_episodes/14-looping-data-sets.md:191 [missingfile] ../no-workie.svgtests/testthat/_snaps/validation.md:88:_episodes/14-looping-data-sets.md:195 [imagemissingalt-text]
tests/testthat/_snaps/validation.md:89:_episodes/14-looping-data-sets.md:197 [missingfile] ../no-workie.svg [imagemissingalt-text]
tests/testthat/_snaps/validation.md:154:# Episode: "Errors in Headings" tests/testthat/_snaps/validation.md:186:# Episode: "Errors in Headings" tests/testthat/_snaps/validation.md:218:# Episode: "Errors in Headings" tests/testthat/_snaps/validation.md:250:# Episode: "Errors in Headings" tests/testthat/_snaps/validation.md:542:# Episode: "Errors in Headings" tests/testthat/_snaps/validation.md:563:::warningfile=_episodes/14-looping-data-sets.md,line=119:: (duplicated)
tests/testthat/_snaps/validation.md:564:::warningfile=_episodes/14-looping-data-sets.md,line=143:: (duplicated)
tests/testthat/_snaps/validation.md:565:::warningfile=_episodes/14-looping-data-sets.md,line=162:: (duplicated)
tests/testthat/_snaps/validation.md:568:# Episode: "Looping Over Data Sets" tests/testthat/test-Episode.R:1:test_that("Episodes can be created and are valid", {
tests/testthat/test-Episode.R:3:scope<-fs::path(lesson_fragment(), "_episodes", "17-scope.md")
tests/testthat/test-Episode.R:4:e<-Episode$new(scope)
tests/testthat/test-Episode.R:6: expect_s3_class(e, "Episode")
tests/testthat/test-Episode.R:35:test_that("Episodes from sandpaper will have links included", {
tests/testthat/test-Episode.R:41:e<-Episode$new(tep, fix_links=FALSE)
tests/testthat/test-Episode.R:44:e<-Episode$new(tep, fix_links=FALSE)
tests/testthat/test-Episode.R:50:test_that("Episodes with image tags do not error", {
tests/testthat/test-Episode.R:52:ep<-Episode$new(test_path("examples", "post-image-tag.md"))
tests/testthat/test-Episode.R:70:e<-Episode$new(test_path("examples", "mismatched-div.txt"),
tests/testthat/test-Episode.R:78: expect_s3_class(e, "Episode")
tests/testthat/test-Episode.R:83:e<-Episode$new(test_path("examples", "handout.Rmd"),
tests/testthat/test-Episode.R:96:# handout with a file returns the original Episode objecttests/testthat/test-Episode.R:119:test_that("Episodes can be reset if needed", {
tests/testthat/test-Episode.R:121:scope<-fs::path(lesson_fragment(), "_episodes", "17-scope.md")
tests/testthat/test-Episode.R:122:e<-Episode$new(scope)
tests/testthat/test-Episode.R:136:scope<-fs::path(lesson_fragment(), "_episodes", "17-scope.md")
tests/testthat/test-Episode.R:137:e<-Episode$new(scope)
tests/testthat/test-Episode.R:185:scope<-fs::path(lesson_fragment(), "_episodes", "17-scope.md")
tests/testthat/test-Episode.R:186:e<-Episode$new(scope)
tests/testthat/test-Episode.R:209:# The first thing in the episode is a block quotetests/testthat/test-Episode.R:218:scope<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-Episode.R:219:e<-Episode$new(scope)
tests/testthat/test-Episode.R:259:scope<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-Episode.R:260:e<-Episode$new(scope)
tests/testthat/test-Episode.R:307:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-Episode.R:308:e<-Episode$new(loop)
tests/testthat/test-Episode.R:372:loop<-fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")
tests/testthat/test-Episode.R:373:e<-Episode$new(loop)
tests/testthat/test-Episode.R:434:floop<-fs::path(lesson_fragment(), "_episodes", "12-for-loops.md")
tests/testthat/test-Episode.R:435:e<-Episode$new(floop)
tests/testthat/test-Episode.R:467:floop<-fs::path(lesson_fragment(), "_episodes", "12-for-loops.md")
tests/testthat/test-Episode.R:468:e<-Episode$new(floop)
tests/testthat/test-Episode.R:532:scope<-fs::path(lesson_fragment(), "_episodes", "17-scope.md")
tests/testthat/test-Episode.R:533:e<-Episode$new(scope)
tests/testthat/test-Episode.R:538:e<-Episode$new(scope)
tests/testthat/test-Episode.R:543:test_that("An episode can be cloned deeply", {
tests/testthat/test-Episode.R:545:scope<-fs::path(lesson_fragment(), "_episodes", "17-scope.md")
tests/testthat/test-Episode.R:546:e<-Episode$new(scope)
tests/testthat/test-Episode.R:572:sunshine<-fs::path(lesson_fragment(), "_episodes", "sunshine.md")
tests/testthat/test-Episode.R:574: expect_error(Episode$new(sunshine), msg)
tests/testthat/test-Episode.R:581:sunshine<-fs::path(lesson_fragment(), "_episodes", "sunshine.md")
tests/testthat/test-Episode.R:583: expect_error(Episode$new(sunshine), msg)
R/make_heading_table.R:14:#' path <- file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")R/make_heading_table.R:15:#' loop <- Episode$new(path)R/make_link_table.R:1:#' Create a table of parsed URLs from a single Episode object. R/make_link_table.R:3:#' @param yrn an Episode class objectR/make_link_table.R:22:#' loop <- fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")R/make_link_table.R:23:#' make_link_table(Episode$new(loop))R/make_div_table.R:1:#' Create a table of divs in an episodeR/lesson_fragment.R:6:#' @return a path to a lesson fragment that contains one `_episodes` directoryR/liquid_to_commonmark.R:28:#' py1 <- get_code(frg1$episodes[["17-scope.md"]]$body, ".language")R/liquid_to_commonmark.R:29:#' py2 <- get_code(frg2$episodes[["17-scope.md"]]$body, ".language")R/Lesson.R:4:#' This is a wrapper for several [Episode] class objects.R/Lesson.R:6:#' Lessons are made of up several episodes within the `_episodes/` directory ofR/Lesson.R:7:#' a lesson. This class keeps track of several episodes and allows us to switchR/Lesson.R:8:#' between RMarkdown and markdown episodesR/Lesson.R:16:#' @field episodes \[`list`\] list of [Episode] class objects representingR/Lesson.R:17:#' the episodes of the lesson.R/Lesson.R:18:episodes=NULL,
R/Lesson.R:20:#' @field extra \[`list`\] list of [Episode] class objects representingR/Lesson.R:26:#' @field rmd \[`logical`\] when `TRUE`, the episodes represent RMarkdownR/Lesson.R:32:#' folder called `_episodes` within that contains markdown episodes. R/Lesson.R:41:#' @param ... arguments passed on to [Episode$new][Episode]R/Lesson.R:42:#' @return a new Lesson object that contains a list of [Episode] objects inR/Lesson.R:43:#' `$episodes`R/Lesson.R:47:#' frg$episodesR/Lesson.R:51:jeky<- read_jekyll_episodes(path, rmd, ...)
R/Lesson.R:52:self$episodes<-jeky$episodesR/Lesson.R:55:episode_path<-fs::path(path, "episodes")
R/Lesson.R:59:self$episodes<- read_markdown_files(
R/Lesson.R:60:episode_path, cfg, process_tags=FALSE, ...)
R/Lesson.R:83:#' name of each episode.R/Lesson.R:85:nms<-if (path) purrr::map(self$episodes, "path") else names(self$episodes)
R/Lesson.R:86:res<-purrr::map(self$episodes, ~.x$get_blocks(type=type, level=level))
R/Lesson.R:95:#' name of each episode.R/Lesson.R:98:#' the `get_challenge_graph()` method in [Episode].R/Lesson.R:100:#' solutions in the output. See [Episode] for more details.R/Lesson.R:102:nms<-if (path) purrr::map(self$episodes, "path") else names(self$episodes)
R/Lesson.R:103:eps<-self$episodesR/Lesson.R:106:res<-purrr::map_dfr(eps, ~.x$get_challenge_graph(recurse), .id="Episode")
R/Lesson.R:117:#' name of each episode.R/Lesson.R:119:nms<-if (path) purrr::map(self$episodes, "path") else names(self$episodes)
R/Lesson.R:120:res<-purrr::map(self$episodes, "solutions")
R/Lesson.R:126:#' Remove episodes that have no challengesR/Lesson.R:128:#' episode removed is reported. Set to `FALSE` to remove this behavior.R/Lesson.R:138:epis<-if (sum(to_remove) >1) "episodes"else"episode"R/Lesson.R:140:self$episodes[to_remove] <-NULLR/Lesson.R:145:self$episodes[lengths(self$challenges()) ==0] <-NULLR/Lesson.R:151:#' Re-read all Episodes from diskR/Lesson.R:155:#' frg$episodes[[1]]$bodyR/Lesson.R:156:#' frg$isolate_blocks()$episodes[[1]]$body # emptyR/Lesson.R:157:#' frg$reset()$episodes[[1]]$body # resetR/Lesson.R:166:#' @return the Episode object, invisiblyR/Lesson.R:171:purrr::walk(self$episodes, ~.x$isolate_blocks())
R/Lesson.R:175:#' @description create a handout for all episodes in the lessonR/Lesson.R:187:hands<-purrr::map(self$episodes,
R/Lesson.R:217:#' - **episode** the filename of the episodeR/Lesson.R:231:res<-purrr::map(self$episodes,
R/Lesson.R:235:res<-dplyr::bind_rows(res, .id="episodes")
R/Lesson.R:254:#' to the number of episodes in the lesson with an extra column indicatingR/Lesson.R:255:#' the type of validation. See the same method in the [Episode] class for R/Lesson.R:261:res<-purrr::map(self$episodes, ~.x$validate_divs(warn=FALSE))
R/Lesson.R:287:#' to the number of episodes in the lesson with an extra column indicatingR/Lesson.R:288:#' the type of validation. See the same method in the [Episode] class for R/Lesson.R:294:res<-purrr::map(self$episodes, ~.x$validate_links(warn=FALSE))
R/Lesson.R:306:#' @field n_problems number of problems per episodeR/Lesson.R:308:purrr::map_int(self$episodes, ~length(.x$show_problems))
R/Lesson.R:311:#' @field show_problems contents of the problems per episodeR/Lesson.R:313:res<-purrr::map(self$episodes, "show_problems")
R/Lesson.R:317:#' @field files the source files for each episodeR/Lesson.R:319:purrr::map_chr(self$episodes, "path")
R/Lesson.R:324:if (name=="episodes") {
R/get_solutions.R:27:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/heading_tree.R:13:lname<-if (is.null(lname)) "<EPISODE>"else dQuote(lname)
R/heading_tree.R:25:hlabels[1] <-"# Episode:"R/get_challenges.R:17:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/get_list_block.R:3:#' @param self an Episode objectR/get_images.R:1:#' Get images from an Episode/yarn objectR/get_images.R:3:#' @param yrn an Episode/yarn objectR/get_lesson.R:5:#' directory and extracts the lesson in `_episodes/` using [tinkr::to_xml()]R/get_lesson.R:12:#' @param ... arguments passed on to [Episode$new()][Episode].R/get_lesson.R:14:#' @return a list of xml objects, one element per episode.R/get_lesson.R:26:if (is.null(lesson) &&fs::dir_exists(fs::path(path, "_episodes"))) {
R/get_lesson.R:45:# If the directory contains episodes, then use that, otherwise, download theR/get_lesson.R:46:episodes<-fs::path(the_path, "_episodes")
R/get_lesson.R:47:episodes_rmd<-fs::path(the_path, "_episodes_rmd")
R/get_lesson.R:49:if (!fs::dir_exists(episodes) &&!fs::dir_exists(episodes_rmd)) {
R/fix_sandpaper_links.R:23:#' loop <- fs::path(lesson_fragment(), "_episodes", "14-looping-data-sets.md")R/fix_sandpaper_links.R:24:#' e <- Episode$new(loop)R/fix_sandpaper_links.R:84:# wrapper for link tags like {% link _episodes/page.md %}R/fix_sandpaper_links.R:122:episode<-function() glasses("_episodes/([^ %]+?)")
R/fix_sandpaper_links.R:123:links<- gsub(episode(), "\\2", links, perl=TRUE)
R/get_blocks.R:26:#' get_blocks(frg$episodes[["17-scope.md"]]$body)R/get_code.R:12:#' `$error` elements of the [Episode] class.R/get_code.R:19:#' e <- Episode$new(fs::path(lesson_fragment(), "_episodes", "17-scope.md"))R/elevate_children.R:12:#' scope <- Episode$new(file.path(lesson_fragment(), "_episodes", "17-scope.md"))R/fix_links.R:1:#' Finds and fixes unresolved links within an EpisodeR/div.R:35:#' lop <- frg$episodes$`14-looping-data-sets.md`R/div.R:79:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/div.R:118:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/Episode.R:1:#' Class representing XML source of a Carpentries episodeR/Episode.R:4:#' Wrapper around an xml document to manipulate and inspect Carpentries episodesR/Episode.R:7:#' has method specific to the Carpentries episodes.R/Episode.R:9:Episode<-R6::R6Class("Episode",
R/Episode.R:12:#' @description Create a new EpisodeR/Episode.R:13:#' @param path \[`character`\] path to a markdown episode file on diskR/Episode.R:26:#' @return A new Episode object with extracted XML dataR/Episode.R:28:#' scope <- Episode$new(file.path(lesson_fragment(), "_episodes", "17-scope.md"))R/Episode.R:91:#' @description enforce that the episode is a {sandpaper} episode withtoutR/Episode.R:92:#' going through the conversion steps. The default Episodes from pegboardR/Episode.R:114:#' @description return all `block_quote` elements within the EpisodeR/Episode.R:120:#' @return \[`xml_nodeset`\] all the blocks from the episode with the givenR/Episode.R:123:#' scope <- Episode$new(file.path(lesson_fragment(), "_episodes", "17-scope.md"))R/Episode.R:132:#' dsp1 <- rng$episodes[["04-data-structures-part1.md"]]R/Episode.R:158:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/Episode.R:165:#' label all the div elements within the Episode to extract them with R/Episode.R:172:#' return all div elements within the EpisodeR/Episode.R:181:#' Extract the yaml metadata from the episodeR/Episode.R:222:#' @param yml the list derived from the yml file for the episodeR/Episode.R:314:#' within the challenges in the Episode:R/Episode.R:325:#' scope <- Episode$new(file.path(lesson_fragment(), "_episodes", "17-scope.md"))R/Episode.R:333:#' scope <- Episode$new(file.path(lesson_fragment(), "_episodes", "17-scope.md"))R/Episode.R:352:#' @description write the episode to disk as markdownR/Episode.R:360:#' @return the episode objectR/Episode.R:362:#' the Carpentries Episodes are styled with, thus some block tags will beR/Episode.R:365:#' scope <- Episode$new(file.path(lesson_fragment(), "_episodes", "17-scope.md"))R/Episode.R:406:#' e <- lsn$episodes[[1]]R/Episode.R:428:#' Re-read episode from diskR/Episode.R:429:#' @return the episode objectR/Episode.R:431:#' scope <- Episode$new(file.path(lesson_fragment(), "_episodes", "17-scope.md"))R/Episode.R:445:#' @return the Episode object, invisiblyR/Episode.R:447:#' scope <- Episode$new(file.path(lesson_fragment(), "_episodes", "17-scope.md"))R/Episode.R:460:#' @return the Episode object, invisiblyR/Episode.R:462:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/Episode.R:464:#' loop$get_blocks() # all the blocks in the episodeR/Episode.R:497:#' - **episode** the filename of the episodeR/Episode.R:510:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/Episode.R:544:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/Episode.R:572:#' loop <- Episode$new(file.path(lesson_fragment(), "_episodes", "14-looping-data-sets.md"))R/Episode.R:583:#' @field show_problems \[`list`\] a list of all the problems that occurred in parsing the episodeR/Episode.R:600:#' @field tags \[`xml_nodeset`\] all the kramdown tags from the episodeR/Episode.R:604:#' @field questions \[`character`\] the questions from the episodeR/Episode.R:608:#' @field keypoints \[`character`\] the keypoints from the episodeR/Episode.R:612:#' @field objectives \[`character`\] the objectives from the episodeR/Episode.R:616:#' @field challenges \[`xml_nodeset`\] all the challenges blocks from the episodeR/Episode.R:627:#' @field solutions \[`xml_nodeset`\] all the solutions blocks from the episodeR/Episode.R:638:#' @field output \[`xml_nodeset`\] all the output blocks from the episodeR/Episode.R:646:#' @field error \[`xml_nodeset`\] all the error blocks from the episodeR/Episode.R:654:#' @field code \[`xml_nodeset`\] all the code blocks from the episodeR/Episode.R:662:#' @field lesson \[`character`\] the path to the lesson where the episode is fromR/Episode.R:665:sub_folders<- c("episodes", "learners", "instructors", "profiles",
R/Episode.R:666:"_episodes", "_episodes_rmd", "_extras")
The text was updated successfully, but these errors were encountered:
Eventually we will want to convert the term "episode" to "chapter." This transition should not be sudden or unexpected, so this is very much a future plan.
These all the places that contain the word 'episode' (which is a lot because the class name needs to change):
The text was updated successfully, but these errors were encountered: