move to new repo

This commit is contained in:
tumillanino
2026-03-24 20:17:22 +11:00
parent 083b57c87b
commit 35bcba335a
1910 changed files with 161640 additions and 41 deletions

View File

@@ -0,0 +1,51 @@
#!/usr/bin/env bash
GIT_BRANCH_COLOR=$'\033[38;2;137;180;250m'
GIT_BRANCH_RESET=$'\033[0m'
GIT_BRANCH_ICON=""
GIT_TAG_ICON=""
format_sessions_with_git_branch() {
local sessions="$1"
local -a session_list=()
local -a ref_list=()
local -a icon_list=()
local max_len=0
while IFS= read -r session; do
[[ -z "$session" ]] && continue
session_list+=("$session")
local pane_path
pane_path=$(tmux list-panes -t "$session" -F '#{pane_current_path}' 2>/dev/null | head -1)
local ref=""
local icon="$GIT_BRANCH_ICON"
if [[ -n "$pane_path" ]]; then
ref=$(git -C "$pane_path" branch --show-current 2>/dev/null)
if [[ -z "$ref" ]]; then
ref=$(git -C "$pane_path" describe --tags --exact-match 2>/dev/null)
[[ -n "$ref" ]] && icon="$GIT_TAG_ICON"
fi
fi
ref_list+=("$ref")
icon_list+=("$icon")
local len=${#session}
(( len > max_len )) && max_len=$len
done <<< "$sessions"
for ((j=0; j<${#session_list[@]}; j++)); do
local name="${session_list[$j]}"
local ref="${ref_list[$j]}"
local icon="${icon_list[$j]}"
if [[ -n "$ref" ]]; then
printf "%-${max_len}s ${GIT_BRANCH_COLOR}${icon} %s${GIT_BRANCH_RESET}\n" "$name" "$ref"
else
printf "%s\n" "$name"
fi
done
}
strip_git_branch_info() {
local ESC
ESC=$(printf '\033')
echo "$1" | sed "s/${ESC}\[[0-9;]*m//g" | sed "s/[[:space:]]* .*//" | sed 's/[[:space:]]*$//'
}