Add the following code to your project's shard.yml under:
to use in production
- OR -
development_dependencies to use in development
This binding is statically linked with a specific version of cmark-gfm.
cmark-gfm supports simple parsing and rendering of markdown content.
If you want more features please check cr-cmark-gfm.
Add the dependency to your
dependencies: common_marker: github: mamantoha/crystal-cmark-gfm
require "common_marker" text = File.read("README.md") extensions = ["table", "strikethrough", "autolink", "tagfilter", "tasklist"] options = ["unsafe"] md = CommonMarker.new(text, options: options, extensions: extensions) html = md.to_html
CommonMarker initializer takes an optional third argument defining the extensions you want enabled as your CommonMark document is being processed. The documentation for these extensions are defined in this spec.
The available extensions are:
table- This provides support for tables.
strikethrough- This provides support for strikethroughs.
autolink- This provides support for automatically converting URLs to anchor tags.
tagfilter- This escapes several "unsafe" HTML tags, causing them to not have any effect.
tasklist- This provides support for task list items.
cd ext && make && cd ..
crystal ./lib/crystal_lib/src/main.cr -- src/lib_cmark.cr.in > ./src/lib_cmark.cr
git checkout -b my-new-feature)
git commit -am 'Add some feature')
git push origin my-new-feature)