diff options
author | christianchiarulli <[email protected]> | 2021-06-27 22:11:33 -0400 |
---|---|---|
committer | christianchiarulli <[email protected]> | 2021-06-27 22:11:33 -0400 |
commit | 3009c6e5f667a450f39a792e17182c717bb2d751 (patch) | |
tree | eb1f8bbf95ff291f7a4abce9412b50c2564b603c /lua/lv-nvimtree/init.lua | |
parent | 1dbb05ed5de0927ede5d0fb0733498674aef8409 (diff) |
use start now, for more speed
Diffstat (limited to 'lua/lv-nvimtree/init.lua')
-rw-r--r-- | lua/lv-nvimtree/init.lua | 154 |
1 files changed, 80 insertions, 74 deletions
diff --git a/lua/lv-nvimtree/init.lua b/lua/lv-nvimtree/init.lua index 4b8c3973..5479b86f 100644 --- a/lua/lv-nvimtree/init.lua +++ b/lua/lv-nvimtree/init.lua @@ -1,82 +1,88 @@ ---[[ " ---let g:nvim_tree_auto_ignore_ft = 'startify' "empty by default, don't auto open tree on specific filetypes. -let g:nvim_tree_hide_dotfiles = 1 "0 by default, this option hides files and folders starting with a dot `.` -let g:nvim_tree_git_hl = 1 "0 by default, will enable file highlight for git attributes (can be used without the icons). -" let g:nvim_tree_tab_open = 1 "0 by default, will open the tree when entering a new tab and the tree was previously open -" let g:nvim_tree_width_allow_resize = 1 "0 by default, will not resize the tree when opening a file -let g:nvim_tree_show_icons = { - \ 'git': 1, - \ 'folders': 1, - \ 'files': 1, - \ } +local M = {} -"If 0, do not show the icons for one of 'git' 'folder' and 'files' -"1 by default, notice that if 'files' is 1, it will only display -"if nvim-web-devicons is installed and on your runtimepath ]] -- vim.g.nvim_tree_ignore = [ '.git', 'node_modules', '.cache' ] "empty by default -vim.g.nvim_tree_disable_netrw = 1 -- moved to lv-globals -vim.g.nvim_tree_hijack_netrw = 1 --"1 by default, prevents netrw from automatically opening when opening directories (but lets you keep its other utilities) -vim.g.nvim_tree_hide_dotfiles = 1 -- 0 by default, this option hides files and folders starting with a dot `.` -vim.g.nvim_tree_indent_markers = 1 -- "0 by default, this option shows indent markers when folders are open -vim.g.nvim_tree_follow = 1 -- "0 by default, this option allows the cursor to be updated when entering a buffer -vim.g.nvim_tree_auto_close = O.auto_close_tree -- 0 by default, closes the tree when it's the last window -vim.g.nvim_tree_auto_ignore_ft = 'startify' --empty by default, don't auto open tree on specific filetypes. -vim.g.nvim_tree_quit_on_open = 0 -- this doesn't play well with barbar -local tree_cb = require'nvim-tree.config'.nvim_tree_callback - vim.g.nvim_tree_bindings = { - -- ["<CR>"] = ":YourVimFunction()<cr>", - -- ["u"] = ":lua require'some_module'.some_function()<cr>", +M.config = function() + local g = vim.g - -- default mappings - ["<CR>"] = tree_cb("edit"), - ["o"] = tree_cb("edit"), - ["l"] = tree_cb("edit"), - ["<2-LeftMouse>"] = tree_cb("edit"), - ["<2-RightMouse>"] = tree_cb("cd"), - ["<C-]>"] = tree_cb("cd"), - ["v"] = tree_cb("vsplit"), - ["s"] = tree_cb("split"), - ["<C-t>"] = tree_cb("tabnew"), - ["<"] = tree_cb("prev_sibling"), - [">"] = tree_cb("next_sibling"), - ["<BS>"] = tree_cb("close_node"), - ["h"] = tree_cb("close_node"), - ["<S-CR>"] = tree_cb("close_node"), - ["<Tab>"] = tree_cb("preview"), - ["I"] = tree_cb("toggle_ignored"), - ["H"] = tree_cb("toggle_dotfiles"), - ["R"] = tree_cb("refresh"), - ["a"] = tree_cb("create"), - ["d"] = tree_cb("remove"), - ["r"] = tree_cb("rename"), - ["<C-r>"] = tree_cb("full_rename"), - ["x"] = tree_cb("cut"), - ["c"] = tree_cb("copy"), - ["p"] = tree_cb("paste"), - ["[c"] = tree_cb("prev_git_item"), - ["]c"] = tree_cb("next_git_item"), - ["-"] = tree_cb("dir_up"), - ["q"] = tree_cb("close"), + vim.o.termguicolors = true + + g.nvim_tree_side = "left" + g.nvim_tree_width = 25 + g.nvim_tree_ignore = {".git", "node_modules", ".cache"} + g.nvim_tree_auto_open = 0 + g.nvim_tree_auto_close = 0 + 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_show_icons = { + git = 1, + folders = 1, + files = 1 } --- vim.g.nvim_tree_show_icons = {git = 1, folders = 1, files = 1} -vim.g.nvim_tree_icons = { - default = '', - symlink = '', - git = {unstaged = "", staged = "✓", unmerged = "", renamed = "➜", untracked = ""}, - folder = {default = "", open = "", empty = "", empty_open = "", symlink = ""} -} -local view = require'nvim-tree.view' + g.nvim_tree_icons = { + default = "", + symlink = "", + git = { + unstaged = "✗", + staged = "✓", + unmerged = "", + renamed = "➜", + untracked = "★", + deleted = "", + ignored = "◌" + }, + folder = { + default = "", + open = "", + symlink = "", + empty = "", + empty_open = "", + symlink_open = "" + } + } -local _M = {} -_M.toggle_tree = function() - if view.win_open() then - require'nvim-tree'.close() - require'bufferline.state'.set_offset(0) - else - require'bufferline.state'.set_offset(31, 'File Explorer') - require'nvim-tree'.find_file(true) - end + local tree_cb = require "nvim-tree.config".nvim_tree_callback + g.nvim_tree_bindings = { + ["u"] = ":lua require'some_module'.some_function()<cr>", + -- default mappings + ["<CR>"] = tree_cb("edit"), + ["o"] = tree_cb("edit"), + ["<2-LeftMouse>"] = tree_cb("edit"), + ["<2-RightMouse>"] = tree_cb("cd"), + ["<C-]>"] = tree_cb("cd"), + ["<C-v>"] = tree_cb("vsplit"), + ["<C-x>"] = tree_cb("split"), + ["<C-t>"] = tree_cb("tabnew"), + ["<"] = tree_cb("prev_sibling"), + [">"] = tree_cb("next_sibling"), + ["<BS>"] = tree_cb("close_node"), + ["<S-CR>"] = tree_cb("close_node"), + ["<Tab>"] = tree_cb("preview"), + ["I"] = tree_cb("toggle_ignored"), + ["H"] = tree_cb("toggle_dotfiles"), + ["R"] = tree_cb("refresh"), + ["a"] = tree_cb("create"), + ["d"] = tree_cb("remove"), + ["r"] = tree_cb("rename"), + ["<C-r>"] = tree_cb("full_rename"), + ["x"] = tree_cb("cut"), + ["c"] = tree_cb("copy"), + ["p"] = tree_cb("paste"), + ["y"] = tree_cb("copy_name"), + ["Y"] = tree_cb("copy_path"), + ["gy"] = tree_cb("copy_absolute_path"), + ["[c"] = tree_cb("prev_git_item"), + ["]c"] = tree_cb("next_git_item"), + ["-"] = tree_cb("dir_up"), + ["q"] = tree_cb("close") + } end -return _M +return M |