The following will install this config if you have an existing config it will move it to ~/.config/nvim.old
This script only supports Mac, Ubuntu and Arch
bash <(curl -s https://raw.githubusercontent.com/ChristianChiarulli/nvim/master/utils/install.sh)
-
Mac
brew install --HEAD neovim # Nightly version brew upgrade neovim --fetch-HEAD # Sometimes you need to update
-
Ubuntu
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim.appimage -o /tmp/nvim.appimage sudo mv /tmp/nvim.appimage /usr/local/bin/nvim chmod +x /usr/local/bin/nvim
-
Arch
yay -S neovim-git # Latest
git clone https://github.com/ChristianChiarulli/nvim.git ~/.config/nvim
pip install pynvim
npm i -g neovim
pip install neovim-remote
This will install nvr
to ~/.local/bin
so you will need to add the following to your bashrc
or zshrc
export PATH=$HOME/.local/bin:$PATH
-
On Mac pbcopy should be builtin
-
Ubuntu
sudo apt install xsel
-
Arch
sudo pacman -S xsel
Make sure to add these paths somewhere in your config
let g:python3_host_prog = expand("<path to python with pynvim installed>")
let g:python3_host_prog = expand("~/.miniconda/envs/neovim/bin/python3.8") " <- example
let g:node_host_prog = expand("<path to node with neovim installed>")
let g:node_host_prog = expand("~/.nvm/versions/node/v12.16.1/bin/neovim-node-host") " <- example
- ranger
- ueberzug
- ripgrep
- silver_searcher
- fd
- universal-ctags
- lazy git
- lazy docker
Explanations and installation instruction can be found on my blog
Since CoC doesn't support all languages in there extensions
I recommend installing some language servers from scratch
and adding them to your coc-settings.json
file
Example:
-
bash
npm i -g bash-language-server
"languageserver": { "bash": { "command": "bash-language-server", "args": ["start"], "filetypes": ["sh"], "ignoredRootPaths": ["~"] } }
:UpdateRemotePlugins
To replace in file make sure to specify %:p
To replace across project specify **/*.<your_extension>
To use TabNine enter the following in a buffer:
TabNine::config
NOTE This extension can take up a ton of memory
To use vim-gists you will need to configure the following:
git config --global github.user <username>
VSCodium contains build files to generate free release binaries of Microsoft's VS Code.
You can install it on multiple platforms:
-
Mac
brew cask install vscodium
-
Arch
yay -s vscodium-bin
-
Snap
snap install codium
The Neo Vim Extension is available in the VSCode marketplace
I recommend using this alongside the VSCode which-key
extension
Along with some of my config files you can find in utils/vscode_config
- Better Documentation https://github.com/gennaro-tedesco/nvim-jqx https://github.com/nathunsmitty/nvim-ale-diagnostic https://github.com/mattn/efm-langserver https://github.com/windwp/nvim-ts-closetag https://github.com/nvim-telescope/telescope-media-files.nvim https://github.com/kosayoda/nvim-lightbulb https://github.com/ms-jpq/chadtree https://github.com/b3nj5m1n/kommentary https://github.com/glepnir/lspsaga.nvim https://github.com/nvim-lua/completion-nvim https://github.com/nvim-telescope/telescope-frecency.nvim
- coc-fzf-preview
- coc-floaterm
- native lsp
- treesitter
If anyone reading this has any suggestions about implementing any of the following I will accept a PR, but these are not priority.
- ale
- multiple cursors
- markdown table
- galaxyline automatically grab colors from colorscheme
- tpope/vim-dadbod
- neovide
- People asked about vimwiki I kinda hate it but maybe I'll add it
- vimspector this is included but I don't plan on using it much
- can be used with jdb, pdb, gdb, etc...
- nvim-dap and nvim-dap-virtual-text (ALL DEBUGGING IN NEOVIM IS CONFUSING AND HARD TO GET WORKING OR I'M JUST DUMB)
- later manually link pylance
- resize with arrows in addition to meta
- how to support meta key on for macOS?