Why does this repo exist?
Because I forked https://github.com/LunarVim/nvim-basic-ide and removed the stable commit hashes. Why? Because I'm insane.
Added the following plugins:
- gruvbox
- vim-test
- which-key
- vim-tmux-runner
- telescope-dap
Setup debugging with Node.js and Mocha:
- Open test file and navigate to test to debug set breakpoint <space>db
- Launch specific test using <space>tt
- Get DAP to connect using <space>dc
- Select attach process
- Open DAP UI using <space>du
- Forward to breakpoint <space>dc
You can install Neovim with your package manager e.g. brew, apt, pacman etc.. but remember that when you update your packages Neovim may be upgraded to a newer version.
If you would like to make sure Neovim only updates when you want it to than I recommend installing from source:
git clone https://github.com/neovim/neovim.git
cd neovim
git checkout release-0.7
make CMAKE_BUILD_TYPE=Release
sudo make install
Make sure to remove or move your current nvim
directory
git clone https://github.com/LunarVim/nvim-basic-ide.git ~/.config/nvim
Run nvim
and wait for the plugins to be installed
NOTE (You will notice treesitter pulling in a bunch of parsers the next time you open Neovim)
NOTE Checkout this file for some predefined keymaps: keymaps
Open nvim
and enter the following:
:checkhealth
You'll probably notice you don't have support for copy/paste also that python and node haven't been setup
So let's fix that
First we'll fix copy/paste
-
On mac
pbcopy
should be builtin -
On Ubuntu
sudo apt install xsel # for X11 sudo apt install wl-clipboard # for wayland
Next we need to install python support (node is optional)
-
Neovim python support
pip install pynvim
-
Neovim node support
npm i -g neovim
We will also need ripgrep
for Telescope to work:
-
Ripgrep
sudo apt install ripgrep
NOTE make sure you have node installed, I recommend a node manager like fnm.
I recommend using the following repo to get a "Nerd Font" (Font that supports icons)
To add a new LSP
First Enter:
:LspInstallInfo
and press i
on the Language Server you wish to install
Next you will need to add the server to this list: servers
Make sure the formatter or linter is installed and add it to this setup function: null-ls
NOTE Some are already setup as examples, remove them if you want
You can install new plugins here: plugins
- packer
- plenary
- nvim-autopairs
- nvim-ts-context-commentstring
- nvim-web-devicons
- nvim-tree.lua
- bufferline.nvim
- vim-bbye
- lualine.nvim
- toggleterm.nvim
- project.nvim
- impatient.nvim
- indent-blankline.nvim
- alpha-nvim
- tokyonight.nvim
- darkplus.nvim
- nvim-cmp
- cmp-buffer
- cmp-path
- cmp_luasnip
- cmp-nvim-lsp
- cmp-nvim-lua
- LuaSnip
- friendly-snippets
- nvim-lspconfig
- nvim-lsp-installer
- null-ls.nvim
- vim-illuminate
- telescope.nvim
- nvim-treesitter
- gitsigns.nvim
- nvim-dap
- nvim-dap-ui
- DAPInstall.nvim
- gruvbox
- tmux-nvim
- vim-test
- which-key
- vim-tmux-runner
The computing scientist's main challenge is not to get confused by the complexities of his own making.
- Edsger W. Dijkstra