Back to Lazyvim

README

README.md

15.15.05.3 KB
Original Source
<div align="center"> </div> <hr> <h4 align="center"> <a href="https://lazyvim.github.io/installation">Install</a> · <a href="https://lazyvim.github.io/configuration">Configure</a> · <a href="https://lazyvim.github.io">Docs</a> </h4> <div align="center"><p> <a href="https://github.com/LazyVim/LazyVim/releases/latest">
</a>
<a href="https://github.com/LazyVim/LazyVim/pulse">
  
</a>
<a href="https://github.com/LazyVim/LazyVim/blob/main/LICENSE">
  
</a>
<a href="https://github.com/LazyVim/LazyVim/stargazers">
  
</a>
<a href="https://github.com/LazyVim/LazyVim/issues">
  
</a>
<a href="https://github.com/LazyVim/LazyVim">
  
</a>
<a href="https://twitter.com/intent/follow?screen_name=folke">
  
</a>
</div>

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.

✨ 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.11.2 (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

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

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

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

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

    sh
    nvim
    

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

</details>

@dusty-phillips wrote a comprehensive 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

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

⚙️ Configuration

Refer to the docs