5 releases (3 stable)

2.0.0 Jan 16, 2022
1.1.0 Apr 24, 2020
1.0.0 Jan 30, 2020
0.1.1 Jan 23, 2020
0.1.0-alpha Jan 22, 2020

#935 in Text processing

Download history 108/week @ 2024-07-28 37/week @ 2024-08-04 49/week @ 2024-08-11 55/week @ 2024-08-18 33/week @ 2024-08-25 34/week @ 2024-09-01 34/week @ 2024-09-08 72/week @ 2024-09-15 46/week @ 2024-09-22 47/week @ 2024-09-29 37/week @ 2024-10-06 43/week @ 2024-10-13 57/week @ 2024-10-20 27/week @ 2024-10-27 35/week @ 2024-11-03 12/week @ 2024-11-10

137 downloads per month
Used in 5 crates (2 directly)

MIT license

10KB
189 lines

Markdown Extract

Crates.io Docker Pulls Build & Test

Extract sections of a markdown file with a regular expression! Great for changelogs ;)

Usage

Given a document called my-document.md:

# Welcome

This is my amazing markdown document.

## Extract me!

This section should be pulled out.

You can extract the second section with the following command:

$ markdown-extract "Extract me!" my-document.md
## Extract me!

This section should be pulled out.

Installation

If you've got Rust installed on your system, you can simply install markdown-extract with Cargo.

$ cargo install markdown-extract

Docker

A Docker image is also available, and can be installed with the following command:

$ docker pull sean0x42/markdown-extract:v2

You can then run the container with the following command:

$ docker run -it sean0x42/markdown-extract:v2 --help

Note that because markdown-extract accesses the file system, you will need to mount a volume if you want to access a file on the host. e.g.

$ docker run -v $PWD:/opt -it sean0x42/markdown-extract:v2 v2.0.0 /opt/CHANGELOG.md

If you know a better way of achieving this, please let me know!

Use Cases

There aren't many, to be honest.

  1. Extract patch notes from a CHANGELOG.md by version.
  2. The talented folks at HashiCorp are using markdown-extract to extract API documentation, and inject it into OpenAPI schemas.

If you have another use for this tool, please let me know!

Dependencies

~7MB
~122K SLoC