#markdown #extract

bin+lib markdown-extract

Extract sections of a markdown file

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

#368 in Text processing

Download history 26/week @ 2022-10-07 48/week @ 2022-10-14 32/week @ 2022-10-21 6/week @ 2022-10-28 289/week @ 2022-11-04 28/week @ 2022-11-11 2/week @ 2022-11-18 22/week @ 2022-11-25 50/week @ 2022-12-02 25/week @ 2022-12-09 18/week @ 2022-12-16 28/week @ 2022-12-23 22/week @ 2022-12-30 29/week @ 2023-01-06 4/week @ 2023-01-13 27/week @ 2023-01-20

86 downloads per month
Used in 4 crates (via agpm_suggestions)

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

~2.6–3.5MB
~79K SLoC