if grep -qF /home/iank/.iank/e/e /etc/auto.iank /etc/exports &>/dev/null; then
export EMACSDIR=/home/iank/.iank/e/e
fi
+ path-add $bashrc_dir
fi
fi
source /usr/share/wcd/wcd-include.sh
fi
-if [[ -s /a/bin/small-misc-bash/ll-function ]]; then
- source /a/bin/small-misc-bash/ll-function
-elif [[ -s $bashrc_dir/ll-function ]]; then
- # shellcheck source=/a/bin/small-misc-bash/ll-function
- source $bashrc_dir/ll-function
-fi
+
+mysrc() {
+ local path dir file
+ path=$1
+ dir=${path%/*}
+ file=${path##*/}
+ if [[ -s $path ]]; then
+ source $path
+ elif [[ -s $bashrc_dir/$file ]]; then
+ source $bashrc_dir/$file
+ fi
+}
+mysrc /a/bin/small-misc-bash/ll-function
+mysrc /a/bin/distro-functions/src/package-manager-abstractions
# * functions
echo no args
fi
for arg; do
- printf "%qEOL\n" "${!arg}"
- printf "%s" "${!arg}" |& hexdump -C
+ if [[ -v $arg ]]; then
+ printf "%qEOL\n" "${!arg}"
+ printf "%s" "${!arg}" |& hexdump -C
+ else
+ echo arg $arg is unset
+ fi
done
}
sk() {
- # 2029: "unescaped, this expands on the client side." yes, I know how ssh works
- # 2164: "Use 'cd ... || exit' or 'cd ... || return' in case cd fails." i have automatic error handling
- # 2086: unquoted $var
+
+
+ # note, if you do something like this
+ # x=( prefix* )
+ # then disable the warning with:
+ # shellcheck disable=SC2206 # globbing is intended
+
+ # 2029: "unescaped, this expands on the client side.": yes, I know how ssh works
+ # 2164: "Use 'cd ... || exit' or 'cd ... || return' in case cd fails.": i have automatic error handling
+ # 2086: unquoted $var: Quoting every var I set is way too much quotes.
+ # 2068: Double quote array expansions to avoid re-splitting elements: same as above.
+ # 2033: command arg is a function name: too many false positives.
+
+
+ # these ones I had disabled, but without a good written explanation, so enabling them temporarily
# 2046: unquoted $(cmd)
- # 2068: Double quote array expansions to avoid re-splitting elements.
# 2119: Functions with optional args get bad warnings when none are passed.
- # 2033: too many false positives for thing that will never work, passing shell function to find.
- # i had -x as an arg, but debian testing(stretch) doesn\'t support it
- shellcheck -x -e 2029,2164,2086,2046,2068,2119,2033 "$@" || return $?
- # had this before. not sure what it is 2119
+
+ shellcheck -W 999 -x -e 2029,2164,2086,2068,2033 "$@" || return $?
}
if [[ $EUID != 0 ]] && [[ $DID_SUDO ]]; then
ps_char="SUDO $ps_char"
fi
+ if [[ ! $HISTFILE ]]; then
+ ps_char="NOHIST $ps_char"
+ fi
PS1="${PS1%"${PS1#*[wW]}"} \[$ps_color\]$ps_char\[$term_nocolor\] "
# set titlebar. instead, using more advanced