Description: The new Windows Terminal and the original Windows console host, all in the same place!
View microsoft/terminal on GitHub ↗
Detailed Description
The microsoft/terminal repository is the central hub for the development of the Windows Terminal, a modern, feature-rich terminal application for Windows, and the original Windows console host. Its primary purpose is to provide a modern and customizable command-line experience for users, addressing limitations of the legacy console host. This repository houses the source code for the Windows Terminal, Windows Terminal Preview, the Windows console host (`conhost.exe`), and shared components used by both. It also includes tools like ColorTool and sample projects demonstrating the use of Windows Console APIs.
The Windows Terminal is designed to be a significant upgrade over the traditional Windows console. Key features include support for tabs, allowing users to manage multiple command-line sessions within a single window. It offers rich text rendering, improved globalization support, and extensive configurability, enabling users to customize the terminal's appearance and behavior. The terminal also incorporates theming and styling options, allowing for a personalized user experience. The project emphasizes performance, aiming to be fast and efficient, minimizing resource consumption.
The repository provides multiple installation methods for the Windows Terminal. The recommended approach is through the Microsoft Store, ensuring users always have the latest version with automatic updates. Alternative installation methods include downloading releases directly from the repository's Releases page, using the Windows Package Manager (winget), Chocolatey (unofficial), and Scoop (unofficial). The repository also offers Windows Terminal Canary, a nightly build providing access to the latest code from the `main` branch, though it is less stable.
The repository's structure reflects the evolution of the Windows command-line. It includes the source code for the Windows console host (`conhost.exe`), the original command-line interface. The console host provides the underlying infrastructure for command-line applications, including the console API server, input engine, and rendering engine. The repository also contains shared components that have been modernized and made reusable, such as a DirectWrite-based text layout and rendering engine, a text buffer supporting UTF-16 and UTF-8, and a VT parser/emitter.
The development of the Windows Terminal leverages these shared components, allowing for code reuse and consistency. The project's architecture is built upon C++, allowing for efficient performance and integration with existing Windows components. The repository provides comprehensive documentation, including a roadmap outlining the project's future development. It also includes resources such as the Command-Line Blog and various videos and podcasts, providing additional information about the Windows Terminal and the command-line ecosystem.
The repository encourages community contributions and provides detailed guidance for developers. It outlines prerequisites for building the code, including the necessary Windows SDK, Visual Studio version, and workloads. It provides instructions for building the code using PowerShell or Cmd, and offers guidance on running and debugging the terminal within Visual Studio. The repository also includes coding style guidelines and code organization principles to ensure consistency and maintainability. The project adheres to the Microsoft Open Source Code of Conduct, fostering a welcoming and collaborative environment for contributors. The repository serves as a central resource for developers, users, and anyone interested in the evolution of the Windows command-line experience.
Fetching additional details & charts...