###Man page color export LESS_TERMCAP_mb=$'\e[1;32m' export LESS_TERMCAP_md=$'\e[1;32m' export LESS_TERMCAP_me=$'\e[0m' export LESS_TERMCAP_se=$'\e[0m' export LESS_TERMCAP_so=$'\e[01;33m' export LESS_TERMCAP_ue=$'\e[0m' export LESS_TERMCAP_us=$'\e[1;4;31m' #eval "$(zellij setup --generate-auto-start zsh)" zellij_autostart() { [[ -n "$ZELLIJ" ]] && return [[ -o interactive ]] || return local sessions sessions=$(zellij list-sessions --no-formatting 2>/dev/null) if [[ -z "$sessions" ]]; then zellij return fi local count count=$(printf '%s\n' "$sessions" | wc -l) if (( count == 1 )); then zellij attach "$(printf '%s\n' "$sessions" | cut -d' ' -f1)" return fi if command -v fzf >/dev/null 2>&1; then local choice choice=$(printf '%s\n' "$sessions" | fzf \ --tac --height=40% --border \ --prompt="Session zellij > " \ --header 'Entrée: attacher | Ctrl-R: supprimer la session surlignée' \ --bind 'ctrl-r:execute-silent(name=$(echo {} | cut -d" " -f1); zellij kill-session "$name" 2>/dev/null; zellij delete-session "$name" --force 2>/dev/null)+reload(zellij list-sessions --no-formatting 2>/dev/null)' \ | cut -d' ' -f1) if [[ -n "$choice" ]]; then zellij attach "$choice" else zellij fi else # Fallback sans fzf : menu numéroté avec option de suppression "rN" while true; do sessions=$(zellij list-sessions --no-formatting 2>/dev/null) [[ -z "$sessions" ]] && { zellij; return; } print -P "%BSessions zellij disponibles :%b" local -a names local i=1 while IFS= read -r line; do names+=("${line%% *}") printf " %d) %s\n" "$i" "$line" ((i++)) done <<< "$sessions" printf " n) Nouvelle session\n" printf " rN) Supprimer la session N (ex: r2)\n" read "choix?Ton choix : " if [[ "$choix" == "n" || -z "$choix" ]]; then zellij return elif [[ "$choix" =~ ^r[0-9]+$ ]]; then local idx="${choix#r}" if (( idx >= 1 && idx <= ${#names[@]} )); then local target="${names[$idx]}" zellij kill-session "$target" 2>/dev/null zellij delete-session "$target" --force 2>/dev/null echo "Session '$target' supprimée." fi # on reboucle pour ré-afficher la liste à jour elif [[ "$choix" =~ ^[0-9]+$ ]] && (( choix >= 1 && choix <= ${#names[@]} )); then zellij attach "${names[$choix]}" return else zellij return fi done fi } zellij_autostart ### Fonction a utiliser comme ceci udig an.ginder udig() { if [ "$1" != "" ] then dig +short TXT $1.u.perf1.net @192.168.232.10 else echo "Missing user - Please specify udig pr.nom" fi } ### Fonction pour le git push mr git-push-mr() { local title="$1" git push \ -o merge_request.create \ -o merge_request.target=main \ -o merge_request.remove_source_branch \ -o merge_request.title="$title" \ -o merge_request.description="$title" \ -o merge_request.assign="sysops" } #Export Perso export SSH_AUTH_SOCK=/home/an.ginder/.keeper/anael.ginder@nameshield.net.ssh_agent #source ~/.zsh/zsh-autocomplete/zsh-autocomplete.plugin.zsh # Configuration personnelle source "$HOME/.zsh/spaceship.zsh" # Spaceship source "$HOME/.zsh/spaceship-prompt/spaceship.zsh-theme" source /opt/keeper-cli-venv/bin/activate #export PYTHONPATH=/opt/wapt eval "$(zoxide init zsh)"