config startship in zsh

This commit is contained in:
2026-01-21 23:04:05 +08:00
parent c5be794640
commit aca04c9bf9
2 changed files with 24 additions and 20 deletions

View File

@@ -1,22 +1,24 @@
#! /bin/bash
current_dir=$(dirname $(realpath "$0"))
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 "$current_dir/../starship/starship.toml") ]]; then
ln -sf "$current_dir/../starship/starship.toml" "$starship_config_file"
function startship_polyjuice() {
if [ ! -n "${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"
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"
else
echo "Backup file already exists. Please remove $starship_config_file.bkp and try again."
return
fi
fi
else
if [ ! -f "$starship_config_file.bkp" ]; then
mv "$starship_config_file" "$starship_config_file.bkp"
ln -s "$current_dir/../starship/starship.toml" "$starship_config_file"
else
echo "Backup file already exists. Please remove $starship_config_file.bkp and try again."
exit 1
fi
ln -sf "$STARSHIP_CONFIG_FILE" "$starship_config_file"
fi
else
ln -sf "$current_dir/../starship/starship.toml" "$starship_config_file"
fi
}