summaryrefslogtreecommitdiff
path: root/mac/.local/bin/opentasktui
diff options
context:
space:
mode:
Diffstat (limited to 'mac/.local/bin/opentasktui')
-rwxr-xr-xmac/.local/bin/opentasktui27
1 files changed, 27 insertions, 0 deletions
diff --git a/mac/.local/bin/opentasktui b/mac/.local/bin/opentasktui
new file mode 100755
index 0000000..1db6bef
--- /dev/null
+++ b/mac/.local/bin/opentasktui
@@ -0,0 +1,27 @@
+#!/bin/sh
+
+# Capture the current session name
+current_session=$(tmux display-message -p '#S')
+
+# Parse the task description from the argument
+task_description="$1"
+
+# Create a new tmux session named 'new-task-session' and run 'tui -r current'
+tmux new-session -d -s new-task-session "taskwarrior-tui -r current"
+
+# Sleep for a bit to allow tui to load
+sleep 0.1
+
+# Send the keystrokes needed to filter tasks by description to the target pane
+tmux send-keys -t new-task-session:1.1 "/description:$task_description" C-m
+
+# Attach to the new session
+tmux switch-client -t new-task-session
+
+# Wait for the session to be closed, either by the user or some other way
+while tmux has-session -t new-task-session 2>/dev/null; do
+ sleep 0.1
+done
+
+# Switch back to the original session
+tmux switch-client -t "$current_session"