Skip to content

chaseadamsio/remark-obsidian

 
 

Repository files navigation

remark-obsidian

Version License

Remark plugin to support Obsidian markdown syntax.

Requirements

  • Nodejs >= 14

Features

  • Support ==highlight text==
  • Support [[Internal link]]
  • Support [[Internal link|With custom text]]
  • Support [[Internal link#heading]]
  • Support [[Internal link#heading|With custom text]]
  • Support ![[Embed note]]
  • Support ![[Embed note#heading]]

Installation

yarn add -D remark-obsidian

Usage

With remark :

import remark from 'remark';
import remarkObsidian from 'remark-obsidian';

const html = String(await remark().use(remarkObsidian).process('[[Hello world]]'));
console.log(html); // <a href="/hello-world">Hello world</a>

With unified :

import { unified } from 'unified'
import remarkObsidian from 'remark-obsidian';
import remarkParse from 'remark-parse';
import remarkRehype from 'remark-rehype';
import rehypeStringify from 'rehype-stringify';

const { value } = unified()
    .use(remarkParse)
    .use(remarkObsidian)
    .use(remarkRehype, { allowDangerousHtml: true })
    .use(rehypeStringify, { allowDangerousHtml: true })
    .processSync('[[Hello world]]');

console.log(value); // <a href="/hello-world">Hello world</a>

Running the tests

npm test

License

This project is licensed under the GNU GPL v3.0 - see the LICENSE file for details

Free Software, Hell Yeah!

About

Remark plugin to support Obsidian markdown syntax

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%