summaryrefslogtreecommitdiff
path: root/pkgs
diff options
context:
space:
mode:
authortriethyl <triethylammonium@pm.me>2025-08-11 18:53:49 -0400
committertriethyl <triethylammonium@pm.me>2025-08-11 18:53:49 -0400
commite292b5bd5ba856925d7422f8d251970abafc59b5 (patch)
tree5b6901bb5779ffcdd02814e218588d06763820bd /pkgs
parente366181a3118cb69e60845258b60ac24029fc345 (diff)
neovim: automatic split resizing and cleanup
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/custom-neovim/config/init.lua1
-rw-r--r--pkgs/custom-neovim/config/lua/autocommands.lua18
-rw-r--r--pkgs/custom-neovim/config/lua/mappings.lua17
-rw-r--r--pkgs/custom-neovim/config/lua/options.lua4
-rw-r--r--pkgs/custom-neovim/config/lua/plugins/focus.lua4
-rw-r--r--pkgs/custom-neovim/default.nix1
-rw-r--r--pkgs/custom-neovim/design.md6
7 files changed, 31 insertions, 20 deletions
diff --git a/pkgs/custom-neovim/config/init.lua b/pkgs/custom-neovim/config/init.lua
index 3a0cf6b..c3df542 100644
--- a/pkgs/custom-neovim/config/init.lua
+++ b/pkgs/custom-neovim/config/init.lua
@@ -17,7 +17,6 @@ require("plugins.mini.tabline")
require("plugins.mini.clue")
require("plugins.mini.indentscope")
require("plugins.fidget")
-require("plugins.mini.cursorword")
require("plugins.treesitter")
require("plugins.mini.files")
require("plugins.dropbar")
diff --git a/pkgs/custom-neovim/config/lua/autocommands.lua b/pkgs/custom-neovim/config/lua/autocommands.lua
index a09c5dd..c452696 100644
--- a/pkgs/custom-neovim/config/lua/autocommands.lua
+++ b/pkgs/custom-neovim/config/lua/autocommands.lua
@@ -1,15 +1,9 @@
-- Autocommands
--- start terminal in insert mode
--- vim.api.nvim_create_autocmd("TermOpen", {
--- callback = function()
--- vim.cmd "startinsert!"
--- end,
--- })
-
-- Equalize Splits when resized
--- vim.api.nvim_create_autocmd({"VimResized", "WinEnter"}, {
--- callback = function()
--- vim.cmd.wincmd("=")
--- end,
--- })
+vim.api.nvim_create_autocmd({"VimResized"}, {
+ callback = function()
+ -- vim.cmd.wincmd("=")
+ vim.cmd("FocusAutoresize")
+ end,
+})
diff --git a/pkgs/custom-neovim/config/lua/mappings.lua b/pkgs/custom-neovim/config/lua/mappings.lua
index 8648ff3..275ff27 100644
--- a/pkgs/custom-neovim/config/lua/mappings.lua
+++ b/pkgs/custom-neovim/config/lua/mappings.lua
@@ -38,6 +38,10 @@ mapkey("n", "<leader>bg", "Open buffer live grep picker", ":lua Snacks.picker.gr
-- Windows
mapkey("n", "<leader>w", "Manage windows", "<C-w>")
+mapkey("n", "<C-w>S", "Open new horizontally", ":new<cr>")
+mapkey("n", "<leader>wS", "Open new horizontally", ":new<cr>")
+mapkey("n", "<C-w>V", "Open new vertically", ":vnew<cr>")
+mapkey("n", "<leader>wV", "Open new vertically", ":vnew<cr>")
-- Sessions
mapkey("n", "<leader>m", "Manage sessions", "")
@@ -88,8 +92,11 @@ mapkey("n", "<leader>Q", "Exit neovim", function()
vim.cmd("qa!")
end)
--- Learn hjkl.
--- mapkey({"n", "v"}, "<left>", "Correct the keypress", function() print("Try pressing h instead.") end)
--- mapkey({"n", "v"}, "<down>", "Correct the keypress", function() print("Try pressing j instead.") end)
--- mapkey({"n", "v"}, "<up>", "Correct the keypress", function() print("Try pressing k instead.") end)
--- mapkey({"n", "v"}, "<right>", "Correct the keypress", function() print("Try pressing l instead.") end)
+-- Dimming
+mapkey("n", "<leader>u", "Toggle scope dimming", function()
+ if Snacks.dim.enabled then
+ Snacks.dim.disable()
+ else
+ Snacks.dim.enable()
+ end
+end)
diff --git a/pkgs/custom-neovim/config/lua/options.lua b/pkgs/custom-neovim/config/lua/options.lua
index 296aea3..3899c17 100644
--- a/pkgs/custom-neovim/config/lua/options.lua
+++ b/pkgs/custom-neovim/config/lua/options.lua
@@ -12,8 +12,8 @@ vim.o.number = true -- set absolute numbered lines
vim.o.scrolloff = 4 -- minimal number of screen lines to keep above and below the cursor
vim.o.signcolumn = "yes" -- always show the sign column, otherwise it would shift the text each time
vim.o.clipboard = "unnamedplus" -- use system clipboard
-vim.o.equalalways = true -- equalize splits
-vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal"
+-- vim.o.equalalways = true -- equalize splits
+vim.o.sessionoptions = "blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,globals"
-- Split Behavior
vim.o.splitright = true
diff --git a/pkgs/custom-neovim/config/lua/plugins/focus.lua b/pkgs/custom-neovim/config/lua/plugins/focus.lua
index f7afcd5..915603e 100644
--- a/pkgs/custom-neovim/config/lua/plugins/focus.lua
+++ b/pkgs/custom-neovim/config/lua/plugins/focus.lua
@@ -3,4 +3,8 @@ require("focus").setup {
split = {
bufnew = true,
},
+ ui = {
+ winhighlight = true, -- Highlight focused and unfocused windows
+ signcolumn = false, -- Signcolumn on all windows
+ },
}
diff --git a/pkgs/custom-neovim/default.nix b/pkgs/custom-neovim/default.nix
index 3ed6aee..78d09c9 100644
--- a/pkgs/custom-neovim/default.nix
+++ b/pkgs/custom-neovim/default.nix
@@ -27,6 +27,7 @@ in
comment-nvim
fidget-nvim
focus-nvim
+ render-markdown-nvim
# Completion
nvim-cmp
diff --git a/pkgs/custom-neovim/design.md b/pkgs/custom-neovim/design.md
index b54e944..9e9f86f 100644
--- a/pkgs/custom-neovim/design.md
+++ b/pkgs/custom-neovim/design.md
@@ -12,6 +12,12 @@
- find dropbar load autocommand and modify to work on winenter to prevent no dropbar when splitting
- make lazyvim launch with default shell bash
+- make completion not work in pickers (namu, snacks)
+- make mini scope not work in terminal or help windows
+- make mini tabline compatible with more colorschemes
+- make custom carbon colorscheme
+- add quick window switch plugin
+- switch to maple mono font
## Todo if possible
- make splits automatically equalize when window resized