Я создаю базовый пакет с помощью инструментов разработчика (представьте себе пакет, содержащий только функцию Hello World).
Мой файл ОПИСАНИЯ просто:
Title: What the Package Does (One Line, Title Case)
Version: 0.0.0.9000
Authors@R:
person("Jon", "Snow", , "[email protected]", role = c("aut", "cre"),
comment = c(ORCID = "YOUR-ORCID-ID"))
Description: What the package does (one paragraph).
License: `use_mit_license()`, `use_gpl3_license()` or friends to pick a
license
Encoding: UTF-8
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.3.2
и я создаю его, запуская последовательно:devtools::build(); devtools::install(); devtools::build_manual()
Все работает, но в инструкции никогда не печатается "автор", и я не знаю, как заставить это работать. Компилируется без ошибок... Я пробовал предыдущий тред, но он не работает.
Да, я выполнил именно то, что было сказано, к сожалению, это ничего не изменило. Я пробовал несколько раз с некоторыми настройками, пока ничего не получается. Моя посылка почти готова, это единственное, чего не хватает, и я не могу разобраться. Я просматриваю руководство, открыв отдельный PDF-файл, могу ли я там что-то изменить?
Я просто попробовал совет, который дал изначально, и он не сработал. Вот модификация.
Во-первых, вот что произошло с вашим кодом:
devtools::build()
создает файл .tar.gz
для вашего пакета. Он добавляет поле «Автор» и некоторые другие в файл DESCRIPTION
.
devtools::install()
здесь особо не задействован.
devtools::build_manual()
игнорирует файл .tar.gz
и создает руководство, используя исходный каталог.
Вот способ исправить это:
devtools::install()
devtools::build_manual(system.file(package = "yourpackage"),
path = ".")
Здесь говорится, что нужно собрать и установить пакет, затем, используя установленную копию, собрать руководство и вывести его в текущий каталог.
Это сработало для меня.
ОК, choose.dir()
?
@BenBolker: Это сработало бы, если бы вы выбрали каталог, в котором был распакован архив, но мой исходный код его не распаковал. Использование каталога установки кажется самым простым, что и делает текущий код.
Хорошо, это работает и для меня! Спасибо :) Приятно осознавать, что другой ваш ответ тоже не сработал, и это не моя вина :)
Другой ответ заключается в том, что в вашем файле DESCRIPTION указана неверная запись об авторах. Просто замените «Authors@R» на «Авторы», и все должно работать нормально.
Title: What the Package Does (One Line, Title Case)
Version: 0.0.0.9000
Authors:
person("Jon", "Snow", , "[email protected]", role = c("aut", "cre"),
comment = c(ORCID = "YOUR-ORCID-ID"))
Description: What the package does (one paragraph).
License: `use_mit_license()`, `use_gpl3_license()` or friends to pick a
license
Encoding: UTF-8
Roxygen: list(markdown = TRUE)
RoxygenNote: 7.3.2
В руководстве по написанию расширений R нет поля «Авторы», есть только «Автор» и «Authors@R».
На самом деле это тоже работает (хотя я думал, что «Автор» обесценился). Вам просто нужно написать это с «Автором», а не с Автором.
Для меня стало сюрпризом, что вы можете использовать формат ввода Authors@R
в поле Author
, но это работает. Но если вы посмотрите на packageDescription("pkg")
после установки, вы увидите, что что-то в коде сборки или установки отредактировало поле, поэтому оно записано как Authors@R
, как и должно быть в WRE.
Да, я знаю, что это не должно сработать, но я просто нашел это на случай, если он был единственным автором.
Вы специально подписались на этот ответ на ветку, на которую вы дали ссылку? Можно поконкретнее, что "не работает"? Как вы просматриваете руководство (например, на панели справки RStudio, в виде отдельного PDF-файла...)?