my_bashrc/bashrc.d/ZZZ_always_screen

28 lines
1.2 KiB
Bash

#!/bin/bash
# Create a Screen session everytime, unless you don't want
if [ -n "$(which screen)" ]; then
if [ -n "${STY}" ]; then
echo "This is screen session '${STY//[0-9]*\./}'"
if [ -n "$(which xtitle)" ]; then
"$(which xtitle)" "${session_name}"
else
echo "xtitle is not installed so I can't update the title of the X window with the session name. Install it and the experience will be better)"
fi
else
echo "This is not a screen session, let's create one. Name of the session?"
read -r session_name
if [ -n "${session_name}" ] && [ "${session_name}" != "" ]; then
if [ -n "$(which xtitle)" ]; then
"$(which xtitle)" "${session_name}"
else
echo "xtitle is not installed so I can't update the title of the X window with the session name. Install it and the experience will be better)"
fi
"$(which screen)" -t "${session_name}" -S "${session_name}" && exit
else
echo "Ok, I'll leave you alone without a session..."
fi
fi
else
echo "Screen is not installed. Install it so always_screen in your bashrc will work."
fi