diff --git a/src/Stratis.VS.StratisEVM/README.html b/src/Stratis.VS.StratisEVM/README.html new file mode 100644 index 0000000..30adaaf --- /dev/null +++ b/src/Stratis.VS.StratisEVM/README.html @@ -0,0 +1,40 @@ + +commonmark.js dingus + +clear permalink Smart punctuation +## Try CommonMark + +You can try CommonMark here. This dingus is powered by +[commonmark.js](https://github.com/commonmark/commonmark.js), the +JavaScript reference implementation. + +1. item one +2. item two + - sublist + - sublist + + Preview + HTML + AST + +

About

+

The StratisEVM extension provides support for developing Stratis Solidity smart contracts inside Visual Studio.

+

Features

+ +

Requirements

+ +

Usage

+

Use the Visual Studio Open Folder... feature to open a folder with Solidity contracts.

+

The first time you open a folder with Solidity contracts the extension will install the necessary Node.js modules in the extension's private node_modules directory. +This will take a few seconds to complete so opening the folder will be slower than normal but after the modules are installed the first time, opening folders containing +Solidity contracts will be as usual.

\ No newline at end of file diff --git a/src/Stratis.VS.StratisEVM/README.md b/src/Stratis.VS.StratisEVM/README.md new file mode 100644 index 0000000..b7a97c4 --- /dev/null +++ b/src/Stratis.VS.StratisEVM/README.md @@ -0,0 +1,21 @@ +## About +The StratisEVM extension provides support for developing Stratis Solidity smart contracts inside Visual Studio. + +## Features +* Uses [vscode-solidity](https://github.com/juanfranblanco/vscode-solidity) language server +* Integrates with Visual Studio "Open Folder" +* Syntax highlighting +* Intellisense +* Linting +* Compiling a Solidity file from inside Visual Studio + +## Requirements +* Visual Stdio 2022 +* A recent version of [Node.js](https://nodejs.org/) + +## Usage +Use the Visual Studio Open Folder... feature to open a folder with Solidity contracts. + +The first time you open a folder with Solidity contracts the extension will install the necessary Node.js modules in the extension's private `node_modules` directory. +This will take a few seconds to complete so opening the folder will be slower than normal but after the modules are installed the first time, opening folders containing +Solidity contracts will be as usual. \ No newline at end of file diff --git a/src/Stratis.VS.StratisEVM/SolidityLanguageClient.cs b/src/Stratis.VS.StratisEVM/SolidityLanguageClient.cs index 885fc07..62d66b8 100644 --- a/src/Stratis.VS.StratisEVM/SolidityLanguageClient.cs +++ b/src/Stratis.VS.StratisEVM/SolidityLanguageClient.cs @@ -152,20 +152,20 @@ public async Task ActivateAsync(CancellationToken token) } if (Directory.Exists(Path.Combine(Runtime.AssemblyLocation, "node_modules")) && File.Exists(Path.Combine(Runtime.AssemblyLocation, "node_modules", "solidity", "dist", "cli", "server.js"))) { - VSUtil.LogInfo("Stratis EVM", "VSCode Solidity language server present."); + VSUtil.LogInfo("Stratis EVM", "vscode-solidity language server present."); } else { VSUtil.ShowLogOutputWindowPane(ServiceProvider.GlobalProvider, "Stratis EVM"); - VSUtil.LogInfo("Stratis EVM", "Installing VSCode Solidity language server..."); + VSUtil.LogInfo("Stratis EVM", "Installing vscode-solidity language server..."); var output = await ThreadHelper.JoinableTaskFactory.RunAsync(InstallVSCodeSolidityLanguageServerAsync, JoinableTaskCreationOptions.LongRunning); if (CheckRunCmdOutput(output, "Run `npm audit` for details.")) { - VSUtil.LogInfo("Stratis EVM", "VSCode Solidity language server installed."); + VSUtil.LogInfo("Stratis EVM", "vscode-solidity language server installed."); } else { - VSUtil.LogError("Stratis EVM", "Could not install VSCode Solidity language server."); + VSUtil.LogError("Stratis EVM", "Could not install vscode-solidity language server."); return null; } } @@ -214,7 +214,7 @@ public Task AttachForCustomMessageAsync(JsonRpc rpc) public Task OnServerInitializeFailedAsync(ILanguageClientInitializationInfo initializationState) { - string message = "Solidity language server failed to initialize."; + string message = "vscode-solidity language server failed to initialize."; Error(message); string exception = initializationState.InitializationException?.ToString() ?? string.Empty; message = $"{message}\n {exception}"; diff --git a/src/Stratis.VS.StratisEVM/Stratis.VS.StratisEVM.csproj b/src/Stratis.VS.StratisEVM/Stratis.VS.StratisEVM.csproj index 4f08d2a..e30f392 100644 --- a/src/Stratis.VS.StratisEVM/Stratis.VS.StratisEVM.csproj +++ b/src/Stratis.VS.StratisEVM/Stratis.VS.StratisEVM.csproj @@ -64,6 +64,10 @@ Always true + + Always + true + @@ -75,6 +79,7 @@ true + Designer diff --git a/src/Stratis.VS.StratisEVM/StratisEVMPackage.cs b/src/Stratis.VS.StratisEVM/StratisEVMPackage.cs index 75fbf16..10c5975 100644 --- a/src/Stratis.VS.StratisEVM/StratisEVMPackage.cs +++ b/src/Stratis.VS.StratisEVM/StratisEVMPackage.cs @@ -108,7 +108,7 @@ protected override async Task InitializeAsync(CancellationToken cancellationToke if (!Directory.Exists(Path.Combine(Runtime.AssemblyLocation, "node_modules")) || !File.Exists(Path.Combine(Runtime.AssemblyLocation, "node_modules", "solidity", "dist", "cli", "server.js"))) { - VSUtil.LogInfo("Stratis EVM", "VSCode Solidity language server not present."); + VSUtil.LogInfo("Stratis EVM", "vscode-solidity language server not present."); } // When initialized asynchronously, the current thread may be a background thread at this point. diff --git a/src/Stratis.VS.StratisEVM/package.json b/src/Stratis.VS.StratisEVM/package.json index 186bc43..750517c 100644 --- a/src/Stratis.VS.StratisEVM/package.json +++ b/src/Stratis.VS.StratisEVM/package.json @@ -7,5 +7,5 @@ "test": "echo \"Error: no test specified\" && exit 1" }, "author": "", - "license": "ISC" + "license": "MIT" } diff --git a/src/Stratis.VS.StratisEVM/source.extension.vsixmanifest b/src/Stratis.VS.StratisEVM/source.extension.vsixmanifest index 4d2cf9f..3b8bd53 100644 --- a/src/Stratis.VS.StratisEVM/source.extension.vsixmanifest +++ b/src/Stratis.VS.StratisEVM/source.extension.vsixmanifest @@ -6,8 +6,10 @@ StratisEVM smart contracts extension https://github.com/stratisdevex/Stratis.DevEx/tree/master/src/Stratis.VS.StratisEVM LICENSE.txt + README.html StratisLogo64x64.png StratisLogo200x200.png + stratis,ethereum, solidity, smart contracts true