# vim xdg dirs: ~/.config/vim, ~/.local/share/vim, ~/.local/state/vim vim_config_dir="${XDG_CONFIG_HOME:-${HOME}/.config}/vim" vim_data_dir="${XDG_DATA_HOME:-${HOME}/.local/share}/vim" vim_state_dir="${XDG_STATE_HOME:-${HOME}/.local/state}/vim" # migrate old ~/.vim test -d "${HOME}/.vim" && test ! -e "${vim_config_dir}" && mv "${HOME}/.vim" "${vim_config_dir}" # create vim dirs that don't exist already mkdir -p "${vim_config_dir}" "${vim_data_dir}" "${vim_state_dir}" # migrate old ~/.vimrc & ~/.viminfo test -f "${HOME}/.vimrc" && test ! -e "${vim_config_dir}/vimrc" && mv "${HOME}/.vimrc" "${vim_config_dir}/vimrc" && mv "${HOME}/.viminfo" "${vim_state_dir}/viminfo" # optional: disable mouse echo "set mouse=" >> "${vim_config_dir}/vimrc" echo "set ttymouse=" >> "${vim_config_dir}/vimrc"