quarto-dev/quarto-cli

feature: control engine resolution order on `_quarto.yml`

Opened this issue · 1 comments

(cc @MichaelHatherly @jkrumbiegel)

With the julia engine offering first-class support for Julia, we started running into issues of "engine priority": when two engines provide overlapping support, which should win? Currently the priority is hard-coded, which makes configuration awkward for projects that mostly use the julia engine.

An engines key in _quarto.yml could take an array of strings and control the resolution order. For example,

engines:
  - julia
  - jupyter
  - knitr

This would allow the julia engine to take higher priority than jupyter in projects where that is the desired outcome. Because we have a default ordering, this wouldn't break backwards compatibility either.

This relates heavily to: