bin/scripts/zet (view raw)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
#!/bin/bash ZET_DIR="$HOME/docs/org/zet" if [ ! -d "$ZET_DIR" ] then echo "error: zet dir not present - $ZET_DIR" exit 1 fi list(){ for a in $ZET_DIR/* do title=$(cat $a | head -1) printf '%s: %s\n' `basename $a` "${title/\# }" done } create(){ title="$@" filename="`date +%Y%m%d%H%M`.md" printf "# %s\n\n\n" "$title" > $ZET_DIR/$filename vim +3 $ZET_DIR/$filename t=$(cat $ZET_DIR/$filename | head -1) title=$(printf "%s" "${t/\# }") cd $ZET_DIR git add $filename git commit -m "zet: $title" > /dev/null echo "Created zet $ZET_DIR/$filename" } case $1 in list|l) list ;; fzf|f) list | fzf --tac ;; dir|d) echo $ZET_DIR ;; c) shift create $@ ;; edit|e) choice=$(list | fzf --tac) if [ "$choice" ] then filename="$(echo $choice | cut -d: -f1)" vim $ZET_DIR/$filename fi esac |