NeoVim configuration for Linux, MacOS, and Windows. Based off of LazyVim. Refer to the documentation to add any additional customizations.
Download the latest release of the omnisharp-roslyn lsp and extract it into the ~/.local/bin/omnisharp
directory. Make sure to give the files in the directory executable permissions (chmod 744
).
- Colorschemes via catppuccin.
- Markdown writing and previewing via vim-markdown and markdown-preview.nvim.
- AI code completion via Copilot.
- LSP and debugging support for:
- Dotnet/C# via omnisharp-roslyn and netcoredbg
- Typescript/JavaScript via typescript-language-server
Using the built-in keymaps from LazyVim with noted exceptions below.
<leader>
is set to a single space. Pressing the leader key with a delay will show a browsable shortcut menu.
Shortcut | Mode | Description |
---|---|---|
jk | Insert | Escapes to normal mode |
Normal | Select all |
| fr | Normal | Fuzzy find recent files | | fs | Normal | Fuzzy find text | | fc | Normal | Fuzzy find text under cursor |
Shortcut | Mode | Description |
---|---|---|
mp | Normal | Opens a preview of current file in the browser |
To start a debugging session, use <leader>gc
. You will be prompted for the path to the project's .csproj
file and also the path to the built .dll
file. Unless I figure out a way around it, you will need to start nvim as root to have permissions to attach to the process. To retain the current user's nvim setup when using sudo, use sudo -Es nvim
.