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

#739 in Text processing

Download history 114/week @ 2024-12-07 67/week @ 2024-12-14 31/week @ 2024-12-21 43/week @ 2024-12-28 56/week @ 2025-01-04 40/week @ 2025-01-11 29/week @ 2025-01-18 22/week @ 2025-01-25 33/week @ 2025-02-01 25/week @ 2025-02-08 61/week @ 2025-02-15 34/week @ 2025-02-22 36/week @ 2025-03-01 39/week @ 2025-03-08 40/week @ 2025-03-15 10/week @ 2025-03-22

128 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