dotfiles/bin/todo

22 lines
380 B
Bash
Executable File

#! /bin/sh
[ -z "$TODO_FILE" ] && TODO_FILE=".todo"
if [ "$1" = "" ]; then
cat "$TODO_FILE" 2>/dev/null
exit 0
fi
mkdir -p "$(dirname "$TODO_FILE")"
if [ "$(echo "$*" | cut -c1)" = "-" ]; then
exec 3< "$TODO_FILE" || exit 0
pattern="$(echo "$*" | cut -c2-)"
rm "$TODO_FILE"
sed "/^$pattern/d" <&3 > "$TODO_FILE"
else
echo "$*" >> "$TODO_FILE"
fi