Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aelij/RoslynPad
A cross-platform C# editor based on Roslyn and AvalonEdit
https://github.com/aelij/RoslynPad
avalonia cross-platform csharp diagnostics dotnet editor roslyn wpf
Last synced: 1 day ago
JSON representation
A cross-platform C# editor based on Roslyn and AvalonEdit
- Host: GitHub
- URL: https://github.com/aelij/RoslynPad
- Owner: roslynpad
- License: mit
- Created: 2015-04-01T17:42:15.000Z (over 9 years ago)
- Default Branch: main
- Last Pushed: 2024-10-18T08:10:26.000Z (2 months ago)
- Last Synced: 2024-10-29T14:51:03.130Z (about 2 months ago)
- Topics: avalonia, cross-platform, csharp, diagnostics, dotnet, editor, roslyn, wpf
- Language: C#
- Homepage: https://roslynpad.net
- Size: 7.44 MB
- Stars: 2,454
- Watchers: 78
- Forks: 341
- Open Issues: 61
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesome-avalonia - RoslynPad - A cross-platform C# editor based on Roslyn and AvalonEdit (Samples and Projects / Software Development)
README
# RoslynPad
![RoslynPad](src/RoslynPad/Resources/RoslynPad.png)
A cross-platform C# editor based on Roslyn and AvalonEdit
## Installing
**You must also install a supported .NET SDK to allow RoslynPad to compile programs.**
| Source | |
|-|-|
| GitHub | [![Downloads](https://img.shields.io/github/downloads/aelij/RoslynPad/total.svg?style=flat-square)](https://github.com/aelij/RoslynPad/releases/latest) |
| Microsoft Store | |
| winget | `winget install --id RoslynPad.RoslynPad` |### Running on macOS
1. Open the .dmg file and drag RoslynPad to the Applications directory.
1. On the first run:
* **macOS Sonoma** or earlier - Right click the app on Finder and select **Open**. You will be prompted that the app is not signed by a known developer - click **Open**.
* **macOS Sequoia** you must go to **Settings > Privacy & Security** to approve non-notarized apps after the first run attempt.
* For more information see [Open a Mac app from an unknown developer](https://support.apple.com/guide/mac-help/mh40616).## Packages
RoslynPad is also available as NuGet packages which allow you to use Roslyn services and the editor in your own apps.
[Code samples](https://github.com/aelij/RoslynPad/tree/main/samples)
|Package Name|Description|
|------------|-----------|
|[![NuGet](https://img.shields.io/nuget/v/RoslynPad.Roslyn.svg?style=flat-square)](https://www.nuget.org/packages/RoslynPad.Roslyn) `RoslynPad.Roslyn`|Exposes many Roslyn editor services that are currently internal|
|[![NuGet](https://img.shields.io/nuget/v/RoslynPad.Roslyn.Windows.svg?style=flat-square)](https://www.nuget.org/packages/RoslynPad.Roslyn.Windows) `RoslynPad.Roslyn.Windows`|Provides platform-specific (WPF) implementations for UI elements required by the `RoslynPad.Roslyn` package|
|[![NuGet](https://img.shields.io/nuget/v/RoslynPad.Roslyn.Avalonia.svg?style=flat-square)](https://www.nuget.org/packages/RoslynPad.Roslyn.Avalonia)` RoslynPad.Roslyn.Avalonia`|Provides platform-specific (Avalonia) implementations for UI elements required by the `RoslynPad.Roslyn` package|
|[![NuGet](https://img.shields.io/nuget/v/RoslynPad.Editor.Windows.svg?style=flat-square)](https://www.nuget.org/packages/RoslynPad.Editor.Windows) `RoslynPad.Editor.Windows`|Provides a Roslyn-based code editor using AvaloniaEdit (WPF platform) with completion, diagnostics, and quick actions|
|[![NuGet](https://img.shields.io/nuget/v/RoslynPad.Editor.Avalonia.svg?style=flat-square)](https://www.nuget.org/packages/RoslynPad.Editor.Avalonia) `RoslynPad.Editor.Avalonia`|Provides a Roslyn-based code editor using AvalonEdit (Avalonia platform) with completion, diagnostics, and quick actions|Package versions match Roslyn's.
## Building
To build the source code, use one of the following:
* `dotnet build`
* Visual Studio 2022
* Visual Studio Code with the C# Dev Kit extensionSolutions:
* `src/RoslynPad.sln` - contains all projects (recommended only on Windows)
* `src/RoslynPad.Avalonia.sln` - contains only cross-platform projects## Features
### Completion
![Completion](docs/Completion.png)
### Signature Help
![Signature Help](docs/SignatureHelp.png)
### Diagnostics
![Diagnostics](docs/Diagnostics.png)
### Code Fixes
![Code Fixes](docs/CodeFixes.png)