@codemirror/lang-xml
TypeScript icon, indicating that this package has built-in type declarations

6.1.0 • Public • Published

@codemirror/lang-xml NPM version

[ 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.

API Reference

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.

autoCloseTags⁠?: boolean

Determines whether autoCloseTags is 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.

interface ElementSpec

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 as global are 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.

interface AttrSpec

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.

autoCloseTags: Extension

Extension that will automatically insert close tags when a > or / is typed.

Readme

Keywords

Package Sidebar

Install

npm i @codemirror/lang-xml

Weekly Downloads

139,569

Version

6.1.0

License

MIT

Unpacked Size

45.7 kB

Total Files

9

Last publish

Collaborators

  • adrianheine
  • marijn