From 0cf3b02e0716d2182cc377bf42e8c522c81c47b0 Mon Sep 17 00:00:00 2001 From: Andrew Miner Date: Sun, 20 Sep 2026 10:35:59 -0600 Subject: [PATCH] Add daybook functions --- home/.vimrc | 47 ++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 46 insertions(+), 1 deletion(-) diff --git a/home/.vimrc b/home/.vimrc index a1a7470..b75f017 100644 --- a/home/.vimrc +++ b/home/.vimrc @@ -222,6 +222,51 @@ function! InsertDivider() call cursor(line('.'), len(indent) + len(leader) + 1) endfunction +function! StartDailyReview() + let today = strftime('%d') + let yesterday = strftime('%d', localtime() - 86400) + + if today == '01' + throw 'You need to perform a monthly review today.' + endif + + let todayLog = fnameescape($'log/{today}-daily.md') + let yesterdayLog = fnameescape($'log/{yesterday}-daily.md') + + execute $'edit {yesterdayLog}' + vsplit + set nowrap + wincmd n + edit log/future.md + set nowrap + wincmd l + vertical resize 107 + execute $'edit {todayLog}' + :0r templates/daily.md +endfunction + +function! CopyTriggerFiles() + let day = strftime('%d') + let month = strftime('%m') + let year = strftime('%Y') + let dayName = tolower(strftime('%A')) + + let triggerFiles = [ + \ $'triggers/once/{year}/{month}/{day}-trigger.md', + \ $'triggers/weekly/{dayName}-trigger.md', + \ $'triggers/monthly/{day}-trigger.md', + \ $'triggers/yearly/{month}/{day}-trigger.md', + \ ] + + for fileName in triggerFiles + let fileName = fnameescape(fileName) + if filereadable(fileName) + execute $'read {fileName}' + normal! k + endif + endfor +endfunction + " Key Mappings ##################################################################################### nnoremap :NERDTreeToggle \| wincmd p \| vertical resize 111 \| wincmd p @@ -234,7 +279,7 @@ nnoremap :set hlsearch! nnoremap :cp nnoremap :cn nnoremap :copen -nnoremap :vsplit \| set nowrap \| wincmd p \| vertical resize 107 +nnoremap :call StartDailyReview() nnoremap c :ALEGoToTypeDefinition nnoremap d :ALEGoToDefinition