Hello,
I tried Quarto, which I think is really promising. However, it doesn’t support GitHub Copilot yet (it is simply disabled when programming a .qmd
file). Moreover, Quarto (as well as Weave.jl) is made for report generation. I don’t need to create a report, but simply programming in an interactive way, with support for latex, markdown, inline figures, and GitHub Copilot. So far, it seems that the best option would be to program using Jupyter Notebooks, as @goerz has already mentioned.
However, I found something interesting. I created a Markdown file test.md
with the following content
# Some Title
Some text here. I write only two backticks in order to not trigger the code block.
``julia
using CairoMakie
``end
Some other text here. $\hat{a} | 0 \rangle = 0$.
``julia
x = range(0, 2pi, 100)
y = sin.(x) .* cos.(x) .* exp.(-x/10)
fig = Figure()
ax = Axis(fig[1, 1]; xlabel = "x", ylabel = "y")
lines!(ax, x, y)
save("simple_sine.svg", fig)
``
![simple_sine](simple_sine.svg)
I can run each code block independently, just as a native .jl
file. The only thing is that I have to manually show the plot by saving it into a file and then using pure markdown to show it. Aside from that, it seems a good alternative to Jupyter Notebook. Also, I think that the Julia Language Server in VSCode works better in native .jl
files than Jupyter Notebooks. For example, the "Go To Definition: feature only works with pure Julia files.