Package Exports
- remark-caml
- remark-caml/dist/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (remark-caml) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
remark-caml
Plugin for remark
to support CAML attributes. Relies on micromark-extension-caml
for tokenization and mdast-util-caml
for converting markdown to/from abstract syntax trees.
Note that this extension only parses the input -- it is up to you to track and store attribute metadata.
🕸 Weave a semantic web in your 🎋 WikiBonsai digital garden.
Install
This package is ESM only. Install remark-caml
on npm
.
npm install remark-caml
Usage
const unified = require('unified')
const markdown = require('remark-parse')
const { remarkCaml } = require('remark-caml');
let processor = unified()
.use(markdown)
.use(remarkCaml, {})
Running the processor on the following markdown:
:attrtype::value
Will produce the following attrbox-data
node:
{
"type": "attrbox-data",
"data": {
"items": {
"attrtype": [
{
"type": "string",
"value": "string",
"string": "string",
}
],
},
}
}
Which in turn will generate the following attrbox
node:
{
"type": "attrbox",
"data": {
"items": {
"attrtype": [
{
"type": "string",
"value": "string",
"string": "string",
},
],
},
"hName": "aside",
"hProperties": {
"className": ["attrbox"],
},
},
"children": [
{
"type": "attrbox-title",
"data": {
"hName": "span",
"hProperties": {
"className": ["attrbox-title"],
},
}
},
{
"type": "attrbox-list",
"children": [{
"type": "attr-key",
"data": {
"hName": "dt"
},
"children": [{
"type": "text",
"value": "attrtype",
}],
},
{
"type": "attr-val",
"data": {
"hName": "dd"
},
"children": [{
"type": "text",
"value": "value",
}],
},
],
"data": {
"hName": "dl"
},
},
],
}
Options Descriptions
attrs
These are options wikiattrs-specific options.
attrs.enable
A boolean property that toggles parsing and rendering wikiattrs on/off.
attrs.render
A boolean property that toggles rendering wikiattrs on/off. This is useful in the scenario where wikiattrs are used for metadata and not for display purposes; like a yaml-stand-in.
attrs.title
A string to be rendered in the wikiattrs' attrbox.
cssNames
CSS classnames may be overridden here.
cssNames.attr
Classname for wikiattrs. Default is attr
.
cssNames.wiki
Classname for valid wikiattrs. Default is wiki
.
cssNames.invalid
Classname for invalid wikiattrs. Default is invalid
.
cssNames.attrbox
Classname for the wikiattr attrbox. Default is attrbox
.
cssNames.attrboxTitle
Classname for the wikiattr attrbox title. Default is attrbox-title
.