muerwre.github.io/api/_content/query/S7L9CBleOj.json
muerwre 1f068b4685 commit 4247aff7889ba00c575befe5f73932d9eedbad0e
Author: Fedor Katurov <gotham48@gmail.com>
Date:   Thu Nov 3 20:46:37 2022 +0600

    fixed buttons placement
2022-11-03 14:48:34 +00:00

1 line
No EOL
11 KiB
JSON

{"_path":"/frontend/vue/make-nuxt-handle-obsidian-highlights","_dir":"vue","_draft":false,"_partial":false,"_locale":"en","_empty":false,"title":"Make Nuxt Handle Obsidian Highlights","description":"By default Nuxt Content Plugin not handling <span class=\"highlight\">highlight</span> links. To fix that we will create Nitro plugin:","excerpt":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default "},{"type":"element","tag":"a","props":{"href":"https://content.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt Content Plugin"}]},{"type":"text","value":" not handling "},{"type":"element","tag":"code-inline","props":{},"children":[{"type":"text","value":"<span class=\"highlight\">highlight</span>"}]},{"type":"text","value":" links. To fix that we will create "},{"type":"element","tag":"code-inline","props":{},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":" plugin:"}]},{"type":"element","tag":"code","props":{"code":"// ~/server/plugins/highlight.ts\nexport default defineNitroPlugin((nitroApp) => {\n nitroApp.hooks.hook(\"content:file:beforeParse\", (file) => {\n if (file._id.endsWith(\".md\")) {\n file.body = file.body.replace(\n /==([^=]+)==/gs,\n `<span class=\"highlight\">$1</span>`\n );\n }\n });\n});\n","language":"typescript"},"children":[{"type":"element","tag":"pre","props":{},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"text","value":"// ~/server/plugins/highlight.ts\nexport default defineNitroPlugin((nitroApp) => {\n nitroApp.hooks.hook(\"content:file:beforeParse\", (file) => {\n if (file._id.endsWith(\".md\")) {\n file.body = file.body.replace(\n /==([^=]+)==/gs,\n `<span class=\"highlight\">$1</span>`\n );\n }\n });\n});\n"}]}]}]}]},"body":{"type":"root","children":[{"type":"element","tag":"p","props":{},"children":[{"type":"text","value":"By default "},{"type":"element","tag":"a","props":{"href":"https://content.nuxtjs.org","rel":["nofollow"]},"children":[{"type":"text","value":"Nuxt Content Plugin"}]},{"type":"text","value":" not handling "},{"type":"element","tag":"code-inline","props":{},"children":[{"type":"text","value":"<span class=\"highlight\">highlight</span>"}]},{"type":"text","value":" links. To fix that we will create "},{"type":"element","tag":"code-inline","props":{},"children":[{"type":"text","value":"Nitro"}]},{"type":"text","value":" plugin:"}]},{"type":"element","tag":"code","props":{"code":"// ~/server/plugins/highlight.ts\nexport default defineNitroPlugin((nitroApp) => {\n nitroApp.hooks.hook(\"content:file:beforeParse\", (file) => {\n if (file._id.endsWith(\".md\")) {\n file.body = file.body.replace(\n /==([^=]+)==/gs,\n `<span class=\"highlight\">$1</span>`\n );\n }\n });\n});\n","language":"typescript"},"children":[{"type":"element","tag":"pre","props":{},"children":[{"type":"element","tag":"code","props":{"__ignoreMap":""},"children":[{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-4d9fda"},"children":[{"type":"text","value":"// ~/server/plugins/highlight.ts"}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-ac4fff"},"children":[{"type":"text","value":"export"}]},{"type":"element","tag":"span","props":{"class":"ct-0910c0"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-ac4fff"},"children":[{"type":"text","value":"default"}]},{"type":"element","tag":"span","props":{"class":"ct-0910c0"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-09e0e3"},"children":[{"type":"text","value":"defineNitroPlugin"}]},{"type":"element","tag":"span","props":{"class":"ct-0910c0"},"children":[{"type":"text","value":"((nitroApp) "}]},{"type":"element","tag":"span","props":{"class":"ct-fea133"},"children":[{"type":"text","value":"=>"}]},{"type":"element","tag":"span","props":{"class":"ct-0910c0"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-763c9d"},"children":[{"type":"text","value":"{"}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-6f6d17"},"children":[{"type":"text","value":"nitroApp"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"class":"ct-6f6d17"},"children":[{"type":"text","value":"hooks"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"class":"ct-bbc376"},"children":[{"type":"text","value":"hook"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"class":"ct-99fb3a"},"children":[{"type":"text","value":"\"content:file:beforeParse\""}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-9407eb"},"children":[{"type":"text","value":"if"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" ("}]},{"type":"element","tag":"span","props":{"class":"ct-6f6d17"},"children":[{"type":"text","value":"file"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"class":"ct-6f6d17"},"children":[{"type":"text","value":"_id"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"class":"ct-bbc376"},"children":[{"type":"text","value":"endsWith"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"("}]},{"type":"element","tag":"span","props":{"class":"ct-99fb3a"},"children":[{"type":"text","value":"\".md\""}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":")) {"}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-6f6d17"},"children":[{"type":"text","value":"file"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"class":"ct-6f6d17"},"children":[{"type":"text","value":"body"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-9407eb"},"children":[{"type":"text","value":"="}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-6f6d17"},"children":[{"type":"text","value":"file"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"class":"ct-6f6d17"},"children":[{"type":"text","value":"body"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"."}]},{"type":"element","tag":"span","props":{"class":"ct-bbc376"},"children":[{"type":"text","value":"replace"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":"("}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-1f72e6"},"children":[{"type":"text","value":"/==("}]},{"type":"element","tag":"span","props":{"class":"ct-ad2b2e"},"children":[{"type":"text","value":"["}]},{"type":"element","tag":"span","props":{"class":"ct-9407eb"},"children":[{"type":"text","value":"^"}]},{"type":"element","tag":"span","props":{"class":"ct-ad2b2e"},"children":[{"type":"text","value":"=]"}]},{"type":"element","tag":"span","props":{"class":"ct-9407eb"},"children":[{"type":"text","value":"+"}]},{"type":"element","tag":"span","props":{"class":"ct-1f72e6"},"children":[{"type":"text","value":")==/"}]},{"type":"element","tag":"span","props":{"class":"ct-9407eb"},"children":[{"type":"text","value":"gs"}]},{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":","}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" "}]},{"type":"element","tag":"span","props":{"class":"ct-99fb3a"},"children":[{"type":"text","value":"`<span class=\"highlight\">$1</span>`"}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" );"}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" }"}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-8bc6f4"},"children":[{"type":"text","value":" });"}]}]},{"type":"element","tag":"span","props":{"class":"line"},"children":[{"type":"element","tag":"span","props":{"class":"ct-763c9d"},"children":[{"type":"text","value":"}"}]},{"type":"element","tag":"span","props":{"class":"ct-0910c0"},"children":[{"type":"text","value":")"}]},{"type":"element","tag":"span","props":{"class":"ct-763c9d"},"children":[{"type":"text","value":";"}]}]}]}]}]},{"type":"element","tag":"style","children":[{"type":"text","value":".ct-ad2b2e{color:#79C0FF}.ct-1f72e6{color:#A5D6FF}.ct-9407eb{color:#FF7B72}.ct-99fb3a{color:#A5D6FF}.ct-bbc376{color:#D2A8FF}.ct-6f6d17{color:#C9D1D9}.ct-8bc6f4{color:#C9D1D9}.ct-763c9d{color:#C9D1D9}.ct-fea133{color:#FF7B72}.ct-09e0e3{color:#D2A8FF}.ct-0910c0{color:#FFA657}.ct-ac4fff{color:#FF7B72}.ct-4d9fda{color:#8B949E}.light .ct-4d9fda{color:#93A1A1}.light .ct-ac4fff{color:#859900}.light .ct-0910c0{color:#657B83}.light .ct-09e0e3{color:#268BD2}.light .ct-fea133{color:#073642}.light .ct-763c9d{color:#657B83}.light .ct-8bc6f4{color:#657B83}.light .ct-6f6d17{color:#268BD2}.light .ct-bbc376{color:#268BD2}.light .ct-99fb3a{color:#2AA198}.light .ct-9407eb{color:#859900}.light .ct-1f72e6{color:#D30102}.light .ct-ad2b2e{color:#CB4B16}"}]}],"toc":{"title":"","searchDepth":2,"depth":2,"links":[]}},"_type":"markdown","_id":"content:Frontend:Vue:Make Nuxt handle Obsidian highlights.md","_source":"content","_file":"Frontend/Vue/Make Nuxt handle Obsidian highlights.md","_extension":"md"}