summaryrefslogtreecommitdiff
path: root/pkgs
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs')
-rw-r--r--pkgs/custom-neovim/config/init.lua1
-rw-r--r--pkgs/custom-neovim/config/lua/mappings.lua10
-rw-r--r--pkgs/custom-neovim/config/lua/plugins/incline.lua23
-rw-r--r--pkgs/custom-neovim/config/lua/plugins/mini/icons.lua2
-rw-r--r--pkgs/custom-neovim/config/lua/plugins/mini/tabline.lua6
-rw-r--r--pkgs/custom-neovim/design.md1
6 files changed, 34 insertions, 9 deletions
diff --git a/pkgs/custom-neovim/config/init.lua b/pkgs/custom-neovim/config/init.lua
index b8d05b9..9d21de2 100644
--- a/pkgs/custom-neovim/config/init.lua
+++ b/pkgs/custom-neovim/config/init.lua
@@ -13,6 +13,7 @@ require("completion")
require("lsp")
-- UI Plugins:
+require("plugins.mini.icons")
require("plugins.mini.tabline")
require("plugins.mini.clue")
require("plugins.mini.indentscope")
diff --git a/pkgs/custom-neovim/config/lua/mappings.lua b/pkgs/custom-neovim/config/lua/mappings.lua
index 9b2c188..569ad25 100644
--- a/pkgs/custom-neovim/config/lua/mappings.lua
+++ b/pkgs/custom-neovim/config/lua/mappings.lua
@@ -33,8 +33,18 @@ mapkey("n", "<leader>b", "Manage buffers", "")
mapkey("n", "<leader>bb", "Go to next buffer", ":bn<cr>")
mapkey("n", "<leader>bB", "Go to previous buffer", ":bp<cr>")
mapkey("n", "<leader>bd", "Delete current buffer", ":bd<cr>")
+mapkey("n", "<leader>bd", "Force delete current buffer", ":bd!<cr>")
mapkey("n", "<leader>bp", "Open buffer picker", ":lua Snacks.picker.buffers()<cr>")
mapkey("n", "<leader>bg", "Open buffer live grep picker", ":lua Snacks.picker.grep_buffers()<cr>")
+mapkey("n", "<leader>bc", "Clear invisible buffers", function ()
+ local bufinfos = vim.fn.getbufinfo({buflisted = 1})
+ vim.tbl_map(function (bufinfo)
+ if bufinfo.changed == 0 and (not bufinfo.windows or #bufinfo.windows == 0) then
+ print(('Deleting buffer %d : %s'):format(bufinfo.bufnr, bufinfo.name))
+ vim.api.nvim_buf_delete(bufinfo.bufnr, {force = false, unload = false})
+ end
+ end, bufinfos)
+end)
-- Windows
mapkey("n", "<leader>w", "Manage windows", "<C-w>")
diff --git a/pkgs/custom-neovim/config/lua/plugins/incline.lua b/pkgs/custom-neovim/config/lua/plugins/incline.lua
index cfdf281..b17a9c9 100644
--- a/pkgs/custom-neovim/config/lua/plugins/incline.lua
+++ b/pkgs/custom-neovim/config/lua/plugins/incline.lua
@@ -1,5 +1,22 @@
-require("incline").setup {
- hide = {
- -- only_win = true,
+local icons = require 'mini.icons'
+require('incline').setup {
+ window = {
+ padding = 0,
+ margin = { horizontal = 0 },
},
+ render = function(props)
+ local filename = vim.fn.fnamemodify(vim.api.nvim_buf_get_name(props.buf), ':t')
+ if filename == '' then
+ filename = '[No Name]'
+ end
+ local ft_icon, ft_hl = icons.get("file", filename)
+ local modified = vim.bo[props.buf].modified
+ return {
+ ft_icon and { ' ', ft_icon, ' ', gui = ft_hl } or '',
+ ' ',
+ { filename, gui = 'bold' },
+ ' ',
+ modified and '[+] ' or '',
+ }
+ end,
}
diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/icons.lua b/pkgs/custom-neovim/config/lua/plugins/mini/icons.lua
index 8faf487..fd2c5f9 100644
--- a/pkgs/custom-neovim/config/lua/plugins/mini/icons.lua
+++ b/pkgs/custom-neovim/config/lua/plugins/mini/icons.lua
@@ -1 +1,3 @@
require("mini.icons").setup()
+
+MiniIcons.mock_nvim_web_devicons()
diff --git a/pkgs/custom-neovim/config/lua/plugins/mini/tabline.lua b/pkgs/custom-neovim/config/lua/plugins/mini/tabline.lua
index 7eccb36..1ec6e7f 100644
--- a/pkgs/custom-neovim/config/lua/plugins/mini/tabline.lua
+++ b/pkgs/custom-neovim/config/lua/plugins/mini/tabline.lua
@@ -11,16 +11,10 @@ vim.api.nvim_create_autocmd({"Colorscheme", "VimEnter"}, {
callback = function()
-- Change colors.
- link_hl("MiniTablineHidden", "MiniStatuslineFilename")
- link_hl("MiniTablineVisible", "MiniStatuslineFilename")
- link_hl("MiniTablineVisible", "Italic")
- -- link_hl("MiniTablineCurrent", "MiniFilesCursorLine")
- link_hl("MiniTablineCurrent", "Bold")
-- Make modified buffers the same color.
link_hl("MiniTablineModifiedHidden", "MiniTablineHidden")
link_hl("MiniTablineModifiedVisible", "MiniTablineVisible")
- link_hl("MiniTablineCurrent", "MiniFilesCursorLine")
link_hl("MiniTablineModifiedCurrent", "MiniTablineCurrent")
end,
})
diff --git a/pkgs/custom-neovim/design.md b/pkgs/custom-neovim/design.md
index d186a8f..85cbf7c 100644
--- a/pkgs/custom-neovim/design.md
+++ b/pkgs/custom-neovim/design.md
@@ -16,6 +16,7 @@
- add quick window switch plugin
- switch to maple mono font
- add force buffer delete key
+- profile and optimize
## Todo if possible
- make splits automatically equalize when window resized