diff options
| author | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2026-01-09 19:00:21 +0900 |
|---|---|---|
| committer | TheSiahxyz <164138827+TheSiahxyz@users.noreply.github.com> | 2026-01-09 19:00:21 +0900 |
| commit | 0572779eb7a98ecd7dd8e60709fda112e3bdbc44 (patch) | |
| tree | b507a882603861ceecd3eca77c28eb8e15608b68 /ar | |
| parent | 95c766c4814a1387a9876bb34cf493b45cb9b070 (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.zsh | 10 | ||||
| -rwxr-xr-x | ar/.local/bin/opensessions | 5 |
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 |
