From c8e22890fe586ecaf8d5e31e40f87cc80fc58da9 Mon Sep 17 00:00:00 2001 From: Ethan P Date: Wed, 18 Sep 2019 21:12:23 -0700 Subject: [PATCH] Update batgrep to disabled highlights when -C=0 --- doc/batgrep.md | 3 ++- src/batgrep.sh | 5 ++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/doc/batgrep.md b/doc/batgrep.md index ff11274..99e9916 100644 --- a/doc/batgrep.md +++ b/doc/batgrep.md @@ -21,7 +21,8 @@ A script that combines [ripgrep](https://github.com/burntsushi/ripgrep) with bat | `-B` | `--before-context=[LINES]` | Display the previous `n` lines before a matched line. | | `-C` | `--context=[LINES]` | A combination of `--after-context` and `--before-context`. | | | `--no-follow` | Do not follow symlinks. | -| | `--no-snip` | Do not show the `snip` decoration.

This is disabled when `--context=0` or when `bat --version` is less than `0.12.x`. | +| | `--no-snip` | Do not show the `snip` decoration.

This is automatically enabled when `--context=0` or when `bat --version` is less than `0.12.x`. | +| | `--no-highlight` | Do not highlight matching lines.

This is automatically enabled when `--context=0`. | diff --git a/src/batgrep.sh b/src/batgrep.sh index 137b02d..294c191 100755 --- a/src/batgrep.sh +++ b/src/batgrep.sh @@ -20,6 +20,7 @@ OPT_CONTEXT_BEFORE=2 OPT_CONTEXT_AFTER=2 OPT_FOLLOW=true OPT_SNIP="" +OPT_HIGHLIGHT=true BAT_STYLE="header,numbers" # Set options based on the bat version. @@ -63,6 +64,7 @@ while shiftopt; do # Script Options --no-follow) OPT_FOLLOW=false;; --no-snip) OPT_SNIP="";; + --no-highlight) OPT_HIGHLIGHT=false;; # ??? -*) { @@ -92,6 +94,7 @@ fi if [[ "$OPT_CONTEXT_BEFORE" -eq 0 && "$OPT_CONTEXT_AFTER" -eq 0 ]]; then OPT_SNIP="" + OPT_HIGHLIGHT=false fi # Invoke ripgrep. @@ -137,7 +140,7 @@ while IFS=':' read -r file line column; do [[ "$line_start" -gt 0 ]] || line_start='' LAST_LR+=("--line-range=${line_start}:${line_end}") - LAST_LH+=("--highlight-line=${line}") + [[ "$OPT_HIGHLIGHT" = "true" ]] && LAST_LH+=("--highlight-line=${line}") done < <(rg --with-filename --vimgrep "${RG_ARGS[@]}" --sort path "$PATTERN" "${FILES[@]}") do_print