mirror of
https://github.com/peterczegledy/Obsidian-markdown-columns.git
synced 2026-07-22 08:29:18 +00:00
28 lines
946 B
JavaScript
28 lines
946 B
JavaScript
'use strict';
|
|
|
|
var obsidian = require('obsidian');
|
|
|
|
class MarkdownColumnsPlugin extends obsidian.Plugin {
|
|
async onload() {
|
|
this.registerMarkdownCodeBlockProcessor("columns", async (source, el, ctx) => {
|
|
const columns = source.split(":::")
|
|
.map(x => x.trim())
|
|
.filter(x => x.length > 0);
|
|
const container = el.createDiv({
|
|
cls: "markdown-columns-container"
|
|
});
|
|
for (const columnText of columns) {
|
|
const column = container.createDiv({
|
|
cls: "markdown-column"
|
|
});
|
|
const component = new obsidian.MarkdownRenderChild(column);
|
|
await obsidian.MarkdownRenderer.render(this.app, columnText, column, ctx.sourcePath, component);
|
|
ctx.addChild(component);
|
|
}
|
|
});
|
|
}
|
|
onunload() {
|
|
}
|
|
}
|
|
|
|
module.exports = MarkdownColumnsPlugin;
|