summaryrefslogtreecommitdiff
path: root/ar
diff options
context:
space:
mode:
authorTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2026-01-09 19:00:21 +0900
committerTheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com>2026-01-09 19:00:21 +0900
commit0572779eb7a98ecd7dd8e60709fda112e3bdbc44 (patch)
treeb507a882603861ceecd3eca77c28eb8e15608b68 /ar
parent95c766c4814a1387a9876bb34cf493b45cb9b070 (diff)
modified zsh/scripts.zsh, modified bin/opensessions, modified zsh/scripts.zsh, modified bin/opensessions
Diffstat (limited to 'ar')
-rw-r--r--ar/.config/zsh/scripts.zsh10
-rwxr-xr-xar/.local/bin/opensessions5
2 files changed, 11 insertions, 4 deletions
diff --git a/ar/.config/zsh/scripts.zsh b/ar/.config/zsh/scripts.zsh
index 5a47ffa..d70522d 100644
--- a/ar/.config/zsh/scripts.zsh
+++ b/ar/.config/zsh/scripts.zsh
@@ -390,9 +390,13 @@ EOF
)
[[ -z "${SELECTED_DIRS// }" ]] && return
if [[ "$(echo "$SELECTED_DIRS" | wc -l)" -eq 1 ]]; then
- cd "$SELECTED_DIRS"
- if [[ -n "$(git -C "$SELECTED_DIRS" status --porcelain)" ]]; then
- git status --porcelain 2>/dev/null
+ if [[ -n "$TMUX" ]]; then
+ opensessions "$SELECTED_DIRS"
+ else
+ cd "$SELECTED_DIRS" || return
+ if [[ -n "$(git -C "$SELECTED_DIRS" status --porcelain 2>/dev/null)" ]]; then
+ git status --porcelain
+ fi
fi
else
opensessions "$SELECTED_DIRS"
diff --git a/ar/.local/bin/opensessions b/ar/.local/bin/opensessions
index 6f9f236..d16f42f 100755
--- a/ar/.local/bin/opensessions
+++ b/ar/.local/bin/opensessions
@@ -18,7 +18,10 @@ set -- $dirs
for dir in $dirs; do
if [ -d "$dir" ]; then
session_name=$(get_session_name "$dir")
- if ! tmux has-session -t "$session_name" 2>/dev/null; then
+ if tmux has-session -t "$session_name" 2>/dev/null; then
+ session_path=$(tmux display-message -t "$session_name" -p '#{session_path}')
+ tmux send-keys -t "$session_name" "cd \"$session_path\"" C-m
+ else
tmux new-session -d -s "$session_name" -c "$dir"
if git -C "$dir" rev-parse --is-inside-work-tree >/dev/null 2>&1 && [ -n "$(git -C "$dir" status --porcelain)" ]; then
tmux send-keys -t "$session_name" "git status --porcelain" C-m