Make daily todo file template
[khome.git] / home / lib / login_functions.sh
index 3bf7676..193f4be 100644 (file)
@@ -1,5 +1,16 @@
 #
 
+## open : string -> unit
+##
+## Fork xdg-open so we don't block current terminal session when opening
+## things like pdf files. For example:
+##
+##    open book.pdf
+##
+open() {
+    (xdg-open "$1" &) &
+}
+
 ## notify_done : unit -> unit
 notify_done() {
     local -r _status_code="$?"
@@ -414,6 +425,32 @@ gh_clone_repo() {
     git clone "$1"
 }
 
+daily_todo_file_template() {
+cat << EOF
+===============================================================================
+$(date '+%F %A')
+===============================================================================
+
+
+backlog
+-------------------------------------------------------------------------------
+EOF
+}
+
+todo() {
+    local date
+    date="$(date +%F)"
+    local -r dir="$DIR_TODO/daily"
+    local -r file="$dir/$date.txt"
+
+    mkdir -p "$dir"
+    if [ ! -f "$file" ]
+    then
+        daily_todo_file_template > "$file"
+    fi
+    cd "$DIR_TODO" && "$EDITOR" "$file"
+}
+
 work_log_template() {
 cat << EOF
 $(date '+%F %A')
This page took 0.024037 seconds and 4 git commands to generate.