Giter VIP home page Giter VIP logo

markdown-it-plugins.rs's Introduction

markdown-it-plugins.rs

markdown-it-plugins icon

Monorepo of plugins for markdown-it.rs:

More to come... (hopefully, many from mdit-py-plugins)

Also utility crates:

Development

Feedback on the code is always welcome!

Use pre-commit to run checkers and formatters before committing:

git add -A
pre-commit run --all

Release

Use cargo-release to release. (maybe move to cargo-smart-release in the future)

Notes

For translating markdown-it plugins to rust, here are some useful notes:

  • state.bMarks[startLine] + state.tShift[startLine] is equivalent to state.line_offsets[line].first_nonspace
  • state.eMarks[startLine] is equivalent to state.line_offsets[line].line_end
  • state.sCount[line] is equivalent to state.line_offsets[line].indent_nonspace
  • state.sCount[line] - state.blkIndent is equivalent to state.line_indent(state.line)

markdown-it-plugins.rs's People

Contributors

chrisjsewell avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

markdown-it-plugins.rs's Issues

footnote definition first line indentation

Currently, there is a test failing that has been skipped (crates/footnote/tests/fixtures/_7.md), but should eventually be fixed, for dealing with code blocks starting on the first line of a footnote definition.

This is quite a niche use case, and I couldn't easily work out how to fix, so left here for later ๐Ÿ˜… .

Improve release procedure

Currently, cargo release minor will dry-run through and update all packages to a new version,
but then warn e.g. updating xxx to 0.2.0 despite no changes made since tag xxx-v0.1.0.
Then you can decide which packages to release individually, and what type of version bump (major/minor/patch)

Ideally, there would be one command that

  1. would not release unchanged packages (unless there were changes to dependent packages)
  2. Could independently decide which version bump type, per package

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.