mirror of
https://github.com/mountain-loop/yaak.git
synced 2026-04-22 16:58:28 +02:00
Fix mixed parser
This commit is contained in:
Binary file not shown.
@@ -2,6 +2,7 @@ import { LanguageSupport, LRLanguage } from '@codemirror/language';
|
|||||||
import { parser } from './text';
|
import { parser } from './text';
|
||||||
|
|
||||||
const textLanguage = LRLanguage.define({
|
const textLanguage = LRLanguage.define({
|
||||||
|
name: 'text',
|
||||||
parser,
|
parser,
|
||||||
languageData: {},
|
languageData: {},
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -34,10 +34,16 @@ function mixedOrPlainLanguage(base?: LanguageSupport): LRLanguage {
|
|||||||
}
|
}
|
||||||
|
|
||||||
const parser = twigParser.configure({
|
const parser = twigParser.configure({
|
||||||
wrap: parseMixed(() => ({
|
wrap: parseMixed((node) => {
|
||||||
parser: base.language.parser,
|
// If the base language is text, we can overwrite at the top
|
||||||
overlay: (node) => node.type.name === 'Text' || node.type.name === 'Template',
|
if (base.language.name !== 'text' && !node.type.isTop) {
|
||||||
})),
|
return null;
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
parser: base.language.parser,
|
||||||
|
overlay: (node) => node.type.name === 'Text' || node.type.name === 'Template',
|
||||||
|
};
|
||||||
|
}),
|
||||||
});
|
});
|
||||||
|
|
||||||
return LRLanguage.define({ name, parser });
|
return LRLanguage.define({ name, parser });
|
||||||
|
|||||||
Reference in New Issue
Block a user