]>
git.madduck.net Git - etc/mutt.git/commitdiff
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:
summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
2e31cd7 )
+guess_extension() {
+ python -c "import mimetypes; print(mimetypes.guess_extension('$1'))"
+}
+
+launch_viewer() {
+ run-mailcap --action=view "$1":"$2" > output.stdout 2> output.stderr
+}
+
case "$SELF" in
(bgrun)
# make a copy of the file, then launch a shell process in the background
# to divert to run-mailcap, after which the temporary directory gets
# cleaned up.
case "$SELF" in
(bgrun)
# make a copy of the file, then launch a shell process in the background
# to divert to run-mailcap, after which the temporary directory gets
# cleaned up.
- cp -a "$1" $TMPDIR
- MIMETYPE="$2"
+ MIMETYPE="$1"
+ TEMPFILE=$(tempfile -d . -p mutt -s $(guess_extension "$MIMETYPE"))
+ cat > "$TEMPFILE"
- run-mailcap --action=view "$MIMETYPE": "$TEMPFILE"
+ launch_viewer "$MIMETYPE" "$TEMPFILE"
if [ -s "$TMPDIR/output.stdout" ] || [ -s "$TMPDIR/output.stderr" ]; then
notify $TMPDIR/output.stdout $TMPDIR/output.stderr \
"Output from mutt/$SELF on $BASENAME"
if [ -s "$TMPDIR/output.stdout" ] || [ -s "$TMPDIR/output.stderr" ]; then
notify $TMPDIR/output.stdout $TMPDIR/output.stderr \
"Output from mutt/$SELF on $BASENAME"
# hack to stay around until the browser has read the file: make a fifo and
# wait for the cat process to finish writing to it, which means that it
# must have been consumed on the other end.
# hack to stay around until the browser has read the file: make a fifo and
# wait for the cat process to finish writing to it, which means that it
# must have been consumed on the other end.
- mkfifo "$TEMPFILE"
- INPUTFILE="$1"
- cat "$INPUTFILE" > $TEMPFILE &
- sensible-browser "$TEMPFILE" > $TMPDIR/output.stdout 2> $TMPDIR/output.stderr
+ mkfifo mutt.html
+ TEMPFILE=$(tempfile -d . -p mutt -s .html)
+ cat > "$TEMPFILE"
+ cat "$TEMPFILE" > mutt.html &
+ # For some reason, we do have to write a tempfile and cannot seem tu
+ # redirect stdin directly to the fifo, i.e. this does not work instead of
+ # the previous three lines:
+ ## cat > mutt.html &
+ launch_viewer text/html ${PWD}/mutt.html
#
# Mutt mailcap for backgrounding
#
# Mutt mailcap for backgrounding
-text/html; ~/.mutt/browserrun %s ; description=Open file in browser via FIFO
-application/*; ~/.mutt/bgrun %s % t; description=Backgrounded run of run-mailcap
-image/*; ~/.mutt/bgrun %s % t; description=Backgrounded run of run-mailcap
+text/html; ~/.mutt/browserrun; description=Open file in browser via FIFO
+application/*; ~/.mutt/bgrun %t; description=Backgrounded run of run-mailcap
+image/*; ~/.mutt/bgrun %t; description=Backgrounded run of run-mailcap