Skip to content

Latest commit

 

History

256 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Neovim Configuration

A modern, feature-rich Neovim setup designed for productivity across multiple languages and frameworks.

Prerequisites

Dependency Purpose
Neovim 0.9+ Core editor
Git Plugin management
Node.js LSP servers & tooling
Python 3 LSP servers (pyright, debugger)
Ripgrep Telescope fuzzy search
fd Fast file finding

Installation

# Backup any existing configuration
mv ~/.config/nvim ~/.config/nvim.backup
mv ~/.local/state/nvim ~/.local/state/nvim.backup
mv ~/.local/share/nvim ~/.local/share/nvim.backup

# Clone the repository
git clone https://github.com/Aadishx07/neovim.git ~/.config/nvim

# Start Neovim — lazy.nvim installs all plugins automatically
nvim

Uninstall

rm -rf ~/.config/nvim ~/.local/state/nvim ~/.local/share/nvim

Features

Editor

  • Autocompletionnvim-cmp with LSP, snippet, buffer, and path sources
  • Syntax Highlighting — Treesitter across C, Lua, Python, JS/TS, HTML, CSS, Java, Bash, Markdown, YAML, JSON
  • Formattingconform.nvim auto-formats on keybind; supports stylua, ruff, prettier, clang-format, shfmt, typstyle
  • LSP — Mason-managed servers for Lua, Python, JS/TS, Bash, C/C++, Java, HTML, CSS, Typst
  • Debuggingnvim-dap with UI, virtual text, and Python support (F5/F10/F11/F12)

UI

  • Theme — Onedark (default) and Tokyonight themes with transparency
  • Statuslinelualine.nvim showing mode, branch, diff, diagnostics, LSP clients, file path with icon
  • Bufferline — Slanted tab separators with LSP diagnostics, modified indicators, close icons
  • File Explorernvim-tree.lua (floating, Ctrl+f) and oil.nvim (-)
  • Indent Guidesmini.indentscope with red scope indicator

Navigation

  • Telescope — File find, live grep, buffers, help tags, git files, fuzzy buffer search
  • QuickfixCtrl+k/j for quickfix, Leader+k/j for location list

Git

  • Gitsigns — Inline git signs, blame, diff preview
  • Fugitive — Git command interface
  • Diffview — Side-by-side diff viewer

Extras

  • Obsidian — Vault integration with daily notes, wiki links, checkboxes, Telescope picker
  • Markdown Preview — Live preview toggle
  • Typst Preview — Live PDF preview for Typst files
  • AIgen.nvim (Ollama) and GitHub Copilot
  • Code Screenshots — Carbon-now.nvim (Leader+cn in visual mode)
  • Live Server — HTML live reload
  • Undotree — Visual undo history
  • Which-key — Keymap discovery popups

Key Mappings

Mode Key Action
n <Leader>ff Find files
n <Leader>fg Live grep
n <C-p> Git files
n <Leader>/ Fuzzy search buffer
n <Leader>f Format buffer
n <Tab> / <S-Tab> Cycle buffers
n <Leader>q Close buffer
n <C-f> Toggle file explorer
n - Oil file explorer
n <Leader>l Lazy plugin manager
n <Leader>m Mason LSP manager
n <F5> Debug continue
n <F10> Debug step over
n <Leader>u Undotree toggle

See lua/aadish/remap.lua and individual plugin configs for the full mapping list.

Project Structure

~/.config/nvim
├── init.lua                 # Entry point
├── lazy-lock.json           # Plugin version lockfile
└── lua/aadish/
    ├── init.lua             # Module loader + yank highlight
    ├── set.lua              # Editor options
    ├── remap.lua            # Global keymaps
    ├── lazy_init.lua        # lazy.nvim bootstrap
    └── lazy/                # Plugin configurations
        ├── ai.lua           # gen.nvim, copilot
        ├── lsp.lua          # Mason, LSP, nvim-cmp, luasnip
        ├── treesitter.lua   # Treesitter + autotag
        ├── telescope.lua    # Telescope + fzf
        ├── bufferline.lua   # Bufferline tabs
        ├── lualine.lua      # Statusline
        ├── dap.lua          # Debugger
        ├── format.lua       # conform.nvim
        ├── git.lua          # gitsigns, fugitive, diffview
        ├── colour.lua       # Themes
        └── ...              # Other plugins

About

customize neovim from myself

Resources

Stars

0 stars

Watchers

1 watching

Forks

Contributors

Languages