about summary refs log tree commit diff
path: root/mless
diff options
context:
space:
mode:
authorChristian Neukirchen <chneukirchen@gmail.com>2016-07-24 23:55:13 +0200
committerChristian Neukirchen <chneukirchen@gmail.com>2016-07-24 23:55:13 +0200
commit39bae697aae28a037b87994baa52dfdd12ec761a (patch)
tree568cff254a48cbd86a07ed455cc54f8b012691fe /mless
parent05174158cdfab5dcae92244518ac972b141df4a5 (diff)
downloadmblaze-39bae697aae28a037b87994baa52dfdd12ec761a.tar.gz
mblaze-39bae697aae28a037b87994baa52dfdd12ec761a.tar.xz
mblaze-39bae697aae28a037b87994baa52dfdd12ec761a.zip
mless: only open used ids
Diffstat (limited to 'mless')
-rwxr-xr-xmless8
1 files changed, 6 insertions, 2 deletions
diff --git a/mless b/mless
index 9d3be24..384794a 100755
--- a/mless
+++ b/mless
@@ -25,6 +25,10 @@ function so(s) { return sprintf("\033[1m%s\033[0m", s) }
 { print }'
 }
 
+mnums() {
+	mscan "$@" 2>/dev/null | awk '/^...[^ ]/{print $2}'
+}
+
 if [ "$1" = --filter ]; then
 	if [ "$2" = //scan ]; then
 		mscan : 2>/dev/null | colorscan
@@ -58,7 +62,7 @@ case "$0" in
 	*prev*) d=-1;;
 	*) d=0;;
 esac
-curcmd=$(mseq -n "$@" |
+curcmd=$(mnums "$@" |
 	awk -v cur=$(mseq -n .) -v d=$d '$1 == cur {print "+" FNR+d ":x"; quit}')
 
-LESSOPEN="|$0 --filter %s" exec less -Ps"mless %f?m (message %i of %m).." -R $curcmd $(mseq -n "$@")
+LESSOPEN="|$0 --filter %s" exec less -Ps"mless %f?m (message %i of %m).." -R $curcmd $(mnums "$@")