Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

New syntax to add attributes to Markdown.

License

NotificationsYou must be signed in to change notification settings

jaywcjlove/rehype-attr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Usingmy app is also a way tosupport me:
KeyzerVidwall HubVidCropVidwallMousio HintMousioMusicerAudioerFileSentinelFocusCursorVideoerKeyClickerDayBarIconedMousioQuick RSSQuick RSSWeb ServeCopybook GeneratorDevTutor for SwiftUIRegexMateTime PassageIconize FolderTextsound SaverCreate Custom SymbolsDevHubResume RevisePalette GeniusSymbol Scribe

rehype-attr

Buy me a coffeeDownloadsNPM versionBuildCoverage StatusRepo Dependents

This plugin adds support for custom attributes in Markdown. Attributes can be added using HTML comment syntax, but they won’t appear in the preview, similar toremark-attr.

Installation

This package isESM only: Node 12+ is needed to use it and it must beimport instead ofrequire.

npm install rehype-attr

Default Syntax

Links

HTML Example

<ahref="https://github.com">github</a><!--rehype:rel=external&style=color:pink;&data-name=kenny-->

Output:

<ahref="https://github.com"rel="external"style="color:pink;"data-name="kenny">github</a>
Example Code
import{rehype}from'rehype';importrehypeAttrsfrom'rehype-attr';consthtmlStr=rehype().data('settings',{fragment:true}).use(rehypeAttrs,{properties:'attr'}).processSync(`<a href="https://github.com">github</a><!--rehype:rel=external-->`).toString()

Markdown Example

[github](https://github.com)<!--rehype:rel=external-->

Output:

<p><ahref="https://github.com"rel="external">github</a><!--rehype:rel=external--></p>
Example Code
import{unified}from'unified';importstringifyfrom'rehype-stringify';importrehypeRawfrom'rehype-raw';importremark2rehypefrom'remark-rehype';importremarkParsefrom'remark-parse';importrehypeAttrsfrom'rehype-attr';consthtmlStr=unified().use(remarkParse).use(remark2rehype,{allowDangerousHtml:true}).use(rehypeRaw).use(rehypeAttrs,{properties:'attr'}).use(stringify).processSync(`[github](https://github.com)<!--rehype:rel=external-->`).toString()

Header

HTML Example

<h1>This is a title</h1><!--rehype:style=color:pink;-->

Output:

<h1style="color:pink;">This is a title</h1>
Example Code
import{rehype}from'rehype';importrehypeAttrsfrom'rehype-attr';consthtmlStr=rehype().data('settings',{fragment:true}).use(rehypeAttrs,{properties:'attr'}).processSync(`<h1>This is a title</h1><!--rehype:style=color:pink;-->`).toString()

Markdown Example

This is a title====<!--rehype:style=color:pink;-->

Output:

<h1style="color:pink;">This is a title</h1>
#This is a title<!--rehype:style=color:pink;-->

Output:

<h1style="color:pink;">This is a title</h1>

Strong

HTML Example

This is a<strong>Unicorn</strong><!--rehype:style=color: grey-->

Output:

This is a<strongstyle="color: grey">Unicorn</strong>

Markdown Example

This is a**Unicorn**<!--rehype:style=color: grey-->

Output:

<p>This is a<strongstyle="color: grey">Unicorn</strong><!--rehype:style=color: grey--></p>

Emphasis

HTML Example

Npm stand for<em>node</em><!--rehype:style=color: red--> packet manager.

Output:

Npm stand for<emstyle="color: red">node</em> packet manager.

Markdown Example

Npm stand for*node*<!--rehype:style=color: red--> packet manager.

Output:

<p>Npm stand for<emstyle="color: red">node</em><!--rehype:style=color: red--> packet manager.</p>

Code

<!--rehype:title=Rehype Attrs&abc=1&hello=2-->\```jsconsole.log('')\```

Output:

<predata-type="rehyp"><codeclass="language-js"data-config="[object Object]">    console.log('')</code></pre>

Inlne Code

HTML Example

This is the<code>content</code><!--rehype:style=color:pink;-->

Output:

This is the<codestyle="color:pink;">content</code>

Markdown Example

This is the`content`<!--rehype:style=color:pink;-->

Output:

<p>This is the<codestyle="color:pink;">content</code><!--rehype:style=color:pink;--></p>

List

- list<!--rehype:style=width:100px;-->

Output:

<ulstyle="width:100px;"><li>list</li></ul><!--rehype:style=width:100px;-->

HTML Example

import{rehype}from'rehype';importrehypeAttrsfrom'rehype-attr';consthtmlStr=rehype().data('settings',{fragment:true}).use(rehypeAttrs,{properties:'attr'}).processSync(`<a href="https://github.com">github</a><!--rehype:rel=external-->`).toString()

Output:

<h1style="color:pink;">This is a title</h1>

Markdown Example

import{unified}from'unified';importstringifyfrom'rehype-stringify';importrehypeRawfrom'rehype-raw';importremarkParsefrom'remark-parse';importremark2rehypefrom'remark-rehype';importrehypeAttrsfrom'rehype-attr';constmrkStr=`[github](https://github.com)<!--rehype:rel=external-->`consthtmlStr=unified().use(remarkParse).use(remark2rehype,{allowDangerousHtml:true}).use(rehypeRaw).use(rehypeAttrs,{properties:'attr'}).use(stringify).processSync(mrkStr).toString()

Output:

<p><ahref="https://github.com"rel="external">github</a><!--rehype:rel=external--></p>

Options

properties

Default Value:data
Value:data,string,attr

codeBlockParames

Code block passing parameters

Default Value:true

commentStart

Optional start delimiter for comments @example\\{\\*

Default Value:<!--

commentEnd

Optional end delimiter for comments @example\\*\\}

Default Value:-->

Related

Contributors

As always, thanks to our amazing contributors!

Made withgithub-action-contributors.

License

MIT ©Kenny Wong

About

New syntax to add attributes to Markdown.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors4

  •  
  •  
  •  
  •  

[8]ページ先頭

©2009-2025 Movatter.jp