summaryrefslogtreecommitdiff
path: root/fnl/plugins/ui/alpha.fnl
blob: c9dce506b690c91c88ac0a1e3b4e63f8eb7e66d6 (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
;; A customizable greeter.

(local icons (require :plugins.icons))

(local ascii-art ["     ##############..... ############## "
                  "   ##############......##############   "
                  "     ##########..........##########     "
                  "     ##########........##########       "
                  "     ##########.......##########        "
                  "     ##########.....##########..        "
                  "     ##########....##########.....      "
                  "   ..##########..##########.........    "
                  " ....##########.#########.............  "
                  "   ..################JJJ............    "
                  "     ################.............      "
                  "     ##############.JJJ.JJJJJJJJJJ      "
                  "     ############...JJ...JJ..JJ  JJ     "
                  "     ##########....JJ...JJ..JJ  JJ      "
                  "     ########......JJJ..JJJ JJJ JJJ     "
                  "    ######    .........                 "
                  "                 .....                  "
                  "                   .                    "])

(fn setup []
  (let [alpha (require :alpha)]
    (let [dashboard (require :alpha.themes.dashboard)]
      (set dashboard.section.header.val ascii-art)
      (set dashboard.section.buttons.val
           [(dashboard.button :f (.. (. icons :search-files) "  Find file")
                              ":Telescope find_files theme=dropdown<CR>")
            (dashboard.button :g (.. (. icons :search-text) "  Find text")
                              ":Telescope live_grep theme=dropdown<CR>")
            (dashboard.button :p (.. (. icons :search-project) "  Find project")
                              ":Telescope projects theme=dropdown<CR>")
            (dashboard.button :r (.. (. icons :recent-files) "  Recently used files")
                              ":Telescope oldfiles theme=dropdown<CR>")
            (dashboard.button :t (.. (. icons :cog) "  Configuration")
                              ":e ~/.config/nvim/init.lua <CR>")
            (dashboard.button :o (.. (. icons :org) "  Org")
                              ":Telescope find_files theme=dropdown cwd=~/.local/share/org<CR>")])
      (set dashboard.section.header.opts.hl :AlphaHeader)
      (set dashboard.section.buttons.opts.hl :AlphaButtons)
      (set dashboard.opts.opts.noautocmd true)
      (alpha.setup dashboard.opts))))

{1 :goolord/alpha-nvim
 :event :VimEnter
 :config (fn []
           (setup))}