diff options
author | chaeing <[email protected]> | 2021-07-16 23:42:55 -0700 |
---|---|---|
committer | GitHub <[email protected]> | 2021-07-17 02:42:55 -0400 |
commit | 1f5fd93f807e5fd70f29569dd4160ffbd3c282d6 (patch) | |
tree | 21783d51f21938a4889f228107679e80582f39aa /lua/core/nvimtree.lua | |
parent | 18209ed558ce9495d27114684f76ccfa486cbbd4 (diff) |
[Refactor] nvimtree to be configurable (#970)
* Refactor nvimtree to be configurable
* Correct the location of .stylua.toml in Contrib.md
Co-authored-by: Christian Chiarulli <[email protected]>
Diffstat (limited to 'lua/core/nvimtree.lua')
-rw-r--r-- | lua/core/nvimtree.lua | 101 |
1 files changed, 51 insertions, 50 deletions
diff --git a/lua/core/nvimtree.lua b/lua/core/nvimtree.lua index cb3eacea..e3df9afb 100644 --- a/lua/core/nvimtree.lua +++ b/lua/core/nvimtree.lua @@ -1,74 +1,75 @@ --- --if not package.loaded['nvim-tree.view'] then --- -- return --- --end --- local M = {} local status_ok, nvim_tree_config = pcall(require, "nvim-tree.config") if not status_ok then return end -- +M.config = function() + O.plugin.nvimtree = { + side = "left", + show_icons = { + git = 1, + folders = 1, + files = 1, + folder_arrows = 1, + tree_width = 30, + }, + ignore = { ".git", "node_modules", ".cache" }, + auto_open = 1, + auto_close = 1, + quit_on_open = 0, + follow = 1, + hide_dotfiles = 1, + git_hl = 1, + root_folder_modifier = ":t", + tab_open = 0, + allow_resize = 1, + lsp_diagnostics = 1, + auto_ignore_ft = { "startify", "dashboard" }, + icons = { + default = "", + symlink = "", + git = { + unstaged = "", + staged = "S", + unmerged = "", + renamed = "➜", + deleted = "", + untracked = "U", + ignored = "◌", + }, + folder = { + default = "", + open = "", + empty = "", + empty_open = "", + symlink = "", + }, + }, + } +end +-- M.setup = function() local g = vim.g - vim.o.termguicolors = true - - g.nvim_tree_side = "left" - g.nvim_tree_width = 30 - g.nvim_tree_ignore = { ".git", "node_modules", ".cache" } - g.nvim_tree_auto_open = 1 - g.nvim_tree_auto_close = 1 - g.nvim_tree_quit_on_open = 0 - g.nvim_tree_follow = 1 - g.nvim_tree_indent_markers = 1 - g.nvim_tree_hide_dotfiles = 1 - g.nvim_tree_git_hl = 1 - g.nvim_tree_root_folder_modifier = ":t" - g.nvim_tree_tab_open = 0 - g.nvim_tree_allow_resize = 1 - g.nvim_tree_lsp_diagnostics = 1 - g.nvim_tree_auto_ignore_ft = { "startify", "dashboard" } - - g.nvim_tree_show_icons = { - git = 1, - folders = 1, - files = 1, - folder_arrows = 1, - } + for opt, val in pairs(O.plugin.nvimtree) do + g["nvim_tree_" .. opt] = val + end - vim.g.nvim_tree_icons = { - default = "", - symlink = "", - git = { - unstaged = "", - staged = "S", - unmerged = "", - renamed = "➜", - deleted = "", - untracked = "U", - ignored = "◌", - }, - folder = { - default = "", - open = "", - empty = "", - empty_open = "", - symlink = "", - }, - } local tree_cb = nvim_tree_config.nvim_tree_callback - vim.g.nvim_tree_bindings = { + g.nvim_tree_bindings = { { key = { "l", "<CR>", "o" }, cb = tree_cb "edit" }, { key = "h", cb = tree_cb "close_node" }, { key = "v", cb = tree_cb "vsplit" }, } end - +-- local view_status_ok, view = pcall(require, "nvim-tree.view") if not view_status_ok then return end +-- M.toggle_tree = function() if view.win_open() then require("nvim-tree").close() |