No description
Restructure keybindings for improved discoverability and consistency with WezTerm/XMonad configurations. Separate keymaps from plugin configurations following single responsibility principle. Changes: - Create keymaps/ directory with semantic grouping: - general.nix: leader setup, page navigation - buffers.nix: buffer operations (bq, bQ, bl) - windows.nix: window operations (ws, wv, wq, wQ, wm) - find.nix: telescope find operations (ff, fg, fh, fc) - git.nix: unified git operations from gitsigns/fugitive/telescope - Adopt consistent q/Q pattern across containers: - bq/bQ for buffer quit (current/all others) - wq/wQ for window quit (current/all others) - Mirrors WezTerm's LEADER+p q / LEADER+t q pattern - Extract keymaps from plugin files: - telescope.nix: config only, keymaps moved to find.nix - fugitive.nix: config only, keymaps moved to git.nix - gitsigns.nix: config only, keymaps moved to git.nix - snacks.nix: config only, keymaps moved to buffers.nix - maximize.nix: config only, keymap moved to windows.nix - Remove smart-splits.nix (functionality replaced by native window ops) - Maintain navigation on dedicated modifiers (Ctrl+arrows/PageUp/PageDown) for consistency with WezTerm (ALT) and XMonad (Super) |
||
|---|---|---|
| config | ||
| flake.lock | ||
| flake.nix | ||
| LICENSE | ||
| README.md | ||
NixVim Configuration for Neovim
This repository contains my personal configuration for Neovim, managed with NixVim written in Nix.
Features
- Gruvbox Material
- Treesitter
- Telesope
- AutoCompletion
- Git Integration
- UI Enhancement
Installation
Intergration with NixOS/Home-Manager.
inputs = {
nixvim-config.url = "git+https://git.sajenim.dev/jasmine/nvim.nix.git";
};
{ inputs, system, ... }:
{
# NixOS
environment.systemPackages = [ inputs.nixvim-config.packages.${system}.default ];
# Home-Manager
home.packages = [ inputs.nixvim-config.packages.${system}.default ];
}
Build and Run
nix run git+https://git.sajenim.dev/jasmine/nvim.nix.git