66 lines
2.0 KiB
Lua
66 lines
2.0 KiB
Lua
return {
|
|
"folke/snacks.nvim",
|
|
opts = function(_, opts)
|
|
vim.tbl_deep_extend("force", opts, {
|
|
picker = {
|
|
smart = {
|
|
-- Remove the "recent" picker so we don't get things from other directories.
|
|
multi = { "buffers", "files" },
|
|
matcher = {
|
|
-- sort even when the search string is empty
|
|
sort_empty = true,
|
|
-- Enable frecensy for matchers. This puts more common files near the top
|
|
frecency = false,
|
|
-- Make sure files in the current directory are prioritized
|
|
cwd_bonus = true,
|
|
-- Give more weight to files that are more recent
|
|
history_bonus = true,
|
|
-- Give more weight to places where the filename is part of the match
|
|
filename_bonus = true,
|
|
},
|
|
},
|
|
sources = {
|
|
explorer = {
|
|
layout = { layout = { position = "right" } },
|
|
},
|
|
},
|
|
-- This only supports the Kitty graphics protocol.
|
|
-- See
|
|
-- https://github.com/folke/snacks.nvim/blob/main/docs/image.md
|
|
-- https://github.com/obsidian-nvim/obsidian.nvim/wiki/Images
|
|
-- image = {
|
|
-- resolve = function(path, src)
|
|
-- if require("obsidian.api").path_is_note(path) then
|
|
-- return require("obsidian.api").resolve_image_path(src)
|
|
-- end
|
|
-- end,
|
|
-- },
|
|
},
|
|
})
|
|
Snacks.toggle({
|
|
name = "Color Column",
|
|
get = function()
|
|
return vim.o.colorcolumn == "80"
|
|
end,
|
|
set = function(state)
|
|
if state then
|
|
vim.o.colorcolumn = "80"
|
|
vim.cmd([[highlight ColorColumn guibg=#202020]])
|
|
else
|
|
vim.o.colorcolumn = ""
|
|
vim.cmd([[highlight ColorColumn guibg=None]])
|
|
end
|
|
end,
|
|
}):map("<leader>ut", { desc = "Toggle Color Column" })
|
|
end,
|
|
keys = {
|
|
{
|
|
"<leader><space>",
|
|
function()
|
|
Snacks.picker.smart()
|
|
end,
|
|
desc = "Smart Find Files",
|
|
},
|
|
},
|
|
}
|