From 878f2c1f9cdb61f163d10cf3bf6fc4cd1eefdba2 Mon Sep 17 00:00:00 2001 From: icyleaf Date: Sun, 2 Mar 2025 11:10:33 +0800 Subject: [PATCH 1/3] Update 0.6.0 changelog --- CHANGELOG.md | 16 ++++- README.md | 154 +++++++++++++++++++++---------------------- shard.yml | 2 +- src/markd/version.cr | 2 +- 4 files changed, 91 insertions(+), 83 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 0f4f28c..e24c845 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,19 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - GFM support +## [0.6.0] (2025-03-?) + +Welcome new maintainer @[nobodywasishere](https://github.com/nobodywasishere) who brought support for gfm new features. + +- Add matrix platform and Cyrstal version to github action. #[59](https://github.com/icyleaf/markd/pull/59) thanks @[devnote-dev](https://github.com/devnote-dev) +- Correct version check for Crystal::VERSION. #[60](https://github.com/icyleaf/markd/pull/60) thanks @[nobodywasishere](https://github.com/nobodywasishere) +- Add GitHub emoji support. #[61](https://github.com/icyleaf/markd/pull/61) thanks @[nobodywasishere](https://github.com/nobodywasishere) +- Implement strikethrough support. #[62](https://github.com/icyleaf/markd/pull/62) thanks @[nobodywasishere](https://github.com/nobodywasishere) +- [gfm] Add tagfilter option. #[64](https://github.com/icyleaf/markd/pull/64) thanks @[nobodywasishere](https://github.com/nobodywasishere) +- [gfm] Add task list support. #[65](https://github.com/icyleaf/markd/pull/65) thanks @[nobodywasishere](https://github.com/nobodywasishere) +- Add tartrazine render code block. #[67](https://github.com/icyleaf/markd/pull/67) thanks @[zw963](https://github.com/zw963) +- [gfm] Add table support. #[72](https://github.com/icyleaf/markd/pull/72) thanks @[ralsina](https://github.com/ralsina) + ## [0.5.0] (2022-06-14) - Support CommonMark 0.29 #[50](https://github.com/icyleaf/markd/pull/50) thanks @[HertzDevil](https://github.com/HertzDevil). @@ -76,7 +89,8 @@ No changelog. - [initial implementation](https://github.com/icyleaf/markd/milestone/1?closed=1) -[Unreleased]: https://github.com/icyleaf/markd/compare/v0.5.0...HEAD +[Unreleased]: https://github.com/icyleaf/markd/compare/v0.6.0...HEAD +[0.6.0]: https://github.com/icyleaf/markd/compare/v0.5.0...v0.6.0 [0.5.0]: https://github.com/icyleaf/markd/compare/v0.4.2...v0.5.0 [0.4.2]: https://github.com/icyleaf/markd/compare/v0.4.1...v0.4.2 [0.4.1]: https://github.com/icyleaf/markd/compare/v0.4.0...v0.4.1 diff --git a/README.md b/README.md index 15e8716..fe19dd8 100644 --- a/README.md +++ b/README.md @@ -4,13 +4,6 @@ [![Tag](https://img.shields.io/github/tag/icyleaf/markd.svg)](https://github.com/icyleaf/markd/blob/master/CHANGELOG.md) [![Build Status](https://img.shields.io/circleci/project/github/icyleaf/markd/master.svg?style=flat)](https://circleci.com/gh/icyleaf/markd) - -**THIS PROJECT IS LOOKING FOR MAINTAINER** - -Unfortunately, the maintainer no longer has the time and/or resources to work on markd further. This means that bugs will not be fixed and features will not be added unless someone else does so. - -If you're interested in fixing up markd, please [file an issue](https://github.com/icyleaf/markd/issues/new) let me know. -
Yet another markdown parser built for speed, written in [Crystal](https://crystal-lang.org), Compliant to [CommonMark](http://spec.commonmark.org) specification (`v0.29`). Copy from [commonmark.js](https://github.com/jgm/commonmark.js). @@ -55,8 +48,9 @@ Markd.to_html(markdown, options) | source_pos | `Bool` | false | if **true**, source position information for block-level elements
will be rendered in the data-sourcepos attribute (for HTML) | | safe | `Bool` | false | if **true**, raw HTML will not be passed through to HTML output (it will be replaced by comments) | | prettyprint | `Bool` | false | if **true**, code tags generated by code blocks will have a `prettyprint` class added to them, to be used by [Google code-prettify](https://github.com/google/code-prettify). | -| gfm | `Bool` | false | **Not supported for now** | +| gfm | `Bool` | false | **Inprocess** [#4](https://github.com/icyleaf/markd/issues/4) | | toc | `Bool` | false | **Not supported for now** | +| emoji | `Bool` | false | if **true**, convert Github style emoji chars. | | base_url | `URI?` | nil | if not **nil**, relative URLs of links are resolved against this `URI`. It act's like HTML's `` in the context of a Markdown document. | ## Advanced @@ -104,13 +98,13 @@ require "markd" formatter = Tartrazine::Html.new( theme: Tartrazine.theme("emacs"), - + # Disable print line number line_numbers: false, - + # Set standalone to false for better performace. # - # You need generate css file use `bin/tartrazine -f html -t "emacs" --css`, + # You need generate css file use `bin/tartrazine -f html -t "emacs" --css`, # then link it in you site. standalone: false, ) @@ -132,75 +126,75 @@ Currently Tartrazine supports 247 languages and [331 themes](https://github.com/ ```crystal [ - "LiquidLexer", "VelocityLexer", - - "abap", "abnf", "actionscript", "actionscript_3", "ada", "agda", "al", "alloy", "angular2", - "antlr", "apacheconf", "apl", "applescript", "arangodb_aql", "arduino", "armasm", - "autohotkey", "autoit", "awk", - - "ballerina", "bash", "bash_session", "batchfile", "bbcode", "bibtex", "bicep", "blitzbasic", - "bnf", "bqn", "brainfuck", - - "c", "c#", "c++", "cap_n_proto", "cassandra_cql", "ceylon", "cfengine3", "cfstatement", - "chaiscript", "chapel", "cheetah", "clojure", "cmake", "cobol", "coffeescript", - "common_lisp", "coq", "crystal", "css", "cue", "cython", - - "d", "dart", "dax", "desktop_entry", "diff", "django_jinja", "dns", "docker", "dtd", "dylan", - - "ebnf", "elixir", "elm", "emacslisp", "erlang", - - "factor", "fennel", "fish", "forth", "fortran", "fortranfixed", "fsharp", - - "gas", "gdscript", "gdscript3", "gherkin", "gleam", "glsl", "gnuplot", "go_template", - "graphql", "groff", "groovy", - - "handlebars", "hare", "haskell", "hcl", "hexdump", "hlb", "hlsl", "holyc", "html", "hy", - - "idris", "igor", "ini", "io", "iscdhcpd", - - "j", "java", "javascript", "json", "jsonata", "julia", "jungle", - - "kotlin", - - "lighttpd_configuration_file", "llvm", "lua", - - "makefile", "mako", "markdown", "mason", "materialize_sql_dialect", "mathematica", "matlab", - "mcfunction", "meson", "metal", "minizinc", "mlir", "modula-2", "moinwiki", "monkeyc", - "morrowindscript", "myghty", "mysql", - - "nasm", "natural", "ndisasm", "newspeak", "nginx_configuration_file", "nim", "nix", - - "objective-c", "objectpascal", "ocaml", "octave", "odin", "onesenterprise", "openedge_abl", - "openscad", "org_mode", - - "pacmanconf", "perl", "php", "pig", "pkgconfig", "pl_pgsql", "plaintext", "plutus_core", - "pony", "postgresql_sql_dialect", "postscript", "povray", "powerquery", "powershell", - "prolog", "promela", "promql", "properties", "protocol_buffer", "prql", "psl", "puppet", - "python", "python_2", - - "qbasic", "qml", - - "r", "racket", "ragel", "react", "reasonml", "reg", "rego", "rexx", "rpm_spec", "rst", - "ruby", "rust", - - "sas", "sass", "scala", "scheme", "scilab", "scss", "sed", "sieve", "smali", "smalltalk", - "smarty", "snobol", "solidity", "sourcepawn", "sparql", "sql", "squidconf", "standard_ml", - "stas", "stylus", "swift", "systemd", "systemverilog", - - "tablegen", "tal", "tasm", "tcl", "tcsh", "termcap", "terminfo", "terraform", "tex", - "thrift", "toml", "tradingview", "transact-sql", "turing", "turtle", "twig", "typescript", - "typoscript", "typoscriptcssdata", "typoscripthtmldata", - - "ucode", - - "v", "v_shell", "vala", "vb_net", "verilog", "vhdl", "vhs", "viml", "vue", "wdte", - - "webgpu_shading_language", "whiley", - - "xml", "xorg", - - "yaml", "yang", "z80_assembly", - + "LiquidLexer", "VelocityLexer", + + "abap", "abnf", "actionscript", "actionscript_3", "ada", "agda", "al", "alloy", "angular2", + "antlr", "apacheconf", "apl", "applescript", "arangodb_aql", "arduino", "armasm", + "autohotkey", "autoit", "awk", + + "ballerina", "bash", "bash_session", "batchfile", "bbcode", "bibtex", "bicep", "blitzbasic", + "bnf", "bqn", "brainfuck", + + "c", "c#", "c++", "cap_n_proto", "cassandra_cql", "ceylon", "cfengine3", "cfstatement", + "chaiscript", "chapel", "cheetah", "clojure", "cmake", "cobol", "coffeescript", + "common_lisp", "coq", "crystal", "css", "cue", "cython", + + "d", "dart", "dax", "desktop_entry", "diff", "django_jinja", "dns", "docker", "dtd", "dylan", + + "ebnf", "elixir", "elm", "emacslisp", "erlang", + + "factor", "fennel", "fish", "forth", "fortran", "fortranfixed", "fsharp", + + "gas", "gdscript", "gdscript3", "gherkin", "gleam", "glsl", "gnuplot", "go_template", + "graphql", "groff", "groovy", + + "handlebars", "hare", "haskell", "hcl", "hexdump", "hlb", "hlsl", "holyc", "html", "hy", + + "idris", "igor", "ini", "io", "iscdhcpd", + + "j", "java", "javascript", "json", "jsonata", "julia", "jungle", + + "kotlin", + + "lighttpd_configuration_file", "llvm", "lua", + + "makefile", "mako", "markdown", "mason", "materialize_sql_dialect", "mathematica", "matlab", + "mcfunction", "meson", "metal", "minizinc", "mlir", "modula-2", "moinwiki", "monkeyc", + "morrowindscript", "myghty", "mysql", + + "nasm", "natural", "ndisasm", "newspeak", "nginx_configuration_file", "nim", "nix", + + "objective-c", "objectpascal", "ocaml", "octave", "odin", "onesenterprise", "openedge_abl", + "openscad", "org_mode", + + "pacmanconf", "perl", "php", "pig", "pkgconfig", "pl_pgsql", "plaintext", "plutus_core", + "pony", "postgresql_sql_dialect", "postscript", "povray", "powerquery", "powershell", + "prolog", "promela", "promql", "properties", "protocol_buffer", "prql", "psl", "puppet", + "python", "python_2", + + "qbasic", "qml", + + "r", "racket", "ragel", "react", "reasonml", "reg", "rego", "rexx", "rpm_spec", "rst", + "ruby", "rust", + + "sas", "sass", "scala", "scheme", "scilab", "scss", "sed", "sieve", "smali", "smalltalk", + "smarty", "snobol", "solidity", "sourcepawn", "sparql", "sql", "squidconf", "standard_ml", + "stas", "stylus", "swift", "systemd", "systemverilog", + + "tablegen", "tal", "tasm", "tcl", "tcsh", "termcap", "terminfo", "terraform", "tex", + "thrift", "toml", "tradingview", "transact-sql", "turing", "turtle", "twig", "typescript", + "typoscript", "typoscriptcssdata", "typoscripthtmldata", + + "ucode", + + "v", "v_shell", "vala", "vb_net", "verilog", "vhdl", "vhs", "viml", "vue", "wdte", + + "webgpu_shading_language", "whiley", + + "xml", "xorg", + + "yaml", "yang", "z80_assembly", + "zed", "zig" ] ``` diff --git a/shard.yml b/shard.yml index b6c8871..846b25b 100644 --- a/shard.yml +++ b/shard.yml @@ -1,5 +1,5 @@ name: markd -version: 0.5.0 +version: 0.6.0 authors: - icyleaf diff --git a/src/markd/version.cr b/src/markd/version.cr index d5062b5..3708604 100644 --- a/src/markd/version.cr +++ b/src/markd/version.cr @@ -1,3 +1,3 @@ module Markd - VERSION = "0.5.0" + VERSION = "0.6.0" end From 3b9ad204b64a5b545503f9034b5abd2f065ae46f Mon Sep 17 00:00:00 2001 From: icyleaf Date: Mon, 3 Mar 2025 13:40:35 +0800 Subject: [PATCH 2/3] Update README.md Co-authored-by: Margret Riegert --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index fe19dd8..5c921c3 100644 --- a/README.md +++ b/README.md @@ -48,9 +48,10 @@ Markd.to_html(markdown, options) | source_pos | `Bool` | false | if **true**, source position information for block-level elements
will be rendered in the data-sourcepos attribute (for HTML) | | safe | `Bool` | false | if **true**, raw HTML will not be passed through to HTML output (it will be replaced by comments) | | prettyprint | `Bool` | false | if **true**, code tags generated by code blocks will have a `prettyprint` class added to them, to be used by [Google code-prettify](https://github.com/google/code-prettify). | -| gfm | `Bool` | false | **Inprocess** [#4](https://github.com/icyleaf/markd/issues/4) | +| gfm | `Bool` | false | **In progress** [#4](https://github.com/icyleaf/markd/issues/4) | | toc | `Bool` | false | **Not supported for now** | | emoji | `Bool` | false | if **true**, convert Github style emoji chars. | +| tagfilter | `Bool` | false | if **true**, escape certain HTML tags. | | base_url | `URI?` | nil | if not **nil**, relative URLs of links are resolved against this `URI`. It act's like HTML's `` in the context of a Markdown document. | ## Advanced From 592db70b8014efdadc2501f0f1ee3d77aa26ae47 Mon Sep 17 00:00:00 2001 From: icyleaf Date: Mon, 3 Mar 2025 13:40:53 +0800 Subject: [PATCH 3/3] Update shard.yml Co-authored-by: Margret Riegert --- shard.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/shard.yml b/shard.yml index 846b25b..755088d 100644 --- a/shard.yml +++ b/shard.yml @@ -3,6 +3,7 @@ version: 0.6.0 authors: - icyleaf + - nobodywasishere crystal: ">= 0.36.1, < 2.0.0"