34 lines
1.0 KiB
Bash
Executable File
34 lines
1.0 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
|
|
if [ "$TERM_PROGRAM" = tmux ]; then
|
|
cd ~/.zk && $EDITOR "$(cat ~/.zk/current-zettel.txt)"
|
|
else
|
|
echo 'Not in tmux'
|
|
echo 'Choose an option:'
|
|
echo '1. Open in tmux'
|
|
echo '2. Open in current terminal'
|
|
read -r -p 'Enter your choice: ' choice
|
|
case $choice in
|
|
1)
|
|
# Check if a tmux session is running with a window named zk
|
|
if tmux list-windows -F '#{window_name}' | grep -q zk; then
|
|
# Attach to the session containing the 'zk' window
|
|
session="$(tmux list-windows -F '#{window_name} #{session_name}' | grep zk | head -n 1 | awk '{ print $2 }')"
|
|
tmux attach -t "$session"
|
|
else
|
|
# Create session with a window named 'zk' and start nvim
|
|
tmux new-session -s zk -n zk -d
|
|
tmux send-keys -t zk:zk "cd ~/.zk && $EDITOR \"\$(cat ~/.zk/current-zettel.txt)\"" Enter
|
|
tmux attach -t zk
|
|
fi
|
|
;;
|
|
2)
|
|
cd ~/.zk && $EDITOR "$(cat ~/.zk/current-zettel.txt)"
|
|
;;
|
|
*)
|
|
echo 'Not opening Zettelkasten'
|
|
exit 1
|
|
;;
|
|
esac
|
|
fi
|