From ff5bc0e98cbf586fa9b878da43e3eebf40f879b6 Mon Sep 17 00:00:00 2001 From: LW Date: Fri, 22 Sep 2023 17:00:51 -0700 Subject: feat(solidity_ls_nomicfoundation): add single_file_support and supported frameworks (#2724) All are supported according to the LSP's documentation. --- .../solidity_ls_nomicfoundation.lua | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'lua') diff --git a/lua/lspconfig/server_configurations/solidity_ls_nomicfoundation.lua b/lua/lspconfig/server_configurations/solidity_ls_nomicfoundation.lua index 45261432..78ca720b 100644 --- a/lua/lspconfig/server_configurations/solidity_ls_nomicfoundation.lua +++ b/lua/lspconfig/server_configurations/solidity_ls_nomicfoundation.lua @@ -1,21 +1,36 @@ local util = require 'lspconfig.util' +local root_files = { + 'hardhat.config.js', + 'hardhat.config.ts', + 'foundry.toml', + 'remappings.txt', + 'truffle.js', + 'truffle-config.js', + 'ape-config.yaml', +} + return { default_config = { cmd = { 'nomicfoundation-solidity-language-server', '--stdio' }, filetypes = { 'solidity' }, - root_dir = util.root_pattern('.git', 'package.json'), + root_dir = util.root_pattern(unpack(root_files)) or util.root_pattern('.git', 'package.json'), + single_file_support = true, }, docs = { description = [[ https://github.com/NomicFoundation/hardhat-vscode/blob/development/server/README.md +`nomicfoundation-solidity-language-server` can be installed via `npm`: + +```sh npm install -g @ignored/solidity-language-server +``` A language server for the Solidity programming language, built by the Nomic Foundation for the Ethereum community. ]], default_config = { - root_dir = [[root_pattern(".git", "package.json")]], + root_dir = [[root_pattern("]] .. table.concat(root_files, '", "') .. [[", ".git", "package.json")]], }, }, }