From 152fd9d787c7433cad95795992e444250cb83216 Mon Sep 17 00:00:00 2001 From: aktersnurra Date: Thu, 16 Apr 2026 15:10:52 +0200 Subject: Add fff and other nice things such as macros --- fnl/plugins/lsp/keymaps.fnl | 60 ++++++++++++--------------------------------- 1 file changed, 16 insertions(+), 44 deletions(-) (limited to 'fnl/plugins/lsp/keymaps.fnl') diff --git a/fnl/plugins/lsp/keymaps.fnl b/fnl/plugins/lsp/keymaps.fnl index f312581..3477f0a 100644 --- a/fnl/plugins/lsp/keymaps.fnl +++ b/fnl/plugins/lsp/keymaps.fnl @@ -1,50 +1,22 @@ ;; Key mappings for lsp. -(local mappings - [[:n :gD "lua vim.lsp.buf.declaration()" {:desc :Declaration}] - [:n - :gd - "Telescope lsp_definitions theme=get_dropdown" - {:desc :Definition}] - [:n - :gI - "Telescope lsp_implementations theme=get_dropdown" - {:desc :Implementation}] - [:n - :gr - "Telescope lsp_references theme=get_dropdown" - {:desc :References}] - [:n - :gl - "lua vim.diagnostic.open_float()" - {:desc :Diagnostics}] - [:n - :gj - "Telescope diagnostics theme=get_dropdown" - {:desc "Telescope Diagnostics"}] - [:n - :gw - "Telescope lsp_dynamic_workspace_symbols theme=get_dropdown" - {:desc "Workspace Symbols"}] - [:n - :gE - "Telescope lsp_type_definitions theme=get_dropdown" - {:desc "Type Definitions"}] - [:n :gm "lua vim.lsp.buf.signature_help()" {:desc :Signature}] - [:n - :gM - "Telescope lsp_document_symbols theme=get_dropdown" - {:desc "Document Symbols"}] - [:n :gh "lua vim.lsp.buf.code_action()" {:desc "Code Action"}] - [:n :gb "lua vim.lsp.codelens.run()" {:desc "Code Lens"}] - [:n :K "lua vim.lsp.buf.hover()" {:desc "Hover documentation"}] - [:n :li :LspInfo {:desc "Lsp Info"}]]) +(import-macros {: keymaps} :macros) (λ on-attach [buffer] - (let [opts {:noremap true :silent true : buffer}] - (each [_ mapping (ipairs mappings)] - (match mapping - [mode key cmd desc] - (vim.keymap.set mode key cmd (vim.tbl_extend :force opts desc)))))) + (keymaps + [:n :gD "lua vim.lsp.buf.declaration()" {:desc :Declaration :buffer buffer}] + [:n :gd "Telescope lsp_definitions theme=get_dropdown" {:desc :Definition :buffer buffer}] + [:n :gI "Telescope lsp_implementations theme=get_dropdown" {:desc :Implementation :buffer buffer}] + [:n :gr "Telescope lsp_references theme=get_dropdown" {:desc :References :buffer buffer}] + [:n :gl "lua vim.diagnostic.open_float()" {:desc :Diagnostics :buffer buffer}] + [:n :gj "Telescope diagnostics theme=get_dropdown" {:desc "Telescope Diagnostics" :buffer buffer}] + [:n :gw "Telescope lsp_dynamic_workspace_symbols theme=get_dropdown" {:desc "Workspace Symbols" :buffer buffer}] + [:n :gE "Telescope lsp_type_definitions theme=get_dropdown" {:desc "Type Definitions" :buffer buffer}] + [:n :gm "lua vim.lsp.buf.signature_help()" {:desc :Signature :buffer buffer}] + [:n :gM "Telescope lsp_document_symbols theme=get_dropdown" {:desc "Document Symbols" :buffer buffer}] + [:n :gh "lua vim.lsp.buf.code_action()" {:desc "Code Action" :buffer buffer}] + [:n :gb "lua vim.lsp.codelens.run()" {:desc "Code Lens" :buffer buffer}] + [:n :K "lua vim.lsp.buf.hover()" {:desc "Hover documentation" :buffer buffer}] + [:n :li :LspInfo {:desc "Lsp Info" :buffer buffer}])) {: on-attach} -- cgit v1.2.3-70-g09d2