gitforge/modules/markup
TurtleArmy 5b6c702f41 feat(ui): support Pandoc style code blocks (#12099)
This resolves https://codeberg.org/forgejo/forgejo/issues/11107.

Codeberg doesn't support [Pandoc style code blocks](https://pandoc.org/MANUAL.html#extension-fenced_code_attributes), so only the two of these 3 will have syntax highlighting.

\`\`\`haskell
qsort []     = []
qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++
               qsort (filter (>= x) xs)
\`\`\`

\`\`\`haskell {.numberLines}
qsort []     = []
qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++
               qsort (filter (>= x) xs)
\`\`\`

\`\`\`{.numberLines .haskell}
qsort []     = []
qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++
               qsort (filter (>= x) xs)
\`\`\`

```haskell
qsort []     = []
qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++
               qsort (filter (>= x) xs)
```

```haskell {.numberLines}
qsort []     = []
qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++
               qsort (filter (>= x) xs)
```

```{.numberLines .haskell}
qsort []     = []
qsort (x:xs) = qsort (filter (< x) xs) ++ [x] ++
               qsort (filter (>= x) xs)
```

This PR adds syntax highlighting to the examples with Pandoc style code blocks. It also adds redundant code to explicitly handle the second case with the trailing attribute syntax, which might be unnecessary since it already works, but I think should be fine to leave in.

Reviewed-on: https://codeberg.org/forgejo/forgejo/pulls/12099
Reviewed-by: Ellen Εμίλια Άννα Zscheile <fogti@noreply.codeberg.org>
Reviewed-by: Gusted <gusted@noreply.codeberg.org>
2026-05-12 00:53:09 +02:00
..
asciicast
common
console
csv
external
markdown feat(ui): support Pandoc style code blocks (#12099) 2026-05-12 00:53:09 +02:00
mdstripper
orgmode feat: render org-mode file links with line numbers (#12496) 2026-05-11 20:21:29 +02:00
tests/repo/repo1_filepreview
camo.go
camo_test.go
file_preview.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
html.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
html_internal_test.go fix: escape HTML tags in inline code blocks in description (#10897) 2026-01-25 23:10:56 +01:00
html_test.go fix: escape HTML tags in inline code blocks in description (#10897) 2026-01-25 23:10:56 +01:00
renderer.go chore: add modernizer linter (#11936) 2026-04-02 03:29:37 +02:00
renderer_test.go fix: markup rendering panic must not abort the process (#9478) 2025-09-30 09:39:34 +02:00
sanitizer.go Add to html button in markdown type="button" (#10520) 2025-12-21 05:21:27 +01:00
sanitizer_test.go