Slides Extended

repository·main·Indexed 42 days ago

https://github.com/ebullient/obsidian-slides-extended

An Obsidian community plugin (version 2.5.1) that transforms Markdown notes into professional slide decks using reveal.js. It features live previews, custom themes, PDF and HTML export, and support for LaTeX math rendering, Obsidian callouts, and grid layouts. Users can configure custom slide separators, embed audio and video, and manage assets via YAML frontmatter.

Tokens
12.6K
Snippets
43
Records
60
Agent score
55%

What's inside Slides Extended

  1. Overview of Slides Extended features

    main

    Slides Extended is an Obsidian plugin designed for creating slide decks directly from Markdown notes. Key capabilities include:

    • Note Embedding: Use your existing notes as slide content.
    • Live Preview: View changes to your slides in real-time while editing.
    • Theming & Annotations: Customize the visual appearance and style of your presentations.
    • Export Options: Save your slides as PDF documents or HTML presentations.
    • Markdown Support: Supports most standard Obsidian Markdown syntax.
  2. Advanced LaTeX features in Slides

    main

    The math rendering engine supports several advanced LaTeX environments and commands:

    • Align environments: Use \begin{align*} ... \end{align*} for multi-line equations. Double backslashes \\ are used for new lines. For extra empty lines, use multiple backslashes (e.g., \\\\).
    • Cases: Use \begin{cases} ... \end{cases} for piecewise functions.
    • Matrices: Supports pmatrix, vmatrix, and align based matrix construction.
    • Equation Numbering: Use the \tag{...} command to add labels or numbers to equations.
    • Text and Verbatim: Supports \texttt{...} and \verb|...| for monospaced text within math blocks.
    • Escaping: Standard LaTeX escaping for characters like _, {, }, and % works within math blocks.
    % Equation numbering
    $$\begin{align*}
    \int_0^\infty \mathrm{d} x \; x^2 \tag{1} \\
    \int_0^\infty \mathrm{d} x \; x^3 \tag{2}
    \end{align*}
    $$
    
    % Align with multiple backslashes for extra spacing
    $$\begin{align*}
    A &= B \\\n  &= C
    \end{align*}
    $$
  3. Use the formula template for math

    main

    You can use a specific slide template to ensure math formulas are rendered as inline-style equations regardless of your global 'show grid' settings. Use the [[template_formula]] template syntax in your slide comment.

    To use this, add <!-- slide template="[[template_formula]]" --> before the slide content and wrap your math in a ::: formula container.

    <!-- slide template="[[template_formula]]" -->
    
    ## Slide Title
    
    ::: formula
    $$\lim_{t \to \infty} (w(t) - y(t)) = 0$$
    :::
  4. Render Math in Slides

    main

    Slides Extended supports LaTeX math rendering using both inline and display math syntax.

    • Inline Math: Use single dollar signs $ ... $ to render math within a line of text.
    • Display Math: Use double dollar signs $$ ... $$ to render math as a standalone block.

    Note that the visual rendering of display math (e.g., the position of limits like $\lim_{t \to \infty}$) may change depending on whether the 'show grid' setting is enabled in your presentation settings.

    $\\begin{vmatrix}a&b&c\\ d&e&f\\ g&h&i\end{vmatrix}$
    
    $$\\lim_{t \to \infty} (w(t) - y(t)) = 0$$
    
    $$
    $\begin{cases}
    2x_1^2 + x_2^{2} \leq 10 \\
    x_1 + 3x_2 \leq 15 \\
    x_1, x_2 \geq 0
    \end{cases}
    $$
  5. Install Slides Extended using BRAT

    main

    If you use the BRAT plugin for managing beta or GitHub-based plugins:

    1. Ensure BRAT is installed.
    2. Open the Obsidian command palette (Ctrl/Cmd + P).
    3. Run the command BRAT: Add a Beta Plugin.
    4. Enter ebullient/obsidian-slides-extended as the GitHub repository.
    5. Restart or reload your vault once the installation is complete.
  6. Use Grid layouts for slide elements

    main

    The <grid> component allows you to position elements on a slide using drag, drop, and style attributes, as well as background and padding settings. This is useful for placing callouts or other content in specific areas of the slide.

    Key attributes:

    • drag: Starting position.
    • drop: Target position.
    • bg: Background color (e.g., white).
    • pad: Padding (e.g., 50px).
    <grid drag="30 30" drop="11 68" style="font-size:36px">
    > [!example]
    > Here is an Example for an Callout in a Slide.
    </grid>
    
    <grid drag="50 100" drop="50 0" bg="white" pad="50px" style="font-size:36px">
    > [!cite]
    > Here is an Cite for an Callout in a Slide.
    </grid>
  7. Use Markdown syntax and Callouts in slides

    main

    Slides Extended supports standard Markdown syntax including emphasis, bold, highlight, strikethrough, and triple emphasis.

    It also supports Obsidian-style Callouts (e.g., [!danger], [!warning], [!tip], [!error], [!example], [!cite], [!note]). Callouts can contain nested Markdown elements like emphasis and bold text.

    Note: Unordered list fragments (using - or +) work within callouts, but ordered lists do not support this fragment behavior.

    _emphasis_ **bold** ==highlight==  ***triple***  
    
    > [!danger] Attention *for ==real==*!
    > _emphasis_ **bold** ==highlight==  _**triple**_
    
    > [!tip] This tip has a custom Header
    > This is an Tip with a custom Title
  8. Install Slides Extended via Obsidian Community Plugins

    main

    The easiest way to install Slides Extended is through the built-in Obsidian community plugin browser:

    1. Open Obsidian and go to Settings.
    2. Click on Community Plugins.
    3. Ensure "Safe Mode" is turned off.
    4. Click Browse.
    5. Search for Slides Extended.
    6. Click Install.
    7. Enable the plugin by toggling it on in the Installed Plugins section.