Skip to content

SttavoS/MateVim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

114 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo

GitHub Tag License: MIT

Neovim personal config based on LazyVim.

Designed for full-stack development with PHP, Vue.js, Go and SQL.

Índice

Background

MateVim is a modular config where each file in lua/plugins/ returns a lazy.nvim spec, and lua/plugins/lang/ extends shared opts tables per language (LSP, formatters, linters, DAP). Highlights:

Dashboard

  • LSP via mason + nvim-lspconfig (PHP, TS/JS/Vue, CSS, Lua, Go, SQL).
  • Completion with blink.cmp + LuaSnip.
  • Format on-save with conform.nvim and linting with nvim-lint.
  • Debug with nvim-dap and tests with neotest.
  • Database UI (vim-dadbod-ui) and HTTP client (kulala.nvim).
  • UI with snacks.nvim, noice, bufferline, lualine, and which-key.
  • Colorscheme: gruvbox

Requirements

  • Neovim 0.10+
  • Git
  • A NerfFont (needed to display some icons)
  • tree-sitter-cli and a C complier (gcc/clang)
  • lazygit
  • ripgrep and fd for searching
  • a terminal that support true color, I recommend ghostty for this

Instalation

Make a backup of your existing configs

mv ~/.config/nvim ~/.config/nvim.bak 2>/dev/null

Clone the repo, but I strongly recommend that you fork it.

git clone https://github.com/SttavoS/MateVim ~/.config/nvim

Remove the .git folder, not necessary if you make the fork.

rm -rf ~/.config/nvim/.git

Run neovim for the first time to download dependencies.

nvim

You can run :checkhealth to verify that everything is working.

Usage

  • Use VimBeGood to learn the vim motions.
  • Complete keybind reference in docs/keybinds.md.

Contributing

Personal configs, but PRs are appreciated.

License

MIT © Gustavo Schneider

About

My NeoVim configs

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages