Создание своей темы для RStudio IDE, чтобы продуктивность росла, а глаза остались на прежнем месте
Зачем нам UI-изыски в 2023?
Из коробки RStudio IDE уже содержит богатый выбор тем оформления. Я привык использовать Twilight – спокойная темная тема с подсветкой заголовков Rmarkdown, а также (что немаловажно) с подсветкой внутренних ссылок документа, выделяемых знаком @
.
Проблема Twilight крылась в очень темном оформлении комментариев. Возможно, в этом и заключались достоинства Twilight – код первичен, а документация пусть не мешает профессионалам делать свое программистское дело😉. Однако с недавних пор, я перешел при написании статей на Quarto и кое что поменялось.
Quarto – новый фреймворк оформления документов от компании Posit (бывшей Rstudio), который конкурирует с Rmarkdown (его разработку возглавляют тоже сотрудники Posit) и призван улучшить жизнь исследователей и разработчиков. А в особенности тех, которые пишут на Python и ждут новый перспективный язык для датасаентистов – Julia🙄.
В нотации Quarto, настройки блока (чанка) пишутся внутри него самого с использованием симфолов #|
. Например:
#| message: false
#| warning: false
#| echo: true
#| eval: false
iris <- iris
iris |> head()
С точки зрения IDE, настройки блока – это комментарий, и при больших портянках таких настроек, особенно с длинными именами полей, это становится проблемой.
Темы RStudio IDE
Непосредственно в RStudio IDE подправить цвет отдельных категорий нельзя. Но есть возможность изменить тему.
Дальнейшее исследование показало, что темы в Ubuntu лежат в
/usr/lib/rstudio/resources/app/resources/themes
…и, несмотря на странные расширения .rstheme
являются обычными CSS файлами внутри.
Подробнее об этом можно почитать здесь.
Результат
В результате долгой и упорной работы внутреннего Пикассо получился новый шедевр, коим я и решил поделиться. Для предпросмотра темы можно вызвать в консоли R внутри RStudio IDE
rstudioapi::addTheme("http://i2z1.quarto.pub/posts/quarto-optimized-rstudio-theme/cybercandel.rstheme", apply = TRUE)
Скачать файлом можно здесь.
Удачных исследований и экспериментов!