From dcfeb6a0fb33dd02416c4d51558e3886c6f5c761 Mon Sep 17 00:00:00 2001 From: krymtkts Date: Sun, 19 Nov 2023 17:48:14 +0900 Subject: [PATCH 1/3] Add marked-footnote. --- package-lock.json | 9 +++++++++ package.json | 3 ++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/package-lock.json b/package-lock.json index 0f64f94..ab71c77 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10,6 +10,7 @@ "dependencies": { "highlight.js": "^11.9.0", "marked": "^10.0.0", + "marked-footnote": "^1.1.2", "marked-highlight": "^2.0.7", "react": "^18.2.0", "react-dom": "^18.2.0", @@ -209,6 +210,14 @@ "node": ">= 18" } }, + "node_modules/marked-footnote": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/marked-footnote/-/marked-footnote-1.1.2.tgz", + "integrity": "sha512-UFP3J6LR+yQBVAs33vo7q1Ji/LkeD4utyqXZ47RGLULnTcCTXzqjE93bJx3MuL8/YAwgsxLJY3sW2AAEqYCIZw==", + "peerDependencies": { + "marked": ">=7.0.0" + } + }, "node_modules/marked-highlight": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/marked-highlight/-/marked-highlight-2.0.7.tgz", diff --git a/package.json b/package.json index f26011f..b0d33bd 100644 --- a/package.json +++ b/package.json @@ -19,9 +19,10 @@ "dependencies": { "highlight.js": "^11.9.0", "marked": "^10.0.0", + "marked-footnote": "^1.1.2", "marked-highlight": "^2.0.7", "react": "^18.2.0", "react-dom": "^18.2.0", "yaml": "^2.3.4" } -} \ No newline at end of file +} From 1102dc5b755777a0dbdfd6c11128fadca56092b8 Mon Sep 17 00:00:00 2001 From: krymtkts Date: Sun, 19 Nov 2023 17:48:52 +0900 Subject: [PATCH 2/3] Add marked-footnote to marked renderer initialization. --- src/Common.fs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/Common.fs b/src/Common.fs index 987a22c..28f4b9b 100644 --- a/src/Common.fs +++ b/src/Common.fs @@ -79,6 +79,7 @@ module private Util = let private me: ResizeArray = let markedHighlight: obj -> Marked.MarkedExtension = importMember "marked-highlight" + let markedFootnote: obj -> Marked.MarkedExtension = importDefault "marked-footnote" let renderer = let heading text level = @@ -155,7 +156,9 @@ module private Util = markedHighlight !!{| highlight = highlight |} - let mes = [ renderer; highlighter ] + let footNote = markedFootnote !!{| description = "
" |} + + let mes = [ renderer; highlighter; footNote ] ResizeArray mes marked.``use`` me From 1b94c59b6a0a1f680d63b17e98d3b13d43917932 Mon Sep 17 00:00:00 2001 From: krymtkts Date: Sun, 19 Nov 2023 17:49:13 +0900 Subject: [PATCH 3/3] Update sample post about footnote. --- contents/posts/2023-02-01-about-markdown-parser.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/contents/posts/2023-02-01-about-markdown-parser.md b/contents/posts/2023-02-01-about-markdown-parser.md index 48f3181..223204f 100644 --- a/contents/posts/2023-02-01-about-markdown-parser.md +++ b/contents/posts/2023-02-01-about-markdown-parser.md @@ -26,6 +26,10 @@ plain _italic_ **bold** `code` ~~strikethrough~~ Recommends to start Markdown headings from h2 because it render the blog title as h1. +footnote like this[^1] + +[^1]: footnote line requires blank line before. + ## blockquote > blockquote