Home

Awesome

<h1 align="center"> Neovim Config <br> <a href="https://www.lua.org/"> <img alt="Lua" src="https://img.shields.io/badge/lua-%232C2D72.svg?style=for-the-badge&logo=lua&logoColor=white"> </a> <a href="https://github.com/neovim/neovim"> <img alt="Neovim" src="https://img.shields.io/badge/NeoVim-%2357A143.svg?&style=for-the-badge&logo=neovim&logoColor=white"> </a> </h1> <p align="center"> <a href="https://github.com/CharlesChiuGit/nvimdots/stargazers"> <img alt="Stars" src="https://img.shields.io/github/stars/CharlesChiuGit/nvimdots?colorA=363A4F&colorB=B7BDF8&logo=adafruit&logoColor=D9E0EE&style=for-the-badge"> </a> <a href="https://github.com/CharlesChiuGit/nvimdots/issues"> <img alt="Issues" src="https://img.shields.io/github/issues-raw/CharlesChiuGit/nvimdots?colorA=363A4f&colorB=F5A97F&logo=github&logoColor=D9E0EE&style=for-the-badge"> </a> <a href="https://github.com/CharlesChiuGit/nvimdots/contributors"> <img alt="Contributors" src="https://img.shields.io/github/contributors/CharlesChiuGit/nvimdots?colorA=363A4F&colorB=B5E8E0&logo=git&logoColor=D9E0EE&style=for-the-badge"> </a> <img alt="Code size" src="https://img.shields.io/github/languages/code-size/CharlesChiuGit/nvimdots?colorA=363A4F&colorB=DDB6F2&logo=gitlfs&logoColor=D9E0EE&style=for-the-badge"> </p> <p align="center"> <img src="https://user-images.githubusercontent.com/32497323/217737320-786f9135-f71f-4cec-8322-f6da719c97fd.png" width = "90%" /> </p> <div align="center"> <h6> R.I.P. Kentaro Miura sensei πŸ₯€ </h6> </div>

🎐 Intro

🧱 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

<h3 align="center"> 🎩 Suit up </h3> <p align="center"> <p align="center">Follow <a href="https://github.com/CharlesChiuGit/nvimdots/wiki/Prerequisite" rel="nofollow">Wiki: Prerequisite</a> and get yourself a cup of coffee β˜•</p> <br> <h3 align="center"> πŸ§‘β€πŸ³ Cook it </h3> <p align="center">Follow <a href="https://github.com/CharlesChiuGit/nvimdots/wiki/Usage" rel="nofollow">Wiki: Usage</a> to spice it into your own flavor (WIP)</p> <br> <h3 align="center"> πŸ› οΈ Toolbox </h3> <p align="center">Lists of <a href="https://github.com/CharlesChiuGit/nvimdots/wiki/Plugins" rel="nofollow">Wiki: Installed Plugins (WIP)</a></p> <br> <h3 align="center"> πŸ€” FAQ </h3> <p align="center">Refer to <a href="https://github.com/CharlesChiuGit/nvimdots/wiki/FAQ" rel="nofollow">Wiki: FAQ (WIP)</a></p> <br> <h3 align="center"> ⏱️ Startup Time </h3> <p align="center"> <img src="https://raw.githubusercontent.com/CharlesChiuGit/nvimdots/main/.github/images/startuptime.png" width = "70%" /> </p>

Tested with dstein64/vim-startuptime plugin.

<p align="center"> <img src="https://raw.githubusercontent.com/CharlesChiuGit/nvimdots/main/.github/images/vim-startup.png" width = "60%" /> </p>

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

<h3 align="center"> πŸ“Έ Script Screenshots </h3> <p align="center"> <img src="https://user-images.githubusercontent.com/32497323/203708095-30ac0243-dcdb-432a-8aff-4d10091422d2.png" width = "85%" /> </p> <p align="center"> <img src="https://user-images.githubusercontent.com/32497323/203711193-e6bf484c-ba25-4ed7-8e31-afe55442a6ac.png" width = "85%" /> </p>

πŸͺ¨ Materials

Docs

YouTube channels

Awesomes

Trendy neovim news

πŸŽ‰ Acknowledgment