Rich Enhanced Shell History - Contextual shell history for zsh and bash
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
resh/scripts/shellrc.sh

61 lines
1.6 KiB

#!/hint/sh
PATH=$PATH:~/.resh/bin
# if [ -n "$ZSH_VERSION" ]; then
# zmodload zsh/datetime
# fi
# shellcheck source=hooks.sh
. ~/.resh/hooks.sh
# shellcheck source=util.sh
. ~/.resh/util.sh
# shellcheck source=reshctl.sh
. ~/.resh/reshctl.sh
if [ -n "${ZSH_VERSION-}" ]; then
# shellcheck disable=SC1009
__RESH_SHELL="zsh"
__RESH_HOST="$HOST"
elif [ -n "${BASH_VERSION-}" ]; then
__RESH_SHELL="bash"
__RESH_HOST="$HOSTNAME"
else
echo "RESH PANIC: unrecognized shell - please report this to https://github.com/curusarn/resh/issues"
fi
# TODO: read this from resh-specific file
# create that file during install
__RESH_DEVICE="$__RESH_HOST"
__RESH_HOME="$HOME"
# shellcheck disable=2155
export __RESH_VERSION=$(resh-collect -version)
# shellcheck disable=2155
export __RESH_REVISION=$(resh-collect -revision)
__resh_run_daemon
[ "$(resh-config --key BindControlR)" = true ] && __resh_bind_control_R
# block for anything we only want to do once per session
# NOTE: nested shells are still the same session
# i.e. $__RESH_SESSION_ID will be set in nested shells
if [ -z "${__RESH_SESSION_ID+x}" ]; then
export __RESH_SESSION_ID; __RESH_SESSION_ID=$(__resh_get_uuid)
export __RESH_SESSION_PID="$$"
__resh_reset_variables
__resh_session_init
fi
# block for anything we only want to do once per shell
# NOTE: nested shells are new shells
# i.e. $__RESH_INIT_DONE will NOT be set in nested shells
if [ -z "${__RESH_INIT_DONE+x}" ]; then
preexec_functions+=(__resh_preexec)
precmd_functions+=(__resh_precmd)
__resh_reset_variables
__RESH_INIT_DONE=1
fi