my neovim lua conf
Go to file
2021-07-28 18:45:41 +05:30
.github Delete FUNDING.yml 2021-07-05 15:25:11 +05:30
lua fix mapping error 2021-07-28 14:42:55 +10:00
init.lua Do not load packer on startup 2021-07-23 21:58:14 +05:30
install.sh Merge branch 'main' into patch-1 2021-07-27 16:30:24 -05:00
LICENSE Initial commit 2021-03-07 20:03:18 +05:30
README.md Update README.md 2021-07-18 23:35:25 +05:30

NvChad

Lua






Very Very Useful lua plugins used in my config

Lspkind-nvim

This tiny plugin adds vscode-like pictograms to neovim built-in lsp completion items :


Nvim-tree.lua

fast file tree :


Telescope-nvim

A fuzzy file finder, picker, sorter, previewer and much more:


Indent-blankline.nvim

adds indentline :

Galaxyline

fastest statusline plugin I've used so far:


Nvim-bufferline.lua

As a top tabline like thing which lets me handle tabs and buffers like switching , sorting and closing them etc.

Nvim-web-devicons

Lua fork of vim devicons which lets me change icons of filetypes

Nvim-treesitter

Better syntax highlighting for programming languages ( my config just has html,css,js support for now ).

without / with Treesitter :

Credits

Elianiva helped me with neovim lua related issues many times, NvChad wouldnt exist without his help at all!

Features

  • File navigation with Nvimtree
  • Using plugins that are mouse friendly
  • Beautiful inbuilt themes
  • lazy loading 100% of plugins
  • managing tabs , buffers with bufferline
  • autosave
  • icons on nvimtree , telescope , bufferline/statusline and almost everywhere! with nvim-web-devicons
  • minimal status line ( galaxyline)
  • gitsigns (colored bars for git in my config)
  • nvim-lspconfig for nvim-lsp configuration
  • lspInstall for installing lsp servers easily
  • nvim-compe for autocompletion
  • lspkind to show pictograms on autocompletion items
  • telescope for file finding , picking , previewing (files and even images)
  • nvim-treesitter for syntax highlighting
  • nvim-autopairs for autolosing braces and stuffs
  • neoformat for prettifying / formatting code
  • packer.nvim as package manager
  • indent-blankline.Nvim for indentlines
  • smooth scrolling
  • luasnip for snippet plugin and snip support from VSCode through vsnip supporting custom and predefined snips (friendly-snippets)
  • Distraction free modes ( modes in which statusline , tabline etc stuff get disabled so its just the text visible in the buffer similar to goyo.vim)
  • Code formatting / prettifying
  • gitsigns for git diffs

Requirements

  • neovim 0.5
  • A terminal that supports nerdfonts
  • Set terminal's inner padding to 0.

Wiki

Bloat

  • To all those who think this is probably bloated , sure it is . Bloat means different to everyone . NvChad has like 30 ~ plugins but that doesnt mean those plugins are compromsing neovim's speed, snappiness or making it slow. No matter how many plugins I'd add on nvchad , it wouldnt compromise speed / snappiness / make it slow or whatever since it uses packer.nvim as plugin manager , packer.nvim lets you lazy load plugins i.e loading plugins on certain events , mappings , sequentially loading them etc so loading them only when needed , I have lazy loaded all the plugins so most plugins arent loaded by default , hence not affecting neovim's startup/launch time.
  • The below image shows startuptime for :

  • NvChad Without lazy loading vs with lazy loading

  • Default neovim with startuptime.vim plugin vs NvChad

  • NvChad on my other system with ssd

(The above 2 images show tests from my old pentium system so ofc the startuptime will be a lot more lesser for you )

TODO

It would be nice if NvChad focuses on existing plugins and config before adding new things , some plugins like whichkey , telescope , treesitter still have basic configs! Also adding new features that'd make NvChad slow or its startuptime slow wouldnt be encouraged , if that feature's really needed then It'll be mentioned in the wiki with its config.

  • Debloat the config
  • Add more themes.
  • Add a theme switcher.
  • Preview shortcuts in the form of a pretty cheatsheet
  • Add a global configuration so it doesnt get hard to update :c

Contribute

  • PR's are always welcomed however NvChad aims to be less bloated and suckless. So PR's regarding existing plugin's enhancement , bug fixes are more encouraged.
  • PR's regarding adding new plugins and their configs must be given some thought since NvChad aims to have a minimal config and meant to be used as a "base" neovim config so it will have only a set of important plugins. So adding more and more plugins, making NvChad bloated + slow wont help!.
  • NvChad isnt a Framework. NvChad wont keep adding more and more features ( adding new plugins most likely) as requested , no spoonfeeding!! If you think the plugin you want to be added is very useful and many NvChaders would find it useful, then such feature's PR is welcomed!
  • But adding specific features like adding config for https://github.com/wakatime/vim-wakatime etc will be added in this https://github.com/siduck76/NvChad/wiki/Chad-user-configs. This lets the user select the things only they want ( from extra configs ) .

💝 Support

If you enjoy using NvChad and would like to show your appreciation, you may want to tip me here.

It is never required but always appreciated.

undefined undefined undefined