https://github.com/ilias777/nvim
Neovim configuration
https://github.com/ilias777/nvim
configuration editor lua neovim neovim-configuration neovim-setup nvim nvim-config nvim-lua
Last synced: 6 months ago
JSON representation
Neovim configuration
- Host: GitHub
- URL: https://github.com/ilias777/nvim
- Owner: ilias777
- Created: 2023-07-01T17:18:25.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2025-07-24T19:47:31.000Z (6 months ago)
- Last Synced: 2025-07-25T00:57:40.983Z (6 months ago)
- Topics: configuration, editor, lua, neovim, neovim-configuration, neovim-setup, nvim, nvim-config, nvim-lua
- Language: Lua
- Homepage:
- Size: 10.9 MB
- Stars: 47
- Watchers: 3
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
Neovim Configuration
Features •
Requirements •
Installation •
Folder structure •
Plugins •
Wiki
## 🌟 Preview
Dark mode
Find files with Telescope
Show keybindings with which-key
File browser with Telescope
Find help with Telescope
Neo-tree file browser
Neo-tree floating file browser
Lazy.nvim
Mason.nvim
Autocompletion with blink.cmp
Light mode
Find files with Telescope
Show keybindings with which-key
File browser with Telescope
Find help with Telescope
Neo-tree file browser
Neo-tree floating file browser
Lazy.nvim
Mason.nvim
Autocompletion with blink.cmp
Modified light colors
All light colors for catppuccin latte are modified with more contrast for better readability.
See the difference:
Original catppuccin latte colors
Modified catppuccin latte colors
## ✨ Features
- File explorer with [neo-tree](https://github.com/nvim-neo-tree/neo-tree.nvim)
- Autocompletion with [blink.cmp](https://github.com/Saghen/blink.cmp)
- Git integration with [Gitsigns](https://github.com/lewis6991/gitsigns.nvim) and [Neogit](https://github.com/NeogitOrg/neogit)
- Fuzzy finding with [Telescope](https://github.com/nvim-telescope/telescope.nvim)
- Formatting with [conform.nvim](https://github.com/stevearc/conform.nvim) and Linting [nvim-lint](https://github.com/mfussenegger/nvim-lint)
- Language Server Protocol
- Debug Adapter Protocol with [Nvim DAP](https://github.com/mfussenegger/nvim-dap)
- Beautiful UI with [Catppuccin](https://github.com/catppuccin/nvim) and [Noice.nvim](https://github.com/folke/noice.nvim)
- Fast code navigation with [flash.nvim](https://github.com/folke/flash.nvim)
## ⚡️ Requirements
- Neovim >= 0.10.0
- Git >= 2.19.0
- a [Nerd Font](https://www.nerdfonts.com/)
## 🛠️ Installation
### Linux / macOS
#### Make a backup of your current nvim and shared folder
```shell
mv ~/.config/nvim ~/.config/nvim.bak
mv ~/.local/share/nvim ~/.local/share/nvim.bak
```
#### Go to your .config folder
```shell
cd ~/.config
```
#### Clone the Repository
```shell
git clone https://github.com/ilias777/nvim.git
```
#### Remove `.git` folder and add your own repo if you want
```shell
rm -rf ~/.config/nvim/.git
```
#### Navigate to nvim folder and open init.lua with Neovim
```shell
cd nvim
nvim init.lua
```
## 📁 Folder and File Structure
```shell
~/.config/nvim/
├── lua/ # Lua Folder
│ ├── config/ # Configuration
│ │ ├── lsp/ # LSP Configuration Folder
│ │ │ ├── servers/ # All LSP Servers
│ │ │ │ ├── .lua
│ │ │ │ ├── .lua
│ │ │ │ └── **
│ │ │ ├── diagnostic_config.lua
│ │ │ ├── diagnostic_keymaps.lua
│ │ │ ├── global.lua # Main LSP Configuration File
│ │ │ └── lsp_keymaps.lua
│ │ ├── autocommands.lua
│ │ ├── cursor.lua
│ │ ├── keymaps.lua
│ │ ├── lazy.lua
│ │ ├── options.lua
│ │ └── usercommands.lua
│ ├── lib/
│ │ └── icons.lua
│ ├── plugins/ # All Plugins
│ │ ├── .lua
│ │ ├── .lua
│ │ └── **
│ └── utils/ # Utility Files
│ ├── .lua
│ ├── .lua
│ └── **
├── snippets/
│ └── lua.json
├── spell/
│ ├── en.utf-8.spl
│ └── **
├── .luarc.json
└── init.lua # Main File
```
## 🔌 Plugins
- Over **90 Plugins** preinstalled
- Startuptime **~40ms - ~59ms**
- Testet on MacOS 14.5 - M1 Pro

### Plugins List
#### Package Manager
- [lazy.nvim](https://github.com/folke/lazy.nvim) - A modern plugin manager.
#### File Explorer
- [neo-tree](https://github.com/nvim-neo-tree/neo-tree.nvim) - Manage and browse the file system.
#### Plugins for LSP
- [nvim-lspconfig](https://github.com/neovim/nvim-lspconfig) - Configurations for the LSP client.
- [mason](https://github.com/williamboman/mason.nvim) - Install and manage LSP servers.
- [mason-lspconfig](https://github.com/williamboman/mason-lspconfig.nvim) - Bridge between mason and lsp-ocnfig.
- [trouble.nvim](https://github.com/folke/trouble.nvim) - A pretty diagnostics, references, telescope results, quickfix and location list.
- [glance.nvim](https://github.com/dnlhc/glance.nvim) - A pretty window for previewing, navigating and editing your LSP locations.
- [inc-rename.nvim](https://github.com/smjonas/inc-rename.nvim) - Incremental LSP rename command.
- [outline.nvim](https://github.com/hedyhli/outline.nvim) - Code outline sidebar powered by LSP.
- [nvim-jdtls](https://github.com/mfussenegger/nvim-jdtls) - Extensions for the built-in LSP support for eclipse.jdt.ls.
#### Autocompletion
- [blink.cmp](https://github.com/Saghen/blink.cmp) - Completion plugin.
#### Formatter
- [conform.nvim](https://github.com/stevearc/conform.nvim) - Lightweight yet powerful formatter plugin for Neovim.
#### Linter
- [nvim-lint](https://github.com/mfussenegger/nvim-lint) - An asynchronous linter plugin for Neovim.
#### Colorscheme
- [Catppuccin](https://github.com/catppuccin/nvim) - Warm mid-tone dark theme.
#### Snippets
- [friendly-snippets](https://github.com/rafamadriz/friendly-snippets) - Snippets collection for a set of different programming languages.
#### Tabline and Statusline
- [bufferline.nvim](https://github.com/akinsho/bufferline.nvim) - A snazzy buffer line.
- [lualine.nvim](https://github.com/nvim-lualine/lualine.nvim) - A blazing fast statusline.
#### Motion
- [flash.nvim](https://github.com/folke/flash.nvim) - Navigate your code with search labels.
- [hop.nvim](https://github.com/smoka7/hop.nvim) - Jump anywhere in a document.
- [nvim-spider](https://github.com/chrisgrieser/nvim-spider) - Use the w, e, b motions like a spider.
#### Git integration
- [advanced-git-search](https://github.com/aaronhallaert/advanced-git-search.nvim) - Search your git history by commit message, content and author with Telescope.
- [diffview.nvim](https://github.com/sindrets/diffview.nvim) - Interface for easily cycling through diffs.
- [gitsigns](https://github.com/lewis6991/gitsigns.nvim) - Git integration: signs, hunk actions, blame, etc.
- [neogit](https://github.com/NeogitOrg/neogit) - A Magit clone for Neovim
#### Utils
- [indent-blankline](https://github.com/lukas-reineke/indent-blankline.nvim) - IndentLine replacement.
- [noice.nvim](https://github.com/folke/noice.nvim) - Replaces the UI for messages, cmdline and the popupmenu.
- [nvim-autopairs](https://github.com/windwp/nvim-autopairs) - A minimalist autopairs.
- [nvim-colorizer.lua](https://github.com/norcalli/nvim-colorizer.lua) - The fastest Neovim colorizer.
- [nvim-notify](https://github.com/rcarriga/nvim-notify) - A fancy, configurable, notification manager.
- [nvim-surround](https://github.com/kylechui/nvim-surround) - A plugin for adding/changing/deleting surrounding delimiter pairs.
- [nvim-toggler](https://github.com/nguyenvukhang/nvim-toggler) - Invert text.
- [nvim-ufo](https://github.com/kevinhwang91/nvim-ufo) - Ultra fold with modern looking and performance boosting.
- [nvim-web-devicons](https://github.com/nvim-tree/nvim-web-devicons) - Show dev icons.
- [rainbow-delimiters](https://github.com/HiPhish/rainbow-delimiters.nvim) - Rainbow delimiters for Neovim with Treesitter.
- [ssr.nvim](https://github.com/cshuaimin/ssr.nvim) - Treesitter based structural search and replace plugin.
- [grug-far.nvim](https://github.com/MagicDuck/grug-far.nvim) - Find And Replace plugin for neovim.
- [statuscol.nvim](https://github.com/luukvbaal/statuscol.nvim) - Configurable 'statuscolumn' with builtin segments and click handlers.
- [toggleterm.nvim](https://github.com/akinsho/toggleterm.nvim) - A neovim lua plugin to help easily manage multiple terminal windows.
- [multicursor.nvim](https://github.com/jake-stewart/multicursor.nvim) - Multiple cursors.
- [which-key.nvim](https://github.com/folke/which-key.nvim) - Popup of keybindings.
- [yanky.nvim](https://github.com/gbprod/yanky.nvim) - Improved Yank and Put functionalities.
- [zen-mode.nvim](https://github.com/folke/zen-mode.nvim) - Distraction-free coding.
#### Treesitter
- [nvim-treesitter](https://github.com/nvim-treesitter/nvim-treesitter) - Neovim Treesitter configurations and abstraction layer.
- [nvim-treehopper](https://github.com/mfussenegger/nvim-treehopper) - Region selection using hints on the abstract syntax tree of a document.
- [nvim-treesitter-context](https://github.com/nvim-treesitter/nvim-treesitter-context) - Shows the context of the currently visible buffer contents.
- [nvim-treesitter-textobjects](https://github.com/nvim-treesitter/nvim-treesitter-textobjects) - Syntax aware text-objects, select, move, swap, and peek support.
- [ts-node-action](https://github.com/ckolkey/ts-node-action) - A framework for executing functional transformations on Tree-sitter nodes.
- [treewalker.nvim](https://github.com/aaronik/Treewalker.nvim?tab=readme-ov-file) - Moving around code in a syntax tree.
#### Telescope
- [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim) - An extendable fuzzy finder. Find files, Filter, Preview, Pick. All in one!
- [telescope-emoji.nvim](https://github.com/xiyaowong/telescope-emoji.nvim) - An extension for telescope.nvim that allows you to search emojis 😃.
- [telescope-file-browser.nvim](https://github.com/nvim-telescope/telescope-file-browser.nvim) - A file browser extension for telescope.nvim.
- [telescope-symbols.nvim](https://github.com/nvim-telescope/telescope-symbols.nvim) - Ability of picking symbols and insert them at point.
- [telescope-undo.nvim](https://github.com/debugloop/telescope-undo.nvim) - Visualize your undo tree and fuzzy-search changes in it.
- [telescope-zoxide](https://github.com/jvgrootveld/telescope-zoxide) - An extension for telescope.nvim that allows you operate [zoxide](https://github.com/ajeetdsouza/zoxide) within Neovim.
#### Comments
- [Comment.nvim](https://github.com/numToStr/Comment.nvim) - Smart and powerful comment plugin.
- [comment-box.nvim](https://github.com/LudoPinelli/comment-box.nvim) - Clarify and beautify your comments using boxes and lines.
- [todo-comments.nvim](https://github.com/folke/todo-comments.nvim) - Highlight, list and search todo comments in your projects.
#### Degub Adapter Protocol
- [nvim-dap](https://github.com/mfussenegger/nvim-dap) - Debug Adapter Protocol client implementation for Neovim.
- [nvim-dap-ui](https://github.com/rcarriga/nvim-dap-ui) - A UI for nvim-dap.
- [nvim-dap-vscode-js](https://github.com/mxsdev/nvim-dap-vscode-js) - nvim-dap adapter for vscode-js-debug.
#### Writing
- [vimtex](https://github.com/lervag/vimtex) - A modern Vim and Neovim filetype and syntax plugin for LaTeX files.
- [markdown-preview](https://github.com/iamcco/markdown-preview.nvim) - Preview markdown on your browser.
- [typst-preview.nvim](https://github.com/chomosuke/typst-preview.nvim) - markdown, Typst, latex, html(inline) & YAML previewer.
### Preinstalled Language Servers
| Language Server | Description | Programming Language |
| ------------------------------------------------------------------------------------ | ------------------------------------------------------- | -------------------- |
| [cssls](https://github.com/microsoft/vscode-css-languageservice) | Language services for CSS, LESS and SCSS | CSS |
| [emmet-language-server](https://github.com/olrtg/emmet-language-server) | A language server for emmet.io | HMLT - CSS |
| [html](https://github.com/microsoft/vscode-html-languageservice) | Language services for HTML | HTML |
| [jsonls](https://github.com/microsoft/vscode-json-languageservice) | JSON language service | JSON |
| [jdtls](https://github.com/eclipse/eclipse.jdt.ls) | Java language server | Java |
| [ts_ls](https://github.com/typescript-language-server/typescript-language-server) | TypeScript & JavaScript Language Server | JavaScript |
| [ltex](https://valentjn.github.io/ltex/) | Grammar checking of various markup languages | LaTex, Markdown |
| [texlab](https://github.com/latex-lsp/texlab) | Language Server Protocol for LaTeX | LaTex |
| [lua_ls](https://github.com/LuaLS/lua-language-server) | A language server that offers Lua language support | Lua |
| [ruff](https://github.com/astral-sh/ruff/) | Fast Python linter and code formatter, written in Rust | Python |
| [rust_analyzer](https://github.com/rust-lang/rust-analyzer) | Rust compiler | Rust |
| [tinymist](https://github.com/Myriad-Dreamin/tinymist) | Language server for Typst | Typst |
| [vue_ls](https://github.com/vuejs/language-tools) | High-performance Vue language tooling based-on Volar.js | Vue |
| [yamlls](https://github.com/redhat-developer/yaml-language-server) | Language Server for YAML Files | YAML |