R markdown определяет макросы для форматирования - PullRequest
0 голосов
/ 04 мая 2018

Мне было интересно, есть ли способ определить команду в уценке (или R уценке, более конкретно) таким образом, чтобы вам не приходилось каждый раз вставлять форматирование html для частых битов.

Например, я использовал класс css 'alert alert-info' для вставки блоков Note в документы, например:

<div class="alert alert-info">
  <strong>Note :</strong><br/>
  stuff here
</div>

Так как быстрее, тем лучше :) я могу автоматизировать это? (Я пытался использовать $\newcommand{}$ из латекса, чтобы сделать это, но весь HTML-код просто печатается в математическом режиме на странице ...)

Редактировать:

Я иногда добавляю куски кода в заметки, так что было бы хорошо, если бы это работало также.

Неплохо было бы уйти от '\' для LaTeX (это было бы неплохо (хотя это было бы довольно небольшой ценой, если бы новая команда была намного быстрее).

1 Ответ

0 голосов
/ 04 мая 2018

Используя пакет htmltool, мы можем создать простую функцию для повторения заметки, при условии, что вы можете написать ее:

library(htmltools)

alert_note <- function(text) {

  div(class="alert alert-info",
      strong('Note :'), br(),
      text)
}


alert_note('stuff here')
<div class="alert alert-info">
  <strong>Note :</strong>
  <br/>
  stuff here
</div>

Чтобы использовать его в .Rmd документе, вы определяете функцию где-то - вероятно, в блоке настройки - и используете ее в не отраженном блоке

---
title: "Untitled"
date: "5/4/2018"
output: html_document
---

```{r setup, include=FALSE}    
library(htmltools)

strong_alert <- function(text) { 
  div(class="alert alert-info",
      strong('Note :'), br(),
      text)
}
```
## R Markdown    
This is an R Markdown document.

```{r echo=FALSE}
strong_alert('stuff here')
```

enter image description here

...