diff options
Diffstat (limited to 'fnl/config')
-rw-r--r-- | fnl/config/nvim-tree.fnl | 105 |
1 files changed, 105 insertions, 0 deletions
diff --git a/fnl/config/nvim-tree.fnl b/fnl/config/nvim-tree.fnl new file mode 100644 index 0000000..b2f3ca2 --- /dev/null +++ b/fnl/config/nvim-tree.fnl @@ -0,0 +1,105 @@ +;; A file explorer. +(module config.nvim-tree + {autoload {util util + nvim aniseed.nvim}}) + +(set nvim.g.nvim_tree_show_icons + {:default "" + :symlink "" + :git { + :unstaged "" + :staged "S" + :unmerged "" + :renamed "➜" + :deleted "" + :untracked "U" + :ignored "◌" + } + :folder { + :default "" + :open "" + :empty "" + :empty_open "" + :symlink ""}}) + +(let [(ok? nvim-tree) util.load-plugin :nvim-tree (_ nvim-tree-config) util.load-plugin :nvim-tree.config] + (when ok? + (let [tree-cb nvim_tree_config.nvim_tree_callback]) + (nvim-tree.setup + {:auto_reload_on_write true + :disable_netrw false + :hide_root_folder false + :hijack_cursor false + :hijack_netrw true + :hijack_unnamed_buffer_when_opening false + :ignore_buffer_on_setup false + :open_on_setup false + :open_on_tab false + :sort_by "name" + :update_cwd true + :view { + :width 30 + :height 30 + :side "left" + :preserve_window_proportions false + :number false + :relativenumber false + :signcolumn "yes" + :mappings { + :custom_only false + :list { + { :key [ "l" "<CR>" "o" ] :cb (tree_cb "edit") } + { :key "h" :cb (tree_cb "close_node") } + { :key "v" :cb (tree_cb "vsplit") }}}} + :hijack_directories { + :enable true + :auto_open true} + :update_focused_file { + :enable true + :update_cwd true + :ignore_list {}} + :ignore_ft_on_setup [ "startify" "dashboard" "alpha" ] + :system_open { + :cmd nil + :args {}} + :diagnostics { + :enable true + :show_on_dirs false + :icons { + :hint "" + :info "" + :warning "" + :error ""}} + :filters { + :dotfiles false + :custom {} + :exclude {}} + :git { + :enable true + :ignore true + :timeout 400} + :actions { + :change_dir { + :enable true + :global false} + :open_file { + :quit_on_open false + :resize_window false + :window_picker { + :enable true + :chars "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890" + :exclude { + :filetype [ "notify" "packer" "qf" "diff" "fugitive" "fugitiveblame" ] + :buftype [ "nofile" "terminal" "help" ]}}}} + :trash { + :cmd "trash" + :require_confirm true} + :log { + :enable false + :truncate false + :types { + :all false + :config false + :copy_paste false + :git false + :profile false}}}))) |