Coder Social home page Coder Social logo

lang-xml's Introduction

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

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.

lang-xml's People

Contributors

marijnh avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.