HyperMD

A WYSIWYG Markdown Editor for browsers. Break the Wall between writing and previewing.

Github星跟蹤圖

HyperMD

HyperMD Markdown Editor

Breaks the Wall between writing and preview, in a Markdown Editor.

NPM version Build Status

Online Demo, Examples, Documentation

中文介绍

Quickstart

// npm install --save hypermd codemirror
var HyperMD = require('hypermd')
var myTextarea = document.getElementById('input-area')
var editor = HyperMD.fromTextArea(myTextarea)

Remix on Glitch

Also for RequireJS, Parcel, webpack, plain browser env. Read the Doc

Why use HyperMD?

HyperMD is a set of CodeMirror add-ons / modes / themes / commands / keymap etc.

You may use both original CodeMirror and HyperMD on the same page.

? Write, and preview on the fly

  • Regular Markdown blocks and elements
    • Strong, Emphasis, Strikethrough, Code
    • Links, Images
    • Title / Quote / Code Block / List / Horizontal Rule
  • Markdown Extension
    • Simple Table
    • Footnote [^1]
    • TODO List (the box is clickable)
    • YAML Front Matter
    • $\LaTeX$ Formula, inline or block display mode [^4]
    • Emoji: :joy: => :joy: (also support custom emoji)
  • And more
    • HTML in Markdown -- WYSIWIG MDX is possible
    • #hashtag support [^6] , see demo
    • Flowchart and Diagrams (mermaid or flowchart.js)

? Better Markdown-ing Experience

  • Upload Images and files via clipboard, or drag'n'drop
  • Alt+Click to open link / jump to footnote [^1]
  • Hover to read footnotes
  • Copy and Paste, translate HTML into Markdown [^5]
  • Easy and ready-to-use Key-bindings (aka. KeyMap)

? CodeMirror benefits

  • Syntax Highlight for code blocks, supports 120+ languages[^2]. Mode can be loaded on-demand.
  • Configurable key-bindings
  • Diff and Merge
  • Themes [^3]
  • Almost all of CodeMirror addons!

? Extensible and Customizable

? Tailored KeyMap "HyperMD":

  • Table
    • Enter Create a table with , column, line,
    • Enter Insert new row, or finish a table (if last row is empty)
    • Tab or Shift-Tab to navigate between cells
  • List
    • Tab or Shift-Tab to indent/unindent current list item
  • Formatting a nearby word (or selected text)
    • Ctrl+B bold
    • Ctrl+I emphasis
    • Ctrl+D strikethrough

Special Thanks

? Service and Resource

? Sponsors

? Sponsors (sorted by date)

Contributing

HyperMD is a personal Open-Source project by laobubu.
Contributions are welcomed. You may:


[^1]: Ctrl+Click works too, but will jump to the footnote if exists.
[^2]: Languages as many as CodeMirror supports.
[^3]: If the theme is not designed for HyperMD, some features might not be present.
[^4]: Math block use $$ to wrap your TeX expression.
[^5]: Use Ctrl+Shift+V to paste plain text.
[^6]: Disabled by default, see doc; #use two hash symbol# if tag name contains spaces.

主要指標

概覽
名稱與所有者laobubu/HyperMD
主編程語言TypeScript
編程語言JavaScript (語言數: 4)
平台
許可證MIT License
所有者活动
創建於2017-01-14 16:48:39
推送於2021-01-05 03:36:46
最后一次提交2019-01-15 18:37:11
發布數12
最新版本名稱v0.3.11 (發布於 )
第一版名稱v0.3.0 (發布於 )
用户参与
星數1.5k
關注者數32
派生數138
提交數244
已啟用問題?
問題數72
打開的問題數33
拉請求數10
打開的拉請求數2
關閉的拉請求數2
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?