summaryrefslogtreecommitdiff
path: root/fnl/config/nvim-tree.fnl
blob: eb579f765cd18bb9d607f3279e0307b087edbca7 (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
98
99
100
101
102
103
104
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 [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") }]}}
       :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}}})))