@mdx-js/language-service
v0.5.4
Published
MDX support for Volar
Downloads
1,112
Readme
@mdx-js/language-service
Contents
- What is this?
- When should I use this?
- Install
- Use
- API
- Compatibility
- Types
- Security
- Contribute
- Sponsor
- Changelog
- License
What is this?
This package implements the logic needed to integrate MDX into Volar. It implements a language plugin which makes Volar understand MDX files. It also implements a service plugin, which provides some additional functionality specific to MDX files.
When should I use this?
This package is intended for use by
@mdx-js/language-server
.
It can also be used with other Volar integrations, such as
@volar/monaco
.
Install
This package is ESM only. In Node.js (version 16+), install with npm:
npm install @mdx-js/language-service
In Deno with esm.sh
:
import {
createMdxLanguagePlugin,
createMdxServicePlugin,
resolveRemarkPlugins
} from 'https://esm.sh/@mdx-js/language-service'
In browsers with esm.sh
:
<script type="module">
import {
createMdxLanguagePlugin,
createMdxServicePlugin,
resolveRemarkPlugins
} from 'https://esm.sh/@mdx-js/language-service?bundle'
</script>
Use
This package exports functions for use with Volar. See the API documentation for each function to see what it does.
API
This package exports the identifiers createMdxLanguagePlugin
,
createMdxServicePlugin
, and resolveRemarkPlugins
.
There is no default export.
createMdxLanguagePlugin([plugins][, checkMdx][, jsxImportSource])
Create a Volar language plugin to support MDX.
Parameters
plugins
(PluggableList
, optional) — A list of remark syntax plugins. Only syntax plugins are supported. Transformers are unused.checkMdx
(boolean
, default:false
) — If true, check MDX files strictly.jsxImportSource
(string
, default:react
) — The JSX import source to use in the embedded JavaScript file.
Returns
A Volar language plugin to support MDX.
createMdxServicePlugin()
Create a Volar service module to support MDX. The service supports:
- Reporting diagnostics for parsing errors.
- Document drop support for images.
- Custom commands for toggling
delete
,emphasis
,inlineCode
, andstrong
text.
Parameters
This function doesn’t take any parameters.
Returns
The Volar service plugin for MDX files.
resolveRemarkPlugins(mdxConfig, resolvePlugin)
Resolve remark plugins from TypeScript’s parsed command line options.
Parameters
mdxConfig
(unknown
) — The parsed command line options from which to resolve plugins.resolvePlugin
(Function
) — A function which takes a plugin name, and resolvs it to a remark plugin.
Returns
An array of resolved plugins, or undefined
in case of an invalid
configuration.
Compatibility
Projects maintained by the unified collective are compatible with all maintained versions of Node.js. As of now, that is Node.js and 16.0+. Our projects sometimes work with older versions, but this is not guaranteed.
Types
This package is fully typed with TypeScript.
Security
This package provides editor support for MDX files. Some editor features modify your source code, for example suggestions and automatic refactors. It is recommended to keep your source code under version control.
Contribute
See § Contribute on our website for ways to get started. See § Support for ways to get help.
This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.
Sponsor
See [§ Sponsor][sponsor] on our site for how to help financially.
Changelog
Detailed changes for each release are documented in CHANGELOG.md.