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)
This commit is contained in:
♥ Minnie ♥ 2025-10-03 16:39:39 +08:00
parent e9e5bb07fb
commit f6f92ec15e
Signed by: jasmine
GPG key ID: 8563E358D4E8040E
12 changed files with 438 additions and 324 deletions

View file

@ -2,9 +2,15 @@
imports = [
# General Configuration
./autocmds.nix
./keymaps.nix
./options.nix
# Keymaps
./keymaps/general.nix
./keymaps/buffers.nix
./keymaps/windows.nix
./keymaps/find.nix
./keymaps/git.nix
# Themes & Appearance
./plugins/themes/default.nix
@ -22,8 +28,8 @@
# Editor Enhancements
./plugins/editor/commentary.nix
./plugins/editor/harpoon.nix
./plugins/editor/maximize.nix
./plugins/editor/sessions.nix
./plugins/editor/smart-splits.nix
./plugins/editor/surround.nix
./plugins/editor/treesitter.nix