🚀 Get the New Version
# Install the latest version
Install-Module PwshSpectreConsole -Scope CurrentUser
# or update your existing version to the latest
Update-Module PwshSpectreConsole -Scope CurrentUser
💥 Breaking Changes
- New warning when importing the module without unicode character support
- #46 Emojis not visible even in unicode-supported terminal
To address this issue the module will now warn users if they don't have UTF-8 set as their PowerShell output encoding. - This warning can be suppressed by setting
$env:IgnoreSpectreEncoding = $true
- #46 Emojis not visible even in unicode-supported terminal
🗑️ Deprecations
Get-SpectreImageExperimental
- This function was an early attempt to get animated gifs working but it's incompatible with the rest of the way the module works. It warns the user that it's deprecated in this version and will be removed in a later version.
Get-SpectreImage
now supports animated gifs when the terminal host supports Sixel and this is the preferred method of rendering animated gifs in the terminal as this will be upstreamed in Spectre.Console in spectreconsole/spectre.console#1679 instead of maintained in this repo.
- This function was an early attempt to get animated gifs working but it's incompatible with the rest of the way the module works. It warns the user that it's deprecated in this version and will be removed in a later version.
🆕 New Features
Sixel
Sixel is a graphics format for terminals that Windows Terminal is set to release soon, it's available in Windows Terminal Preview right now!
@trackd has been hard at work building Sixel (and more) protocol support for easy use in PowerShell and is continuing his work on other protocols and enhancements in https://github.com/trackd/Sixel.
We worked together on the initial PowerShell codec, and he converted it to C# for speedy memory access because it was slow on large images 🚤
I've integrated the C# code with Spectre.Console so that it's aware of the image dimensions which allows you to embed Sixel images inside other Spectre Renderables like Tables and Panels.
For examples on how to use this see https://pwshspectreconsole.com/reference/images/get-spectreimage/
To check if your terminal host supports Sixel see https://www.arewesixelyet.com/
Fixes
- #48 Recommend defining CompatiblePSEditions
- #53 Group Select a single object "Read-SpectreSelectionGrouped"
- A new commandlet was added
Read-SpectreSelectionGrouped
that can present a select list with grouped sections.
- A new commandlet was added
- #54 Format-SpectrePanel: Cannot process argument transformation
- #56 Get-SpectreImageExperimental is missing in prerelease which is an annoying breaking change
- #57 [Help] Is there a way to specify a background color in hex format for an element in a Format-SpectreException -ExceptionStyle hashtable?