Skip to content

Latest commit

 

History

1 Commit

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 

Repository files navigation

Neovim Configuration

A clean, modern Neovim configuration focused on productivity and development workflow.

✨ Features

  • LSP Support: Full language server protocol integration with Mason
  • Fuzzy Finding: Telescope for file search and live grep
  • Syntax Highlighting: Enhanced with Treesitter
  • Code Completion: Intelligent autocompletion with nvim-cmp
  • Git Integration: Gitsigns for git status + LazyGit (jesseduffield/lazygit) via ToggleTerm
  • Docker Management: LazyDocker (jesseduffield/lazydocker) via ToggleTerm
  • Terminal Integration: ToggleTerm for floating terminal access
  • Beautiful UI: Catppuccin theme with Lualine status bar
  • File Explorer: Neo-tree for project navigation
  • Startup Screen: Alpha-nvim dashboard

🛠️ Supported Languages

  • Lua (with Neovim API support)
  • YAML (with Kubernetes, Docker Compose, ArgoCD schemas)
  • Terraform/HCL
  • Docker
  • JavaScript/TypeScript
  • Python
  • Go, Rust, HTML, CSS
  • Markdown

⌨️ Key Bindings

Navigation

  • <leader>ff - Find files
  • <leader>fg - Live grep search
  • <leader>fb - Find buffers
  • <Ctrl-p> - Quick file search
  • <Ctrl-n> - Toggle file explorer

LSP Actions

  • K - Hover documentation
  • gd - Go to definition
  • gr - Find references
  • <leader>ca - Code actions (via Telescope UI)
  • <leader>rn - Rename symbol
  • <leader>li - LSP info
  • <leader>ld - Toggle diagnostics

Git & Docker

  • <leader>lg - LazyGit (jesseduffield/lazygit)
  • <leader>lz - LazyDocker (jesseduffield/lazydocker)
  • <C-\> - Toggle terminal

Utilities

  • <leader>fi - Fix indentation to 2 spaces
  • gcc - Comment/uncomment line
  • gc - Comment/uncomment visual selection

📁 Project Structure

lua/
├── plugins/          # Plugin configurations
│   ├── alpha.lua     # Startup dashboard
│   ├── colorscheme.lua # Theme configuration
│   ├── comment.lua   # Comment utilities
│   ├── completion.lua # Code completion
│   ├── gitsigns.lua  # Git integration
│   ├── lazygit.lua   # LazyGit & LazyDocker via ToggleTerm
│   ├── lsp.lua       # Language server setup
│   ├── lualine.lua   # Status line
│   ├── neo-tree.lua  # File explorer
│   ├── telescope.lua # Fuzzy finder
│   └── treesitter.lua # Syntax highlighting
└── vim-options.lua   # Editor settings
init.lua              # Main configuration entry

📦 Plugin Manager

This configuration uses lazy.nvim for plugin management with automatic installation and lazy loading.

🔧 Installation

  1. Backup existing config:

    mv ~/.config/nvim ~/.config/nvim.backup
  2. Clone this config:

    git clone <your-repo> ~/.config/nvim
  3. Install ripgrep (required for live grep):

    # Windows (via winget)
    winget install BurntSushi.ripgrep.MSVC
    
    # macOS (via Homebrew)
    brew install ripgrep
    
    # Linux (Ubuntu/Debian)
    sudo apt install ripgrep
  4. Launch Neovim:

    nvim

    Plugins will install automatically on first launch.

🎨 Customization

  • Theme: Modify lua/plugins/colorscheme.lua
  • Keybindings: Update individual plugin configs
  • LSP Servers: Edit ensure_installed in lua/plugins/lsp.lua
  • File Types: Add to Treesitter config in lua/plugins/treesitter.lua

🚀 Quick Start

  1. Open Neovim - you'll see the Alpha dashboard
  2. Press f to find files or g to search text
  3. Use <leader>ca on any code for quick actions
  4. Press <Ctrl-n> to explore your project structure

Enjoy your supercharged Neovim setup! 🎉

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages