Загрузка кода на Github Gist и конвертация кода в красивое изображение
Пакет gistillery позволяет вам в три шага поделиться своим кодом:
1. Загрузка кода на Github Gist
2. Получить опубликованный код в виде изображения с carbon.now.sh
3. Поделить кодом, например в Twitter
Шаг 1: Загрузка на GitHub Gits
Установите пакет с помощью remotes::install_github("jthomasmock/gistillery").
Создайте персональный токен GitHub (Settings / Developer settings / Personal access tokens) с одним разрешением gist.
Закиньте персональный токен в переменную среды GITHUB_PAT, с помощью Sys.setenv(GITHUB_PAT = "Ваш персональный токен GitHub").
Загрузить код в Gist можно либо текущий открытый в RStudio файл, либо сохранённый на диске код, считать из буфера обмена или создать reprex:
library(gistillery)
# RStudio
gist_upload(content = NULL, gist_name = "unsaved15.R")
# Локальный файл
gist_upload(content = readLines("mylocal-file.R"), gist_name = "local-file.R")
# Буфер обмена
gist_upload(content = clipr::read_clip(), gist_name = "copy-pasted-code.R")
# reprex
gist_upload(reprex::reprex(), gist_name = "test-prex.R")
Если вы не в курсе что такое воспроизводимый пример (reprex), то почитайте этот пост.
Шаг 2: Получаем изображение с кодом
Итак, из созданного на первом шаге Gits можно получить красивое изображением, которым будет не стыдно поделиться в соц. сетях, или публикациях.
gist_to_carbon(
gist_id = "687g8g68dysufg876f8",
file = "my-screenshot.png"
)
Пример полученного изображения вы видите в сообщении к посту.
Шаг 3: Публикуем изображение
Теперь мы можем поделиться нашим изображением, например в Twitter.
rtweet::post_tweet(
status = "My cool code screenshot",
media = "my-screenshot.png",
media_alt_text = "My code example "
)
Единый конвейер:
Конвертировать воспроизводимый пример в изображение можно единым конвейером:
reprex::reprex() |>
gistillery::gist_upload(gist_name = "new-test-reprex.R") |>
gistillery::gist_to_carbon(file = "new-test-reprex.png")
Ссылки:
- Примеры кода и описание заимствовано тут.
#заметки_по_R