nixos/README.md
2022-08-31 08:08:30 +01:00

59 lines
1.8 KiB
Markdown

# Vim config
Personal configuration and plugins for Vim
## Installing neovim AppImage
```bash
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim.appimage
chmod u+x nvim.appimage
mv nvim.appimage "$HOME/bin/."
ln -s "$HOME/bin/nvim.appimage" "$HOME/bin/nvim" # Optional to avoid extension in commands
# ./nvim.appimage
```
### (Alternate) Installing on Ubuntu
```bash
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:neovim-ppa/unstable
sudo apt-get update
sudo apt-get install neovim
sudo apt-get install python-dev python-pip python3-dev python3-pip
```
## Linking setup file
```bash
ln -s $HOME/.vim/init.vim $HOME/.config/nvim/init.vim
```
### Installing `vim-plug` plugin manager
```bash
sh -c 'curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim'
vim -c PlugInstall -c PlugClean -c qa! # To install plugins for nvim defined in init.vim
```
Plugin definitions are in `init.vim`, inside `vim` run `:PlugInstall` to install plugins
## Enabling python support
```bash
pyenv virtualenv neovim3 # Assumes working pyenv
pyenv activate neovim3
pip install -U pip setuptools wheel
pip install -U pynvim "python-lsp-server[all]" fortls pylsp-mypy python-lsp-black
pyenv deactivate
```
## Miscellaneous settings
- Modifications in `pack/plugins/start/python-syntax`
- Edit `.git/modules/pack/plugins/start/python-syntax/info/exclude` to exclude `doc`
### To use with existing `~/.vimrc`
Add the following lines to neovim init file:
> set runtimepath^=~/.vim runtimepath+=~/.vim/after
> let &packpath = &runtimepath
> source ~/.vimrc
Using the following commands:
> :call mkdir(stdpath('config'), 'p')
> :exe 'edit '.stdpath('config').'/init.vim'
From [vim documentation](https://neovim.io/doc/user/nvim.html#nvim-from-vim)