Skip to content

m0ddr/nvim

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Neovim Configs

This is my personal attempt at a minimal and performance-focused Neovim setup built from scratch with sensible defaults and essential plugins for modern development. As I'm primarily a Python dev, this configuration is primarily optimized for Python development with LSP support for pyright (type checking) and ruff (linting/formatting), plus Lua support for Neovim configuration.

I currently manage my plugins using lazy.nvim.

Keybindings

Key Action
<Space> Leader key
<leader>li LSP hover info
<leader>ld Go to definition
<leader>la Code actions
<leader>lf Format file
<leader>ff Find files
<leader>fg Live grep
<leader>fr Recent files
<leader>fh Help tags
<leader>gb Toggle git blame
<leader>gp Preview git hunk
<leader>gs Stage git hunk
]c / [c Next/previous git hunk
<Tab> / <Shift-Tab> Next/previous buffer
<leader>x Delete buffer
<leader>n New buffer
]d / [d Next/previous diagnostic
<leader>q Open diagnostic quickfix

Install

Pre-requisites

  • Neovim 0.9+

  • Nerd Font as your terminal font.

    • Make sure the nerd font you set doesn't end with Mono to prevent small icons.
      Example : JetbrainsMono Nerd Font and not JetbrainsMono Nerd Font Mono
  • Ripgrep is required for grep searching with Telescope (OPTIONAL).

Run:

[ -d ~/.config/nvim ] && mv ~/.config/nvim ~/.config/nvim.backup &&
git clone https://github.com/m0ddr/nvim ~/.config/nvim

This will create a backup of any pre-existing nvim config

Customization

  • Plugins: Add new plugins in lua/plugins/
  • Keymaps: Modify lua/mappings.lua
  • Options: Adjust lua/options.lua
  • LSP: Configure servers in lua/plugins/lsp-config.lua

About

My personal Neovim configuration

Topics

Resources

Stars

Watchers

Forks

Languages