Mercurial > dotfiles
view .zshrc @ 526:852565046ed0 default tip
zsh: fidget with screen/tmux message
This should speed things up very slightly by avoiding some `grep` action
in the common case of no detached screens/tmuxes.
author | Augie Fackler <raf@durin42.com> |
---|---|
date | Mon, 14 Nov 2022 11:02:35 -0500 |
parents | b78aa03c0c00 |
children |
line wrap: on
line source
# Augie Fackler's zshrc file for file in $(ls $HOME/.shell.d/*.{,z}sh) ; do source $file done # Login greeting ------------------ if [ ! "$SHOWED_SCREEN_MESSAGE" = "true" ]; then # Use /bin/which explicitly because we have a shell function # that confuses the zsh built-in which. if sh -c 'which screen' 2> /dev/null > /dev/null; then SCREENS_OUTPUT="$(screen -list)" if [[ "${SCREENS_OUTPUT}" =~ Detached ]] ; then detached_screens=`echo "${SCREENS_OUTPUT}" | grep Detached | sed -e 's/ (Detached)//'` echo "+---------------------------------------+" echo "| Detached screens are available: |" echo "$detached_screens" echo "+---------------------------------------+" fi unset SCREENS_OUTPUT unset detached_screens fi export SHOWED_SCREEN_MESSAGE="true" fi if [ ! "$SHOWED_TMUX_MESSAGE" = "true" ]; then if which tmux 2> /dev/null > /dev/null; then detached_screens="$(tmux ls 2> /dev/null)" if [ ! -z "$detached_screens" ]; then detached_screens="$(echo "$detached_screens" | grep -v attached)" fi if [ ! -z "$detached_screens" ]; then echo "+-----------------------------------------------------------+" echo "| Detached tmux sessions are available: |" echo "$detached_screens" echo "+-----------------------------------------------------------+" fi unset detached_screens fi export SHOWED_TMUX_MESSAGE="true" fi # If available, source private extensions stored in a different repo if [[ -a ~/.private/zshrc ]]; then source ~/.private/zshrc fi if [[ -a ~/.zshrc-machine ]]; then source ~/.zshrc-machine fi