]> git.friedersdorff.com Git - max/dotfiles.git/commitdiff
Pipe to less if output of la is larger than one screen
authorMaximilian Friedersdorff <max@friedersdorff.com>
Mon, 14 Nov 2016 10:22:26 +0000 (10:22 +0000)
committerMaximilian Friedersdorff <max@friedersdorff.com>
Mon, 14 Nov 2016 10:22:26 +0000 (10:22 +0000)
bash/.bash_aliases

index 879f20c0842763407e4f728a9b1888ad1dac4b62..0bab62d6bfee2521bee9a74d7e77947efa7fcb1b 100644 (file)
@@ -1,3 +1,5 @@
+#!/bin/bash
+
 if [ -x /usr/bin/dircolors ]; then
     test -r ~/.dircolors && eval "$(dircolors -b ~/.dircolors)" || eval "$(dircolors -b)"
     alias ls='ls --color=auto'
@@ -10,6 +12,12 @@ if [ -x /usr/bin/dircolors ]; then
 fi
 
 function la {
-        \ls -lah --color=always "$@" | less -r
+    ls_out=$(\ls -lah --color=always "$@")
+    let "allowed_lines = $(tput lines) - 3"
+    if [ $(echo "$ls_out" | wc -l) -le $allowed_lines ]; then
+       echo "$ls_out"
+    else
+       echo "$ls_out" | less -r
+    fi
 }
 alias tmux='TERM=xterm-256color tmux'