diff --git a/_home.macos/dot_vimrc b/_home.macos/dot_vimrc new file mode 100644 index 0000000..46476a2 --- /dev/null +++ b/_home.macos/dot_vimrc @@ -0,0 +1,11 @@ +if has('nvim') + " Neovim-specific settings + set runtimepath+=~/.config/nvim + lua require('_init') +else + " Vim-specific settings + set runtimepath+=~/.config/vim + source ~/.config/vim/_init +endif + +" vim: set ft=vim sw=4 sts=4 et: diff --git a/_home.macos/private_dot_config/vim b/_home.macos/private_dot_config/vim new file mode 120000 index 0000000..b02d60b --- /dev/null +++ b/_home.macos/private_dot_config/vim @@ -0,0 +1 @@ +../../_src.posix/vim \ No newline at end of file diff --git a/_home.macos/private_dot_config/vim/empty__init b/_home.macos/private_dot_config/vim/empty__init deleted file mode 100644 index e69de29..0000000 diff --git a/_src.posix/.chezmoiignore b/_src.posix/.chezmoiignore index 7e110d2..a057fd1 100644 --- a/_src.posix/.chezmoiignore +++ b/_src.posix/.chezmoiignore @@ -1,3 +1,5 @@ /**/.git /**/.git/** +.config/vim/autoload + diff --git a/_src.posix/dot_vimrc b/_src.posix/dot_vimrc new file mode 100644 index 0000000..46476a2 --- /dev/null +++ b/_src.posix/dot_vimrc @@ -0,0 +1,11 @@ +if has('nvim') + " Neovim-specific settings + set runtimepath+=~/.config/nvim + lua require('_init') +else + " Vim-specific settings + set runtimepath+=~/.config/vim + source ~/.config/vim/_init +endif + +" vim: set ft=vim sw=4 sts=4 et: diff --git a/_src.posix/vim/_init b/_src.posix/vim/_init new file mode 100644 index 0000000..f19db37 --- /dev/null +++ b/_src.posix/vim/_init @@ -0,0 +1,30 @@ +" Set custom Vim config directory +let s:vim_config_dir = '~/.config/vim' +let s:autoload_dir = s:vim_config_dir . '/autoload' +let s:plug_vim = s:autoload_dir . '/plug.vim' + +" Install vim-plug if not found +if empty(glob(s:plug_vim)) + silent execute '!curl -fLo ' . s:plug_vim . ' --create-dirs ' . + \ 'https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim' +endif + +" Ensure Vim uses the custom runtime path +set runtimepath+=~/.config/vim +execute 'source ' . s:plug_vim + + +" Initialize vim-plug +call plug#begin('~/.config/vim/plugged') + +" Define plugins here +"Plug 'junegunn/vim-plug' " Example, replace with actual plugins + +call plug#end() + +" Run PlugInstall if there are missing plugins +autocmd VimEnter * if len(filter(values(g:plugs), '!isdirectory(v:val.dir)')) + \| PlugInstall --sync | source $MYVIMRC +\| endif + +" vim: set ft=vim sw=4 sts=4 et: