IMPORTANT: Don’t blindly use my settings unless you know what that entails. Proceed at your own risk!
My inspirations for this project are devaslife and Josean Martinez with some extra plugins and keybinds of my personal choice.
- True Color Terminal Like (macOS) : iTerm2 - Terminal for macOS.
- True Color terminal Like (Linux) : Alacritty Terminal - Terminal for Linux written in Rust.
- True Color terminal Like (WSL) : Windows Terminal - Terminal for WSL.
- Neovim (Version 0.8 or Later)
- Nerd Font - I use Hack Nerd Font. Check the link for more nerd fonts.
- Ripgrep - For Telescope Fuzzy Finder.
- Tree-sitter - Treesitter cli for tree-sitter plugin.
If you're on mac, linux or WSL, you can install iTerm2 (macOS only), Neovim and Ripgrep with homebrew. Check out the homebrew on how to install.
brew install --cask iterm2
brew install neovim
brew install ripgrep
brew install tree-sitter
- Copy the nvim directory into your ~/.config.
- The leader prefix key is assigned to
space
. - To escape into normal mode use
esc
orjj
. - Open Telescope file explorer -
<leader>e
. - Open nvim-tree file explorer -
<leader>b
.
Enter :LspInstall
followed by the name of the server you want to install. Check neovim/nvim-lspconfig documentation.
Example: :LspInstall javascript
Or mason can be used to install lsp, dap etc.
Mason has been configured in such a way that it will automatically install lsp servers from the lsp config file - ~/.config/nvim/lua/user/plugins/lsp/lspconfig.lua
Enter :Mason
to install, update and delete lsp, dap etc.
For more check mason docs - mason.nvim
Enter :TSInstall
followed by the name of the language you want to install
Example: :TSInstall typescript
Check the file ~/.config/nvim/lua/user/plugins/treesitter.lua
to install language parsers with :TSUpdate
Run :PackerClean
to remove any disabled or unused plugins
Run :PackerSync
to update and clean plugins
Also manually saving the ~/.config/nvim/lua/user/plugins-setup.lua
file updates the plugins to it's latest version.
- wbthomason/packer - Popular plugin manager
- nvim-lua/plenary - Useful lua functions other plugins use
- bluz71/vim-nightfly-guicolors - Dark Colorscheme
- svrana/neosolarized.nvim - Neosolarized theme for Neovim
- tpope/vim-surround - manipulate surroundings with "ys", "ds", and "cs"
- inkarkat/vim-ReplaceWithRegister - replace things with register with "gr"
- numToStr/Comment.nvim - toggle comments with "gc"
- nvim-telescope/telescope-fzf-native.nvim - Dependency for better performance
- nvim-telescope/telescope.nvim - Fuzzy Finder
- hrsh7th/nvim-cmp - Completion plugin
- hrsh7th/cmp-buffer - Completion source for text in current buffer
- hrsh7th/cmp-path - Completion source for file system paths
- L3MON4D3/LuaSnip - Snippet engine
- rafamadriz/friendly-snippets - Useful snippets for different languages
- saadparwaiz1/cmp_luasnip - Completion source for snippet autocomplete
- williamboman/mason-lspconfig.nvim - Bridges gap b/w mason & lspconfig
- neovim/nvim-lspconfig - Easy way to configure lsp servers
- hrsh7th/cmp-nvim-lsp - Smart code autocompletion with lsp
- glepnir/lspsaga.nvim - Enhanced uis for lsp
- jose-elias-alvarez/typescript.nvim - Additional functionality for typescript server
- onsails/lspkind.nvim - Vs Code Like Icons for autocompletion
- jose-elias-alvarez/null-ls.nvim - Easy way to configure formatters & linters
- jayp0521/mason-null-ls.nvim - Bridges gap b/w mason & null-ls
- nvim-treesitter/nvim-treesitter - Treesitter configuration
- windwp/nvim-autopairs - Autoclose brackets, parens, quotes, etc...
- windwp/nvim-ts-autotag - Autoclose tags
- lewis6991/gitsigns.nvim - Show line modifications on left hand side
- NvChad/nvim-colorizer.lua - A high-performance color highlighter for Neovim which has no external dependencies!
- iamcco/markdown-preview.nvim - Preview markdown on your modern browser with synchronised scrolling and flexible configuration. Check out the instructions below or on GitHub page to set it up.
After setup open a .md file and use:MarkdownPreview
to see a live preview inside your default browser.
cd ~/.local/share/nvim/site/pack/packer/start/
cd markdown-preview.nvim
yarn install
yarn build
- akinsho/toggleterm.nvim - A neovim plugin to persist and toggle multiple terminals during an editing session.
- lukas-reineke/indent-blankline.nvim - This plugin adds indentation guides to all lines.
- andweeb/presence.nvim - This is to show your Neovim status inside Discord.
- Configure debugger for JavaScript and TypeScript with DAP.
MIT
This project follows the all-contributors specification. Contributions of any kind welcome!