mirror of
https://github.com/Llewellynvdm/fzf.git
synced 2024-11-28 15:56:27 +00:00
Update uninstall script
This commit is contained in:
parent
459c332351
commit
f37be006c3
2
install
2
install
@ -345,7 +345,7 @@ Finished. Restart your shell or reload config file.
|
||||
EOF
|
||||
[ $has_fish -eq 1 ] && echo " fzf_key_bindings # fish"; cat << EOF
|
||||
|
||||
To uninstall fzf, simply remove the added lines.
|
||||
Use uninstall script to remove fzf.
|
||||
|
||||
For more information, see: https://github.com/junegunn/fzf
|
||||
EOF
|
||||
|
56
uninstall
56
uninstall
@ -1,52 +1,42 @@
|
||||
#!/bin/bash
|
||||
|
||||
remove_line() {
|
||||
src=$(readlink "$2")
|
||||
if [ $? -eq 0 ]; then
|
||||
echo "Remove from $2 ($src):"
|
||||
else
|
||||
src=$2
|
||||
echo "Remove from $2:"
|
||||
fi
|
||||
echo " - $1"
|
||||
|
||||
i=$(grep -c "$1" "$2")
|
||||
if [ $i -eq 0 ]
|
||||
then
|
||||
echo " - Nothing found"
|
||||
fi
|
||||
|
||||
while [ $i -gt 0 ]
|
||||
do
|
||||
line=$(grep -m1 -nF "$1" "$2")
|
||||
lineNumber=$(grep -m1 -nF "$1" "$2" | sed 's/:.*//')
|
||||
if [ -n "$lineNumber" ]; then
|
||||
changed=0
|
||||
while [ 1 ]; do
|
||||
line=$(grep -m1 -nF "$1" "$src") || break
|
||||
line_no=$(sed 's/:.*//' <<< "$line")
|
||||
echo " - Remove line ($line)"
|
||||
awk -v n=$lineNumber 'NR == n {next} {print}' $2 > $2.bak && mv $2.bak $2
|
||||
else
|
||||
echo " - Nothing found"
|
||||
fi
|
||||
i=`expr $i - 1`
|
||||
awk -v n=$line_no 'NR == n {next} {print}' "$src" > "$src.bak" &&
|
||||
mv "$src.bak" "$src" || break
|
||||
changed=1
|
||||
done
|
||||
[ $changed -eq 0 ] && echo " - Nothing found"
|
||||
echo
|
||||
}
|
||||
|
||||
for shell in bash zsh; do
|
||||
if [ -f ~/.fzf.${shell} ]
|
||||
then
|
||||
rm ~/.fzf.${shell}
|
||||
fi
|
||||
rm -f ~/.fzf.${shell}
|
||||
remove_line "source ~/.fzf.${shell}" ~/.${shell}rc
|
||||
bind_file="~/.config/fish/functions/fish_user_key_bindings.fish"
|
||||
if [ -f $bind_file ]
|
||||
then
|
||||
remove_line "fzf_key_bindings" "$bind_file"
|
||||
fi
|
||||
done
|
||||
|
||||
if [ -d ~/.config/fish/functions ]
|
||||
then
|
||||
if [ -f ~/.config/fish/functions/fzf.fish ]
|
||||
then
|
||||
rm ~/.config/fish/functions/fzf.fish
|
||||
fi
|
||||
bind_file=~/.config/fish/functions/fish_user_key_bindings.fish
|
||||
if [ -f "$bind_file" ]; then
|
||||
remove_line "fzf_key_bindings" "$bind_file"
|
||||
fi
|
||||
|
||||
if [ "$(ls -A ~/.config/fish/functions)" ]
|
||||
then
|
||||
if [ -d ~/.config/fish/functions ]; then
|
||||
rm -f ~/.config/fish/functions/fzf.fish
|
||||
|
||||
if [ "$(ls -A ~/.config/fish/functions)" ]; then
|
||||
echo "Can't delete non-empty directory: \"~/.config/fish/functions\""
|
||||
else
|
||||
rmdir ~/.config/fish/functions
|
||||
|
Loading…
Reference in New Issue
Block a user