fix install ln

This commit is contained in:
2026-04-03 15:11:15 +09:00
parent 83bddaa74e
commit 24b072c539

View File

@@ -5,7 +5,7 @@
dotdir="${1:-$HOME/dotfiles}" dotdir="${1:-$HOME/dotfiles}"
files=(.zshrc .vimrc .tmux.conf .gitconfig .config/karabiner/karabiner.json) files=(.zshrc .vimrc .tmux.conf .gitconfig .config/karabiner/karabiner.json)
dirs=(.zsh .vim/plugin .tmux .local/bin) dirs=(.zsh .vim/plugin .tmux)
# backup and symlink files # backup and symlink files
for f in "${files[@]}"; do for f in "${files[@]}"; do
@@ -35,14 +35,24 @@ for d in "${dirs[@]}"; do
dst="$HOME/$d" dst="$HOME/$d"
fi fi
[ ! -d "$src" ] && continue [ ! -d "$src" ] && continue
if [ -d "$dst" ] && [ ! -L "$dst" ]; then if [ -L "$dst" ]; then
rm "$dst"
elif [ -d "$dst" ]; then
mv "$dst" "${dst}.bak" mv "$dst" "${dst}.bak"
echo "backup: $dst -> ${dst}.bak" echo "backup: $dst -> ${dst}.bak"
fi fi
ln -sf "$src" "$dst" ln -s "$src" "$dst"
echo "link: $dst -> $src" echo "link: $dst -> $src"
done done
# symlink individual files in .local/bin
mkdir -p "$HOME/.local/bin"
for f in "$dotdir/.local/bin/"*; do
[ ! -f "$f" ] && continue
ln -sf "$f" "$HOME/.local/bin/$(basename "$f")"
echo "link: ~/.local/bin/$(basename "$f")"
done
# create vim undo dir # create vim undo dir
mkdir -p "$HOME/.vim/undo" mkdir -p "$HOME/.vim/undo"