Commit graph

23 commits

Author SHA1 Message Date
b34edc3a51 feat(vim): Smart quit popup
space q will close the application if all buffers are saved, otherwise a
dialog box shows up with the buffers that are not saved.
2025-08-21 01:57:32 -07:00
12e7bbc802 feat: more neovim things
space space -> pick a file in project
space b  -> pick a buffer
space '  -> pick a mark
space ?  -> search all keyboard shortcuts
space ff -> file fuzzy
space fg -> file grep
 (you can access regex search from within these two)
 (space fg then ctrl+q is helpful)

there are many other cute FzfLua menus, such as git_bcommits. but these
aren't useful enough on their own to warrent a dedicated key. you wont
remember them. but you can remember space tab to open the meta search to
search the search providers. i low-key want to use this one at load, so
i made it very easy to trigger. space tab bcom enter for example.
2025-08-19 01:01:36 -07:00
6cb28f1a2d feat: nix keybind system, delete snacks, add lazygit/fzf
i've had issues with snacks' file tree, to the point where the delete
operation would corrupt my editor state. the worst of which being a bug
that caused my entire project to get deleted when pressing 'd' on a
directory with corrupt state[1]. it's unacceptable, and i no longer
trust any of the 'snacks.nvim' project.

the neotree plugin is much nicer in my opinion, and what's great about
it is there is a easy command list by pressing '?' on the file view.

the big part of this commit is introducing 'vim.keybinds' (not to be
confused with the existing 'keymaps' array). we now have a centralized
system for defining keyboard shortcuts. in theory, user configs can
override my default keymap, but i think the current users will
appreciate these default settings. theres a handful of built-in keybinds
for activating the newly added fzf-lua plugin (replaces telescope and
snacks' pickers, losing no functionality).

as one bonus treat, leader g g for integrated lazygit!

[1]:
af60d1172f
2025-08-18 00:25:32 -07:00
ff5e23efc2 feat: "autofmt" code formatter
different codebases use different formatters. autofmt looks for project
configuration to pick the correct formatter, allowing an editor to
simply point to the script and have all ambiguities resolved.

this commit overhauls the conform configuration to set up autofmt
correctly, as well installing it with 'pkgs.autofmt'

closes #6
2025-08-17 20:43:47 -07:00
b0b81115da
Merge branch 'main' of paperclover.dev:nix/config 2025-08-02 14:38:29 -07:00
866298a4f1
updates 2025-08-02 14:36:50 -07:00
a58f16e18b
migrate to nvf v0.8 2025-08-01 20:07:24 -07:00
52af6ce142
merge 2025-07-22 16:20:50 -07:00
6f01e88f0c
Merge branch 'main' of paperclover.dev:nix/config 2025-07-22 16:20:01 -07:00
d7d5390a94
do something with discord 2025-07-22 16:17:26 -07:00
71b0ce756a nix: fix default opts not applying
previously mkDefault/mkOverride on vim.options would go before nvf's
defaults, which would basically make none of them apply. now it doesn't
use an override priority, at the cost that overriding any of these in a
user config will not work without mkForce.

also enable swapfiles, closes #1
2025-07-22 15:58:35 -07:00
512a87da53
fix silly typo :p 2025-07-05 21:11:55 -07:00
4c139f1a7a
moved nvim config options upstream 2025-07-05 21:04:38 -07:00
fe54e9b0c9 i am a meower and i forgot what i did 2025-07-05 17:08:16 -07:00
90fa812e6a Merge remote-tracking branch 'origin/nats' into chloe 2025-07-04 21:47:29 -07:00
ac6a001967 Merge paperclover.dev:clo/config into chloe 2025-07-04 21:29:59 -07:00
ab7dc1a697 more treats for chloe 2025-06-07 13:56:21 -07:00
b3d5a28141
removed stylix, updated nvf 2025-05-27 19:56:17 -07:00
926f53011d fun neovim things 2025-05-27 19:12:01 -07:00
6fea0a1f4e
nearly at parity with lua-based config 2025-05-21 10:44:59 -07:00
10453abfb1
commiting for posterity 2025-05-20 21:30:54 -07:00
69e9b167cb
add custom nvf stuff and merge 2025-05-19 21:42:58 -07:00
d9967da704 use nvf for vim configuration 2025-05-12 15:26:56 -07:00