PromptPlus 4.0.4

There is a newer version of this package available.
See the version list below for details.
dotnet add package PromptPlus --version 4.0.4                
NuGet\Install-Package PromptPlus -Version 4.0.4                
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="PromptPlus" Version="4.0.4" />                
For projects that support PackageReference, copy this XML node into the project file to reference the package.
paket add PromptPlus --version 4.0.4                
#r "nuget: PromptPlus, 4.0.4"                
#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 PromptPlus as a Cake Addin
#addin nuget:?package=PromptPlus&version=4.0.4

// Install PromptPlus as a Cake Tool
#tool nuget:?package=PromptPlus&version=4.0.4                

Welcome to PromptPlus

Interactive command-line toolkit for .Net core with powerful controls and commands to create professional console applications.

All controls input/filter (except Masked input) using GNU Readline Emacs keyboard shortcuts.

PromptPlus Supports 4/8/24-bit colors in the terminal with auto-detection of the current terminal's capabilities and automatic color conversion.

Visit the official page for complete documentation of PromptPlus

PromptPlus was developed in c# with the netstandard2.1, .Net 6 and .Net 7 target frameworks.

Whats news in V4.0.4

  • Fixed bug PromptPlus not restore terminal original setting when shutdown application
  • Fixed bug Autocomplete does not change result when backspace is pressed during search
  • Added Property CurrentBuffer in console drive to return Current Buffer running (Primary/Secondary)
  • Added SwapBuffer command to swith Primary/Secondar buffer (Valid only When console 'ansi' suported)
  • Renamed 'AlternateScreen' to 'RunOnBuffer'. Now executes a custom action on TargetBuffer and returns to CurrentBuffer
  • Refactored console drivers initialization, control options initialization
  • Added auto create Environment 'PromptPlusConvertCodePage' to custom automate convert codepage to unicode-codepage
    • Default value is = '850;65001'

Whats news in V4.0.3

  • New control to switch Alternate screen
  • Fixed bug Console does not change foreground/background color correctly
  • Fixed bug Control ProgressBar
    • Not show gradient when setted ProgressBarType.Fill
  • Improve testability of result classes/struct (Internal to public)

Whats news in V4.0.2

  • New Control Pipeline
    • PromptPlus.Pipeline(T startvalue)
  • Changed WaitControl to take context value in tasks and return context in result
    • There are small break-chages
  • Add Answer key check equals "Yes"/"No" using config values
    • IsYesResponseKey(this ConsoleKeyInfo keyinfo)
    • IsNoResponseKey(this ConsoleKeyInfo keyinfo)

Whats news in V4.0.X

  • Fixed duplicate tooltip in calendar
  • New console engine
    • Supports 4/8/24-bit colors
    • Auto-detection of the current terminal's capabilities
    • New commands
    • New support feature colors
  • All controls have been improved to accept color customization, new features and new design.
  • Added new filter for colletion by "Contains" or "StartsWith"
  • Added powerful new controls (eg: Switch Alternate screen, Pipeline, Calendar, Chartbar, Treeview, wait tasks Parallel/Sequential,

PromptPlus Controls - Sample Usage

//ASCII text banners
PromptPlus
    .Banner("PromptPlus v4.0")
    .Run(Color.Yellow,BannerDashOptions.DoubleBorderUpDown);

//MaskEdit DateTime
var mask = PromptPlus.MaskEdit("input", "MaskEdit DateTime input")
    .Mask(MaskedType.DateTime)
    .DescriptionWithInputType(FormatWeek.Short)
    .Culture("en-us")
    .AcceptEmptyValue()
    .Run();

if (!mask.IsAborted)
{
    PromptPlus.WriteLine($"You input with mask is {mask.Value.Masked}");
    PromptPlus.WriteLine($"You input without mask is {mask.Value.Input}");
}    

//INPUT
var input = PromptPlus
    .Input("Input sample")
    .Default("foo")
    .Run();

if (!input.IsAborted)
{
    PromptPlus.WriteLine($"You input is {input.Value}");
}

//AnyKey
var kp = PromptPlus
    .KeyPress()
    .Config(cfg => cfg.HideAfterFinish(true))
    .Spinner(SpinnersType.DotsScrolling)
    .Run();

Supported platforms

  • Windows
    • Command Prompt, PowerShell, Windows Terminal
  • Linux (Ubuntu, etc)
    • Windows Terminal (WSL 2)
  • macOS
    • Terminal.app

License

Copyright 2021 @ Fernando Cerqueira

This project is licensed under the MIT License

Product Compatible and additional computed target framework versions.
.NET net5.0 was computed.  net5.0-windows was computed.  net6.0 is compatible.  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 is compatible.  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 netcoreapp3.0 was computed.  netcoreapp3.1 was computed. 
.NET Standard netstandard2.1 is compatible. 
MonoAndroid monoandroid was computed. 
MonoMac monomac was computed. 
MonoTouch monotouch was computed. 
Tizen 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 (1)

Showing the top 1 NuGet packages that depend on PromptPlus:

Package Downloads
PromptPlusCommandDotNet

Integration with the Command DotNet package with interactive command-line for toolkit for C# with powerful controls and commands.

GitHub repositories

This package is not used by any popular GitHub repositories.