Description
Description
Environment
- Compiler version: Version: 0.8.14+commit.80d49f37.Windows.msvc
- Target EVM version (as per compiler settings): default
- Framework/IDE (e.g. Truffle or Remix): Notepad++ 8.3.3. 64bit & https://github.com/Ekopalypse/NppLspClient V0.0.9 64 bits
- EVM execution environment / backend / blockchain client: default
- Operating system: Windows
Steps to Reproduce
setup
Install solc-windows.exe
in C:\tmp\solidity\
Install Notepad++
Setup a language definition for Solidity in Notepad++
(for example via https://github.com/alin1popa/solidity-notepadplusplus-userdefined-highlight
)
Download https://github.com/Ekopalypse/NppLspClient/releases/download/v.0.0.9-alpha/NppLspClient_x64.zip
Install NppLspClient.dll
in C:\Program Files\Notepad++\plugins\NppLspClient
Edit config file via menu open configuration file
(NppLspClientConfig.toml
) to contain:
[lspservers.solidity]
executable = 'C:\tmp\solidity\solc-windows.exe'
args = '--lsp'
mode = "io"
auto_start_server = true
Have some sample soldity files in C:\tmp\solidity\
test.sol:
// SPDX-License-Identifier: MIT
import "test2.sol";
contract test() {
uint x=1;
uint y=x;
}
test2.sol
// SPDX-License-Identifier: MIT
test in Notepad++
Open file test.sol
in Notepad++
In menu option Plugins/NppLspClient_x64
choose Toggle Console
to see debug output.
Put the cursor on import
In menu option Plugins/NppLspClient_x64
choose Goto Definition
Now nothing happens in the editor main screen.
The LSP output console shows: {"id":4,"jsonrpc":"2.0","result":[]}
So somehow the lookup doesn't work.
The same happens with anything else I select.
Note: the detection of syntax errors does work and is shown in the editor, so the LSP interaction does work.
full log
checking current lexer
checking language server status: solidity
trying to start C:\tmp\solidity\solc-windows.exe
running
on_initialize: 15908
write_to_stdin: Content-Length: 2128
{"jsonrpc":"2.0","id":0,"method":"initialize","params":{"processId":15908,"clientInfo":{"name":"NppLspClient","version":"0.0.1"},"rootUri":"file:///C%3A/tmp/solidity","initializationOptions":{},"capabilities":{"workspace":{"applyEdit":false,"workspaceEdit":{"documentChanges":false},"didChangeConfiguration":{"dynamicRegistration":false},"didChangeWatchedFiles":{"dynamicRegistration":false},"symbol":{"dynamicRegistration":false,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"executeCommand":{"dynamicRegistration":false},"configuration":false,"workspaceFolders":false},"textDocument":{"publishDiagnostics":{"relatedInformation":false},"synchronization":{"dynamicRegistration":false,"willSave":false,"willSaveWaitUntil":false,"didSave":true},"completion":{"dynamicRegistration":false,"contextSupport":false,"completionItem":{"snippetSupport":false,"commitCharactersSupport":false,"documentationFormat":["plaintext"],"deprecatedSupport":false},"completionItemKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25]}},"hover":{"dynamicRegistration":false,"contentFormat":["plaintext"]},"signatureHelp":{"dynamicRegistration":false,"signatureInformation":{"documentationFormat":["plaintext"]}},"definition":{"dynamicRegistration":false},"references":{"dynamicRegistration":false},"documentHighlight":{"dynamicRegistration":false},"documentSymbol":{"dynamicRegistration":false,"symbolKind":{"valueSet":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26]}},"codeAction":{"dynamicRegistration":false},"codeLens":{"dynamicRegistration":false},"formatting":{"dynamicRegistration":false},"rangeFormatting":{"dynamicRegistration":false},"onTypeFormatting":{"dynamicRegistration":false},"rename":{"dynamicRegistration":false},"documentLink":{"dynamicRegistration":false},"typeDefinition":{"dynamicRegistration":false},"implementation":{"dynamicRegistration":false},"colorProvider":{"dynamicRegistration":false},"foldingRange":{"dynamicRegistration":false,"rangeLimit":100,"lineFoldingOnly":true}}},"trace":"off","workspaceFolders":null}}
on_message_received: Content-Length: 205
{"id":0,"jsonrpc":"2.0","result":{"capabilities":{"definitionProvider":true,"implementationProvider":true,"textDocumentSync":{"change":2,"openClose":true}},"serverInfo":{"name":"solc","version":"0.8.14"}}}
initialized response received
write_to_stdin: Content-Length: 52
{"jsonrpc":"2.0","method":"initialized","params":{}}
on_file_opened:: solidity: C:\tmp\solidity\test.sol
on_file_opened: initialized=true
write_to_stdin: Content-Length: 291
{"jsonrpc":"2.0","method":"textDocument/didOpen","params":{"textDocument":{"uri":"file:///C%3A/tmp/solidity/test.sol","languageId":"solidity","version":0,"text":"// SPDX-License-Identifier: MIT\r\nimport \"test2.sol\";\r\n\r\ncontract test() {\r\n uint x=1;\r\n uint y=x;\r\n} \r\n"}}}
on_message_received: Content-Length: 299
{"jsonrpc":"2.0","method":"textDocument/publishDiagnostics","params":{"diagnostics":[{"code":2314,"message":"ParserError: Expected '{' but got '('","range":{"end":{"character":14,"line":3},"start":{"character":13,"line":3}},"severity":1,"source":"solc"}],"uri":"file:///C%3A/tmp/solidity/test.sol"}}
write_to_stdin: Content-Length: 166
{"jsonrpc":"2.0","id":1,"method":"textDocument/definition","params":{"textDocument":{"uri":"file:///C%3A/tmp/solidity/test.sol"},"position":{"character":0,"line":1}}}
on_message_received: Content-Length: 36
{"id":1,"jsonrpc":"2.0","result":[]}