Template syntax refactor
This commit is contained in:
@@ -187,18 +187,35 @@ functions:
|
||||
path: "./template.ts:insertTemplateText"
|
||||
slashCommand:
|
||||
name: include
|
||||
description: Include another page
|
||||
value: |
|
||||
<!-- #include "|^|" -->
|
||||
<!-- #include [[|^|]] -->
|
||||
|
||||
<!-- /include -->
|
||||
insertInlineTemplate:
|
||||
insertInjectTemplate:
|
||||
path: "./template.ts:insertTemplateText"
|
||||
slashCommand:
|
||||
name: inline-template
|
||||
name: inject
|
||||
description: Inject template
|
||||
value: |
|
||||
<!-- #template "|^|" {} -->
|
||||
<!-- #inject [[|^|]] {} -->
|
||||
|
||||
<!-- /template -->
|
||||
<!-- /inject -->
|
||||
insertInjectCleanTemplate:
|
||||
path: "./template.ts:insertTemplateText"
|
||||
slashCommand:
|
||||
name: inject-clean
|
||||
description: Inject template clean
|
||||
value: |
|
||||
<!-- #inject-clean [[|^|]] {} -->
|
||||
|
||||
<!-- /inject-clean -->
|
||||
insertHRTemplate:
|
||||
path: "./template.ts:insertTemplateText"
|
||||
slashCommand:
|
||||
name: hr
|
||||
description: Insert a horizontal rule
|
||||
value: "---"
|
||||
quickNoteCommand:
|
||||
path: ./template.ts:quickNoteCommand
|
||||
command:
|
||||
|
||||
@@ -48,6 +48,7 @@ export async function indexLinks({ name, tree }: IndexTreeEvent) {
|
||||
console.log("Now indexing", name);
|
||||
let pageMeta = extractMeta(tree);
|
||||
if (Object.keys(pageMeta).length > 0) {
|
||||
console.log("Extracted page meta data", pageMeta);
|
||||
await set(name, "meta:", pageMeta);
|
||||
}
|
||||
|
||||
@@ -88,14 +89,12 @@ export async function linkQueryProvider({
|
||||
query,
|
||||
pageName,
|
||||
}: QueryProviderEvent): Promise<any[]> {
|
||||
let uniqueLinks = new Set<string>();
|
||||
for (let { value: name } of await queryPrefix(`pl:${pageName}:`)) {
|
||||
uniqueLinks.add(name);
|
||||
let links: any[] = [];
|
||||
for (let { value: name, key } of await queryPrefix(`pl:${pageName}:`)) {
|
||||
const [, , pos] = key.split(":"); // Key: pl:page:pos
|
||||
links.push({ name, pos });
|
||||
}
|
||||
return applyQuery(
|
||||
query,
|
||||
[...uniqueLinks].map((l) => ({ name: l }))
|
||||
);
|
||||
return applyQuery(query, links);
|
||||
}
|
||||
|
||||
export async function deletePage() {
|
||||
|
||||
@@ -46,9 +46,12 @@ export async function instantiateTemplateCommand() {
|
||||
);
|
||||
|
||||
let parseTree = await parseMarkdown(text);
|
||||
let additionalPageMeta = extractMeta(parseTree, ["PAGENAME"]);
|
||||
let additionalPageMeta = extractMeta(parseTree, [
|
||||
"$name",
|
||||
"$disableDirectives",
|
||||
]);
|
||||
|
||||
let pageName = await prompt("Name of new page", additionalPageMeta.PAGENAME);
|
||||
let pageName = await prompt("Name of new page", additionalPageMeta.$name);
|
||||
if (!pageName) {
|
||||
return;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user