update check functions

This commit is contained in:
2026-01-23 10:57:23 +08:00
parent 771604ecba
commit 85a41413a3
4 changed files with 52 additions and 52 deletions

View File

@@ -2,27 +2,27 @@
function check_zsh_polyjuice() {
# check for zsh-autosuggestions
if [[ ! -f $ZSH_PLUGINS_PATH/zsh-autosuggestions/zsh-autosuggestions.zsh ]]; then
if [[ ! -f $ZSH_POLYJUICE_PLUGINS_PATH/zsh-autosuggestions/zsh-autosuggestions.zsh ]]; then
echo "zsh-autosuggestions is not installed."
fi
# check for zsh-syntax-highlighting
if [[ ! -f $ZSH_PLUGINS_PATH/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ]]; then
if [[ ! -f $ZSH_POLYJUICE_PLUGINS_PATH/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh ]]; then
echo "zsh-syntax-highlighting is not installed."
fi
# check for zsh-autocomplete
if [[ ! -f $ZSH_PLUGINS_PATH/zsh-autocomplete/zsh-autocomplete.plugin.zsh ]]; then
if [[ ! -f $ZSH_POLYJUICE_PLUGINS_PATH/zsh-autocomplete/zsh-autocomplete.plugin.zsh ]]; then
echo "zsh-autocomplete is not installed."
fi
# check for fzf-tab
if [[ ! -f $ZSH_PLUGINS_PATH/fzf-tab/fzf-tab.zsh ]]; then
if [[ ! -f $ZSH_POLYJUICE_PLUGINS_PATH/fzf-tab/fzf-tab.zsh ]]; then
echo "fzf-tab is not installed."
fi
# check for oh-my-zsh
if [[ ! -d $ZSH_PLUGINS_PATH/ohmyzsh ]]; then
if [[ ! -d $ZSH_POLYJUICE_PLUGINS_PATH/ohmyzsh ]]; then
echo "oh-my-zsh is not installed."
fi
@@ -46,7 +46,7 @@ function check_zsh_polyjuice() {
echo "python3 is not installed."
fi
echo "Using `install_plugins` function to install missing plugins."
echo "Using \`install_plugins\` function to install missing plugins."
}
function check_tools() {

View File

@@ -1,24 +1,24 @@
function startship_polyjuice() {
if [ ! -n "${STARSHIP_CONFIG_FILE}" ]; then
if [ ! -n "${ZSH_POLYJUICE_STARSHIP_CONFIG_FILE}" ]; then
echo "STARSHIP_CONFIG_FILE is not set. Please source `\$HOME/.zshrc` first."
return
fi
starship_config_file="$HOME/.config/starship.toml"
if [ -f $starship_config_file ]; then
if $(file "$starship_config_file" | grep -q "symbolic link") ; then
if [[ $(readlink "$starship_config_file") != $(realpath "$STARSHIP_CONFIG_FILE") ]]; then
ln -sf "$STARSHIP_CONFIG_FILE" "$starship_config_file"
if [[ $(readlink "$starship_config_file") != $(realpath "$ZSH_POLYJUICE_STARSHIP_CONFIG_FILE") ]]; then
ln -sf "$ZSH_POLYJUICE_STARSHIP_CONFIG_FILE" "$starship_config_file"
fi
else
if [ ! -f "$starship_config_file.bkp" ]; then
mv "$starship_config_file" "$starship_config_file.bkp"
ln -s "$STARSHIP_CONFIG_FILE" "$starship_config_file"
ln -s "$ZSH_POLYJUICE_STARSHIP_CONFIG_FILE" "$starship_config_file"
else
echo "Backup file already exists. Please remove $starship_config_file.bkp and try again."
return
fi
fi
else
ln -sf "$STARSHIP_CONFIG_FILE" "$starship_config_file"
ln -sf "$ZSH_POLYJUICE_STARSHIP_CONFIG_FILE" "$starship_config_file"
fi
}

View File

@@ -4,20 +4,20 @@ function install_plugins() {
return
fi
if [ ! -n "${ZSH_PLUGINS_PATH}" ]; then
echo "ZSH_PLUGINS_PATH is not set. Please set it and try again."
if [ ! -n "${ZSH_POLYJUICE_PLUGINS_PATH}" ]; then
echo "ZSH_POLYJUICE_PLUGINS_PATH is not set. Please set it and try again."
return
fi
# git clone zsh-autosuggestions
if [ ! -d "$ZSH_PLUGINS_PATH"/zsh-autosuggestions ]; then
if [ ! -d "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-autosuggestions ]; then
echo "Zsh Autosuggestions is not downloaded. Downloading..."
# git clone https://github.com/zsh-users/zsh-autosuggestions.git "$ZSH_PLUGINS_PATH"/zsh-autosuggestions
git clone https://gitee.com/mirrors/zsh-autosuggestions.git "$ZSH_PLUGINS_PATH"/zsh-autosuggestions
# git clone https://github.com/zsh-users/zsh-autosuggestions.git "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-autosuggestions
git clone https://gitee.com/mirrors/zsh-autosuggestions.git "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-autosuggestions
else
cd "$ZSH_PLUGINS_PATH"/zsh-autosuggestions
cd "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-autosuggestions
if [ ! -d .git ]; then
echo "Zsh Autosuggestions is not a git repository. Please remove $ZSH_PLUGINS_PATH/zsh-autosuggestions and try again."
echo "Zsh Autosuggestions is not a git repository. Please remove $ZSH_POLYJUICE_PLUGINS_PATH/zsh-autosuggestions and try again."
else
echo "Zsh Autosuggestions is already exist. Updating..."
git pull
@@ -26,14 +26,14 @@ function install_plugins() {
fi
# git clone zsh-syntax-highlighting
if [ ! -d "$ZSH_PLUGINS_PATH"/zsh-syntax-highlighting ]; then
if [ ! -d "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-syntax-highlighting ]; then
echo "Zsh Syntax Highlighting is not downloaded. Downloading..."
# git clone https://github.com/zsh-users/zsh-syntax-highlighting.git "$ZSH_PLUGINS_PATH"/zsh-syntax-highlighting
git clone https://gitee.com/mirrors/zsh-syntax-highlighting.git "$ZSH_PLUGINS_PATH"/zsh-syntax-highlighting
# git clone https://github.com/zsh-users/zsh-syntax-highlighting.git "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-syntax-highlighting
git clone https://gitee.com/mirrors/zsh-syntax-highlighting.git "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-syntax-highlighting
else
cd "$ZSH_PLUGINS_PATH"/zsh-syntax-highlighting
cd "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-syntax-highlighting
if [ ! -d .git ]; then
echo "Zsh Syntax Highlighting is not a git repository. Please remove $ZSH_PLUGINS_PATH/zsh-syntax-highlighting and try again."
echo "Zsh Syntax Highlighting is not a git repository. Please remove $ZSH_POLYJUICE_PLUGINS_PATH/zsh-syntax-highlighting and try again."
else
echo "Zsh Syntax Highlighting is already exist. Updating..."
git pull
@@ -42,14 +42,14 @@ function install_plugins() {
fi
# git clone zsh-autocomplete
if [ ! -d "$ZSH_PLUGINS_PATH"/zsh-autocomplete ]; then
if [ ! -d "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-autocomplete ]; then
echo "Zsh Autocomplete is not downloaded. Downloading..."
# git clone https://github.com/marlonrichert/zsh-autocomplete.git "$ZSH_PLUGINS_PATH"/zsh-autocomplete
git clone https://gitee.com/mirrors/zsh-autocomplete.git "$ZSH_PLUGINS_PATH"/zsh-autocomplete
# git clone https://github.com/marlonrichert/zsh-autocomplete.git "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-autocomplete
git clone https://gitee.com/mirrors/zsh-autocomplete.git "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-autocomplete
else
cd "$ZSH_PLUGINS_PATH"/zsh-autocomplete
cd "$ZSH_POLYJUICE_PLUGINS_PATH"/zsh-autocomplete
if [ ! -d .git ]; then
echo "Zsh Autocomplete is not a git repository. Please remove $ZSH_PLUGINS_PATH/zsh-autocomplete and try again."
echo "Zsh Autocomplete is not a git repository. Please remove $ZSH_POLYJUICE_PLUGINS_PATH/zsh-autocomplete and try again."
else
echo "Zsh Autocomplete is already exist. Updating..."
git pull
@@ -58,13 +58,13 @@ function install_plugins() {
fi
# git clone fzf-tab
if [ ! -d "$ZSH_PLUGINS_PATH"/fzf-tab ]; then
if [ ! -d "$ZSH_POLYJUICE_PLUGINS_PATH"/fzf-tab ]; then
echo "fzf-tab is not downloaded. Downloading..."
git clone https://github.com/Aloxaf/fzf-tab.git "$ZSH_PLUGINS_PATH"/fzf-tab
git clone https://github.com/Aloxaf/fzf-tab.git "$ZSH_POLYJUICE_PLUGINS_PATH"/fzf-tab
else
cd "$ZSH_PLUGINS_PATH"/fzf-tab
cd "$ZSH_POLYJUICE_PLUGINS_PATH"/fzf-tab
if [ ! -d .git ]; then
echo "fzf-tab is not a git repository. Please remove $ZSH_PLUGINS_PATH/fzf-tab and try again."
echo "fzf-tab is not a git repository. Please remove $ZSH_POLYJUICE_PLUGINS_PATH/fzf-tab and try again."
else
echo "fzf-tab is already exist. Updating..."
git pull
@@ -73,14 +73,14 @@ function install_plugins() {
fi
# git clone oh-my-zsh
if [ ! -d "$ZSH_PLUGINS_PATH"/ohmyzsh ]; then
if [ ! -d "$ZSH_POLYJUICE_PLUGINS_PATH"/ohmyzsh ]; then
echo "Oh My Zsh is not downloaded. Downloading..."
# git clone https://github.com/ohmyzsh/ohmyzsh.git "$PATH_OHMYZSH"
git clone https://gitee.com/mirrors/ohmyzsh.git "$ZSH_PLUGINS_PATH"/ohmyzsh
git clone https://gitee.com/mirrors/ohmyzsh.git "$ZSH_POLYJUICE_PLUGINS_PATH"/ohmyzsh
else
cd "$ZSH_PLUGINS_PATH"/ohmyzsh
cd "$ZSH_POLYJUICE_PLUGINS_PATH"/ohmyzsh
if [ ! -d .git ]; then
echo "Oh My Zsh is not a git repository. Please remove $ZSH_PLUGINS_PATH/ohmyzsh and try again."
echo "Oh My Zsh is not a git repository. Please remove $ZSH_POLYJUICE_PLUGINS_PATH/ohmyzsh and try again."
else
echo "Oh My Zsh is already exist. Updating..."
git pull

View File

@@ -16,41 +16,41 @@ function get_current_dir_name {
# Set basic path to zsh-polyjuice installation
export ZSH_POLYJUICE_PATH=$(get_current_dir_name)
export ZSH_PLUGINS_PATH="$ZSH_POLYJUICE_PATH/plugins"
export ZSH_ALIAS_PATH="$ZSH_POLYJUICE_PATH/alias"
export ZSH_SETTINGS_PATH="$ZSH_POLYJUICE_PATH/settings"
export ZSH_FUNCTIONS_PATH="$ZSH_POLYJUICE_PATH/functions"
export STARSHIP_CONFIG_FILE="$ZSH_POLYJUICE_PATH/../starship/starship.toml"
export ZSH_POLYJUICE_PLUGINS_PATH="$ZSH_POLYJUICE_PATH/plugins"
export ZSH_POLYJUICE_ALIAS_PATH="$ZSH_POLYJUICE_PATH/alias"
export ZSH_POLYJUICE_SETTINGS_PATH="$ZSH_POLYJUICE_PATH/settings"
export ZSH_POLYJUICE_FUNCTIONS_PATH="$ZSH_POLYJUICE_PATH/functions"
export ZSH_POLYJUICE_STARSHIP_CONFIG_FILE="$ZSH_POLYJUICE_PATH/../starship/starship.toml"
# Load basic settings `zsh/settings`
for _file in "$ZSH_SETTINGS_PATH"/*.sh; do
for _file in "$ZSH_POLYJUICE_SETTINGS_PATH"/*.sh; do
source "$_file"
done
unset _file
# Load Aliases `zsh/alias`
for _file in "$ZSH_ALIAS_PATH"/*.sh; do
for _file in "$ZSH_POLYJUICE_ALIAS_PATH"/*.sh; do
source "$_file"
done
unset _file
# Load self-defined functions
for _file in "$ZSH_FUNCTIONS_PATH"/*.sh; do
for _file in "$ZSH_POLYJUICE_FUNCTIONS_PATH"/*.sh; do
source "$_file"
done
unset _file
# Load Plugins
source $ZSH_PLUGINS_PATH/zsh-autosuggestions/zsh-autosuggestions.zsh
source $ZSH_POLYJUICE_PLUGINS_PATH/zsh-autosuggestions/zsh-autosuggestions.zsh
ZSH_AUTOSUGGEST_STRATEGY=(history completion)
ZSH_AUTOSUGGEST_BUFFER_MAX_SIZE=20
bindkey '^[l' autosuggest-accept # alt-L to accept autosuggestion
source $ZSH_PLUGINS_PATH/zsh-autocomplete/zsh-autocomplete.plugin.zsh
source $ZSH_PLUGINS_PATH/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source $ZSH_PLUGINS_PATH/fzf-tab/fzf-tab.plugin.zsh
source $ZSH_PLUGINS_PATH/ohmyzsh/plugins/fzf/fzf.plugin.zsh
source $ZSH_PLUGINS_PATH/ohmyzsh/plugins/zoxide/zoxide.plugin.zsh
source $ZSH_PLUGINS_PATH/ohmyzsh/plugins/python/python.plugin.zsh
source $ZSH_POLYJUICE_PLUGINS_PATH/zsh-autocomplete/zsh-autocomplete.plugin.zsh
source $ZSH_POLYJUICE_PLUGINS_PATH/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh
source $ZSH_POLYJUICE_PLUGINS_PATH/fzf-tab/fzf-tab.plugin.zsh
source $ZSH_POLYJUICE_PLUGINS_PATH/ohmyzsh/plugins/fzf/fzf.plugin.zsh
source $ZSH_POLYJUICE_PLUGINS_PATH/ohmyzsh/plugins/zoxide/zoxide.plugin.zsh
source $ZSH_POLYJUICE_PLUGINS_PATH/ohmyzsh/plugins/python/python.plugin.zsh
# using starship as prompt