commit 28547ac05e95683859a01a025f5e90c9fd9bff21
parent c7dd10d1761f1de0cdda1e7c66d9aa39d424f6cd
Author: Jacob R. Edwards <jacobouno@protonmail.com>
Date: Sat, 13 Feb 2021 13:07:05 -0800
Move `loop' script to a set of shell functions
By making it into shell functions it gets access to functions,
aliases, local variables, etc., making it much more useful. It is
also much simpler (and more efficient) becaues separate functions
are used for different variations.
Diffstat:
2 files changed, 2 insertions(+), 23 deletions(-)
diff --git a/modules/scripts/.local/bin/loop b/modules/scripts/.local/bin/loop
@@ -1,23 +0,0 @@
-#!/usr/bin/env dash
-#! loop -- loop commands indefinitly
-
-usage() { echo "usage, `basename $0` [-ehi]" ;}
-
-while [ $# -ne 0 ]
-do
- case "$1"
- in
- -i) shift; interactive=1;;
- -h) usage; exit 1;;
- -e) shift; set -e;;
- *) break;;
- esac
-done
-
-while true
-do
- if [ ${interactive:=0} -eq 1 ]; then
- read null || break
- fi
- eval $@
-done
diff --git a/modules/shell/.config/shell/etc b/modules/shell/.config/shell/etc
@@ -3,6 +3,8 @@
doin() { (builtin cd ${1:?No directory} && shift && eval $@) ;}
fed() { doin "$FEED_DIR" feed $@ ;}
hfmt() { w3m -T text/html -O ASCII -dump $* ;}
+loop() { while eval $*; do done }
+wloop() { while { read && eval $* ;}; do done }
tp() {
case $* in