🌙 LunarVim is an IDE layer for Neovim. Completely free and community driven.
Find a file
2020-05-11 18:48:29 -04:00
autoload auto push 2020-04-23 22:44:32 -04:00
general which key is stable 2020-05-10 23:28:32 -04:00
keys bash language server config 2020-05-11 18:48:29 -04:00
lua git integration 2020-05-03 12:18:38 -04:00
plug-config better mappings 2020-05-11 12:58:20 -04:00
themes updates 2020-05-08 22:12:01 -04:00
vim-plug which key is stable 2020-05-10 23:28:32 -04:00
vscode added vscode support 2020-04-27 21:58:30 -04:00
.gitignore put paths in gitignore 2020-05-01 14:14:46 -04:00
coc-settings.json bash language server config 2020-05-11 18:48:29 -04:00
init.vim which key is stable 2020-05-10 23:28:32 -04:00
README.md bash language server config 2020-05-11 18:48:29 -04:00

Nvim Mach 2

VSCode integration

We will be integrating with VSCode using this

Install Neovim

  • On Mac

    brew install neovim
    
  • Ubuntu

    sudo apt install neovim
    
  • Arch

    sudo pacman -S neovim
    

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 clipboard support

  • On mac pbcopy should be builtin

  • On Ubuntu

    sudo apt install xsel
    
  • On Arch Linux

    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("<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

List of programs you should install

  • ranger
  • ueberzug
  • ripgrep
  • silver_searcher
  • fd
  • universal-ctags
  • lazy git
  • lazy docker

Explanations 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 file

Example:

  • bash

    npm i -g bash-language-server

    "languageserver": {
    "bash": {
      "command": "bash-language-server",
      "args": ["start"],
      "filetypes": ["sh"],
      "ignoredRootPaths": ["~"]
      }
    }
    

TODO

  • People asked about vimwiki I kinda hate it but maybe I'll add it
  • float term lazy git
  • spectre, or async task/run
  • setup custom paths
  • install script envsubst is your friend
  • add better whitespace plugin and a toggle, video about clean code maybe
  • echodoc and buitin support with CoC
  • snippets (coc snippets)
  • git messenger
  • float term
  • neovide
  • setup global coc extensions to auto install