From 0047384d707fe729315437f43da76635d7ae053d Mon Sep 17 00:00:00 2001 From: Tom Moor Date: Tue, 15 Aug 2023 19:52:16 +0200 Subject: [PATCH] fix: Code blocks nested in list do not get line numbers --- shared/editor/extensions/Prism.ts | 7 ++++--- shared/editor/queries/findChildren.ts | 5 +++-- 2 files changed, 7 insertions(+), 5 deletions(-) diff --git a/shared/editor/extensions/Prism.ts b/shared/editor/extensions/Prism.ts index b7b32046d..31c9e969e 100644 --- a/shared/editor/extensions/Prism.ts +++ b/shared/editor/extensions/Prism.ts @@ -74,9 +74,10 @@ function getDecorations({ lineNumbers?: boolean; }) { const decorations: Decoration[] = []; - const blocks: { node: Node; pos: number }[] = findBlockNodes(doc).filter( - (item) => item.node.type.name === name - ); + const blocks: { node: Node; pos: number }[] = findBlockNodes( + doc, + true + ).filter((item) => item.node.type.name === name); function parseNodes( nodes: refractor.RefractorNode[], diff --git a/shared/editor/queries/findChildren.ts b/shared/editor/queries/findChildren.ts index da2717e2b..c3757a1ae 100644 --- a/shared/editor/queries/findChildren.ts +++ b/shared/editor/queries/findChildren.ts @@ -50,8 +50,9 @@ export function findChildren( * are blocks. * * @param node The node to iterate over + * @param descend Whether to descend into a node * @returns Child nodes that are blocks */ -export function findBlockNodes(node: Node): NodeWithPos[] { - return findChildren(node, (child) => child.isBlock); +export function findBlockNodes(node: Node, descend = false): NodeWithPos[] { + return findChildren(node, (child) => child.isBlock, descend); }