36 lines
1.2 KiB
Lua
36 lines
1.2 KiB
Lua
|
-- :fennel:1721498140
|
||
|
local lsp = require("lsp-zero")
|
||
|
lsp.preset()
|
||
|
local lspconfig = require("lspconfig")
|
||
|
lspconfig.lua_ls.setup(lsp.nvim_lua_ls())
|
||
|
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})
|
||
|
local cmp = require("cmp")
|
||
|
local cmp_action = lsp.cmp_action()
|
||
|
local function _1_(_, bufnr)
|
||
|
do local _ = lsp.default_keymaps end
|
||
|
return {buffer = bufnr}
|
||
|
end
|
||
|
lsp.on_attach(_1_)
|
||
|
lspconfig.pylsp.setup({setings = {pylsp = {plugins = {pycodestyle = {ignore = {"W391", "E303", "E226"}, maxLineLength = 120}}}}})
|
||
|
lsp.setup()
|
||
|
lspconfig.racket_langserver.setup({})
|
||
|
local function _2_(fallback)
|
||
|
if cmp.visible() then
|
||
|
cmp.select_next_item()
|
||
|
else
|
||
|
fallback()
|
||
|
end
|
||
|
return {"i", "s"}
|
||
|
end
|
||
|
local function _4_(fallback)
|
||
|
if cmp.visible() then
|
||
|
cmp.select_prev_item()
|
||
|
else
|
||
|
fallback()
|
||
|
end
|
||
|
return {"i", "s"}
|
||
|
end
|
||
|
return cmp.setup({mapping = {["<CR>"] = cmp.mapping.confirm({select = true}), ["<Tab>"] = cmp.mapping(_2_), ["<S-Tab>"] = cmp.mapping(_4_), ["<C-Space>"] = cmp.mapping.complete, ["<C-f>"] = cmp_action.luasnip_jump_forward, ["<C-b>"] = cmp_action.luasnip_jump_backward}})
|