Add daybook functions
This commit is contained in:
+46
-1
@@ -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 <F1> :NERDTreeToggle \| wincmd p \| vertical resize 111 \| wincmd p<CR>
|
||||
@@ -234,7 +279,7 @@ nnoremap <F6> :set hlsearch!<CR>
|
||||
nnoremap <F7> :cp<CR>
|
||||
nnoremap <F9> :cn<CR>
|
||||
nnoremap <F10> :copen<CR>
|
||||
nnoremap <F11> :vsplit \| set nowrap \| wincmd p \| vertical resize 107<CR>
|
||||
nnoremap <F11> <Esc>:call StartDailyReview()<CR>
|
||||
|
||||
nnoremap <Leader>c :ALEGoToTypeDefinition<CR>
|
||||
nnoremap <Leader>d :ALEGoToDefinition<CR>
|
||||
|
||||
Reference in New Issue
Block a user