80 lines
2.7 KiB
Lua
80 lines
2.7 KiB
Lua
return {
|
|
{
|
|
"nvim-neo-tree/neo-tree.nvim",
|
|
branch = "v3.x",
|
|
dependencies = {
|
|
"nvim-lua/plenary.nvim",
|
|
"MunifTanjim/nui.nvim",
|
|
"nvim-tree/nvim-web-devicons",
|
|
},
|
|
keys = {
|
|
{
|
|
"<leader>t",
|
|
function()
|
|
require("neo-tree.command").execute({
|
|
toggle = true,
|
|
source = "filesystem",
|
|
position = "left",
|
|
})
|
|
end,
|
|
desc = "Buffers (root dir)",
|
|
},
|
|
},
|
|
config = function()
|
|
-- automatically close file tree if file is selected
|
|
require("neo-tree").setup({
|
|
close_if_last_window = true,
|
|
event_handlers = {
|
|
{
|
|
event = "file_open_requested",
|
|
handler = function()
|
|
require("neo-tree.command").execute({ action = "close" })
|
|
end,
|
|
},
|
|
-- makes it so quitting inside buffer quits all buffers
|
|
{
|
|
event = "neo_tree_buffer_enter",
|
|
handler = function()
|
|
vim.cmd("cabbrev <buffer> q qall")
|
|
end,
|
|
},
|
|
},
|
|
})
|
|
|
|
-- auto open file tree on empty buffer or directory
|
|
vim.api.nvim_create_autocmd("VimEnter", {
|
|
callback = function(data)
|
|
local is_directory = vim.fn.isdirectory(data.file) == 1
|
|
local no_name = data.file == "" and vim.bo[data.buf].buftype == ""
|
|
|
|
if is_directory or no_name then
|
|
require("neo-tree.command").execute({
|
|
action = "focus",
|
|
source = "filesystem",
|
|
position = "left",
|
|
})
|
|
end
|
|
end,
|
|
})
|
|
end,
|
|
lazy = false, -- neo-tree lazy loads itself
|
|
},
|
|
{
|
|
"nvim-telescope/telescope.nvim",
|
|
branch = "0.1.x",
|
|
event = "VimEnter",
|
|
dependencies = { "nvim-lua/plenary.nvim"},
|
|
opts = {
|
|
defaults = {
|
|
layout_config = {
|
|
horizontal = { width = 0.9 }
|
|
},
|
|
},
|
|
},
|
|
keys = {
|
|
{ "<leader>f", "<cmd>Telescope find_files<cr>", desc = "Find files" },
|
|
{ "<leader>s", "<cmd>Telescope spell_suggest<cr>", desc = "Spelling suggestions" },
|
|
},
|
|
}
|
|
}
|