• Stars
    star
    100
  • Rank 338,943 (Top 7 %)
  • Language
    Lua
  • License
    MIT License
  • Created over 2 years ago
  • Updated 10 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Lazy AF neovim config, well structured in lua.

Neovim Config
Lua Neovim

Stars Issues Contributors Code size

R.I.P. Kentaro Miura sensei πŸ₯€

🎐 Intro

  • ⚑BLAZINGLY FAST startup time in ~20ms, with over 100 plugins. (Tested on Micron Crucial MX500)
  • Well structured in Lua.
  • Easy to customize.
  • Automized installation scripts, written in bash.
  • Use lazy.nvim as plugin manager.
  • Use delaytrain.nvim to train yourself into a better vimer, disable it if you want.
  • Aligned icons across every plugin!

🧱 Structure

${HOME}/.config/nvim

β”œβ”€β”€ after/
β”‚   └── ftplugin/                  filetype-based rules
β”œβ”€β”€ fonts/                         nerdfonts
β”œβ”€β”€ ftdetect/                      filetype detection
β”œβ”€β”€ scripts
β”‚   β”œβ”€β”€ nvim_up.sh                 script for upgrade to neovim nightly
β”‚   β”œβ”€β”€ setup_config.sh            script for installing dependencies for plugins
β”‚   └── update_config.sh           script for fetch new commits of this repo
β”œβ”€β”€ init.lua
β”œβ”€β”€ lua/
β”‚   β”œβ”€β”€ core/
β”‚   β”‚   β”œβ”€β”€ event.lua              event-based autocommands
β”‚   β”‚   β”œβ”€β”€ global.lua             global variables
β”‚   β”‚   β”œβ”€β”€ init.lua
β”‚   β”‚   β”œβ”€β”€ mapping.lua            basic keymaps
β”‚   β”‚   β”œβ”€β”€ options.lua            neovim options
β”‚   β”‚   └── pack.lua               custom packer wrapper
β”‚   β”œβ”€β”€ keymap/                    plugin-related keymaps
β”‚   β”œβ”€β”€ modules/                   plugin-configs
β”‚   β”‚   β”œβ”€β”€ completion/            nvim-cmp + LSP
β”‚   β”‚   β”‚   β”œβ”€β”€ plugins.lua
β”‚   β”‚   β”‚   └── server-settings/   settings for each LSP
β”‚   β”‚   β”œβ”€β”€ editor/
β”‚   β”‚   β”‚   └── plugins.lua
β”‚   β”‚   β”œβ”€β”€ lang
β”‚   β”‚   β”‚   └── plugins.lua
β”‚   β”‚   β”œβ”€β”€ tools/
β”‚   β”‚   β”‚   β”œβ”€β”€ dap/               DAP settings for each language
β”‚   β”‚   β”‚   └── plugins.lua
β”‚   β”‚   └── ui/
β”‚   β”‚       └── plugins.lua
β”‚   └── utils                      utility functions
β”‚       └── init.lua
β”œβ”€β”€ snippets/
β”‚   └── package.json               how `LuaSnip` reads snippets, vscode-style
β”œβ”€β”€ spell/                         custom spelling correction
└── stylua.toml                    stylua settings

NOTE: You can rename/create folders inside modules, but ALWAYS remember to add a plugins.lua in it to register your plugins.

βš™οΈ Configuration & Usage

🎩 Suit up

Follow Wiki: Prerequisite and get yourself a cup of coffee β˜•


πŸ§‘β€πŸ³ Cook it

Follow Wiki: Usage to spice it into your own flavor (WIP)


πŸ› οΈ Toolbox

Lists of Wiki: Installed Plugins (WIP)


πŸ€” FAQ

Refer to Wiki: FAQ (WIP)


⏱️ Startup Time

Tested with dstein64/vim-startuptime plugin.

Tested with rhysd/vim-startuptime, a CLI tool written in Go.

πŸ“Έ Script Screenshots

πŸͺ¨ Materials

Docs

YouTube channels

Awesomes

Trendy neovim news

πŸŽ‰ Acknowledgment