code / scripts

Lines748 Shell528 Python72 Lua67 Bourne Again Shell62 make15
1 others 4
Markdown4
(24 lines)
1 #!/bin/sh
2 # note - A simple script for note taking
3 set -e
4 cd ~/documents/notes
5 if arg -d\? "$@"; then
6 name="$(ask --query="$(arg 1 "$@")" "Delete Note: " *)"
7 rm -v "$name"
8 elif arg -l\? "$@"; then
9 ls
10 else
11 if [ $# -gt 0 ]; then
12 name="$1.md"
13 else
14 name="$(ask "Edit Note: " *)"
15 fi
16 if ! [ -e "$name" ]; then
17 printf "# ${name%.md} notes\n\n" >> "$name"
18 cleanup() {
19 [ $(sed '/^#/d ; /^$/d' "$name" | wc -l) -gt 0 ] || rm "$name"
21 trap cleanup EXIT
22 fi
23 ${EDITOR-vim} "$name" +$ || true
24 fi