API
基本的な使い方
import { MLEngine } from 'markuplint';
const file = await MLEngine.toMLFile('./path/to/page.html');
const engine = new MLEngine(file, {
configFile: './path/to/.markuplintrc',
});
engine.on('log', (id, message) => {
console.log(id, message);
});
const result = await engine.exec();
console.log(result.violations);
パッケージ
パッケージ | NPM | プラットフォーム | モジュールタイプ |
---|---|---|---|
markuplint | Node.js | ESM | |
@markuplint/html-parser | ユニバーサル | ESM | |
@markuplint/html-spec | ユニバーサル | CommonJS | |
@markuplint/i18n | ユニバーサル | ハイブリッド | |
@markuplint/ml-ast | ユニバーサル | ESM | |
@markuplint/ml-config | ユニバーサル | ESM | |
@markuplint/ml-core | ユニバーサル | ESM | |
@markuplint/ml-spec | ユニバーサル | ESM | |
@markuplint/parser-utils | ユニバーサル | ESM | |
@markuplint/rules | ユニバーサル | ESM | |
@markuplint/types | ユニバーサル | ESM |
CommonJSで使う
markuplint
はESMです。通常CommonJSのエコシステムでは利用できません。CommonJSからAPIを利用する場合、@markuplint/esm-adapterを利用します。
const { MLEngine } = require('@markuplint/esm-adapter');
const result = await MLEngine.fromCode(htmlCode);
console.log(result);
備考
@markuplint/esm-adapter
はESMの対応していないVS Code拡張機能のために作られたモジュールです。拡張機能で利用しないAPIは実装されていないため極めて限定的です。
また、内部的には**Worker threads**を利用しているため、プラットフォームはNode.jsのみとなります。
警告
@markuplint/esm-adapter
はNode.jsのバージョン22未満でのみサポートしています。