Skip to content

cxzhou35/Awesome-neovim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Awesome-neovim

Here is my Neovim configuration. If you find it helpful, please giving me a star ⭐.

Stars

Warning

I used to rely on packer.nvim for this config, but now I prefer using lazy.nvim as my plugin manager because it has a faster startup speed and is more efficient. This branch will no longer be updated, you can find the latest config in the *lazy branch.

Table of contents

  1. 🏞️ Screenshots
  2. 📂 File Structure
  3. ⚡️ Requirements
    1. Optional Tools
  4. 🛠️ Installation
  5. ✨ Features
  6. ⌨️ Keymaps
  7. 📖 Wiki

🏞️ Screenshots

fig

📂 File Structure

The files under config will be automatically loaded at the appropriate time, so you don't need to require those files manually.

~/.config/nvim/
├── init.lua                # import neovim modules
├── after/plugin            # plugin configs
│   ├── alpha.rc.lua
│   ├── autopairs.rc.lua
│   └── ...
├── lua                     # core neovim configs
│   ├── colorscheme.lua
│   ├── highlights.lua
│   ├── keymaps.lua
│   ├── options.lua
│   ├── plugins.lua
│   └── utils.lua
├── res                     # user modified files
│   ├── battery
│   ├── vim-airline
│   └── ...
└── snippets                # code snippets
    └── friendly-snippets

⚡️ Requirements

  • Neovim: Neovim >= 0.8.0 (needs to be built with LuaJIT).

  • Git: Git >= 2.19.0 (for partial clones support).

  • Packer.nvim: A use-package inspired plugin manager for Neovim.

  • Nerd Fonts: Iconic font aggregator, collection, and patcher.

  • Python integration: To use python remote-plugins with Neovim.

    python3 -m pip install --user pynvim
    python3 -m pip install --user neovim
  • Node.js integration: To use javascript remote-plugins with Neovim.

    npm install -g neovim

Note

After you have installed all requirements, you can relaunch Neovim and type :checkhealth to see if your Neovim system is up-to-date.

Optional Tools

  • Btop: A monitor of resources.
  • Lazygit: Simple terminal UI for git commands.
  • Ranger: A VIM-inspired filemanager for the console.
  • Ripgrep: A line-oriented search tool.

🛠️ Installation

  1. Make a backup of your current Neovim files:

    # required
    mv ~/.config/nvim ~/.config/nvim.bak
    # optional but recommended
    mv ~/.local/share/nvim ~/.local/share/nvim.bak
    mv ~/.local/state/nvim ~/.local/state/nvim.bak
    mv ~/.cache/nvim ~/.cache/nvim.bak
  2. Clone the repo:

    git clone https://github.com/cxzhou35/Awesome-neovim.git ~/.config/nvim
    # remove git folder
    rm -rf ~/.config/nvim/.git
  3. Install Plugins: Relaunch Neovim and type :PackerInstall to install all plugins.

  4. Install LSP Server: Relaunch Neovim and type :LspInstall [server] to install corresponding LSP server.

    To learn more about LSP servers, you can click here.

  5. Install Treesitter: Relaunch Neovim and type :TSInstall [language] to install corresponding Treesitter supported-language.

    To learn more about Treesitter supported-languages, you can click here.

  6. Start Neovim!

✨ Features

  • Transform your Neovim into a full-fledged IDE
  • Easily customize and extend your config by yourself
  • Blazingly fast
  • Sane default settings for options, autocmds, and keymaps
  • Comes with a wealth of plugins pre-configured and ready to use

⌨️ Keymaps

📝 TODO

📖 Wiki

📝 TODO


Suggestions are always welcome! If you meet some problems, please contact Zicx or raise an issue.

Neovim is worth a try! 😺

About

My personal Neovim configuration.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published