Skip to content

Commit

Permalink
Drop support for the Windows console host.
Browse files Browse the repository at this point in the history
Closes #102.
  • Loading branch information
alexrp committed Dec 15, 2023
1 parent d2262a9 commit 9fc3c13
Show file tree
Hide file tree
Showing 4 changed files with 31 additions and 28 deletions.
10 changes: 5 additions & 5 deletions Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -20,11 +20,11 @@
<PackRelease>false</PackRelease>
<PackageDescription>$(Description)

With the Windows console host now supporting virtual terminal sequences, it
makes little sense for console interaction to still be centered around the old
Windows console host and the many limitations it had. $(Product) provides an API
centered around a VT100 terminal with some extensions from later models and
modern terminal emulators. It works on all desktop platforms that .NET supports.</PackageDescription>
With Windows Terminal having replaced the old Windows console host, it makes
little sense for console interaction to still be centered around the old console
host and the many limitations it had. $(Product) provides an API centered around
a VT100 terminal with some extensions from later models and modern terminal
emulators. It works on all desktop platforms that .NET supports.</PackageDescription>
<PackageLicenseExpression>0BSD</PackageLicenseExpression>
<PackageProjectUrl>https://docs.vezel.dev/cathode</PackageProjectUrl>
<PolySharpIncludeRuntimeSupportedAttributes>true</PolySharpIncludeRuntimeSupportedAttributes>
Expand Down
12 changes: 6 additions & 6 deletions PACKAGE.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@
**Cathode** is a toolkit for writing terminal-based applications. It is
effectively a complete replacement for the .NET console APIs.

With the Windows console host now supporting virtual terminal sequences, it
makes little sense for console interaction to still be centered around the old
Windows console host and the many limitations it had. **Cathode** provides an
API centered around a [VT100 terminal](https://vt100.net) with some extensions
from later models and modern terminal emulators. It works on all desktop
platforms that .NET supports.
With Windows Terminal having replaced the old Windows console host, it makes
little sense for console interaction to still be centered around the old console
host and the many limitations it had. **Cathode** provides an API centered
around a [VT100 terminal](https://vt100.net) with some extensions from later
models and modern terminal emulators. It works on all desktop platforms that
.NET supports.

This project offers the following packages:

Expand Down
19 changes: 9 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,18 +27,17 @@
**Cathode** is a toolkit for writing terminal-based applications. It is
effectively a complete replacement for the .NET console APIs.

With the Windows console host now supporting virtual terminal sequences, it
makes little sense for console interaction to still be centered around the old
Windows console host and the many limitations it had. **Cathode** provides an
API centered around a [VT100 terminal](https://vt100.net) with some extensions
from later models and modern terminal emulators. It works on all desktop
platforms that .NET supports.
With Windows Terminal having replaced the old Windows console host, it makes
little sense for console interaction to still be centered around the old console
host and the many limitations it had. **Cathode** provides an API centered
around a [VT100 terminal](https://vt100.net) with some extensions from later
models and modern terminal emulators. It works on all desktop platforms that
.NET supports.

Please note that, since **Cathode** replaces a very fundamental component of the
framework, the use of certain framework APIs becomes problematic. As an example,
intermixing **Cathode** and `System.Console` usage *will* break. Referencing
**Cathode** (or a package that uses it) will pull in a Roslyn analyzer that
diagnoses problematic APIs and suggests working replacements.
framework, the use of certain framework APIs (e.g. `System.Console`) becomes
problematic. An analyzer will automatically diagnose usage of such APIs and
suggest working replacements.

## Usage

Expand Down
18 changes: 11 additions & 7 deletions doc/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,17 @@
**Cathode** is a toolkit for writing terminal-based applications. It is
effectively a complete replacement for the .NET console APIs.

With the Windows console host now supporting virtual terminal sequences, it
makes little sense for console interaction to still be centered around the old
Windows console host and the many limitations it had. **Cathode** provides an
API centered around a [VT100 terminal](https://vt100.net) with some extensions
from later models and modern terminal emulators. It works on all desktop
platforms that .NET supports.
With Windows Terminal having replaced the old Windows console host, it makes
little sense for console interaction to still be centered around the old console
host and the many limitations it had. **Cathode** provides an API centered
around a [VT100 terminal](https://vt100.net) with some extensions from later
models and modern terminal emulators. It works on all desktop platforms that
.NET supports.

Please note that, since **Cathode** replaces a very fundamental component of the
framework, the use of certain framework APIs (e.g. `System.Console`) becomes
problematic. An analyzer will automatically diagnose usage of such APIs and
suggest working replacements.

## Terminals

Expand All @@ -28,7 +33,6 @@ platforms that .NET supports.
* [Terminal.app](https://support.apple.com/guide/terminal/welcome/mac)
* [Terminology](https://terminolo.gy)
* [WezTerm](https://wezfurlong.org/wezterm)
* [Windows Console](https://learn.microsoft.com/en-us/windows/console)
* [Windows Terminal](https://aka.ms/terminal)
* [xterm](https://invisible-island.net/xterm)

Expand Down

0 comments on commit 9fc3c13

Please sign in to comment.