Crates.io | rscls |
lib.rs | rscls |
version | 0.2.2 |
source | src |
created_at | 2023-04-09 13:37:03.538512 |
updated_at | 2023-10-21 12:16:52.111454 |
description | A language server for rust-script |
homepage | |
repository | https://github.com/MiSawa/rscls |
max_upload_size | |
id | 834233 |
size | 71,632 |
A language server for rust-script.
Internally, RSCLS spawns an instance of rust-analyzer with no package configuration. Every time RSCLS receives textDocument/didOpen
request from the client with rust-script
, rust_script
or rustscript
language id, it changes the language id to rust
, run rust-script to obtain the project directory and setup linkedProject
for the project.
main
function added.
0.28.0
.cargo install rscls
You can alternatively clone this repository to your local, maybe modify some code and run
cargo install --path path-to-cloned-dir
to install locally modified version of the code.
cargo uninstall rscls
Here's an example configuration for nvim-lspconfig. I don't use other editor/IDEs, so please figure them out on your own. Pull requests are welcomed!
-- Assumes `autocmd BufEnter *.ers setlocal filetype=rustscript` or similar
local lsp_configs = require 'lspconfig.configs'
if not lsp_configs.rlscls then
lsp_configs.rlscls = {
default_config = {
cmd = { 'rscls' },
filetypes = { 'rustscript' },
root_dir = function(fname)
return lspconfig.util.path.dirname(fname)
end,
},
docs = {
description = [[
https://github.com/MiSawa/rscls
rscls, a language server for rust-script
]],
}
}
end
lspconfig.rlscls.setup {
settings = {
['rust-analyzer'] = {
imports = {
group = {
enable = true,
},
granularity = {
enforce = true,
group = "crate",
},
},
cargo = {
buildScripts = {
enable = true,
},
},
procMacro = {
enable = true,
},
},
}
}
Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed under the terms of both the Apache License, Version 2.0 and the MIT license without any additional terms or conditions.