init.lua 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  1. local M = {}
  2. M.config = function()
  3. local g = vim.g
  4. vim.o.termguicolors = true
  5. g.nvim_tree_side = "left"
  6. g.nvim_tree_width = 25
  7. g.nvim_tree_ignore = {".git", "node_modules", ".cache"}
  8. g.nvim_tree_auto_open = 0
  9. g.nvim_tree_auto_close = 0
  10. g.nvim_tree_quit_on_open = 0
  11. g.nvim_tree_follow = 1
  12. g.nvim_tree_indent_markers = 1
  13. g.nvim_tree_hide_dotfiles = 1
  14. g.nvim_tree_git_hl = 1
  15. g.nvim_tree_root_folder_modifier = ":t"
  16. g.nvim_tree_tab_open = 0
  17. g.nvim_tree_allow_resize = 1
  18. g.nvim_tree_show_icons = {
  19. git = 1,
  20. folders = 1,
  21. files = 1
  22. }
  23. g.nvim_tree_icons = {
  24. default = "",
  25. symlink = "",
  26. git = {
  27. unstaged = "✗",
  28. staged = "✓",
  29. unmerged = "",
  30. renamed = "➜",
  31. untracked = "★",
  32. deleted = "",
  33. ignored = "◌"
  34. },
  35. folder = {
  36. default = "",
  37. open = "",
  38. symlink = "",
  39. empty = "",
  40. empty_open = "",
  41. symlink_open = ""
  42. }
  43. }
  44. local tree_cb = require "nvim-tree.config".nvim_tree_callback
  45. g.nvim_tree_bindings = {
  46. ["u"] = ":lua require'some_module'.some_function()<cr>",
  47. -- default mappings
  48. ["<CR>"] = tree_cb("edit"),
  49. ["o"] = tree_cb("edit"),
  50. ["<2-LeftMouse>"] = tree_cb("edit"),
  51. ["<2-RightMouse>"] = tree_cb("cd"),
  52. ["<C-]>"] = tree_cb("cd"),
  53. ["<C-v>"] = tree_cb("vsplit"),
  54. ["<C-x>"] = tree_cb("split"),
  55. ["<C-t>"] = tree_cb("tabnew"),
  56. ["<"] = tree_cb("prev_sibling"),
  57. [">"] = tree_cb("next_sibling"),
  58. ["<BS>"] = tree_cb("close_node"),
  59. ["<S-CR>"] = tree_cb("close_node"),
  60. ["<Tab>"] = tree_cb("preview"),
  61. ["I"] = tree_cb("toggle_ignored"),
  62. ["H"] = tree_cb("toggle_dotfiles"),
  63. ["R"] = tree_cb("refresh"),
  64. ["a"] = tree_cb("create"),
  65. ["d"] = tree_cb("remove"),
  66. ["r"] = tree_cb("rename"),
  67. ["<C-r>"] = tree_cb("full_rename"),
  68. ["x"] = tree_cb("cut"),
  69. ["c"] = tree_cb("copy"),
  70. ["p"] = tree_cb("paste"),
  71. ["y"] = tree_cb("copy_name"),
  72. ["Y"] = tree_cb("copy_path"),
  73. ["gy"] = tree_cb("copy_absolute_path"),
  74. ["[c"] = tree_cb("prev_git_item"),
  75. ["]c"] = tree_cb("next_git_item"),
  76. ["-"] = tree_cb("dir_up"),
  77. ["q"] = tree_cb("close")
  78. }
  79. end
  80. return M