93 lines
2.1 KiB
Lua
93 lines
2.1 KiB
Lua
vim.g.mapleader = "<Space>"
|
|
|
|
require("config.lazy")
|
|
require("lazy").setup("plugins")
|
|
|
|
local opt = vim.opt
|
|
|
|
opt.number = true
|
|
|
|
opt.smartindent= true
|
|
opt.clipboard='unnamedplus'
|
|
|
|
opt.tabstop = 4
|
|
opt.shiftwidth = 4
|
|
|
|
opt.ignorecase = true
|
|
opt.smartcase = true
|
|
|
|
opt.linebreak = true
|
|
opt.showbreak = "—>"
|
|
|
|
opt.mouse = "n"
|
|
opt.mousemodel = "popup"
|
|
opt.mousescroll = {"ver:1", "hor:0"}
|
|
|
|
|
|
vim.lsp.config('lua_ls', {
|
|
on_init = function(client)
|
|
if client.workspace_folders then
|
|
local path = client.workspace_folders[1].name
|
|
if
|
|
path ~= vim.fn.stdpath('config')
|
|
and (vim.uv.fs_stat(path .. '/.luarc.json') or vim.uv.fs_stat(path .. '/.luarc.jsonc'))
|
|
then
|
|
return
|
|
end
|
|
end
|
|
|
|
client.config.settings.Lua = vim.tbl_deep_extend('force', client.config.settings.Lua, {
|
|
runtime = {
|
|
-- Tell the language server which version of Lua you're using (most
|
|
-- likely LuaJIT in the case of Neovim)
|
|
version = 'LuaJIT',
|
|
-- Tell the language server how to find Lua modules same way as Neovim
|
|
-- (see `:h lua-module-load`)
|
|
path = {
|
|
'lua/?.lua',
|
|
'lua/?/init.lua',
|
|
},
|
|
},
|
|
-- Make the server aware of Neovim runtime files
|
|
workspace = {
|
|
checkThirdParty = false,
|
|
library = {
|
|
vim.env.VIMRUNTIME,
|
|
-- Depending on the usage, you might want to add additional paths
|
|
-- here.
|
|
-- '${3rd}/luv/library',
|
|
-- '${3rd}/busted/library',
|
|
},
|
|
-- Or pull in all of 'runtimepath'.
|
|
-- NOTE: this is a lot slower and will cause issues when working on
|
|
-- your own configuration.
|
|
-- See https://github.com/neovim/nvim-lspconfig/issues/3189
|
|
-- library = vim.api.nvim_get_runtime_file('', true),
|
|
},
|
|
})
|
|
end,
|
|
settings = {
|
|
Lua = {},
|
|
},
|
|
})
|
|
|
|
vim.lsp.config('rust_analyzer', {
|
|
settings = {
|
|
['rust-analyzer'] = {
|
|
diagnostics = {
|
|
enable = false;
|
|
}
|
|
}
|
|
}
|
|
})
|
|
|
|
vim.lsp.enable({'clangd','lua_ls','rust_analyzer'})
|
|
|
|
vim.diagnostic.enable(true)
|
|
vim.diagnostic.config({
|
|
virtual_text = true,
|
|
severity_sort = true,
|
|
float = {
|
|
source = "always",
|
|
}
|
|
})
|