Extracted vim installation functions for external use

This commit is contained in:
yage
2022-02-06 00:45:04 -07:00
parent a7bf48df9e
commit fdb6f3d00a
6 changed files with 88 additions and 82 deletions

44
bin/vim/compile Executable file
View File

@ -0,0 +1,44 @@
#!/bin/zsh
source "$HOME/.config/wryn/env.zsh"
source $ZSH_COLOR_UTIL
#####################################################################
TARGET='https://github.com/vim/vim.git'
LOCAL_PATH="$HOME/.packages/vim"
STATUS 'setting up vim'
[ -d $LOCAL_PATH/.git ] && {
USER_PROMPT 'vim already compiled; update? [y/N]'
read -k yn; echo
[[ $yn =~ [^yY] ]] && return 0
cd $LOCAL_PATH
CHECK 'updating vim to latest'
git pull >/dev/null 2>&1 \
&& OK || FAIL 'unable to update vim'
} || {
CHECK 'getting vim source'
git clone $TARGET $LOCAL_PATH >/dev/null 2>&1 \
&& OK || FAIL 'unable to download vim'
}
cd $LOCAL_PATH
CHECK 'configuring vim'
./configure \
--with-features=huge \
--enable-cscope \
--enable-gtk2-check \
--enable-gtk3-check \
--enable-gui=auto \
--enable-luainterp=yes \
--enable-perlinterp=yes \
--enable-python3interp=yes \
--enable-rubyinterp=yes \
--enable-terminal \
>/dev/null 2>&1 && OK || FAIL
CHECK 'building vim'
sudo make >/dev/null 2>&1 && OK || FAIL
CHECK 'installing vim'
sudo make install >/dev/null 2>&1 && OK || FAIL

29
bin/vim/install-plugins Executable file
View File

@ -0,0 +1,29 @@
#!/bin/zsh
source "$HOME/.config/wryn/env.zsh"
source $ZSH_COLOR_UTIL
#####################################################################
TARGET='https://github.com/VundleVim/Vundle.vim.git'
VUNDLE_DIR="$HOME/.vim/bundle/Vundle.vim"
[ ! -d "$VUNDLE_DIR" ] && {
CHECK 'installing Vundle.vim'
git clone $TARGET $VUNDLE_DIR >>$LOG 2>&1 \
&& OK || FAIL
} || {
CHECK 'updating Vundle.vim'
cd $VUNDLE_DIR >>$LOG 2>&1 \
&& git pull >>$LOG 2>&1 \
&& OK || WARN 'unable to pull latest Vundle.vim'
cd $PREV_DIR >>$LOG 2>&1
}
STATUS 'installing Vundle.vim plugins'
vim +PluginInstall +qall \
&& SUCCESS 'successfully installed Vundle.vim plugins' \
|| WARN 'failed to install one or more Vundle.vim plugins' \
;
STATUS 'building plugins (this may take a minute)'
$DOTWRYN/bin/vim/rebuild-plugins

View File

@ -1,20 +1,25 @@
#!/bin/zsh
source "$HOME/.config/wryn/env.zsh"
source $ZSH_COLOR_UTIL
#####################################################################
function INSTALL() {
local CMD_NAME="$1"
local BUILD_DIR="$2"
local BUILD="$3"
echo "installing $CMD_NAME"
[ ! -d $BUILD_DIR ] && { echo "unable to locate $CMD_NAME build files"; exit 1; }
[ ! -d $BUILD_DIR ] && FATAL "unable to locate $CMD_NAME build files"
CHECK "Installing $CMD_NAME"
$BUILD >/dev/null 2>&1 \
&& echo "$CMD_NAME installation successful" \
|| echo "$CMD_NAME installation failed. Please attempt manual installation";
&& OK || WARN "failed automated build"
}
#####################################################################
function INSTALL_YCM() {
local CMD_NAME='YouCompleteMe';
local BUILD_DIR="$HOME/.vim/bundle/YouCompleteMe";
local CMD_NAME='YouCompleteMe'
local BUILD_DIR="$HOME/.vim/bundle/YouCompleteMe"
function BUILD() {
python3 $BUILD_DIR/install.py
@ -23,4 +28,5 @@ function INSTALL_YCM() {
INSTALL $CMD_NAME $BUILD_DIR BUILD
}
#####################################################################
INSTALL_YCM