nextjournal / clerk

⚡️ Moldable Live Programming for Clojure
https://clerk.vision
ISC License
1.79k stars 77 forks source link

clerk/md has double-nesting? #423

Closed sritchie closed 1 year ago

sritchie commented 1 year ago

I am using clerk/md to dynamically generate a shell command:

image
;; To create a new Clerk project based on
;; [`mafs/clerk`](https://github.com/mentat-collective/clerk-utils/tree/main/resources/clerk_utils/custom)
;; in a folder called `my-notebook-project`, run the following command:

^{::clerk/visibility {:code :hide}}
(clerk/md
(format "
```sh
clojure -Sdeps '{:deps {io.github.mentat-collective/mafs.cljs {:git/sha \"%s\"}}}' \\
-Tnew create \\
:template mafs/clerk \\
:name myusername/my-notebook-project
```" (docs/git-sha)))

and the rendered block has two scroll bars, and a narrower width than other code:

image

I still get a block with a single scroll bar if my generated markdown via clerk/md is narrower:

image
zampino commented 1 year ago

I can't reproduce the double nesting on main (at fad499407d979916d21b33cc7e46e73f7a485e37) but something is wrong with markdown code block margins (maybe after 94dfb96138cfc549c3e4c0948f6ebf71380a4676 ?). Trying with

;; ```py
;; code
;; ```
;; text

(clerk/md "```py
code
```")

(clerk/md
 (format "
```sh
clojure -Sdeps '{:deps {io.github.mentat-collective/mafs.cljs {:git/sha \"%s\"}}}' \\
-Tnew create \\
:template mafs/clerk \\
:name myusername/my-notebook-project
```" "fad499407d979916d21b33cc7e46e73f7a485e37"))

gives

CleanShot 2023-02-17 at 11 11 39

sritchie commented 1 year ago

@zampino here is my package.json, with dependencies all pulled in from clerk/render:

{
  "dependencies": {
    "@codemirror/autocomplete": "6.4.1",
    "@codemirror/commands": "6.2.1",
    "@codemirror/lang-markdown": "6.0.0",
    "@codemirror/language": "6.6.0",
    "@codemirror/lint": "6.1.1",
    "@codemirror/search": "6.2.3",
    "@codemirror/state": "6.2.0",
    "@codemirror/view": "6.9.0",
    "@lezer/common": "1.0.2",
    "@lezer/generator": "1.2.2",
    "@lezer/highlight": "1.1.3",
    "@lezer/lr": "1.3.3",
    "@lezer/markdown": "1.0.2",
    "@nextjournal/lang-clojure": "1.0.0",
    "@nextjournal/lezer-clojure": "1.0.0",
    "d3-require": "1.3.0",
    "framer-motion": "6.5.1",
    "katex": "0.12.0",
    "mafs": "0.15.2",
    "markdown-it": "12.3.2",
    "markdown-it-block-image": "0.0.3",
    "markdown-it-footnote": "3.0.3",
    "markdown-it-texmath": "0.9.7",
    "markdown-it-toc-done-right": "4.2.0",
    "punycode": "2.1.1",
    "react": "18.2.0",
    "react-dom": "18.2.0",
    "shadow-cljs": "2.20.14",
    "use-sync-external-store": "1.2.0",
    "vh-sticky-table-header": "1.2.1",
    "w3c-keyname": "2.2.6"
  },
  "devDependencies": {
    "gh-pages": "^3.2.3"
  },
  "scripts": {
    "gh-pages": "gh-pages -d public/build --dotfiles true"
  }
}
mk commented 1 year ago

This has been fixed with d4a43dd.