From 10963dece0ddd9d45fa16f4b4a5a8421871ecd63 Mon Sep 17 00:00:00 2001 From: typebrook Date: Sat, 28 Mar 2020 00:23:40 +0800 Subject: Add parameter for index range --- gist | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gist b/gist index c93bb13..cf09f6f 100755 --- a/gist +++ b/gist @@ -762,6 +762,15 @@ _gists_with_languages() { hint=false mark=${INPUT:+.} display=language _show_list | grep --color=always -Ei "$pattern" } +_gists_with_range() { + [[ ! $@ =~ ^s*[0-9]*-s*[0-9]*$ ]] && echo 'Invalid range' && exit 1 + local mark='' && [[ $@ =~ s ]] && mark=s + + local range=$(sed -Ee "s/s//g; s/^-/1-/; s/-$/-$(wc -l <$INDEX)/; s/-/\n/" <<< "$*") + INPUT=$(seq $range | sed -e "s/^/p*$mark/") + hint=false _show_list +} + _apply_config "$@" || exit 1 getConfiguredClient || exit 1 if [[ $init ]]; then _fetch_gists; exit 0; fi @@ -816,6 +825,8 @@ case "$1" in lan | l) shift _gists_with_languages "$@" ;; + *-*) + _gists_with_range "$@" ;; version) echo "Version $currentVersion" ;; update) -- cgit v1.2.3-70-g09d2