]>
git.madduck.net Git - etc/mutt.git/blobdiff - .mutt/bgrun
madduck's git repository
Every one of the projects in this repository is available at the canonical
URL git://git.madduck.net/madduck/pub/<projectpath> — see
each project's metadata for the exact URL.
All patches and comments are welcome. Please squash your changes to logical
commits before using git-format-patch and git-send-email to
patches@ git. madduck. net .
If you'd read over the Git project's submission guidelines and adhered to them,
I'd be especially grateful.
SSH access, as well as push access can be individually
arranged .
If you use my repositories frequently, consider adding the following
snippet to ~/.gitconfig and using the third clone URL listed for each
project:
[url "git://git.madduck.net/madduck/"]
insteadOf = madduck:
-TEMPDIR_SENTINEL=.tempdir
+TEMPRUNDIR=.tempdir-run.d
- if [ -e $TEMPDIR_SENTINEL ]; then
+ if [ -d $TEMPRUNDIR ]; then
local TEMPDIR; TEMPDIR="$PWD"
local TEMPDIR; TEMPDIR="$PWD"
- echo Cleaning up tempdir $TEMPDIR… >> output.stderr
notify_output
cd /
rm -rf "$TEMPDIR"
notify_output
cd /
rm -rf "$TEMPDIR"
fi
trap - 1 2 3 4 5 6 7 8 10 11 12 13 14 15
}
trap cleanup 1 2 3 4 5 6 7 8 10 11 12 13 14 15
enter_tempdir() {
fi
trap - 1 2 3 4 5 6 7 8 10 11 12 13 14 15
}
trap cleanup 1 2 3 4 5 6 7 8 10 11 12 13 14 15
enter_tempdir() {
- if [ -e $TEMPDIR_SENTINEL ]; then
+ if [ -d $TEMPRUNDIR ]; then
fi
done
cd $(mktemp -dp "$TMPDIR" mutt.XXXXXXXXXX)
fi
done
cd $(mktemp -dp "$TMPDIR" mutt.XXXXXXXXXX)
- touch $TEMPDIR_SENTINEL
stdout="${2:-}"
stderr="${3:-}"
for i in stdout stderr; do
stdout="${2:-}"
stderr="${3:-}"
for i in stdout stderr; do
- if eval test -s output.$i; then
- anything=1
- escaped=$(eval sed -e 's,\",\\\",g' output.$i)
+ if eval test -s $TEMPRUNDIR/output.$i; then
+ escaped=$(eval sed -e 's,\",\\\",g' $TEMPRUNDIR/output.$i)
output="${output:+$output
}${i}:
$escaped"
output="${output:+$output
}${i}:
$escaped"
- [ -e $TEMPDIR_SENTINEL ] || return
+ [ -d $TEMPRUNDIR ] || return
local stdout stderr anything
for i in stdout stderr; do
local stdout stderr anything
for i in stdout stderr; do
- if [ -s "output.$i" ]; then
- eval $i="'output.$i'"
+ if [ -s "$TEMPRUNDIR/ output.$i" ]; then
+ eval $i="'$TEMPRUNDIR/ output.$i'"
else
eval $i=/dev/null
fi
else
eval $i=/dev/null
fi
- python -c "import mimetypes; print(mimetypes.guess_extension('$1'))"
+ python3 -c "import mimetypes; print(mimetypes.guess_extension('$1'))"
}
get_file() {
local t
if [ -z "$1" ]; then
}
get_file() {
local t
if [ -z "$1" ]; then
- t=$(TMPDIR="$PWD" tempfile -s $(guess_extension "$MIMETYPE"))
+ t=$(mktemp -p "$PWD" tmp.XXXXXXXXXX. $(guess_extension "$MIMETYPE"))
cat > "$t"
echo "$t"
else
cat > "$t"
echo "$t"
else
local filename; filename="$1"
if [ -z "$VIEWER" ]; then
[ -n "${2:-}" ] && filename="${2}:${1}"
local filename; filename="$1"
if [ -z "$VIEWER" ]; then
[ -n "${2:-}" ] && filename="${2}:${1}"
- run-mailcap "$filename" > output.stdout 2> output.stderr
+ run-mailcap "$filename" > $TEMPRUNDIR/output.stdout 2> $TEMPRUNDIR/ output.stderr
- $VIEWER "$filename" > output.stdout 2> output.stderr
+ $VIEWER "$filename" > $TEMPRUNDIR/output.stdout 2> $TEMPRUNDIR/ output.stderr
(
ts=$(($(date +%s) + $DELAY))
launch_viewer "$FILE" "$MIMETYPE"
(
ts=$(($(date +%s) + $DELAY))
launch_viewer "$FILE" "$MIMETYPE"
- while [ $(date +%s) -lt $ts ]; do sleep $DELAY ; done
+ while [ $(date +%s) -lt $ts ]; do sleep 1 ; done
cleanup
) &
trap - 1 2 3 4 5 6 7 8 10 11 12 13 14 15
cleanup
) &
trap - 1 2 3 4 5 6 7 8 10 11 12 13 14 15
(launch_viewer "$FILE" "$MIMETYPE") &
(
while [ $(($(stat -c%X "$FILE") + $DELAY)) -gt $(date +%s) ]; do
(launch_viewer "$FILE" "$MIMETYPE") &
(
while [ $(($(stat -c%X "$FILE") + $DELAY)) -gt $(date +%s) ]; do
- echo Cleaning up $TMPDIR… > $TMPDIR/output.stderr
cleanup
) &
trap - 1 2 3 4 5 6 7 8 10 11 12 13 14 15
cleanup
) &
trap - 1 2 3 4 5 6 7 8 10 11 12 13 14 15