R Markdown — это формат разработки, позволяющий легко создавать динамические документы, презентации и отчеты из R.
(источник)
он разработан и поддерживается RStudio. Я ищу пользовательский стиль, который облегчил бы редактирование Rmarkdown в NotePad ++, который я нахожу более удобным в использовании. Не знаете ли вы, доступен ли он?
решение1
Есть три компонента редактирования и использования Rmarkdown в npp. Сразу скажу, что я не часто использую npp, хотя я рекомендую его вместо других редакторов, ориентированных на определенный язык (например, GAMSide, стандартный блокнот, Wordpad), особенно имея в виду программирование.
Подсветка синтаксиса
На github я нашел более старую версиюподсветка синтаксиса markdown для npp, и как минимум две вилки (здесьиздесь), хотя ни один из них, похоже, не проявлял никакой активности в последние пару лет. Это не значит, что они плохие, но поскольку стандарт markdown (CommonMark?) изменился за последние пару лет, возможно или вероятно, что они не будут отображать все точно.
Предварительный просмотр
На форумах npp есть несколько обсуждений, в частностиВот этотв котором обсуждается плагин npp, который обеспечивает предварительный просмотр. Я думаю, были некоторые обсуждения, что он может не работать в некоторых конфигурациях, но это начало. Один побочный эффект (я думаю) заключается в том, что он использует определенный рендерер (Cpp-Markdown) вместо того же рендерера, который использует Rstudio (пандок). Поскольку плагин отображает только HTML, его полезность для вас зависит от ваших потребностей.
Обработка
Ничто из этого на самом деле не касается использования вами встроенных блоков кода и их обработки. Для этого я бы рекомендовал просто настроить макрос для рендеринга текущего .Rmd
файла в текущем каталоге. Один из способов сделать это:
- В NPP выберите «Run» и введите
Rscript.exe -e "setwd('$(CURRENT_DIRECTORY)'); rmarkdown::render('$(FULL_CURRENT_PATH)')"
(исправив путь к Rscript по мере необходимости). При необходимости укажите дополнительные аргументыrender
, например, принудительное использование определенного формата вывода. (Последний пункт может позволить вам использовать одну горячую клавишу для рендеринга в PDF и другую для рендеринга в HTML.) - Дайте ему имя, например, «Преобразовать Rmd в PDF».
- Дайте ему горячую клавишу, которая не используется иным образом. (Последний пункт требует небольшого исследования и/или проб и ошибок.)
Аналогичным образом можно настроить макрос «Просмотр обработанного документа» (другая горячая клавиша), который открывает результирующий файл, используя команду типа: SumatraPDF.exe $(CURRENT_DIRECTORY)/$(NAME_PART).pdf
. (Я используюСуматра PDFпо нескольким причинам, наиболее заметной из которых является то, что он распознает, когда файл pdf был обновлен, и обновляется автоматически, а не является функцией AcroRead. С этим вы открываете pdf один раз и держите его открытым, и он обновляется при каждом повторном рендеринге.)
Надеюсь это поможет.
решение2
Лучше вSynWRiteредактора, создайте новый лексер на основе Markdown (скопируйте Markdown под новым именем) и исправьте его в диалоговом окне «Свойства лексера».