diff --git a/clean_files.txt b/clean_files.txt
index 11413b44..a50d8339 100644
--- a/clean_files.txt
+++ b/clean_files.txt
@@ -88,6 +88,7 @@ plugins/available/basher.plugin.bash
plugins/available/blesh.plugin.bash
plugins/available/cmd-returned-notify.plugin.bash
plugins/available/direnv.plugin.bash
+plugins/available/dirs.plugin.bash
plugins/available/docker-machine.plugin.bash
plugins/available/git.plugin.bash
plugins/available/go.plugin.bash
diff --git a/plugins/available/dirs.plugin.bash b/plugins/available/dirs.plugin.bash
index 05cf147c..a09a5bbf 100644
--- a/plugins/available/dirs.plugin.bash
+++ b/plugins/available/dirs.plugin.bash
@@ -1,3 +1,4 @@
+# shellcheck shell=bash
# Directory stack navigation:
#
# Add to stack with: pu /path/to/directory
@@ -32,39 +33,39 @@ alias pu="pushd"
alias po="popd"
function dirs-help() {
- about 'directory navigation alias usage'
- group 'dirs'
+ about 'directory navigation alias usage'
+ group 'dirs'
- echo "Directory Navigation Alias Usage"
- echo
- echo "Use the power of directory stacking to move"
- echo "between several locations with ease."
- echo
- echo "d : Show directory stack."
- echo "po : Remove current location from stack."
- echo "pc : Adds current location to stack."
- echo "pu
: Adds given location to stack."
- echo "1 : Change to stack location 1."
- echo "2 : Change to stack location 2."
- echo "3 : Change to stack location 3."
- echo "4 : Change to stack location 4."
- echo "5 : Change to stack location 5."
- echo "6 : Change to stack location 6."
- echo "7 : Change to stack location 7."
- echo "8 : Change to stack location 8."
- echo "9 : Change to stack location 9."
+ echo "Directory Navigation Alias Usage"
+ echo
+ echo "Use the power of directory stacking to move"
+ echo "between several locations with ease."
+ echo
+ echo "d : Show directory stack."
+ echo "po : Remove current location from stack."
+ echo "pc : Adds current location to stack."
+ echo "pu : Adds given location to stack."
+ echo "1 : Change to stack location 1."
+ echo "2 : Change to stack location 2."
+ echo "3 : Change to stack location 3."
+ echo "4 : Change to stack location 4."
+ echo "5 : Change to stack location 5."
+ echo "6 : Change to stack location 6."
+ echo "7 : Change to stack location 7."
+ echo "8 : Change to stack location 8."
+ echo "9 : Change to stack location 9."
}
# Add bookmarking functionality
# Usage:
: "${BASH_IT_DIRS_BKS:=${XDG_STATE_HOME:-~/.local/state}/Bash_it/dirs}"
-if [[ -f "${BASH_IT_DIRS_BKS:=${XDG_STATE_HOME:-~/.local/state}/Bash_it/dirs}" ]]
-then
+if [[ -f "${BASH_IT_DIRS_BKS:=${XDG_STATE_HOME:-~/.local/state}/Bash_it/dirs}" ]]; then
+ # shellcheck disable=SC1090
source "$BASH_IT_DIRS_BKS"
-elif [[ -f ~/.dirs ]]
-then
+elif [[ -f ~/.dirs ]]; then
mv -vn ~/.dirs "$BASH_IT_DIRS_BKS"
+ # shellcheck disable=SC1090
source "$BASH_IT_DIRS_BKS"
else
touch "$BASH_IT_DIRS_BKS"
@@ -73,44 +74,48 @@ fi
alias L='cat "$BASH_IT_DIRS_BKS"'
# Goes to destination dir, otherwise stay in the dir
-function G()
-{
- about 'goes to destination dir'
- param '1: directory'
- example '$ G ..'
- group 'dirs'
+function G() {
+ about 'goes to destination dir'
+ param '1: directory'
+ example '$ G ..'
+ group 'dirs'
- cd "${1:-${PWD}}" ;
+ cd "${1:-${PWD}}" || return
}
-function S ()
-{
- about 'save a bookmark'
- param '1: bookmark name'
- example '$ S mybkmrk'
- group 'dirs'
+function S() {
+ about 'save a bookmark'
+ param '1: bookmark name'
+ example '$ S mybkmrk'
+ group 'dirs'
- [[ $# -eq 1 ]] || { echo "${FUNCNAME[0]} function requires 1 argument"; return 1; }
+ [[ $# -eq 1 ]] || {
+ echo "${FUNCNAME[0]} function requires 1 argument"
+ return 1
+ }
- sed "/$@/d" "$BASH_IT_DIRS_BKS" > ~/.dirs1;
- \mv ~/.dirs1 "$BASH_IT_DIRS_BKS";
- echo "$@"=\""${PWD}"\" >> "$BASH_IT_DIRS_BKS";
- source "$BASH_IT_DIRS_BKS" ;
+ sed "/$1/d" "$BASH_IT_DIRS_BKS" > ~/.dirs1
+ command mv ~/.dirs1 "$BASH_IT_DIRS_BKS"
+ echo "$1"=\""${PWD}"\" >> "$BASH_IT_DIRS_BKS"
+ # shellcheck disable=SC1090
+ source "$BASH_IT_DIRS_BKS"
}
-function R()
-{
- about 'remove a bookmark'
- param '1: bookmark name'
- example '$ R mybkmrk'
- group 'dirs'
+function R() {
+ about 'remove a bookmark'
+ param '1: bookmark name'
+ example '$ R mybkmrk'
+ group 'dirs'
- [[ $# -eq 1 ]] || { echo "${FUNCNAME[0]} function requires 1 argument"; return 1; }
+ [[ $# -eq 1 ]] || {
+ echo "${FUNCNAME[0]} function requires 1 argument"
+ return 1
+ }
- sed "/$@/d" "$BASH_IT_DIRS_BKS" > ~/.dirs1;
- \mv ~/.dirs1 "$BASH_IT_DIRS_BKS";
+ sed "/$1/d" "$BASH_IT_DIRS_BKS" > ~/.dirs1
+ \mv ~/.dirs1 "$BASH_IT_DIRS_BKS"
}
-alias U='source "$BASH_IT_DIRS_BKS"' # Update bookmark stack
+alias U='source "$BASH_IT_DIRS_BKS"' # Update bookmark stack
# Set the Bash option so that no '$' is required when using the above facility
shopt -s cdable_vars