# Copyright (c) 2015 Alexander Barton <alex@barton.de>
#
+# Include "ax-common.sh", if available:
+for dir ("$HOME/lib" "$HOME/.ax" /usr/local /opt/ax /usr); do
+ [[ -z "$ax_common_sourced" ]] || break
+ ax_common="${dir}/lib/ax/ax-common.sh"
+ [[ -r "$ax_common" ]] && source "$ax_common"
+done
+if [[ -z "$ax_common_sourced" ]]; then
+ function ax_msg {
+ case "$1" in
+ "1"|"2") echo -n "! "; ;;
+ *) echo -n "* "; ;;
+ esac
+ shift
+ echo "$@"
+ }
+fi
+unset dir ax_common ax_common_sourced
+
function Usage {
echo "$NAME <command> [...]"
echo
exit 2
}
-function Verbose {
- echo "* $@"
-}
-
-function Warning {
- echo "! $@"
-}
-
function EnablePlugin {
local dir="$AXZSH/active_plugins"
if [[ -h "$dir/$1" ]]; then
- Warning "Plugin \"$1\" already active!"
+ ax_msg 1 "Plugin \"$1\" already active!"
return 1
fi
return $?
done
- Warning "Plugin \"$1\" not found!"
+ ax_msg 2 "Plugin \"$1\" not found!"
return 1
}
local dir="$AXZSH/active_plugins"
if [[ ! -h "$dir/$1" ]]; then
- Warning "Plugin \"$1\" not active?"
+ ax_msg 1 "Plugin \"$1\" not active?"
return 1
fi
local dir="$AXZSH/active_plugins"
if [[ -e "$dir" ]]; then
- Verbose "Removing all symbolic links in $dir ..."
+ ax_msg - "Removing all symbolic links in $dir ..."
find "$dir" -type l -print -delete
fi
- Verbose "Activating (linking) default plugins ..."
+ ax_msg - "Activating (linking) default plugins ..."
mkdir -p "$dir"
(
cd "$dir" || exit 9
[[ $# -gt 0 ]] || Usage
if [[ -z "$AXZSH" || ! -d "$AXZSH" ]]; then
- echo "$NAME: Oops, \"AXZSH\" is not set or invalid!"
+ ax_msg 2 "Oops, \"AXZSH\" is not set or invalid!"
exit 3
fi
# Copyright (c) 2015 Alexander Barton <alex@barton.de>
#
+# Include "ax-common.sh":
+for dir in "$HOME/lib" "$HOME/.ax" /usr/local /opt/ax /usr; do
+ [ -z "$ax_common_sourced" ] || break
+ ax_common="${dir}/lib/ax/ax-common.sh"
+ [ -r "$ax_common" ] && . "$ax_common"
+done
+if [ -z "$ax_common_sourced" ]; then
+ ax_msg() {
+ shift
+ echo "1" "$@"
+ }
+fi
+unset dir ax_common ax_common_sourced
+
safe_rm() {
if [ -f "$1" -a ! -L "$1" ]; then
rm -f "$1.bak" || exit 1
[ -n "$AXZSH" ] || AXZSH="$HOME/.axzsh"
export AXZSH
-echo "* Installing AX-ZSH into \"$AXZSH\" ..."
+ax_msg - "Installing AX-ZSH into \"$AXZSH\" ..."
safe_rm "$AXZSH" || exit 1
ln -sv "$PWD" "$AXZSH" || exit 1
done
if [ ! -d "$AXZSH/active_plugins" ]; then
- echo "* Initializing plugin directory \"$AXZSH/active_plugins\" ..."
+ ax_msg - "Initializing plugin directory \"$AXZSH/active_plugins\" ..."
zsh "$AXZSH/bin/axzshctl" reset-plugins
else
- echo "* Plugin directory \"$AXZSH/active_plugins\" already exists. Ok."
+ ax_msg - "Plugin directory \"$AXZSH/active_plugins\" already exists. Ok."
fi