[ WEBSITE | ISSUES | FORUM | CHANGELOG ]
This package implements XML language support for the CodeMirror code editor.
The project page has more information, a number of examples and the documentation.
This code is released under an MIT license.
We aim to be an inclusive, welcoming community. To make that explicit, we have a code of conduct that applies to communication around the project.
import {EditorView, basicSetup} from "codemirror"
import {xml} from "@codemirror/lang-xml"
const view = new EditorView({
parent: document.body,
doc: `<user id="22"><name>Jane</name></user>`,
extensions: [basicSetup, xml()]
})-
xml(conf?: Object = {}) → LanguageSupport XML language support. Includes schema-based autocompletion when configured.
-
conf -
elements?: readonly ElementSpec[] Provide a schema to create completions from.
-
attributes?: readonly AttrSpec[] Supporting attribute descriptions for the schema specified in
elements.Determines whether
autoCloseTagsis included in the support extensions. Defaults to true.
-
-
-
xmlLanguage: LRLanguage A language provider based on the Lezer XML parser, extended with highlighting and indentation information.
-
interfaceElementSpec Describes an element in your XML document schema.
-
name: string The element name.
-
children?: readonly string[] Allowed children in this element. When not given, all elements are allowed inside it.
-
textContent?: readonly string[] When given, allows users to complete the given content strings as plain text when at the start of the element.
-
top?: boolean Whether this element may appear at the top of the document.
-
attributes?: readonly (string | AttrSpec)[] Allowed attributes in this element. Strings refer to attributes specified in
XMLConfig.attrs, but you can also provide one-off attribute specs. Attributes marked asglobalare allowed in every element, and don't have to be mentioned here.-
completion?: Partial<Completion> Can be provided to add extra fields to the completion object created for this element.
-
-
interfaceAttrSpec Describes an attribute in your XML schema.
-
name: string The attribute name.
-
values?: readonly (string | Completion)[] Pre-defined values to complete for this attribute.
-
global?: boolean When
true, this attribute can be added to all elements.-
completion?: Partial<Completion> Provides extra fields to the completion object created for this element
-
-
completeFromSchema(eltSpecs: readonly ElementSpec[], attrSpecs: readonly AttrSpec[]) → CompletionSource Create a completion source for the given schema.
Extension that will automatically insert close tags when a
>or/is typed.