plugin/gitstatus: `shellcheck`

pull/2062/head
John D Pell 2022-01-25 22:29:55 -08:00 committed by John D Pell
parent 37c79b86b6
commit 3573275c5d
2 changed files with 30 additions and 19 deletions

View File

@ -104,6 +104,7 @@ plugins/available/fzf.plugin.bash
plugins/available/gif.plugin.bash
plugins/available/git-subrepo.plugin.bash
plugins/available/git.plugin.bash
plugins/available/gitstatus.plugin.bash
plugins/available/go.plugin.bash
plugins/available/goenv.plugin.bash
plugins/available/history-eternal.plugin.bash

View File

@ -1,6 +1,11 @@
cite about-plugin
# shellcheck shell=bash
about-plugin 'speeds up your life by using gitstatus for git status calculations. install from https://github.com/romkatv/gitstatus'
: "${SCM_GIT_GITSTATUS_DIR:="$HOME/gitstatus"}"
if [[ ! -d "${SCM_GIT_GITSTATUS_DIR}" ]] && _bash_it_homebrew_check; then
SCM_GIT_GITSTATUS_DIR="${BASH_IT_HOMEBREW_PREFIX?}/opt/gitstatus"
fi
function gitstatus_on_disable() {
about 'Destructor of gitstatus plugin'
group 'gitstatus'
@ -9,18 +14,23 @@ function gitstatus_on_disable() {
_command_exists gitstatus_stop && gitstatus_stop
}
function _bash-it-component-plugin-callback-on-init-gitstatus() {
# No scm-check
[[ $SCM_CHECK == "true" ]] || return
[[ ${SCM_CHECK?} == "true" ]] || return
# non-interactive shell
[[ $- == *i* ]] || return
: "${SCM_GIT_GITSTATUS_DIR:="$HOME/gitstatus"}"
if [[ -d ${SCM_GIT_GITSTATUS_DIR} ]]; then
if [[ -d "${SCM_GIT_GITSTATUS_DIR?}" ]]; then
# shellcheck source-path=$HOME/gitstatus disable=SC1091
source "${SCM_GIT_GITSTATUS_DIR}/gitstatus.plugin.sh"
# Start the actual gitstatus binary
gitstatus_stop && gitstatus_start -s -1 -u -1 -c -1 -d -1
export SCM_GIT_USE_GITSTATUS=true
else
_log_warning "Could not find gitstatus directory in ${SCM_GIT_GITSTATUS_DIR}. Please specify directory location using SCM_GIT_GITSTATUS_DIR."
return 1
fi
}
_bash-it-component-plugin-callback-on-init-gitstatus