SRC_DIR := $(shell dirname $(realpath $(lastword $(MAKEFILE_LIST)))) TARGET_DIR := ~/.vim PLUG_URL := https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim PLUG_PATH := $(SRC_DIR)/autoload/plug.vim include ../lib/shared.mk install: | init update init: if (( $$+commands[vim] )) ; then $(report) header "Setting up vim" mkdir -p $(TARGET_DIR) $(mk_link) $(SRC_DIR)/vimrc ~/.vimrc $(mk_link) $(SRC_DIR)/vimrc.d $(TARGET_DIR)/vimrc.d $(mk_link) $(SRC_DIR)/spell $(TARGET_DIR)/spell ( mkdir -p $(TARGET_DIR)/backup \ && chmod 700 $(TARGET_DIR)/backup ) \ ; $(report) "setting up backup dir" else $(report) warn "cannot find vim?" fi update: if (( $$+commands[vim] )) ; then $(report) header "Upgrading vim" curl -fsLo $(PLUG_PATH) $(PLUG_URL) \ ; $(report) "vim plug setup" vim +PlugInstall +PlugUpdate +PlugClean +qall \ ; $(report) "downloading/updating plugins" stty sane # dropping in & out causes some weird tty behavior. else $(report) warn "cannot find vim?" fi remove: $(report) header "Removing vim config" $(rm_link) ~/.vimrc $(rm_link) $(TARGET_DIR)