summaryrefslogtreecommitdiff
path: root/internal/askcli/command_urgency.go
diff options
context:
space:
mode:
Diffstat (limited to 'internal/askcli/command_urgency.go')
-rw-r--r--internal/askcli/command_urgency.go13
1 files changed, 12 insertions, 1 deletions
diff --git a/internal/askcli/command_urgency.go b/internal/askcli/command_urgency.go
index 9dd162e..a228f27 100644
--- a/internal/askcli/command_urgency.go
+++ b/internal/askcli/command_urgency.go
@@ -3,6 +3,7 @@ package askcli
import (
"bytes"
"context"
+ "encoding/json"
"fmt"
"io"
"sort"
@@ -22,6 +23,16 @@ func (d Dispatcher) handleUrgency(ctx context.Context, stdout, stderr io.Writer)
sort.Slice(tasks, func(i, j int) bool {
return tasks[i].Urgency > tasks[j].Urgency
})
- io.WriteString(stdout, FormatTaskList(tasks))
+ if d.jsonOutput {
+ data, err := json.Marshal(tasks)
+ if err != nil {
+ fmt.Fprintf(stderr, "error: failed to marshal JSON: %v\n", err)
+ return 1, nil
+ }
+ stdout.Write(data)
+ io.WriteString(stdout, "\n")
+ } else {
+ io.WriteString(stdout, FormatTaskList(tasks))
+ }
return 0, nil
}