Remove "syntax" support from plugs

This commit is contained in:
Zef Hemel
2024-01-24 13:34:12 +01:00
parent aaacec6d61
commit ad4a795e7f
24 changed files with 185 additions and 315 deletions
+2 -3
View File
@@ -1,9 +1,9 @@
import "$sb/lib/syscall_mock.ts";
import { parse } from "../../common/markdown_parser/parse_tree.ts";
import buildMarkdown from "../../common/markdown_parser/parser.ts";
import { extractAttributes } from "$sb/lib/attribute.ts";
import { assertEquals } from "../../test_deps.ts";
import { renderToText } from "$sb/lib/tree.ts";
import { extendedMarkdownLanguage } from "../../common/markdown_parser/parser.ts";
const inlineAttributeSample = `
# My document
@@ -26,8 +26,7 @@ Top level attributes:
`;
Deno.test("Test attribute extraction", async () => {
const lang = buildMarkdown([]);
const tree = parse(lang, inlineAttributeSample);
const tree = parse(extendedMarkdownLanguage, inlineAttributeSample);
const toplevelAttributes = await extractAttributes(tree, false);
// console.log("All attributes", toplevelAttributes);
assertEquals(toplevelAttributes.name, "sup");
+2 -7
View File
@@ -1,9 +1,8 @@
import "$sb/lib/syscall_mock.ts";
import { parse } from "../../common/markdown_parser/parse_tree.ts";
import buildMarkdown from "../../common/markdown_parser/parser.ts";
import { assertEquals } from "../../test_deps.ts";
import { extractFeedItems } from "$sb/lib/feed.ts";
import { nodeDefToMDExt } from "../../common/markdown_parser/markdown_ext.ts";
import { extendedMarkdownLanguage } from "../../common/markdown_parser/parser.ts";
const feedSample1 = `---
test: ignore me
@@ -25,11 +24,7 @@ Completely free form
Deno.test("Test feed parsing", async () => {
// Ad hoc added the NamedAnchor extension from the core plug-in inline here
const lang = buildMarkdown([nodeDefToMDExt("NamedAnchor", {
firstCharacters: ["$"],
regex: "\\$[a-zA-Z\\.\\-\\/]+[\\w\\.\\-\\/]*",
})]);
const tree = parse(lang, feedSample1);
const tree = parse(extendedMarkdownLanguage, feedSample1);
const items = await extractFeedItems(tree);
assertEquals(items.length, 3);
assertEquals(items[0], {
+2 -3
View File
@@ -1,8 +1,7 @@
import wikiMarkdownLang from "../../common/markdown_parser/parser.ts";
import type { ParseTree } from "$sb/lib/tree.ts";
import { parse } from "../../common/markdown_parser/parse_tree.ts";
import { extendedMarkdownLanguage } from "../../common/markdown_parser/parser.ts";
export function parseMarkdown(text: string): ParseTree {
const lang = wikiMarkdownLang([]);
return parse(lang, text);
return parse(extendedMarkdownLanguage, text);
}
+4 -6
View File
@@ -9,9 +9,9 @@ import {
renderToText,
replaceNodesMatching,
} from "./tree.ts";
import wikiMarkdownLang from "../../common/markdown_parser/parser.ts";
import { assertEquals, assertNotEquals } from "../../test_deps.ts";
import { parse } from "../../common/markdown_parser/parse_tree.ts";
import { extendedMarkdownLanguage } from "../../common/markdown_parser/parser.ts";
const mdTest1 = `
# Heading
@@ -49,8 +49,7 @@ name: something
`;
Deno.test("Test parsing", () => {
const lang = wikiMarkdownLang([]);
const mdTree = parse(lang, mdTest1);
const mdTree = parse(extendedMarkdownLanguage, mdTest1);
addParentPointers(mdTree);
// console.log(JSON.stringify(mdTree, null, 2));
const wikiLink = nodeAtPos(mdTree, mdTest1.indexOf("Wiki Page"))!;
@@ -75,12 +74,11 @@ Deno.test("Test parsing", () => {
}
});
// console.log(JSON.stringify(mdTree, null, 2));
let mdTree3 = parse(lang, mdTest3);
let mdTree3 = parse(extendedMarkdownLanguage, mdTest3);
// console.log(JSON.stringify(mdTree3, null, 2));
});
Deno.test("AST functions", () => {
const lang = wikiMarkdownLang([]);
const mdTree = parse(lang, mdTest1);
const mdTree = parse(extendedMarkdownLanguage, mdTest1);
console.log(JSON.stringify(parseTreeToAST(mdTree), null, 2));
});