Fără Descriere

Tig bc0634cf44 Fixed all modelusage bugs? 2 săptămâni în urmă
.config a6258ed398 Updates `IListDataSource.Render` to rename the `start` parameter to `viewportXOffset` (#4392) 3 săptămâni în urmă
.devcontainer 651ee21ba5 Fixes #2323. The devcontainer.json settings isn't work with the current develop branch. 2 ani în urmă
.github d53fcd7485 Fixes #4374 - Nukes all (?) legacy Driver and Application stuff; revamps tests (#4376) 1 lună în urmă
Examples bc0634cf44 Fixed all modelusage bugs? 2 săptămâni în urmă
Scripts 171a26a350 Removes the v1 `Menu` stuff. Preps for #4148 (#4402) 3 săptămâni în urmă
Terminal.Gui bc0634cf44 Fixed all modelusage bugs? 2 săptămâni în urmă
Terminal.Gui.Analyzers 3a645191db Fixes #4170 - Added analyzer that flags when user does not have `Handled=true` (#4182) 5 luni în urmă
Terminal.Gui.Analyzers.Tests d53fcd7485 Fixes #4374 - Nukes all (?) legacy Driver and Application stuff; revamps tests (#4376) 1 lună în urmă
Tests bc0634cf44 Fixed all modelusage bugs? 2 săptămâni în urmă
docfx e199063a31 Introduce IRunnable interface architecture with Fluent API (Phase 1) (#4405) 3 săptămâni în urmă
local_packages f3fc20306e Remove TextField.Caption property; use Title with hotkey navigation support (#4352) 1 lună în urmă
.cursorrules aef88ad4bb Fixes #4332 - Refactor test infrastructure to use modern ApplicationImpl.Coordinator instead of legacy MainLoop (#4335) 1 lună în urmă
.dockerignore 8ab759b30f Fixes #415 v2. Colors: OpenSUSE - The native method "COLOR_PAIRS" does not exist 2 ani în urmă
.editorconfig e6a0ec64ca Fixes #4361 - Consolidate `FakeDriver` into library and refactor driver architecture (#4362) 1 lună în urmă
.filenesting.json 76d48f1fe8 Add solution default file nesting rules 1 an în urmă
.gitattributes 98f70b2632 Adds `ViewportSettings.Transparent` (#3886) 9 luni în urmă
.gitignore d53fcd7485 Fixes #4374 - Nukes all (?) legacy Driver and Application stuff; revamps tests (#4376) 1 lună în urmă
.vsconfig 1a68656d66 Add .vsconfig 1 an în urmă
AGENTS.md aef88ad4bb Fixes #4332 - Refactor test infrastructure to use modern ApplicationImpl.Coordinator instead of legacy MainLoop (#4335) 1 lună în urmă
CODE_OF_CONDUCT.md 6144c9da66 added contribution guidelines, project layout docs, etc... 5 ani în urmă
CONTRIBUTING.md d53fcd7485 Fixes #4374 - Nukes all (?) legacy Driver and Application stuff; revamps tests (#4376) 1 lună în urmă
Directory.Build.props b0f32811eb Fixes #3930 - Splits tests to `Tests/UnitTests`, `Tests/IntegrationTests`, `Tests/StressTests` (#3954) 9 luni în urmă
Directory.Packages.props cd75a20c60 Fixes #4387. Runes should not be used on a cell, but rather should use a single grapheme rendering 1 or 2 columns (#4388) 3 săptămâni în urmă
GitVersion.yml f4d4a25704 pre-alpha -> alpha (#4158) 6 luni în urmă
LICENSE 38af4cfcb8 Add 8 ani în urmă
NULLABLE_VIEWS_REMAINING.md c5906c2dc1 #4329—Major Terminal.Gui v2 Architecture Modernization: Application Decoupling, Terminology Improvements, and Nullable Migration (#4338) 3 săptămâni în urmă
NoSamples.slnf ba4503a2b0 Fixed release builds 4 6 luni în urmă
PR_DESCRIPTION_UPDATED.md c5906c2dc1 #4329—Major Terminal.Gui v2 Architecture Modernization: Application Decoupling, Terminology Improvements, and Nullable Migration (#4338) 3 săptămâni în urmă
README.md be9d1939c1 Fixes #4372 - Genericize `FlagSelector`/`OptionSelector`, Replace `RadioGroup` (#4373) 1 lună în urmă
Release.slnf ba4503a2b0 Fixed release builds 4 6 luni în urmă
Terminal.sln e199063a31 Introduce IRunnable interface architecture with Fluent API (Phase 1) (#4405) 3 săptămâni în urmă
Terminal.sln.DotSettings e199063a31 Introduce IRunnable interface architecture with Fluent API (Phase 1) (#4405) 3 săptămâni în urmă
Terminal.sln.ToDo.DotSettings afa7da3ae5 Fixes #4078 - Implement automatic URL detection with OSC 8 hyperlinks at driver level (#4340) 1 lună în urmă
codecov.yml c5906c2dc1 #4329—Major Terminal.Gui v2 Architecture Modernization: Application Decoupling, Terminology Improvements, and Nullable Migration (#4338) 3 săptămâni în urmă
global.json dcb3b359ad Fixes #2926 - Refactor KeyEvent and KeyEventEventArgs to simplify (#2927) 2 ani în urmă
nuget.config 8fef16d35f Fixes #4116. NativeAot and SelfContained projects aren't working well in release mode (#4117) 6 luni în urmă
pull_request_template.md b84862d0bd Fixes #3172. `Application.ResetState` wasn't resetting all it should (#3173) 1 an în urmă
testenvironments.json 8ea6b105fc Fixes #2923. Ensures only clear Instances if they really was disposed. (#2924) 2 ani în urmă

README.md

Version codecov Downloads License Bugs

Terminal.Gui v2

The premier toolkit for building rich console apps for Windows, the Mac, and Linux/Unix.

logo

  • The current, stable, release of Terminal.Gui v1 is Version.

:warning: Note:
v1 is in maintenance mode and we will only accept PRs for issues impacting existing functionality.

  • The current Alpha release of Terminal.Gui v2 is NuGet Version

:warning: Note:
Developers starting new TUI projects are encouraged to target v2 Alpha. The API is significantly changed, and significantly improved. There will be breaking changes in the API before Beta, but the core API is stable.

Sample app

Quick Start

Paste these commands into your favorite terminal on Windows, Mac, or Linux. This will install the Terminal.Gui.Templates, create a new "Hello World" TUI app, and run it.

(Press CTRL-Q to exit the app)

dotnet new --install Terminal.Gui.templates
dotnet new tui -n myproj
cd myproj
dotnet run

To run the UICatalog demo app that shows all the controls and features of the toolkit, use the following command:

dotnet run --project Examples/UICatalog/UICatalog.csproj

There is also a visual designer (uses Terminal.Gui itself).

Documentation

The full developer documentation for Terminal.Gui is available at gui-cs.github.io/Terminal.Gui.

Getting Started

API Reference

For detailed API documentation, see the API Reference.

Installing

Use NuGet to install the Terminal.Gui NuGet package:

v2 Alpha

(Infrequently updated, but stable enough for production use)

dotnet add package Terminal.Gui --version "2.0.0-alpha.*"

v2 Develop

(Frequently updated, but may have breaking changes)

dotnet add package Terminal.Gui --version "2.0.0-develop.*"

Legacy v1

dotnet add package Terminal.Gui --version "1.*

Or, you can use the Terminal.Gui.Templates.

Contributing

See CONTRIBUTING.md for complete contribution guidelines.

Debates on architecture and design can be found in Issues tagged with design.

History

See gui-cs for how this project came to be.