alterar a cor do bloco de códigos no knitr / markdown

Eu estou trabalhando em um documento markdown no Rstudio que compara Perl e R. O que eu gostaria de poder fazer é ter diferentes cores de fundo do bloco de código dependendo do idioma usado. Por exemplo

Bloco de código R

```{r}
dog <- 1
cat <- 2
dog + cat
```

Bloco de código Perl

```{r, engine='perl'}
$dog = 1;
$cat = 2;
print $dog + $cat;
```

Se você gerar um arquivo html usando knitr com o código acima, o bloco de código r terá um plano de fundo cinza sólido enquanto a saída do bloco de código tiver um plano de fundo branco / transparente.

No entanto, o bloco de código Perl e saída tem um fundo branco / transparente que parece confuso. Minha esperança é que haja uma maneira elegante de fazer isso em markdown / knitr.

questionAnswers(3)

yourAnswerToTheQuestion