mfmf v4.1.0
mfmf: Misskey Flavored Markdown Functions
Misskeyで使われているMarkdown風の書式をライブラリとして扱うことができます。
Misskeyのソースコードをほぼそのまま抜き出しています。
install
npm install mfmfusage
Script
const mfm = require('mfmf')Basic
const mfmstring = "**mfmf**"
const html = mfm.render(mfm.parse(mfmstring), [])
console.log(html)
// => `<p data-mfm="root"><b data-mfm="bold">mfmf</b></p>`mfm.render(input: MfmForest, mentionedRemoteUsers: INote'mentionedRemoteUsers', options?: any): string(HTML)
MfmForestを渡すと、HTML文字列が返ってきます。(toHtmlのエイリアスです。)
mentionedRemoteUsers: INote'mentionedRemoteUsers'
Misskey内部処理で必要だったものです。リモートのメンションに関係するものです。
config
オプションを指定します。
何も指定しないときでも空のオブジェクト{}を渡してください。
初期値は特記のない限り全てfalseまたは''です。
jmstylebooleantrue……joinmisskey用のHTML(付属のCSS/SASSで利用可)false……リモート送信用(ただしdata-mfm属性は自動で付加されます。不要な場合は取り除いてください。)
urlstring : タグやリプライのリンクのプレフィクスです。不要なので?などのクエリを指定しておくとよいと思います。animate:trueに設定するとanimate.cssのクラスを出力します。codeTagAsDiv:trueに設定するとpre・codeタグだったものがdiv.pre・div.codeになります。rootTagName: ルート要素のタグを指定します。初期値はjmstyle ? 'div' : 'p'です。
mfm.parse(source: string): MfmForest
MFMテキストからMfmForestを生成します。
mfm.htmlToMfm(html: string): string(mfm)
HTMLをMFMに変換します。fromHtmlのエイリアスです。
CSS
SASSで記述されており、src/styleにソースがあります。プレビュー用にdist/style/mfm.cssもあります。
おまけ
mfmfは、mfmの実行に必要なpreludeやtypesなどもexportします。
Example
開発
ビルド
npm run buildテスト
gulp test7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago