2021-04-28 03:13:23 +03:00
|
|
|
![terminal-logos](https://user-images.githubusercontent.com/48369326/115790869-4c852b00-a37c-11eb-97f1-f61972c7800c.png)
|
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
# Welcome to the Windows Terminal, Console and Command-Line repo
|
2019-09-26 08:00:06 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
This repository contains the source code for:
|
2019-09-26 08:00:06 +03:00
|
|
|
|
2020-05-19 19:19:04 +03:00
|
|
|
* [Windows Terminal](https://aka.ms/terminal)
|
|
|
|
* [Windows Terminal Preview](https://aka.ms/terminal-preview)
|
2019-09-26 08:00:06 +03:00
|
|
|
* The Windows console host (`conhost.exe`)
|
|
|
|
* Components shared between the two projects
|
2020-10-22 03:29:36 +03:00
|
|
|
* [ColorTool](https://github.com/microsoft/terminal/tree/main/src/tools/ColorTool)
|
|
|
|
* [Sample projects](https://github.com/microsoft/terminal/tree/main/samples)
|
2020-10-15 21:49:11 +03:00
|
|
|
that show how to consume the Windows Console APIs
|
2019-10-11 22:45:05 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
Related repositories include:
|
2019-09-26 08:00:06 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
* [Windows Terminal Documentation](https://docs.microsoft.com/windows/terminal)
|
|
|
|
([Repo: Contribute to the docs](https://github.com/MicrosoftDocs/terminal))
|
2019-09-26 08:00:06 +03:00
|
|
|
* [Console API Documentation](https://github.com/MicrosoftDocs/Console-Docs)
|
2019-10-15 07:46:34 +03:00
|
|
|
* [Cascadia Code Font](https://github.com/Microsoft/Cascadia-Code)
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-24 20:41:21 +03:00
|
|
|
## Installing and running Windows Terminal
|
2019-07-24 19:31:56 +03:00
|
|
|
|
2020-10-15 03:45:38 +03:00
|
|
|
> 🔴 Note: Windows Terminal requires Windows 10 1903 (build 18362) or later
|
2019-07-24 19:31:56 +03:00
|
|
|
|
2020-02-15 01:58:11 +03:00
|
|
|
### Microsoft Store [Recommended]
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
Install the [Windows Terminal from the Microsoft Store][store-install-link].
|
|
|
|
This allows you to always be on the latest version when we release new builds
|
|
|
|
with automatic upgrades.
|
2020-02-15 01:58:11 +03:00
|
|
|
|
|
|
|
This is our preferred method.
|
|
|
|
|
|
|
|
### Other install methods
|
|
|
|
|
|
|
|
#### Via GitHub
|
2019-10-11 22:45:05 +03:00
|
|
|
|
2021-03-15 20:29:20 +03:00
|
|
|
For users who are unable to install Windows Terminal from the Microsoft Store,
|
|
|
|
released builds can be manually downloaded from this repository's [Releases
|
2020-10-15 21:49:11 +03:00
|
|
|
page](https://github.com/microsoft/terminal/releases).
|
2019-09-26 08:00:06 +03:00
|
|
|
|
2021-03-15 20:29:20 +03:00
|
|
|
Download the `Microsoft.WindowsTerminal_<versionNumber>.msixbundle` file from
|
|
|
|
the **Assets** section. To install the app, you can simply double-click on the
|
|
|
|
`.msixbundle` file, and the app installer should automatically run. If that
|
|
|
|
fails for any reason, you can try the following command at a PowerShell prompt:
|
|
|
|
|
|
|
|
```powershell
|
|
|
|
# NOTE: If you are using PowerShell 7+, please run
|
|
|
|
# Import-Module Appx -UseWindowsPowerShell
|
|
|
|
# before using Add-AppxPackage.
|
|
|
|
|
|
|
|
Add-AppxPackage Microsoft.WindowsTerminal_<versionNumber>.msixbundle
|
|
|
|
```
|
|
|
|
|
2020-10-15 03:45:38 +03:00
|
|
|
> 🔴 Note: If you install Terminal manually:
|
2019-10-15 07:46:34 +03:00
|
|
|
>
|
2020-10-15 21:49:11 +03:00
|
|
|
> * Terminal will not auto-update when new builds are released so you will need
|
|
|
|
> to regularly install the latest Terminal release to receive all the latest
|
|
|
|
> fixes and improvements!
|
2019-09-26 08:00:06 +03:00
|
|
|
|
2020-05-27 19:34:32 +03:00
|
|
|
#### Via Windows Package Manager CLI (aka winget)
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
[winget](https://github.com/microsoft/winget-cli) users can download and install
|
|
|
|
the latest Terminal release by installing the `Microsoft.WindowsTerminal`
|
|
|
|
package:
|
2020-05-27 19:34:32 +03:00
|
|
|
|
|
|
|
```powershell
|
|
|
|
winget install --id=Microsoft.WindowsTerminal -e
|
|
|
|
```
|
|
|
|
|
2020-02-15 01:58:11 +03:00
|
|
|
#### Via Chocolatey (unofficial)
|
2019-07-25 20:50:57 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
[Chocolatey](https://chocolatey.org) users can download and install the latest
|
|
|
|
Terminal release by installing the `microsoft-windows-terminal` package:
|
2019-07-25 20:50:57 +03:00
|
|
|
|
|
|
|
```powershell
|
|
|
|
choco install microsoft-windows-terminal
|
|
|
|
```
|
|
|
|
|
2019-09-26 08:00:06 +03:00
|
|
|
To upgrade Windows Terminal using Chocolatey, run the following:
|
|
|
|
|
2019-07-25 20:50:57 +03:00
|
|
|
```powershell
|
|
|
|
choco upgrade microsoft-windows-terminal
|
|
|
|
```
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
If you have any issues when installing/upgrading the package please go to the
|
|
|
|
[Windows Terminal package
|
|
|
|
page](https://chocolatey.org/packages/microsoft-windows-terminal) and follow the
|
|
|
|
[Chocolatey triage process](https://chocolatey.org/docs/package-triage-process)
|
2019-07-25 20:50:57 +03:00
|
|
|
|
2020-08-18 21:08:22 +03:00
|
|
|
#### Via Scoop (unofficial)
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
[Scoop](https://scoop.sh) users can download and install the latest Terminal
|
|
|
|
release by installing the `windows-terminal` package:
|
2020-08-18 21:08:22 +03:00
|
|
|
|
|
|
|
```powershell
|
2020-10-19 23:08:37 +03:00
|
|
|
scoop bucket add extras
|
2020-08-18 21:08:22 +03:00
|
|
|
scoop install windows-terminal
|
|
|
|
```
|
|
|
|
|
|
|
|
To update Windows Terminal using Scoop, run the following:
|
|
|
|
|
|
|
|
```powershell
|
|
|
|
scoop update windows-terminal
|
|
|
|
```
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
If you have any issues when installing/updating the package, please search for
|
|
|
|
or report the same on the [issues
|
|
|
|
page](https://github.com/lukesampson/scoop-extras/issues) of Scoop Extras bucket
|
|
|
|
repository.
|
2020-08-18 21:08:22 +03:00
|
|
|
|
2019-09-26 08:00:06 +03:00
|
|
|
---
|
|
|
|
|
2020-06-09 23:27:00 +03:00
|
|
|
## Windows Terminal 2.0 Roadmap
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
The plan for delivering Windows Terminal 2.0 [is described
|
|
|
|
here](/doc/terminal-v2-roadmap.md) and will be updated as the project proceeds.
|
2020-06-09 23:27:00 +03:00
|
|
|
|
2019-09-26 08:00:06 +03:00
|
|
|
## Project Build Status
|
2019-05-14 22:44:46 +03:00
|
|
|
|
|
|
|
Project|Build Status
|
|
|
|
---|---
|
2020-10-22 03:29:36 +03:00
|
|
|
Terminal|[![Terminal Build Status](https://dev.azure.com/ms/terminal/_apis/build/status/terminal%20CI?branchName=main)](https://dev.azure.com/ms/terminal/_build?definitionId=136)
|
2020-10-15 21:49:11 +03:00
|
|
|
ColorTool|![Colortool Build Status](https://microsoft.visualstudio.com/_apis/public/build/definitions/c93e867a-8815-43c1-92c4-e7dd5404f1e1/17023/badge)
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-09-26 08:00:06 +03:00
|
|
|
---
|
|
|
|
|
|
|
|
## Terminal & Console Overview
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
Please take a few minutes to review the overview below before diving into the
|
|
|
|
code:
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-09-26 08:00:06 +03:00
|
|
|
### Windows Terminal
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
Windows Terminal is a new, modern, feature-rich, productive terminal application
|
|
|
|
for command-line users. It includes many of the features most frequently
|
|
|
|
requested by the Windows command-line community including support for tabs, rich
|
|
|
|
text, globalization, configurability, theming & styling, and more.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
The Terminal will also need to meet our goals and measures to ensure it remains
|
|
|
|
fast and efficient, and doesn't consume vast amounts of memory or power.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-11 22:45:05 +03:00
|
|
|
### The Windows Console Host
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
The Windows Console host, `conhost.exe`, is Windows' original command-line user
|
|
|
|
experience. It also hosts Windows' command-line infrastructure and the Windows
|
|
|
|
Console API server, input engine, rendering engine, user preferences, etc. The
|
|
|
|
console host code in this repository is the actual source from which the
|
|
|
|
`conhost.exe` in Windows itself is built.
|
|
|
|
|
|
|
|
Since taking ownership of the Windows command-line in 2014, the team added
|
|
|
|
several new features to the Console, including background transparency,
|
|
|
|
line-based selection, support for [ANSI / Virtual Terminal
|
|
|
|
sequences](https://en.wikipedia.org/wiki/ANSI_escape_code), [24-bit
|
|
|
|
color](https://devblogs.microsoft.com/commandline/24-bit-color-in-the-windows-console/),
|
|
|
|
a [Pseudoconsole
|
|
|
|
("ConPTY")](https://devblogs.microsoft.com/commandline/windows-command-line-introducing-the-windows-pseudo-console-conpty/),
|
|
|
|
and more.
|
|
|
|
|
|
|
|
However, because Windows Console's primary goal is to maintain backward
|
|
|
|
compatibility, we have been unable to add many of the features the community
|
|
|
|
(and the team) have been wanting for the last several years including tabs,
|
|
|
|
unicode text, and emoji.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
|
|
|
These limitations led us to create the new Windows Terminal.
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
> You can read more about the evolution of the command-line in general, and the
|
|
|
|
> Windows command-line specifically in [this accompanying series of blog
|
|
|
|
> posts](https://devblogs.microsoft.com/commandline/windows-command-line-backgrounder/)
|
|
|
|
> on the Command-Line team's blog.
|
2019-10-15 07:46:34 +03:00
|
|
|
|
2019-09-26 08:00:06 +03:00
|
|
|
### Shared Components
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
While overhauling Windows Console, we modernized its codebase considerably,
|
|
|
|
cleanly separating logical entities into modules and classes, introduced some
|
|
|
|
key extensibility points, replaced several old, home-grown collections and
|
|
|
|
containers with safer, more efficient [STL
|
|
|
|
containers](https://docs.microsoft.com/en-us/cpp/standard-library/stl-containers?view=vs-2019),
|
|
|
|
and made the code simpler and safer by using Microsoft's [Windows Implementation
|
|
|
|
Libraries - WIL](https://github.com/Microsoft/wil).
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
This overhaul resulted in several of Console's key components being available
|
|
|
|
for re-use in any terminal implementation on Windows. These components include a
|
|
|
|
new DirectWrite-based text layout and rendering engine, a text buffer capable of
|
|
|
|
storing both UTF-16 and UTF-8, a VT parser/emitter, and more.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
### Creating the new Windows Terminal
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
When we started planning the new Windows Terminal application, we explored and
|
|
|
|
evaluated several approaches and technology stacks. We ultimately decided that
|
|
|
|
our goals would be best met by continuing our investment in our C++ codebase,
|
|
|
|
which would allow us to reuse several of the aforementioned modernized
|
|
|
|
components in both the existing Console and the new Terminal. Further, we
|
|
|
|
realized that this would allow us to build much of the Terminal's core itself as
|
|
|
|
a reusable UI control that others can incorporate into their own applications.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
The result of this work is contained within this repo and delivered as the
|
|
|
|
Windows Terminal application you can download from the Microsoft Store, or
|
|
|
|
[directly from this repo's
|
|
|
|
releases](https://github.com/microsoft/terminal/releases).
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-09-26 08:00:06 +03:00
|
|
|
---
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
## Resources
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
For more information about Windows Terminal, you may find some of these
|
|
|
|
resources useful and interesting:
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
* [Command-Line Blog](https://devblogs.microsoft.com/commandline)
|
2020-10-15 21:49:11 +03:00
|
|
|
* [Command-Line Backgrounder Blog
|
|
|
|
Series](https://devblogs.microsoft.com/commandline/windows-command-line-backgrounder/)
|
|
|
|
* Windows Terminal Launch: [Terminal "Sizzle
|
|
|
|
Video"](https://www.youtube.com/watch?v=8gw0rXPMMPE&list=PLEHMQNlPj-Jzh9DkNpqipDGCZZuOwrQwR&index=2&t=0s)
|
|
|
|
* Windows Terminal Launch: [Build 2019
|
|
|
|
Session](https://www.youtube.com/watch?v=KMudkRcwjCw)
|
|
|
|
* Run As Radio: [Show 645 - Windows Terminal with Richard
|
|
|
|
Turner](http://www.runasradio.com/Shows/Show/645)
|
|
|
|
* Azure Devops Podcast: [Episode 54 - Kayla Cinnamon and Rich Turner on DevOps
|
|
|
|
on the Windows
|
|
|
|
Terminal](http://azuredevopspodcast.clear-measure.com/kayla-cinnamon-and-rich-turner-on-devops-on-the-windows-terminal-team-episode-54)
|
|
|
|
* Microsoft Ignite 2019 Session: [The Modern Windows Command Line: Windows
|
|
|
|
Terminal -
|
|
|
|
BRK3321](https://myignite.techcommunity.microsoft.com/sessions/81329?source=sessions)
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
---
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
## FAQ
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
### I built and ran the new Terminal, but it looks just like the old console
|
|
|
|
|
|
|
|
Cause: You're launching the incorrect solution in Visual Studio.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
Solution: Make sure you're building & deploying the `CascadiaPackage` project in
|
|
|
|
Visual Studio.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
> ⚠ Note: `OpenConsole.exe` is just a locally-built `conhost.exe`, the classic
|
|
|
|
> Windows Console that hosts Windows' command-line infrastructure. OpenConsole
|
|
|
|
> is used by Windows Terminal to connect to and communicate with command-line
|
|
|
|
> applications (via
|
|
|
|
> [ConPty](https://devblogs.microsoft.com/commandline/windows-command-line-introducing-the-windows-pseudo-console-conpty/)).
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
---
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-05-16 00:09:58 +03:00
|
|
|
## Documentation
|
|
|
|
|
2021-04-21 18:53:44 +03:00
|
|
|
All project documentation is located at [aka.ms/terminal-docs](https://aka.ms/terminal-docs). If you would like
|
2020-10-15 21:49:11 +03:00
|
|
|
to contribute to the documentation, please submit a pull request on the [Windows
|
|
|
|
Terminal Documentation repo](https://github.com/MicrosoftDocs/terminal).
|
2019-05-16 00:09:58 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
---
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
## Contributing
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
We are excited to work alongside you, our amazing community, to build and
|
|
|
|
enhance Windows Terminal\!
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
***BEFORE you start work on a feature/fix***, please read & follow our
|
|
|
|
[Contributor's
|
2020-10-22 03:29:36 +03:00
|
|
|
Guide](https://github.com/microsoft/terminal/blob/main/CONTRIBUTING.md) to
|
2020-10-15 21:49:11 +03:00
|
|
|
help avoid any wasted or duplicate effort.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
## Communicating with the Team
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
The easiest way to communicate with the team is via GitHub issues.
|
2019-10-11 22:45:05 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
Please file new issues, feature requests and suggestions, but **DO search for
|
|
|
|
similar open/closed pre-existing issues before creating a new issue.**
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
If you would like to ask a question that you feel doesn't warrant an issue
|
|
|
|
(yet), please reach out to us via Twitter:
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
* Kayla Cinnamon, Program Manager:
|
|
|
|
[@cinnamon\_msft](https://twitter.com/cinnamon_msft)
|
2019-10-15 07:46:34 +03:00
|
|
|
* Dustin Howett, Engineering Lead: [@dhowett](https://twitter.com/DHowett)
|
2020-10-15 21:49:11 +03:00
|
|
|
* Michael Niksa, Senior Developer:
|
|
|
|
[@michaelniksa](https://twitter.com/MichaelNiksa)
|
2019-10-15 07:46:34 +03:00
|
|
|
* Mike Griese, Developer: [@zadjii](https://twitter.com/zadjii)
|
|
|
|
* Carlos Zamora, Developer: [@cazamor_msft](https://twitter.com/cazamor_msft)
|
2019-12-12 02:50:24 +03:00
|
|
|
* Leon Liang, Developer: [@leonmsft](https://twitter.com/leonmsft)
|
2020-08-13 01:05:04 +03:00
|
|
|
* Pankaj Bhojwani, Developer
|
2021-04-22 06:43:19 +03:00
|
|
|
* Leonard Hecker, Developer: [@LeonardHecker](https://twitter.com/LeonardHecker)
|
2019-09-26 08:00:06 +03:00
|
|
|
|
|
|
|
## Developer Guidance
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
## Prerequisites
|
2019-06-18 02:39:55 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
* You must be running Windows 1903 (build >= 10.0.18362.0) or later to run
|
|
|
|
Windows Terminal
|
|
|
|
* You must [enable Developer Mode in the Windows Settings
|
|
|
|
app](https://docs.microsoft.com/en-us/windows/uwp/get-started/enable-your-device-for-development)
|
|
|
|
to locally install and run Windows Terminal
|
|
|
|
* You must have the [Windows 10 1903
|
|
|
|
SDK](https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk)
|
|
|
|
installed
|
|
|
|
* You must have at least [VS
|
|
|
|
2019](https://visualstudio.microsoft.com/downloads/) installed
|
|
|
|
* You must install the following Workloads via the VS Installer. Note: Opening
|
|
|
|
the solution in VS 2019 will [prompt you to install missing components
|
|
|
|
automatically](https://devblogs.microsoft.com/setup/configure-visual-studio-across-your-organization-with-vsconfig/):
|
2019-10-15 07:46:34 +03:00
|
|
|
* Desktop Development with C++
|
|
|
|
* Universal Windows Platform Development
|
|
|
|
* **The following Individual Components**
|
|
|
|
* C++ (v142) Universal Windows Platform Tools
|
2019-06-18 02:39:55 +03:00
|
|
|
|
2019-05-14 22:44:46 +03:00
|
|
|
## Building the Code
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
This repository uses [git
|
|
|
|
submodules](https://git-scm.com/book/en/v2/Git-Tools-Submodules) for some of its
|
|
|
|
dependencies. To make sure submodules are restored or updated, be sure to run
|
|
|
|
the following prior to building:
|
2019-05-14 22:44:46 +03:00
|
|
|
|
|
|
|
```shell
|
|
|
|
git submodule update --init --recursive
|
|
|
|
```
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
OpenConsole.sln may be built from within Visual Studio or from the command-line
|
|
|
|
using a set of convenience scripts & tools in the **/tools** directory:
|
2019-05-22 00:44:22 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
### Building in PowerShell
|
2019-05-22 00:44:22 +03:00
|
|
|
|
|
|
|
```powershell
|
|
|
|
Import-Module .\tools\OpenConsole.psm1
|
|
|
|
Set-MsBuildDevEnvironment
|
|
|
|
Invoke-OpenConsoleBuild
|
|
|
|
```
|
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
### Building in Cmd
|
2019-05-14 22:44:46 +03:00
|
|
|
|
|
|
|
```shell
|
|
|
|
.\tools\razzle.cmd
|
|
|
|
bcz
|
|
|
|
```
|
|
|
|
|
2019-12-30 20:41:08 +03:00
|
|
|
## Running & Debugging
|
2019-10-15 07:46:34 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
To debug the Windows Terminal in VS, right click on `CascadiaPackage` (in the
|
|
|
|
Solution Explorer) and go to properties. In the Debug menu, change "Application
|
|
|
|
process" and "Background task process" to "Native Only".
|
2019-10-15 07:46:34 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
You should then be able to build & debug the Terminal project by hitting
|
|
|
|
<kbd>F5</kbd>.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
> 👉 You will _not_ be able to launch the Terminal directly by running the
|
|
|
|
> WindowsTerminal.exe. For more details on why, see
|
|
|
|
> [#926](https://github.com/microsoft/terminal/issues/926),
|
|
|
|
> [#4043](https://github.com/microsoft/terminal/issues/4043)
|
2019-09-26 08:00:06 +03:00
|
|
|
|
|
|
|
### Coding Guidance
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-10-15 07:46:34 +03:00
|
|
|
Please review these brief docs below about our coding practices.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
> 👉 If you find something missing from these docs, feel free to contribute to
|
|
|
|
> any of our documentation files anywhere in the repository (or write some new
|
|
|
|
> ones!)
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
This is a work in progress as we learn what we'll need to provide people in
|
|
|
|
order to be effective contributors to our project.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-22 03:29:36 +03:00
|
|
|
* [Coding Style](https://github.com/microsoft/terminal/blob/main/doc/STYLE.md)
|
|
|
|
* [Code Organization](https://github.com/microsoft/terminal/blob/main/doc/ORGANIZATION.md)
|
|
|
|
* [Exceptions in our legacy codebase](https://github.com/microsoft/terminal/blob/main/doc/EXCEPTIONS.md)
|
|
|
|
* [Helpful smart pointers and macros for interfacing with Windows in WIL](https://github.com/microsoft/terminal/blob/main/doc/WIL.md)
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2019-09-26 08:00:06 +03:00
|
|
|
---
|
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
## Code of Conduct
|
2019-05-14 22:44:46 +03:00
|
|
|
|
2020-10-15 21:49:11 +03:00
|
|
|
This project has adopted the [Microsoft Open Source Code of
|
|
|
|
Conduct][conduct-code]. For more information see the [Code of Conduct
|
|
|
|
FAQ][conduct-FAQ] or contact [opencode@microsoft.com][conduct-email] with any
|
|
|
|
additional questions or comments.
|
2019-05-14 22:44:46 +03:00
|
|
|
|
|
|
|
[conduct-code]: https://opensource.microsoft.com/codeofconduct/
|
|
|
|
[conduct-FAQ]: https://opensource.microsoft.com/codeofconduct/faq/
|
2019-05-15 01:04:01 +03:00
|
|
|
[conduct-email]: mailto:opencode@microsoft.com
|
2020-05-19 19:19:04 +03:00
|
|
|
[store-install-link]: https://aka.ms/terminal
|