trixy/fnl/plugins/lsp-zero.fnl

59 lines
1.2 KiB
Plaintext
Raw Normal View History

2024-07-14 19:04:45 +02:00
(local lsp (require :lsp-zero))
(lsp.preset)
(local lspconfig (require :lspconfig))
(lspconfig.lua_ls.setup (lsp.nvim_lua_ls))
2024-07-15 00:56:29 +02:00
(local mason (require :mason))
(mason.setup)
(local mason-lspc (require :mason-lspconfig))
(mason-lspc.setup {
:ensure-installed [
:fennel-ls
:lua-language-server
:python-lsp-server ]
:automatic_installation true })
; :handlers [
; (fn [server_name] ((. lspconfig server_name).setup {})]
2024-07-14 19:04:45 +02:00
(local cmp (require :cmp))
(local cmp_action (lsp.cmp_action))
2024-07-15 00:56:29 +02:00
(lsp.on_attach (fn [_ bufnr] lsp.default_keymaps {:buffer bufnr}))
2024-07-14 19:04:45 +02:00
(lspconfig.pylsp.setup {
:setings {
:pylsp {
:plugins {
:pycodestyle {
:ignore [:W391 :E303 :E226]
:maxLineLength 120 }}}}})
(lsp.setup)
2024-07-15 00:56:29 +02:00
(local fennel-ls lspconfig.fennel_ls)
(fennel-ls.setup {})
2024-07-14 19:04:45 +02:00
(cmp.setup {
:mapping {
:<CR> (cmp.mapping.confirm {:select true})
:<Tab> (cmp.mapping (fn [fallback]
(if (cmp.visible)
(cmp.select_next_item)
(fallback)) [:i :s] ))
:<S-Tab> (cmp.mapping (fn [fallback]
(if (cmp.visible)
(cmp.select_prev_item)
(fallback)) [:i :s] ))
:<C-Space> cmp.mapping.complete
:<C-f> cmp_action.luasnip_jump_forward
:<C-b> cmp_action.luasnip_jump_backward }})