Added code to update nvim-tree active file when changing open buffer

* nvim-tree will move to the current active buffer when changing files
* Updated git-blame highlight group to "Question" instead of the default
"Comment"
pull/1315/head
Rakshit Sinha 5 months ago
parent 0fa651a86d
commit eb6349e63c

@ -15,5 +15,6 @@ return {
virtual_text_column = 80, -- virtual text start column, check Start virtual text at column section for more options
message_when_not_committed = "Not committed yet",
display_virtual_text = 1,
highlight_group = "Question",
},
}

@ -1,8 +1,8 @@
return {
'nvim-tree/nvim-tree.lua',
dependencies = 'nvim-tree/nvim-web-devicons',
"nvim-tree/nvim-tree.lua",
dependencies = "nvim-tree/nvim-web-devicons",
config = function()
local nvimtree = require('nvim-tree')
local nvimtree = require("nvim-tree")
-- recommended settings from nvim-tree documentation
vim.g.loaded_netrw = 1
@ -24,8 +24,8 @@ return {
icons = {
glyphs = {
folder = {
arrow_closed = '', -- arrow when folder is closed
arrow_open = '', -- arrow when folder is open
arrow_closed = "", -- arrow when folder is closed
arrow_open = "", -- arrow when folder is open
},
},
},
@ -41,26 +41,40 @@ return {
},
},
filters = {
custom = { '.DS_Store' },
custom = { ".DS_Store" },
},
git = {
ignore = false,
},
})
-- Sync nvim-tree with current file when file changes (BufEnter)
local function sync_nvim_tree()
local api = require("nvim-tree.api")
-- Check if nvim-tree is open
local is_open = api.tree.is_visible()
if is_open then
api.tree.find_file(vim.fn.expand("%"), true)
end
end
-- Trigger sync_nvim_tree when buffer is entered
vim.api.nvim_create_autocmd("BufEnter", {
pattern = "*",
callback = function()
sync_nvim_tree()
end,
})
-- set keymaps
local keymap = vim.keymap -- for conciseness
keymap.set('n', '<leader>ee', '<cmd>NvimTreeToggle<CR>', { desc = 'Toggle file explorer' }) -- toggle file explorer
keymap.set(
'n',
'<leader>ef',
'<cmd>NvimTreeFindFileToggle<CR>',
{ desc = 'Toggle file explorer on current file' }
) -- toggle file explorer on current file
keymap.set("n", "<leader>ee", "<cmd>NvimTreeToggle<CR>", { desc = "Toggle file explorer" }) -- toggle file explorer
keymap.set("n", "<leader>ef", "<cmd>NvimTreeFindFileToggle<CR>", { desc = "Toggle file explorer on current file" }) -- toggle file explorer on current file
-- keymap.set('n', '<C>)', '<cmd>NvimTreeFindFileToggle<CR>', { desc = 'Toggle file explorer on current file' }) -- toggle file explorer on current file
keymap.set('n', '<leader>ec', '<cmd>NvimTreeCollapse<CR>', { desc = 'Collapse file explorer' }) -- collapse file explorer
keymap.set('n', '<leader>er', '<cmd>NvimTreeRefresh<CR>', { desc = 'Refresh file explorer' }) -- refresh file explorer
keymap.set("n", "<leader>ec", "<cmd>NvimTreeCollapse<CR>", { desc = "Collapse file explorer" }) -- collapse file explorer
keymap.set("n", "<leader>er", "<cmd>NvimTreeRefresh<CR>", { desc = "Refresh file explorer" }) -- refresh file explorer
-- New ones I'm adding just for testing and hopefully that works
-- keymap.set('n', 'h', '<cmd>NvimTreeCollapse<CR>', { desc = 'Collapse file explorer' }) -- collapse file explorer

Loading…
Cancel
Save