Skip to content

Comark block wrappers are not supported #2642

Description

@c-harding

Describe the bug

According to the Slidev documentation:

Slidev supports optional Comark Syntax (formerly known as MDC, Markdown Components) powered by @comark/markdown-it.

In the Comark documentation, blocks with complex syntax (ol, ul, table, blockquote, pre) can be styled by wrapping them with identical elements (e.g. ::ol)

In Slidev, this does not style the element, but rather wraps a new element around it. Additionally, prettier breaks the formatting of this syntax.

Minimal reproduction

---
comark: true
---

::ol{style="list-style-type: lower-alpha"}
1. item 1
2. item 2
::

Steps to reproduce the behavior:

  1. Expected behaviour (comark):
    1. Open https://comark.dev/play/editor?example=undefined
    2. Paste the code block above
    3. Observe that the items are numbered a,b,c.
    4. With the inspector, observe that the ol markup is correct.
  2. Slidev behaviour:
    1. Open https://sli.dev/new
    2. Paste the code block above
    3. Observe that the items are numbered 1,2,3.
    4. With the inspector, observe that two ols are nested within one another.
    5. There is no way to style the correct ol.
    6. Save, observe that the file becomes misformatted.

Environment

  • Slidev version: v52.14.2
  • Browser: Chrome 149.0.7827.115
  • OS: macOS

Further notes

This issue is split from the further note of #2639.

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions