mirror of
https://github.com/ohmyzsh/ohmyzsh.git
synced 2026-02-27 03:05:39 +01:00
Change parameter checks and other style fixes
This commits contains the following modifications: - Change parameter checks from number of parameters (`$#`) to content length of each parameter ( `-z "$1"` ). A command called with an empty string in the first parameter *still* receives one parameter (`$# = 1`), while checking the string length will work either way. - Change commands that may be aliased to use the builtin / non-modified command, using the 'command' prefix (e.g. `git` -> `command git`). - Changed the initialization sequence of the plugin, from using a function to being inline in the script. It also uses the $0 parameter which is set when the script is sourced, and it contains the script filepath. Example: with command `source test.sh` -> in test.sh, `$0` will be 'test.sh'. - Various style fixes, including missing space and some comments.
This commit is contained in:
parent
393eed5e67
commit
f74c8b2941
5 changed files with 57 additions and 62 deletions
|
|
@ -1,22 +1,21 @@
|
|||
_clone_git() {
|
||||
local url=$1
|
||||
local folder=$2
|
||||
local url=$1; local folder=$2
|
||||
if [[ ! -d "$folder" ]]; then
|
||||
git clone $url $folder
|
||||
command git clone $url $folder
|
||||
fi
|
||||
}
|
||||
|
||||
_download_plugin() {
|
||||
[[ "$#" != 2 ]] && return 1
|
||||
local url=$1; local name=$2;
|
||||
[[ -z "$1" || -z "$2" ]] && return 1
|
||||
local url=$1; local name=$2
|
||||
_clone_git $url $ZSH_CUSTOM/plugins/$name
|
||||
_map_put plugins $name enabled
|
||||
}
|
||||
|
||||
_download_theme() {
|
||||
[[ "$#" != 2 ]] && return 1
|
||||
local url=$1; local theme=$2;
|
||||
[[ -z "$1" || -z "$2" ]] && return 1
|
||||
local url=$1; local theme=$2
|
||||
_clone_git $url $ZSH_CUSTOM/themes/$theme
|
||||
ln -s $ZSH_CUSTOM/themes/$theme/$theme.zsh-theme $ZSH_CUSTOM/$theme.zsh-theme
|
||||
command ln -s $ZSH_CUSTOM/themes/$theme/$theme.zsh-theme $ZSH_CUSTOM/$theme.zsh-theme
|
||||
_map_put themes theme $theme
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,40 +1,40 @@
|
|||
mapdir=$ZSH/cache/omz-bootstrap
|
||||
mapdir="$ZSH/cache/omz-bootstrap"
|
||||
|
||||
_map_init() {
|
||||
mkdir -p $mapdir
|
||||
command mkdir -p "$mapdir"
|
||||
}
|
||||
|
||||
_map_put() {
|
||||
[[ "$#" != 3 ]] && return 1
|
||||
mapname=$1; key=$2; value=$3
|
||||
[[ -z "$1" || -z "$2" || -z "$3" ]] && return 1
|
||||
local mapname=$1; local key=$2; local value=$3
|
||||
[[ -d "${mapdir}/${mapname}" ]] || mkdir "${mapdir}/${mapname}"
|
||||
echo $value >"${mapdir}/${mapname}/${key}"
|
||||
echo $value > "${mapdir}/${mapname}/${key}"
|
||||
}
|
||||
|
||||
_map_get() {
|
||||
[[ "$#" != 2 ]] && return 1
|
||||
mapname=$1; key=$2
|
||||
[[ -z "$1" || -z "$2" ]] && return 1
|
||||
local mapname=$1; local key=$2
|
||||
cat "${mapdir}/${mapname}/${key}"
|
||||
}
|
||||
|
||||
_map_keys() {
|
||||
[[ "$#" != 1 ]] && return 1
|
||||
mapname=$1
|
||||
[[ -z "$1" ]] && return 1
|
||||
local mapname=$1
|
||||
for key ($mapdir/$mapname/*); do
|
||||
basename $key
|
||||
done
|
||||
}
|
||||
|
||||
_map_exists() {
|
||||
[[ "$#" != 2 ]] && return 1
|
||||
mapname=$1; key=$2
|
||||
[[ -z "$1" || -z "$2" ]] && return 1
|
||||
local mapname=$1; local key=$2
|
||||
[[ -f "${mapdir}/${mapname}/${key}" ]] && return 0
|
||||
}
|
||||
|
||||
_map_remove() {
|
||||
[[ "$#" != 2 ]] && return 1
|
||||
mapname=$1; key=$2
|
||||
rm "${mapdir}/${mapname}/${key}"
|
||||
[[ -z "$1" || -z "$2" ]] && return 1
|
||||
local mapname=$1; local key=$2
|
||||
command rm "${mapdir}/${mapname}/${key}"
|
||||
}
|
||||
_map_init
|
||||
|
||||
_map_init
|
||||
|
|
|
|||
|
|
@ -21,7 +21,7 @@ _list_plugins() {
|
|||
printf "%-30s \033[0;32m%-10s\033[0m\n" $plugin_name $enabled
|
||||
else
|
||||
printf "%-30s \033[0;30m%-10s\033[0m\n" $plugin_name $enabled
|
||||
fi
|
||||
fi
|
||||
done
|
||||
}
|
||||
|
||||
|
|
@ -56,7 +56,7 @@ _list_enabled_plugins() {
|
|||
}
|
||||
|
||||
_enable_plugin() {
|
||||
[[ "$#" != 1 ]] && return 1
|
||||
[[ -z "$1" ]] && return 1
|
||||
local plugin=$1
|
||||
_map_exists plugins $plugin
|
||||
if [[ $? -ne 0 ]]; then
|
||||
|
|
@ -65,13 +65,13 @@ _enable_plugin() {
|
|||
}
|
||||
|
||||
_enable_theme() {
|
||||
[[ "$#" != 1 ]] && return 1
|
||||
[[ -z "$1" ]] && return 1
|
||||
local theme=$1
|
||||
_map_put themes theme $theme
|
||||
}
|
||||
|
||||
_disable_plugin() {
|
||||
[[ "$#" != 1 ]] && return 1
|
||||
[[ -z "$1" ]] && return 1
|
||||
local plugin=$1
|
||||
local enabled=$(_map_get plugins $plugin)
|
||||
[[ $enabled = "enabled" ]] && _map_remove plugins $plugin
|
||||
|
|
@ -106,27 +106,26 @@ _populate_enabled_theme() {
|
|||
}
|
||||
|
||||
_update_plugin() {
|
||||
[[ "$#" != 1 ]] && return 1
|
||||
[[ -z "$1" ]] && return 1
|
||||
local plugin=$1
|
||||
if [[ -d $ZSH_CUSTOM/plugins/$plugin ]]; then
|
||||
pushd $ZSH_CUSTOM/plugins/$plugin > /dev/null
|
||||
git pull
|
||||
popd > /dev/null
|
||||
command pushd $ZSH_CUSTOM/plugins/$plugin > /dev/null
|
||||
command git pull
|
||||
command popd > /dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
_update_theme() {
|
||||
[[ "$#" != 1 ]] && return 1
|
||||
[[ -z "$1" ]] && return 1
|
||||
local theme=$1
|
||||
if [[ -d $ZSH_CUSTOM/themes/$theme ]]; then
|
||||
pushd $ZSH_CUSTOM/themes/$theme > /dev/null
|
||||
git pull
|
||||
popd > /dev/null
|
||||
command pushd $ZSH_CUSTOM/themes/$theme > /dev/null
|
||||
command git pull
|
||||
command popd > /dev/null
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
|
||||
# initialize repository
|
||||
_pre_enable_plugins
|
||||
_populate_enabled_plugins
|
||||
_init_theme
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue