#!/bin/bash
#
# prevents astroid to delete an attachment file immediately 
# but instead copies it to a separate directory and preserves it
#
# based on https://github.com/astroidmail/astroid/issues/339#issuecomment-300491869

cachedir=~/.cache/astroid-attachments
attachment=$(echo "$1" | sed -E "s|.*astroid/[a-zA-Z0-9]*?-||")

touch $cachedir/token."$attachment"

if [ ! -e ${cachedir} ]; then
  mkdir -p ${cachedir}
fi

mv "$1" ~/.cache/astroid-attachments/"$attachment"

inotifywait -e close "$1" &
ip=$!

# open file (you can replace this with xdg-open)
xdg-open "$cachedir/$attachment"

while inotifywait -r -e close $cachedir/"$attachment"; do 
  rm $cachedir/token."$attachment" # || rm $cachedir/"$attachment"
done
