Update 2024-02-14 16:20 Linux/x86_64-ld5587
This commit is contained in:
44
.vim/pack/plugins/opt/vim-taskwarrior/autoload/taskinfo.vim
Normal file
44
.vim/pack/plugins/opt/vim-taskwarrior/autoload/taskinfo.vim
Normal file
@@ -0,0 +1,44 @@
|
||||
function! taskinfo#init(command, filter, info)
|
||||
if exists('g:task_info')
|
||||
call taskinfo#quit()
|
||||
endif
|
||||
|
||||
if a:command != 'info'
|
||||
\ && exists('g:task_info_arg')
|
||||
\ && g:task_info_arg == [a:command, a:filter]
|
||||
unlet g:task_info_arg
|
||||
return
|
||||
endif
|
||||
|
||||
execute g:task_info_position.' '.g:task_info_size.
|
||||
\ (g:task_info_vsplit ? 'v' : '').'split'
|
||||
edit taskinfo
|
||||
let g:task_info = bufnr('%')
|
||||
let g:task_info_arg = [a:command, a:filter]
|
||||
setlocal noswapfile
|
||||
setlocal modifiable
|
||||
call append(0, a:info)
|
||||
silent global/^[\t ]*$/delete
|
||||
silent global/^[ -]\+$/delete
|
||||
setlocal readonly
|
||||
setlocal nomodifiable
|
||||
setlocal buftype=nofile
|
||||
setlocal nowrap
|
||||
setlocal filetype=taskinfo
|
||||
1
|
||||
|
||||
let b:command = a:command
|
||||
let b:filter = a:filter
|
||||
|
||||
nnoremap <silent> <buffer> q :call taskinfo#quit()<CR>
|
||||
nnoremap <silent> <buffer> <enter> :call taskinfo#quit()<CR>
|
||||
|
||||
if a:command != 'info'
|
||||
wincmd W
|
||||
endif
|
||||
endfunction
|
||||
|
||||
function! taskinfo#quit()
|
||||
silent! execute g:task_info.'bd!'
|
||||
unlet g:task_info
|
||||
endfunction
|
||||
Reference in New Issue
Block a user