Make miscutils/rr a ksh function
Making this a function available through FPATH allows me to use `rr` with aliases and funcions defined only for interactive shells.
This commit is contained in:
parent
2340af8c9d
commit
5474e4ca04
2
Makefile
2
Makefile
@ -1,6 +1,6 @@
|
|||||||
BINDIR?=${HOME}/.local/bin
|
BINDIR?=${HOME}/.local/bin
|
||||||
cmds=g kpick
|
cmds=g kpick
|
||||||
fns=diralias j jmod nsalias
|
fns=diralias j jmod nsalias rr
|
||||||
install:
|
install:
|
||||||
install ${fns} $${FPATH:?FPATH not defined}
|
install ${fns} $${FPATH:?FPATH not defined}
|
||||||
install ${cmds} ${BINDIR}
|
install ${cmds} ${BINDIR}
|
||||||
|
19
rr
Normal file
19
rr
Normal file
@ -0,0 +1,19 @@
|
|||||||
|
function rr
|
||||||
|
{
|
||||||
|
(( $# == 0 )) && print "usage: $0 command ..." && return 64
|
||||||
|
typeset tmp1=$(mktemp $0.XXXXXXXXXX)
|
||||||
|
typeset tmp2=$(mktemp $0.XXXXXXXXXX)
|
||||||
|
trap "rm $tmp1 $tmp2; exit 0" 0 1 2 15
|
||||||
|
while eval "$@" >$tmp2
|
||||||
|
do
|
||||||
|
if ! diff $tmp1 $tmp2
|
||||||
|
then
|
||||||
|
cp $tmp2 $tmp1
|
||||||
|
else
|
||||||
|
print -n "."
|
||||||
|
fi
|
||||||
|
sleep 2
|
||||||
|
done
|
||||||
|
print
|
||||||
|
rm $tmp1 $tmp2
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user