Skip to content

Commit f9975dd

Browse files
authored
Put articles in correct place (#1352)
Fixes #548
1 parent 30bc851 commit f9975dd

File tree

3 files changed

+20
-3
lines changed

3 files changed

+20
-3
lines changed

NEWS.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
# usethis (development version)
22

3+
* `use_article()` now creates the file in the `vignettes/articles/` (#548).
4+
35
* `use_lifecycle()` has been updated for changes in our lifecycle workflow
46
(#1323).
57

R/vignette.R

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,21 +38,29 @@ use_vignette <- function(name, title = name) {
3838
use_article <- function(name, title = name) {
3939
check_is_package("use_article()")
4040

41-
use_vignette_template("article.Rmd", name, title)
41+
use_vignette_template("article.Rmd", name, title, subdir = "articles")
4242
use_build_ignore("vignettes/articles")
4343

4444
invisible()
4545
}
4646

47-
use_vignette_template <- function(template, name, title) {
47+
use_vignette_template <- function(template, name, title, subdir = NULL) {
4848
stopifnot(is_string(name))
4949
stopifnot(is_string(title))
5050

5151
use_directory("vignettes")
52+
if (!is.null(subdir)) {
53+
use_directory(path("vignettes", subdir))
54+
}
5255
use_git_ignore(c("*.html", "*.R"), directory = "vignettes")
5356
use_dependency("rmarkdown", "Suggests")
5457

55-
path <- path("vignettes", asciify(name), ext = "Rmd")
58+
if (!is.null(subdir)) {
59+
path <- path("vignettes", subdir, asciify(name), ext = "Rmd")
60+
} else {
61+
path <- path("vignettes", asciify(name), ext = "Rmd")
62+
}
63+
5664

5765
data <- list(
5866
Package = project_name(),

tests/testthat/test-vignette.R

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,3 +37,10 @@ test_that("use_vignette() does the promised setup", {
3737
c(VignetteBuilder = "knitr")
3838
)
3939
})
40+
41+
test_that("use_article goes in article subdirectory", {
42+
create_local_package()
43+
44+
use_article("test")
45+
expect_proj_file("vignettes/articles/test.Rmd")
46+
})

0 commit comments

Comments
 (0)