summaryrefslogtreecommitdiff
path: root/fnl/config/nvim-tree.fnl
blob: 69095e005ba9357cb285c01e1b1674ef9abbe9be (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
;; A file explorer.
(module config.nvim-tree
  {autoload {util util
             nvim aniseed.nvim}})

(set nvim.g.nvim_tree_show_icons
  { :git 1 :folders 1 :files 1 :folder_arrows 1 })

(set nvim.g.nvim_tree_icons
     {:default ""
      :symlink ""
      :git {:unstaged ""
            :staged :S
            :unmerged ""
            :renamed "➜"
            :deleted ""
            :untracked :U
            :ignored "◌"}
      :folder {:default ""
               :open ""
               :empty ""
               :empty_open ""
               :symlink ""}})

(let [nvim-tree (util.load-plugin :nvim-tree)
      nvim-tree-config (util.load-plugin :nvim-tree.config)]
  (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)}]}}
       :renderer
        {:icons
         {:webdev_colors false}}
       :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}}})))