vim-settings/README.md

42 lines
2.9 KiB
Markdown
Raw Normal View History

## About
2022-03-01 00:45:21 +00:00
These are my Vim and Neovim settings that I like to keep synced between my computers for convenience. This bootstrap setup will support both Vim and Neovim and uses different plugins, where needed, to bridge gaps in functionality.
2012-03-29 03:18:33 +00:00
2022-03-01 00:45:21 +00:00
I use Neovim day to day, but there are times it is not available, so Vim and older Neovim installs are supported as well.
2022-10-14 20:58:16 +00:00
Vim and Neovim less than 0.5 support is really in maintanence mode now and not heavily maintained. I may actually trim down the configuration to be more minimal and act as an alternative to my more IDE like Neovim environment.
2022-03-01 00:45:21 +00:00
The bootstrap script included will set the proper symblinks and run package managers to install any plugins.
## Install
2016-05-03 18:56:09 +00:00
git clone https://github.com/ViViDboarder/vim-settings.git
cd vim-settings
2016-05-03 18:58:11 +00:00
make install
2022-03-01 00:45:21 +00:00
You can also remove any installed plugins or uninstall this configuration using either `make clean` or `make uninstall` respectively.
2022-10-14 20:58:16 +00:00
## Version support
Nearly every version of Vim or Neovim found on major distros is supported right now. To simplify things, I am considering adopting the following rule: Supporting only the lowest version of each found in the latest Ubuntu LTS and Debian Stable releases. I'll also make tags for commits where I drop support for a version.
2022-03-01 00:45:21 +00:00
## Project Layout
The `vim` directory here is what gets symblinked to `~/.vim`, and the `neovim` directory gets symblinked to `~/.config/nvim`. Inside, the `init.vim` file will also get symblinked to `~/.vimrc`. The `neovim/init.vim` file will dyanmically load the older non-Lua configs if Lua is not supported. The other included directories are mostly standard vim directories that provide some additional configuration files. The exceptions would be `backup`, which becomes the new default location for storing backup files while editing. The `tmp` directory is for storing session information. The `rc` directory is where all the `vimrc` work gets done.
## Neovim config
2022-03-01 00:45:21 +00:00
This config is in Lua with the philosopy of taking advantage of as much out of the box capaiblities as possible.
2016-05-03 18:56:09 +00:00
2022-03-01 00:45:21 +00:00
## Vim and old Nvim
2016-05-03 18:56:09 +00:00
2022-03-01 00:45:21 +00:00
### The rc Files
2016-05-03 18:56:09 +00:00
The `init.vim` file essentially sets vim up to import the rc files from the `rc` directory. The actual configuration exists almost entirely in the `rc` directory. Each file should be fairly self explanatory.
2016-05-03 18:56:09 +00:00
One problem with syncing rc file between different machines, is that you may have different usages. That is solved by this framework by making use of `local.rc` files. For every `*.rc.vim`, you may provide a `*.local.rc.vim` file which will be loaded after the shared one. Here you can override or add anything to the synced configuration without it causing problems on any other machine.
2016-05-03 18:56:09 +00:00
## Note
2016-05-03 18:56:09 +00:00
2022-03-01 00:45:21 +00:00
I am not the original creators of some of the files included in the vim directory and only vendor them out of convienince. If I am missing any licensing information I'd be happy to attach it.