From be2cb2dc723b70edf8b04f9000a134fc269d6988 Mon Sep 17 00:00:00 2001 From: mAAdhaTTah Date: Tue, 20 May 2025 09:22:28 -0400 Subject: [PATCH] Fix syntax highlighting when filename is quoted Check if we have quotes and if so, remove them from the highlight. --- src/editorExtension/syntaxHighlight.ts | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/src/editorExtension/syntaxHighlight.ts b/src/editorExtension/syntaxHighlight.ts index cc470b4..8b337dd 100644 --- a/src/editorExtension/syntaxHighlight.ts +++ b/src/editorExtension/syntaxHighlight.ts @@ -87,20 +87,27 @@ export class SQLSealViewPlugin implements PluginValue { if (decorations) { decorations.forEach(dec => { if (dec.type === 'filename') { + let hasQuotes = false; // Get the actual filename text from the document - const filePath = view.state.doc.sliceString( + let filePath = view.state.doc.sliceString( contentStart + dec.start, contentStart + dec.end ); + // Remove leading & trailing quotes, if captured. + if (filePath.startsWith('"')) { + filePath = filePath.substring(1, filePath.length - 1) + hasQuotes = true; + } + // Create widget decoration for the filename const widget = new FilePathWidget(filePath, this.app); builder.push(Decoration.replace({ widget, inclusive: true }).range( - contentStart + dec.start, - contentStart + dec.end + contentStart + dec.start + Number(hasQuotes), + contentStart + dec.end - Number(hasQuotes) )); } else { const decoration = markDecorations[dec.type as keyof typeof markDecorations];