From 46896f13ac771050b3abb1b1173ca73215d97590 Mon Sep 17 00:00:00 2001 From: phiresky Date: Sat, 6 Jun 2020 15:07:59 +0200 Subject: [PATCH] update adapters section in readme automatically --- README.md | 41 +++++++++++------------------------------ src/bin/rga.rs | 2 +- update-readme.sh | 3 +++ 3 files changed, 15 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 54e529d..df35396 100644 --- a/README.md +++ b/README.md @@ -81,73 +81,53 @@ rga should compile with stable Rust (v1.36.0+, check with `rustc --version`). To rga --rga-list-adapters ``` -Adapters: + Adapters: - **ffmpeg** - Uses ffmpeg to extract video metadata/chapters and subtitles - Extensions: .mkv, .mp4, .avi * **pandoc** - Uses pandoc to convert binary/unreadable text documents to plain markdown-like text - Extensions: .epub, .odt, .docx, .fb2, .ipynb - **poppler** - Uses pdftotext (from poppler-utils) to extract plain text from PDF files - Extensions: .pdf + Mime Types: application/pdf -* **zip** - +- **zip** Reads a zip file as a stream and recurses down into its contents - Extensions: .zip - Mime Types: application/zip -* **decompress** - +- **decompress** Reads compressed file as a stream and runs a different extractor on the contents. - Extensions: .tgz, .tbz, .tbz2, .gz, .bz2, .xz, .zst - Mime Types: application/gzip, application/x-bzip, application/x-xz, application/zstd -* **tar** - +- **tar** Reads a tar file as a stream and recurses down into its contents - Extensions: .tar -- **sqlite** - +* **sqlite** Uses sqlite bindings to convert sqlite databases into a simple plain text format - Extensions: .db, .db3, .sqlite, .sqlite3 - Mime Types: application/x-sqlite3 The following adapters are disabled by default, and can be enabled using '--rga-adapters=+pdfpages,tesseract': - **pdfpages** - - Converts a pdf to it's individual pages as png files. Only useful in combination with tesseract - + Converts a pdf to its individual pages as png files. Only useful in combination with tesseract Extensions: .pdf + Mime Types: application/pdf -* **tesseract** - +- **tesseract** Uses tesseract to run OCR on images to make them searchable. May need -j1 to prevent overloading the system. Make sure you have tesseract installed. - Extensions: .jpg, .png - ## USAGE: > rga \[RGA OPTIONS\] \[RG OPTIONS\] PATTERN \[PATH \...\] @@ -179,7 +159,7 @@ The following adapters are disabled by default, and can be enabled using '--rga- > Disable caching of results > > By default, rga caches the extracted text, if it is small enough, to a -> database in \~/.cache/rga on Linux, *\~/Library/Caches/rga* on macOS, +> database in \~/.cache/rga on Linux, _\~/Library/Caches/rga_ on macOS, > or C:\\Users\\username\\AppData\\Local\\rga on Windows. This way, > repeated searches on the same set of files will be much faster. If you > pass this flag, all caching will be disabled. @@ -230,6 +210,7 @@ advanced options. All other options not shown here are passed directly to rg, especially \[PATTERN\] and \[PATH \...\] + ## Development diff --git a/src/bin/rga.rs b/src/bin/rga.rs index d56612d..d26c0aa 100644 --- a/src/bin/rga.rs +++ b/src/bin/rga.rs @@ -45,7 +45,7 @@ fn main() -> anyhow::Result<()> { format!("Mime Types: {}", slow_matchers) }; print!( - " - {name}\n {desc}\n Extensions: {matchers}\n {mime}\n", + " - **{name}**\n {desc}\n Extensions: {matchers}\n {mime}\n", name = meta.name, desc = meta.description, matchers = matchers, diff --git a/update-readme.sh b/update-readme.sh index e14f619..8b2f0a8 100755 --- a/update-readme.sh +++ b/update-readme.sh @@ -3,9 +3,12 @@ content=$( cat < +$(cargo run --bin rga -- --rga-list-adapters) + $(help2man -N "cargo run --bin rga --" | pandoc -f man -t markdown --atx-headers | rg --multiline "## USAGE:(.|\n)*") END ) rg --passthrough --multiline '.*update-readme.sh(.|\n)*update-readme.sh.*' README.md --replace "$content" | sponge README.md +prettier --write README.md