aboutsummaryrefslogtreecommitdiffstats
path: root/autoload/todo.vim
diff options
context:
space:
mode:
authorTeddy Wing2020-03-21 23:11:25 +0100
committerTeddy Wing2020-03-21 23:11:25 +0100
commitb13db3116d84b0fc474f193baf2514bc66d5580c (patch)
treededab395d542d953e28d7887eaa9f85b0c28e374 /autoload/todo.vim
parent9a2d08847734353e703ac43eb82827582b3d2af9 (diff)
downloadvim-twodo-b13db3116d84b0fc474f193baf2514bc66d5580c.tar.bz2
Don't save search history when running substitution commands
Our substitution commands would save the search pattern into search history, intervening with user search history. Use the `keeppatterns` command to prevent this.
Diffstat (limited to 'autoload/todo.vim')
-rw-r--r--autoload/todo.vim36
1 files changed, 36 insertions, 0 deletions
diff --git a/autoload/todo.vim b/autoload/todo.vim
index 758d0d5..8cfa986 100644
--- a/autoload/todo.vim
+++ b/autoload/todo.vim
@@ -1,3 +1,39 @@
+function! todo#MarkComplete()
+ let view = winsaveview()
+
+ keeppatterns s/\v^(\s*)[-_!xS] /\1v /
+
+ call winrestview(view)
+endfunction
+
+
+function! todo#MarkDeleted()
+ let view = winsaveview()
+
+ keeppatterns s/\v^(\s*)[-_!vS] /\1x /
+
+ call winrestview(view)
+endfunction
+
+
+function! todo#MarkPartiallyCompleted()
+ let view = winsaveview()
+
+ keeppatterns s/\v^(\s*)[-_!xv] /\1S /
+
+ call winrestview(view)
+endfunction
+
+
+function! todo#RemoveOldTodos()
+ let view = winsaveview()
+
+ keeppatterns g/^\s*[vx] /d
+
+ call winrestview(view)
+endfunction
+
+
function! todo#Escalate()
let todo = getline('.')