Incorporated due date workaround from durcheinandr
This commit is contained in:
@@ -18,6 +18,10 @@ function for context and projects (see section 1.4).
|
|||||||
|
|
||||||
git clone https://github.com/dbeniamine/todo.txt-vim.git ~/.vim/bundle/todo.txt-vim
|
git clone https://github.com/dbeniamine/todo.txt-vim.git ~/.vim/bundle/todo.txt-vim
|
||||||
|
|
||||||
|
If you want the help installed, run ":helptags ~/.vim/doc" inside vim after having copied the files.
|
||||||
|
Then you will be able to get the commands help with: :h todo.txt
|
||||||
|
|
||||||
|
|
||||||
## Features included in Freitass version
|
## Features included in Freitass version
|
||||||
|
|
||||||
This plugin gives syntax highlighting to [todo.txt](http://todotxt.com/) files. It also defines a few mappings, to help with editing these files:
|
This plugin gives syntax highlighting to [todo.txt](http://todotxt.com/) files. It also defines a few mappings, to help with editing these files:
|
||||||
@@ -28,6 +32,8 @@ This plugin gives syntax highlighting to [todo.txt](http://todotxt.com/) files.
|
|||||||
|
|
||||||
`<LocalLeader>s@` : Sort the file on @Contexts
|
`<LocalLeader>s@` : Sort the file on @Contexts
|
||||||
|
|
||||||
|
`<leader>-sd` : Sort @_sched entries by due-date
|
||||||
|
|
||||||
`<LocalLeader>j` : Lower the priority of the current line
|
`<LocalLeader>j` : Lower the priority of the current line
|
||||||
|
|
||||||
`<LocalLeader>k` : Increase the priority of the current line
|
`<LocalLeader>k` : Increase the priority of the current line
|
||||||
@@ -48,9 +54,6 @@ This plugin gives syntax highlighting to [todo.txt](http://todotxt.com/) files.
|
|||||||
|
|
||||||
`<leader>-D` : Move completed tasks to done.txt
|
`<leader>-D` : Move completed tasks to done.txt
|
||||||
|
|
||||||
If you want the help installed, run ":helptags ~/.vim/doc" inside vim after having copied the files.
|
|
||||||
Then you will be able to get the commands help with: :h todo.txt
|
|
||||||
|
|
||||||
## New features
|
## New features
|
||||||
|
|
||||||
This fork provides a hierarchical sorting function designed to do by project
|
This fork provides a hierarchical sorting function designed to do by project
|
||||||
|
|||||||
@@ -9,6 +9,8 @@ COMMANDS *todo-commands*
|
|||||||
|
|
||||||
`<LocalLeader>s@` : Sort the file on @Contexts
|
`<LocalLeader>s@` : Sort the file on @Contexts
|
||||||
|
|
||||||
|
`<LocalLeader>s@` : Sort the file on due dates
|
||||||
|
|
||||||
`<LocalLeader>sc` : Sort the file by context then by priority
|
`<LocalLeader>sc` : Sort the file by context then by priority
|
||||||
|
|
||||||
`<LocalLeader>scp` : Sort the file by context, project then by priority
|
`<LocalLeader>scp` : Sort the file by context, project then by priority
|
||||||
|
|||||||
@@ -39,7 +39,6 @@ function! TodoTxtUnMarkAsDone()
|
|||||||
:s/\s*x\s*\d\{4}-\d\{1,2}-\d\{1,2}\s*//g
|
:s/\s*x\s*\d\{4}-\d\{1,2}-\d\{1,2}\s*//g
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
function! TodoTxtMarkAsDone()
|
|
||||||
function! TodoTxtMarkAsDone()
|
function! TodoTxtMarkAsDone()
|
||||||
call TodoTxtPrependDate()
|
call TodoTxtPrependDate()
|
||||||
normal! Ix
|
normal! Ix
|
||||||
@@ -85,6 +84,13 @@ function! TodoTxtSort()
|
|||||||
:sort /+[a-zA-Z]*/ r
|
:sort /+[a-zA-Z]*/ r
|
||||||
:sort /\v\([A-Z]\)/ r
|
:sort /\v\([A-Z]\)/ r
|
||||||
endfunction
|
endfunction
|
||||||
|
|
||||||
|
function! TodoTxtSortDue()
|
||||||
|
:silent! %s/\(due:\d\{4}\)-\(\d\{2}\)-\(\d\{2}\)/\1\2\3/g
|
||||||
|
:sort! n /due:/
|
||||||
|
:silent! %s/\(due:\d\{4}\)\(\d\{2}\)/\1-\2-/g
|
||||||
|
" TODO: add time sorting (YYYY-MM-DD HH:MM)
|
||||||
|
endfunction
|
||||||
|
|
||||||
" Mappings {{{1
|
" Mappings {{{1
|
||||||
" Sort tasks {{{2
|
" Sort tasks {{{2
|
||||||
@@ -209,6 +215,11 @@ if !hasmapto("<localleader>D",'n')
|
|||||||
if !hasmapto("<localleader>D",'n')
|
if !hasmapto("<localleader>D",'n')
|
||||||
nnoremap <script> <silent> <buffer> <localleader>D :call TodoTxtRemoveCompleted()<CR>
|
nnoremap <script> <silent> <buffer> <localleader>D :call TodoTxtRemoveCompleted()<CR>
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
" Sort @_sched by due: date {{{2
|
||||||
|
if !hasmapto("<localleader>sd".'n')
|
||||||
|
nnoremap <script> <silent> <buffer> <localleader>sd :call TodoTxtSortDue()<CR>
|
||||||
|
endif
|
||||||
|
|
||||||
" Folding {{{1
|
" Folding {{{1
|
||||||
" Options {{{2
|
" Options {{{2
|
||||||
|
|||||||
@@ -9,38 +9,40 @@ if exists("b:current_syntax")
|
|||||||
finish
|
finish
|
||||||
endif
|
endif
|
||||||
|
|
||||||
syntax match TodoDone '^[xX]\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoDone '^[xX]\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityA '^([aA])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityA '^([aA])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityB '^([bB])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityB '^([bB])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityC '^([cC])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityC '^([cC])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityD '^([dD])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityD '^([dD])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityE '^([eE])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityE '^([eE])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityF '^([fF])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityF '^([fF])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityG '^([gG])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityG '^([gG])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityH '^([hH])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityH '^([hH])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityI '^([iI])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityI '^([iI])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityJ '^([jJ])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityJ '^([jJ])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityK '^([kK])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityK '^([kK])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityL '^([lL])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityL '^([lL])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityM '^([mM])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityM '^([mM])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityN '^([nN])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityN '^([nN])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityO '^([oO])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityO '^([oO])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityP '^([pP])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityP '^([pP])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityQ '^([qQ])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityQ '^([qQ])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityR '^([rR])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityR '^([rR])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityS '^([sS])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityS '^([sS])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityT '^([tT])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityT '^([tT])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityU '^([uU])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityU '^([uU])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityV '^([vV])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityV '^([vV])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityW '^([wW])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityW '^([wW])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityX '^([xX])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityX '^([xX])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityY '^([yY])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityY '^([yY])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoPriorityZ '^([zZ])\s.\+$' contains=TodoDate,TodoProject,TodoContext
|
syntax match TodoPriorityZ '^([zZ])\s.\+$' contains=TodoDue,TodoDate,TodoProject,TodoContext
|
||||||
syntax match TodoDate '\d\{2,4\}-\d\{2\}-\d\{2\}' contains=NONE
|
syntax match TodoDate '\d\{2,4\}-\d\{2\}-\d\{2\}' contains=NONE
|
||||||
|
syntax match TodoDue 'due:' contains=NONE
|
||||||
syntax match TodoProject '\(^\|\W\)+[^[:blank:]]\+' contains=NONE
|
syntax match TodoProject '\(^\|\W\)+[^[:blank:]]\+' contains=NONE
|
||||||
syntax match TodoContext '\(^\|\W\)@[^[:blank:]]\+' contains=NONE
|
syntax match TodoContext '\(^\|\W\)@[^[:blank:]]\+' contains=NONE
|
||||||
|
|
||||||
" Other priority colours might be defined by the user
|
" Other priority colours might be defined by the user
|
||||||
|
highlight default link TodoDue Special
|
||||||
highlight default link TodoDone Comment
|
highlight default link TodoDone Comment
|
||||||
highlight default link TodoPriorityA Identifier
|
highlight default link TodoPriorityA Identifier
|
||||||
highlight default link TodoPriorityB statement
|
highlight default link TodoPriorityB statement
|
||||||
|
|||||||
Reference in New Issue
Block a user