Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/willopez/nvim
NeoVim config that works well with VSCode
https://github.com/willopez/nvim
Last synced: about 1 month ago
JSON representation
NeoVim config that works well with VSCode
- Host: GitHub
- URL: https://github.com/willopez/nvim
- Owner: willopez
- License: gpl-3.0
- Created: 2021-10-29T20:45:45.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2024-12-03T20:12:24.000Z (3 months ago)
- Last Synced: 2024-12-03T21:22:35.473Z (3 months ago)
- Language: Vim Script
- Size: 1.09 MB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# NVCode

## Install in one command
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)
```## Install Neovim
- Mac
```
brew install --HEAD neovim # Nightly versionbrew upgrade neovim --fetch-HEAD # Sometimes you need to update
```- Ubuntu
```
curl -l https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage > /tmp/nvim.appimagesudo mv /tmp/nvim.appimage /usr/local/bin/nvim
chmod +x /usr/local/bin/nvim
```- Arch
```
yay -S neovim-git # Latest
```## Clone this repo into your config
```
git clone https://github.com/ChristianChiarulli/nvim.git ~/.config/nvim
```## Install python & node support
```
pip install pynvim
``````
npm i -g neovim
```## Install Neovim remote
```
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
```## Install clipboard support
- On Mac pbcopy should be builtin
- Ubuntu
```
sudo apt install xsel
```- Arch
```
sudo pacman -S xsel
```## (Optional) Install python & node support using virtual environments
Make sure to add these paths somewhere in your config
```
let g:python3_host_prog = expand("")
let g:python3_host_prog = expand("~/.miniconda/envs/neovim/bin/python3.8") " <- examplelet g:node_host_prog = expand("")
let g:node_host_prog = expand("~/.nvm/versions/node/v12.16.1/bin/neovim-node-host") " <- example
```## List of programs you should install
- ranger
- ueberzug
- ripgrep
- silver_searcher
- fd
- universal-ctags
- lazy git
- lazy dockerExplanations and installation instruction can be found on my blog
## Language Servers
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` fileExample:
- bash
`npm i -g bash-language-server`
```
"languageserver": {
"bash": {
"command": "bash-language-server",
"args": ["start"],
"filetypes": ["sh"],
"ignoredRootPaths": ["~"]
}
}
```## For FAR to work
```
:UpdateRemotePlugins
```## TabNine
To use TabNine enter the following in a buffer:
```
TabNine::config
```**NOTE** This extension can take up a ton of memory
## Vim Gists
To use **vim-gists** you will need to configure the following:
```
git config --global github.user
```## VSCodium & Neo Vim Extension
[VSCodium](https://github.com/VSCodium/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](https://github.com/asvetliakov/vscode-neovim) 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`
## TODO
- Better Documentation
## CoC extensions to check out
- coc-fzf-preview
- https://github.com/yuki-ycino/fzf-preview.vim/
- coc-floaterm## 0.5
- native lsp
- treesitter## LOW PRIORITY TODO
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?