Merge branch 'link_download' into 'main'

Link download

See merge request interactivetextbooks-citg/jupyter-book-manual!112
This commit is contained in:
Julie Kirsch 2024-11-04 12:06:11 +01:00
commit d93f88de60
3 changed files with 2 additions and 46 deletions

View file

@ -44,7 +44,7 @@ parts:
- file: external/TeachBooks/README.md
- file: external/deploy-book-workflow/README.md
- file: external/Nested-Books/README.md
- file: features/custom_download.md
- file: external/Download-Link-Replacer/README.md
- file: external/Sphinx-Image-Inverter/README.md
- file: external/JupyterBook-Patches/README.md
- file: features/interactive_element.ipynb

@ -1 +1 @@
Subproject commit 8fc4a376870afacba5351c731f55130dfa88d3fb
Subproject commit cf0d3c99f3e0bd549ac2d38d8117f9b9ea5a179c

View file

@ -1,44 +0,0 @@
# Page download options
```{admonition} User types
:class: tip
This section is useful for user type 4-5.
```
You can control the download option of the book in two ways:
- Disabling downloading using cell tags `disable-download-page`
- Add / replace download link with custom link using `spinhx-download-link-replacer`
## Disabling download
If you add `disable-download-page` as a cell tag to a cell in a python notebook, the download button ({fa}`download`) will disappear from the topright corner. The cell tag can be added to any code cell in the notebook. This function might be handy if your page includes code which you don't want the students to see. Be aware that this also removes the option to download a PDF of the page.
## Add/replace download link
The download link {fa}`download` --> {fa}`file`{guilabel}`.ipynb` can be replaced by using the following code in any markdown / notebook file:
````md
```{custom_download_link} <link_target>
:text: "Custom text"
:replace_default: "True"
```
````
An explanation of the options of this command is given on https://gitlab.tudelft.nl/mude/sphinx-download-link-replacer.
A potential application of this functionality is when creating a page in which students have to do some coding. Downloading the page allows the student to save their work and work with their local environment. However, the original source file might include code (jupyterbook formatting, widgets, answers) which is not necessary for students. You can make a copy of the notebook file without these elements and replace the {fa}`file`{guilabel}`.ipynb` link to this custom notebook file. Furthermore, you can add any additional data as an additional {fa}`file`{guilabel}`.zip` file.
### Installation instructions
To make use of this functionality, you have to install the `download_link_replace` package by running the following line in your command line:
```
pip install git+https://gitlab.tudelft.nl/mude/sphinx-download-link-replacer
```
Furthermore, you should add the following line to `requirements.txt`
```
download_link_replacer @ git+https://gitlab.tudelft.nl/mude/sphinx-download-link-replacer
```
and to `_config.yml`:
```
sphinx:
extra_extensions:
- download_link_replacer
```