Merge branch 'main' into editing-improvements

This commit is contained in:
Nick Burt 2024-02-06 18:59:50 -06:00
commit efc6f526e4
2 changed files with 28 additions and 28 deletions

View File

@ -1,11 +1,11 @@
-- Configuration for language servers -- Configuration for language servers
local function keymaps(bufnr) local function keymaps(bufnr)
local keymap = function(keys, func, desc) local keymap = function(keys, func, desc)
if desc then if desc then
desc = 'LSP: ' .. desc desc = 'LSP: ' .. desc
end end
vim.keymap.set('n', keys, func, { buffer = bufnr, desc = desc }) vim.keymap.set('n', keys, func, { buffer = bufnr, desc = desc })
end end
keymap('<leader>rn', vim.lsp.buf.rename, '[R]e[n]ame') keymap('<leader>rn', vim.lsp.buf.rename, '[R]e[n]ame')
@ -26,7 +26,7 @@ local function keymaps(bufnr)
keymap('<leader>wa', vim.lsp.buf.add_workspace_folder, '[W]orkspace [A]dd Folder') keymap('<leader>wa', vim.lsp.buf.add_workspace_folder, '[W]orkspace [A]dd Folder')
keymap('<leader>wr', vim.lsp.buf.remove_workspace_folder, '[W]orkspace [R]emove Folder') keymap('<leader>wr', vim.lsp.buf.remove_workspace_folder, '[W]orkspace [R]emove Folder')
keymap('<leader>wl', function() keymap('<leader>wl', function()
print(vim.inspect(vim.lsp.buf.list_workspace_folders())) print(vim.inspect(vim.lsp.buf.list_workspace_folders()))
end, '[W]orkspace [L]ist Folders') end, '[W]orkspace [L]ist Folders')
end end
@ -38,7 +38,7 @@ return {
'williamboman/mason-lspconfig.nvim', 'williamboman/mason-lspconfig.nvim',
-- Useful status updates for LSP -- Useful status updates for LSP
{ 'j-hui/fidget.nvim', opts = {} }, { 'j-hui/fidget.nvim', opts = {} },
-- Additional lua configuration, makes nvim stuff amazing! -- Additional lua configuration, makes nvim stuff amazing!
'folke/neodev.nvim', 'folke/neodev.nvim',
@ -47,10 +47,10 @@ return {
local on_attach = function(_, bufnr) local on_attach = function(_, bufnr)
keymaps(bufnr) keymaps(bufnr)
-- Create a command `:Format` local to the LSP buffer -- Create a command `:Format` local to the LSP buffer
vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_) vim.api.nvim_buf_create_user_command(bufnr, 'Format', function(_)
vim.lsp.buf.format() vim.lsp.buf.format()
end, { desc = 'Format current buffer with LSP' }) end, { desc = 'Format current buffer with LSP' })
end end
-- mason-lspconfig requires that these setup functions are called in this order -- mason-lspconfig requires that these setup functions are called in this order
@ -60,14 +60,15 @@ return {
-- Enable the following language servers -- Enable the following language servers
local servers = { local servers = {
rust_analyzer = { filetypes = {'rust', 'rs'}}, lua_ls = {
tsserver = {}, Lua = {
lua_ls = { workspace = { checkThirdParty = false },
Lua = { telemetry = { enable = false },
workspace = { checkThirdParty = false }, },
telemetry = { enable = false },
}, },
}, rust_analyzer = { filetypes = { 'rust', 'rs' } },
svelte = { filetypes = { 'svelte' } },
tsserver = {},
} }
-- Setup neovim lua configuration -- Setup neovim lua configuration
@ -81,19 +82,18 @@ return {
local mason_lspconfig = require 'mason-lspconfig' local mason_lspconfig = require 'mason-lspconfig'
mason_lspconfig.setup { mason_lspconfig.setup {
ensure_installed = vim.tbl_keys(servers), ensure_installed = vim.tbl_keys(servers),
} }
mason_lspconfig.setup_handlers { mason_lspconfig.setup_handlers {
function(server_name) function(server_name)
require('lspconfig')[server_name].setup { require('lspconfig')[server_name].setup {
capabilities = capabilities, capabilities = capabilities,
on_attach = on_attach, on_attach = on_attach,
settings = servers[server_name], settings = servers[server_name],
filetypes = (servers[server_name] or {}).filetypes, filetypes = (servers[server_name] or {}).filetypes,
} }
end, end,
} }
end end
} }

View File

@ -54,7 +54,7 @@ return {
vim.defer_fn(function() vim.defer_fn(function()
require('nvim-treesitter.configs').setup { require('nvim-treesitter.configs').setup {
-- Add languages to be installed here that you want installed for treesitter -- Add languages to be installed here that you want installed for treesitter
ensure_installed = { 'c', 'cpp', 'go', 'lua', 'python', 'rust', 'tsx', 'javascript', 'typescript', 'vimdoc', 'vim', 'bash' }, ensure_installed = { 'c', 'cpp', 'go', 'lua', 'python', 'rust', 'tsx', 'javascript', 'typescript', 'svelte', 'vimdoc', 'vim', 'bash' },
auto_install = false, auto_install = false,
sync_install = false, sync_install = false,