summaryrefslogtreecommitdiffstats
path: root/lua/user/nvim-tree.lua
diff options
context:
space:
mode:
authorJérémy Zurcher <jeremy@asynk.ch>2022-03-07 14:43:57 +0100
committerJérémy Zurcher <jeremy@asynk.ch>2022-03-07 14:43:57 +0100
commit596823bc99e656d3913ad7fe7f6c0f27a30c0110 (patch)
tree9ddf40caf018cc630d445db327d7b8d52994f921 /lua/user/nvim-tree.lua
parentcbcab8684e06379c9f5c51cfc9cac68d8684fe0c (diff)
downloadvim-596823bc99e656d3913ad7fe7f6c0f27a30c0110.zip
vim-596823bc99e656d3913ad7fe7f6c0f27a30c0110.tar.gz
switch to neovim + lua
Diffstat (limited to 'lua/user/nvim-tree.lua')
-rw-r--r--lua/user/nvim-tree.lua110
1 files changed, 110 insertions, 0 deletions
diff --git a/lua/user/nvim-tree.lua b/lua/user/nvim-tree.lua
new file mode 100644
index 0000000..eb594b9
--- /dev/null
+++ b/lua/user/nvim-tree.lua
@@ -0,0 +1,110 @@
+-- following options are the default
+-- each of these are documented in `:help nvim-tree.OPTION_NAME`
+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 status_ok, nvim_tree = pcall(require, "nvim-tree")
+if not status_ok then
+ return
+end
+
+local config_status_ok, nvim_tree_config = pcall(require, "nvim-tree.config")
+if not config_status_ok then
+ return
+end
+
+local tree_cb = nvim_tree_config.nvim_tree_callback
+
+nvim_tree.setup {
+ disable_netrw = true,
+ hijack_netrw = true,
+ open_on_setup = false,
+ ignore_ft_on_setup = { },
+ auto_close = true,
+ open_on_tab = false,
+ hijack_cursor = false,
+ update_cwd = true,
+ update_to_buf_dir = {
+ enable = true,
+ auto_open = true,
+ },
+ diagnostics = {
+ enable = true,
+ icons = {
+ hint = "",
+ info = "",
+ warning = "",
+ error = "",
+ },
+ },
+ update_focused_file = {
+ enable = true,
+ update_cwd = true,
+ ignore_list = {},
+ },
+ system_open = {
+ cmd = nil,
+ args = {},
+ },
+ filters = {
+ dotfiles = false,
+ custom = {},
+ },
+ git = {
+ enable = true,
+ ignore = true,
+ timeout = 500,
+ },
+ view = {
+ width = 30,
+ height = 30,
+ hide_root_folder = false,
+ side = "left",
+ auto_resize = true,
+ mappings = {
+ custom_only = false,
+ list = { -- see https://github.com/kyazdani42/nvim-tree.lua#keybindings
+ { key = { "l", "<CR>", "o" }, cb = tree_cb "edit" },
+ { key = "t", action = "next_sibling"},
+ { key = "s", action = "prev_sibling"},
+ { key = ">", action = "next_git_item"},
+ { key = "<", action = "prev_git_item"},
+ },
+ },
+ number = false,
+ relativenumber = false,
+ },
+ trash = {
+ cmd = "trash",
+ require_confirm = true,
+ },
+ quit_on_open = 0,
+ git_hl = 1,
+ disable_window_picker = 0,
+ root_folder_modifier = ":t",
+ show_icons = {
+ git = 1,
+ folders = 1,
+ files = 1,
+ folder_arrows = 1,
+ tree_width = 30,
+ },
+}