aboutsummaryrefslogtreecommitdiff
path: root/lib
diff options
context:
space:
mode:
authorMarc Coquand <marc@mccd.space>2024-05-29 10:10:45 -0500
committerMarc Coquand <marc@mccd.space>2024-05-29 10:10:45 -0500
commit67c32112317ec80d0a45da245dc54dda59da5de5 (patch)
treebae7370352bf35bc50da9d1021ce52be71fb5311 /lib
parent41e598d5c92ac4687de4c3d700972ecf2096eb60 (diff)
downloadstitch-76d2e9b4edeeb438a97cef6962158434e40cbd6f.tar.gz
stitch-76d2e9b4edeeb438a97cef6962158434e40cbd6f.tar.bz2
stitch-76d2e9b4edeeb438a97cef6962158434e40cbd6f.zip
Bugfix: done and todo should not reset tag when moving something to donev0.0.9
Diffstat (limited to 'lib')
-rw-r--r--lib/done.ml12
-rw-r--r--lib/todos.ml8
2 files changed, 13 insertions, 7 deletions
diff --git a/lib/done.ml b/lib/done.ml
index 6e416cb..810ef90 100644
--- a/lib/done.ml
+++ b/lib/done.ml
@@ -38,8 +38,8 @@ let init ~goto_todo ~goto_headlines =
}
-let load_done ?(hide_file_name = false) () =
- let done_content = Grep.get_done () |> Grep.parse_todo_string in
+let load_done ?(hide_file_name = false) tag =
+ let done_content = Grep.get_tagged_done tag () |> Grep.parse_todo_string in
let done_pretty = Grep.pretty_format_todo ~hide_file_name done_content in
done_content, done_pretty
@@ -138,7 +138,7 @@ let rec render
in
render t { state with hide_file_name; content_pretty }
| `Key (`ASCII 'g', []) ->
- let content, content_pretty = load_done ~hide_file_name () in
+ let content, content_pretty = load_done ~hide_file_name tag in
let y = min (List.length content_pretty + content_start) y in
render
t
@@ -167,7 +167,7 @@ let rec render
~content
~selected_file
~on_return:(fun result ->
- let content, content_pretty = load_done ~hide_file_name () in
+ let content, content_pretty = load_done ~hide_file_name tag in
let y = min (List.length content_pretty + content_start) y in
Common.Term.cursor t None;
render
@@ -191,7 +191,7 @@ let rec render
| `Key (`ASCII 'T', [ `Ctrl ]) ->
let selected_file, _ = Array.get content (y - content_start) in
let _ = Grep.toggle_todo selected_file in
- let content, content_pretty = load_done ~hide_file_name () in
+ let content, content_pretty = load_done ~hide_file_name tag in
let y = min (List.length content_pretty + content_start) y in
render
t
@@ -227,7 +227,7 @@ let rec render
match Unix.wait () with
| _, _ ->
Common.Term.cursor t None;
- let content, content_pretty = load_done ~hide_file_name () in
+ let content, content_pretty = load_done ~hide_file_name tag in
render
t
{ state with
diff --git a/lib/todos.ml b/lib/todos.ml
index 89f84d7..83a497b 100644
--- a/lib/todos.ml
+++ b/lib/todos.ml
@@ -44,6 +44,12 @@ let load_todos ?(hide_file_name = false) () =
todo_content, todo_pretty
+let refresh ?(hide_file_name = false) tag =
+ let content = Grep.get_tagged_todo tag () |> Grep.parse_todo_string in
+ let content_pretty = Grep.pretty_format_todo ~hide_file_name content in
+ content, content_pretty
+
+
let rec render
t
({ pos
@@ -192,7 +198,7 @@ let rec render
| `Key (`ASCII 'T', [ `Ctrl ]) ->
let selected_file, _ = Array.get content (y - content_start) in
let _ = Grep.toggle_done selected_file in
- let content, content_pretty = load_todos ~hide_file_name () in
+ let content, content_pretty = refresh ~hide_file_name tag in
let y = min (List.length content_pretty + content_start) y in
render
t