███╗ ██╗██╗ ██╗██╗███╗ ███╗ ██████╗ ██████╗ ███╗ ██╗███████╗██╗ ██████╗
████╗ ██║██║ ██║██║████╗ ████║ ██╔════╝██╔═══██╗████╗ ██║██╔════╝██║██╔════╝
██╔██╗ ██║██║ ██║██║██╔████╔██║ ██║ ██║ ██║██╔██╗ ██║█████╗ ██║██║ ███╗
██║╚██╗██║╚██╗ ██╔╝██║██║╚██╔╝██║ ██║ ██║ ██║██║╚██╗██║██╔══╝ ██║██║ ██║
██║ ╚████║ ╚████╔╝ ██║██║ ╚═╝ ██║ ╚██████╗╚██████╔╝██║ ╚████║██║ ██║╚██████╔╝
╚═╝ ╚═══╝ ╚═══╝ ╚═╝╚═╝ ╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═══╝╚═╝ ╚═╝ ╚═════╝
brew install --HEAD neovim tree-sitter luajit ripgrep
git clone --depth 1 https://github.com/wbthomason/packer.nvim\
~/.local/share/nvim/site/pack/packer/start/packer.nvim
git clone https://github.com/wbthomason/packer.nvim "$env:LOCALAPPDATA\nvim-data\site\pack\packer\start\packer.nvim"
├── README.md
├── init.lua # =========================> Root config file
├── lua # ==============================> Lua configs directory
│ └── rwxmad
│ ├── colors.lua #================> Colorscheme config
│ ├── plugins # ===================> Plugin configs
│ │ ├── bufferline.lua
│ │ ├── lsp.lua
│ │ ├── telescope.lua
│ │ └── treesitter.lua
│ ├── keymaps.lua # =============> Keymaps
│ └── options.lua # =============> General settings
└── stylua.toml
<Leader>
key set as,
<Escape>
from insert mode can be applied byjj
<leader>
w
- Write file<leader>
q
- Quit
Keymap | Description |
---|---|
<leader><space> |
Turn off search highlight |
<leader> ff |
Lists files in your current working directory |
<leader> fb |
Telescope file browser |
<leader> fg |
Search for a string in your current working directory and get results live as you type (respecting .gitignore) |
<leader> bg |
Search for a string in your current buffer |
<leader> g |
Jump to any word in buffer |
<C-n> |
Next item in completion list |
<C-p> |
Previous item in completion list |
<C-n> |
NvimTreeToggle |
<leader> n |
NvimTreeFindFile |
<A-d> |
Toggle terminal |
gcc |
Comment out a line |
gc |
Comment out the target of a motion |
gcap |
Comment out a paragraph |
Plugin | Description |
---|---|
packer.nvim | A use-package inspired plugin manager for Neovim |
plenary.nvim | Lua functions |
nui.nvim | UI Component Library for Neovim |
nvim-web-devicons | Lua fork of vim-web-devicons for neovim |
nvim-autopairs | Autopairs for neovim written by lua |
Comment.nvim | Smart and powerful comment plugin for neovim |
hop.nvim | Neovim motions on speed |
nvim-surround | Add/change/delete surrounding delimiter pairs with ease |
indent-blankline.nvim | Indent guides for Neovim |
neo-tree.nvim | Neovim plugin to manage the file system and other tree like structures |
todo-comments.nvim | Highlight, list and search todo comments in your projects |
nvim-treesitter | Nvim Treesitter configurations and abstraction layer |
nvim-treesitter-textobjects | Syntax aware text-objects, select, move, swap, and peek support |
nvim-treesitter-refactor | Refactor module for nvim-treesitter |
playground | Treesitter playground integrated into Neovim |
nvim-ts-autotag | Use treesitter to auto close and auto rename html tag |
nvim-ts-context-commentstring | Neovim treesitter plugin for setting the commentstring based on the cursor location in a file |
nvim-lspconfig | Quickstart configs for Nvim LSP |
none-ls.nvim | null-ls.nvim reloaded / Use Neovim as a language server to inject LSP diagnostics, code actions, and more via Lua. |
mason.nvim | Portable package manager for Neovim that runs everywhere Neovim runs. Easily install and manage LSP servers, DAP servers, linters, and formatters |
mason-lspconfig.nvim | Extension to mason.nvim that makes it easier to use lspconfig with mason.nvim |
mason-null-ls.nvim | mason-null-ls bridges mason.nvim with the null-ls plugin - making it easier to use both plugins together |
noice.nvim | Highly experimental plugin that completely replaces the UI for messages, cmdline and the popupmenu |
dashboard-nvim | Fancy Fastest Async Start Screen Plugin of Neovim |
lsp_signature.nvim | LSP signature hint as you type |
nvim-navic | Simple winbar/statusline plugin that shows your current code context |
lspsaga.nvim | A light-weight lsp plugin based on neovim's built-in lsp with a highly performant UI |
nvim-cmp | A completion plugin for neovim coded in Lua |
cmp-nvim-lsp | nvim-cmp source for neovim builtin LSP client |
cmp-buffer | nvim-cmp source for buffer words |
cmp-path | nvim-cmp source for path |
cmp_luasnip | luasnip completion source for nvim-cmp |
LuaSnip | Snippet Engine for Neovim written in Lua |
friendly-snippets | Set of preconfigured snippets for different languages |
telescope.nvim | Highly extendable fuzzy finder over lists |
telescope-fzf-native.nvim | FZF sorter for telescope written in C |
telescope-file-browser.nvim | File Browser extension for telescope.nvim |
telescope-media-files.nvim | Preview images, pdf, epub, video, and fonts from Neovim using Telescope. |
nvim-colorizer.lua | A high-performance color highlighter for Neovim which has no external dependencies! Written in performant Luajit |
glow.nvim | A markdown preview directly in your neovim |
markdown-preview.nvim | Preview markdown on your modern browser with synchronised scrolling |
lualine.nvim | A blazing fast and easy to configure neovim statusline plugin written in pure lua |
bufferline.nvim | A snazzy bufferline for Neovim |
gitsigns.nvim | Git integration for buffers |
vim-fugitive | Fugitive is the premier Vim plugin for Git |
typescript-tools.nvim | TypeScript integration NeoVim deserves |
rust-tools.nvim | Tools for better development in rust using neovim's builtin lsp |
crates.nvim | A neovim plugin that helps managing crates.io dependencies |
neodev.nvim | Neovim setup for init.lua and plugin development with full signature help, docs and completion for the nvim lua API. |
presence.nvim | Discord Rich Presence for Neovim |