{ "cells": [ { "cell_type": "markdown", "source": [ "# **8.** Example" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "slide" } } }, { "cell_type": "markdown", "source": [ "This is an example generated with Literate based on this\n", "source file: [`example.jl`](https://github.com/fredrikekre/Literate.jl/blob/master/examples/example.jl).\n", "You are seeing the\n", "generated notebook output. The corresponding markdown (HTML) output\n", "can be found here: [`example.html`](https://fredrikekre.github.io/Literate.jl/dev/generated/example.html),\n", "and the plain script output can be found here: [`example.jl`](./example.jl)." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "slide" } } }, { "cell_type": "markdown", "source": [ "To view this notebook as a slideshow, install the [RISE plugin](https://rise.readthedocs.io/en/stable/installation.html)\n", "and press `alt-r` to start. Use spacebar to advance." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } } }, { "cell_type": "markdown", "source": [ "It is recommended to have the [source file](https://github.com/fredrikekre/Literate.jl/blob/master/examples/example.jl)\n", "available when reading this, to better understand how the syntax in the source file\n", "corresponds to the output you are seeing." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } } }, { "cell_type": "markdown", "source": [ "### Basic syntax\n", "The basic syntax for Literate is simple, lines starting with `# ` is interpreted\n", "as markdown, and all the other lines are interpreted as code. Here is some code:" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "slide" } } }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "2//5" }, "metadata": {}, "execution_count": 1 } ], "cell_type": "code", "source": [ "x = 1//3\n", "y = 2//5" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } }, "execution_count": 1 }, { "cell_type": "markdown", "source": [ "In markdown sections we can use markdown syntax. For example, we can\n", "write *text in italic font*, **text in bold font** and use\n", "[links](https://www.youtube.com/watch?v=dQw4w9WgXcQ)." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "subslide" } } }, { "cell_type": "markdown", "source": [ "It is possible to filter out lines depending on the output using the\n", "`#md`, `#nb`, `#jl` and `#src` tags (see Filtering lines):\n", "- This line starts with `#nb` and is thus only visible in the notebook output." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } } }, { "cell_type": "markdown", "source": [ "The source file is parsed in chunks of markdown and code. Starting a line\n", "with `#-` manually inserts a chunk break. For example, if we want to\n", "display the output of the following operations we may insert `#-` in\n", "between. These two code blocks will now end up in different\n", "`@example`-blocks in the markdown output, and two different notebook cells\n", "in the notebook output." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "subslide" } } }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "11//15" }, "metadata": {}, "execution_count": 2 } ], "cell_type": "code", "source": [ "x + y" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "subslide" } }, "execution_count": 2 }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "2//15" }, "metadata": {}, "execution_count": 3 } ], "cell_type": "code", "source": [ "x * y" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } }, "execution_count": 3 }, { "cell_type": "markdown", "source": [ "### Output capturing\n", "Code chunks are by default placed in Documenter `@example` blocks in the generated\n", "markdown. This means that the output will be captured in a block when Documenter is\n", "building the docs. In notebooks the output is captured in output cells, if the\n", "`execute` keyword argument is set to true. Output to `stdout`/`stderr` is also\n", "captured." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "slide" } } }, { "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "This string is printed to stdout.\n" ] }, { "output_type": "execute_result", "data": { "text/plain": "4-element Vector{Int64}:\n 1\n 2\n 3\n 4" }, "metadata": {}, "execution_count": 4 } ], "cell_type": "code", "source": [ "function foo()\n", " println(\"This string is printed to stdout.\")\n", " return [1, 2, 3, 4]\n", "end\n", "\n", "foo()" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "subslide" } }, "execution_count": 4 }, { "cell_type": "markdown", "source": [ "Just like in the REPL, outputs ending with a semicolon hides the output:" ], "metadata": {} }, { "outputs": [], "cell_type": "code", "source": [ "1 + 1;" ], "metadata": {}, "execution_count": 5 }, { "cell_type": "markdown", "source": [ "Both Documenter's `@example` block and notebooks can display images. Here is an example\n", "where we generate a simple plot using the\n", "[Plots.jl](https://github.com/JuliaPlots/Plots.jl) package" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "subslide" } } }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "Plot{Plots.GRBackend() n=2}", "image/png": "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1/Hx8YSEReNYDMPMXREui8WysnNHVwfhN3wF3RCQkIA3XG9B12cv+leMsclkooowUFgs6M7vrPRHOp1OEUWIEPpmGfpmmf+PoSC9Xr9SRYhK1qOS9QGTaBksCP3jZvSPUM0HEq8UYU5OzrPPPutzG8XFxfX19YIgsCwrCEJDQ0NRUZHPT6NQKBQKRUEUMNvdbveBAwdOnTolSdKBAweOHj3quf7YY4/94Q9/QAhVV1enpaU988wzIyMjzzzzTFZW1qZNm/xvl0KhUCgU/1EgvWF6evq5555DCG3btu25555LSkrasmULQojneVH8bN/Znj17HnnkkbVr15aWlr711ooL6lMoFAqFEiC8SpZRDVEUTSaT9wVo2traUlNTTSZ64ouG6OzsjIuLCw8PhxaEcone3t7w8PCoqChoQSiXsFqtHMfFxcVBC0IJ8lqjDzzwwPHjx6GloFzG9773vf3790NLQbmMp556as+ePdBSUC7j2Weffemll6CloCAU7IqQQqFQKBQ/oYqQQqFQKCENVYQUCoVCCWm0lSwjy/K2bdtsNpuX909MTJjN5pXtSKUEmMnJSZPJxHEctCCUS0xPT7MsazQaoQWhXMJut+t0OprrF2j27t1bXFy89D3aUoQIobGxsYmJCWgpKBQKhbIaSEtLW9Yu15wipFAoFApFTWiMkEKhUCghDVWEFAqFQglpqCKkUCgUSkhDFSGFQqFQQpogPlN8//7977//fmJi4gMPPDB7PjAFkEOHDjU3N3s+MwzzwAMPwMoTstjt9vPnzzc3N+fn5+/YsWP2utPp/M1vftPd3b158+Y77rgD46A/WDyI4Hm+tra2rq4uKirqtttum73+0ksvuVwuz+ecnJxdu3YBCRjSBKsifOmll374wx/+6Ec/On369JYtW2pqagwGA7RQoc7LL7/c0dGxceNGhJAiZ8BSfOPRRx89fvy42+3esWPHXEV4yy23cBx36623Pv30042NjU8//TScjCHHr371q5///OeRkZE6nW6uInzsscduu+22mJgYhJDZbIYTMLQhQYgsy0VFRW+++abnc2Vl5SuvvAItFIXcf//9zz//PLQUFCJJEiHk8ccfv//++2cvHj9+PDY21uVyEULOnTsXGRlpt9vBRAw9PJ3y0ksvrV+/fu71uLi45uZmIKEonxGUMcKhoaGmpiaPDwFjvGvXrkOHDkELRUEIoVOnTj3//PNvvvkmz/PQsoQuDLPAuD506NC2bds8jpOqqiqO42pqalQXLXRZsFM8vPrqqy+88MKRI0fUlIcyl6BUhAMDAxzHzR6ulpiYaLVaYUWiIITS09MTEhImJib+6Z/+acOGDTMzM9ASUS5hs9ni4+NnvyYkJNBRowWqq6tdLldXV9ftt9/+/e9/H1qcECUoY4Qsy0qSJMuyx8gSBIEGCLXAT37yE8+Hv//7v1+3bt2LL7743e9+F1Ykyix6vV6SpNmvgiDQerBa4N133/V8eOihh9asWfPtb387OzsbVqQQJChXhCkpKZIkDQ4Oer729/cnJyfDikSZi16v37RpU0dHB7QglEukpqb29/d7PkuSZLPZUlJSYEWizKWgoCA2NrazsxNakFAkKBVhdHT01q1b33rrLYSQ0+nct2/frbfeCi0UBTmdTs8Hu91+8ODB0tJSWHkoc7n55puPHDniMR8//PDDyMjIqqoqaKFCHU/ukufziRMnxsbGioqKYEUKTYLSNYoQ+ulPf3r77befPn26vr6+pKSEbr7RApmZmZs3bw4PDz906FB5efk999wDLVGI8sorr7zwwgt9fX2SJF24cOHee+99+OGH8/Pz77333q1bt27btm3fvn0/+9nP6BYXNTlx4sQjjzwyOjo6NDS0fv36bdu2/exnPzt48OB3vvOddevWuVyujz/++Pnnn6fLdBCC+PQJq9V6+PDhhISEnTt3LpGRRVGN7u7u8+fPu93ugoICutoAZHBwsK+vb/ZrUlJSamqq5/Px48e7uro2bNiQl5cHJF2IMjU11draOvs1MjIyLy9PkqTa2trm5maTybRu3bq0tDRACUOZIFaEFAqFQqH4D11IUSgUCiWkoYqQQqFQKCENVYQUCoVCCWmoIqRQKBRKSEMVIYVCoVBCGqoIKRQKhRLSUEVIoVAolJCGKkIKhUKhhDRUEVIoFAolpKGKkEKhUCghDVWEFAqFQglp/j+/PhUfPm1PPgAAAABJRU5ErkJggg==", "text/html": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ], "image/svg+xml": [ "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", " \n", " \n", " \n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n" ] }, "metadata": {}, "execution_count": 6 } ], "cell_type": "code", "source": [ "using Plots\n", "x = range(0, stop=6π, length=1000)\n", "y1 = sin.(x)\n", "y2 = cos.(x)\n", "plot(x, [y1, y2])" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "subslide" } }, "execution_count": 6 }, { "cell_type": "markdown", "source": [ "### Custom processing\n", "\n", "It is possible to give Literate custom pre- and post-processing functions.\n", "For example, here we insert a placeholder value `y = 321` in the source, and use a\n", "preprocessing function that replaces it with `y = 321` in the rendered output." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "slide" } } }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "123" }, "metadata": {}, "execution_count": 7 } ], "cell_type": "code", "source": [ "x = 123" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "subslide" } }, "execution_count": 7 }, { "cell_type": "markdown", "source": [ "In this case the preprocessing function is defined by" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } } }, { "outputs": [ { "output_type": "execute_result", "data": { "text/plain": "pre (generic function with 1 method)" }, "metadata": {}, "execution_count": 8 } ], "cell_type": "code", "source": [ "function pre(s::String)\n", " s = replace(s, \"x = 123\" => \"y = 321\")\n", " return s\n", "end" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } }, "execution_count": 8 }, { "cell_type": "markdown", "source": [ "### Documenter.jl interaction\n", "\n", "In the source file it is possible to use Documenter.jl style references,\n", "such as `@ref` and `@id`. These will be filtered out in the notebook output.\n", "For example, here is a link, but it is only\n", "visible as a link if you are reading the markdown output. We can also\n", "use equations:" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "slide" } } }, { "cell_type": "markdown", "source": [ "$$\n", "\\int_\\Omega \\nabla v \\cdot \\nabla u\\ \\mathrm{d}\\Omega = \\int_\\Omega v f\\ \\mathrm{d}\\Omega\n", "$$" ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } } }, { "cell_type": "markdown", "source": [ "using Documenters math syntax. Documenters syntax is automatically changed to\n", "`\\begin{equation} ... \\end{equation}` in the notebook output to display correctly." ], "metadata": { "name": "A slide ", "slideshow": { "slide_type": "fragment" } } }, { "cell_type": "markdown", "source": [ "---\n", "\n", "*This notebook was generated using [Literate.jl](https://github.com/fredrikekre/Literate.jl).*" ], "metadata": {} } ], "nbformat_minor": 3, "metadata": { "language_info": { "file_extension": ".jl", "mimetype": "application/julia", "name": "julia", "version": "1.7.1" }, "kernelspec": { "name": "julia-1.7", "display_name": "Julia 1.7.1", "language": "julia" } }, "nbformat": 4 }