### Serve MkSlides with live preview Source: https://github.com/martenbe/mkslides/blob/main/slides/index.md Start a live preview server while editing Markdown files. ```bash mkslides serve [OPTIONS] [PATH] ``` -------------------------------- ### MkSlides Configuration Example Source: https://github.com/martenbe/mkslides/blob/main/README.md An example of a mkslides.yml configuration file showcasing all possible options. Options are relative to the directory containing Markdown files. ```yaml site_name: My Slides # Theme # theme: "black" # theme_url: "https://example.com/my-theme.css" # Reveal.js options revealjs_options: transition: "slide" controls: true progress: true # ... other reveal.js options # MkDocs options # nav: # - Home: "index.md" # - About: "about.md" # Plugins # plugins: # - search # - mermaid # Customization # extra_css: # - "css/custom.css" # extra_templates: # - "custom_template.html" # favicons: # - rel: "icon" # url: "img/favicon.ico" # type: "image/vnd.microsoft.icon" # Build options # output_dir: "site" # base_url: "/" # Live preview options # livereload: true # livereload_port: 35729 ``` -------------------------------- ### Get help for mkslides build Source: https://github.com/martenbe/mkslides/blob/main/slides/index.md Display help information for the mkslides build command. ```bash mkslides build -h ``` -------------------------------- ### Install MkSlides Source: https://context7.com/martenbe/mkslides/llms.txt Install MkSlides using pip and verify the installation along with bundled versions. ```bash pip install mkslides # Verify installation and bundled versions mkslides --version # mkslides, version 2.0.18 # reveal.js, version 5.x.x # highlight.js themes, version ... ``` -------------------------------- ### Get help for mkslides serve Source: https://github.com/martenbe/mkslides/blob/main/slides/index.md Display help information for the mkslides serve command. ```bash mkslides serve -h ``` -------------------------------- ### Install mkslides Source: https://github.com/martenbe/mkslides/blob/main/slides/index.md Install the mkslides package using pip. ```bash pip install mkslides ``` -------------------------------- ### Serve Slides with Live-Reload Development Server Source: https://context7.com/martenbe/mkslides/llms.txt Use the `mkslides serve` command to start a live-reload HTTP server for development. The browser refreshes automatically on file changes. Customize address and debounce interval. ```bash # Serve from default 'slides/' directory on localhost:8000 mkslides serve # Serve a custom directory and open the browser automatically mkslides serve -o my-presentations/ # Use a custom address and debounce interval mkslides serve -a 0.0.0.0:9000 --debounce-interval 0.5 slides/ # Serve a single file mkslides serve talk.md ``` -------------------------------- ### MkSlides Configuration File Example Source: https://context7.com/martenbe/mkslides/llms.txt An optional YAML configuration file (`mkslides.yml`) for customizing build and serve options. Relative paths are resolved from the Markdown source directory. ```yaml # mkslides.yml — full annotated example --- index: enable_footer: true # Show "Built with MkSlides" footer favicon: assets/favicon.ico # Local path or public URL title: "My Slide Collection" theme: assets/index-theme.css # Local CSS or public URL template: custom-index.jinja # Custom Jinja2 template (optional) nav: # Optional manual navigation tree - "Introduction": intro.md - "Chapter 1": - basics.md - advanced.md - summary.md slides: theme: dracula # Reveal.js built-in, local CSS, or public URL highlight_theme: monokai # highlight.js built-in, local CSS, or public URL favicon: assets/favicon.ico separator: ^\s*---\s*$ # Regex: horizontal slide boundary separator_vertical: ^\s*-v-\s*$ # Regex: vertical slide boundary separator_notes: "^Notes?:" # Regex: speaker notes marker charset: utf-8 template: custom-slide.jinja # Custom Jinja2 template (optional) preprocess_script: scripts/preprocess.py # Custom Python preprocessor revealjs: # Passed directly to Reveal.initialize() height: 1080 width: 1920 transition: slide history: true slideNumber: "c/t" plugins: - name: RevealMermaid extra_javascript: - https://cdn.jsdelivr.net/npm/reveal.js-mermaid-plugin/plugin/mermaid/mermaid.min.js - extra_javascript: - https://cdn.jsdelivr.net/npm/reveal-plantuml/dist/reveal-plantuml.min.js ``` -------------------------------- ### HTML URLs Source: https://github.com/martenbe/mkslides/blob/main/tests/relative_links/slides/someslides-1.md Examples of URLs using HTML tags. These are not checked by link checkers. ```html test ``` ```html ``` -------------------------------- ### Markdown URLs Source: https://github.com/martenbe/mkslides/blob/main/tests/relative_links/slides/someslides-1.md Examples of URLs in Markdown. These are not checked by link checkers. ```markdown [](https://example.com/some-file) [](https://example.com/some-file.txt) ![](https://example.com/some-file.png) ``` ```markdown []() []() ![]() ``` -------------------------------- ### Indented Code Block Example Source: https://github.com/martenbe/mkslides/blob/main/tests/text/slides/someslides-1.md Shows links within an indented code block, verifying they are not parsed. ```plaintext [test](./some-random-md-link) ![test](./some-random-md-image.png) test ``` -------------------------------- ### Markdown Relative Links Source: https://github.com/martenbe/mkslides/blob/main/tests/relative_links/slides/someslides-1.md Examples of relative links to files and folders in Markdown. These are typically checked by link checkers. ```markdown [](test-1) [](./test-1) [](some-folder/test-4) [](./some-folder/test-4) ``` ```markdown []() [](<./test-1>) []() [](<./some-folder/test-4>) ``` ```markdown [](test-2.txt) [](./test-2.txt) [](some-folder/test-5.txt) [](./some-folder/test-5.txt) ``` ```markdown []() [](<./test-2.txt>) []() [](<./some-folder/test-5.txt>) ``` ```markdown ![](test-3.png) ![](./test-3.png) ![](some-folder/test-6.png) ![](./some-folder/test-6.png) ``` ```markdown ![]() ![](<./test-3.png>) ![]() ![](<./some-folder/test-6.png>) ``` -------------------------------- ### HTML Absolute Links Source: https://github.com/martenbe/mkslides/blob/main/tests/relative_links/slides/someslides-1.md Examples of absolute links using HTML tags. These are not checked by link checkers. ```html test ``` ```html ``` -------------------------------- ### HTML Relative Links Source: https://github.com/martenbe/mkslides/blob/main/tests/relative_links/slides/someslides-1.md Examples of relative links using HTML anchor and image tags. These are also typically checked by link checkers. ```html test test test-4 test-4 ``` ```html test-2 test-2 test-5 test-5 ``` ```html ``` -------------------------------- ### Markdown Absolute Links Source: https://github.com/martenbe/mkslides/blob/main/tests/relative_links/slides/someslides-1.md Examples of absolute links in Markdown. These are not checked by link checkers as they point outside the current site structure. ```markdown [](/some-absolute-folder/some-absolute-file) [](/some-absolute-folder/some-absolute-file.txt) ![](/some-absolute-folder/some-absolute-file.png) ``` ```markdown []() []() ![]() ``` -------------------------------- ### MkSlides Help Commands Source: https://github.com/martenbe/mkslides/blob/main/README.md View help information for the build and serve commands. This is useful for understanding available options and arguments. ```bash mkslides build -h mkslides serve -h ``` -------------------------------- ### MkSlides Build Command Help Source: https://github.com/martenbe/mkslides/blob/main/README.md Provides help for the 'mkslides build' command, detailing options for building MkSlides documentation. Specify a configuration file, output directory, or strict link resolution. ```text Usage: mkslides build [OPTIONS] [PATH] Build the MkSlides documentation. PATH is the path to the directory containing Markdown files. This argument is optional and will default to 'slides', or 'docs' if the first directory doesn't exist. If PATH is a single Markdown file or a directory containing a single Markdown file, it will always be processed into `index.html` regardless the name of the Markdown file. Options: -f, --config-file FILENAME Provide a specific MkSlides-Reveal config file. -d, --site-dir PATH The directory to output the result of the slides build. All files are removed from the site dir before building. [default: site] -s, --strict Fail if a relative link cannot be resolved, otherwise just print a warning. -h, --help Show this message and exit. ``` -------------------------------- ### MkSlides build command options Source: https://github.com/martenbe/mkslides/blob/main/slides/index.md Full help output for the mkslides build command, detailing available options and their usage. ```text Usage: mkslides build [OPTIONS] [PATH] Build the MkSlides documentation. PATH is the path to the directory containing Markdown files. This argument is optional and will default to 'slides', or 'docs' if the first directory doesn't exist. If PATH is a single Markdown file or a directory containing a single Markdown file, it will always be processed into `index.html` regardless the name of the Markdown file. Options: -f, --config-file FILENAME Provide a specific MkSlides-Reveal config file. -d, --site-dir PATH The directory to output the result of the slides build. All files are removed from the site dir before building. [default: site] -s, --strict Fail if a relative link cannot be resolved, otherwise just print a warning. -h, --help Show this message and exit. ``` -------------------------------- ### Create and Publish Release Source: https://github.com/martenbe/mkslides/wiki/Release Use this command sequence to update the patch version, clean the distribution directory, build the package, and publish it. ```bash uv run bumpver update --patch --allow-dirty rm -rf dist uv build uv publish ``` -------------------------------- ### Add Licensing Headers with reuse Source: https://github.com/martenbe/mkslides/blob/main/CONTRIBUTING.md Use this command to add SPDX-compatible licensing and copyright headers to new files. Ensure you replace placeholders with your name, the correct year, and the file/folder path. The `--skip-existing` flag prevents overwriting existing headers. ```bash uv run reuse annotate --recursive \ --copyright " and Contributors to the project (https://github.com/MartenBE/mkslides/graphs/contributors)" \ --copyright-prefix spdx-string-c \ --license MIT \ --year "" \ --skip-unrecognised \ --skip-existing \ "" ``` -------------------------------- ### MkSlides Serve Command Help Source: https://github.com/martenbe/mkslides/blob/main/README.md Details the 'mkslides serve' command for running a local development server. Options include specifying the configuration file, strict link checking, the local address, and automatic browser opening. ```text Usage: mkslides serve [OPTIONS] [PATH] Run the builtin development server. PATH is the path to the directory containing Markdown files. This argument is optional and will default to 'slides', or 'docs' if the first directory doesn't exist. If PATH is a single Markdown file or a directory containing a single Markdown file, it will always be processed into `index.html` regardless the name of the Markdown file. Options: -f, --config-file FILENAME Provide a specific MkSlides-Reveal config file. -s, --strict Fail if a relative link cannot be resolved, otherwise just print a warning. -a, --dev-addr IP address and port to serve slides locally. [default: localhost:8000] -o, --open Open the website in a Web browser after the initial build finishes. --debounce-interval FLOAT Interval in seconds to debounce file changes. After an initial file change, the browser will only be reloaded after this interval has passed without any new file changes. This helps to prevent multiple reloads when multiple file changes happen in quick succession. [default: 1.0] -h, --help Show this message and exit. ``` -------------------------------- ### Live Preview Slideshow Source: https://github.com/martenbe/mkslides/blob/main/README.md Serve slideshows with live preview enabled. Similar to the build command, you can specify a folder or a single Markdown file. Changes in your Markdown files will automatically reload the preview. ```bash mkslides serve mkslides serve somefolder/ mkslides serve test.md ``` -------------------------------- ### Build MkSlides HTML files Source: https://github.com/martenbe/mkslides/blob/main/slides/index.md Generate static HTML slideshow files from Markdown input. ```bash mkslides build [OPTIONS] [PATH] ``` -------------------------------- ### MkSlides CLI General Help Source: https://github.com/martenbe/mkslides/blob/main/README.md Displays general usage information for the MkSlides CLI, including available commands and global options. ```text Usage: mkslides [OPTIONS] COMMAND [ARGS]... MkSlides - Slides with Markdown using the power of Reveal.js. Options: -V, --version Show the version and exit. -v, --verbose Enable verbose output -h, --help Show this message and exit. Commands: build Build the MkSlides documentation. serve Run the builtin development server. ``` -------------------------------- ### Build Static Slideshow Source: https://github.com/martenbe/mkslides/blob/main/README.md Generate static HTML slideshow files from Markdown. Specify a folder or a single Markdown file as the source path. If no path is provided, it defaults to 'slides/' or 'docs/'. ```bash mkslides build mkslides build somefolder/ mkslides build test.md ``` -------------------------------- ### Run All Tests with Uvicorn Source: https://github.com/martenbe/mkslides/blob/main/tests/README.md Execute all project tests using the `uv` command. This is the standard way to run the test suite. ```bash uv run pytest ``` -------------------------------- ### Update Reveal.js Library Source: https://github.com/martenbe/mkslides/wiki/Update-Reveal.js Use these commands to switch to a new branch, navigate to the Reveal.js directory, fetch tags, checkout a specific tag, and commit the updated library. ```bash git switch -c update-revealjs- cd src/mkslides/assets/reveal.js/ git fetch --tags git tag | tail -n 5 git checkout cd .. git commit -am "Updated RevealJs" ``` -------------------------------- ### CI/CD Deployment Workflow for GitHub Pages Source: https://context7.com/martenbe/mkslides/llms.txt Automate the building and deployment of MkSlides presentations to GitHub Pages on every push to the main branch. This workflow requires specific permissions for GitHub Pages. ```yaml # .github/workflows/deploy.yml name: Deploy Slides to GitHub Pages on: push: branches: [main] jobs: deploy: runs-on: ubuntu-latest permissions: contents: read pages: write id-token: write steps: - uses: actions/checkout@v4 - name: Set up Python uses: actions/setup-python@v5 with: python-version: "3.13" - name: Install MkSlides run: pip install mkslides - name: Build slides run: mkslides build slides/ - name: Upload Pages artifact uses: actions/upload-pages-artifact@v3 with: path: site/ - name: Deploy to GitHub Pages uses: actions/deploy-pages@v4 ``` -------------------------------- ### Build Static HTML Slides with MkSlides Source: https://context7.com/martenbe/mkslides/llms.txt Use the `mkslides build` command to convert Markdown files into Reveal.js HTML slideshows. Specify input paths, configuration files, and output directories. ```bash # Build from default 'slides/' directory → output to 'site/' mkslides build # Build from a custom directory mkslides build my-presentations/ # Build a single file mkslides build talk.md # Use a custom config file and output directory mkslides build -f custom-config.yml -d public/ slides/ # Strict mode: fail on unresolvable relative links instead of warning mkslides build --strict slides/ ``` -------------------------------- ### Simulate Mkslides Build Process Source: https://github.com/martenbe/mkslides/blob/main/tests/README.md Manually run the Mkslides build command with specific configuration and source directories. This helps in debugging and understanding the build output without running a full test. ```bash uv run mkslides -v build -s -d site -f tests/navtree/navtree-config.yml tests/navtree/slides ``` -------------------------------- ### Programmatic API: Build Slides Source: https://context7.com/martenbe/mkslides/llms.txt Use MkSlides' internal Python API to build presentations programmatically. Load configuration from `mkslides.yml` or a specific file, then specify input and output paths. ```python from pathlib import Path from mkslides.config import get_config from mkslides.build import build # Load configuration (auto-discovers mkslides.yml in cwd) config = get_config() # Or load a specific config file config = get_config(config_file=Path("custom-config.yml")) # Build: converts all Markdown in input_path → HTML in output_path build( config=config, input_path=Path("slides/").resolve(), output_path=Path("site/").resolve(), strict=False, # Set True to raise on broken relative links ) ``` -------------------------------- ### Add Mermaid.js and PlantUML Plugins to mkslides.yml Source: https://context7.com/martenbe/mkslides/llms.txt Configure mkslides.yml to include Mermaid.js and PlantUML plugins for diagram rendering. Ensure correct paths for extra JavaScript and CSS files. ```yaml plugins: - name: RevealMermaid extra_javascript: - https://cdn.jsdelivr.net/npm/reveal.js-mermaid-plugin/plugin/mermaid/mermaid.min.js - name: RevealChalkboard extra_css: - https://cdn.jsdelivr.net/npm/reveal.js-plugins/chalkboard/style.css extra_javascript: - https://cdn.jsdelivr.net/npm/reveal.js-plugins/chalkboard/plugin.js - extra_javascript: - https://cdn.jsdelivr.net/npm/reveal-plantuml/dist/reveal-plantuml.min.js ``` -------------------------------- ### Configure Reveal.js Plugins in mkslides.yml Source: https://github.com/martenbe/mkslides/blob/main/README.md Specify Reveal.js plugins and their associated CSS/JavaScript files within the `plugins` section of your `mkslides.yml` configuration file. Ensure correct URLs for external resources. ```yaml plugins: # Name of the plugin (optional, see plugin README): plugin id string # (see https://revealjs.com/creating-plugins/#registering-a-plugin) - name: RevealExamplePlugin # List of CSS files of the plugin (optional, see plugin README): # public url to CSS file per entry extra_css: - https://cdn.jsdelivr.net/npm/reveal.js-example-pluging/example.min.css # List of JavaScript files of the plugin (optional, see plugin README): # public url to JavaScript file per entry extra_javascript: - https://cdn.jsdelivr.net/npm/reveal.js-example-pluging/example.min.js - name: RevealMermaid extra_javascript: - https://cdn.jsdelivr.net/npm/reveal.js-mermaid-plugin/plugin/mermaid/mermaid.min.js - extra_javascript: - https://cdn.jsdelivr.net/npm/reveal-plantuml/dist/reveal-plantuml.min.js ``` -------------------------------- ### Override mkslides Configuration with Markdown Frontmatter Source: https://github.com/martenbe/mkslides/blob/main/README.md Demonstrates how to override global mkslides configuration options like theme, highlight theme, and Reveal.js settings on a per-Markdown file basis using frontmatter. Relative file paths in frontmatter are resolved relative to the Markdown file. ```markdown --- slides: theme: solarized highlight_theme: vs separator: title: Frontmatter title. revealjs: height: 1080 width: 1920 transition: zoom --- # Slides with frontmatter ## Lorem ipsum Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum. ``` -------------------------------- ### Run a Specific Test File with Uvicorn Source: https://github.com/martenbe/mkslides/blob/main/tests/README.md Execute a single test file using `uv` and `pytest`. Specify the path to the test file to run. ```bash uv run pytest tests/navtree/test_navtree.py ``` -------------------------------- ### Update Git Submodules Source: https://github.com/martenbe/mkslides/blob/main/src/mkslides/assets/README.md Navigate into the submodule directories, fetch the latest tags, and checkout a specific version. Ensure you are outside of a submodule directory before committing changes. ```bash cd src/mkslides/assets/highlight.js git fetch --tags git tag # Optional to see the available tags git checkout tags/11.11.1 cd src/mkslides/assets/reveal.js git fetch --tags git tag # Optional to see the available tags cd src/ # Or anywhere else in the mkslides repo, but not in a git submodule ``` -------------------------------- ### Reveal.js Plugin Integration in YAML Source: https://context7.com/martenbe/mkslides/llms.txt Integrate third-party Reveal.js plugins by listing them in the `plugins` section of `mkslides.yml`. Each plugin can specify its global JavaScript name and CDN URLs for CSS and JavaScript. ```yaml plugins: ``` -------------------------------- ### Programmatic API: MarkupGenerator Source: https://context7.com/martenbe/mkslides/llms.txt Utilize the lower-level `MarkupGenerator` class for more granular control over the slide generation process. This allows scanning files and processing Markdown without necessarily performing a full build. ```python from pathlib import Path from mkslides.config import get_config from mkslides.markupgenerator import MarkupGenerator # Lower-level: use MarkupGenerator directly for inspection config = get_config() generator = MarkupGenerator( global_config=config, md_root_path=Path("slides/"), output_directory_path=Path("site/"), strict=True, ) # Scan files without building md_files, non_md_files = generator.scan_files() for f in md_files: print(f.source_path, "→", f.destination_path) # Full build generator.process_markdown() ``` -------------------------------- ### Stage Git Submodule Changes Source: https://github.com/martenbe/mkslides/blob/main/src/mkslides/assets/README.md Add the modified submodule directories to the staging area in preparation for committing. This command explicitly stages the updated submodules. ```console $ git add src/mkslides/assets/highlight.js src/mkslides/assets/reveal.js $ git status On branch main Your branch is up to date with 'origin/main'. Changes to be committed: (use "git restore --staged ..." to unstage) modified: src/mkslides/assets/highlight.js modified: src/mkslides/assets/reveal.js ``` -------------------------------- ### Frontmatter for Per-File Configuration Source: https://context7.com/martenbe/mkslides/llms.txt Use YAML frontmatter at the top of Markdown files to override global mkslides.yml settings for individual presentations. This allows for theme, highlight, separator, and title customization. ```markdown --- slides: theme: solarized highlight_theme: vs separator: "" favicon: ./assets/my-favicon.ico title: "Chapter 1 – Introduction" revealjs: height: 1080 width: 1920 transition: zoom backgroundTransition: fade plugins: - name: RevealMermaid extra_javascript: - https://cdn.jsdelivr.net/npm/reveal.js-mermaid-plugin/plugin/mermaid/mermaid.min.js --- # Chapter 1 ## Overview - Point A - Point B ## Mermaid Diagram ```mermaid graph LR A --> B --> C ``` ``` -------------------------------- ### Custom Navigation Tree Configuration Source: https://context7.com/martenbe/mkslides/llms.txt Control the order, display names, and nesting of slides in the index page by defining a manual `nav` list in `mkslides.yml`. This mirrors MkDocs navigation structure. ```yaml # mkslides.yml index: title: "Course Slides" nav: - "Week 1 – Intro": week1/intro.md - "Week 2": - "Basics": week2/basics.md - "Advanced": week2/advanced.md - "Summary": summary.md ``` -------------------------------- ### Default mkslides.yml Configuration Source: https://github.com/martenbe/mkslides/blob/main/README.md This is the default configuration used by mkslides if no configuration file is present. It sets options for the index page, slides, and Reveal.js. ```yaml --- index: enable_footer: true template: assets/templates/index.html.jinja # Comes with the pip package title: Index slides: highlight_theme: monokai template: assets/templates/slideshow.html.jinja # Comes with the pip package theme: black revealjs: history: true slideNumber: c/t ``` -------------------------------- ### Custom Jinja2 Slideshow Template Source: https://context7.com/martenbe/mkslides/llms.txt Replace the default HTML template for individual slideshows by providing a custom Jinja2 file in `mkslides.yml`. The template receives various variables for rendering the presentation. ```jinja2 {# custom-slide.jinja — minimal custom slideshow template #} {% if favicon %}{% endif %} {% if theme %}{% endif %} {% if highlight_theme %}{% endif %}
``` ```yaml # mkslides.yml slides: template: custom-slide.jinja ``` -------------------------------- ### Custom Preprocessing Script in Python Source: https://context7.com/martenbe/mkslides/llms.txt Register a Python script with a `preprocess` function in `mkslides.yml` to modify raw Markdown content before rendering. The function receives the entire file content as a string and should return the modified string. ```python # scripts/replace_ats.py def preprocess(content: str) -> str: """Replace @mention style tokens with formatted spans.""" import re return re.sub(r"@(\w+)", r'@\1', content) ``` ```yaml # mkslides.yml slides: preprocess_script: scripts/replace_ats.py ``` ```markdown # Slide using preprocessing Hello @alice and @bob — your names will be wrapped in a span. ``` -------------------------------- ### Check Git Status After Update Source: https://github.com/martenbe/mkslides/blob/main/src/mkslides/assets/README.md Verify the status of your git repository to see which submodules have been modified. This command shows changes not yet staged for commit. ```console $ git status On branch main Your branch is up to date with 'origin/main'. Changes not staged for commit: (use "git add ..." to update what will be committed) (use "git restore ..." to discard changes in working directory) modified: src/mkslides/assets/highlight.js (new commits) modified: src/mkslides/assets/reveal.js (new commits) no changes added to commit (use "git add" and/or "git commit -a") ``` -------------------------------- ### Render Mermaid Diagram in Markdown Source: https://context7.com/martenbe/mkslides/llms.txt Embed Mermaid diagrams directly within Markdown files using the `mermaid` code block. This allows for dynamic and interactive diagrams within presentations. ```mermaid sequenceDiagram Alice->>Bob: Hello Bob! Bob-->>Alice: Hi Alice! ``` -------------------------------- ### Commented Markdown Links Source: https://github.com/martenbe/mkslides/blob/main/tests/text/slides/someslides-1.md Verifies that markdown links within comments in code blocks are ignored. ```markdown ``` -------------------------------- ### Commented HTML Links Source: https://github.com/martenbe/mkslides/blob/main/tests/text/slides/someslides-1.md Verifies that HTML links within comments in code blocks are ignored. ```html ``` -------------------------------- ### Markdown Link Parsing Source: https://github.com/martenbe/mkslides/blob/main/tests/text/slides/someslides-1.md Ensures that markdown links within code blocks are not parsed as anchors. ```markdown [test](./some-random-md-link) ``` ```markdown ![test](./some-random-md-image.png) ``` -------------------------------- ### HTML Link Parsing Source: https://github.com/martenbe/mkslides/blob/main/tests/text/slides/someslides-1.md Ensures that HTML links within code blocks are not parsed as anchors. ```html test ``` ```html ``` -------------------------------- ### Markdown Links in Code Blocks Source: https://github.com/martenbe/mkslides/blob/main/tests/relative_links/slides/someslides-1.md Links within Markdown code blocks are not processed or checked. ```markdown ```md [](some-non-existing-file) [](./some-non-existing-file) []() [](<./some-non-existing-file>) ![](some-non-existing-file.txt) ![](./some-non-existing-file.txt) ![]() ![](<./some-non-existing-file.txt>) ![](some-non-existing-file.png) ![](./some-non-existing-file.png) ![]() ![](<./some-non-existing-file.png>) test test test test ``` ``` ```markdown [](some-non-existing-file) [](./some-non-existing-file) []() [](<./some-non-existing-file>) ![](some-non-existing-file.txt) ![](./some-non-existing-file.txt) ![]() ![](<./some-non-existing-file.txt>) ![](some-non-existing-file.png) ![](./some-non-existing-file.png) ![]() ![](<./some-non-existing-file.png>) test test test test ``` -------------------------------- ### Commented Markdown Code Block Source: https://github.com/martenbe/mkslides/blob/main/tests/text/slides/someslides-2.md This markdown code block contains commented-out markdown links and images. It illustrates that comments within code blocks are preserved and not interpreted. ```markdown ``` -------------------------------- ### Slide Separators in Markdown Source: https://context7.com/martenbe/mkslides/llms.txt Define slide separators in Markdown files. The default horizontal separator is `---` and vertical is `-v-`. Speaker notes are prefixed with `Notes:`. ```markdown # My Presentation --- ## Slide 2 — Horizontal Content here. -v- ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.