Если ты используешь R, то ты поймёшь, что есть куча других полезных программ!
...
...
...
...
...
...
...
...
Разбить на большее количество глав!!!
Что-то убрать? чтобы была ещё одна книжка? :)
Общие принципы:
Неформальный стиль, на "ты"
Больше картинок. Лицензия?
Больше гипер-ссылок.
Буква ё
обязательна.
Пакет bookdown
с помощью которого написана эта книжка ещё немного сыроват. В процессе работы я обнаружил, что:
Порой помогает удаление промежуточных файлов и компиляция заново.
После неанглоязычного названия главы обязательно должна идти метка {#label}
.
Каждый .Rmd
файл содержит только одну главу. Глава обозначается заголовком первого уровня #
.
Сослаться на главу или подраздел можно с помощью \@ref(label)
.
Сослаться на источник литературы можно с помощью [@reference]
Автодобавление пакетов
глючит на "M"uller
MOBI
книг:Под macos:
Поставить менеджер пакетов Homebrewer.
brew update
brew cask install calibre
brew cask install kindlegen
В предисловии
bookdown::kindlegen:
epub: _book/r_manual.epub
ругается
или
bookdown::calibre:
input: _book/r_manual.epub
output: _book/r_manual.mobi
ругается
Если надо изобразить yaml в чанке кода, пока пишу, что он bash
Создаём новый токен на github: кликнуть по иконке пользователя, далее settings - token - generate new token.
sudo gem install travis
travis encrypt GITHUB_TOKEN=[token from githum]
Именно переменная GITHUB_TOKEN
должна использоваться для того, чтобы обращаться к гитхабу, т.е. клонируется ветка gh-pages командой
git clone -b gh-pages https://${GITHUB_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git book-output
Переменная TRAVIS_REPO_SLUG
будет сама определена сервисом Travis и будет равна названию репозитория.
Добавляем получившуюся закодированную строку в .travis.yml
. Забавно, что похоже используется рандомный ключ для шифрования и поэтому зашифрованная строка каждый раз выходит разной.
Можно не шифровать её, а добавить в travis-ci.org/user/repo/settings
Для быстрой компиляции добавляем в .travis.yml
указание, что мы будем использовать готовые бинарные пакеты R:
r_binary_packages:
- ggplot2
- dplyr
- rio
Для того, чтобы эти опции не были проигнорированы .travis.yml
должен содержать строку sudo: required
.
Если бинарный пакет слишком старый или вообще отсутствует, можно проинсталлировать его обычным образом, для этого добавляем строки
r_packages:
- devtools
- rio
по мотивам http://stackoverflow.com/questions/29067541
colFmt <- function(x, color) {
outputFormat <- opts_knit$get("rmarkdown.pandoc.to")
if (outputFormat == "latex") {
result <- paste0("\\textcolor{", color, "}{", x, "}")
} else if (outputFormat %in% c("html", "epub")) {
result <- paste0("<font color='", color, "'>", x, "</font>")
} else {
result <- x
}
return(result)
}
Then you can use it inline like this: MY RED TEXT
_output.yaml
это просто output:
кусок из yaml
-части файла index.Rmd
. Поэтому можно внести _output.yaml
обратно в index.Rmd
, чтобы все настройки были в одном месте. Формально _output.yaml
действует на все .Rmd
документы в папке, но что там будет кроме учебника в целом. Разве что отдельные главы компилировать :)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.