YngveHestem.Quill.Markdown 1.0.0

dotnet add package YngveHestem.Quill.Markdown --version 1.0.0
                    
NuGet\Install-Package YngveHestem.Quill.Markdown -Version 1.0.0
                    
This command is intended to be used within the Package Manager Console in Visual Studio, as it uses the NuGet module's version of Install-Package.
<PackageReference Include="YngveHestem.Quill.Markdown" Version="1.0.0" />
                    
For projects that support PackageReference, copy this XML node into the project file to reference the package.
<PackageVersion Include="YngveHestem.Quill.Markdown" Version="1.0.0" />
                    
Directory.Packages.props
<PackageReference Include="YngveHestem.Quill.Markdown" />
                    
Project file
For projects that support Central Package Management (CPM), copy this XML node into the solution Directory.Packages.props file to version the package.
paket add YngveHestem.Quill.Markdown --version 1.0.0
                    
#r "nuget: YngveHestem.Quill.Markdown, 1.0.0"
                    
#r directive can be used in F# Interactive and Polyglot Notebooks. Copy this into the interactive tool or source code of the script to reference the package.
#:package YngveHestem.Quill.Markdown@1.0.0
                    
#:package directive can be used in C# file-based apps starting in .NET 10 preview 4. Copy this into a .cs file before any lines of code to reference the package.
#addin nuget:?package=YngveHestem.Quill.Markdown&version=1.0.0
                    
Install as a Cake Addin
#tool nuget:?package=YngveHestem.Quill.Markdown&version=1.0.0
                    
Install as a Cake Tool

Quill.Markdown

A library that converts Quill's delta-format to markdown and vice-versa.

This converter do also support custom conversion, so any custom quill-blots can be converted.

This library is originally created for use with YngveHestem.Quill.Blazor. But it can also be used seperately.

Supported content

This converter do support out of the box most markown-syntax, including extended syntax. In addition it support some default quill-blots that do not have equivilent mmarkdown-syntax, so it is possible to convert without error, andd still be a part of the markdown-content.

Normal text

All markdown-text is of course rendered as text if not matching some other conversion.

Bold, italic, underscore, strikethrough

As underscore is not supported by markdown, the html-tag is used.

Code (inline)

Inline code is supported.

Sup and sub

To set the text lower or higher than normal.

Supports links

Color and background color

This is supported by quill, so therefore it is created a conversion by converting to and from a span with color and/or background color-styles set.

Blockquote

Normal blockquote is supported.

Code block

Code block is supported. Including defining syntax/language.

Divider

As a dividder is standardd markdown, it has been added a converter for this. But as Quill do not have anything for this built in, for this to be rendered in quill, this requires a custom blot. YngveHestem.Quill.Blazor includes a DividerBlot this supports.

If you try to convert markdown that includes a divider to delta, and then try to add this delta to Quill. An error will be thrown by Quill.

Formula

It is created a converter for the built in formula. This creates a formuula by writing $formula$, where formula is the value.

Headers

All the 6 levels of headers are supported.

Image

Image is also supported. If it is image with link, this is supported, an if the image is saved as base64, this will be set in mmarkdown.

Lists

Both bullet-lists, numbered lists and task-lists are supported.

Table

Tables are supported, and will be rendered by quill, as Quill has tables built in. But mark that Quill will need some extra toolbar-items created, as Quill do not have this built in yet (and therefore it is more of a secret that tables are supported built in).

Video

We do also support videos. If the url is directly to a file with a supported extension, it will be created a html5 video tag. If it is another url, like to youtube, it will be created a markdown link with the title Video.

Create own converter

To create own converter, you need to create a class that inherits from either IInlineConverter (for inline and embed blot-types), or IBlockConverter (for block and EmbedBlock blot-types).

IInlineConverter

TargetType

Here you set the blot-id for the blot you create a converter for. This is used when converting from delta to markdown.

TryMatch

This is used to check for matches in the markown-text. If returning true, ToDelta(..) will be called.

In the out-argument you define exactly where the match is.

ToDelta

Let you convert from markdown to delta. This is called when TryMatch has found a match.

IBlockConverter

TargetType

Here you set the blot-id for the blot you create a converter for. This is used when converting from delta to markdown.

CanParseBlock

Can this converter convert from markdown to delta?

ToMarkown

Converts delta to markdown.

ToDelta

Converts markdown to delta.

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 was computed.  net6.0-android was computed.  net6.0-ios was computed.  net6.0-maccatalyst was computed.  net6.0-macos was computed.  net6.0-tvos was computed.  net6.0-windows was computed.  net7.0 was computed.  net7.0-android was computed.  net7.0-ios was computed.  net7.0-maccatalyst was computed.  net7.0-macos was computed.  net7.0-tvos was computed.  net7.0-windows was computed.  net8.0 is compatible.  net8.0-android was computed.  net8.0-browser was computed.  net8.0-ios was computed.  net8.0-maccatalyst was computed.  net8.0-macos was computed.  net8.0-tvos was computed.  net8.0-windows was computed.  net9.0 was computed.  net9.0-android was computed.  net9.0-browser was computed.  net9.0-ios was computed.  net9.0-maccatalyst was computed.  net9.0-macos was computed.  net9.0-tvos was computed.  net9.0-windows was computed.  net10.0 was computed.  net10.0-android was computed.  net10.0-browser was computed.  net10.0-ios was computed.  net10.0-maccatalyst was computed.  net10.0-macos was computed.  net10.0-tvos was computed.  net10.0-windows was computed. 
.NET Core netcoreapp2.0 was computed.  netcoreapp2.1 was computed.  netcoreapp2.2 was computed.  netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.0 is compatible.  netstandard2.1 was computed. 
.NET Framework net461 was computed.  net462 was computed.  net463 was computed.  net47 was computed.  net471 was computed.  net472 was computed.  net48 was computed.  net481 was computed. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen tizen40 was computed.  tizen60 was computed. 
Xamarin.iOS xamarinios was computed. 
Xamarin.Mac xamarinmac was computed. 
Xamarin.TVOS xamarintvos was computed. 
Xamarin.WatchOS xamarinwatchos was computed. 
Compatible target framework(s)
Included target framework(s) (in package)
Learn more about Target Frameworks and .NET Standard.

NuGet packages

This package is not used by any NuGet packages.

GitHub repositories

This package is not used by any popular GitHub repositories.

Version Downloads Last Updated
1.0.0 83 11/4/2026

- Initial release