Neovim config for the lazy https://lazyvim.github.io/
Find a file
github-actions[bot] 501ff40768
chore(main): release 12.21.0 (#3827)
🤖 I have created a release *beep* *boop*
---


##
[12.21.0](https://github.com/LazyVim/LazyVim/compare/v12.20.1...v12.21.0)
(2024-06-29)


### Features

* **extras:** add `overseer.nvim` plugin extra
([#2421](https://github.com/LazyVim/LazyVim/issues/2421))
([683bf52](683bf52c02))
* **extras:** add chezmoi extra
([#2859](https://github.com/LazyVim/LazyVim/issues/2859))
([88f2541](88f25410e0))
* **extras:** switch to markdownlint-cli2
([#3843](https://github.com/LazyVim/LazyVim/issues/3843))
([f47d105](f47d105b80))
* **java:** enable Lombok support in jdtls
([#3852](https://github.com/LazyVim/LazyVim/issues/3852))
([0fede40](0fede4040b))


### Bug Fixes

* **bufremove:** fix `Cancel`
([#3834](https://github.com/LazyVim/LazyVim/issues/3834))
([87fe403](87fe403df6))
* **edgy:** improve edgy.lua bufferline offset logic
([#3794](https://github.com/LazyVim/LazyVim/issues/3794))
([566753b](566753b888))
* **extras:** don't load pkgs when parsing specs for LazyExtras
([3764735](3764735fb2))
* **gitsigns:** fix inconsistent signs
([#3830](https://github.com/LazyVim/LazyVim/issues/3830))
([44ed11c](44ed11c4f8))
* **lazygit:** fix browsing private git hostings
([#3833](https://github.com/LazyVim/LazyVim/issues/3833))
([b292a72](b292a721bf))
* **lint:** make prepend_args opt work when default args is empty
([#3828](https://github.com/LazyVim/LazyVim/issues/3828))
([ff1b44e](ff1b44e676))
* **neotest:** support adapter key on adapter for playwright
([#3824](https://github.com/LazyVim/LazyVim/issues/3824))
([e5e8d7a](e5e8d7a805))
* **pick:** set recurse_submodules to false when using `auto` picker.
Fixes [#3831](https://github.com/LazyVim/LazyVim/issues/3831), Closes
[#3835](https://github.com/LazyVim/LazyVim/issues/3835)
([d6429a5](d6429a5c8a))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-29 12:19:44 +02:00
.github chore(main): release 12.21.0 (#3827) 2024-06-29 12:19:44 +02:00
doc chore(build): auto-generate vimdoc 2024-06-29 06:33:57 +00:00
lua/lazyvim chore(main): release 12.21.0 (#3827) 2024-06-29 12:19:44 +02:00
queries/lua feat(lua): added LazyVim as a treesitter builtin 2024-05-15 15:31:08 +02:00
tests test: simplify tests 2024-06-29 08:33:07 +02:00
.gitignore ci: templates 2023-01-04 21:56:53 +01:00
.neoconf.json build: neoconf sumneko_lua => lua_ls 2023-03-04 10:41:52 +01:00
CHANGELOG.md chore(main): release 12.21.0 (#3827) 2024-06-29 12:19:44 +02:00
CONTRIBUTING.md docs: added experience to CONTRIBUTING 2024-06-10 23:26:07 +02:00
init.lua feat(init)!: disable init.lua and show a message on how to use LazyVim 2023-01-07 11:44:40 +01:00
LICENSE docs: added LICENSE 2023-01-01 09:48:09 +01:00
NEWS.md docs(news): fixed versions 2024-06-08 00:11:24 +02:00
README-CN.md docs: add link to LazyVim For Ambitious Developers to README-CN.md (#3644) 2024-06-14 18:04:53 +02:00
README-DE.md docs: readme should be unix format. Fixes #3247 2024-05-20 00:13:18 +02:00
README-JP.md docs: Added Japanese Translation of the README (#2232) 2024-06-05 15:22:50 +02:00
README-KO.md docs: add the Korean version of README (#2495) 2024-06-05 15:22:30 +02:00
README-PT.md docs(pt): add readme in portuguese (#1958) 2024-06-05 15:23:09 +02:00
README.md feat(docs): add link to LazyVim For Ambitious Developers to README (#3504) 2024-06-06 18:54:02 +02:00
stylua.toml build(format): sort requires 2023-10-09 11:34:23 +02:00


Install · Configure · Docs

LazyVim is a Neovim setup powered by 💤 lazy.nvim to make it easy to customize and extend your config. Rather than having to choose between starting from scratch or using a pre-made distro, LazyVim offers the best of both worlds - the flexibility to tweak your config as needed, along with the convenience of a pre-configured setup.

image

image

Features

  • 🔥 Transform your Neovim into a full-fledged IDE
  • 💤 Easily customize and extend your config with lazy.nvim
  • 🚀 Blazingly fast
  • 🧹 Sane default settings for options, autocmds, and keymaps
  • 📦 Comes with a wealth of plugins pre-configured and ready to use

Requirements

  • Neovim >= 0.9.0 (needs to be built with LuaJIT)
  • Git >= 2.19.0 (for partial clones support)
  • a Nerd Font (optional)
  • a C compiler for nvim-treesitter. See here

🚀 Getting Started

You can find a starter template for LazyVim here

Try it with Docker
docker run -w /root -it --rm alpine:edge sh -uelic '
  apk add git lazygit neovim ripgrep alpine-sdk --update
  git clone https://github.com/LazyVim/starter ~/.config/nvim
  cd ~/.config/nvim
  nvim
'
Install the LazyVim Starter
  • Make a backup of your current Neovim files:

    mv ~/.config/nvim ~/.config/nvim.bak
    mv ~/.local/share/nvim ~/.local/share/nvim.bak
    
  • Clone the starter

    git clone https://github.com/LazyVim/starter ~/.config/nvim
    
  • Remove the .git folder, so you can add it to your own repo later

    rm -rf ~/.config/nvim/.git
    
  • Start Neovim!

    nvim
    

    Refer to the comments in the files on how to customize LazyVim.


There's a great video created by @elijahmanor with a walkthrough to get started.

Watch the video

@dusty-phillips is working on a book called LazyVim for Ambitious Developers available for free online.

📂 File Structure

The files under config will be automatically loaded at the appropriate time, so you don't need to require those files manually. LazyVim comes with a set of default config files that will be loaded before your own. See here

You can add your custom plugin specs under lua/plugins/. All files there will be automatically loaded by lazy.nvim

~/.config/nvim
├── lua
│   ├── config
│   │   ├── autocmds.lua
│   │   ├── keymaps.lua
│   │   ├── lazy.lua
│   │   └── options.lua
│   └── plugins
│       ├── spec1.lua
│       ├── **
│       └── spec2.lua
└── init.lua

⚙️ Configuration

Refer to the docs