nvim-tree-conf.lua 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. -- set termguicolors to enable highlight groups
  2. vim.opt.termguicolors = true
  3. -- nvim-tree setup
  4. require("nvim-tree").setup({
  5. -- We don't disable netrw globally here so that spell-file downloads still work.
  6. -- nvim-tree will still hijack netrw when you open a directory.
  7. hijack_netrw = true,
  8. sort = {
  9. sorter = "case_sensitive",
  10. },
  11. view = {
  12. width = 35,
  13. side = "left",
  14. },
  15. on_attach = function(bufnr)
  16. local api = require('nvim-tree.api')
  17. local function opts(desc)
  18. return { desc = 'nvim-tree: ' .. desc, buffer = bufnr, noremap = true, silent = true, nowait = true }
  19. end
  20. -- Default mappings
  21. api.config.mappings.default_on_attach(bufnr)
  22. -- Custom mappings
  23. -- 'p' for preview (opens file but stays in tree)
  24. vim.keymap.set('n', 'p', api.node.open.preview, opts('Preview'))
  25. end,
  26. renderer = {
  27. group_empty = true,
  28. icons = {
  29. show = {
  30. git = true,
  31. folder = true,
  32. file = true,
  33. folder_arrow = true,
  34. },
  35. },
  36. },
  37. filters = {
  38. dotfiles = false,
  39. custom = { "^.git$" },
  40. },
  41. git = {
  42. enable = true,
  43. ignore = false,
  44. timeout = 500,
  45. },
  46. diagnostics = {
  47. enable = true,
  48. show_on_dirs = true,
  49. },
  50. })