TSBSoftware.TextBlock 1.0.2

dotnet add package TSBSoftware.TextBlock --version 1.0.2                
NuGet\Install-Package TSBSoftware.TextBlock -Version 1.0.2                
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="TSBSoftware.TextBlock" Version="1.0.2" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add TSBSoftware.TextBlock --version 1.0.2                
#r "nuget: TSBSoftware.TextBlock, 1.0.2"                
#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.
// Install TSBSoftware.TextBlock as a Cake Addin
#addin nuget:?package=TSBSoftware.TextBlock&version=1.0.2

// Install TSBSoftware.TextBlock as a Cake Tool
#tool nuget:?package=TSBSoftware.TextBlock&version=1.0.2                

TextBlock

Makes F# multiline strings work like C# Raw string literal, or Java text blocks.

Who is it for?

F# developers who would like to utilize multiline strings to format content, such as: html, xml, sql, templates, etc.

Getting Started

To start using TextBlock, install the nuget package into your project file.

dotnet add package TSBSoftware.TextBlock

Then, open the namespace to expose the extension.

open TextBlock

let myText =
    """
    <div>
        <p>Hello</p>
    </div>
    """
        .TextBlock()

Extra Examples

Strings can contain imbedded newline characters.

let embeddedNewlines =
    let nl = System.Environment.NewLine
    $"""
    This content has {nl}several lines
    in {nl}the text.
    """
        .TextBlock()

This will produce

This content has
several lines
in
the text.

Spaces at the end of each line can be preserved.

let blockedLines =
    """
    Blocked   |
    Text      |
    """
        .TextBlock()

This will produce the following. Spaces represended by spaces.

Blocked...
Text......

Additional indentation can be applied. Indentation character can optionally be applied, which is a space by default. We will use a period to show what is applied.

let someHtml =
    """
    <div>
        <p>Hello</p>
    </div>
    """
        .TextBlock(indent = 4, indentChar = '.')

Will produce indented with the specified intentation.

....<div>
....    <p>Hello</p>
....</div>
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 was computed.  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. 
.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.
  • .NETStandard 2.0

    • No dependencies.

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.2 126 9/13/2024
1.0.1 117 8/6/2024