Neovim LSP stuff
This commit is contained in:
19
.config/nvim/after/lsp/harper_ls.lua
Normal file
19
.config/nvim/after/lsp/harper_ls.lua
Normal file
@ -0,0 +1,19 @@
|
||||
vim.lsp.config('harper_ls', {
|
||||
settings = { -- https://writewithharper.com/docs/integrations/neovim
|
||||
["harper-ls"] = {
|
||||
isolateEnglish = true, -- highly experimental
|
||||
fileDictPath = vim.fn.stdpath("config") .. "/spell/spell/",
|
||||
userDictPath = vim.fn.stdpath("config") .. "/spell/en.utf-8.add",
|
||||
codeActions = {
|
||||
forceStable = true -- preserve the order of actions
|
||||
},
|
||||
diagnosticSeverity = "information" -- "hint", "information", "warning", "error"
|
||||
-- markdown = { ignore_link_title = true }
|
||||
-- linters = { -- turned off by default
|
||||
-- spelled_numbers = false, wrong_quotes = false, linking_verbs = false,
|
||||
-- boring_words = false, use_genitive = false, plural_conjugate = false,
|
||||
-- no_oxford_comma = false,
|
||||
-- }
|
||||
}
|
||||
},
|
||||
})
|
7
.config/nvim/after/lsp/lua_ls.lua
Normal file
7
.config/nvim/after/lsp/lua_ls.lua
Normal file
@ -0,0 +1,7 @@
|
||||
vim.lsp.config('lua_ls', {
|
||||
settings = {
|
||||
Lua = {
|
||||
diagnostics = { globals = { "vim" } }
|
||||
}
|
||||
}
|
||||
})
|
42
.config/nvim/after/lsp/rust_analyzer.lua
Normal file
42
.config/nvim/after/lsp/rust_analyzer.lua
Normal file
@ -0,0 +1,42 @@
|
||||
vim.lsp.config('rust_analyzer', {
|
||||
settings = {
|
||||
["rust-analyzer"] = {
|
||||
cargo = {
|
||||
allFeatures = true,
|
||||
loadOutDirsFromCheck = true,
|
||||
runBuildScripts = true,
|
||||
},
|
||||
-- Add clippy lints for Rust.
|
||||
checkOnSave = true,
|
||||
check = {
|
||||
-- allFeatures = true,
|
||||
command = "clippy",
|
||||
extraArgs = {
|
||||
"--",
|
||||
"--no-deps", -- run Clippy only on the given crate
|
||||
-- Deny, Warn, Allow, Forbid
|
||||
"-Wclippy::correctness", -- code that is outright wrong or useless
|
||||
"-Wclippy::complexity", -- code that does something simple but in a complex way
|
||||
"-Wclippy::suspicious", -- code that is most likely wrong or useless
|
||||
"-Wclippy::style", -- code that should be written in a more idiomatic way
|
||||
"-Wclippy::perf", -- code that can be written to run faster
|
||||
"-Wclippy::pedantic", -- lints which are rather strict or have occasional false positives
|
||||
"-Wclippy::nursery", -- new lints that are still under development
|
||||
"-Wclippy::cargo", -- lints for the cargo manifest
|
||||
-- Use in production
|
||||
"-Aclippy::restriction", -- lints which prevent the use of language and library features
|
||||
-- Other
|
||||
"-Aclippy::must_use_candidate", -- must_use is rather annoing
|
||||
},
|
||||
},
|
||||
procMacro = {
|
||||
enable = true,
|
||||
-- ignored = {
|
||||
-- ["async-trait"] = { "async_trait" },
|
||||
-- ["napi-derive"] = { "napi" },
|
||||
-- ["async-recursion"] = { "async_recursion" },
|
||||
-- },
|
||||
},
|
||||
},
|
||||
}
|
||||
})
|
14
.config/nvim/after/lsp/tinymist.lua
Normal file
14
.config/nvim/after/lsp/tinymist.lua
Normal file
@ -0,0 +1,14 @@
|
||||
-- https://myriad-dreamin.github.io/tinymist//frontend/neovim.html
|
||||
vim.lsp.config('tinymist', {
|
||||
settings = {
|
||||
formatterPrintWidth = 100, -- can't stand 120
|
||||
formatterMode = "typstyle", -- or typstfmt
|
||||
-- exportPdf = "onDocumentHasTitle", -- default: never
|
||||
semanticTokens = "enable"
|
||||
},
|
||||
single_file_support = true,
|
||||
-- root_dir = function(_, bufnr)
|
||||
-- return vim.fs.root(bufnr, { ".git" }) or vim.fn.expand "%:p:h"
|
||||
-- end,
|
||||
})
|
||||
|
8
.config/nvim/after/lsp/yamlls.lua
Normal file
8
.config/nvim/after/lsp/yamlls.lua
Normal file
@ -0,0 +1,8 @@
|
||||
vim.lsp.config('yamlls', {
|
||||
settings = {
|
||||
yaml = {
|
||||
format = { enable = true },
|
||||
schemaStore = { enable = true },
|
||||
}
|
||||
}
|
||||
})
|
Reference in New Issue
Block a user