| Crates.io | solidity-language-server |
| lib.rs | solidity-language-server |
| version | 0.1.2 |
| created_at | 2025-12-18 23:43:44.902289+00 |
| updated_at | 2026-01-17 01:53:51.602501+00 |
| description | A solidity language server with foundry's build process. |
| homepage | https://github.com/mmsaki/solidity-language-server |
| repository | https://github.com/mmsaki/solidity-language-server |
| max_upload_size | |
| id | 1993850 |
| size | 241,249 |
Solidity lsp server using foundry's build process only.
Install binary from crates.io
cargo install solidity-language-server
Start the LSP server using:
solidity-language-server
[!info] Solar compiler (WIP) Solar is a solidity compiler, written in Rust by paradigmxyz. This implementation is not fully featured, only diagnostics for now it is still a work in progress.
- Use
--use-solarflag for lsp implementation using solar compiler, currently only diagnostics.
solidity-language-server --use-solar
General
initialize - Server initializationinitialized - Server initialized notificationshutdown - Server shutdownText Synchronization
textDocument/didOpen - Handle file openingtextDocument/didChange - Handle file content changestextDocument/didSave - Handle file saving with diagnostics refreshtextDocument/didClose - Handle file closingtextDocument/willSave - File will save notificationtextDocument/willSaveWaitUntil - File will save wait untilDiagnostics
textDocument/publishDiagnostics - Publish compilation errors and warnings via forge buildtextDocument/publishDiagnostics - Publish linting errors and warnings via forge lintLanguage Features
textDocument/definition - Go to definitiontextDocument/declaration - Go to declarationtextDocument/references - Find all referencestextDocument/documentSymbol - Document symbol outline (contracts, functions, variables, events, structs, enums, etc.)textDocument/prepareRename - Prepare rename validationtextDocument/rename - Rename symbols across filestextDocument/formatting - Document formattingtextDocument/completion - Code completiontextDocument/hover - Hover informationtextDocument/signatureHelp - Function signature helptextDocument/typeDefinition - Go to type definitiontextDocument/implementation - Go to implementationtextDocument/documentHighlight - Document highlightingtextDocument/codeAction - Code actions (quick fixes, refactoring)textDocument/codeLens - Code lenstextDocument/documentLink - Document linkstextDocument/documentColor - Color informationtextDocument/colorPresentation - Color presentationtextDocument/rangeFormatting - Range formattingtextDocument/onTypeFormatting - On-type formattingtextDocument/foldingRange - Folding rangestextDocument/selectionRange - Selection rangestextDocument/semanticTokens - Semantic tokenstextDocument/semanticTokens/full - Full semantic tokenstextDocument/semanticTokens/range - Range semantic tokenstextDocument/semanticTokens/delta - Delta semantic tokensWorkspace Features
workspace/symbol - Workspace-wide symbol searchworkspace/didChangeConfiguration - Acknowledges configuration changes (logs only)workspace/didChangeWatchedFiles - Acknowledges watched file changes (logs only)workspace/didChangeWorkspaceFolders - Acknowledges workspace folder changes (logs only)workspace/applyEdit - Apply workspace editsworkspace/executeCommand - Execute workspace commands (stub implementation)workspace/willCreateFiles - File creation previewworkspace/willRenameFiles - File rename previewworkspace/willDeleteFiles - File deletion previewWindow Features
window/showMessage - Show message to userwindow/showMessageRequest - Show message request to userwindow/workDoneProgress - Work done progressLib.Sturct nameLocations are not identified as separate ast nodes
Lib not show up in Lib.Struct type usageast_cache
--use-solar for lsp that uses solar for ast production