No description
Find a file
jasmine f6f92ec15e
refactor: reorganize keymaps into semantic namespaces
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)
2025-10-03 16:39:39 +08:00
config refactor: reorganize keymaps into semantic namespaces 2025-10-03 16:39:39 +08:00
flake.lock chore: bump inputs 2025-09-28 01:54:11 +08:00
flake.nix setup copilot inline suggestions + chat 2025-06-11 15:32:18 +08:00
LICENSE Initial commit 2024-08-02 21:53:20 +08:00
README.md Update README.md 2024-08-06 21:06:54 +08:00

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

References