ts-stack / markdown

A full-featured markdown parser and compiler, written in TypeScript.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Detect code block vs code snippet

Ph0enixKM opened this issue · comments

How can I detect if it was a tripple backtick codeblock or a single backtick code snippet in renderer?

class MarkdownRenderer extends Renderer {
    code(code: string, lang: string, escaped: boolean) {
        if (escaped) return code
        return `<pre><code class="codeblock lang-${lang}">${code}</code></pre>`
    }
}
class MarkdownRenderer extends Renderer {
  /**
   * single backtick
   */
  override codespan(text: string): string {
    return super.codespan(text);
  }

  /**
   * codeblock
   */
  override code(code: string, lang: string, escaped: boolean) {
    if (escaped) return code;
    return `<pre><code class="codeblock lang-${lang}">${code}</code></pre>`;
  }
}