mirror of
https://github.com/prurigro/darkcloud-vimconfig.git
synced 2024-11-25 16:01:25 -05:00
5086483c0b
source URLs and removed "successfully" from the line saying the update script completed since it never actually tests to see if it was successful.
63 lines
2.4 KiB
Bash
Executable file
63 lines
2.4 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
# work from the base directory of the repository
|
|
cd "${0%/*}"
|
|
|
|
# create the user vimrc file in the directory if it doesn't already exist
|
|
if [ ! -e vim/vimrc.user ]; then
|
|
echo "Creating user configuration file 'vim/vimrc.user'..."
|
|
if [ -d vim ] && [ -w vim ]; then
|
|
echo -e '"Syntax Checking Autostart: (1:start toggled on | 0: start toggled off)\nlet g:autostartchecker=1\n' >> vim/vimrc.user
|
|
echo -e '"Vim Starts With The Tagbar Open: (1:start open | 0:start closed)\nlet g:autostarttagbar=0\n' >> vim/vimrc.user
|
|
echo -e '"Powerline Font Support: (1:enabled | 0:disabled)\nlet g:powerlinefonts=1\n' >> vim/vimrc.user
|
|
echo -e '"GVim Font Selection: (term font set by terminal)\nset guifont=Droid\ Sans\ Mono\ 12' >> vim/vimrc.user
|
|
fi
|
|
echo
|
|
fi
|
|
|
|
echo "Updating darkcloud-vimconfig..."
|
|
git pull origin
|
|
git submodule sync
|
|
|
|
echo -e "\nUpdating plugin submodules..."
|
|
git submodule update --init --recursive
|
|
|
|
# delete submodules in vim/bundle that were removed up stream
|
|
echo -e "\nConfiguring plugin submodules..."
|
|
[[ -f .gitmodules ]] && for each in vim/bundle/*; do
|
|
if [ -d "$each" ]; then
|
|
if [ -f "${each}/.git" ]; then
|
|
FILE=$(echo $each | grep -o -e "[^\/]*$")
|
|
[[ `cat .gitmodules | grep "path = " | grep -o -e "[^\/]*$" | grep -c "${FILE}"` = 0 ]] && (rm -rf "${each}" && echo "Deleted: ${each}" || (echo -e "\033[01;31mWARNING\033[00m: '${each}' was removed upstream but couldn't be deleted here.\n\nPlease delete ${each} manually."; exit 1))
|
|
fi
|
|
fi
|
|
done
|
|
echo
|
|
|
|
# update git-based plugins in vim/bundle.user if any exist
|
|
if [ ! $(find vim/bundle.user | grep ".git/config" | wc -l) = 0 ]; then
|
|
echo "Updating custom plugins in 'vim/bundle.user':"
|
|
pushd vim/bundle.user > /dev/null 2>&1
|
|
for each in *; do
|
|
if [ -d "$each" ]; then
|
|
pushd "$each" > /dev/null 2>&1
|
|
if [ -d .git ]; then
|
|
echo -e "\nUpdating git repo: ${each}..."
|
|
git pull
|
|
elif [ -f .git ]; then
|
|
echo -e "\nUpdating git submodule: ${each}..."
|
|
git pull origin master
|
|
fi
|
|
popd > /dev/null 2>&1
|
|
fi
|
|
done
|
|
popd > /dev/null 2>&1
|
|
echo
|
|
fi
|
|
|
|
echo "Generating updated helpdocs for installed plugins..."
|
|
[[ `type -P vim` ]] && vim -c "Helptags|qa!" &>/dev/null 2>&1
|
|
echo
|
|
|
|
echo "Update Complete!"
|
|
exit 0
|