summaryrefslogtreecommitdiff
path: root/fnl/plugins/lsp/keymaps.fnl
blob: 1b97668b7949b41dce954e52a752420bfcf07ba3 (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
;; Key mappings for lsp.

(import-macros {: keymaps} :macros)

(λ on-attach [buffer]
  (keymaps [:n
            :gD
            "<cmd>lua vim.lsp.buf.declaration()<CR>"
            {:desc :Declaration : buffer}]
           [:n
            :gd
            "<cmd>Telescope lsp_definitions theme=get_dropdown<cr>"
            {:desc :Definition : buffer}]
           [:n
            :gI
            "<cmd>Telescope lsp_implementations theme=get_dropdown<cr>"
            {:desc :Implementation : buffer}]
           [:n
            :gr
            "<cmd>Telescope lsp_references theme=get_dropdown<cr>"
            {:desc :References : buffer}]
           [:n
            :gl
            "<cmd>lua vim.diagnostic.open_float()<CR>"
            {:desc :Diagnostics : buffer}]
           [:n
            :gj
            "<cmd>Telescope diagnostics theme=get_dropdown<cr>"
            {:desc "Telescope Diagnostics" : buffer}]
           [:n
            :gw
            "<cmd>Telescope lsp_dynamic_workspace_symbols theme=get_dropdown<cr>"
            {:desc "Workspace Symbols" : buffer}]
           [:n
            :gE
            "<cmd>Telescope lsp_type_definitions theme=get_dropdown<cr>"
            {:desc "Type Definitions" : buffer}]
           [:n
            :gm
            "<cmd>lua vim.lsp.buf.signature_help()<CR>"
            {:desc :Signature : buffer}]
           [:n
            :gM
            "<cmd>Telescope lsp_document_symbols theme=get_dropdown<cr>"
            {:desc "Document Symbols" : buffer}]
           [:n
            :gh
            "<cmd>lua vim.lsp.buf.code_action()<cr>"
            {:desc "Code Action" : buffer}]
           [:n
            :gb
            "<cmd>lua vim.lsp.codelens.run()<cr>"
            {:desc "Code Lens" : buffer}]
           [:n
            :K
            "<cmd>lua vim.lsp.buf.hover()<cr>"
            {:desc "Hover documentation" : buffer}]
           [:n :<leader>li :<cmd>LspInfo<cr> {:desc "Lsp Info" : buffer}]))

{: on-attach}