configuration/local/bin/ladd

34 lines
671 B
Plaintext
Raw Normal View History

#!/bin/sh
ledger="${1:-$LEDGER_FILE}"
2019-11-16 19:27:53 +01:00
# fuzzy select a transaction title
selection="$(sed -n 's/....-..-..\( [*!]\)\? //p' "$ledger" | sort | uniq | fzf)"
[ -z "$selection" ] && clear && exit 0 # quit if escaped
cat <<HERE | ed --silent "$ledger"
# append a newline for easier searching
\$a
.
# yank matching transaction (closed by empty line)
?^....-..-..\( [*!]\)\? ${selection}\$?;/^\$/y
# select line below last none-empty line
$
?^..*?
+
# put transaction
x
# replace date with today
?^\$?
2019-05-10 15:07:45 +02:00
+s/....-..-..\( [*!]\)\?/$(date +'%Y-%m-%d')/
# delete empty lines at end and quit
/^\$/,\$d
wq
HERE
2019-11-16 19:27:53 +01:00
# review change: open end of the file in vis
vis +\$ "$ledger"
2019-11-16 19:27:53 +01:00
clear