Features • Requirements • Font • Installation • Configuration • Plugins • Wiki
How you can set transparent background is explained in the Wiki
- File explorer with Nvim-tree
- Autocompletion with CMP
- Git integration with Gitsigns and Neogit
- Fuzzy finding with Telescope
- Formatting and Linting with Null-ls
- Language Server Protocol with Native LSP
- Debug Adapter Protocol with Nvim DAP
- Beautiful UI with Catppuccin and Noice.nvim
- Fast code navigation with flash.nvim
- Neovim >= 0.8.0
- Git >= 2.19.0
- a Nerd Font (optional)
- Cascadia Code - A new monospaced font that includes programming ligatures and is designed to enhance the modern look and feel of the Terminal.
mv ~/.config/nvim ~/.config/nvim.bak
mv ~/.local/share/nvim ~/.local/share/nvim.bak
cd ~/.config
git clone https://github.com/ilias777/nvim.git
rm -rf ~/.config/nvim/.git
cd nvim
nvim init.lua
Neovim-Installation.mp4
If you see the Treesitter installing the parser messages, press Enter
to skip these.
At the first time the Command MasonUpdate
is not found. Please wait about 2 minutes for the
language server installation to finish.
When all language servers are installed, restart Neovim.
How to configure Neovim is explained in the Wiki
- Over 70 Plugins preinstalled
- Startuptime ~100ms - ~130ms

- lazy.nvim - A modern plugin manager.
- nvim-tree - A simple and fast file explorer tree.
- nvim-lspconfig - Configurations for the LSP client.
- mason - Install and manage LSP servers.
- mason-lspconfig - Bridge between mason and lsp-ocnfig.
- trouble.nvim - A pretty diagnostics, references, telescope results, quickfix and location list.
- inc-rename.nvim - Incremental LSP rename command.
- nvim-jdtls - Extensions for the built-in LSP support for eclipse.jdt.ls.
- nvim-cmp - Completion plugin.
- null-ls - Language server to inject LSP diagnostics, code actions, and more via Lua.
- Catppuccin - Warm mid-tone dark theme.
- Luasnip - A snippet engine.
- friendly-snippets - Snippets collection for a set of different programming languages.
- bufferline.nvim - A snazzy buffer line.
- feline.nvim - A minimal, stylish and customizable statusline.
- cinnamon.nvim - Smooth scrolling for any movement command.
- flash.nvim - Navigate your code with search labels.
- hop.nvim - Jump anywhere in a document.
- nvim-spider - Use the w, e, b motions like a spider.
- diffview.nvim - Interface for easily cycling through diffs.
- gitsigns - Git integration: signs, hunk actions, blame, etc.
- neogit - A Magit clone for Neovim
- align.nvim - Aligning lines.
- cheatsheet.nvim - Searchable cheatsheet.
- focus.nvim - Auto-Focusing and Auto-Resizing Splits/Windows.
- indent-blankline - IndentLine replacement.
- live-command.nvim - Text editing with immediate visual feedback.
- markdown-preview - Preview markdown on your browser.
- multicursors.nvim - A multi cursor plugin.
- noice.nvim - Replaces the UI for messages, cmdline and the popupmenu.
- nvim-autopairs - A minimalist autopairs.
- nvim-colorizer - A high-performance color highlighter.
- nvim-notify - A fancy, configurable, notification manager.
- nvim-surround - A plugin for adding/changing/deleting surrounding delimiter pairs.
- nvim-toggler - Invert text.
- nvim-ufo - Ultra fold with modern looking and performance boosting.
- nvim-web-devicons - Show dev icons.
- sentiment.nvim - Enhanced matchparen.
- ssr.nvim - Treesitter based structural search and replace plugin.
- statuscol.nvim - Configurable 'statuscolumn' with builtin segments and click handlers.
- symbols-outline.nvim - A tree like view for symbols.
- vim-visual-multi - Multiple cursors.
- which-key.nvim - Popup of keybindings.
- zen-mode.nvim - Distraction-free coding.
- nvim-treesitter - Neovim Treesitter configurations and abstraction layer.
- nvim-treehopper - Region selection using hints on the abstract syntax tree of a document.
- nvim-treesitter-context - Shows the context of the currently visible buffer contents.
- nvim-treesitter-textobjects - Syntax aware text-objects, select, move, swap, and peek support.
- nvim-treesitter-textsubjects - Location and syntax aware text objects which do what you mean.
- ts-node-action - A framework for executing functional transformations on Tree-sitter nodes.
- ts-playground - View treesitter information directly in Neovim.
- telescope.nvim - Find, Filter, Preview, Pick.
- telescope-emoji.nvim - An extension for telescope.nvim that allows you to search emojis 😃.
- telescope-file-browser.nvim - A file browser extension for telescope.nvim.
- telescope-symbols.nvim - Ability of picking symbols and insert them at point.
- telescope-undo.nvim - Visualize your undo tree and fuzzy-search changes in it.
- Comment.nvim - Smart and powerful comment plugin.
- comment-box.nvim - Clarify and beautify your comments using boxes and lines.
- nvim-comment-frame - Detects the language using treesitter and adds a comment block.
- todo-comments.nvim - Highlight, list and search todo comments in your projects.
- nvim-dap - Debug Adapter Protocol client implementation for Neovim.
- nvim-dap-ui - A UI for nvim-dap.
- nvim-dap-vscode-js - nvim-dap adapter for vscode-js-debug.
- vimtex - A modern Vim and Neovim filetype and syntax plugin for LaTeX files.
Language Server | Description | Programming Language |
---|---|---|
cssls | Language services for CSS, LESS and SCSS | CSS |
emmet_ls | Emmet support based on LSP | HMLT - CSS |
html | Language services for HTML | HTML |
jsonls | JSON language service | JSON |
jdtls | Java language server | Java |
tsserver | TypeScript & JavaScript Language Server | JavaScript |
ltex | Grammar checking of various markup languages | LaTex, Markdown |
texlab | Language Server Protocol for LaTeX | Latex |
lua_ls | A language server that offers Lua language support | Lua |
intelephense | PHP language server | PHP |
pyright | Static Type Checker for Python | Python |
rust_analyzer | Rust compiler | Rust |
volar | High-performance Vue language tooling based-on Volar.js | Vue |
yamlls | Language Server for YAML Files | YAML |