Compare commits

..

85 Commits

Author SHA1 Message Date
Lucas Trzesniewski
b4e69c6862 Add safeUriSchemes setting (#20207)
This adds a `safeUriSchemes` global setting which lets you define
hyperlink URI schemes which the user considers safe. No confirmation
dialog will be shown when trying to open hyperlinks which use these
schemes.

- This solves the root issue, but doesn't introduce any UI or
  documentation changes. I wanted to validate the approach and
  implementation with you first.
- I closely followed the code handling the `disabledProfileSources`
  setting, which is of the same type.
- This feature does not change the behavior of `http`, `https` and
  `file` schemes.

Validation

I ran the dev terminal, and tested the behavior by clicking on `vscode`
hyperlinks generated by ripgrep with various `safeUriSchemes` settings:

- Setting not defined - asks for confirmation
- `["vscode"]` - does not ask for confirmation
- `["foo", "vscode"]` - does not ask for confirmation
- `["foo"]` - asks for confirmation
- `null` - asks for confirmation
- `[]` - asks for confirmation
- `[""]` - asks for confirmation
- `[{"foo": "bar"}]` - fails to deserialize (as expected)

A few uinit tests failed, but they seem unrelated to these changes:
- `KeyBindingTests` in `UnitTests_SettingsModel`, probably because I use
  an AZERTY keyboard.
- A few `Conhost` tests, but I didn't touch this part

Refs #20065
Closes #20191

(cherry picked from commit fb71a0462e)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgshlaM
Service-Version: 1.24
2026-05-12 16:39:39 -05:00
Dustin L. Howett
f86f4a2666 sixel: prevent allocating an absurd amount of memory or writing OOB (#20213)
This commit implements two fixes for the integer overflow/out-of-bounds
write reported in #20149.

First, it catches any exception generated in sixel char processing
(which will prevent `out_of_memory` or `bad_alloc` from being ignored
sight-unseen, and will prevent the consumption of further DCS content).

Second, it prevents us from allocating memory for an image which will
never be displayed (because it exceeds the height of the display.)

This supersedes prior work in #20153 for the same issues.

Closes #20149
Closes #20153

Co-authored-by: James Holderness <j4_james@hotmail.com>
(cherry picked from commit c829d4ca54)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgrY_zM
Service-Version: 1.24
2026-05-12 11:21:54 -05:00
Dustin L. Howett
a5fe5aa2ef Only set startingTitle once, clear up title fallback handling (#20214)
This commit ensures that we only set the starting title once when we
open a new terminal pane.

It also consolidates all title selection into Terminal::GetConsoleTitle,
which is now used in the TitleChanged event.

TitleChanged no longer stores a separate copy of the starting title if
an application attempts to _clear_ the title; that seems like a poorer
implementation of what we already had.

This supersedes work in #20204.

Closes #19340
Closes #20204

Co-authored-by: imsh <im.shaedar@gmail.com>
(cherry picked from commit b991eb048e)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfZJdA
Service-Version: 1.24
2026-05-12 11:21:52 -05:00
Dustin L. Howett
b2fb072d4a Reject DTTERM Window Manipulation resizes with the current size (#20183)
This may help #20182 and #20112
Closes #19310

(cherry picked from commit 3e3b3ad883)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgr3jGI
Service-Version: 1.24
2026-05-11 18:05:52 -05:00
nmurrell07
be8fa0548d fix(resizePane): Mark as handled only when resize succeeds (#20001)
This fix addresses issue #19983 where resizePane actions unconditionally
consume keystrokes even when no resize can occur.

The fix follows the same pattern used for moveFocus and swapPane fixes:
- Changed Tab::ResizePane to return bool indicating success
- Changed TerminalPage::_ResizePane to return bool from ResizePane
- Updated _HandleResizePane to set args.Handled() based on whether
resize succeeded

This allows the keychord to propagate to the terminal when no resize can
occur, matching the behavior of moveFocus and swapPane (#6129).

Closes #19983

---------

Co-authored-by: nmurrell07 <nmurrell07@users.noreply.github.com>
Co-authored-by: Dustin L. Howett <dustin@howett.net>
(cherry picked from commit dadde2fb11)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgr4epk
Service-Version: 1.24
2026-05-11 17:26:58 -05:00
Dustin L. Howett
7f1166d159 Don't allow overflowing lengths in WM_COPYDATA (#20185)
It is possible to craft a packet whose `len` is `0x80000001`.

We should not produce values that do not fit in size_t (on e.g. x86).

Reject them summarily.

(cherry picked from commit 8edac5fb12)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgr4enM
Service-Version: 1.24
2026-05-11 17:26:56 -05:00
Leonard Hecker
aa85f092c3 Improve TSF failure handling (#19965)
An internal AI correctly flagged that we aren't calling
`UnadviseSink()` in case a later `Initialize()` call fails.
We can easily fix this by calling `Uninitialize()`.

(cherry picked from commit 36fb444d3e)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgnOwC0
Service-Version: 1.24
2026-04-29 19:47:04 -05:00
Windows Console Service Bot
6ca9eef13e Localization Updates - URL dialog and PathTranslation - 04/11/2026 (#20096)
Co-authored-by: Console Service Bot <consvc@microsoft.com>
(cherry picked from commit 33a80191c1)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgranS8
Service-Version: 1.24
2026-04-29 19:46:00 -05:00
Dustin L. Howett
59bb0803fa appx: add appLicensing to Preview and Stable manifests (#20163)
This should prevent an outage like the one from #19764

(cherry picked from commit 84e807cbeb)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgrZtm8
Service-Version: 1.24
2026-04-29 19:45:04 -05:00
Carlos Zamora
3cdf864076 Fix rounding error for word selection (#20084)
## Summary of the Pull Request
Dustin reported this bug to me. Thankfully it was an easy fix.

## References and Relevant Issues
Bug from implementing #5099

## Validation Steps Performed
Double-click ____ of right-most cell of a word selects the current word
 right-half
 left-half

(cherry picked from commit 115ec2cbb9)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgraAYs
Service-Version: 1.24
2026-04-29 19:45:02 -05:00
jason
11ccda89e2 Fix Korean IME overlay hiding characters to the right of cursor (#20041)
This commit fixes a regression in v1.24, where composing Korean text
in-between existing characters causes text to the right to be hidden.
This is problematic for the Korean IME, because it commonly inserts
the composed syllable between existing characters.

The fix compresses (removes/absorbs) available whitespace to the right
of the composition to make space for any existing text. This means
that a composition now virtually acts in insert mode.

Closes #20040
Refs #19738
Refs #20039

1. Korean IME: compose `ㄷ` between `가` and `나` → display shows `가ㄷ나`,
`나` visible.
2. TUI box (vim prompt with padding): compose inside padded text box →
border preserved in place.
3. Composition at end of line (no chars to right): unaffected.
4. English and other IME input: not affected (no active composition
row).

Co-authored-by: jason <drvoss@users.noreply.github.com>
Co-authored-by: Leonard Hecker <lhecker@microsoft.com>
(cherry picked from commit 7a83c0f167)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgo0Jpc
Service-Version: 1.24
2026-04-29 19:45:01 -05:00
Dustin L. Howett
54b802fa72 Path translation setting: use 🡒 instead of -> (#20088)
It looks better, as decided by committee.

(cherry picked from commit 41e08a68bd)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgpVp7A
Service-Version: 1.24
2026-04-29 19:44:17 -05:00
Dustin L. Howett
cdd636d146 Display a warning dialog for unsafe URLs (#20065)
We are getting a sufficient number of LLM-generated security reports
telling us that Ctrl+click and a tooltip are insufficient protection
from users clicking on links to dangerous things.

This commit displays a warning that prevents users from blindly clicking
on dangerous things.

Dangerous things include:
- any non-http and non-https and non-file URLs
- any file URLs that point to something understandable as a "program"
(so, something which resides in `PATHEXT`.)

In doing this, I learned that `til::ends_with_insensitive_ascii` was
broken.

I also learned that ContentDialogs summoned by any event handler out of
TermControl::Pointer* would lose focus immediately. It turns out that in
the absolute earliest days of Terminal, when we first created the
UserControl that became TermControl, we added our Tapped event handler.

It unconditionally focused the control.

Since `Tapped` is a higher-level event handler than `PointerPressed`, it
was firing after the gesture that opened the content dialog and stealing
focus back.

I'm fairly certain we don't need it.

Refs #7562

(cherry picked from commit 81170aff78)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgpOYmk
Service-Version: 1.24
2026-04-29 19:41:21 -05:00
Ethan Balakumar
69b3e7a8f5 Terminal receives focus on drag n drop (#20003)
### Summary
Updates terminal to gain foreground focus when a user drags and drops a
file into the terminal.

### Changes
Updates the `DragDropHandler` to call `SetForegroundWindow`.

### Validation
* Built and deployed locally
* Manually verified terminal gains focus when dragging and dropping

Closes #19934

(cherry picked from commit a1a43a4ff5)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgpBNEE
Service-Version: 1.24
2026-04-29 19:41:20 -05:00
Carlos Zamora
8140092162 Improve UX for selection during VTMM (#19973)
Selection in VT mouse mode has been feeling a little weird. I've made a
few changes in this space to improve the overall experience when in vt
mouse mode:
- don't round selection positions: this means that you now highlight the
cell you're on if you're going right, and the adjacent cell if you're
going left
- fix drag-left excluding the current cell
- #9608: shift+click now clears any existing selection instead of
extending it. This feels more intuitive since Shift already works as the
override modifier

Somewhat related to #18106

## Validation
 alt selections feel consistent
 selecting in VTMM feels accurate (selects the cell we started on)
 creating new selections (aka clearing old selection) in VTMM feels
intuitive (forwards and backwards)

Closes #9608

(cherry picked from commit 2e33056fd8)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgna3WE
Service-Version: 1.24
2026-04-29 19:41:18 -05:00
Carlos Zamora
9445a75171 Fix memory leaks with UIA (#19950)
## Summary of the Pull Request
This includes the memory leak fixes that @lhecker and I investigated as
a part of #19710.

The `ITextRangeProvider`s (namely `UiaTextRange`s) weren't being
destroyed after they were done being used by the screen reader.

## Validation Steps Performed
In my own testing, I set a breakpoint on the destructor for
`UiaTextRangeBase`. Prior to this change, that destructor would mainly
be called when the terminal control was closed, which would result in us
leaking these objects. With this change, I've confirmed that these text
ranges are being destroyed immediately after they are done being used
(without needing to close the terminal control).

## PR Checklist
Closes #19710

(cherry picked from commit e2110e716c)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgnCP0M
Service-Version: 1.24
2026-04-29 19:41:17 -05:00
Carlos Zamora
8474eb8329 Update 'restart connection' action to reset internal state (#19971)
## Summary of the Pull Request
I was becoming frustrated with getting in a state where a CLI app (i.e.
Copilot CLI) enters some VT state (like mouse mode) then doesn't unset
it when it accidentally exits. I normally use "Restart connection" to
keep the buffer and connect again. Problem is, "restart connection"
didn't actually reset the internal state! So I would type and get a
bunch of lingering VT escape sequences. This bug is tracked over in
#18425 in a more generic way.

This fixes that bug by doing the following:
- update `ITermDispatch::HardReset()` -->`HardReset(bool erase)`
   - `erase=true` does what `HardReset()` already did
- `erase=false` skips over clearing the screen and resetting the cursor
position
- expose `HardReset(false)` as `HardResetWithoutErase()` by piping it up
through `Terminal` --> `ControlCore` --> `TermControl`
-  update the restart connection handler
- `TerminalPage::_restartPaneConnection()` now calls
`HardResetWithoutErase()` before setting the new connection
- this is also the same route for the "Enter to restart connection"
scenario (text displayed when connection ends)

Relevant notes from PR discussion:
- `PSEUDOCONSOLE_INHERIT_CURSOR` is passed into the new connection via
`_restartPaneConnection()` --> `_duplicateConnectionForRestart()` -->
`_CreateConnectionFromSettings(profile,
*controlSettings.DefaultSettings(), true)`

## Validation Steps Performed
- Used this to enter mouse tracking mode: `Write-Host -NoNewline
"`e[?1003h`e[?1006h"`
- mouse selection doesn't work as usual (expected)
- invoke "restart connection" action
- mouse selection works as usual

Closes #18425

(cherry picked from commit ec939aabda)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgpBL5w
Service-Version: 1.24
2026-04-02 19:15:01 -05:00
Carlos Zamora
d069ea6c29 Fix selection markers appearing on scroll (#20045)
## Summary of the Pull Request
Updates the scroll handler to check the selection mode before updating
the markers.

Introduced in #19974

## Validation Steps Performed
`ls` --> create selection --> scroll away and back
 keyboard selection: markers are present both times
 mouse selection: markers are missing both times

(cherry picked from commit 3104c8feb2)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgo0ICA
Service-Version: 1.24
2026-04-02 19:11:42 -05:00
jason
36bc972e88 Fix Korean IME arrow key inserting character at wrong position (#20039)
Fix a regression introduced in v1.24 where pressing an arrow key during
Korean IME composition caused the committed character to be inserted at
the wrong cursor position.

Before #19738, the Korean IME activated through IMM32 (excluded from TSF
by `TF_TMAE_UIELEMENTENABLEDONLY`) and was not affected by
`TermControl::_KeyHandler` forwarding keys to the PTY during
composition. After #19738, the Korean IME activates through TSF, making
a missing composition guard in `_KeyHandler` visible as a bug.

The sequence of events that causes the bug:

1. User presses Left arrow during active Korean IME composition (e.g.
composing `가`).
2. `_KeyHandler` calls `_TrySendKeyEvent(VK_LEFT)` which enqueues
`\x1b[D` to the PTY input queue. The cursor moves.
3. TSF processes the key. The Korean IME sees the arrow and ends the
composition.
4. `OnEndComposition` schedules `_doCompositionUpdate` with
`TF_ES_ASYNC`.
5. The async session fires, reads finalized text `가`, calls
`HandleOutput("가")`.
6. PTY processes `[\x1b[D, "가"]`: cursor moves left first, then `가` is
inserted at the wrong (already-moved) position.

The fix adds a guard before `_TrySendKeyEvent`, which mirrors the
existing behavior in conhost (windowio.cpp). When TSF has an active
composition, key events are not converted into input. The Korean IME
re-injects navigation and confirmation keys after the composition ends,
at which point `HasActiveComposition()` returns false and they are
forwarded normally.

**Historical note:** This guard was not needed before PR #17067 (v1.22)
because the old implementation used WinRT `CoreTextServices` via XAML
(`TSFInputControl.xaml`). The XAML framework intercepted composition key
events before `_KeyHandler`. The new custom Win32 TSF context in #17067
no longer does this. The bug was latent from v1.22 but only became
visible for Korean in v1.24 when #19738 removed
`TF_TMAE_UIELEMENTENABLEDONLY`.

## Validation Steps Performed

1. Open Windows Terminal with Korean IME (Dubeolsik layout).
2. Type `rk` to begin composing `가` (composition active, syllable not
yet committed).
3. Press the Left arrow key.
4. Before fix: `가` is inserted one cell to the left of the intended
position.
5. After fix: `가` is inserted at the correct position, then cursor moves
left.

Also verified:
- Normal Korean text input (typing without arrow keys) still works
correctly.
- Arrow key navigation when no composition is active still works
correctly.
- English and other IME input is not affected.

Closes #20038
Refs #19738

(cherry picked from commit 14f4271954)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgo0JpQ
Service-Version: 1.24
2026-03-31 17:44:53 -05:00
Dustin L. Howett
6fb0a8f513 conpty: remove accidental bool; use BOOL instead (#20035)
Closes #19102

(cherry picked from commit 01f8a4031d)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgoyJIM
Service-Version: 1.24
2026-03-31 17:23:53 -05:00
Dustin L. Howett
88a2f94f98 Reinstate the (apparently) load-bearing empty bracketed paste (#20037)
Some applications have come to rely on an "empty" bracketed paste packet
to indicate that the clipboard was _requested,_ but not sent. Some
agentic CLI tools use this to guess whether the clipboard contained e.g.
an image or otherwise unserializable data.

Apparently, gnome-terminal and VS Code do this; others as well (I tested
xterm, konsole, gnome-terminal and I can't remember which ones did and
which ones did not.)

Refs #19517

(cherry picked from commit 2870a702f4)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgotgA8
Service-Version: 1.24
2026-03-31 17:23:52 -05:00
gcrtnst
5f7237b0b9 Fix MSB4019 error in ConPTY nupkg (#20029)
This commit fixes the following error that occurs when attempting to use the
`Microsoft.Windows.Console.ConPTY` nupkg in a Visual C++ project:

    MSB4019: The imported project "C:\Microsoft.Windows.Console.ConPTY.props" was not found.

Based on the list of reserved and well-known properties, the property
`MSBuildThisProjectDirectory` does not appear to exist.  This PR
replaces it with the correct property, `MSBuildThisFileDirectory`.

(cherry picked from commit be5dcf8e7a)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgotQIo
Service-Version: 1.24
2026-03-30 17:44:38 -05:00
Sagar
09caec957a Fix copyOnSelect right-click overwriting clipboard with stale selection (#19943)
## Summary of the Pull Request
Fix `copyOnSelect` right-click paste overwriting the clipboard with a
stale selection instead of pasting the current clipboard contents.

## Detailed Description of the Pull Request / Additional comments
When `copyOnSelect` is enabled, the selected text is already copied to
the clipboard on left mouse button release in `PointerReleased`. The
selection is intentionally left visible as a visual reference (the
`_selectionNeedsToBeCopied` flag is set to `false` to track that the
copy already happened).

However, the right-click handler in `PointerPressed` unconditionally
called `CopySelectionToClipboard()` before pasting, ignoring both the
`copyOnSelect` setting and the `_selectionNeedsToBeCopied` flag. This
caused any still-visible selection to be re-copied to the clipboard,
overwriting whatever the user may have copied from another application
(or another terminal tab) in the meantime.

This change splits the right-click behavior based on the `copyOnSelect`
setting:
- **`copyOnSelect: true`** — Skip the redundant copy, clear the
selection, and paste directly. The text was already copied on mouse-up.
- **`copyOnSelect: false`** — Preserve existing behavior: copy the
selection (if any), clear it, and paste only if there was no selection
to copy.

## Validation Steps Performed
1. Set `"copyOnSelect": true` in `settings.json`.
2. Selected text in a terminal pane - verified it was copied to
clipboard on mouse-up.
3. Switched to Notepad, copied different text ("NEW TEXT").
4. Switched back to Terminal (selection still visible), right-clicked —
verified "NEW TEXT" was pasted, not the old selection.
5. Verified right-click with no active selection still pastes clipboard
contents.
6. Verified right-click immediately after selecting (no app switch)
pastes the just-selected text.
7. Set `"copyOnSelect": false` — verified right-click still copies
selection first, then pastes only when no selection exists (original
behavior unchanged).
8. Verified tab-switching with an active selection does not cause stale
clipboard overwrites on right-click.

## PR Checklist
Closes #14465 (dupe of #19942)

---------

Co-authored-by: Sagar Bhure <sagarbhure@microsoft.com>
(cherry picked from commit ad7b34e55f)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgn30Lw
Service-Version: 1.24
2026-03-30 17:44:36 -05:00
Leonard Hecker
96347843d6 Fix a deadlock during cooked reads (#19994)
Closes #19922

## Validation Steps Performed
* The repro now works as expected 
  (`CreatePseudoConsole({1,20})` + `WriteFile("キ")`)

(cherry picked from commit ddf514e99e)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgn2sRY
Service-Version: 1.24
2026-03-30 17:44:34 -05:00
Carlos Zamora
1ad126985e Fix selection markers disappearing after scrolling out of view (#19974)
## Summary of the Pull Request
Pretty straightforward

## Validation Steps Performed
 Selection markers are present after scrolling them out of view and
scrolling back

Closes #17135

(cherry picked from commit 14ee19fc27)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgna-WQ
Service-Version: 1.24
2026-03-30 17:44:33 -05:00
Dustin L. Howett
e0514ffc2d Suppress the invalid media error in Stable (#19969)
It's creating a lot of noise for folks, and it is not particularly
_helpful_ since it does not specify a location or even name which
resource failed to load or parse.

On stable, let's just silently ignore them.

Refs #19964

(cherry picked from commit 6d7fac999a)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgnTk_w
Service-Version: 1.24
2026-03-12 17:13:46 -05:00
Artem Lytkin
87e44682af control: focus terminal on click-drag while search is open (#19931)
## Summary
- Fix inability to copy terminal text via Ctrl+C when the search dialog
is open
- Root cause: click-and-drag doesn't call `Focus()` because `_focused`
is already `true` (set by the search box's bubbling GotFocus)
- Fix: also focus the terminal when the search box contains keyboard
focus

## Detailed Description of the Pull Request / Additional comments
When the search dialog is open and the user click-drags in the terminal
to select text, `_PointerPressedHandler` skips
`Focus(FocusState::Pointer)` because `_focused` is `true`. The
`_focused` flag is `true` because the `SearchBoxControl` is a child of
`TermControl` in the XAML visual tree, so `TermControl`'s
`_GotFocusHandler` fires (via bubbling `GotFocus`) when the search box's
`TextBox` gains focus, setting `_focused = true`.

The fix adds a `ContainsFocus()` check so that focus is explicitly moved
to the terminal when the search box has keyboard focus. This makes
click-drag behavior consistent with tap behavior (`_TappedHandler`
already focuses unconditionally) and uses the same `ContainsFocus()`
pattern already established at lines 1569 and 2366 in the same file.

## Validation Steps Performed
- Verified click-drag + Ctrl+C copies selected text when search dialog
is open
- Verified simple click (tap) in terminal while search is open still
works
- Verified clicking in the search box retains focus in the search box
- Verified typing in search box still works when it has focus
- Verified Escape still closes the search box
- Verified Ctrl+C with no selection while search is open doesn't break
- Code formatted with clang-format

## PR Checklist
 Closes #19908

(cherry picked from commit e2d51636cd)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgnN_t0
Service-Version: 1.24
2026-03-12 17:13:44 -05:00
Leonard Hecker
d310d07598 Make TSF initialization fully fallible (#19958)
Apparently, on some (internal) variants of Windows `TF_CategoryMgr`
can exist while `TF_DisplayAttributeMgr` is absent. This is likely
a variant configuration error, but we shouldn't crash anyway.

Closes MSFT-61309810

(cherry picked from commit 30b1456ffe)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgnOd-c
Service-Version: 1.24
2026-03-12 17:13:43 -05:00
Dustin L. Howett
bf21a15844 vpack: actually, we have to use a 3-segment version number (#19939)
Our last build failed because it tried to pass "10621.0" off as a
uint64. I didn't know it had to be a single number... so let's use the
3-component equivalent (which would have been 1.24.260303001)

(cherry picked from commit 5828fb5ce5)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgms2-I
Service-Version: 1.24
2026-03-12 17:13:41 -05:00
Dustin L. Howett
621e1846a1 Tidy up some of our Velocity features (#19605)
A few features were marked "always disabled" and then enabled in dev,
canary and preview. I simplified those to "always enabled" and disabled
in release instead. This required changes to Generate-FeatureStaging to
make it consider `WindowsInbox` a Release branding (which, honestly, it
always should have been.)

- Feature_DynamicSSHProfiles
- Feature_ShellCompletions
- Feature_SaveSnippet
- Feature_QuickFix

Feature_DisableWebSourceIcons was deprecated in #19143, but the XML file
never got the memo.

(cherry picked from commit afb4752102)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgmV4c4
Service-Version: 1.24
2026-02-27 13:51:16 -06:00
Dustin L. Howett
0e2ef991bf build: make the PGO build work again; upgrade nuget (#19810)
Two main changes:

- the build was failing for ARM64 because the build agents run out of
memory downloading artifacts; this is a known issue that nobody cares to
fix (and it pertains to using the x64 emulated agent host on native
arm64 machines)
   - deleting the PDBs shrinks the build output by 2500MB :P
- we had to switch to a new type of identity for publishing nuget
packages to our cross-org feed

I've verified that we get counts _and_ can even produce final PGO count
packages for both architectures!

(cherry picked from commit 8f3d1d8d01)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgmV1Qg
Service-Version: 1.24
2026-02-27 13:31:56 -06:00
Abhishek Giri
4f490d9216 Fix tab row acrylic material in unfocused windows (#19647)
## Summary
Fixes tab row losing acrylic material when window is unfocused, even
when "Allow acrylic material in unfocused windows" is enabled.

## References
Fixes #19544

## Changes
Modified `_updateThemeColors()` in `TerminalPage.cpp` to check both
window focus state and `EnableUnfocusedAcrylic` setting.

## Testing
- Verified acrylic persists when window loses focus (with setting
enabled)
- Verified acrylic removed when setting disabled (expected behavior)

---------

Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
(cherry picked from commit 28c98c5dc1)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgjj55A
Service-Version: 1.24
2026-02-27 13:21:51 -06:00
Dustin L. Howett
d8efeed904 conpty: Make sure ConDrv is loaded before doing ConPTY things (#19901)
Fixes #4750

(cherry picked from commit 0a3fbdefb3)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgmF1Kk
Service-Version: 1.24
2026-02-27 13:21:49 -06:00
PankajBhojwani
70b1eacf57 Check for command palette's visibility before responding to search text changes (#19885)
Only respond to any search changes in the command palette if the command
palette is visible. Without this check, a previewable action's preview
can appear after the command palette is closed.

## Validation Steps Performed
Preview no longer appears after the command palette is closed

## PR Checklist
Closes #18737

(cherry picked from commit 127775118d)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgmFfaU
Service-Version: 1.24
2026-02-27 13:21:48 -06:00
Dustin L. Howett
785dceaa2f vpack: ensure that we put the right version number in (#19793)
I just submitted a vpack to Windows and it turned out to be version
"0.0.5". Whoops.

(cherry picked from commit 3ec372c176)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgkbCsw
Service-Version: 1.24
2026-02-27 13:21:46 -06:00
Leonard Hecker
d8b5a488a2 Avoid scrolling when the search is open (#19775)
When text scrolls in and out of view, depending on the length
of the scrollback and latency of input, `GetSearchHighlightFocused`
would change which would trigger a `ScrollToSearchHighlight` call.

This PR changes the behavior such that only actively changing the
search mask triggers a search (typing text or pressing enter).

Closes #19754

## Validation Steps Performed
* Brining text in and out of view doesn't scroll 
* Toggling the aA button scrolls results into view 

(cherry picked from commit 71409f84f7)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgkLCdk
Service-Version: 1.24
2026-02-27 13:21:44 -06:00
Carlos Zamora
88891804a8 Replace NullableColorPicker ContentDialog with Flyout (#19572)
## Summary of the Pull Request
Updates the NullableColorPicker to use a flyout instead of a content
dialog. Frankly, it should've been this way from the start.

#19561 is an issue regarding the rectangle on the right side of the
picker. The complaint being that it should be something more useful than
a preview, an idea being that it could be a lightness gradient.
Unfortunately, the WinUI color picker doesn't let you do that. It's just
a plain preview.

That said, there's a lot of customizations that can be added still to
increase value here. To name a few:
- IsColorSliderVisible --> a color slider to adjust the lightness of the
color (as desired in #19561)
- IsHexInputVisible --> an input field to see and adjust the hex value
directly
- IsColorChannelTextInputVisible --> several input fields to adjust
individual RGB channels or switch over to HSV

However, the content dialog doesn't allow for text input due to a WinUI
bug and it's too small to display all of those controls.

Instead, I just discarded the content dialog altogether and opted into a
flyout. This makes it a more consistent experience with the other color
pickers (i.e. tab color, edit color scheme page). This also adds space
for all of the functionality mentioned above (those properties are
enabled by default).

## Validation Steps Performed
 selecting a color still works

Closes #19561

(cherry picked from commit 38d2fdad5f)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgkgbZA
Service-Version: 1.24
2026-02-27 13:21:42 -06:00
Dustin L. Howett
558b90f6bb pgo: train 1.24 separately 2026-02-27 13:21:07 -06:00
Dustin L. Howett
9be0bc6cb9 Remove TerminalAzBridge from sln (missed in 48e2d9333) 2026-02-27 13:20:49 -06:00
William Zhang
eeeb126ab3 Dim the caption buttons for unfocused windows (#19668)
This PR closes #12632 by dimming the caption controls in the titlebar
when unfocused. Leaves them intact when in high contrast mode. The color
used is borrowed from PowerToys' unfocused color.

## Validation Steps Performed
Tested by hovering and unhovering in focused and unfocused states, as
well as in high contrast mode. States are consistent and applied
correctly. I did notice that clicking on the titlebar wouldn't put it
into focus unless I also moved my mouse though, but that is also present
in the release branch.

Closes #12632

(cherry picked from commit 8d94edd7b0)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgkC_KM
Service-Version: 1.24
2026-01-21 18:24:54 -06:00
Leonard Hecker
1e70e182f2 Prevent RPC_E_CANTCALLOUT_ININPUTSYNCCALL during WM_SETTINGCHANGE (#19755)
Closes #19505

(cherry picked from commit e8971c80ae)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgkC_Mg
Service-Version: 1.24
2026-01-21 18:24:53 -06:00
Dustin L. Howett
48e2d93330 Remove TerminalAzBridge and use AzureConnection directly (#19528)
We used to run the cloud shell connector in an intermediate process
because our VT implementation lived mostly in conhost. James fixed that
up over the intervening years, and since #17510 landed Terminal is
exposed to 100% of application-originated VT. That means we no longer
need this workaround, its build steps, or anything else about it.

Closes #4661

(cherry picked from commit 4b946c0d5c)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgkCt5k
Service-Version: 1.24
2026-01-21 16:34:04 -06:00
Dustin L. Howett
6ba10c13d6 Protect more places against not having a XamlRoot (#19753)
We're seeing some crashes where we call `GetFocusedElement(null)`.

MSFT-54686865
MSFT-53824167
Possibly also #19751

(cherry picked from commit 0ee3cfb3fd)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgjzNUE
Service-Version: 1.24
2026-01-21 15:38:45 -06:00
Leonard Hecker
51fd044bd2 Use smart pointers in coroutines (#19752)
After the coroutines resume, `this` may have already been destroyed.
So, this PR adds proper use of `get_weak/strong`.

Closes #19745

(cherry picked from commit a528141fe6)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgjzPAI
Service-Version: 1.24
2026-01-21 15:38:43 -06:00
Dustin L. Howett
633cd6e9dc Wrap window shutdown in a top-level exception handler (#19743)
(cherry picked from commit a0c79b59e6)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgjsATs
Service-Version: 1.24
2026-01-15 13:31:51 -06:00
Leonard Hecker
a3d508a487 Remove TF_TMAE_UIELEMENTENABLEDONLY (#19738)
Closes #19670
Closes #19722

(cherry picked from commit 58f1f3b312)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgjnf9Y
Service-Version: 1.24
2026-01-13 16:47:12 -06:00
Aditya Pandey
0d2e8cecd0 Use theme tabRow color as acrylic tint (#19604) (#19622)
## Summary of the Pull Request
When `useAcrylicInTabRow` is enabled, the theme's `tabRow.background`
color is now used as the acrylic tint instead of being ignored.

## References and Relevant Issues
Fixes #19604

## Detailed Description of the Pull Request / Additional comments
Previously, the code had mutually exclusive branches for handling
`useAcrylicInTabRow` and theme `tabRow.background`. When acrylic was
enabled, the theme color was never evaluated.

This PR extracts the theme's tabRow color first, then uses it as the
acrylic tint if set, falling back to the default if no theme color is
specified.

## Validation Steps Performed
Tested with `useAcrylicInTabRow: true` and custom `tabRow.background` -
acrylic now shows the theme color as tint

## PR Checklist
Closes #19604

(cherry picked from commit 691568195b)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgjj6I8
Service-Version: 1.24
2026-01-13 16:47:11 -06:00
Leonard Hecker
fb3971f681 Fix a freeze when pasting lots of text (#19721)
WinUI doesn't react well to lots of text,
so this PR caps the max. amount shown.

Related to #9232

(cherry picked from commit d05dd85275)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgjXLaM
Service-Version: 1.24
2026-01-13 16:47:10 -06:00
Dustin L. Howett
6115cf31f5 Fix build after backport of 1ca0c76bc7 2025-12-16 18:32:35 -06:00
Anastasia Smigaliova
b277e4b515 Fix cursor being hidden when pressing modifier keys (#19473)
Closes #19445

(cherry picked from commit b357de9897)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgirMuw
Service-Version: 1.24
2025-12-16 18:16:06 -06:00
Samuel D. Leslie
8a8d02f7e1 Minor fixes to the settings schema (#19387)
## Summary of the Pull Request
Fixes a couple of minor issues in the settings schema which can result
in erroneous settings validation failures.

## References and Relevant Issues
None

## Detailed Description of the Pull Request / Additional comments
- `answerbackMessage`
  Permit `null` type (corresponds to the default value).
- `compatibility.input.forceVT`
  Add missing setting (previously was `experimental.input.forceVT`).
- `rendering.graphicsAPI`
  Add missing `automatic` enumeration value.
- Mark several settings as deprecated using the same format and direct
the user to the updated settings to use.

## Validation Steps Performed
Tested updated schema against configuration with above settings present.

## PR Checklist
- [X] Schema updated (if necessary)

---------

Co-authored-by: Carlos Zamora <carlos.zamora@microsoft.com>
(cherry picked from commit fc2d107897)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgirMyU
Service-Version: 1.24
2025-12-16 18:16:04 -06:00
Dustin L. Howett
1ba28b298f env: don't explode when GetShortPathNameW fails (#19284)
It fails inside app containers (!) such as the one used by LocalTests.

(cherry picked from commit 91c9a14a71)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgirMr8
Service-Version: 1.24
2025-12-16 18:16:03 -06:00
Dustin L. Howett
ba6cd3ebd5 When the renderer fails, try to fall back to D2D + WARP; retry changes (#19636)
This commit also ups the number of render failures that are permissible
to 6 (one try plus 5 retries), and moves us to use an exponential
backoff rather than a simple geometric one.

It also suppresses the dialog box in case of present failures for Stable
users. I feel like the warning dialog should be used for something that
the user can actually do something about...

Closes #15601
Closes #18198

(cherry picked from commit 45c5370271)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgiXh2E
Service-Version: 1.24
2025-12-09 17:07:00 -06:00
SEt
5c543bb2be Gracefully handle unavailable TSF from SYSTEM account (#19635)
When run from SYSTEM account TSF seems to be unavailable. The only
missing step to handle that is check during initialization.

Not sure if fail after partial success in `Implementation::Initialize`
should also be gracefully handled.

Closes #19634

(cherry picked from commit 8bb831f628)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgiXm14
Service-Version: 1.24
2025-12-09 17:04:58 -06:00
Dustin L. Howett
8b07837fdd Disallow fragments from containing UNC media paths (#19615)
Fragments are not allowed to declare web-source icons; this is equally
true for UNC paths in the local network (or WebDAV paths!)

(cherry picked from commit 7a7cdec91f)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgiGQDM
Service-Version: 1.24
2025-12-09 11:39:35 -06:00
Windows Console Service Bot
4fd7751d83 Localization Updates - fix ja-jp and fr-fr loc bugs - 12/04/2025 00:46:52 (#19616)
Closes #17191
Closes #18795
Closes #17827

(cherry picked from commit c4668d99b7)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgiGa_k
Service-Version: 1.24
2025-12-09 11:39:33 -06:00
Dustin L. Howett
47da5a11b2 Enable DECRQCRA at compile time for all Terminal builds (#19606)
Support for DECRQCRA Request Checksum of Rectangular Area was added in
#14989, but left disabled at build time because it could be considered a
security risk.

In #17895, we unconditionally added a toggle for it to Terminal's
settings UI and settings schema (`compatibility.allowDECRQCRA`). For
users on Stable and Preview, it didn't actually enable anything. Whoops.

Since we have a way to turn it off (and in so doing, mitigate the risk)
in Terminal, it's high time for us to remove the feature gating.

Conhost doesn't support turning it off for now and so conhost can still
have it compiled out, as a treat.

(cherry picked from commit 3e29d2a316)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgiA9JY
Service-Version: 1.24
2025-12-09 11:29:20 -06:00
penguin-sophist
08a981d7b7 Fix negative delta scroll (#19573)
This fixes the sign extension from 16 to 32 bit by casting
from the unsigned to the signed type first.

Closes #19391
Closes #19484

(cherry picked from commit fb75fb56c0)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzghttY4
Service-Version: 1.24
2025-12-09 11:29:18 -06:00
Leonard Hecker
7e69a2e96f Fix a WPF<>TSF crash by avoiding TF_TMAE_CONSOLE (#19584)
As explained in detail in the diff.

Closes #19562

(cherry picked from commit 1ca0c76bc7)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzghp8js
Service-Version: 1.24
2025-11-24 12:50:58 -06:00
Yash kumar kasaudhan
5205575d4d Fix #19390: Make snap-on-input conditional to prevent blocking programmatic scroll (#19414)
## Summary of the Pull Request
This PR fixes a bug where programmatic scrolling would get stuck. The
fix makes the "snap-on-input" feature conditional, activating it only
for modern applications that use Virtual Terminal (VT) processing. This
restores correct scrolling behavior for legacy applications without
removing the feature for new ones.

## References and Relevant Issues
Fixes #19390: OpenConsole: Cursor visibility prevents programmatic
scrolling

## Detailed Description of the Pull Request / Additional comments
The "snap-on-input" feature introduced in a previous PR caused an
unintended side effect for older console programs that use the
SetConsoleWindowInfo API to manage their own viewport. When such a
program tried to scroll using a key press, the snap feature would
immediately pull the view back to the cursor's position, causing the
screen to flicker and get stuck.

This fix makes the snap-on-input feature smarter by checking the
application's mode first.

## Validation Steps Performed

Compiled the minimal C++ reproduction case from issue #19390.

Ran the test executable inside the newly built OpenConsole.exe.

Confirmed that scrolling with the Up/Down arrow keys now works
correctly, even with a visible cursor. The view no longer flickers or
gets stuck when the cursor moves outside the viewport.

Closes #19390

(cherry picked from commit c28610d016)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfZNLg
Service-Version: 1.24
2025-11-24 12:50:57 -06:00
Windows Console Service Bot
7a34181fc7 Localization Updates - main - 11/07/2025 03:05:02 (#19532)
It said the equivalent of "Nickname" rather than "aliased".

Co-authored-by: Console Service Bot <consvc@microsoft.com>
(cherry picked from commit 965a121a38)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzghDyBA
Service-Version: 1.24
2025-11-24 12:50:55 -06:00
Leonard Hecker
b38489b67b Allow creating new windows on another virtual desktop (#19458)
Whoops. Closes #18652

<DHowett> I chatted with Leonard to figure out why I kept
misunderstanding this PR. The key is that **this function should not
always return an existing window.** It's supposed to find an existing
window on the current virtual desktop, not literally any window
anywhere.

(cherry picked from commit 5ae95d7df0)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgf7tqY
Service-Version: 1.24
2025-11-24 12:50:54 -06:00
Dustin L. Howett
d25b84d4c1 Make sure UIHelpers' resources are included in the final PRI file (#19461)
OCWildcardResource requires the inclusion of a magic MSBuild target that
we wrote. We forgot to include it here. Oops.

Closes #19444

(cherry picked from commit 0e3d136dad)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgf7udM
Service-Version: 1.24
2025-11-24 12:50:53 -06:00
Windows Console Service Bot
9ab1b7ba3b Localization Updates - main - 10/15/2025 02:48:19 (#19451)
Closes #18849
Closes #19412

Co-authored-by: Console Service Bot <consvc@microsoft.com>
(cherry picked from commit 7f6ab5520e)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgf5KOs
Service-Version: 1.24
2025-11-24 12:50:51 -06:00
Carlos Zamora
d35bc4cee6 Update WinGet CNF for exact command matching (#19432)
## Summary of the Pull Request
Update the WinGet CNF package search to match that of the updated
PowerShell WinGet CNF module. Now, we'll only search for matching
commands instead of by name and moniker.

## References and Relevant Issues
https://github.com/microsoft/winget-command-not-found/pull/29

## Validation Steps Performed
 In CMD, type "vim" and vim packages are suggested

(cherry picked from commit 819987c90e)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfuACY
Service-Version: 1.24
2025-11-24 12:50:50 -06:00
Carlos Zamora
77ee52b872 Fix unfocusedBackground being used as active tab color (#19424)
## Summary of the Pull Request
Turns out that the `"TabViewItemHeaderBackground"` resource should be
set to the _selected_ color instead of the _deselected_ color.

In 1.22, (pre-#18109) we actually didn't set this resource. But we do
actually need it for high contrast mode! (verified)

## Validation Steps Performed
 High contrast mode looks right
 "Snazzy" theme from bug report looks right

## PR Checklist
 Closes #19343

(cherry picked from commit b62cad640b)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfrGvI
Service-Version: 1.24
2025-11-24 12:50:48 -06:00
Dustin L. Howett
671552671d Use the actual process image instead of module filename to dedup session (#19415)
Apparently, `GetModuleFileNameW` returns exactly the path (or prefix, in
case of a DLL) passed to `CreateProcess` casing and all. Since we were
using it to generate the uniquing hash for Portable and Unpackaged
instances, this meant that `C:\Terminal\wt` and `C:\TeRmInAl\wt` were
considered different instances. Whoops.

Using `QueryFullProcessImageNameW` instead results in canonicalization.
Maybe the kernel does it. I don't know. What I do know is that it works
more correctly.

(`Query...` goes through the kernel, while `GetModule...` goes through
the loader. Interesting!)

Closes #19253

(cherry picked from commit 9d7ea77cc8)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfkTuo
Service-Version: 1.24
2025-10-08 17:55:14 -05:00
PankajBhojwani
58a5088735 Only do "keys" fixups for non-nested, non-iterable commands (#19408)
## Summary of the Pull Request
When we introduced action IDs, we separated "commands" from
"keybindings", and introduced fixup logic to rewrite the legacy-style
command blocks into the new version. However we don't do any ID logic
for nested and iterable commands, so make sure we don't inform the
loader for fixups in those cases.

## Validation Steps Performed
We no longer repeatedly attempt to fixup the settings file when we see a
`"keys"` entry in a nested/iterable command block

## PR Checklist
- [x] Closes #18736

(cherry picked from commit 04676bd31a)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfjzjQ
Service-Version: 1.24
2025-10-08 17:55:13 -05:00
Dustin L. Howett
c5f99b69d5 Remove the leading fire from the taskbar progress handler (#19403)
If the progress state hasn't been set for more than 200ms, we shouldn't
even bother flickering the old state.

This prevents applications from making the tab (and the taskbar icon)
flicker.

We were reviewing #19394 and decided that the _original_ behavior before
Leonard's throttling fix was somewhat unfortunate as well. An
application that sets an indeterminate state for 10ms and then clears it
shouldn't be able to make any part of the application flicker, fast _or_
slow.

Removing the leading fire time from the throttled function ensures that
it will only fire once every 200ms, and only with the state most
recently set. It will not debounce (so setting the progress every 150ms
will not prevent it from updating.)

Closes #19394

(cherry picked from commit 998ab586e1)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfZOsU PVTI_lADOAF3p4s4BBcTlzgfb1NE
Service-Version: 1.24
2025-10-08 17:55:11 -05:00
Dustin L. Howett
6f5b293a56 Avoid reentrancy issues when dropping AppHost, even harder (#19395)
The previous fix in #19296 moved the _destruction_ of AppHost into the
tail end after we manipulate the `_windows` vector; however, it kept the
part which calls into XAML (`Close`) before the `erase`. I suspect that
we still had some reentrancy issues, where we cached an iterator before
the list was modified by another window close event.

That is:

```mermaid
sequenceDiagram
		Emperor->>Emperor: Close Window
		Emperor->>+AppHost: Close (a)
		AppHost->>XAML: Close
		XAML-->>Emperor: pump loop
		Emperor->>Emperor: Close Window
		Emperor->>+AppHost: Close (b)
		AppHost->>XAML: Close
		XAML-->>Emperor: pump loop
		AppHost->>-Emperor: Closed
		Emperor->>Emperor: erase(b)
		AppHost->>-Emperor: Closed
		Emperor->>Emperor: erase(a)
```

Moving the `Close()` to after the `erase` ensures that there are no
cached iterators that survive beyond XAML pumping the message loop.

Fixes 8d41ace3

(cherry picked from commit 5976de1600)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfScpM
Service-Version: 1.24
2025-10-08 17:55:10 -05:00
Dustin L. Howett
e33bc3d137 build: separate vpack creation from vpack publication (#19380)
This will allow us to publish vpacks without making the build fail
waiting for us to *merge* those vpacks into Windows. It also gives us
better control over when and where the vpack update gets merged.

(cherry picked from commit 6b428577b9)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgfLAks
Service-Version: 1.24
2025-09-25 13:37:20 -05:00
Dustin L. Howett
6aae2d0b72 Move newTabMenu creation to Settings fixups (#19353)
Some of the other settings fixups require there to be a valid
NewTabMenu, rather than just a temporary object. Since the resolving all
the menu entries after loading already forces the user to have a
`newTabMenu`, let's just codify it as a real fixup.

I've moved the SSH folder fixup after the settings fixup because it
relies on there being a NTM.

I decided not to make this fixup write back to the user's settings.
There are a couple reasons for this, all of which are flimsy.

- There are a number of tests that test fixup behavior, especially those
around actions, which would need to be updated for this new mandatory
key. I did not think it proper to add `newTabMenu` to ten unrelated
tests that only contain actions (for example.)
- We actually don't currently have mandatory keys. But this one was
always being added anyway, in a later phase...
- It's consistent with the existing behavior.

Closes #19356

(cherry picked from commit e80aadd98b)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzge0HjU
Service-Version: 1.24
2025-09-16 18:31:42 -05:00
Dustin L. Howett
148a86c81c VsDev: reject VS instances which do not actually contain devshell/devcmd (#19352)
Closes #19169

(cherry picked from commit 1926c4601c)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzge0Hto
Service-Version: 1.24
2025-09-16 18:31:40 -05:00
Dustin L. Howett
94e96ca048 Avoid generating SSH profiles using stale memory (#19354)
You can't return a `string_view` to a temporary. It's a miracle this
ever worked.

Broken since inception in a5f9c85c39

Closes #19355

(cherry picked from commit 46b9572e60)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzge0HmE
Service-Version: 1.24
2025-09-16 18:31:39 -05:00
Ayman Bagabas
b53d7df066 Add support for VT horizontal mouse wheel events (#19248)
This adds support for horizontal mouse wheel events (`WM_MOUSEHWHEEL`).
With this change, applications running in the terminal can now receive
and respond to horizontal scroll inputs from the mouse/trackpad.

Closes #19245
Closes #10329

(cherry picked from commit 814f78ed2c)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgep1sM
Service-Version: 1.24
2025-09-16 18:31:37 -05:00
Leonard Hecker
1194ad0343 Fix behavior of split-pane for existing windows (#19347)
Closes #18815

## Validation Steps Performed
* `wt -w 0 sp` splits the current tab 

(cherry picked from commit 0aee174e68)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgeV1i4
Service-Version: 1.24
2025-09-16 14:38:44 -05:00
John Cavanaugh
04e1290102 Fix terminal profile schema to allow null in keybinding id (#19332)
Fixes the terminal profile jsonschema to allow for null in the id. This
is to match the current implementation when disabling a built in default
keybind.

(cherry picked from commit eb16eb26ab)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgemwL0
Service-Version: 1.24
2025-09-16 14:38:43 -05:00
Leonard Hecker
f5083714c1 Fix a crash in _makeCursorVisible (#19329)
Fixes the crash and also makes `SnapOnOutput` a bit nicer.

Closes #19325

## Validation Steps Performed
* Launch vim in WSL
* Exit
* No crash 

(cherry picked from commit 384932183f)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgegVZ8
Service-Version: 1.24
2025-09-16 14:38:41 -05:00
Leonard Hecker
7642eec206 Fix right click on tabs closing them (#19273)
I do not like this.

## Validation Steps Performed
* Enable close buttons on tabs
* Open a tab
* Close the tab with middle click
* Open a tab
* Right click the tab
* Tab doesn't close, Menu opens 

(cherry picked from commit 4a34a76504)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgeAlgM
Service-Version: 1.24
2025-09-16 14:38:40 -05:00
Myungchul Keum
37c674dd6e Adjust "Dimidium" color scheme (#19303)
- Add Selection BG color
- Make Bright white brighter

## Summary of the Pull Request
Final tune for Dimidium color scheme before its release.

## References and Relevant Issues
#18563

## Detailed Description of the Pull Request / Additional comments
I made little change to Dimidium color scheme.

<img width="640" height="174" alt="cmp-lightness1c"
src="https://github.com/user-attachments/assets/2e4aa6ca-5864-4901-b323-2e2bb2bf00e8"
/>

![preview-terminal](https://github.com/user-attachments/assets/8a53c54d-942a-44a2-9ee7-9ff8a6d2dfab)

<img width="584" height="207" alt="image"
src="https://github.com/user-attachments/assets/b70b0759-7961-4f8f-aaa7-762fc48e425b"
/>

- Adjusted "Bright white" slightly brighter, hoping it can be
distinguished better from "White".
- Defined "Selection Background" color.

This will be the final tune for Dimidum color scheme.

(cherry picked from commit 8011f3e28c)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgeMuoQ
Service-Version: 1.24
2025-09-05 14:42:10 -05:00
Leonard Hecker
3a57ba54a0 Avoid reentrancy issues when dropping AppHost (#19296)
tl;dr: ~Apphost() may pump the message loop.
That's no bueno. See comments in the diff.

Additionally, this PR enables `_assertIsMainThread` in
release to trace down mysterious crashes in those builds.

(cherry picked from commit 8d41ace320)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgeJeYA
Service-Version: 1.24
2025-09-05 14:42:09 -05:00
Leonard Hecker
fc465bdae6 Fix CoreWindow being destroyed after handoff (#19298)
As per: https://github.com/microsoft/terminal/discussions/19280#discussioncomment-14237148

## Validation Steps Performed
* Launch wtd via handoff (spawn cmd, etc.)
* Shift+Click the tab bar + button to create a new window
* Close the initial window
* UI doesn't lock up 

(cherry picked from commit 7849b00cbd)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgeLN9s
Service-Version: 1.24
2025-09-05 14:42:08 -05:00
Leonard Hecker
04a5dffdcd Fix a race condition around Open/CloseClipboard (#19297)
tl;dr: Open/CloseClipboard are surprisingly not thread-safe.

## Validation Steps Performed
* Copy a large amount of text (>1MB)
* Run `edit.exe`
* Press and hold Ctrl+Shift+V
* Doesn't crash 

(cherry picked from commit 5899343237)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgeLIjw
Service-Version: 1.24
2025-09-05 14:42:07 -05:00
Dustin L. Howett
894e57769b Include Profile.BellSound as a media resource (#19289)
I legitimately cannot figure out how I forgot this. Bell should support
all the same validation as other media resources! Technically this means
you can set `bellSound` to `desktopWallpaper`, but... we'll pretend that
makes sense.

I reworked the viewmodel to be a little more sensible. It no longer
requires somebody else to check that its files exist. The settings UI
now also displays `File not found` in the _preview_ for the bell if it
is a single file which failed validation!

(cherry picked from commit 4272151adc)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgeF9qU
Service-Version: 1.24
2025-09-05 14:42:06 -05:00
Dustin L. Howett
eb206177a4 sb: add appId to the StoreBroker blobs (new AERO requirement) (#19290)
> _I am altering the deal. Pray I do not alter it further._
> -the AERO team, maybe

(cherry picked from commit bd14f69080)
Service-Card-Id: PVTI_lADOAF3p4s4BBcTlzgeF9fQ
Service-Version: 1.24
2025-09-05 14:42:05 -05:00
715 changed files with 14677 additions and 42773 deletions

View File

@@ -8,7 +8,7 @@ body:
value: | value: |
Please make sure to [search for existing issues](https://github.com/microsoft/terminal/issues) and [check the FAQ](https://github.com/microsoft/terminal/wiki/Frequently-Asked-Questions-(FAQ)) before filing a new one! Please make sure to [search for existing issues](https://github.com/microsoft/terminal/issues) and [check the FAQ](https://github.com/microsoft/terminal/wiki/Frequently-Asked-Questions-(FAQ)) before filing a new one!
If this is an application crash, please provide a [Feedback Hub](https://aka.ms/terminal-feedback-hub) submission link so we can find your diagnostic data on the backend. Use the category "Apps > Windows Terminal" and choose "Share My Feedback" after submission to get the link. If this is an application crash, please also provide a [Feedback Hub](https://aka.ms/terminal-feedback-hub) submission link so we can find your diagnostic data on the backend. Use the category "Apps > Windows Terminal" and choose "Share My Feedback" after submission to get the link.
- type: input - type: input
attributes: attributes:

View File

@@ -1,4 +1,4 @@
blank_issues_enabled: false blank_issues_enabled: true
contact_links: contact_links:
- name: Microsoft Security Response Center 🔐 - name: Microsoft Security Response Center 🔐

View File

@@ -10,7 +10,6 @@ File | Purpose | Format | Info
[line_forbidden.patterns](line_forbidden.patterns) | Patterns to flag in checked lines | perl regular expression (order matters, first match wins) | [patterns](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-patterns) [line_forbidden.patterns](line_forbidden.patterns) | Patterns to flag in checked lines | perl regular expression (order matters, first match wins) | [patterns](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-patterns)
[expect/*.txt](expect.txt) | Expected words that aren't in the dictionary | one word per line (sorted, alphabetically) | [expect](https://github.com/check-spelling/check-spelling/wiki/Configuration#expect) [expect/*.txt](expect.txt) | Expected words that aren't in the dictionary | one word per line (sorted, alphabetically) | [expect](https://github.com/check-spelling/check-spelling/wiki/Configuration#expect)
[advice.md](advice.md) | Supplement for GitHub comment when unrecognized words are found | GitHub Markdown | [advice](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice) [advice.md](advice.md) | Supplement for GitHub comment when unrecognized words are found | GitHub Markdown | [advice](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-advice)
[config.json](config.json) | Action Configuration | JSON key (action configuration variable) value (action configuration value) | [config](https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples%3A-config)
Note: you can replace any of these files with a directory by the same name (minus the suffix) Note: you can replace any of these files with a directory by the same name (minus the suffix)
and then include multiple files inside that directory (with that suffix) to merge multiple files together. and then include multiple files inside that directory (with that suffix) to merge multiple files together.

View File

@@ -22,7 +22,6 @@ See the `README.md` in each directory for more information.
<details><summary>If the flagged items are :exploding_head: false positives</summary> <details><summary>If the flagged items are :exploding_head: false positives</summary>
If items relate to a ... If items relate to a ...
* binary file (or some other file you wouldn't want to check at all). * binary file (or some other file you wouldn't want to check at all).
Please add a file path to the `excludes.txt` file matching the containing file. Please add a file path to the `excludes.txt` file matching the containing file.

View File

@@ -23,10 +23,8 @@ FTCS
gantt gantt
gfm gfm
ghe ghe
github
godbolt godbolt
hstrings hstrings
https
hyperlinking hyperlinking
hyperlinks hyperlinks
Kbds Kbds
@@ -46,7 +44,6 @@ mru
notwrapped notwrapped
NTMTo NTMTo
overlined overlined
passthrough
perlw perlw
postmodern postmodern
Powerline Powerline
@@ -68,19 +65,14 @@ rubyw
runtimes runtimes
servicebus servicebus
slnt slnt
ssh
stakeholders stakeholders
subpage subpage
subpages
sustainability sustainability
sxn sxn
Tencent Tencent
toolset toolset
ubuntu
UEFI UEFI
uiatextrange uiatextrange
Uids
UIDs
und und
vsdevcmd vsdevcmd
westus westus

View File

@@ -1,5 +1,5 @@
# Repeated letters # Repeated letters
\b([A-Za-z])\g{-1}{2,}\b \b([a-z])\g{-1}{2,}\b
# marker to ignore all code on line # marker to ignore all code on line
^.*/\* #no-spell-check-line \*/.*$ ^.*/\* #no-spell-check-line \*/.*$
@@ -11,7 +11,7 @@
^.*\b[Cc][Ss][Pp][Ee][Ll]{2}:\s*[Dd][Ii][Ss][Aa][Bb][Ll][Ee]-[Ll][Ii][Nn][Ee]\b ^.*\b[Cc][Ss][Pp][Ee][Ll]{2}:\s*[Dd][Ii][Ss][Aa][Bb][Ll][Ee]-[Ll][Ii][Nn][Ee]\b
# copyright # copyright
Copyright (?:\([Cc]\)|©|)(?:[-\d, ]|and)+(?: [A-Z][a-z]+ [A-Z][a-z]+,?)+ Copyright (?:\([Cc]\)|)(?:[-\d, ]|and)+(?: [A-Z][a-z]+ [A-Z][a-z]+,?)+
# patch hunk comments # patch hunk comments
^@@ -\d+(?:,\d+|) \+\d+(?:,\d+|) @@ .* ^@@ -\d+(?:,\d+|) \+\d+(?:,\d+|) @@ .*
@@ -19,10 +19,10 @@ Copyright (?:\([Cc]\)|©|)(?:[-\d, ]|and)+(?: [A-Z][a-z]+ [A-Z][a-z]+,?)+
index (?:[0-9a-z]{7,40},|)[0-9a-z]{7,40}\.\.[0-9a-z]{7,40} index (?:[0-9a-z]{7,40},|)[0-9a-z]{7,40}\.\.[0-9a-z]{7,40}
# file permissions # file permissions
(?:^|['"`\s])(?!-+\s)[-bcdLlpsw](?:[-r][-w][-Ssx]){2}[-r][-w][-SsTtx]\+?['"`\s] ['"`\s][-bcdLlpsw](?:[-r][-w][-Ssx]){2}[-r][-w][-SsTtx]\+?['"`\s]
# css fonts # css fonts
\bfont(?:-family(?:[-\w+]*)|):[^;}]+ \bfont(?:-family|):[^;}]+
# css url wrappings # css url wrappings
\burl\([^)]+\) \burl\([^)]+\)
@@ -36,10 +36,10 @@ index (?:[0-9a-z]{7,40},|)[0-9a-z]{7,40}\.\.[0-9a-z]{7,40}
# data url in quotes # data url in quotes
([`'"])data:(?:[^ `'"].*?|)(?:[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,}).*\g{-1} ([`'"])data:(?:[^ `'"].*?|)(?:[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,}).*\g{-1}
# data url # data url
\bdata:[-a-zA-Z=;:/0-9+_]*,\S* \bdata:[-a-zA-Z=;:/0-9+]*,\S*
# https/http/file urls # https/http/file urls
#(?:\b(?:https?|ftp|file)://)[-A-Za-z0-9+&@#/*%?=~_|!:,.;]+[-A-Za-z0-9+&@#/*%=~_|] (?:\b(?:https?|ftp|file)://)[-A-Za-z0-9+&@#/*%?=~_|!:,.;]+[-A-Za-z0-9+&@#/*%=~_|]
# mailto urls # mailto urls
mailto:[-a-zA-Z=;:/?%&0-9+@._]{3,} mailto:[-a-zA-Z=;:/?%&0-9+@._]{3,}
@@ -88,9 +88,6 @@ arn:aws:[-/:\w]+
# AWS VPC # AWS VPC
vpc-\w+ vpc-\w+
# Azure AD
\baad\.\w{48}\b
# While you could try to match `http://` and `https://` by using `s?` in `https?://`, sometimes there # While you could try to match `http://` and `https://` by using `s?` in `https?://`, sometimes there
# YouTube url # YouTube url
\b(?:(?:www\.|)youtube\.com|youtu.be)/(?:channel/|embed/|user/|playlist\?list=|watch\?v=|v/|)[-a-zA-Z0-9?&=_%]* \b(?:(?:www\.|)youtube\.com|youtu.be)/(?:channel/|embed/|user/|playlist\?list=|watch\?v=|v/|)[-a-zA-Z0-9?&=_%]*
@@ -172,7 +169,7 @@ themes\.googleusercontent\.com/static/fonts/[^/\s"]+/v\d+/[^.]+.
GHSA(?:-[0-9a-z]{4}){3} GHSA(?:-[0-9a-z]{4}){3}
# GitHub actions # GitHub actions
\buses:\s+(['"]?)[-\w.]+/[-\w./]+@[-\w.]+\g{-1} \buses:\s+[-\w.]+/[-\w./]+@[-\w.]+
# GitLab commit # GitLab commit
\bgitlab\.[^/\s"]*/\S+/\S+/commit/[0-9a-f]{7,16}#[0-9a-f]{40}\b \bgitlab\.[^/\s"]*/\S+/\S+/commit/[0-9a-f]{7,16}#[0-9a-f]{40}\b
@@ -241,7 +238,7 @@ accounts\.binance\.com/[a-z/]*oauth/authorize\?[-0-9a-zA-Z&%]*
\bmedium\.com/@?[^/\s"]+/[-\w]+ \bmedium\.com/@?[^/\s"]+/[-\w]+
# microsoft # microsoft
\b(?:https?://|)(?:(?:(?:blogs|download\.visualstudio|docs|msdn2?|research)\.|)microsoft|blogs\.msdn)\.co(?:m|\.\w\w)/[-_a-zA-Z0-9()=./%?#]* \b(?:https?://|)(?:(?:(?:blogs|download\.visualstudio|docs|msdn2?|research)\.|)microsoft|blogs\.msdn)\.co(?:m|\.\w\w)/[-_a-zA-Z0-9()=./%]*
# powerbi # powerbi
\bapp\.powerbi\.com/reportEmbed/[^"' ]* \bapp\.powerbi\.com/reportEmbed/[^"' ]*
# vs devops # vs devops
@@ -415,7 +412,7 @@ ipfs://[0-9a-zA-Z]{3,}
\bgetopts\s+(?:"[^"]+"|'[^']+') \bgetopts\s+(?:"[^"]+"|'[^']+')
# ANSI color codes # ANSI color codes
#(?:\\(?:u00|x)1[Bb]|\\03[1-7]|\x1b|\\u\{1[Bb]\})\[(?:\d+(?:;\d+)*|)m (?:\\(?:u00|x)1[Bb]|\\03[1-7]|\x1b|\\u\{1[Bb]\})\[\d+(?:;\d+)*m
# URL escaped characters # URL escaped characters
%[0-9A-F][A-F](?=[A-Za-z]) %[0-9A-F][A-F](?=[A-Za-z])
@@ -433,7 +430,7 @@ sha\d+:[0-9a-f]*?[a-f]{3,}[0-9a-f]*
# sha-... -- uses a fancy capture # sha-... -- uses a fancy capture
(\\?['"]|&quot;)[0-9a-f]{40,}\g{-1} (\\?['"]|&quot;)[0-9a-f]{40,}\g{-1}
# hex runs # hex runs
\b(?=(?:[a-fA-F]{0,2}\d)*[a-fA-F]{3})[0-9a-fA-F]{16,}\b \b[0-9a-fA-F]{16,}\b
# hex in url queries # hex in url queries
=[0-9a-fA-F]*?(?:[A-F]{3,}|[a-f]{3,})[0-9a-fA-F]*?& =[0-9a-fA-F]*?(?:[A-F]{3,}|[a-f]{3,})[0-9a-fA-F]*?&
# ssh # ssh
@@ -457,12 +454,8 @@ LS0tLS1CRUdJT.*
# uuid: # uuid:
\b[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}\b \b[0-9a-fA-F]{8}-(?:[0-9a-fA-F]{4}-){3}[0-9a-fA-F]{12}\b
# hex digits including css/html color classes:
# unicode escaped characters (4) (?:[\\0][xX]|\\u|[uU]\+|#x?|%23|&H)[0-9_a-fA-FgGrR]*?[a-fA-FgGrR]{2,}[0-9_a-fA-FgGrR]*(?:[uUlL]{0,3}|[iu]\d+)\b
\\u[0-9a-fA-F]{4}
# hex digits including css/html color classes
(?:[\\0][xX]|\\u\{?|[uU]\+|#x?|%23|&H)[0-9_a-fA-FgGrR]*?[a-fA-FgGrR]{2,}[0-9_a-fA-FgGrR]*(?:[uUlL]{0,3}|[iu]\d+)\b
# integrity # integrity
integrity=(['"])(?:\s*sha\d+-[-a-zA-Z=;:/0-9+]{40,})+\g{-1} integrity=(['"])(?:\s*sha\d+-[-a-zA-Z=;:/0-9+]{40,})+\g{-1}
@@ -484,7 +477,7 @@ Name\[[^\]]+\]=.*
(?:(?:\b|_|(?<=[a-z]))I|(?:\b|_)(?:nsI|isA))(?=(?:[A-Z][a-z]{2,})+(?:[A-Z\d]|\b)) (?:(?:\b|_|(?<=[a-z]))I|(?:\b|_)(?:nsI|isA))(?=(?:[A-Z][a-z]{2,})+(?:[A-Z\d]|\b))
# python # python
\b(?i)py(?!gment|gmy|lon|ramid|ro|th)(?=[a-z]{2,}) \b(?i)py(?!gments|gmy|lon|ramid|ro|th)(?=[a-z]{2,})
# crypt # crypt
(['"])\$2[ayb]\$.{56}\g{-1} (['"])\$2[ayb]\$.{56}\g{-1}
@@ -504,21 +497,12 @@ Name\[[^\]]+\]=.*
# go.sum # go.sum
\bh1:\S+ \bh1:\S+
# golang print-f-style functions
#(?i)(?<=append|comma|debug|equal|err|error|exit|fatal|format|info|log|name|panic|print|skip|scan|string|trace|true|warn|warning|wrap|write)(?:f|ln)(?:[ (]|$)
# golang regular expression
#(?<!")\br".+?"
# imports # imports
^import\s+(?:(?:static|type)\s+|)(?:[\w.]|\{\s*\w*?(?:,\s*(?:\w*|\*))+\s*\})+(?:\s+from (['"]).*?\g{-1}|) ^import\s+(?:(?:static|type)\s+|)(?:[\w.]|\{\s*\w*?(?:,\s*(?:\w*|\*))+\s*\})+
# scala modules # scala modules
("[^"]+"\s*%%?\s*){2,3}"[^"]+" ("[^"]+"\s*%%?\s*){2,3}"[^"]+"
# Dataframes / NumPy
\b(?:df|np)\.\w{3,}
# container images # container images
image: [-\w./:@]+ image: [-\w./:@]+
@@ -529,7 +513,7 @@ image: [-\w./:@]+
\s*\S+/\S+\s+\S+\s+[0-9a-f]{8,}\s+\d+\s+(?:hour|day|week)s ago\s+[\d.]+[KMGT]B \s*\S+/\S+\s+\S+\s+[0-9a-f]{8,}\s+\d+\s+(?:hour|day|week)s ago\s+[\d.]+[KMGT]B
# Intel intrinsics # Intel intrinsics
_mm\d*_(?!dd)\w+ _mm_(?!dd)\w+
# Input to GitHub JSON # Input to GitHub JSON
content: (['"])[-a-zA-Z=;:/0-9+]*=\g{-1} content: (['"])[-a-zA-Z=;:/0-9+]*=\g{-1}
@@ -548,18 +532,12 @@ content: (['"])[-a-zA-Z=;:/0-9+]*=\g{-1}
# Note that there's a high false positive rate, remove the `?=` and search for the regex to see if the matches seem like reasonable strings # Note that there's a high false positive rate, remove the `?=` and search for the regex to see if the matches seem like reasonable strings
(?<!['"])\b(?:B|BR|Br|F|FR|Fr|R|RB|RF|Rb|Rf|U|UR|Ur|b|bR|br|f|fR|fr|r|rB|rF|rb|rf|u|uR|ur)['"](?=[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,}) (?<!['"])\b(?:B|BR|Br|F|FR|Fr|R|RB|RF|Rb|Rf|U|UR|Ur|b|bR|br|f|fR|fr|r|rB|rF|rb|rf|u|uR|ur)['"](?=[A-Z]{3,}|[A-Z][a-z]{2,}|[a-z]{3,})
# Regular expression for word breaks
#\\b(?=[a-z]{2})
# Regular expressions for (P|p)assword # Regular expressions for (P|p)assword
\([A-Z]\|[a-z]\)[a-z]+ \([A-Z]\|[a-z]\)[a-z]+
# Java regular expressions
Pattern\.(?:compile|matches)\(".*"
# JavaScript regular expressions # JavaScript regular expressions
# javascript exec/test regex # javascript test regex
/.{3,}?/[gim]*\.(?:exec|test)\( /.{3,}/[gim]*\.test\(
# javascript match regex # javascript match regex
\.match\(/[^/\s"]{3,}/[gim]*\s* \.match\(/[^/\s"]{3,}/[gim]*\s*
# javascript match regex # javascript match regex
@@ -586,7 +564,7 @@ perl(?:\s+-[a-zA-Z]\w*)+
regexp?\.MustCompile\((?:`[^`]*`|".*"|'.*')\) regexp?\.MustCompile\((?:`[^`]*`|".*"|'.*')\)
# regex choice # regex choice
#\((?=[^)]*[a-zA-Z]{3})(?:\?:|)[^)|]+(?<! )\|(?!(?:jq|xargs)\b)[^)| ][^)]*\) \(\?:[^)]+\|[^)]+\)
# proto # proto
^\s*(\w+)\s\g{-1} = ^\s*(\w+)\s\g{-1} =
@@ -609,9 +587,6 @@ urn:shemas-jetbrains-com
# Debian changelog severity # Debian changelog severity
[-\w]+ \(.*\) (?:\w+|baseline|unstable|experimental); urgency=(?:low|medium|high|emergency|critical)\b [-\w]+ \(.*\) (?:\w+|baseline|unstable|experimental); urgency=(?:low|medium|high|emergency|critical)\b
# Red Hat Package management spec file dependencies
^(?:Build|)Requires: [-.\w]+
# kubernetes pod status lists # kubernetes pod status lists
# https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase # https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle/#pod-phase
\w+(?:-\w+)+\s+\d+/\d+\s+(?:Running|Pending|Succeeded|Failed|Unknown)\s+ \w+(?:-\w+)+\s+\d+/\d+\s+(?:Running|Pending|Succeeded|Failed|Unknown)\s+
@@ -666,8 +641,6 @@ PrependWithABINamepsace
>[-a-zA-Z=;:/0-9+]{3,}=</ >[-a-zA-Z=;:/0-9+]{3,}=</
# base64 encoded content, possibly wrapped in mime # base64 encoded content, possibly wrapped in mime
#(?:^|[\s=;:?])[-a-zA-Z=;:/0-9+]{50,}(?:[\s=;:?]|$) #(?:^|[\s=;:?])[-a-zA-Z=;:/0-9+]{50,}(?:[\s=;:?]|$)
# jwt
(?:\be[wy][-a-zA-Z=;:/0-9+]+\.){2}[-_\w]+
# base64 encoded json # base64 encoded json
\beyJ[-a-zA-Z=;:/0-9+]+ \beyJ[-a-zA-Z=;:/0-9+]+
# base64 encoded pkcs # base64 encoded pkcs
@@ -705,9 +678,9 @@ systemd.*?running in system mode \([-+].*\)$
# Non-English # Non-English
# Even repositories expecting pure English content can unintentionally have Non-English content... People will occasionally mistakenly enter [homoglyphs](https://en.wikipedia.org/wiki/Homoglyph) which are essentially typos, and using this pattern will mean check-spelling will not complain about them. # Even repositories expecting pure English content can unintentionally have Non-English content... People will occasionally mistakenly enter [homoglyphs](https://en.wikipedia.org/wiki/Homoglyph) which are essentially typos, and using this pattern will mean check-spelling will not complain about them.
# . #
# If the content to be checked should be written in English and the only Non-English items will be people's names, then you can consider adding this. # If the content to be checked should be written in English and the only Non-English items will be people's names, then you can consider adding this.
# . #
# Alternatively, if you're using check-spelling v0.0.25+, and you would like to _check_ the Non-English content for spelling errors, you can. For information on how to do so, see: # Alternatively, if you're using check-spelling v0.0.25+, and you would like to _check_ the Non-English content for spelling errors, you can. For information on how to do so, see:
# https://docs.check-spelling.dev/Feature:-Configurable-word-characters.html#unicode # https://docs.check-spelling.dev/Feature:-Configurable-word-characters.html#unicode
[a-zA-Z]*[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*|[a-zA-Z]{3,}[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]|[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3,} [a-zA-Z]*[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3}[a-zA-ZÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]*|[a-zA-Z]{3,}[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź]|[ÀÁÂÃÄÅÆČÇÈÉÊËÌÍÎÏÐÑÒÓÔÕÖØÙÚÛÜÝßàáâãäåæčçèéêëìíîïðñòóôõöøùúûüýÿĀāŁłŃńŅņŒœŚśŠšŜŝŸŽžź][a-zA-Z]{3,}
@@ -719,7 +692,7 @@ systemd.*?running in system mode \([-+].*\)$
# This corpus only had capital letters, but you probably want lowercase ones as well. # This corpus only had capital letters, but you probably want lowercase ones as well.
\b[LN]'+[a-z]{2,}\b \b[LN]'+[a-z]{2,}\b
# LaTeX # latex (check-spelling >= 0.0.22)
\\\w{2,}\{ \\\w{2,}\{
# American Mathematical Society (AMS) / Doxygen # American Mathematical Society (AMS) / Doxygen
@@ -746,6 +719,7 @@ nolint:\s*[\w,]+
# cygwin paths # cygwin paths
/cygdrive/[a-zA-Z]/(?:Program Files(?: \(.*?\)| ?)(?:/[-+.~\\/()\w ]+)*|[-+.~\\/()\w])+ /cygdrive/[a-zA-Z]/(?:Program Files(?: \(.*?\)| ?)(?:/[-+.~\\/()\w ]+)*|[-+.~\\/()\w])+
# in check-spelling@v0.0.22+, printf markers aren't automatically consumed
# printf markers # printf markers
#(?<!\\)\\[nrt](?=[a-z]{2,}) #(?<!\\)\\[nrt](?=[a-z]{2,})
@@ -776,20 +750,18 @@ W/"[^"]+"
# Compiler flags (Unix, Java/Scala) # Compiler flags (Unix, Java/Scala)
# Use if you have things like `-Pdocker` and want to treat them as `docker` # Use if you have things like `-Pdocker` and want to treat them as `docker`
#(?:^|[\t ,>"'`=\[(#])-(?:(?:J-|)[DPWXY]|[Llf])(?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,}) #(?:^|[\t ,>"'`=(#])-(?:(?:J-|)[DPWXY]|[Llf])(?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})
# Compiler flags (Windows / PowerShell) # Compiler flags (Windows / PowerShell)
# This is a subset of the more general compiler flags pattern. # This is a subset of the more general compiler flags pattern.
# It avoids matching `-Path` to prevent it from being treated as `ath` # It avoids matching `-Path` to prevent it from being treated as `ath`
#(?:^|[\t ,"'`=\[(#])-(?:[DPL](?=[A-Z]{2,})|[WXYlf](?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,})) #(?:^|[\t ,"'`=(#])-(?:[DPL](?=[A-Z]{2,})|[WXYlf](?=[A-Z]{2,}|[A-Z][a-z]|[a-z]{2,}))
# Compiler flags (linker) # Compiler flags (linker)
,-B ,-B
# Library prefix # libraries
# e.g., `lib`+`archive`, `lib`+`raw`, `lib`+`unwind` #(?:\b|_)[Ll]ib(?:re(?=office)|)(?!era[lt]|ero|erty|rar(?:i(?:an|es)|y))(?=[a-z])
# (ignores some words that happen to start with `lib`)
#(?:\b|_)[Ll]ib(?!era[lt])(?:re(?=office)|era|)(?!ero|erty|rar(?:i(?:an|es)|y))(?=[a-z])
# iSCSI iqn (approximate regex) # iSCSI iqn (approximate regex)
\biqn\.[0-9]{4}-[0-9]{2}(?:[\.-][a-z][a-z0-9]*)*\b \biqn\.[0-9]{4}-[0-9]{2}(?:[\.-][a-z][a-z0-9]*)*\b
@@ -800,9 +772,9 @@ W/"[^"]+"
# curl arguments # curl arguments
\b(?:\\n|)curl(?:\.exe|)(?:\s+-[a-zA-Z]{1,2}\b)*(?:\s+-[a-zA-Z]{3,})(?:\s+-[a-zA-Z]+)* \b(?:\\n|)curl(?:\.exe|)(?:\s+-[a-zA-Z]{1,2}\b)*(?:\s+-[a-zA-Z]{3,})(?:\s+-[a-zA-Z]+)*
# set arguments # set arguments
\b(?:bash|(?<!\.)sh|set)(?:\s+[-+][abefimouxE]{1,2})*\s+[-+][abefimouxE]{3,}(?:\s+[-+][abefimouxE]+)* \b(?:bash|sh|set)(?:\s+[-+][abefimouxE]{1,2})*\s+[-+][abefimouxE]{3,}(?:\s+[-+][abefimouxE]+)*
# tar arguments # tar arguments
\b(?:\\n|)g?tar(?:\.exe|)(?:\s-C \S+|(?:\s+--[-a-zA-Z]+|\s+-[a-zA-Z]+|\s[ABGJMOPRSUWZacdfh-pr-xz]+\b)(?:=[^ ]*|))+ \b(?:\\n|)g?tar(?:\.exe|)(?:(?:\s+--[-a-zA-Z]+|\s+-[a-zA-Z]+|\s[ABGJMOPRSUWZacdfh-pr-xz]+\b)(?:=[^ ]*|))+
# tput arguments -- https://man7.org/linux/man-pages/man5/terminfo.5.html -- technically they can be more than 5 chars long... # tput arguments -- https://man7.org/linux/man-pages/man5/terminfo.5.html -- technically they can be more than 5 chars long...
\btput\s+(?:(?:-[SV]|-T\s*\w+)\s+)*\w{3,5}\b \btput\s+(?:(?:-[SV]|-T\s*\w+)\s+)*\w{3,5}\b
# macOS temp folders # macOS temp folders

View File

@@ -1,105 +0,0 @@
{
"dictionary_source_prefixes": {
"asm": "https://raw.githubusercontent.com/check-spelling/assembly-dictionaries/20231110/",
"cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20241114/dictionaries/",
"census": "https://raw.githubusercontent.com/check-spelling-sandbox/census/dictionaries-d90e686f89dd241ad61d30f26619e54d73e73c6e/dictionaries/"
},
"extra_dictionaries": [
"cspell:software-terms/softwareTerms.txt",
"cspell:cpp/stdlib-c.txt",
"census:census-5.txt",
"cspell:cpp/stdlib-cpp.txt",
"cspell:python/python/python-lib.txt",
"cspell:php/php.txt",
"cspell:dart/dart.txt",
"cspell:css/css.txt",
"cspell:node/node.txt",
"cspell:filetypes/filetypes.txt",
"cspell:npm/npm.txt",
"cspell:java/java.txt",
"cspell:dotnet/dotnet.txt",
"cspell:fullstack/fullstack.txt",
"cspell:java/java-terms.txt",
"cspell:cpp/stdlib-cmath.txt",
"cspell:typescript/typescript.txt",
"cspell:cpp/compiler-msvc.txt",
"cspell:python/common/extra.txt",
"cspell:html/html.txt",
"cspell:golang/go.txt",
"cspell:cpp/ecosystem.txt",
"cspell:powershell/powershell.txt",
"cspell:mnemonics/mnemonics.txt",
""
],
"check_extra_dictionaries": [
"asm:amd64-isa.txt",
"asm:ia64-isa.txt",
"asm:power-isa.txt",
"cspell:ada/ada.txt",
"cspell:aws/aws.txt",
"cspell:clojure/clojure.txt",
"cspell:companies/companies.txt",
"cspell:cpp/compiler-clang-attributes.txt",
"cspell:cpp/compiler-gcc.txt",
"cspell:cpp/compiler-msvc.txt",
"cspell:cpp/ecosystem.txt",
"cspell:cpp/lang-jargon.txt",
"cspell:cpp/lang-keywords.txt",
"cspell:cpp/people.txt",
"cspell:cpp/stdlib-c.txt",
"cspell:cpp/stdlib-cerrno.txt",
"cspell:cpp/stdlib-cmath.txt",
"cspell:cpp/stdlib-cpp.txt",
"cspell:cpp/template-strings.txt",
"cspell:cryptocurrencies/cryptocurrencies.txt",
"cspell:csharp/csharp.txt",
"cspell:css/css.txt",
"cspell:dart/dart.txt",
"cspell:django/django.txt",
"cspell:django/requirements.txt",
"cspell:docker/docker-words.txt",
"cspell:dotnet/dotnet.txt",
"cspell:elixir/elixir.txt",
"cspell:filetypes/filetypes.txt",
"cspell:fonts/fonts.txt",
"cspell:fullstack/fullstack.txt",
"cspell:gaming-terms/gaming-terms.txt",
"cspell:golang/go.txt",
"cspell:haskell/haskell.txt",
"cspell:html/html.txt",
"cspell:java/java-terms.txt",
"cspell:java/java.txt",
"cspell:k8s/k8s.txt",
"cspell:latex/latex.txt",
"cspell:latex/samples/sample-words.txt",
"cspell:lisp/lisp.txt",
"cspell:lorem-ipsum/dictionary.txt",
"cspell:lua/lua.txt",
"cspell:mnemonics/mnemonics.txt",
"cspell:monkeyc/monkeyc_keywords.txt",
"cspell:node/node.txt",
"cspell:npm/npm.txt",
"cspell:php/php.txt",
"cspell:powershell/powershell.txt",
"cspell:public-licenses/generated/public-licenses.txt",
"cspell:python/additional_words.txt",
"cspell:python/common/extra.txt",
"cspell:python/python/python-lib.txt",
"cspell:python/python/python.txt",
"cspell:r/r.txt",
"cspell:redis/redis.txt",
"cspell:ruby/ruby.txt",
"cspell:rust/rust.txt",
"cspell:scala/scala.txt",
"cspell:shell/shell-all-words.txt",
"cspell:software-terms/software-terms.txt",
"cspell:software-terms/webServices.txt",
"cspell:sql/sql.txt",
"cspell:sql/tsql.txt",
"cspell:svelte/svelte.txt",
"cspell:swift/swift.txt",
"cspell:typescript/typescript.txt",
"census:census-5.txt",
""
]
}

View File

@@ -16,7 +16,6 @@
ignore$ ignore$
Resources/(?!en) Resources/(?!en)
[^/]\.vsdx$ [^/]\.vsdx$
-lock\.yaml$
\.a$ \.a$
\.ai$ \.ai$
\.all-contributorsrc$ \.all-contributorsrc$
@@ -121,19 +120,17 @@ Resources/(?!en)
^src/types/ut_types/UtilsTests\.cpp$ ^src/types/ut_types/UtilsTests\.cpp$
^tools/ReleaseEngineering/ServicingPipeline\.ps1$ ^tools/ReleaseEngineering/ServicingPipeline\.ps1$
^XamlStyler\.json$ ^XamlStyler\.json$
^\.clang-format$
^\.github/actions/spelling/ ^\.github/actions/spelling/
^\.github/workflows/spelling\d*\.yml$ ^\.github/workflows/spelling\d*\.yml$
^\.vsconfig$ ^\.vsconfig$
^\Qbuild/config/release.gdnbaselines\E$ ^\Qbuild/config/release.gdnbaselines\E$
^\Qdep/WinAppDriver/EULA.rtf\E$ ^\Qdep/WinAppDriver/EULA.rtf\E$
^\Qdoc/reference/windows-terminal-logo.ans\E$ ^\Qdoc/reference/windows-terminal-logo.ans\E$
^\Qsrc/cascadia/ut_app/FzfTests.cpp\E$
^\Qsrc/host/ft_host/chafa.txt\E$ ^\Qsrc/host/ft_host/chafa.txt\E$
^\Qsrc/host/ft_host/Host.Tests.Feature.rc\E$
^\Qsrc/host/ft_uia/run.bat\E$ ^\Qsrc/host/ft_uia/run.bat\E$
^\Qsrc/host/runft.bat\E$ ^\Qsrc/host/runft.bat\E$
^\Qsrc/terminal/parser/ft_fuzzer/run.bat\E$ ^\Qsrc/terminal/parser/ft_fuzzer/run.bat\E$
^\Qsrc/terminal/parser/ft_fuzzwrapper/run.bat\E$ ^\Qsrc/terminal/parser/ft_fuzzwrapper/run.bat\E$
^\Qsrc/tools/lnkd/lnkd.bat\E$ ^\Qsrc/tools/lnkd/lnkd.bat\E$
^\Qsrc/tools/pixels/pixels.bat\E$ ^\Qsrc/tools/pixels/pixels.bat\E$
^\Qsrc/cascadia/ut_app/FzfTests.cpp\E$

View File

@@ -5,6 +5,7 @@ BBDM
BBGGRR BBGGRR
CBN CBN
cbt cbt
Ccc
cch cch
efg efg
efgh efgh

View File

@@ -1,13 +1,13 @@
aaaaabbb aaaaabbb
aabbcc
ABANDONFONT
abbcc abbcc
abcc abcc
abgr abgr
ABANDONFONT
ABORTIFHUNG ABORTIFHUNG
ACCESSTOKEN ACCESSTOKEN
acidev acidev
ACIOSS ACIOSS
ACL'd
acp acp
actctx actctx
ACTCTXW ACTCTXW
@@ -51,6 +51,7 @@ appletname
APPLMODAL APPLMODAL
Applocal Applocal
appmodel appmodel
appshellintegration
APPWINDOW APPWINDOW
APPXMANIFESTVERSION APPXMANIFESTVERSION
APrep APrep
@@ -59,10 +60,12 @@ ARRAYSIZE
ARROWKEYS ARROWKEYS
ASBSET ASBSET
ASetting ASetting
ASingle
ASYNCDONTCARE ASYNCDONTCARE
ASYNCWINDOWPOS ASYNCWINDOWPOS
atch atch
ATest ATest
atg
aumid aumid
Authenticode Authenticode
AUTOBUDDY AUTOBUDDY
@@ -77,12 +80,14 @@ Autowrap
AVerify AVerify
awch awch
azurecr azurecr
AZZ
backgrounded backgrounded
Backgrounder Backgrounder
backgrounding backgrounding
backstory backstory
Bazz Bazz
bbccb bbccb
BBDM
bbwe bbwe
bcount bcount
bcx bcx
@@ -108,6 +113,7 @@ bitmasks
BITOPERATION BITOPERATION
BKCOLOR BKCOLOR
BKGND BKGND
BKMK
Bksp Bksp
Blt Blt
blu blu
@@ -116,6 +122,7 @@ bmi
bodgy bodgy
BOLDFONT BOLDFONT
Borland Borland
boutput
boxheader boxheader
BPBF BPBF
bpp bpp
@@ -160,7 +167,7 @@ CFuzz
cgmanifest cgmanifest
cgscrn cgscrn
chafa chafa
changelist changelists
CHARSETINFO CHARSETINFO
chshdng chshdng
CHT CHT
@@ -193,7 +200,6 @@ colorizing
COLORONCOLOR COLORONCOLOR
COLORREFs COLORREFs
colorschemes colorschemes
colorspaces
colorspec colorspec
colortable colortable
colortbl colortbl
@@ -224,12 +230,14 @@ CONKBD
conlibk conlibk
conmsgl conmsgl
CONNECTINFO CONNECTINFO
connyection
CONOUT CONOUT
conprops conprops
conpropsp conpropsp
conpty conpty
conptylib conptylib
conserv conserv
consoleaccessibility
consoleapi consoleapi
CONSOLECONTROL CONSOLECONTROL
CONSOLEENDTASK CONSOLEENDTASK
@@ -239,15 +247,16 @@ CONSOLEIME
CONSOLESETFOREGROUND CONSOLESETFOREGROUND
consoletaeftemplates consoletaeftemplates
consoleuwp consoleuwp
Consolewait
CONSOLEWINDOWOWNER CONSOLEWINDOWOWNER
consrv consrv
consteval
constexprable constexprable
contentfiles contentfiles
conterm conterm
contsf contsf
contypes contypes
conwinuserrefs conwinuserrefs
coordnew
COPYCOLOR COPYCOLOR
COPYDATA COPYDATA
COPYDATASTRUCT COPYDATASTRUCT
@@ -258,6 +267,7 @@ CPG
cpinfo cpinfo
CPINFOEX CPINFOEX
CPLINFO CPLINFO
cplusplus
CPPCORECHECK CPPCORECHECK
cppcorecheckrules cppcorecheckrules
cpprestsdk cpprestsdk
@@ -268,6 +278,7 @@ CREATESTRUCT
CREATESTRUCTW CREATESTRUCTW
createvpack createvpack
crisman crisman
crloew
CRTLIBS CRTLIBS
csbi csbi
csbiex csbiex
@@ -278,6 +289,7 @@ csrutil
CSTYLE CSTYLE
CSwitch CSwitch
CTerminal CTerminal
ctl
ctlseqs ctlseqs
CTRLEVENT CTRLEVENT
CTRLFREQUENCY CTRLFREQUENCY
@@ -287,7 +299,6 @@ CTRLVOLUME
CUAS CUAS
CUF CUF
cupxy cupxy
curated
CURRENTFONT CURRENTFONT
currentmode currentmode
CURRENTPAGE CURRENTPAGE
@@ -320,6 +331,7 @@ CYVIRTUALSCREEN
CYVSCROLL CYVSCROLL
dai dai
DATABLOCK DATABLOCK
DBatch
dbcs dbcs
DBCSFONT DBCSFONT
DBGALL DBGALL
@@ -328,12 +340,15 @@ DBGFONTS
DBGOUTPUT DBGOUTPUT
dbh dbh
dblclk dblclk
DBUILD
Dcd Dcd
DColor
DCOMMON DCOMMON
DComposition DComposition
DDESHARE DDESHARE
DDevice DDevice
DEADCHAR DEADCHAR
Debian
debugtype debugtype
DECAC DECAC
DECALN DECALN
@@ -439,8 +454,10 @@ depersist
deprioritized deprioritized
devicecode devicecode
Dext Dext
DFactory
DFF DFF
dialogbox dialogbox
DINLINE
directio directio
DIRECTX DIRECTX
DISABLEDELAYEDEXPANSION DISABLEDELAYEDEXPANSION
@@ -455,9 +472,9 @@ dllinit
dllmain dllmain
DLLVERSIONINFO DLLVERSIONINFO
DLOOK DLOOK
doc'd
DONTCARE DONTCARE
doskey doskey
dotnet
DPG DPG
DPIAPI DPIAPI
DPICHANGE DPICHANGE
@@ -471,6 +488,7 @@ DRAWITEM
DRAWITEMSTRUCT DRAWITEMSTRUCT
drcs drcs
DROPFILES DROPFILES
drv
DSBCAPS DSBCAPS
DSBLOCK DSBLOCK
DSBPLAY DSBPLAY
@@ -478,10 +496,12 @@ DSBUFFERDESC
DSBVOLUME DSBVOLUME
dsm dsm
dsound dsound
DSRCPR
DSSCL DSSCL
DSwap
DTo DTo
DTTERM DTTERM
DUNICODE
DUNIT
dup'ed dup'ed
dvi dvi
dwl dwl
@@ -510,9 +530,9 @@ ELEMENTNOTAVAILABLE
EMPTYBOX EMPTYBOX
enabledelayedexpansion enabledelayedexpansion
ENDCAP ENDCAP
endptr
ENTIREBUFFER ENTIREBUFFER
ENU ENU
Enum'd
ENUMLOGFONT ENUMLOGFONT
ENUMLOGFONTEX ENUMLOGFONTEX
EOB EOB
@@ -521,13 +541,14 @@ EPres
EQU EQU
ERASEBKGND ERASEBKGND
ERRORONEXIT ERRORONEXIT
espt ESFCIB
esrp esrp
ESV ESV
ETW ETW
EUDC EUDC
eventing eventing
evflags evflags
evt
execd execd
executionengine executionengine
exemain exemain
@@ -552,7 +573,6 @@ FGHIJ
fgidx fgidx
FGs FGs
FILEDESCRIPTION FILEDESCRIPTION
filehops
FILESUBTYPE FILESUBTYPE
FILESYSPATH FILESYSPATH
FILEW FILEW
@@ -584,24 +604,27 @@ FONTSTRING
FONTTYPE FONTTYPE
FONTWIDTH FONTWIDTH
FONTWINDOW FONTWINDOW
foob
FORCEOFFFEEDBACK FORCEOFFFEEDBACK
FORCEONFEEDBACK FORCEONFEEDBACK
FRAMECHANGED FRAMECHANGED
fre fre
Free'd
frontends frontends
fsanitize fsanitize
Fscreen
FSINFOCLASS FSINFOCLASS
ftcs
fte fte
Ftm Ftm
Fullscreens Fullscreens
Fullwidth
FUNCTIONCALL FUNCTIONCALL
fuzzmain fuzzmain
fuzzmap fuzzmap
fuzzwrapper fuzzwrapper
fuzzyfinder
fwdecl fwdecl
fwe fwe
fwlink
fzf fzf
gci gci
gcx gcx
@@ -656,13 +679,16 @@ GETWAITTOKILLTIMEOUT
GETWHEELSCROLLCHARACTERS GETWHEELSCROLLCHARACTERS
GETWHEELSCROLLCHARS GETWHEELSCROLLCHARS
GETWHEELSCROLLLINES GETWHEELSCROLLLINES
Gfun
gfx gfx
gfycat
GGI GGI
GHgh GHgh
GHIJK GHIJK
GHIJKL GHIJKL
gitcheckin gitcheckin
gitfilters gitfilters
gitlab
gle gle
GLOBALFOCUS GLOBALFOCUS
GLYPHENTRY GLYPHENTRY
@@ -670,13 +696,13 @@ GMEM
Goldmine Goldmine
gonce gonce
goutput goutput
GPUs
GREENSCROLL GREENSCROLL
Grehan Grehan
Greyscale Greyscale
gridline gridline
gset gset
gsl gsl
Guake
guc guc
GUIDATOM GUIDATOM
GValue GValue
@@ -698,6 +724,7 @@ hbr
hbrush hbrush
HCmd HCmd
hdc hdc
hdr
HDROP HDROP
hdrstop hdrstop
HEIGHTSCROLL HEIGHTSCROLL
@@ -762,6 +789,7 @@ ICONWARNING
IDCANCEL IDCANCEL
IDD IDD
IDISHWND IDISHWND
idl
idllib idllib
IDOK IDOK
IDR IDR
@@ -775,11 +803,11 @@ IIo
ILC ILC
ILCo ILCo
ILD ILD
IMEs ime
IMPEXP IMPEXP
inbox
inclusivity inclusivity
INCONTEXT INCONTEXT
INDEXID
INFOEX INFOEX
inheritcursor inheritcursor
ININPUTSYNCCALL ININPUTSYNCCALL
@@ -789,7 +817,6 @@ INITGUID
INITMENU INITMENU
inkscape inkscape
INLINEPREFIX INLINEPREFIX
inlines
inproc inproc
Inputkeyinfo Inputkeyinfo
Inputreadhandledata Inputreadhandledata
@@ -802,6 +829,7 @@ INTERNALNAME
intsafe intsafe
INVALIDARG INVALIDARG
INVALIDATERECT INVALIDATERECT
Ioctl
ipch ipch
ipsp ipsp
iterm iterm
@@ -839,17 +867,18 @@ KILLACTIVE
KILLFOCUS KILLFOCUS
kinda kinda
KIYEOK KIYEOK
KKP
KLF KLF
KLMNO KLMNO
KOK KOK
KPRIORITY KPRIORITY
KVM
kyouhaishaheiku kyouhaishaheiku
langid langid
LANGUAGELIST LANGUAGELIST
lasterror lasterror
LASTEXITCODE LASTEXITCODE
LAYOUTRTL LAYOUTRTL
lbl
LBN LBN
LBUTTON LBUTTON
LBUTTONDBLCLK LBUTTONDBLCLK
@@ -857,7 +886,6 @@ LBUTTONDOWN
LBUTTONUP LBUTTONUP
lcb lcb
lci lci
LCMAP
LCONTROL LCONTROL
LCTRL LCTRL
lcx lcx
@@ -870,8 +898,10 @@ LINESELECTION
LINEWRAP LINEWRAP
LINKERRCAP LINKERRCAP
LINKERROR LINKERROR
linputfile
listptr listptr
listptrsize listptrsize
lld
llx llx
LMENU LMENU
lnkd lnkd
@@ -880,7 +910,6 @@ LNM
LOADONCALL LOADONCALL
LOBYTE LOBYTE
localappdata localappdata
LOCATIONCHANGE
locsrc locsrc
Loewen Loewen
LOGBRUSH LOGBRUSH
@@ -928,11 +957,13 @@ LPWINDOWPOS
lpwpos lpwpos
lpwstr lpwstr
LRESULT LRESULT
LSBs lsb
lsconfig lsconfig
lstatus lstatus
lstrcmp lstrcmp
lstrcmpi
LTEXT LTEXT
lto
ltsc ltsc
LUID LUID
luma luma
@@ -954,7 +985,6 @@ MAKELRESULT
MAPBITMAP MAPBITMAP
MAPVIRTUALKEY MAPVIRTUALKEY
MAPVK MAPVK
matrix'd
MAXDIMENSTRING MAXDIMENSTRING
MAXSHORT MAXSHORT
maxval maxval
@@ -967,6 +997,7 @@ MBUTTONDOWN
MBUTTONUP MBUTTONUP
mdmerge mdmerge
MDs MDs
mdtauk
MEASUREITEM MEASUREITEM
megamix megamix
memallocator memallocator
@@ -989,7 +1020,6 @@ minkernel
MINMAXINFO MINMAXINFO
minwin minwin
minwindef minwindef
misprediction
MMBB MMBB
mmcc mmcc
MMCPL MMCPL
@@ -1005,7 +1035,6 @@ MOUSEACTIVATE
MOUSEFIRST MOUSEFIRST
MOUSEHWHEEL MOUSEHWHEEL
MOVESTART MOVESTART
msaa
msb msb
msbuildcache msbuildcache
msctls msctls
@@ -1020,9 +1049,9 @@ MSGMARKMODE
MSGSCROLLMODE MSGSCROLLMODE
MSGSELECTMODE MSGSELECTMODE
msiexec msiexec
MSIL
msix msix
MSRC MSRC
msvcrt
MSVCRTD MSVCRTD
MTSM MTSM
murmurhash murmurhash
@@ -1033,7 +1062,6 @@ mydir
Mypair Mypair
Myval Myval
NAMELENGTH NAMELENGTH
nameof
namestream namestream
NCACTIVATE NCACTIVATE
NCCALCSIZE NCCALCSIZE
@@ -1073,7 +1101,6 @@ NOCLIP
NOCOMM NOCOMM
NOCONTEXTHELP NOCONTEXTHELP
NOCOPYBITS NOCOPYBITS
nodiscard
NODUP NODUP
noexcepts noexcepts
NOFONT NOFONT
@@ -1088,6 +1115,7 @@ NOMOVE
NONALERT NONALERT
nonbreaking nonbreaking
nonclient nonclient
NONINFRINGEMENT
NONPREROTATED NONPREROTATED
nonspace nonspace
NOOWNERZORDER NOOWNERZORDER
@@ -1099,13 +1127,13 @@ NOREPOSITION
NORMALDISPLAY NORMALDISPLAY
NOSCRATCH NOSCRATCH
NOSEARCH NOSEARCH
noselect
NOSELECTION NOSELECTION
NOSENDCHANGING NOSENDCHANGING
NOSIZE NOSIZE
NOSNAPSHOT NOSNAPSHOT
NOTHOUSANDS NOTHOUSANDS
NOTICKS NOTICKS
notif
NOTIMEOUTIFNOTHUNG NOTIMEOUTIFNOTHUNG
NOTIMPL NOTIMPL
NOTOPMOST NOTOPMOST
@@ -1117,7 +1145,6 @@ NOYIELD
NOZORDER NOZORDER
NPFS NPFS
nrcs nrcs
NRNW
NSTATUS NSTATUS
ntapi ntapi
ntdef ntdef
@@ -1131,7 +1158,6 @@ ntuser
NTVDM NTVDM
nugetversions nugetversions
NUKTA NUKTA
nullability
nullness nullness
nullonfailure nullonfailure
nullopts nullopts
@@ -1159,6 +1185,7 @@ onecoreuuid
ONECOREWINDOWS ONECOREWINDOWS
onehalf onehalf
oneseq oneseq
oob
openbash openbash
opencode opencode
opencon opencon
@@ -1171,6 +1198,8 @@ osc
OSDEPENDSROOT OSDEPENDSROOT
OSG OSG
OSGENG OSGENG
oss
outdir
OUTOFCONTEXT OUTOFCONTEXT
Outptr Outptr
outstr outstr
@@ -1210,7 +1239,6 @@ PCONSOLEENDTASK
PCONSOLESETFOREGROUND PCONSOLESETFOREGROUND
PCONSOLEWINDOWOWNER PCONSOLEWINDOWOWNER
pcoord pcoord
pcs
pcshell pcshell
PCSHORT PCSHORT
PCSR PCSR
@@ -1304,7 +1332,8 @@ PREVIEWLABEL
PREVIEWWINDOW PREVIEWWINDOW
PREVLINE PREVLINE
prg prg
PRIs pri
prioritization
processhost processhost
PROCESSINFOCLASS PROCESSINFOCLASS
PRODEXT PRODEXT
@@ -1342,14 +1371,18 @@ PUCHAR
pvar pvar
pwch pwch
PWDDMCONSOLECONTEXT PWDDMCONSOLECONTEXT
Pwease
pweview
pws pws
pwstr pwstr
pwsz pwsz
pythonw pythonw
Qaabbcc
QUERYOPEN QUERYOPEN
quickedit quickedit
QUZ QUZ
QWER QWER
Qxxxxxxxxxxxxxxx
qzmp qzmp
RAII RAII
RALT RALT
@@ -1372,17 +1405,18 @@ RCOCA
RCOCW RCOCW
RCONTROL RCONTROL
RCOW RCOW
rcv
readback readback
READCONSOLE READCONSOLE
READCONSOLEOUTPUT READCONSOLEOUTPUT
READCONSOLEOUTPUTSTRING READCONSOLEOUTPUTSTRING
READMODE READMODE
rectread
redef redef
redefinable redefinable
redist redist
REDSCROLL REDSCROLL
REFCLSID REFCLSID
Reference'd
REFGUID REFGUID
REFIID REFIID
REFPROPERTYKEY REFPROPERTYKEY
@@ -1467,7 +1501,7 @@ SCRBUFSIZE
screenbuffer screenbuffer
SCREENBUFFERINFO SCREENBUFFERINFO
screeninfo screeninfo
screenshot screenshots
scriptload scriptload
scrollback scrollback
SCROLLFORWARD SCROLLFORWARD
@@ -1478,6 +1512,7 @@ SCROLLSCALE
SCROLLSCREENBUFFER SCROLLSCREENBUFFER
sddl sddl
SDKDDK SDKDDK
segfault
SELCHANGE SELCHANGE
SELECTEDFONT SELECTEDFONT
SELECTSTRING SELECTSTRING
@@ -1554,7 +1589,6 @@ SLGP
SLIST SLIST
slmult slmult
sln sln
slnx
slpit slpit
SManifest SManifest
SMARTQUOTE SMARTQUOTE
@@ -1564,7 +1598,7 @@ snapcy
snk snk
SOLIDBOX SOLIDBOX
Solutiondir Solutiondir
spec'd sourced
SRCAND SRCAND
SRCCODEPAGE SRCCODEPAGE
SRCCOPY SRCCOPY
@@ -1595,7 +1629,6 @@ STDEXT
STDMETHODCALLTYPE STDMETHODCALLTYPE
STDMETHODIMP STDMETHODIMP
STGM STGM
stl
STRINGTABLE STRINGTABLE
STRSAFE STRSAFE
STUBHEAD STUBHEAD
@@ -1608,8 +1641,9 @@ SUBLANG
swapchain swapchain
swapchainpanel swapchainpanel
SWMR SWMR
SWP
swrapped
SYMED SYMED
sync'd
SYNCPAINT SYNCPAINT
syscalls syscalls
SYSCHAR SYSCHAR
@@ -1634,12 +1668,14 @@ TARGETNAME
targetver targetver
tbc tbc
tbi tbi
Tbl
TBM TBM
TCHAR TCHAR
TCHFORMAT TCHFORMAT
TCI TCI
tcommands tcommands
tdbuild tdbuild
Tdd
TDP TDP
Teb Teb
Techo Techo
@@ -1656,6 +1692,7 @@ testenvs
testlab testlab
testlist testlist
testmd testmd
testname
TESTNULL TESTNULL
testpass testpass
testpasses testpasses
@@ -1671,7 +1708,6 @@ TEXTMETRICW
textmode textmode
texttests texttests
TFCAT TFCAT
threadpool
THUMBPOSITION THUMBPOSITION
THUMBTRACK THUMBTRACK
tilunittests tilunittests
@@ -1680,6 +1716,7 @@ titlebars
TITLEISLINKNAME TITLEISLINKNAME
TLDP TLDP
TLEN TLEN
Tlgg
TMAE TMAE
TMPF TMPF
tmultiple tmultiple
@@ -1693,6 +1730,7 @@ tracelogging
traceviewpp traceviewpp
trackbar trackbar
trackpad trackpad
transitioning
Trd Trd
triaged triaged
triaging triaging
@@ -1709,7 +1747,6 @@ TTM
TTo TTo
tvpp tvpp
tvtseq tvtseq
typeparam
TYUI TYUI
uap uap
uapadmin uapadmin
@@ -1732,7 +1769,6 @@ UINTs
uld uld
uldash uldash
uldb uldb
ULONGLONG
ulwave ulwave
Unaccess Unaccess
Unadvise Unadvise
@@ -1744,10 +1780,12 @@ unhosted
UNICODETEXT UNICODETEXT
UNICRT UNICRT
Unintense Unintense
Unittesting unittesting
unittests unittests
unk
unknwn unknwn
UNORM UNORM
unparseable
untextured untextured
UPDATEDISPLAY UPDATEDISPLAY
UPDOWN UPDOWN
@@ -1792,9 +1830,12 @@ vga
vgaoem vgaoem
viewkind viewkind
VIRAMA VIRAMA
Virt
VIRTTERM VIRTTERM
visualstudiosdk
vkey vkey
VKKEYSCAN VKKEYSCAN
VMs
VPA VPA
vpack vpack
vpackdirectory vpackdirectory
@@ -1844,15 +1885,21 @@ wddm
wddmcon wddmcon
WDDMCONSOLECONTEXT WDDMCONSOLECONTEXT
wdm wdm
webpage
websites
wekyb wekyb
wewoad
wex wex
wextest wextest
WFill
wfopen wfopen
WHelper
wic wic
WIDTHSCROLL WIDTHSCROLL
Widthx Widthx
Wiggum Wiggum
wil wil
WImpl
WINAPI WINAPI
winbasep winbasep
wincon wincon
@@ -1892,9 +1939,11 @@ winmm
WINMSAPP WINMSAPP
winnt winnt
Winperf Winperf
WInplace
winres winres
winrt winrt
winternl winternl
winui
winuser winuser
WINVER WINVER
wistd wistd
@@ -1907,16 +1956,24 @@ WNDCLASSEX
WNDCLASSEXW WNDCLASSEXW
WNDCLASSW WNDCLASSW
Wndproc Wndproc
WNegative
WNull
wordi
wordiswrapped wordiswrapped
workarea workarea
WOutside
WOWARM WOWARM
WOWx WOWx
wparam wparam
WPartial
wpf wpf
wpfdotnet wpfdotnet
WPR WPR
WPrep
WPresent
wprp wprp
wprpi wprpi
wrappe
wregex wregex
writeback writeback
WRITECONSOLE WRITECONSOLE
@@ -1924,13 +1981,16 @@ WRITECONSOLEINPUT
WRITECONSOLEOUTPUT WRITECONSOLEOUTPUT
WRITECONSOLEOUTPUTSTRING WRITECONSOLEOUTPUTSTRING
wrkstr wrkstr
WRL
wrl wrl
wrp wrp
WRunoff
WSLENV WSLENV
wstr wstr
wstrings wstrings
wsz wsz
wtd wtd
WTest
WTEXT WTEXT
WTo WTo
wtof wtof
@@ -1939,6 +1999,8 @@ WTSOFTFONT
wtw wtw
Wtypes Wtypes
WUX WUX
WVerify
WWith
wxh wxh
wyhash wyhash
wymix wymix
@@ -1952,22 +2014,34 @@ xbutton
XBUTTONDBLCLK XBUTTONDBLCLK
XBUTTONDOWN XBUTTONDOWN
XBUTTONUP XBUTTONUP
XCast
XCENTER XCENTER
xcopy xcopy
XCount
xdy xdy
XEncoding
xes xes
XFG XFG
XFile
XFORM XFORM
XIn XIn
xkcd
XManifest
XMath
XNamespace
xorg xorg
XPan
XResource
xsi
xstyler xstyler
XSubstantial
XTest
XTPOPSGR XTPOPSGR
XTPUSHSGR XTPUSHSGR
xtr xtr
XTWINOPS XTWINOPS
xunit xunit
xutr xutr
xvalue
XVIRTUALSCREEN XVIRTUALSCREEN
yact yact
YCast YCast
@@ -1983,6 +2057,6 @@ Zabcdefghijklmn
Zabcdefghijklmnopqrstuvwxyz Zabcdefghijklmnopqrstuvwxyz
ZCmd ZCmd
ZCtrl ZCtrl
zero'd
ZWJs ZWJs
ZYXWVU
ZYXWVUTd ZYXWVUTd

File diff suppressed because one or more lines are too long

View File

@@ -1,51 +1,5 @@
# See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns # See https://github.com/check-spelling/check-spelling/wiki/Configuration-Examples:-patterns
# src/host/ut_host/AliasTests.cpp
\$\d\$[A-ZA-z]
# src/cascadia/TerminalSettingsEditor/Appearances.cpp
// Pwease call.*
# src/host/ft_host/CJK_DbcsTests.cpp
// \|Q.*|^\s+// \|\s*aa\w+
# App Package trailer
__[a-z\d]{13}\b
# src/host/ut_host/TextBufferTests.cpp
// \d\|.{10}\|
# contributors
\[@[-_\w]+\]
# src/types/CodepointWidthDetector.cpp
fallback to
Include=".*?"
^author = \w+
D2D
# Compiler flags
\s-D(?=[A-Z])
# Automatically suggested patterns
# hit-count: 26 file-count: 12
# unicode escaped characters (4)
\\u[0-9a-fA-F]{4}
# hit-count: 6 file-count: 5
# ANSI color codes
(?:\\(?:u00|x)1[Bb]|\\03[1-7]|\x1b|\\u\{1[Bb]\})\[(?:\d+(?:;\d+)*|)m(?=[a-z])
# profiles.schema.json
"pattern": ".*?"
# Intentionally reversed binomials
\b(?:bottom to top|down and up)\b
# Windows accelerators # Windows accelerators
\b[A-Z][a-z]*&[a-z]+(?!;)\b \b[A-Z][a-z]*&[a-z]+(?!;)\b
@@ -89,7 +43,7 @@ L"[0-9A-F]{4}"
# hit-count: 3904 file-count: 577 # hit-count: 3904 file-count: 577
# IServiceProvider / isAThing # IServiceProvider / isAThing
(?:(?:\b|_|(?<=[a-z]))[ITWX]|(?:\b|_)(?:nsI|isA))(?=(?:[A-Z][a-z]{2,})+(?:[A-Z\d]|\b)) (?:(?:\b|_|(?<=[a-z]))[IT]|(?:\b|_)(?:nsI|isA))(?=(?:[A-Z][a-z]{2,})+(?:[A-Z\d]|\b))
# hit-count: 2437 file-count: 826 # hit-count: 2437 file-count: 826
# #includes # #includes
@@ -176,7 +130,7 @@ mailto:[-a-zA-Z=;:/?%&0-9+@._]{3,}
# hit-count: 1 file-count: 1 # hit-count: 1 file-count: 1
# microsoft # microsoft
\b(?:https?://|)(?:(?:(?:blogs|download\.visualstudio|docs|msdn2?|research)\.|)microsoft|blogs\.msdn)\.co(?:m|\.\w\w)/[-_a-zA-Z0-9()=./%?#]* \b(?:https?://|)(?:(?:(?:blogs|download\.visualstudio|docs|msdn2?|research)\.|)microsoft|blogs\.msdn)\.co(?:m|\.\w\w)/[-_a-zA-Z0-9()=./%]*
# hit-count: 1 file-count: 1 # hit-count: 1 file-count: 1
# Punycode # Punycode
@@ -217,7 +171,7 @@ Scro\&ll
:\\windows\\syste\b :\\windows\\syste\b
TestUtils::VerifyExpectedString\(tb, L"[^"]+" TestUtils::VerifyExpectedString\(tb, L"[^"]+"
(?:hostSm|mach)\.ProcessString\(L"[^"]+" (?:hostSm|mach)\.ProcessString\(L"[^"]+"
\b([A-Za-z])\g{-1}{3,}\b
Base64::s_(?:En|De)code\(L"[^"]+" Base64::s_(?:En|De)code\(L"[^"]+"
VERIFY_ARE_EQUAL\(L"[^"]+" VERIFY_ARE_EQUAL\(L"[^"]+"
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\+/" "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789\+/"
@@ -266,15 +220,13 @@ equals_insensitive_ascii\("\w+", "\w+"
# mount # mount
\bmount\s+-t\s+(\w+)\s+\g{-1}\b \bmount\s+-t\s+(\w+)\s+\g{-1}\b
# C/idl types, repeated CSS values, + English ... # C/idl types, repeated CSS values, + English ...
\s(auto|await|buffalo|center|div|Guid|GUID|inherit|long|LONG|none|normal|solid|that|thin|transparent|very)(?:\s\g{-1})+\s \s(auto|buffalo|center|div|Guid|GUID|inherit|long|LONG|none|normal|solid|that|thin|transparent|very)(?: \g{-1})+\s
# C enum and struct # C enum and struct
\b(?:enum|struct)\s+(\w+)\s+\g{-1}\b \b(?:enum|struct)\s+(\w+)\s+\g{-1}\b
# go templates # go templates
\s(\w+)\s+\g{-1}\s+\`(?:graphql|inject|json|yaml): \s(\w+)\s+\g{-1}\s+\`(?:graphql|inject|json|yaml):
# doxygen / javadoc / .net # doxygen / javadoc / .net
(?:[\\@](?:brief|defgroup|groupname|link|t?param|return|retval)|(?:public|private|\[Parameter(?:\(.+\)|)\])(?:\s+(?:static|override|readonly|required|virtual))*)(?:\s+\{\w+\}|)\s+(\w+)\s+\g{-1}\s (?:[\\@](?:brief|defgroup|groupname|link|t?param|return|retval)|(?:public|private|\[Parameter(?:\(.+\)|)\])(?:\s+(?:static|override|readonly|required|virtual))*)(?:\s+\{\w+\}|)\s+(\w+)\s+\g{-1}\s
# C# getter/setter
\s(\w+)\s+\g{-1}\s*\{\s*[gs]et;
# macOS file path # macOS file path
(?:Contents\W+|(?!iOS)/)MacOS\b (?:Contents\W+|(?!iOS)/)MacOS\b

View File

@@ -1,30 +1,25 @@
attache ^attache$
aroynt.* ^attacher$
bellows? ^attachers$
^bellow?$
benefitting benefitting
occurences? occurences?
.+dnt ^dependan.*
dependan.* ^develope$
developement ^developement$
developp?e ^developpe
Devers? ^Devers?$
devex.* ^devex
devide ^devide
Devinn?[ae] ^Devinn?[ae]
devisals? ^devisal
devisors? ^devisor
diables? ^diables?$
hasta? ^oer$
hastat.*
immediatly
inisle
inital
linge
oer
Sorce Sorce
[Ss]pae.* ^[Ss]pae.*
Teh ^Teh$
untill ^untill$
untilling ^untilling$
venders? ^venders?$
wether.* ^wether.*

View File

@@ -55,7 +55,7 @@ name: Spell checking
# spelling: # spelling:
# # remove `security-events: write` and `use_sarif: 1` # # remove `security-events: write` and `use_sarif: 1`
# # remove `experimental_apply_changes_via_bot: 1` # # remove `experimental_apply_changes_via_bot: 1`
# ... otherwise, adjust the `with:` as you wish # ... otherwise adjust the `with:` as you wish
on: on:
push: push:
@@ -74,8 +74,6 @@ on:
types: types:
- "created" - "created"
permissions: {}
jobs: jobs:
spelling: spelling:
name: Check Spelling name: Check Spelling
@@ -87,7 +85,7 @@ jobs:
outputs: outputs:
followup: ${{ steps.spelling.outputs.followup }} followup: ${{ steps.spelling.outputs.followup }}
runs-on: ubuntu-latest runs-on: ubuntu-latest
if: ${{ (contains(github.event_name, 'pull_request') && github.event.pull_request.state == 'open') || github.event_name == 'push' }} if: ${{ contains(github.event_name, 'pull_request') || github.event_name == 'push' }}
concurrency: concurrency:
group: spelling-${{ github.event.pull_request.number || github.ref }} group: spelling-${{ github.event.pull_request.number || github.ref }}
# note: If you use only_check_changed_files, you do not want cancel-in-progress # note: If you use only_check_changed_files, you do not want cancel-in-progress
@@ -95,7 +93,7 @@ jobs:
steps: steps:
- name: check-spelling - name: check-spelling
id: spelling id: spelling
uses: check-spelling/check-spelling@cfb6f7e75bbfc89c71eaa30366d0c166f1bd9c8c # v0.0.26 uses: check-spelling/check-spelling@v0.0.25
with: with:
suppress_push_for_open_pull_request: ${{ github.actor != 'dependabot[bot]' && 1 }} suppress_push_for_open_pull_request: ${{ github.actor != 'dependabot[bot]' && 1 }}
checkout: true checkout: true
@@ -107,25 +105,47 @@ jobs:
warnings: bad-regex,binary-file,deprecated-feature,ignored-expect-variant,large-file,limited-references,no-newline-at-eof,noisy-file,non-alpha-in-dictionary,token-is-substring,unexpected-line-ending,whitespace-in-dictionary,minified-file,unsupported-configuration,no-files-to-check,unclosed-block-ignore-begin,unclosed-block-ignore-end warnings: bad-regex,binary-file,deprecated-feature,ignored-expect-variant,large-file,limited-references,no-newline-at-eof,noisy-file,non-alpha-in-dictionary,token-is-substring,unexpected-line-ending,whitespace-in-dictionary,minified-file,unsupported-configuration,no-files-to-check,unclosed-block-ignore-begin,unclosed-block-ignore-end
experimental_apply_changes_via_bot: ${{ github.repository_owner != 'microsoft' && 1 }} experimental_apply_changes_via_bot: ${{ github.repository_owner != 'microsoft' && 1 }}
use_sarif: 1 use_sarif: 1
allow-hunspell: false check_extra_dictionaries: ""
load-config-from: | dictionary_source_prefixes: >
{ {
"pr-base-keys": [ "cspell": "https://raw.githubusercontent.com/check-spelling/cspell-dicts/v20241114/dictionaries/"
""
],
"pr-trusted-keys": [
"check_extra_dictionaries",
"dictionary_source_prefixes",
"extra_dictionaries",
""
],
"": []
} }
extra_dictionaries: |
cspell:software-terms/softwareTerms.txt
cspell:cpp/stdlib-cpp.txt
cspell:cpp/stdlib-c.txt
cspell:python/python/python-lib.txt
cspell:php/php.txt
cspell:node/node.txt
cspell:dart/dart.txt
cspell:filetypes/filetypes.txt
cspell:java/java.txt
cspell:css/css.txt
cspell:dotnet/dotnet.txt
cspell:npm/npm.txt
cspell:fullstack/fullstack.txt
cspell:java/java-terms.txt
cspell:r/r.txt
cspell:golang/go.txt
cspell:cpp/stdlib-cmath.txt
cspell:typescript/typescript.txt
cspell:html/html.txt
cspell:cpp/compiler-msvc.txt
cspell:django/django.txt
cspell:aws/aws.txt
cspell:python/common/extra.txt
cspell:cpp/ecosystem.txt
cspell:cpp/lang-keywords.txt
cspell:csharp/csharp.txt
cspell:cpp/compiler-clang-attributes.txt
cspell:python/python/python.txt
cspell:mnemonics/mnemonics.txt
cspell:powershell/powershell.txt
comment-push: comment-push:
name: Report (Push) name: Report (Push)
# If your workflow isn't running on push, you can remove this job # If your workflow isn't running on push, you can remove this job
runs-on: ubuntu-slim runs-on: ubuntu-latest
needs: spelling needs: spelling
permissions: permissions:
actions: read actions: read
@@ -133,24 +153,27 @@ jobs:
if: (success() || failure()) && needs.spelling.outputs.followup && github.event_name == 'push' if: (success() || failure()) && needs.spelling.outputs.followup && github.event_name == 'push'
steps: steps:
- name: comment - name: comment
uses: check-spelling/check-spelling@cfb6f7e75bbfc89c71eaa30366d0c166f1bd9c8c # v0.0.26 uses: check-spelling/check-spelling@v0.0.25
with: with:
checkout: true
spell_check_this: microsoft/terminal@main spell_check_this: microsoft/terminal@main
task: ${{ needs.spelling.outputs.followup }} task: ${{ needs.spelling.outputs.followup }}
comment-pr: comment-pr:
name: Report (PR) name: Report (PR)
# If you workflow isn't running on pull_request*, you can remove this job # If you workflow isn't running on pull_request*, you can remove this job
runs-on: ubuntu-slim runs-on: ubuntu-latest
needs: spelling needs: spelling
permissions: permissions:
actions: read actions: read
contents: read
pull-requests: write pull-requests: write
if: (success() || failure()) && needs.spelling.outputs.followup && contains(github.event_name, 'pull_request') if: (success() || failure()) && needs.spelling.outputs.followup && contains(github.event_name, 'pull_request')
steps: steps:
- name: comment - name: comment
uses: check-spelling/check-spelling@cfb6f7e75bbfc89c71eaa30366d0c166f1bd9c8c # v0.0.26 uses: check-spelling/check-spelling@v0.0.25
with: with:
checkout: true
spell_check_this: microsoft/terminal@main spell_check_this: microsoft/terminal@main
task: ${{ needs.spelling.outputs.followup }} task: ${{ needs.spelling.outputs.followup }}
experimental_apply_changes_via_bot: ${{ github.repository_owner != 'microsoft' && 1 }} experimental_apply_changes_via_bot: ${{ github.repository_owner != 'microsoft' && 1 }}
@@ -161,13 +184,12 @@ jobs:
contents: write contents: write
pull-requests: write pull-requests: write
actions: read actions: read
runs-on: ubuntu-slim runs-on: ubuntu-latest
if: ${{ if: ${{
github.repository_owner != 'microsoft' && github.repository_owner != 'microsoft' &&
github.event_name == 'issue_comment' && github.event_name == 'issue_comment' &&
github.event.issue.pull_request && github.event.issue.pull_request &&
contains(github.event.comment.body, '@check-spelling-bot') && contains(github.event.comment.body, '@check-spelling-bot apply') &&
contains(github.event.comment.body, 'apply') &&
contains(github.event.comment.body, 'https://') contains(github.event.comment.body, 'https://')
}} }}
concurrency: concurrency:
@@ -175,7 +197,7 @@ jobs:
cancel-in-progress: false cancel-in-progress: false
steps: steps:
- name: apply spelling updates - name: apply spelling updates
uses: check-spelling/check-spelling@cfb6f7e75bbfc89c71eaa30366d0c166f1bd9c8c # v0.0.26 uses: check-spelling/check-spelling@v0.0.25
with: with:
experimental_apply_changes_via_bot: ${{ github.repository_owner != 'microsoft' && 1 }} experimental_apply_changes_via_bot: ${{ github.repository_owner != 'microsoft' && 1 }}
checkout: true checkout: true

View File

@@ -127,5 +127,4 @@
"**/obj/**": true, "**/obj/**": true,
"**/packages/**": true, "**/packages/**": true,
}, },
"sarif-viewer.connectToGithubCodeScanning": "on", }
}

2309
OpenConsole.sln Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -15,6 +15,7 @@
- [Via Chocolatey (unofficial)](#via-chocolatey-unofficial) - [Via Chocolatey (unofficial)](#via-chocolatey-unofficial)
- [Via Scoop (unofficial)](#via-scoop-unofficial) - [Via Scoop (unofficial)](#via-scoop-unofficial)
- [Installing Windows Terminal Canary](#installing-windows-terminal-canary) - [Installing Windows Terminal Canary](#installing-windows-terminal-canary)
- [Windows Terminal Roadmap](#windows-terminal-roadmap)
- [Terminal \& Console Overview](#terminal--console-overview) - [Terminal \& Console Overview](#terminal--console-overview)
- [Windows Terminal](#windows-terminal) - [Windows Terminal](#windows-terminal)
- [The Windows Console Host](#the-windows-console-host) - [The Windows Console Host](#the-windows-console-host)
@@ -168,15 +169,20 @@ The Portable ZIP distribution is a portable application. It will not automatical
| Distribution | Architecture | Link | | Distribution | Architecture | Link |
|---------------|:---------------:|------------------------------------------------------| |---------------|:---------------:|------------------------------------------------------|
| App Installer | x64, arm64, x86 | [Download](https://aka.ms/terminal-canary-installer) | | App Installer | x64, arm64, x86 | [download](https://aka.ms/terminal-canary-installer) |
| Portable ZIP | x64 | [Download](https://aka.ms/terminal-canary-zip-x64) | | Portable ZIP | x64 | [download](https://aka.ms/terminal-canary-zip-x64) |
| Portable ZIP | ARM64 | [Download](https://aka.ms/terminal-canary-zip-arm64) | | Portable ZIP | ARM64 | [download](https://aka.ms/terminal-canary-zip-arm64) |
| Portable ZIP | x86 | [Download](https://aka.ms/terminal-canary-zip-x86) | | Portable ZIP | x86 | [download](https://aka.ms/terminal-canary-zip-x86) |
_Learn more about the [types of Windows Terminal distributions](https://learn.microsoft.com/windows/terminal/distributions)._ _Learn more about the [types of Windows Terminal distributions](https://learn.microsoft.com/windows/terminal/distributions)._
--- ---
## Windows Terminal Roadmap
The plan for the Windows Terminal [is described here](/doc/roadmap-2023.md) and
will be updated as the project proceeds.
## Terminal & Console Overview ## Terminal & Console Overview
Please take a few minutes to review the overview below before diving into the Please take a few minutes to review the overview below before diving into the
@@ -369,7 +375,7 @@ winget configure .config\configuration.winget
## Building the Code ## Building the Code
OpenConsole.slnx may be built from within Visual Studio or from the command-line 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: using a set of convenience scripts & tools in the **/tools** directory:
### Building in PowerShell ### Building in PowerShell

View File

@@ -56,12 +56,11 @@ Dies ist ein Open Source-Projekt, und wir freuen uns über die Teilnahme der Com
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ Version __VERSION_NUMBER__
Endlich die Möglichkeit, nach beliebigen Einstellungen zu suchen! - Wir haben der Benutzeroberfläche durchschnittliche Einstellungen hinzugefügt, die nur einmal in der JSON-Datei vorhanden waren, einschließlich einer neuen Seite zum Anpassen des Layouts Ihres Menüs "Neue Registerkarte"!
Ein neuer nativer Editor für Tastenkombinationen, Aktionen und Einträge in der Befehlspalette. - Wir haben die Fensterverwaltung zurückgesetzt, um die Zuverlässigkeit zu verbessern; Melden Sie alle Fehler, die mit dem alias "wt.exe" auftreten.
Neue Community-Übersetzungen für Serbisch und Ukrainisch - Profile zeigen jetzt ein Symbol an, wenn sie ausgeblendet wurden oder auf programme verweisen, die deinstalliert wurden.
Unterstützung für das „Kitty“-Tastaturprotokoll für hochauflösende Eingabecodierung
Weitere Informationen finden Sie auf unserer GitHub-Releaseseite. Weitere Details finden Sie auf unserer GitHub-Releasesseite.
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -54,12 +54,11 @@ This is an open source project and we welcome community participation. To partic
<!-- _locComment_text="{MaxLength=255} App DevStudio" --> <!-- _locComment_text="{MaxLength=255} App DevStudio" -->
</DevStudio> </DevStudio>
<ReleaseNotes _locID="App_ReleaseNotes"> <ReleaseNotes _locID="App_ReleaseNotes">
<!-- _locComment_text="{MaxLength=1500} {Locked=__VERSION_NUMBER__}{Locked=wt.exe}{Locked=Kitty} App Release Note" -->Version __VERSION_NUMBER__ <!-- _locComment_text="{MaxLength=1500} {Locked=__VERSION_NUMBER__}{Locked=wt.exe} App Release Note" -->Version __VERSION_NUMBER__
- Finally, the ability to search for any setting! - A whole new Extensions page that shows what has been installed into your Terminal
- A new native editor for key bindings, actions and command palette entries. - Command Palette now shows up in your native language as well as English
- New community localizations to Serbian and Ukrainian - New VT features such as synchronized rendering, new color schemes, configuration for quick mouse actions like zooming, and more
- Support for the "Kitty" keyboard protocol for high-fidelity input encoding
Please see our GitHub releases page for additional details. Please see our GitHub releases page for additional details.
</ReleaseNotes> </ReleaseNotes>

View File

@@ -54,14 +54,13 @@ Este es un proyecto de fuente abierta y animamos a la comunidad a participar. Pa
</DevStudio> </DevStudio>
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ Versión __VERSION_NUMBER__
- Por último, la capacidad de buscar cualquier configuración. - Hemos agregado decenas de configuraciones a la interfaz de usuario que solo existían una vez en el archivo JSON, incluida una página nueva para personalizar el diseño del menú Nueva pestaña.
- Nuevo editor nativo para asignaciones de teclas, acciones y entradas de la paleta de comandos. - Tenemos administración de ventanas rearchitecdas para mejorar la confiabilidad; envíe los errores que encuentre con el alias de wt.exe.
- Nuevas localizaciones comunitarias para serbio y ucraniano - Ahora, los perfiles muestran un icono si se han ocultado o hacen referencia a programas que se han desinstalado.
- Soporte para el protocolo de teclado "Kitty" para codificación de entrada de alta fidelidad
Consulta la página de versiones de GitHub para más información. Consulte nuestra página de versiones de GitHub para obtener más detalles.
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -54,14 +54,13 @@ Il sagit dun projet open source et nous vous invitons à participer dans l
</DevStudio> </DevStudio>
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ __VERSION_NUMBER__ de version
- Enfin, la possibilité de rechercher nimporte quel paramètre ! - Nous avons ajouté des milliers de paramètres à linterface utilisateur qui nexistaient auparavant que dans le fichier JSON, y compris une nouvelle page pour personnaliser la disposition de votre menu Nouvel onglet !
- Un nouvel éditeur natif pour les raccourcis clavier, les actions et les entrées de la palette de commandes. - Nous avons réarchitialiser la gestion des fenêtres pour améliorer la fiabilité ; entrez les bogues rencontrés avec lalias wt.exe
- De nouvelles localisations communautaires en serbe et en ukrainien - Les profils affichent désormais une icône sils ont été masqués ou sils font référence à des programmes qui ont été désinstallés.
- Une prise en charge du protocole clavier « Kitty » pour un encodage dentrée à haute fidélité
Consultez notre page des versions de GitHub pour plus de détails. Pour plus dinformations, consultez notre page des mises en production GitHub.
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,12 +56,11 @@ Si tratta di un progetto open source e la partecipazione della community è molt
<ReleaseNotes> <ReleaseNotes>
Versione __VERSION_NUMBER__ Versione __VERSION_NUMBER__
- Finalmente è possibile cercare qualsiasi impostazione - Sono state aggiunte decine di impostazioni all'interfaccia utente che una volta esisteva solo nel file JSON, inclusa una nuova pagina per personalizzare il layout del menu Nuova scheda.
- Nuovo editor nativo per le associazioni di tasti, le azioni e le voci del riquadro comandi. - È stata riattivata la gestione delle finestre per migliorare l'affidabilità; inserire eventuali bug riscontrati con l'alias wt.exe
- Nuove localizzazioni della community in serbo e ucraino - I profili ora mostrano un'icona se sono stati nascosti o fanno riferimento ai programmi che sono stati disinstallati.
- Supporto per il protocollo di tastiera "Kitty" per una codifica dell'input ad alta fedeltà
Per altri dettagli, vedi la pagina delle release di GitHub. Per altri dettagli, vedere la pagina delle versioni di GitHub.
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,12 +56,11 @@
<ReleaseNotes> <ReleaseNotes>
バージョン __VERSION_NUMBER__ バージョン __VERSION_NUMBER__
- 最後に、任意の設定を検索する機能です - [新しいタブ] メニューのレイアウトをカスタマイズするための新しいページを含む、一度だけ JSON ファイルに存在した UI に多数の設定を追加しました
- キー バインド、アクション、コマンド パレット エントリ用の新しいネイティブ エディター。 - 信頼性を向上させるためにウィンドウ管理を再選択しました。wt.exe エイリアスで発生したバグを報告してください
- セルビア語とウクライナ語への新しいコミュニティ ローカライズ - プロファイルが非表示になっているか、アンインストールされたプログラムを参照している場合にアイコンが表示されるようになりました。
- 高忠実度入力エンコード用の "Kitty" キーボード プロトコルのサポート
詳細については、GitHub リリース ページをご覧ください。 詳細については、GitHub リリース ページを参照してください。
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,12 +56,11 @@
<ReleaseNotes> <ReleaseNotes>
버전 __VERSION_NUMBER__ 버전 __VERSION_NUMBER__
- 드디어 모든 설정을 검색할 수 있게 되었어요! - 새 탭 메뉴의 레이아웃을 사용자 지정하기 위한 새 페이지를 포함하여 JSON 파일에 한 번만 존재했던 UI에 수천 개의 설정을 추가했습니다.
- 키 바인딩, 작업, 명령 팔레트 항목을 위한 새로운 기본 편집기가 추가되었습니다. - 안정성을 개선하기 위해 창 관리를 다시 보관했습니다. wt.exe 별칭에 발생한 버그를 제출하세요.
- 세르비아어와 우크라이나어 커뮤니티 지역화를 새롭게 지원합니다. - 프로필이 숨겨졌거나 제거된 프로그램을 참조하는 경우 이제 프로필에 아이콘이 표시됩니다.
- 고품질 입력 인코딩을 위해 "Kitty" 키보드 프로토콜을 지원합니다.
자세한 정보는 GitHub 릴리스 페이지를 참하세요. 자세한 내용은 GitHub 릴리스 페이지를 참하세요.
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -54,14 +54,13 @@ Este é um projeto de código aberto e a participação da comunidade é bem-vin
</DevStudio> </DevStudio>
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ Versão __VERSION_NUMBER__
- Finalmente, a possibilidade de pesquisar qualquer configuração! - Adicionamos várias configurações à interface do usuário que só existiam no arquivo JSON, incluindo uma nova página para personalizar o layout do menu Nova Guia!
- Um novo editor nativo para combinações de teclas, ações e entradas na paleta de comandos. - Temos o gerenciamento de janelas rearmado para melhorar a confiabilidade; registre todos os bugs encontrados com o wt.exe alias
- Novas localizações da comunidade para sérvio e ucraniano - Os perfis agora mostram um ícone se eles foram ocultos ou se referem a programas que foram desinstalados.
- Suporte para o protocolo de teclado "Kitty" para codificação de entrada de alta fidelidade
Confira nossa página de lançamentos no GitHub para obter mais detalhes. Consulte nossa página de versões do GitHub para obter detalhes adicionais.
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,12 +56,11 @@
<ReleaseNotes> <ReleaseNotes>
Vėѓѕіöй __VERSION_NUMBER__ !!! !!! ! Vėѓѕіöй __VERSION_NUMBER__ !!! !!! !
- ₣ïňάĺĺў, ŧне âъΐŀίťŷ ţø şēаґсђ ƒбг ăиÿ şēťτіήġ! !!! !!! !!! !!! !!! - Ẁē'νё àðđέď đöžзńş öƒ śėŧťїńģš тб тнè ÛĮ ťħąт ŏņ¢з όⁿℓγ έжіѕŧéð іή тђε ЈŠΩŃ ƒїℓė, ĭňĉŀџđіņģ å ňэẅ φâģé ƒøя ςŭśŧŏmïżϊñģ тħέ ĺαŷöυτ öƒ убµř Йέẁ Ţàъ мęήµ! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Á ŋеώ ñăŧїνе ěðíτōг ƒοѓ ќэÿ вїñďĭňğş, дčтιθήѕ дñð çθmmãήδ ρàľěţťę ёñтгĩέś. !!! !!! !!! !!! !!! !!! !!! ! - Ẁè ĥаνė řэąřčħΐŧέсτέð щįлďοш мǻňαĝēмêиť ťô ϊmрябνé ŗĕŀĩāвîĺïтγ; ρŀěăѕе ƒíŀё αⁿу вûġš ÿøú εʼnćōùлťēѓ ẃïτħ ŧћё wt.exe ǻļĭâś !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Пėώ čоmmμñìтў ŀό¢àłįżåţίòйš ŧō Šэґъιäñ åηδ Ůκŗăįлīăπ !!! !!! !!! !!! !!! ! - Рґøƒíŀêŝ ňöẁ šћθẁ ãй ĭčöñ ίƒ ŧħэŷ'νę ъеєл ђіðδэñ őř řєƒěґ ŧσ φяοġгаmŝ ẅђíçĥ ẁ℮гέ џňϊйşťàľĺèð. !!! !!! !!! !!! !!! !!! !!! !!! !!! !
- Ѕυррòŗт ƒòŗ ťĥё "Kitty" ĸ℮ŷъøàŗď ρřŏťô¢õℓ ƒŏґ нįģћ-ƒíđёℓïтÿ îńрüť êńсøďíлğ !!! !!! !!! !!! !!! !!! !!! !
Ρŀ℮âѕē şєё όûя ĜîтΗūь ŕεĺĕǻŝёš раġĕ ƒŏґ ãδđϊŧïбπåľ δеτáΐłś. !!! !!! !!! !!! !!! !!! Рļèāŝє ŝèĕ θџŗ ĢίťĤцъ řέĺэªşэš ρąĝę ƒόř áďđїτϊōπαľ đэŧдįļŝ. !!! !!! !!! !!! !!! !!!
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,12 +56,11 @@
<ReleaseNotes> <ReleaseNotes>
Vėѓѕіöй __VERSION_NUMBER__ !!! !!! ! Vėѓѕіöй __VERSION_NUMBER__ !!! !!! !
- ₣ïňάĺĺў, ŧне âъΐŀίťŷ ţø şēаґсђ ƒбг ăиÿ şēťτіήġ! !!! !!! !!! !!! !!! - Ẁē'νё àðđέď đöžзńş öƒ śėŧťїńģš тб тнè ÛĮ ťħąт ŏņ¢з όⁿℓγ έжіѕŧéð іή тђε ЈŠΩŃ ƒїℓė, ĭňĉŀџđіņģ å ňэẅ φâģé ƒøя ςŭśŧŏmïżϊñģ тħέ ĺαŷöυτ öƒ убµř Йέẁ Ţàъ мęήµ! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Á ŋеώ ñăŧїνе ěðíτōг ƒοѓ ќэÿ вїñďĭňğş, дčтιθήѕ дñð çθmmãήδ ρàľěţťę ёñтгĩέś. !!! !!! !!! !!! !!! !!! !!! ! - Ẁè ĥаνė řэąřčħΐŧέсτέð щįлďοш мǻňαĝēмêиť ťô ϊmрябνé ŗĕŀĩāвîĺïтγ; ρŀěăѕе ƒíŀё αⁿу вûġš ÿøú εʼnćōùлťēѓ ẃïτħ ŧћё wt.exe ǻļĭâś !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Пėώ čоmmμñìтў ŀό¢àłįżåţίòйš ŧō Šэґъιäñ åηδ Ůκŗăįлīăπ !!! !!! !!! !!! !!! ! - Рґøƒíŀêŝ ňöẁ šћθẁ ãй ĭčöñ ίƒ ŧħэŷ'νę ъеєл ђіðδэñ őř řєƒěґ ŧσ φяοġгаmŝ ẅђíçĥ ẁ℮гέ џňϊйşťàľĺèð. !!! !!! !!! !!! !!! !!! !!! !!! !!! !
- Ѕυррòŗт ƒòŗ ťĥё "Kitty" ĸ℮ŷъøàŗď ρřŏťô¢õℓ ƒŏґ нįģћ-ƒíđёℓïтÿ îńрüť êńсøďíлğ !!! !!! !!! !!! !!! !!! !!! !
Ρŀ℮âѕē şєё όûя ĜîтΗūь ŕεĺĕǻŝёš раġĕ ƒŏґ ãδđϊŧïбπåľ δеτáΐłś. !!! !!! !!! !!! !!! !!! Рļèāŝє ŝèĕ θџŗ ĢίťĤцъ řέĺэªşэš ρąĝę ƒόř áďđїτϊōπαľ đэŧдįļŝ. !!! !!! !!! !!! !!! !!!
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,12 +56,11 @@
<ReleaseNotes> <ReleaseNotes>
Vėѓѕіöй __VERSION_NUMBER__ !!! !!! ! Vėѓѕіöй __VERSION_NUMBER__ !!! !!! !
- ₣ïňάĺĺў, ŧне âъΐŀίťŷ ţø şēаґсђ ƒбг ăиÿ şēťτіήġ! !!! !!! !!! !!! !!! - Ẁē'νё àðđέď đöžзńş öƒ śėŧťїńģš тб тнè ÛĮ ťħąт ŏņ¢з όⁿℓγ έжіѕŧéð іή тђε ЈŠΩŃ ƒїℓė, ĭňĉŀџđіņģ å ňэẅ φâģé ƒøя ςŭśŧŏmïżϊñģ тħέ ĺαŷöυτ öƒ убµř Йέẁ Ţàъ мęήµ! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Á ŋеώ ñăŧїνе ěðíτōг ƒοѓ ќэÿ вїñďĭňğş, дčтιθήѕ дñð çθmmãήδ ρàľěţťę ёñтгĩέś. !!! !!! !!! !!! !!! !!! !!! ! - Ẁè ĥаνė řэąřčħΐŧέсτέð щįлďοш мǻňαĝēмêиť ťô ϊmрябνé ŗĕŀĩāвîĺïтγ; ρŀěăѕе ƒíŀё αⁿу вûġš ÿøú εʼnćōùлťēѓ ẃïτħ ŧћё wt.exe ǻļĭâś !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Пėώ čоmmμñìтў ŀό¢àłįżåţίòйš ŧō Šэґъιäñ åηδ Ůκŗăįлīăπ !!! !!! !!! !!! !!! ! - Рґøƒíŀêŝ ňöẁ šћθẁ ãй ĭčöñ ίƒ ŧħэŷ'νę ъеєл ђіðδэñ őř řєƒěґ ŧσ φяοġгаmŝ ẅђíçĥ ẁ℮гέ џňϊйşťàľĺèð. !!! !!! !!! !!! !!! !!! !!! !!! !!! !
- Ѕυррòŗт ƒòŗ ťĥё "Kitty" ĸ℮ŷъøàŗď ρřŏťô¢õℓ ƒŏґ нįģћ-ƒíđёℓïтÿ îńрüť êńсøďíлğ !!! !!! !!! !!! !!! !!! !!! !
Ρŀ℮âѕē şєё όûя ĜîтΗūь ŕεĺĕǻŝёš раġĕ ƒŏґ ãδđϊŧïбπåľ δеτáΐłś. !!! !!! !!! !!! !!! !!! Рļèāŝє ŝèĕ θџŗ ĢίťĤцъ řέĺэªşэš ρąĝę ƒόř áďđїτϊōπαľ đэŧдįļŝ. !!! !!! !!! !!! !!! !!!
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,10 +56,9 @@
<ReleaseNotes> <ReleaseNotes>
Версия __VERSION_NUMBER__ Версия __VERSION_NUMBER__
Наконец-то появилась возможность поиска любых параметров! - Мы добавили в пользовательский интерфейс десятки параметров, которые существовали только в JSON-файле, включая новую страницу для настройки макета меню "Новая вкладка".
Новый собственный редактор для настраиваемых сочетаний клавиш, действий и записей палитры команд. - Для повышения надежности мы переупоряхлили управление окнами; создайте все ошибки, обнаруженные с wt.exe псевдонимом
Новые локализации сообщества на сербский и украинский языки - Профили теперь показывают значок, если они скрыты или ссылаются на программы, которые были удалены.
Поддержка протокола клавиатуры Kitty для высокоточного кодирования ввода
Дополнительные сведения см. на странице выпусков GitHub. Дополнительные сведения см. на странице выпусков GitHub.
</ReleaseNotes> </ReleaseNotes>

View File

@@ -1,182 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<ProductDescription language="sr-cyrl-rs" xmlns="http://schemas.microsoft.com/appx/2012/ProductDescription" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="en-us" Release="">
<AppStoreName _locID="App_AppStoreName">
<!-- This is optional. AppStoreName is typically extracted from your package's AppxManifest DisplayName property. -->
<!-- Uncomment (and localize) this Store name if your application package does not contain a localization for the DisplayName in this language. -->
<!-- Leaving this uncommented for a language that your application package DOES contain a DisplayName for will result in a submission failure with the API. -->
<!-- _locComment_text="{MaxLength=200} App AppStoreName" -->
<!-- Windows Terminal -->
</AppStoreName>
<Keywords>
<!-- Valid length: 30 character limit, up to 7 elements -->
<Keyword _locID="App_keyword1">
<!-- _locComment_text="{MaxLength=30} App keyword 1" -->Терминал</Keyword>
<Keyword _locID="App_keyword2">
<!-- _locComment_text="{MaxLength=30} App keyword 2" -->Конзола</Keyword>
<Keyword _locID="App_keyword3">
<!-- _locComment_text="{MaxLength=30} App keyword 3" -->
</Keyword>
<Keyword _locID="App_keyword4">
<!-- _locComment_text="{MaxLength=30} App keyword 4" -->
</Keyword>
<Keyword _locID="App_keyword5">
<!-- _locComment_text="{MaxLength=30} App keyword 5" -->
</Keyword>
<Keyword _locID="App_keyword6">
<!-- _locComment_text="{MaxLength=30} App keyword 6" -->
</Keyword>
<Keyword _locID="App_keyword7">
<!-- _locComment_text="{MaxLength=30} App keyword 7" -->
</Keyword>
</Keywords>
<Description _locID="App_Description">
<!-- _locComment_text="{MaxLength=10000} App Description" -->Ово је изградња прегледа апликације Windows терминал. Она садржи најновије могућности које се још увек развијају. Windows терминал је модерна, брза, ефикасна, моћна и продуктивна апликација терминала за кориснике алата из командне линије и љуски као што су Command Prompt, PowerShell, и WSL. Неке од његових главних функционалности су вишеструке картице, панели, подршка за Уникод и UTF-8, GPU убрзани механизам за исцртавање текста, произвољне теме, стилови и конфигурације.
Ово је пројекат отвореног кода и учешће заједнице је добродошло. Ако желите да учествујете, молимо вас да посетите https://github.com/microsoft/terminal </Description>
<ShortDescription _locID="App_ShortDescription">
<!-- Only used for games. This description appears in the Information section of the Game Hub on Xbox One, and helps customers understand more about your game. -->
<!-- _locComment_text="{MaxLength=500} App ShortDescription" -->
</ShortDescription>
<ShortTitle _locID="App_ShortTitle">
<!-- A shorter version of your product's name. If provided, this shorter name may appear in various places on Xbox One (during installation, in Achievements, etc.) in place of the full title of your product. -->
<!-- _locComment_text="{MaxLength=50} App ShortTitle" -->
</ShortTitle>
<SortTitle _locID="App_SortTitle">
<!-- If your product could be alphabetized in different ways, you can enter another version here. This may help customers find the product more quickly when searching. -->
<!-- _locComment_text="{MaxLength=255} App SortTitle" -->
</SortTitle>
<VoiceTitle _locID="App_VoiceTitle">
<!-- An alternate name for your product that, if provided, may be used in the audio experience on Xbox One when using Kinect or a headset. -->
<!-- _locComment_text="{MaxLength=255} App VoiceTitle" -->
</VoiceTitle>
<DevStudio _locID="App_DevStudio">
<!-- Specify this value if you want to include a "Developed by" field in the listing. (The "Published by" field will list the publisher display name associated with your account, whether or not you provide a devStudio value.) -->
<!-- _locComment_text="{MaxLength=255} App DevStudio" -->
</DevStudio>
<ReleaseNotes _locID="App_ReleaseNotes">
<!-- _locComment_text="{MaxLength=1500} {Locked=__VERSION_NUMBER__}{Locked=wt.exe}{Locked=Kitty} App Release Note" -->Верзија __VERSION_NUMBER__
- Коначно, могућност претраге било ког подешавања!
- Нови својствени едитор ставки пречица на тастатури, акција и командне палете
- Нова локализација заједнице на српски и украјински језик
- Подршка за „Kitty” протокол тастатуре који омогућава верно кодирање уноса
За више детаља, молимо вас да посетите нашу GitHub страницу издања.
</ReleaseNotes>
<ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform -->
<!-- Valid attributes: any of DesktopImage, MobileImage, XboxImage, SurfaceHubImage, and HoloLensImage -->
<Caption DesktopImage="acrylic-emoji.png" _locID="App_caption1">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 1" -->
</Caption>
<Caption DesktopImage="panes.png" _locID="App_caption2">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 2" -->
</Caption>
<Caption DesktopImage="htop.png" _locID="App_caption3">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 3" -->
</Caption>
</ScreenshotCaptions>
<AdditionalAssets>
<!-- Valid elements:-->
<!-- HeroImage414x180, HeroImage846x468, HeroImage558x756, HeroImage414x468, HeroImage558x558, HeroImage2400x1200,-->
<!-- ScreenshotWXGA, ScreenshotHD720, ScreenshotWVGA, Doublewide, Panoramic, Square,-->
<!-- SmallMobileTile, SmallXboxLiveTile, LargeMobileTile, LargeXboxLiveTile, Tile,-->
<!-- DesktopIcon, Icon (use this value for the 1:1 300x300 pixels logo), AchievementIcon,-->
<!-- ChallengePromoIcon, RewardDisplayIcon, Icon150X150, Icon71X71,-->
<!-- BoxArt, BrandedKeyArt, PosterArt, FeaturedPromotionalArt, PromotionalArt16x9, TitledHeroArt-->
<!-- There is no content for any of these elements, just a single attribute called FileName. -->
<PosterArt FileName="Store Poster Art.png" />
<BoxArt FileName="Store Box Art.png" />
<PromotionalArt16x9 FileName="Store Thumbnail.png" />
</AdditionalAssets>
<Trailers>
<!-- Maximum number of trailers permitted: 15 -->
<Trailer FileName="CC0605_CommandLine_Teaser_WEB_MASTER_H264_1080p_23.976_-16LKFS_-3dbTP_ST.mp4">
<Title _locID="App_trailerTitle1">
<!-- _locComment_text="{MaxLength=255} Trailer title 1" -->Нови Windows терминал</Title>
<Images>
<!-- Current maximum of 1 image per trailer permitted. -->
<Image FileName="Store Thumbnail.png">
<!-- _locComment_text="{Locked} Trailer screenshot 1 description" -->
</Image>
</Images>
</Trailer>
</Trailers>
<AppFeatures>
<!-- Valid length: 200 character limit, up to 20 elements -->
<AppFeature _locID="App_feature1">
<!-- _locComment_text="{MaxLength=200} App Feature 1" -->Вишеструке картице</AppFeature>
<AppFeature _locID="App_feature2">
<!-- _locComment_text="{MaxLength=200} App Feature 2" -->Пуна Уникод подршка</AppFeature>
<AppFeature _locID="App_feature3">
<!-- _locComment_text="{MaxLength=200} App Feature 3" -->GPU-убрзано исцртавање текста</AppFeature>
<AppFeature _locID="App_feature4">
<!-- _locComment_text="{MaxLength=200} App Feature 4" -->Потпуна прилагодљивост</AppFeature>
<AppFeature _locID="App_feature5">
<!-- _locComment_text="{MaxLength=200} App Feature 5" -->Подела панела</AppFeature>
<AppFeature _locID="App_feature6">
<!-- _locComment_text="{MaxLength=200} App Feature 6" -->
</AppFeature>
<AppFeature _locID="App_feature7">
<!-- _locComment_text="{MaxLength=200} App Feature 7" -->
</AppFeature>
<AppFeature _locID="App_feature8">
<!-- _locComment_text="{MaxLength=200} App Feature 8" -->
</AppFeature>
<AppFeature _locID="App_feature9">
<!-- _locComment_text="{MaxLength=200} App Feature 9" -->
</AppFeature>
<AppFeature _locID="App_feature10">
<!-- _locComment_text="{MaxLength=200} App Feature 10" -->
</AppFeature>
<AppFeature _locID="App_feature11">
<!-- _locComment_text="{MaxLength=200} App Feature 11" -->
</AppFeature>
<AppFeature _locID="App_feature12">
<!-- _locComment_text="{MaxLength=200} App Feature 12" -->
</AppFeature>
<AppFeature _locID="App_feature13">
<!-- _locComment_text="{MaxLength=200} App Feature 13" -->
</AppFeature>
<AppFeature _locID="App_feature14">
<!-- _locComment_text="{MaxLength=200} App Feature 14" -->
</AppFeature>
<AppFeature _locID="App_feature15">
<!-- _locComment_text="{MaxLength=200} App Feature 15" -->
</AppFeature>
<AppFeature _locID="App_feature16">
<!-- _locComment_text="{MaxLength=200} App Feature 16" -->
</AppFeature>
<AppFeature _locID="App_feature17">
<!-- _locComment_text="{MaxLength=200} App Feature 17" -->
</AppFeature>
<AppFeature _locID="App_feature18">
<!-- _locComment_text="{MaxLength=200} App Feature 18" -->
</AppFeature>
<AppFeature _locID="App_feature19">
<!-- _locComment_text="{MaxLength=200} App Feature 19" -->
</AppFeature>
<AppFeature _locID="App_feature20">
<!-- _locComment_text="{MaxLength=200} App Feature 20" -->
</AppFeature>
</AppFeatures>
<RecommendedHardware>
<!-- Valid length: 200 character limit, up to 11 elements -->
<Recommendation _locID="App_RecommendedHW1">
<!-- _locComment_text="{MaxLength=200} App Recommended Hardware 1" -->Тастатура</Recommendation>
</RecommendedHardware>
<MinimumHardware>
<!-- Valid length: 200 character limit, up to 11 elements -->
</MinimumHardware>
<CopyrightAndTrademark _locID="App_CopyrightandTrademark">
<!-- _locComment_text="{MaxLength=200} Copyright and Trademark" -->Copyright (c) Microsoft Corporation</CopyrightAndTrademark>
<AdditionalLicenseTerms _locID="App_AdditionalLicenseTerms">
<!-- _locComment_text="{MaxLength=10000} Additional License Terms" -->
</AdditionalLicenseTerms>
<WebsiteURL _locID="App_WebsiteURL">
<!-- _locComment_text="{MaxLength=2048} WebsiteURL" -->https://github.com/microsoft/terminal</WebsiteURL>
<SupportContactInfo _locID="App_SupportContactInfo">
<!-- _locComment_text="{MaxLength=2048} Support Contact Info" -->https://github.com/microsoft/terminal/issues/new</SupportContactInfo>
<PrivacyPolicyURL _locID="App_PrivacyURL">
<!-- _locComment_text="{MaxLength=2048} Privacy Policy URL" -->https://go.microsoft.com/fwlink/?LinkID=521839</PrivacyPolicyURL>
</ProductDescription>

View File

@@ -1,182 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<ProductDescription language="en-us" xmlns="http://schemas.microsoft.com/appx/2012/ProductDescription" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="en-us" Release="">
<AppStoreName _locID="App_AppStoreName">
<!-- This is optional. AppStoreName is typically extracted from your package's AppxManifest DisplayName property. -->
<!-- Uncomment (and localize) this Store name if your application package does not contain a localization for the DisplayName in this language. -->
<!-- Leaving this uncommented for a language that your application package DOES contain a DisplayName for will result in a submission failure with the API. -->
<!-- _locComment_text="{MaxLength=200} App AppStoreName" -->
<!-- Windows Terminal -->
</AppStoreName>
<Keywords>
<!-- Valid length: 30 character limit, up to 7 elements -->
<Keyword _locID="App_keyword1">
<!-- _locComment_text="{MaxLength=30} App keyword 1" -->Термінал</Keyword>
<Keyword _locID="App_keyword2">
<!-- _locComment_text="{MaxLength=30} App keyword 2" -->Консоль</Keyword>
<Keyword _locID="App_keyword3">
<!-- _locComment_text="{MaxLength=30} App keyword 3" -->
</Keyword>
<Keyword _locID="App_keyword4">
<!-- _locComment_text="{MaxLength=30} App keyword 4" -->
</Keyword>
<Keyword _locID="App_keyword5">
<!-- _locComment_text="{MaxLength=30} App keyword 5" -->
</Keyword>
<Keyword _locID="App_keyword6">
<!-- _locComment_text="{MaxLength=30} App keyword 6" -->
</Keyword>
<Keyword _locID="App_keyword7">
<!-- _locComment_text="{MaxLength=30} App keyword 7" -->
</Keyword>
</Keywords>
<Description _locID="App_Description">
<!-- _locComment_text="{MaxLength=10000} App Description" -->Це попередня збірка терміналу Windows, яка містить найновіші функції в міру їх розробки. Термінал Windows - це сучасний, швидкий, ефективний, потужний та продуктивний термінальний застосунок для користувачів інструментів командного рядка та оболонок, таких як командний рядок, PowerShell та WSL. Його основні функції включають кілька вкладок, панелей, підтримку символів Unicode та UTF-8, механізм візуалізації тексту з прискоренням GPU, а також користувацькі теми, стилі та конфігурації.
Це проєкт з відкритим кодом, і ми вітаємо участь спільноти. Щоб взяти участь, будь ласка, відвідайте https://github.com/microsoft/terminal </Description>
<ShortDescription _locID="App_ShortDescription">
<!-- Only used for games. This description appears in the Information section of the Game Hub on Xbox One, and helps customers understand more about your game. -->
<!-- _locComment_text="{MaxLength=500} App ShortDescription" -->
</ShortDescription>
<ShortTitle _locID="App_ShortTitle">
<!-- A shorter version of your product's name. If provided, this shorter name may appear in various places on Xbox One (during installation, in Achievements, etc.) in place of the full title of your product. -->
<!-- _locComment_text="{MaxLength=50} App ShortTitle" -->
</ShortTitle>
<SortTitle _locID="App_SortTitle">
<!-- If your product could be alphabetized in different ways, you can enter another version here. This may help customers find the product more quickly when searching. -->
<!-- _locComment_text="{MaxLength=255} App SortTitle" -->
</SortTitle>
<VoiceTitle _locID="App_VoiceTitle">
<!-- An alternate name for your product that, if provided, may be used in the audio experience on Xbox One when using Kinect or a headset. -->
<!-- _locComment_text="{MaxLength=255} App VoiceTitle" -->
</VoiceTitle>
<DevStudio _locID="App_DevStudio">
<!-- Specify this value if you want to include a "Developed by" field in the listing. (The "Published by" field will list the publisher display name associated with your account, whether or not you provide a devStudio value.) -->
<!-- _locComment_text="{MaxLength=255} App DevStudio" -->
</DevStudio>
<ReleaseNotes _locID="App_ReleaseNotes">
<!-- _locComment_text="{MaxLength=1500} {Locked=__VERSION_NUMBER__}{Locked=wt.exe} App Release Note" -->Версія __VERSION_NUMBER__
- Нарешті, можливість пошуку будь-якого налаштування!
- Новий вбудований редактор для прив'язки клавіш, дій та палітри команд.
- Нові локалізації спільноти на сербську та українську мови.
- Підтримка протоколу клавіатури "Kitty" для високоточного кодування введення.
Будь ласка, перегляньте нашу сторінку релізів GitHub для отримання додаткової інформації.
</ReleaseNotes>
<ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform -->
<!-- Valid attributes: any of DesktopImage, MobileImage, XboxImage, SurfaceHubImage, and HoloLensImage -->
<Caption DesktopImage="acrylic-emoji.png" _locID="App_caption1">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 1" -->
</Caption>
<Caption DesktopImage="panes.png" _locID="App_caption2">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 2" -->
</Caption>
<Caption DesktopImage="htop.png" _locID="App_caption3">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 3" -->
</Caption>
</ScreenshotCaptions>
<AdditionalAssets>
<!-- Valid elements:-->
<!-- HeroImage414x180, HeroImage846x468, HeroImage558x756, HeroImage414x468, HeroImage558x558, HeroImage2400x1200,-->
<!-- ScreenshotWXGA, ScreenshotHD720, ScreenshotWVGA, Doublewide, Panoramic, Square,-->
<!-- SmallMobileTile, SmallXboxLiveTile, LargeMobileTile, LargeXboxLiveTile, Tile,-->
<!-- DesktopIcon, Icon (use this value for the 1:1 300x300 pixels logo), AchievementIcon,-->
<!-- ChallengePromoIcon, RewardDisplayIcon, Icon150X150, Icon71X71,-->
<!-- BoxArt, BrandedKeyArt, PosterArt, FeaturedPromotionalArt, PromotionalArt16x9, TitledHeroArt-->
<!-- There is no content for any of these elements, just a single attribute called FileName. -->
<PosterArt FileName="Store Poster Art.png" />
<BoxArt FileName="Store Box Art.png" />
<PromotionalArt16x9 FileName="Store Thumbnail.png" />
</AdditionalAssets>
<Trailers>
<!-- Maximum number of trailers permitted: 15 -->
<Trailer FileName="CC0605_CommandLine_Teaser_WEB_MASTER_H264_1080p_23.976_-16LKFS_-3dbTP_ST.mp4">
<Title _locID="App_trailerTitle1">
<!-- _locComment_text="{MaxLength=255} Trailer title 1" -->Новий термінал Windows</Title>
<Images>
<!-- Current maximum of 1 image per trailer permitted. -->
<Image FileName="Store Thumbnail.png">
<!-- _locComment_text="{Locked} Trailer screenshot 1 description" -->
</Image>
</Images>
</Trailer>
</Trailers>
<AppFeatures>
<!-- Valid length: 200 character limit, up to 20 elements -->
<AppFeature _locID="App_feature1">
<!-- _locComment_text="{MaxLength=200} App Feature 1" -->Наявність вкладок</AppFeature>
<AppFeature _locID="App_feature2">
<!-- _locComment_text="{MaxLength=200} App Feature 2" -->Повна підтримка Юнікоду</AppFeature>
<AppFeature _locID="App_feature3">
<!-- _locComment_text="{MaxLength=200} App Feature 3" -->Рендеринг тексту з прискоренням GPU</AppFeature>
<AppFeature _locID="App_feature4">
<!-- _locComment_text="{MaxLength=200} App Feature 4" -->Широкі можливості кастомізації</AppFeature>
<AppFeature _locID="App_feature5">
<!-- _locComment_text="{MaxLength=200} App Feature 5" -->Розділення панелей</AppFeature>
<AppFeature _locID="App_feature6">
<!-- _locComment_text="{MaxLength=200} App Feature 6" -->
</AppFeature>
<AppFeature _locID="App_feature7">
<!-- _locComment_text="{MaxLength=200} App Feature 7" -->
</AppFeature>
<AppFeature _locID="App_feature8">
<!-- _locComment_text="{MaxLength=200} App Feature 8" -->
</AppFeature>
<AppFeature _locID="App_feature9">
<!-- _locComment_text="{MaxLength=200} App Feature 9" -->
</AppFeature>
<AppFeature _locID="App_feature10">
<!-- _locComment_text="{MaxLength=200} App Feature 10" -->
</AppFeature>
<AppFeature _locID="App_feature11">
<!-- _locComment_text="{MaxLength=200} App Feature 11" -->
</AppFeature>
<AppFeature _locID="App_feature12">
<!-- _locComment_text="{MaxLength=200} App Feature 12" -->
</AppFeature>
<AppFeature _locID="App_feature13">
<!-- _locComment_text="{MaxLength=200} App Feature 13" -->
</AppFeature>
<AppFeature _locID="App_feature14">
<!-- _locComment_text="{MaxLength=200} App Feature 14" -->
</AppFeature>
<AppFeature _locID="App_feature15">
<!-- _locComment_text="{MaxLength=200} App Feature 15" -->
</AppFeature>
<AppFeature _locID="App_feature16">
<!-- _locComment_text="{MaxLength=200} App Feature 16" -->
</AppFeature>
<AppFeature _locID="App_feature17">
<!-- _locComment_text="{MaxLength=200} App Feature 17" -->
</AppFeature>
<AppFeature _locID="App_feature18">
<!-- _locComment_text="{MaxLength=200} App Feature 18" -->
</AppFeature>
<AppFeature _locID="App_feature19">
<!-- _locComment_text="{MaxLength=200} App Feature 19" -->
</AppFeature>
<AppFeature _locID="App_feature20">
<!-- _locComment_text="{MaxLength=200} App Feature 20" -->
</AppFeature>
</AppFeatures>
<RecommendedHardware>
<!-- Valid length: 200 character limit, up to 11 elements -->
<Recommendation _locID="App_RecommendedHW1">
<!-- _locComment_text="{MaxLength=200} App Recommended Hardware 1" -->Клавіатура</Recommendation>
</RecommendedHardware>
<MinimumHardware>
<!-- Valid length: 200 character limit, up to 11 elements -->
</MinimumHardware>
<CopyrightAndTrademark _locID="App_CopyrightandTrademark">
<!-- _locComment_text="{MaxLength=200} Copyright and Trademark" -->Права (c) Корпорація Майкрософт</CopyrightAndTrademark>
<AdditionalLicenseTerms _locID="App_AdditionalLicenseTerms">
<!-- _locComment_text="{MaxLength=10000} Additional License Terms" -->
</AdditionalLicenseTerms>
<WebsiteURL _locID="App_WebsiteURL">
<!-- _locComment_text="{MaxLength=2048} WebsiteURL" -->https://github.com/microsoft/terminal</WebsiteURL>
<SupportContactInfo _locID="App_SupportContactInfo">
<!-- _locComment_text="{MaxLength=2048} Support Contact Info" -->https://github.com/microsoft/terminal/issues/new</SupportContactInfo>
<PrivacyPolicyURL _locID="App_PrivacyURL">
<!-- _locComment_text="{MaxLength=2048} Privacy Policy URL" -->https://go.microsoft.com/fwlink/?LinkID=521839</PrivacyPolicyURL>
</ProductDescription>

View File

@@ -54,14 +54,13 @@
</DevStudio> </DevStudio>
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ 版本 __VERSION_NUMBER__
- 终于可以搜索任何设置了! - 我们向用户界面添加了许多设置,这些设置仅存在于 JSON 文件中,包括用于自定义“新建标签页”菜单布局的新页面!
- 新增用于键绑定、操作和命令面板条目的原生编辑器。 - 我们已重新检测窗口管理以提高可靠性;请将遇到的任何 bug 归档为 wt.exe 别名
- 新增塞尔维亚语和乌克兰语社区本地化支持 - 如果配置文件已隐藏或引用已卸载的程序,则它们现在将显示一个图标。
- 支持 "Kitty" 键盘协议,实现高保真输入编码
有关其他详细信息,请参阅我们的 GitHub 发布页面。 有关其他详细信息,请参阅 GitHub 发布页面。
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -54,14 +54,13 @@
</DevStudio> </DevStudio>
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ 版本 __VERSION_NUMBER__
- 終於,提供可搜尋任何設定的功能! - 我們已新增數十個只存在於 JSON 檔案中的設定到 UI包括自定義 [新索引標籤] 功能表版面配置的新頁面!
- 全新原生編輯器,支援按鍵繫結、動作及命令選擇區項目。 - 我們已重新設定視窗管理,以改善可靠性;請提出您在 wt.exe 別名遇到的任何錯誤
- 新增社群本地語系化,包含塞爾維亞語與烏克蘭語 - 設定文件現在會在隱藏或參照已卸載的程式時顯示圖示。
- 支援高保真度輸入編碼的「Kitty」鍵盤通訊協定
如需更多詳細資料,請參閱我們的 GitHub 發行版本頁面。 如需詳細數據,請參閱我們的 GitHub 版本頁面。
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,9 +56,12 @@ Dies ist ein Open Source-Projekt, und wir freuen uns über die Teilnahme an der
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ Version __VERSION_NUMBER__
Eine komplett neue Erweiterungsseite, die anzeigt, was in Ihrem Terminal installiert ist Wir haben umgeschrieben, wie Konsolenanwendungen im Terminal gehostet werden! Melden Sie alle auftretenden Fehler.
Die Befehlspalette wird jetzt sowohl in Ihrer Muttersprache als auch auf Englisch angezeigt Terminal unterstützt jetzt Sixels!
Neue VT-Features wie synchronisiertes Rendering, neue Farbschemas, Konfiguration für schnelle Mausaktionen wie Zoomen und mehr Sie können jetzt einen angedockten Bereich öffnen, der Ausschnitte von Befehlen enthält, die Sie gespeichert haben, um sie später zu verwenden.
Für Benutzer der Eingabeaufforderung der neuesten Version von Windows 11 wird möglicherweise ein QuickInfo-Symbol angezeigt, das installierbare Software von WinGet vorschlägt.
Ausgewählter Text wird jetzt viel sichtbarer (und anpassbarer!).
- Eine Reihe von Zuverlässigkeitsfehlern, Benutzerfreundlichkeitsproblemen und Ärgernissen wurden behoben.
Weitere Informationen finden Sie auf unserer GitHub-Releaseseite. Weitere Informationen finden Sie auf unserer GitHub-Releaseseite.
</ReleaseNotes> </ReleaseNotes>

View File

@@ -56,9 +56,9 @@ This is an open source project and we welcome community participation. To partic
<ReleaseNotes _locID="App_ReleaseNotes"> <ReleaseNotes _locID="App_ReleaseNotes">
<!-- _locComment_text="{MaxLength=1500} {Locked=__VERSION_NUMBER__}{Locked=wt.exe} App Release Note" -->Version __VERSION_NUMBER__ <!-- _locComment_text="{MaxLength=1500} {Locked=__VERSION_NUMBER__}{Locked=wt.exe} App Release Note" -->Version __VERSION_NUMBER__
- A whole new Extensions page that shows what has been installed into your Terminal - We've added dozens of settings to the UI that once only existed in the JSON file, including a new page for customizing the layout of your New Tab menu!
- Command Palette now shows up in your native language as well as English - We have rearchitected window management to improve reliability; please file any bugs you encounter with the wt.exe alias
- New VT features such as synchronized rendering, new color schemes, configuration for quick mouse actions like zooming, and more - Profiles now show an icon if they've been hidden or refer to programs which were uninstalled.
Please see our GitHub releases page for additional details. Please see our GitHub releases page for additional details.
</ReleaseNotes> </ReleaseNotes>

View File

@@ -56,9 +56,12 @@ Este es un proyecto de fuente abierta y animamos a la comunidad a participar. Pa
<ReleaseNotes> <ReleaseNotes>
Versión __VERSION_NUMBER__ Versión __VERSION_NUMBER__
- Página Extensiones completamente nueva que muestra lo que se ha instalado en tu terminal - Hemos reescrito cómo se hospedan las aplicaciones de consola en Terminal. Informe de los errores que encuentre.
- La paleta de comandos ahora se muestra en tu idioma nativo, así como en inglés - Terminal ahora admite síxeles.
- Nuevas características de VT, como la representación sincronizada, nuevos esquemas de color, configuración para acciones rápidas del ratón, como el zoom, y más - Ahora puede abrir un panel acoplado que contenga fragmentos de comandos que haya guardado para usarlos más adelante
- Los usuarios del símbolo del sistema de la versión más reciente de Windows 11 pueden ver un icono de "sugerencia rápida" que sugiere software instalable de WinGet
- El texto seleccionado ahora será mucho más visible (y personalizable)
- Se han corregido varios errores de fiabilidad, problemas de comodidad y molestias.
Consulte la página de versiones de GitHub para más información. Consulte la página de versiones de GitHub para más información.
</ReleaseNotes> </ReleaseNotes>

View File

@@ -56,11 +56,14 @@ Il sagit dun projet open source et nous encourageons la participation à l
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ Version __VERSION_NUMBER__
- Une toute nouvelle page Extensions qui affiche ce qui a été installé dans votre Terminal Nous avons réécrit la manière dont les applications de console sont hébergées dans Terminal ! Veuillez signaler tout bogue que vous rencontrez.
- La palette de commandes saffiche désormais dans votre langue native, ainsi quen anglais Terminal prend désormais en charge Sixels !
- De nouvelles fonctionnalités VT, telles que le rendu synchronisé, de nouveaux schémas de couleurs, une configuration pour des actions rapides de la souris comme le zoom, et bien plus encore Vous pouvez maintenant ouvrir un panneau ancré contenant des extraits de commandes que vous avez enregistrées pour les utiliser ultérieurement
Les utilisateurs de linvite de commande sur la dernière version de Windows 11 peuvent voir une icône « astuce rapide » qui suggère un logiciel installable à partir de WinGet
Le texte sélectionné sera désormais beaucoup plus visible (et personnalisable !)
Un certain nombre de bogues de fiabilité, de problèmes de commodité et de désagréments ont été corrigés.
Consultez notre page des versions de GitHub pour plus de détails. Veuillez consulter notre page des versions GitHub pour découvrir dautres détails.
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,9 +56,12 @@ Si tratta di un progetto open source e la partecipazione della community è molt
<ReleaseNotes> <ReleaseNotes>
Versione __VERSION_NUMBER__ Versione __VERSION_NUMBER__
- Una pagina Estensioni completamente nuova che mostra ciò che è stato installato nel terminale - Abbiamo cambiato il modo in cui le applicazioni della console vengono ospitate allinterno di Terminale. Segnala eventuali bug riscontrati.
- Il riquadro comandi ora viene visualizzato nella tua lingua di origine oltre che in inglese - Ora Terminale supporta i Sixel.
- Nuove funzionalità VT come il rendering sincronizzato, le nuove combinazioni di colori, la configurazione per azioni rapide del mouse come lo zoom e altro ancora - Puoi aprire un pannello ancorato contenente frammenti di comandi salvati per usarli in seguito
- Gli utenti che usano il prompt dei comandi nella versione più recente di Windows 11 potrebbero visualizzare unicona di “suggerimento rapido” che consiglia il software installabile da WinGet
- Il testo selezionato sarà ora molto più visibile, oltre che personalizzabile.
- Sono stati risolti diversi bug di affidabilità e problemi di ordine pratico.
Per altri dettagli, vedi la pagina delle release di GitHub. Per altri dettagli, vedi la pagina delle release di GitHub.
</ReleaseNotes> </ReleaseNotes>

View File

@@ -56,9 +56,12 @@
<ReleaseNotes> <ReleaseNotes>
バージョン __VERSION_NUMBER__ バージョン __VERSION_NUMBER__
- お使いのターミナルに何がインストールされているかを表示する新しい [拡張機能] ページ - ターミナル内でのコンソール アプリケーションのホスト方法を書き換えました。発生したバグを報告してください。
- コマンド パレットがネイティブ言語と英語で表示されるようになりました - ターミナルで Sixels がサポートされるようになりました
- 同期レンダリング、新しい配色、ズームなどのクイック マウス操作の構成などの、新しい VT 機能 - 後で使用するために保存したコマンドのスニペットを含むドッキング パネルを開けるようになりました
- 最新の Windows 11 リリースのコマンド プロンプト ユーザーには、WinGet からインストール可能なソフトウェアを提案する "クイック ヒント" アイコンが表示される場合があります
- 選択したテキストが大幅に見やすくなりました (カスタマイズも可能です)
- 信頼性に関するバグ、利便性の問題、不快な問題の多くが修正されました。
詳細については、GitHub リリース ページをご覧ください。 詳細については、GitHub リリース ページをご覧ください。
</ReleaseNotes> </ReleaseNotes>

View File

@@ -56,11 +56,14 @@
<ReleaseNotes> <ReleaseNotes>
버전 __VERSION_NUMBER__ 버전 __VERSION_NUMBER__
- 터미널에 설치된 항목을 보여 주는 완전히 새로운 확장 페이지 - 콘솔 애플리케이션이 터미널 내에서 호스팅되는 방법을 다시 작성했습니다. 버그가 발생하면 보고해 주세요.
- 이제 영어뿐만 아니라 모국어로도 표시되는 명령 팔레트 - 터미널에서 이제 Sixels를 지원합니다.
- 동기화된 렌더링, 새로운 색 구성표, 확대/축소와 같은 빠른 마우스 동작을 위한 구성 등 새로운 VT 기능 추가 - 이제 나중에 사용하기 위해 저장한 명령 조각이 포함된 도킹된 패널을 열 수 있습니다.
- 최신 Windows 11 릴리스의 명령 프롬프트 사용자는 WinGet에서 설치 가능한 소프트웨어를 추천하는 "간단한 팁" 아이콘을 볼 수 있습니다.
- 이제 선택한 텍스트가 훨씬 더 잘 보입니다(사용자 지정 가능).
- 여러 안정성 버그, 편의성 문제, 불편 사항이 수정되었습니다.
자세한 정보는 GitHub 릴리스 페이지를 참하세요. 자세한 내용은 GitHub 릴리스 페이지를 참하세요.
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -54,11 +54,14 @@ Este é um projeto de código aberto e a participação da comunidade é bem-vin
</DevStudio> </DevStudio>
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ Versão __VERSION_NUMBER__
Uma nova página de Extensões que mostra o que foi instalado no seu Terminal Reescrevemos a forma como os aplicativos de console são hospedados no Terminal! Relate os bugs encontrados.
A Paleta de Comandos agora aparece no seu idioma nativo, além do inglês O terminal agora oferece suporte ao Sixels!
Novos recursos da VT, como renderização sincronizada, novos esquemas de cores, configuração para ações rápidas do mouse, como zoom, e muito mais Agora você pode abrir um painel acoplado contendo snippets de comandos que você salvou para usar mais tarde
Os usuários do Prompt de Comando na versão mais recente do Windows 11 podem ver um ícone de "dica rápida", que sugere softwares instaláveis a partir do WinGet
O texto selecionado agora ficará muito mais visível (e personalizável!)
Vários bugs de confiabilidade, problemas de conveniência e incômodos foram resolvidos.
Confira nossa página de lançamentos no GitHub para obter mais detalhes. Confira nossa página de lançamentos no GitHub para obter mais detalhes.
</ReleaseNotes> </ReleaseNotes>

View File

@@ -56,11 +56,14 @@
<ReleaseNotes> <ReleaseNotes>
Vėѓѕіöй __VERSION_NUMBER__ !!! !!! ! Vėѓѕіöй __VERSION_NUMBER__ !!! !!! !
- Ą ωћόĺé ņέш ∑×τзńşĩōиŝ ρâģε τђат šнòωş ωħąт нǻś ъеēñ įηšтǻľĺéδ ĭʼnтο ўбμŗ Ţзřmĭňāŀ !!! !!! !!! !!! !!! !!! !!! !!! - Ẁē'νё ŕéẁѓĭτťёñ ћοώ ĉòπşõℓε άррℓіċªťįõпѕ αяе ĥθѕťэđ įŋšιďé Ţєямїńąℓ! Рļéаšė яёροřτ αņу ьϋģš ýõμ éпćŏџήţęя. !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!
- €όммаήδ Рдĺēтţĕ пŏẅ şĥŏшś üρ ϊñ ỳоũѓ йαťïνє ļäŋģµаġέ άś ŵєŀľ åś Σиĝℓĭŝђ !!! !!! !!! !!! !!! !!! !!! - Ţëямΐʼnαļ ńóẃ ŝüррöятš Śїхέłś! !!! !!! !!!
- ∏еẅ VΤ ƒэåŧύґέŝ şűçн ăŝ ѕỳňсĥŗǿйìźėð гēŋďзříⁿğ, ηĕш ćôĺõг şĉћěмєѕ, çóńƒіĝџŗáτїöπ ƒοг qũī¢ķ möűšë ąćŧϊόņŝ ľîķє žøōmίйğ, ǻⁿđ мόřε !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! - ¥оų ĉåи ńòŵ θρėñ д đбčĸэď ράńέļ ċőлŧăīņϊňģ śⁿіφφëťś оƒ ςōмmàⁿďş ŷŏũ ĥªν℮ şåνěđ τσ üśε łαťэŗ !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Ćοмmäлđ Рřōmφť üş℮ŗѕ öη τће ļāťëšτ Щīйđôώѕ 11 řёℓеаѕĕ måў ŝэε ά "qůïςκ ŧĭр" ιсôñ τĥдт šűğģєѕŧѕ ίńśŧăłłавļз šôƒţẁαгέ ƒґόm ЩĩйĞéţ !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Śєļèċťєď ţĕжт ωϊŀļ йǿẃ ьέ mџ¢н мǿѓε νĭŝϊъļė (άŋđ сŭŝтŏмΐżдьļē!) !!! !!! !!! !!! !!! !!! !
- Ä ņϋmъŗ ŏƒ ѓēŀїаъïļŧÿ ьüĝś, ςôⁿνėηĭ℮иć℮ îѕšůëş ăπð âлňбγдňçėŝ ћªνε ъēёп ƒΐ×еð. !!! !!! !!! !!! !!! !!! !!! !!!
Ρĺęąŝэ ѕєě õμя ĞĭтΗύв řєĺэдšέŝ рάġě ƒοґ àďđϊтїõлаℓ ðêţǻїłş. !!! !!! !!! !!! !!! !!! Ρĺёàŝ℮ ŝез ǿúг ĢīťНŭъ řěłεαśèŝ φāğ℮ ƒóѓ дďδітĭøиąℓ ð℮тªїľŝ. !!! !!! !!! !!! !!! !!!
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,11 +56,14 @@
<ReleaseNotes> <ReleaseNotes>
Vėѓѕіöй __VERSION_NUMBER__ !!! !!! ! Vėѓѕіöй __VERSION_NUMBER__ !!! !!! !
- Ą ωћόĺé ņέш ∑×τзńşĩōиŝ ρâģε τђат šнòωş ωħąт нǻś ъеēñ įηšтǻľĺéδ ĭʼnтο ўбμŗ Ţзřmĭňāŀ !!! !!! !!! !!! !!! !!! !!! !!! - Ẁē'νё ŕéẁѓĭτťёñ ћοώ ĉòπşõℓε άррℓіċªťįõпѕ αяе ĥθѕťэđ įŋšιďé Ţєямїńąℓ! Рļéаšė яёροřτ αņу ьϋģš ýõμ éпćŏџήţęя. !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!
- €όммаήδ Рдĺēтţĕ пŏẅ şĥŏшś üρ ϊñ ỳоũѓ йαťïνє ļäŋģµаġέ άś ŵєŀľ åś Σиĝℓĭŝђ !!! !!! !!! !!! !!! !!! !!! - Ţëямΐʼnαļ ńóẃ ŝüррöятš Śїхέłś! !!! !!! !!!
- ∏еẅ VΤ ƒэåŧύґέŝ şűçн ăŝ ѕỳňсĥŗǿйìźėð гēŋďзříⁿğ, ηĕш ćôĺõг şĉћěмєѕ, çóńƒіĝџŗáτїöπ ƒοг qũī¢ķ möűšë ąćŧϊόņŝ ľîķє žøōmίйğ, ǻⁿđ мόřε !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! - ¥оų ĉåи ńòŵ θρėñ д đбčĸэď ράńέļ ċőлŧăīņϊňģ śⁿіφφëťś оƒ ςōмmàⁿďş ŷŏũ ĥªν℮ şåνěđ τσ üśε łαťэŗ !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Ćοмmäлđ Рřōmφť üş℮ŗѕ öη τће ļāťëšτ Щīйđôώѕ 11 řёℓеаѕĕ måў ŝэε ά "qůïςκ ŧĭр" ιсôñ τĥдт šűğģєѕŧѕ ίńśŧăłłавļз šôƒţẁαгέ ƒґόm ЩĩйĞéţ !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Śєļèċťєď ţĕжт ωϊŀļ йǿẃ ьέ mџ¢н мǿѓε νĭŝϊъļė (άŋđ сŭŝтŏмΐżдьļē!) !!! !!! !!! !!! !!! !!! !
- Ä ņϋmъŗ ŏƒ ѓēŀїаъïļŧÿ ьüĝś, ςôⁿνėηĭ℮иć℮ îѕšůëş ăπð âлňбγдňçėŝ ћªνε ъēёп ƒΐ×еð. !!! !!! !!! !!! !!! !!! !!! !!!
Ρĺęąŝэ ѕєě õμя ĞĭтΗύв řєĺэдšέŝ рάġě ƒοґ àďđϊтїõлаℓ ðêţǻїłş. !!! !!! !!! !!! !!! !!! Ρĺёàŝ℮ ŝез ǿúг ĢīťНŭъ řěłεαśèŝ φāğ℮ ƒóѓ дďδітĭøиąℓ ð℮тªїľŝ. !!! !!! !!! !!! !!! !!!
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,11 +56,14 @@
<ReleaseNotes> <ReleaseNotes>
Vėѓѕіöй __VERSION_NUMBER__ !!! !!! ! Vėѓѕіöй __VERSION_NUMBER__ !!! !!! !
- Ą ωћόĺé ņέш ∑×τзńşĩōиŝ ρâģε τђат šнòωş ωħąт нǻś ъеēñ įηšтǻľĺéδ ĭʼnтο ўбμŗ Ţзřmĭňāŀ !!! !!! !!! !!! !!! !!! !!! !!! - Ẁē'νё ŕéẁѓĭτťёñ ћοώ ĉòπşõℓε άррℓіċªťįõпѕ αяе ĥθѕťэđ įŋšιďé Ţєямїńąℓ! Рļéаšė яёροřτ αņу ьϋģš ýõμ éпćŏџήţęя. !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!
- €όммаήδ Рдĺēтţĕ пŏẅ şĥŏшś üρ ϊñ ỳоũѓ йαťïνє ļäŋģµаġέ άś ŵєŀľ åś Σиĝℓĭŝђ !!! !!! !!! !!! !!! !!! !!! - Ţëямΐʼnαļ ńóẃ ŝüррöятš Śїхέłś! !!! !!! !!!
- ∏еẅ VΤ ƒэåŧύґέŝ şűçн ăŝ ѕỳňсĥŗǿйìźėð гēŋďзříⁿğ, ηĕш ćôĺõг şĉћěмєѕ, çóńƒіĝџŗáτїöπ ƒοг qũī¢ķ möűšë ąćŧϊόņŝ ľîķє žøōmίйğ, ǻⁿđ мόřε !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! - ¥оų ĉåи ńòŵ θρėñ д đбčĸэď ράńέļ ċőлŧăīņϊňģ śⁿіφφëťś оƒ ςōмmàⁿďş ŷŏũ ĥªν℮ şåνěđ τσ üśε łαťэŗ !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Ćοмmäлđ Рřōmφť üş℮ŗѕ öη τће ļāťëšτ Щīйđôώѕ 11 řёℓеаѕĕ måў ŝэε ά "qůïςκ ŧĭр" ιсôñ τĥдт šűğģєѕŧѕ ίńśŧăłłавļз šôƒţẁαгέ ƒґόm ЩĩйĞéţ !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!! !!!
- Śєļèċťєď ţĕжт ωϊŀļ йǿẃ ьέ mџ¢н мǿѓε νĭŝϊъļė (άŋđ сŭŝтŏмΐżдьļē!) !!! !!! !!! !!! !!! !!! !
- Ä ņϋmъŗ ŏƒ ѓēŀїаъïļŧÿ ьüĝś, ςôⁿνėηĭ℮иć℮ îѕšůëş ăπð âлňбγдňçėŝ ћªνε ъēёп ƒΐ×еð. !!! !!! !!! !!! !!! !!! !!! !!!
Ρĺęąŝэ ѕєě õμя ĞĭтΗύв řєĺэдšέŝ рάġě ƒοґ àďđϊтїõлаℓ ðêţǻїłş. !!! !!! !!! !!! !!! !!! Ρĺёàŝ℮ ŝез ǿúг ĢīťНŭъ řěłεαśèŝ φāğ℮ ƒóѓ дďδітĭøиąℓ ð℮тªїľŝ. !!! !!! !!! !!! !!! !!!
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -56,9 +56,12 @@
<ReleaseNotes> <ReleaseNotes>
Версия __VERSION_NUMBER__ Версия __VERSION_NUMBER__
Новая страница расширений, на которой отображается информация о том, что было установлено в вашем терминале Мы переписали, как консольные приложения размещаются внутри Терминала! Сообщайте о любых ошибках, с которыми вы столкнулись.
Палитра команд теперь доступна на вашем языке, а также на английском Терминал теперь поддерживает форматы Sixel!
Новые функции VT, например синхронизированная отрисовка, новые цветовые схемы, настройка быстрых действий мыши, таких как масштабирование, и т. д. Теперь вы можете открыть закрепленную панель, содержащую фрагменты команд, которые вы сохранили для использования в дальнейшем
Пользователи командной строки в новейшем выпуске Windows 11 могут увидеть значок "краткой подсказки", который предлагает устанавливаемые программы из WinGet
Выделенный текст теперь станет более видимым (и настраиваемым!)
Исправлено несколько ошибок надежности, проблем с удобством, а также устранены раздражающие моменты.
Дополнительные сведения см. на странице выпусков GitHub. Дополнительные сведения см. на странице выпусков GitHub.
</ReleaseNotes> </ReleaseNotes>

View File

@@ -1,181 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<ProductDescription language="sr-cyrl-rs" xmlns="http://schemas.microsoft.com/appx/2012/ProductDescription" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="en-us" Release="">
<AppStoreName _locID="App_AppStoreName">
<!-- This is optional. AppStoreName is typically extracted from your package's AppxManifest DisplayName property. -->
<!-- Uncomment (and localize) this Store name if your application package does not contain a localization for the DisplayName in this language. -->
<!-- Leaving this uncommented for a language that your application package DOES contain a DisplayName for will result in a submission failure with the API. -->
<!-- _locComment_text="{MaxLength=200} App AppStoreName" -->
<!-- Windows Terminal -->
</AppStoreName>
<Keywords>
<!-- Valid length: 30 character limit, up to 7 elements -->
<Keyword _locID="App_keyword1">
<!-- _locComment_text="{MaxLength=30} App keyword 1" -->Терминал</Keyword>
<Keyword _locID="App_keyword2">
<!-- _locComment_text="{MaxLength=30} App keyword 2" -->Конзола</Keyword>
<Keyword _locID="App_keyword3">
<!-- _locComment_text="{MaxLength=30} App keyword 3" -->
</Keyword>
<Keyword _locID="App_keyword4">
<!-- _locComment_text="{MaxLength=30} App keyword 4" -->
</Keyword>
<Keyword _locID="App_keyword5">
<!-- _locComment_text="{MaxLength=30} App keyword 5" -->
</Keyword>
<Keyword _locID="App_keyword6">
<!-- _locComment_text="{MaxLength=30} App keyword 6" -->
</Keyword>
<Keyword _locID="App_keyword7">
<!-- _locComment_text="{MaxLength=30} App keyword 7" -->
</Keyword>
</Keywords>
<Description _locID="App_Description">
<!-- _locComment_text="{MaxLength=10000} App Description" -->Windows терминал је модерна, брза, ефикасна, моћна и продуктивна апликација терминала за кориснике алата из командне линије и љуски као што су Command Prompt, PowerShell, и WSL. Неке од његових главних функционалности су вишеструке картице, панели, подршка за Уникод и UTF-8, GPU убрзани механизам за исцртавање текста, произвољне теме, стилови и конфигурације.
Ово је пројекат отвореног кода и учешће заједнице је добродошло. Ако желите да учествујете, молимо вас да посетите https://github.com/microsoft/terminal </Description>
<ShortDescription _locID="App_ShortDescription">
<!-- Only used for games. This description appears in the Information section of the Game Hub on Xbox One, and helps customers understand more about your game. -->
<!-- _locComment_text="{MaxLength=500} App ShortDescription" -->
</ShortDescription>
<ShortTitle _locID="App_ShortTitle">
<!-- A shorter version of your product's name. If provided, this shorter name may appear in various places on Xbox One (during installation, in Achievements, etc.) in place of the full title of your product. -->
<!-- _locComment_text="{MaxLength=50} App ShortTitle" -->
</ShortTitle>
<SortTitle _locID="App_SortTitle">
<!-- If your product could be alphabetized in different ways, you can enter another version here. This may help customers find the product more quickly when searching. -->
<!-- _locComment_text="{MaxLength=255} App SortTitle" -->
</SortTitle>
<VoiceTitle _locID="App_VoiceTitle">
<!-- An alternate name for your product that, if provided, may be used in the audio experience on Xbox One when using Kinect or a headset. -->
<!-- _locComment_text="{MaxLength=255} App VoiceTitle" -->
</VoiceTitle>
<DevStudio _locID="App_DevStudio">
<!-- Specify this value if you want to include a "Developed by" field in the listing. (The "Published by" field will list the publisher display name associated with your account, whether or not you provide a devStudio value.) -->
<!-- _locComment_text="{MaxLength=255} App DevStudio" -->
</DevStudio>
<ReleaseNotes _locID="App_ReleaseNotes">
<!-- _locComment_text="{MaxLength=1500} {Locked=__VERSION_NUMBER__}{Locked=wt.exe} App Release Note" -->Верзија __VERSION_NUMBER__
- Попуно нова страница Проширења која приказује шта је све инсталирано у ваш Терминал
- Палета команди се сада приказује и на вашем матерњем језику, као и на енглеском
- Нове VT функционалности као што су синхронизовано исцртавање, нове шеме боја, конфигурација за брзе акције мишем, као што је зумирање, и још тога
За више детаља, молимо вас да посетите нашу GitHub страницу издања.
</ReleaseNotes>
<ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform -->
<!-- Valid attributes: any of DesktopImage, MobileImage, XboxImage, SurfaceHubImage, and HoloLensImage -->
<Caption DesktopImage="acrylic-emoji.png" _locID="App_caption1">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 1" -->
</Caption>
<Caption DesktopImage="panes.png" _locID="App_caption2">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 2" -->
</Caption>
<Caption DesktopImage="htop.png" _locID="App_caption3">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 3" -->
</Caption>
</ScreenshotCaptions>
<AdditionalAssets>
<!-- Valid elements:-->
<!-- HeroImage414x180, HeroImage846x468, HeroImage558x756, HeroImage414x468, HeroImage558x558, HeroImage2400x1200,-->
<!-- ScreenshotWXGA, ScreenshotHD720, ScreenshotWVGA, Doublewide, Panoramic, Square,-->
<!-- SmallMobileTile, SmallXboxLiveTile, LargeMobileTile, LargeXboxLiveTile, Tile,-->
<!-- DesktopIcon, Icon (use this value for the 1:1 300x300 pixels logo), AchievementIcon,-->
<!-- ChallengePromoIcon, RewardDisplayIcon, Icon150X150, Icon71X71,-->
<!-- BoxArt, BrandedKeyArt, PosterArt, FeaturedPromotionalArt, PromotionalArt16x9, TitledHeroArt-->
<!-- There is no content for any of these elements, just a single attribute called FileName. -->
<PosterArt FileName="Store Poster Art.png" />
<BoxArt FileName="Store Box Art.png" />
<PromotionalArt16x9 FileName="Store Thumbnail.png" />
</AdditionalAssets>
<Trailers>
<!-- Maximum number of trailers permitted: 15 -->
<Trailer FileName="CC0605_CommandLine_Teaser_WEB_MASTER_H264_1080p_23.976_-16LKFS_-3dbTP_ST.mp4">
<Title _locID="App_trailerTitle1">
<!-- _locComment_text="{MaxLength=255} Trailer title 1" -->Нови Windows терминал</Title>
<Images>
<!-- Current maximum of 1 image per trailer permitted. -->
<Image FileName="Store Thumbnail.png">
<!-- _locComment_text="{Locked} Trailer screenshot 1 description" -->
</Image>
</Images>
</Trailer>
</Trailers>
<AppFeatures>
<!-- Valid length: 200 character limit, up to 20 elements -->
<AppFeature _locID="App_feature1">
<!-- _locComment_text="{MaxLength=200} App Feature 1" -->Вишеструке картице</AppFeature>
<AppFeature _locID="App_feature2">
<!-- _locComment_text="{MaxLength=200} App Feature 2" -->Пуна Уникод подршка</AppFeature>
<AppFeature _locID="App_feature3">
<!-- _locComment_text="{MaxLength=200} App Feature 3" -->GPU-убрзано исцртавање текста</AppFeature>
<AppFeature _locID="App_feature4">
<!-- _locComment_text="{MaxLength=200} App Feature 4" -->Потпуна прилагодљивост</AppFeature>
<AppFeature _locID="App_feature5">
<!-- _locComment_text="{MaxLength=200} App Feature 5" -->Подела панела</AppFeature>
<AppFeature _locID="App_feature6">
<!-- _locComment_text="{MaxLength=200} App Feature 6" -->
</AppFeature>
<AppFeature _locID="App_feature7">
<!-- _locComment_text="{MaxLength=200} App Feature 7" -->
</AppFeature>
<AppFeature _locID="App_feature8">
<!-- _locComment_text="{MaxLength=200} App Feature 8" -->
</AppFeature>
<AppFeature _locID="App_feature9">
<!-- _locComment_text="{MaxLength=200} App Feature 9" -->
</AppFeature>
<AppFeature _locID="App_feature10">
<!-- _locComment_text="{MaxLength=200} App Feature 10" -->
</AppFeature>
<AppFeature _locID="App_feature11">
<!-- _locComment_text="{MaxLength=200} App Feature 11" -->
</AppFeature>
<AppFeature _locID="App_feature12">
<!-- _locComment_text="{MaxLength=200} App Feature 12" -->
</AppFeature>
<AppFeature _locID="App_feature13">
<!-- _locComment_text="{MaxLength=200} App Feature 13" -->
</AppFeature>
<AppFeature _locID="App_feature14">
<!-- _locComment_text="{MaxLength=200} App Feature 14" -->
</AppFeature>
<AppFeature _locID="App_feature15">
<!-- _locComment_text="{MaxLength=200} App Feature 15" -->
</AppFeature>
<AppFeature _locID="App_feature16">
<!-- _locComment_text="{MaxLength=200} App Feature 16" -->
</AppFeature>
<AppFeature _locID="App_feature17">
<!-- _locComment_text="{MaxLength=200} App Feature 17" -->
</AppFeature>
<AppFeature _locID="App_feature18">
<!-- _locComment_text="{MaxLength=200} App Feature 18" -->
</AppFeature>
<AppFeature _locID="App_feature19">
<!-- _locComment_text="{MaxLength=200} App Feature 19" -->
</AppFeature>
<AppFeature _locID="App_feature20">
<!-- _locComment_text="{MaxLength=200} App Feature 20" -->
</AppFeature>
</AppFeatures>
<RecommendedHardware>
<!-- Valid length: 200 character limit, up to 11 elements -->
<Recommendation _locID="App_RecommendedHW1">
<!-- _locComment_text="{MaxLength=200} App Recommended Hardware 1" -->Тастатура</Recommendation>
</RecommendedHardware>
<MinimumHardware>
<!-- Valid length: 200 character limit, up to 11 elements -->
</MinimumHardware>
<CopyrightAndTrademark _locID="App_CopyrightandTrademark">
<!-- _locComment_text="{MaxLength=200} Copyright and Trademark" -->Copyright (c) Microsoft Corporation</CopyrightAndTrademark>
<AdditionalLicenseTerms _locID="App_AdditionalLicenseTerms">
<!-- _locComment_text="{MaxLength=10000} Additional License Terms" -->
</AdditionalLicenseTerms>
<WebsiteURL _locID="App_WebsiteURL">
<!-- _locComment_text="{MaxLength=2048} WebsiteURL" -->https://github.com/microsoft/terminal</WebsiteURL>
<SupportContactInfo _locID="App_SupportContactInfo">
<!-- _locComment_text="{MaxLength=2048} Support Contact Info" -->https://github.com/microsoft/terminal/issues/new</SupportContactInfo>
<PrivacyPolicyURL _locID="App_PrivacyURL">
<!-- _locComment_text="{MaxLength=2048} Privacy Policy URL" -->https://go.microsoft.com/fwlink/?LinkID=521839</PrivacyPolicyURL>
</ProductDescription>

View File

@@ -1,181 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<ProductDescription language="en-us" xmlns="http://schemas.microsoft.com/appx/2012/ProductDescription" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xml:lang="en-us" Release="">
<AppStoreName _locID="App_AppStoreName">
<!-- This is optional. AppStoreName is typically extracted from your package's AppxManifest DisplayName property. -->
<!-- Uncomment (and localize) this Store name if your application package does not contain a localization for the DisplayName in this language. -->
<!-- Leaving this uncommented for a language that your application package DOES contain a DisplayName for will result in a submission failure with the API. -->
<!-- _locComment_text="{MaxLength=200} App AppStoreName" -->
<!-- Windows Terminal -->
</AppStoreName>
<Keywords>
<!-- Valid length: 30 character limit, up to 7 elements -->
<Keyword _locID="App_keyword1">
<!-- _locComment_text="{MaxLength=30} App keyword 1" -->Термінал</Keyword>
<Keyword _locID="App_keyword2">
<!-- _locComment_text="{MaxLength=30} App keyword 2" -->Консоль</Keyword>
<Keyword _locID="App_keyword3">
<!-- _locComment_text="{MaxLength=30} App keyword 3" -->
</Keyword>
<Keyword _locID="App_keyword4">
<!-- _locComment_text="{MaxLength=30} App keyword 4" -->
</Keyword>
<Keyword _locID="App_keyword5">
<!-- _locComment_text="{MaxLength=30} App keyword 5" -->
</Keyword>
<Keyword _locID="App_keyword6">
<!-- _locComment_text="{MaxLength=30} App keyword 6" -->
</Keyword>
<Keyword _locID="App_keyword7">
<!-- _locComment_text="{MaxLength=30} App keyword 7" -->
</Keyword>
</Keywords>
<Description _locID="App_Description">
<!-- _locComment_text="{MaxLength=10000} {Locked=Windows} App Description" -->Термінал Windows - це сучасний, швидкий, ефективний, потужний та продуктивний термінальний застосунок для користувачів інструментів командного рядка та оболонок, таких як командний рядок, PowerShell та WSL. Його основні функції включають кілька вкладок, панелей, підтримку символів Unicode та UTF-8, механізм візуалізації тексту з прискоренням GPU, а також користувацькі теми, стилі та конфігурації.
Це проєкт з відкритим кодом, і ми вітаємо участь спільноти. Щоб взяти участь, будь ласка, відвідайте https://github.com/microsoft/terminal </Description>
<ShortDescription _locID="App_ShortDescription">
<!-- Only used for games. This description appears in the Information section of the Game Hub on Xbox One, and helps customers understand more about your game. -->
<!-- _locComment_text="{MaxLength=500} App ShortDescription" -->
</ShortDescription>
<ShortTitle _locID="App_ShortTitle">
<!-- A shorter version of your product's name. If provided, this shorter name may appear in various places on Xbox One (during installation, in Achievements, etc.) in place of the full title of your product. -->
<!-- _locComment_text="{MaxLength=50} App ShortTitle" -->
</ShortTitle>
<SortTitle _locID="App_SortTitle">
<!-- If your product could be alphabetized in different ways, you can enter another version here. This may help customers find the product more quickly when searching. -->
<!-- _locComment_text="{MaxLength=255} App SortTitle" -->
</SortTitle>
<VoiceTitle _locID="App_VoiceTitle">
<!-- An alternate name for your product that, if provided, may be used in the audio experience on Xbox One when using Kinect or a headset. -->
<!-- _locComment_text="{MaxLength=255} App VoiceTitle" -->
</VoiceTitle>
<DevStudio _locID="App_DevStudio">
<!-- Specify this value if you want to include a "Developed by" field in the listing. (The "Published by" field will list the publisher display name associated with your account, whether or not you provide a devStudio value.) -->
<!-- _locComment_text="{MaxLength=255} App DevStudio" -->
</DevStudio>
<ReleaseNotes _locID="App_ReleaseNotes">
<!-- _locComment_text="{MaxLength=1500} {Locked=__VERSION_NUMBER__}{Locked=wt.exe} App Release Note" -->Версія __VERSION_NUMBER__
- Цілком нова сторінка розширень, яка показує, що було встановлено у вашому Терміналі
- Палітра команд тепер відображається вашою рідною мовою, так само, як і англійською
- Нові VT функції, такі як синхронізований рендеринг, нові колірні схеми, налаштування для швидких дій миші, таких як масштабування, тощо
Будь ласка, перегляньте нашу сторінку релізів GitHub для отримання додаткової інформації.
</ReleaseNotes>
<ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform -->
<!-- Valid attributes: any of DesktopImage, MobileImage, XboxImage, SurfaceHubImage, and HoloLensImage -->
<Caption DesktopImage="acrylic-emoji.png" _locID="App_caption1">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 1" -->
</Caption>
<Caption DesktopImage="panes.png" _locID="App_caption2">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 2" -->
</Caption>
<Caption DesktopImage="htop.png" _locID="App_caption3">
<!-- _locComment_text="{MaxLength=200} Screenshot caption 3" -->
</Caption>
</ScreenshotCaptions>
<AdditionalAssets>
<!-- Valid elements:-->
<!-- HeroImage414x180, HeroImage846x468, HeroImage558x756, HeroImage414x468, HeroImage558x558, HeroImage2400x1200,-->
<!-- ScreenshotWXGA, ScreenshotHD720, ScreenshotWVGA, Doublewide, Panoramic, Square,-->
<!-- SmallMobileTile, SmallXboxLiveTile, LargeMobileTile, LargeXboxLiveTile, Tile,-->
<!-- DesktopIcon, Icon (use this value for the 1:1 300x300 pixels logo), AchievementIcon,-->
<!-- ChallengePromoIcon, RewardDisplayIcon, Icon150X150, Icon71X71,-->
<!-- BoxArt, BrandedKeyArt, PosterArt, FeaturedPromotionalArt, PromotionalArt16x9, TitledHeroArt-->
<!-- There is no content for any of these elements, just a single attribute called FileName. -->
<PosterArt FileName="Store Poster Art.png" />
<BoxArt FileName="Store Box Art.png" />
<PromotionalArt16x9 FileName="Store Thumbnail.png" />
</AdditionalAssets>
<Trailers>
<!-- Maximum number of trailers permitted: 15 -->
<Trailer FileName="CC0605_CommandLine_Teaser_WEB_MASTER_H264_1080p_23.976_-16LKFS_-3dbTP_ST.mp4">
<Title _locID="App_trailerTitle1">
<!-- _locComment_text="{MaxLength=255} Trailer title 1" -->Новий термінал Windows</Title>
<Images>
<!-- Current maximum of 1 image per trailer permitted. -->
<Image FileName="Store Thumbnail.png">
<!-- _locComment_text="{Locked} Trailer screenshot 1 description" -->
</Image>
</Images>
</Trailer>
</Trailers>
<AppFeatures>
<!-- Valid length: 200 character limit, up to 20 elements -->
<AppFeature _locID="App_feature1">
<!-- _locComment_text="{MaxLength=200} App Feature 1" -->Наявність вкладок</AppFeature>
<AppFeature _locID="App_feature2">
<!-- _locComment_text="{MaxLength=200} App Feature 2" -->Повна підтримка Юнікоду</AppFeature>
<AppFeature _locID="App_feature3">
<!-- _locComment_text="{MaxLength=200} App Feature 3" -->Рендеринг тексту з прискоренням GPU</AppFeature>
<AppFeature _locID="App_feature4">
<!-- _locComment_text="{MaxLength=200} App Feature 4" -->Широкі можливості кастомізації</AppFeature>
<AppFeature _locID="App_feature5">
<!-- _locComment_text="{MaxLength=200} App Feature 5" -->Розділення панелей</AppFeature>
<AppFeature _locID="App_feature6">
<!-- _locComment_text="{MaxLength=200} App Feature 6" -->
</AppFeature>
<AppFeature _locID="App_feature7">
<!-- _locComment_text="{MaxLength=200} App Feature 7" -->
</AppFeature>
<AppFeature _locID="App_feature8">
<!-- _locComment_text="{MaxLength=200} App Feature 8" -->
</AppFeature>
<AppFeature _locID="App_feature9">
<!-- _locComment_text="{MaxLength=200} App Feature 9" -->
</AppFeature>
<AppFeature _locID="App_feature10">
<!-- _locComment_text="{MaxLength=200} App Feature 10" -->
</AppFeature>
<AppFeature _locID="App_feature11">
<!-- _locComment_text="{MaxLength=200} App Feature 11" -->
</AppFeature>
<AppFeature _locID="App_feature12">
<!-- _locComment_text="{MaxLength=200} App Feature 12" -->
</AppFeature>
<AppFeature _locID="App_feature13">
<!-- _locComment_text="{MaxLength=200} App Feature 13" -->
</AppFeature>
<AppFeature _locID="App_feature14">
<!-- _locComment_text="{MaxLength=200} App Feature 14" -->
</AppFeature>
<AppFeature _locID="App_feature15">
<!-- _locComment_text="{MaxLength=200} App Feature 15" -->
</AppFeature>
<AppFeature _locID="App_feature16">
<!-- _locComment_text="{MaxLength=200} App Feature 16" -->
</AppFeature>
<AppFeature _locID="App_feature17">
<!-- _locComment_text="{MaxLength=200} App Feature 17" -->
</AppFeature>
<AppFeature _locID="App_feature18">
<!-- _locComment_text="{MaxLength=200} App Feature 18" -->
</AppFeature>
<AppFeature _locID="App_feature19">
<!-- _locComment_text="{MaxLength=200} App Feature 19" -->
</AppFeature>
<AppFeature _locID="App_feature20">
<!-- _locComment_text="{MaxLength=200} App Feature 20" -->
</AppFeature>
</AppFeatures>
<RecommendedHardware>
<!-- Valid length: 200 character limit, up to 11 elements -->
<Recommendation _locID="App_RecommendedHW1">
<!-- _locComment_text="{MaxLength=200} App Recommended Hardware 1" -->Клавіатура</Recommendation>
</RecommendedHardware>
<MinimumHardware>
<!-- Valid length: 200 character limit, up to 11 elements -->
</MinimumHardware>
<CopyrightAndTrademark _locID="App_CopyrightandTrademark">
<!-- _locComment_text="{MaxLength=200} Copyright and Trademark" -->Права (c) Корпорація Майкрософт</CopyrightAndTrademark>
<AdditionalLicenseTerms _locID="App_AdditionalLicenseTerms">
<!-- _locComment_text="{MaxLength=10000} Additional License Terms" -->
</AdditionalLicenseTerms>
<WebsiteURL _locID="App_WebsiteURL">
<!-- _locComment_text="{MaxLength=2048} WebsiteURL" -->https://github.com/microsoft/terminal</WebsiteURL>
<SupportContactInfo _locID="App_SupportContactInfo">
<!-- _locComment_text="{MaxLength=2048} Support Contact Info" -->https://github.com/microsoft/terminal/issues/new</SupportContactInfo>
<PrivacyPolicyURL _locID="App_PrivacyURL">
<!-- _locComment_text="{MaxLength=2048} Privacy Policy URL" -->https://go.microsoft.com/fwlink/?LinkID=521839</PrivacyPolicyURL>
</ProductDescription>

View File

@@ -56,9 +56,12 @@
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ Version __VERSION_NUMBER__
- 一个全新的“扩展”页,显示已安装到终端的内容 - 我们已改变主机应用程序在终端内的托管方式!请报告遇到的任何 bug。
- 命令面板现在以你的母语和英语显示 - 终端现在支持 Sixels!
- 新的 VT 功能,例如同步渲染、新配色方案、快速鼠标操作(如缩放)的配置等 - 现在可以打开一个停靠面板,其中包含已保存供以后使用的命令片段
- 最新 Windows 11 版本上的命令提示用户可能会看到“快速提示”图标,该图标建议从 WinGet 安装软件
- 所选文本现在将具有更高的可见性(和可自定义性!)
- 修复了许多可靠性 bug、便利性问题和令人烦恼的问题。
有关其他详细信息,请参阅我们的 GitHub 发布页面。 有关其他详细信息,请参阅我们的 GitHub 发布页面。
</ReleaseNotes> </ReleaseNotes>

View File

@@ -54,13 +54,16 @@
</DevStudio> </DevStudio>
<ReleaseNotes> <ReleaseNotes>
Version __VERSION_NUMBER__ 版本 __VERSION_NUMBER__
- 全新的延伸模組頁面會顯示已安裝在您終端機中的內容 - 我們已重寫主機應用程式在終端機內託管的方式!請報告您遇到的錯誤。
- 命令選擇區現在以您的母語和英文顯示 - 終端機現在支援 Sixels!
- 新的 VT 功能,例如同步轉譯、新的色彩配置、快速滑鼠動作 (例如縮放) 設定等等 - 現在,您可以開啟包含已儲存命令程式碼片段的固定面板,以供稍後使用
- 最新 Windows 11 版本中的 [命令提示] 使用者可能會看到「快速提示」圖示,建議可自 WinGet 安裝的軟體
- 選取的文字現在會更明顯 (且可自訂!)
- 已修正一些可靠性錯誤、便利性問題和令人困擾的問題。
如需更多詳細資,請參閱我們的 GitHub 發行版本頁面。 如需更多詳細資,請參閱我們的 GitHub 發行頁面。
</ReleaseNotes> </ReleaseNotes>
<ScreenshotCaptions> <ScreenshotCaptions>
<!-- Valid length: 200 character limit, up to 9 elements per platform --> <!-- Valid length: 200 character limit, up to 9 elements per platform -->

View File

@@ -1,5 +1,4 @@
{ {
"codebaseName": "VSTS_Microsoft_OSGS_OpenConsole",
"instanceUrl": "https://microsoft.visualstudio.com", "instanceUrl": "https://microsoft.visualstudio.com",
"projectName": "OS", "projectName": "OS",
"areaPath": "OS\\Windows Client and Services\\WinPD\\DFX-Developer Fundamentals and Experiences\\DEFT\\SHINE\\Terminal", "areaPath": "OS\\Windows Client and Services\\WinPD\\DFX-Developer Fundamentals and Experiences\\DEFT\\SHINE\\Terminal",

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="Microsoft.Taef" version="10.100.251104001" targetFramework="native" /> <package id="Microsoft.Taef" version="10.93.240607003" targetFramework="native" />
<package id="Microsoft.Internal.PGO-Helpers.Cpp" version="0.2.34" targetFramework="native" /> <package id="Microsoft.Internal.PGO-Helpers.Cpp" version="0.2.34" targetFramework="native" />
<package id="Microsoft.Debugging.Tools.PdbStr" version="20220617.1556.0" targetFramework="native" /> <package id="Microsoft.Debugging.Tools.PdbStr" version="20220617.1556.0" targetFramework="native" />
<package id="Microsoft.Debugging.Tools.SrcTool" version="20220617.1556.0" targetFramework="native" /> <package id="Microsoft.Debugging.Tools.SrcTool" version="20220617.1556.0" targetFramework="native" />

View File

@@ -9,7 +9,7 @@
<PropertyGroup> <PropertyGroup>
<!-- Optional, defaults to main. Name of the branch which will be used for calculating branch point. --> <!-- Optional, defaults to main. Name of the branch which will be used for calculating branch point. -->
<PGOBranch>main</PGOBranch> <PGOBranch>release-1.24</PGOBranch>
<!-- Mandatory. Name of the NuGet package which will contain PGO databases for consumption by build system. --> <!-- Mandatory. Name of the NuGet package which will contain PGO databases for consumption by build system. -->
<PGOPackageName>Microsoft.Internal.Windows.Terminal.PGODatabase</PGOPackageName> <PGOPackageName>Microsoft.Internal.Windows.Terminal.PGODatabase</PGOPackageName>

View File

@@ -1,64 +0,0 @@
trigger: none
pr: none
schedules:
- cron: "30 3 * * 2-6" # Run at 03:30 UTC Tuesday through Saturday (After the work day in Pacific, Mon-Fri)
displayName: "Nightly Terminal Build"
branches:
include:
- main
always: false # only run if there's code changes!
parameters:
- name: publishToAzure
displayName: "Deploy to **PUBLIC** Azure Storage"
type: boolean
default: true
- name: official
displayName: "Run on Official 1ES Pipeline Templates"
type: boolean
default: true
name: $(BuildDefinitionName)_$(date:yyMM).$(date:dd)$(rev:rrr)
variables:
- template: templates-v2/variables-nuget-package-version.yml
parameters:
branding: Canary
extends:
template: templates-v2/pipeline-1espt-full-release-build.yml
parameters:
official: ${{ parameters.official }}
branding: Canary
buildTerminal: true
pgoBuildMode: Optimize
codeSign: true
signingIdentity:
serviceName: $(SigningServiceName)
appId: $(SigningAppId)
tenantId: $(SigningTenantId)
akvName: $(SigningAKVName)
authCertName: $(SigningAuthCertName)
signCertName: $(SigningSignCertName)
useManagedIdentity: $(SigningUseManagedIdentity)
clientId: $(SigningOriginalClientId)
publishSymbolsToPublic: true
symbolExpiryTime: 15
symbolPublishingSubscription: $(SymbolPublishingServiceConnection)
symbolPublishingProject: $(SymbolPublishingProject)
${{ if eq(true, parameters.publishToAzure) }}:
extraPublishJobs:
- template: build/pipelines/templates-v2/job-deploy-to-azure-storage.yml@self
parameters:
pool:
name: SHINE-INT-S
os: windows
dependsOn: [PublishSymbols]
storagePublicRootURL: $(AppInstallerRootURL)
subscription: $(AzureSubscriptionName)
storageAccount: $(AzureStorageAccount)
storageContainer: $(AzureStorageContainer)
buildConfiguration: Release
buildPlatforms: [x64, x86, arm64]
environment: production-canary

View File

@@ -87,13 +87,6 @@ stages:
buildConfigurations: [Release] buildConfigurations: [Release]
buildEverything: true buildEverything: true
keepAllExpensiveBuildOutputs: false keepAllExpensiveBuildOutputs: false
${{ if eq(parameters.runTests, true) }}:
# Copy the appx files into the bin drop because the LocalTests need them
afterBuildSteps:
- pwsh: |-
$deps = ./build/scripts/Get-DependenciesFromAppxRecipe.ps1 -Path "$(Terminal.BinDir)/TestHostApp/TestHostApp.build.appxrecipe"
$dir = New-Item -Type Directory "$(Terminal.BinDir)/_testDeps"
$deps | Copy-Item -Destination $dir -Verbose
- ${{ if eq(parameters.runTests, true) }}: - ${{ if eq(parameters.runTests, true) }}:
- stage: Test_${{ platform }} - stage: Test_${{ platform }}

View File

@@ -23,7 +23,7 @@ parameters:
default: true default: true
pool: pool:
vmImage: windows-latest vmImage: windows-2019
resources: resources:
repositories: repositories:
@@ -51,8 +51,8 @@ steps:
displayName: 'Touchdown Build - 7105, PRODEXT' displayName: 'Touchdown Build - 7105, PRODEXT'
inputs: inputs:
teamId: 7105 teamId: 7105
FederatedIdentityTDBuildServiceConnection: $(TouchdownServiceConnection) TDBuildServiceConnection: $(TouchdownServiceConnection)
authType: FederatedIdentityTDBuild authType: SubjectNameIssuer
resourceFilePath: | resourceFilePath: |
**\en-US\*.resw **\en-US\*.resw
build\StoreSubmission\Stable\PDPs\en-us\PDP.xml build\StoreSubmission\Stable\PDPs\en-us\PDP.xml

View File

@@ -31,7 +31,7 @@ stages:
- template: ./templates-v2/job-build-project.yml - template: ./templates-v2/job-build-project.yml
parameters: parameters:
pool: # This only runs in CI pool: # This only runs in CI
name: SHINE-OSS-L name: SHINE-OSS-L
buildPlatforms: [x64] buildPlatforms: [x64]
buildConfigurations: [Release] buildConfigurations: [Release]
buildEverything: true buildEverything: true

View File

@@ -28,7 +28,7 @@ extends:
official: true official: true
branding: Canary branding: Canary
buildTerminal: true buildTerminal: true
pgoBuildMode: Optimize pgoBuildMode: None # BODGY - OneBranch is on VS 17.10, which is known to be the worst
codeSign: true codeSign: true
signingIdentity: signingIdentity:
serviceName: $(SigningServiceName) serviceName: $(SigningServiceName)

View File

@@ -75,7 +75,7 @@ stages:
parameters: parameters:
jobName: MergePGD jobName: MergePGD
pool: pool:
vmImage: 'windows-latest' vmImage: 'windows-2022'
buildConfiguration: Release buildConfiguration: Release
buildPlatforms: ${{ parameters.buildPlatforms }} buildPlatforms: ${{ parameters.buildPlatforms }}
artifactStem: -instrumentation artifactStem: -instrumentation
@@ -83,7 +83,7 @@ stages:
- template: ./templates-v2/job-pgo-build-nuget-and-publish.yml - template: ./templates-v2/job-pgo-build-nuget-and-publish.yml
parameters: parameters:
pool: pool:
vmImage: 'windows-latest' vmImage: 'windows-2022'
dependsOn: MergePGD dependsOn: MergePGD
buildConfiguration: Release buildConfiguration: Release
artifactStem: -instrumentation artifactStem: -instrumentation

View File

@@ -30,13 +30,9 @@ parameters:
- name: signingIdentity - name: signingIdentity
type: object type: object
default: {} default: {}
- name: outerTemplateContext
type: object
default: {}
jobs: jobs:
- job: ${{ parameters.jobName }} - job: ${{ parameters.jobName }}
templateContext: ${{ parameters.outerTemplateContext }}
${{ if ne(length(parameters.pool), 0) }}: ${{ if ne(length(parameters.pool), 0) }}:
pool: ${{ parameters.pool }} pool: ${{ parameters.pool }}
${{ if eq(parameters.codeSign, true) }}: ${{ if eq(parameters.codeSign, true) }}:
@@ -50,7 +46,6 @@ jobs:
BuildConfiguration: ${{ config }} BuildConfiguration: ${{ config }}
dependsOn: ${{ parameters.dependsOn }} dependsOn: ${{ parameters.dependsOn }}
variables: variables:
BuildPlatform: Any CPU
OutputBuildPlatform: AnyCPU OutputBuildPlatform: AnyCPU
Terminal.BinDir: $(Build.SourcesDirectory)/bin/$(OutputBuildPlatform)/$(BuildConfiguration) Terminal.BinDir: $(Build.SourcesDirectory)/bin/$(OutputBuildPlatform)/$(BuildConfiguration)
JobOutputDirectory: $(Build.ArtifactStagingDirectory)\nupkg JobOutputDirectory: $(Build.ArtifactStagingDirectory)\nupkg
@@ -80,9 +75,9 @@ jobs:
- template: .\steps-restore-nuget.yml - template: .\steps-restore-nuget.yml
- task: VSBuild@1 - task: VSBuild@1
displayName: Build solution OpenConsole.slnx for WPF Control (Pack) displayName: Build solution OpenConsole.sln for WPF Control (Pack)
inputs: inputs:
solution: 'OpenConsole.slnx' solution: 'OpenConsole.sln'
msbuildArgs: >- msbuildArgs: >-
/p:WindowsTerminalReleaseBuild=true;Version=$(XES_PACKAGEVERSIONNUMBER) /p:WindowsTerminalReleaseBuild=true;Version=$(XES_PACKAGEVERSIONNUMBER)
/p:NoBuild=true /p:NoBuild=true

View File

@@ -21,10 +21,6 @@ parameters:
displayName: "Build Everything (Overrides all other build options)" displayName: "Build Everything (Overrides all other build options)"
type: boolean type: boolean
default: false default: false
- name: enableRustBuild
displayName: "Build src/tools/wtr (requires RustInstaller extension + microsoft/Dart Azure Artifact feeds)"
type: boolean
default: true
- name: pgoBuildMode - name: pgoBuildMode
type: string type: string
default: None default: None
@@ -75,16 +71,9 @@ parameters:
- name: enableCaching - name: enableCaching
type: boolean type: boolean
default: false default: false
- name: afterBuildSteps
type: stepList
default: []
- name: outerTemplateContext
type: object
default: {}
jobs: jobs:
- job: ${{ parameters.jobName }} - job: ${{ parameters.jobName }}
templateContext: ${{ parameters.outerTemplateContext }}
${{ if ne(length(parameters.pool), 0) }}: ${{ if ne(length(parameters.pool), 0) }}:
pool: ${{ parameters.pool }} pool: ${{ parameters.pool }}
strategy: strategy:
@@ -141,11 +130,11 @@ jobs:
$SignFragments += "wpfdotnet" $SignFragments += "wpfdotnet"
} }
If ([bool]::Parse("${{ parameters.buildWPF }}")) { If ([bool]::Parse("${{ parameters.buildWPF }}")) {
$BuildTargets += "Terminal\Control\TerminalControl" $BuildTargets += "Terminal\Control\Microsoft_Terminal_Control"
$SignFragments += "wpf" $SignFragments += "wpf"
} }
If ([bool]::Parse("${{ parameters.buildConPTY }}")) { If ([bool]::Parse("${{ parameters.buildConPTY }}")) {
$BuildTargets += "Conhost\Host_EXE;Conhost\winconptydll" $BuildTargets += "Conhost\Host_EXE;Conhost\winconpty_DLL"
$SignFragments += "conpty" $SignFragments += "conpty"
} }
Write-Host "Targets: $($BuildTargets -Join ";")" Write-Host "Targets: $($BuildTargets -Join ";")"
@@ -170,80 +159,6 @@ jobs:
.\build\scripts\Generate-ThirdPartyNotices.ps1 -MarkdownNoticePath .\NOTICE.md -OutputPath .\src\cascadia\CascadiaPackage\NOTICE.html .\build\scripts\Generate-ThirdPartyNotices.ps1 -MarkdownNoticePath .\NOTICE.md -OutputPath .\src\cascadia\CascadiaPackage\NOTICE.html
displayName: Generate NOTICE.html from NOTICE.md displayName: Generate NOTICE.html from NOTICE.md
- ${{ if eq(parameters.enableRustBuild, true) }}:
# ────────────────────────────────────────────────────────────────────────
# Rust toolchain for src/tools/wtr (1ES-compliant pattern).
# Placed early — before vcpkg/nuget/VC-tools setup — so that Rust pipeline
# validation is independent of any C++ build environment problems.
#
# Pipeline lives at: https://microsoft.visualstudio.com/Dart/
# Reference for this pattern: microsoft/sudo (.pipelines/OneBranch.Common.yml)
#
# Compliance notes (per 1ES Rust workflow guidance):
# 1. Toolchain comes from the org-level `RustTools` Azure Artifact NuGet
# feed (already exists on `microsoft` ADO org; same feed used by
# microsoft/sudo, microsoft/vscode, microsoft/edit, microsoft/qdk).
# 2. Crates resolve through a project-level Azure Artifact Cargo feed
# named `Cargo` in microsoft/Dart (with crates.io upstream).
# 3. The Rust version uses the `ms-prod-X.YY` channel, pinned in
# `src/tools/wtr/rust-toolchain.toml`.
# 4. Component Governance scanning of Cargo.lock is auto-injected by
# 1ES PT (no extra task needed here).
#
# Prerequisites — until in place, leave `enableRustBuild` parameter false:
# - Azure Artifact Cargo feed `Cargo` exists in microsoft/Dart with
# `crates.io` upstream. (Project-scope, terminal team can create it.)
# - The CI account ("Project Collection Build Service (microsoft)") has
# at least Collaborator permission on the `RustTools` feed.
# ────────────────────────────────────────────────────────────────────────
- task: RustInstaller@1
displayName: Install Rust toolchain (MSRustup)
inputs:
rustVersion: ms-prod-1.93
toolchainFeed: https://pkgs.dev.azure.com/microsoft/_packaging/RustTools/nuget/v3/index.json
# NOTE: we deliberately do NOT set `cratesIoFeedOverride` here. That
# parameter injects an env-var registry override named `ms_crates_io`
# which CargoAuthenticate cannot see (it scans config files, not env
# vars), so the override registry ends up unauthenticated and Azure
# Artifacts returns 404 on its sparse-index endpoint.
# Instead, the registry + source replacement lives in
# src/tools/wtr/.cargo/config.toml — CargoAuthenticate@0 (next step)
# tokens it, and cargo's normal config-file resolution picks it up.
additionalTargets: 'x86_64-pc-windows-msvc i686-pc-windows-msvc aarch64-pc-windows-msvc'
# CargoAuthenticate issues a Bearer token (using System.AccessToken) for
# every Azure Artifacts Cargo feed referenced in the config file.
# Required: without it, Azure Artifacts returns 404 on the sparse index
# endpoint and cargo reports "config.json not found in registry".
# This is the canonical 1ES Rust auth pattern (mirrors microsoft/edit).
- task: CargoAuthenticate@0
displayName: Authenticate Cargo feeds
inputs:
configFile: src/tools/wtr/.cargo/config.toml
# Separate fetch step: some 1ES pools disable network during the build
# phase. Fetching upfront keeps `cargo build --frozen` fully offline.
- script: cargo fetch --manifest-path src/tools/wtr/Cargo.toml --locked
displayName: Fetch crates (offline-friendly)
- pwsh: |-
$ErrorActionPreference = 'Stop'
$triple = switch ('$(BuildPlatform)') {
'x64' { 'x86_64-pc-windows-msvc' }
'x86' { 'i686-pc-windows-msvc' }
'arm64' { 'aarch64-pc-windows-msvc' }
default { 'x86_64-pc-windows-msvc' }
}
$config = '$(BuildConfiguration)'
Write-Host "Building wtr for $triple ($config)"
if ($config -eq 'Release') {
cargo build --manifest-path src/tools/wtr/Cargo.toml --target $triple --frozen --release
} else {
cargo build --manifest-path src/tools/wtr/Cargo.toml --target $triple --frozen
}
if ($LASTEXITCODE -ne 0) { throw "cargo build failed with exit code $LASTEXITCODE" }
displayName: Build src/tools/wtr (Cargo)
- template: .\steps-install-vcpkg.yml - template: .\steps-install-vcpkg.yml
- template: .\steps-restore-nuget.yml - template: .\steps-restore-nuget.yml
@@ -255,9 +170,9 @@ jobs:
- ${{ parameters.beforeBuildSteps }} - ${{ parameters.beforeBuildSteps }}
- task: VSBuild@1 - task: VSBuild@1
displayName: Build OpenConsole.slnx displayName: Build OpenConsole.sln
inputs: inputs:
solution: 'OpenConsole.slnx' solution: 'OpenConsole.sln'
msbuildArgs: >- msbuildArgs: >-
/p:WindowsTerminalOfficialBuild=true;WindowsTerminalBranding=${{ parameters.branding }};PGOBuildMode=${{ parameters.pgoBuildMode }} /p:WindowsTerminalOfficialBuild=true;WindowsTerminalBranding=${{ parameters.branding }};PGOBuildMode=${{ parameters.pgoBuildMode }}
${{ parameters.additionalBuildOptions }} ${{ parameters.additionalBuildOptions }}
@@ -295,8 +210,6 @@ jobs:
contents: $(Build.SourcesDirectory)/MSBuildCacheLogs/** contents: $(Build.SourcesDirectory)/MSBuildCacheLogs/**
TargetFolder: $(Terminal.BinDir)/MSBuildCacheLogs TargetFolder: $(Terminal.BinDir)/MSBuildCacheLogs
- ${{ parameters.afterBuildSteps }}
# This saves ~2GiB per architecture. We won't need these later. # This saves ~2GiB per architecture. We won't need these later.
# Removes: # Removes:
# - All .lib that do not have an associated .exp (which would indicate that they are import libs) # - All .lib that do not have an associated .exp (which would indicate that they are import libs)

View File

@@ -1,7 +1,7 @@
jobs: jobs:
- job: CodeFormatCheck - job: CodeFormatCheck
displayName: Check Code Format displayName: Check Code Format
pool: { vmImage: windows-latest } pool: { vmImage: windows-2022 }
steps: steps:
- checkout: self - checkout: self

View File

@@ -35,13 +35,9 @@ parameters:
- name: signingIdentity - name: signingIdentity
type: object type: object
default: {} default: {}
- name: outerTemplateContext
type: object
default: {}
jobs: jobs:
- job: ${{ parameters.jobName }} - job: ${{ parameters.jobName }}
templateContext: ${{ parameters.outerTemplateContext }}
${{ if ne(length(parameters.pool), 0) }}: ${{ if ne(length(parameters.pool), 0) }}:
pool: ${{ parameters.pool }} pool: ${{ parameters.pool }}
${{ if eq(parameters.codeSign, true) }}: ${{ if eq(parameters.codeSign, true) }}:

View File

@@ -30,13 +30,9 @@ parameters:
- name: signingIdentity - name: signingIdentity
type: object type: object
default: {} default: {}
- name: outerTemplateContext
type: object
default: {}
jobs: jobs:
- job: ${{ parameters.jobName }} - job: ${{ parameters.jobName }}
templateContext: ${{ parameters.outerTemplateContext }}
${{ if ne(length(parameters.pool), 0) }}: ${{ if ne(length(parameters.pool), 0) }}:
pool: ${{ parameters.pool }} pool: ${{ parameters.pool }}
${{ if eq(parameters.codeSign, true) }}: ${{ if eq(parameters.codeSign, true) }}:

View File

@@ -58,24 +58,6 @@ jobs:
filePath: build\scripts\Run-Tests.ps1 filePath: build\scripts\Run-Tests.ps1
arguments: -MatchPattern '*feature.test*.dll' -Platform '$(OutputBuildPlatform)' -Configuration '$(BuildConfiguration)' -LogPath '${{ parameters.testLogPath }}' -Root "$(Terminal.BinDir)" arguments: -MatchPattern '*feature.test*.dll' -Platform '$(OutputBuildPlatform)' -Configuration '$(BuildConfiguration)' -LogPath '${{ parameters.testLogPath }}' -Root "$(Terminal.BinDir)"
# Load-bearing: This needs to be Windows PowerShell, not pwsh, due to Add-AppxPackage not working in pwsh.
- powershell: |-
$deps = Get-ChildItem -Recurse "$(Terminal.BinDir)/_testDeps"
$deps | % {
Write-Host "Installing $($_.FullName)..."
Add-AppxPackage -Path $_.FullName -ErrorAction:Ignore
}
displayName: 'Install LocalTest Dependencies'
- task: PowerShell@2
displayName: 'Run Local Tests'
inputs:
pwsh: true
targetType: filePath
filePath: build\scripts\Run-Tests.ps1
arguments: -MatchPattern '*LocalTests*.dll' -Platform '$(OutputBuildPlatform)' -Configuration '$(BuildConfiguration)' -LogPath '${{ parameters.testLogPath }}' -Root "$(Terminal.BinDir)"
condition: and(succeeded(), ne(variables['PGOBuildMode'], 'Instrument'))
- task: PowerShell@2 - task: PowerShell@2
displayName: 'Convert Test Logs from WTL to xUnit format' displayName: 'Convert Test Logs from WTL to xUnit format'
condition: always() condition: always()

View File

@@ -1,233 +0,0 @@
parameters:
- name: official
type: boolean
default: false
- name: branding
type: string
default: Release
values:
- Release
- Preview
- Canary
- Dev
- name: buildTerminal
type: boolean
default: true
- name: buildConPTY
type: boolean
default: false
- name: buildWPF
type: boolean
default: false
- name: pgoBuildMode
type: string
default: Optimize
values:
- Optimize
- Instrument
- None
- name: buildConfigurations
type: object
default:
- Release
- name: buildPlatforms
type: object
default:
- x64
- x86
- arm64
- name: codeSign
type: boolean
default: true
- name: terminalInternalPackageVersion
type: string
default: '0.0.8'
- name: publishSymbolsToPublic
type: boolean
default: true
- name: symbolExpiryTime
type: string
default: 36530 # This is the default from PublishSymbols@2
- name: symbolPublishingSubscription
type: string
- name: symbolPublishingProject
type: string
- name: extraPublishJobs
type: object
default: []
- name: signingIdentity
type: object
default: {}
resources:
repositories:
- repository: 1esPipelines
type: git
name: 1ESPipelineTemplates/1ESPipelineTemplates
ref: refs/tags/release
extends:
${{ if eq(parameters.official, true) }}:
template: v1/1ES.Official.PipelineTemplate.yml@1esPipelines
${{ else }}:
template: v1/1ES.Unofficial.PipelineTemplate.yml@1esPipelines
parameters:
customBuildTags:
- 1ES.PT.ViaStartRight
pool:
name: SHINE-INT-L
os: windows
sdl:
tsa:
enabled: true
configFile: '$(Build.SourcesDirectory)\build\config\tsa.json'
binskim:
enabled: true
policheck:
enabled: false
severity: Note
baseline:
baselineFile: '$(Build.SourcesDirectory)\build\config\release.gdnbaselines'
suppressionSet: default
stages:
- stage: Build
displayName: Build
dependsOn: []
jobs:
- template: ./build/pipelines/templates-v2/job-build-project.yml@self
parameters:
outerTemplateContext:
outputs:
- output: pipelineArtifact
targetPath: $(JobOutputDirectory)
artifactName: $(JobOutputArtifactName)
publishArtifacts: false # Handled by 1ESPT
branding: ${{ parameters.branding }}
buildTerminal: ${{ parameters.buildTerminal }}
buildConPTY: ${{ parameters.buildConPTY }}
buildWPF: ${{ parameters.buildWPF }}
pgoBuildMode: ${{ parameters.pgoBuildMode }}
buildConfigurations: ${{ parameters.buildConfigurations }}
buildPlatforms: ${{ parameters.buildPlatforms }}
generateSbom: false # this is handled by 1ESPT
removeAllNonSignedFiles: true # appease the overlords
codeSign: ${{ parameters.codeSign }}
signingIdentity: ${{ parameters.signingIdentity }}
beforeBuildSteps:
- template: ./build/pipelines/templates-v2/steps-setup-versioning.yml@self
- template: ./build/pipelines/templates-v2/steps-install-terrapin.yml@self
- task: UniversalPackages@0
displayName: Download terminal-internal Universal Package
inputs:
feedListDownload: 2b3f8893-a6e8-411f-b197-a9e05576da48
packageListDownload: e82d490c-af86-4733-9dc4-07b772033204
versionListDownload: ${{ parameters.terminalInternalPackageVersion }}
- ${{ if eq(parameters.buildWPF, true) }}:
# Add an Any CPU build flavor for the WPF control bits
- template: ./build/pipelines/templates-v2/job-build-project.yml@self
parameters:
outerTemplateContext:
outputs:
- output: pipelineArtifact
targetPath: $(JobOutputDirectory)
artifactName: $(JobOutputArtifactName)
publishArtifacts: false # Handled by 1ESPT
jobName: BuildWPF
branding: ${{ parameters.branding }}
buildTerminal: false
buildWPFDotNetComponents: true
buildConfigurations: ${{ parameters.buildConfigurations }}
buildPlatforms:
- Any CPU
generateSbom: false # this is handled by 1ESPT
removeAllNonSignedFiles: true # appease the overlords
codeSign: ${{ parameters.codeSign }}
signingIdentity: ${{ parameters.signingIdentity }}
beforeBuildSteps:
- template: ./build/pipelines/templates-v2/steps-setup-versioning.yml@self
# WPF doesn't need the localizations or the universal package, but if it does... put them here.
- stage: Package
displayName: Package
dependsOn: [Build]
jobs:
- ${{ if eq(parameters.buildTerminal, true) }}:
- template: ./build/pipelines/templates-v2/job-merge-msix-into-bundle.yml@self
parameters:
pool:
name: SHINE-INT-S
os: windows
outerTemplateContext:
outputs:
- output: pipelineArtifact
targetPath: $(JobOutputDirectory)
artifactName: $(JobOutputArtifactName)
publishArtifacts: false # Handled by 1ESPT
jobName: Bundle
branding: ${{ parameters.branding }}
buildConfigurations: ${{ parameters.buildConfigurations }}
buildPlatforms: ${{ parameters.buildPlatforms }}
generateSbom: false # Handled by 1ESPT
codeSign: ${{ parameters.codeSign }}
signingIdentity: ${{ parameters.signingIdentity }}
- ${{ if eq(parameters.buildConPTY, true) }}:
- template: ./build/pipelines/templates-v2/job-package-conpty.yml@self
parameters:
pool:
name: SHINE-INT-S
os: windows
outerTemplateContext:
outputs:
- output: pipelineArtifact
targetPath: $(JobOutputDirectory)
artifactName: $(JobOutputArtifactName)
publishArtifacts: false # Handled by 1ESPT
buildConfigurations: ${{ parameters.buildConfigurations }}
buildPlatforms: ${{ parameters.buildPlatforms }}
generateSbom: false # this is handled by 1ESPT
codeSign: ${{ parameters.codeSign }}
signingIdentity: ${{ parameters.signingIdentity }}
- ${{ if eq(parameters.buildWPF, true) }}:
- template: ./build/pipelines/templates-v2/job-build-package-wpf.yml@self
parameters:
pool:
name: SHINE-INT-S
os: windows
outerTemplateContext:
outputs:
- output: pipelineArtifact
targetPath: $(JobOutputDirectory)
artifactName: $(JobOutputArtifactName)
publishArtifacts: false # Handled by 1ESPT
buildConfigurations: ${{ parameters.buildConfigurations }}
buildPlatforms: ${{ parameters.buildPlatforms }}
generateSbom: false # this is handled by 1ESPT
codeSign: ${{ parameters.codeSign }}
signingIdentity: ${{ parameters.signingIdentity }}
- stage: Publish
displayName: Publish
dependsOn:
- Build
- ${{ if or(parameters.buildTerminal, parameters.buildConPTY, parameters.buildWPF) }}:
- Package
jobs:
- template: ./build/pipelines/templates-v2/job-publish-symbols-using-symbolrequestprod-api.yml@self
parameters:
pool:
name: SHINE-INT-S
os: windows
includePublicSymbolServer: ${{ parameters.publishSymbolsToPublic }}
symbolExpiryTime: ${{ parameters.symbolExpiryTime }}
subscription: ${{ parameters.symbolPublishingSubscription }}
symbolProject: ${{ parameters.symbolPublishingProject }}
- ${{ parameters.extraPublishJobs }}

View File

@@ -153,10 +153,7 @@ stages:
- stage: Publish - stage: Publish
displayName: Publish displayName: Publish
pool: ${{ parameters.pool }} pool: ${{ parameters.pool }}
dependsOn: dependsOn: [Build, Package]
- Build
- ${{ if or(parameters.buildTerminal, parameters.buildConPTY, parameters.buildWPF) }}:
- Package
jobs: jobs:
# We only support the vpack for Release builds that include Terminal # We only support the vpack for Release builds that include Terminal
- ${{ if and(containsValue(parameters.buildConfigurations, 'Release'), parameters.buildTerminal, parameters.publishVpackToWindows) }}: - ${{ if and(containsValue(parameters.buildConfigurations, 'Release'), parameters.buildTerminal, parameters.publishVpackToWindows) }}:

View File

@@ -279,10 +279,7 @@ extends:
- stage: Publish - stage: Publish
displayName: Publish displayName: Publish
dependsOn: dependsOn: [Build]
- Build
- ${{ if or(parameters.buildTerminal, parameters.buildConPTY, parameters.buildWPF) }}:
- Package
jobs: jobs:
- template: ./build/pipelines/templates-v2/job-publish-symbols-using-symbolrequestprod-api.yml@self - template: ./build/pipelines/templates-v2/job-publish-symbols-using-symbolrequestprod-api.yml@self
parameters: parameters:

View File

@@ -1,6 +0,0 @@
steps:
- pwsh: |-
nuget install -source "https://pkgs.dev.azure.com/microsoft/_packaging/WindowsTerminal/nuget/v3/index.json" TerrapinRetrievalTool -Prerelease -OutputDirectory _trt
$TerrapinRetrievalToolPath = (Get-Item _trt\TerrapinRetrievalTool.*\win-x64\TerrapinRetrievalTool.exe).FullName
Write-Host "##vso[task.setvariable variable=X_VCPKG_ASSET_SOURCES]x-script,${TerrapinRetrievalToolPath} -b https://vcpkg.storage.devpackages.microsoft.io/artifacts/ -a true -u None -p {url} -s {sha512} -d {dst};x-block-origin"
displayName: Set up the Terrapin Retrieval Tool (vcpkg cache)

View File

@@ -19,16 +19,14 @@ steps:
restoreSolution: build/packages.config restoreSolution: build/packages.config
restoreDirectory: '$(Build.SourcesDirectory)\packages' restoreDirectory: '$(Build.SourcesDirectory)\packages'
- task: VSBuild@1 - task: 333b11bd-d341-40d9-afcf-b32d5ce6f23b@2
displayName: Restore NuGet packages for solution displayName: Restore NuGet packages for solution
inputs: inputs:
solution: 'OpenConsole.slnx' command: restore
msbuildArgs: /t:Restore feedsToUse: config
platform: $(BuildPlatform) configPath: NuGet.config
configuration: $(BuildConfiguration) restoreSolution: OpenConsole.sln
msbuildArchitecture: x64 restoreDirectory: '$(Build.SourcesDirectory)\packages'
env:
SYSTEM_ACCESSTOKEN: $(System.AccessToken)
- task: 333b11bd-d341-40d9-afcf-b32d5ce6f23b@2 - task: 333b11bd-d341-40d9-afcf-b32d5ce6f23b@2
displayName: Restore NuGet packages for global nuget displayName: Restore NuGet packages for global nuget

View File

@@ -1,17 +0,0 @@
[CmdletBinding()]
Param(
[Parameter(Mandatory=$true, ValueFromPipeline=$true,
HelpMessage="Path to the .appxrecipe to parse")]
[string]
$Path
)
$Recipe = [xml](Get-Content $Path)
$ResolvedSDKReferences = $Recipe.Project.ItemGroup.ResolvedSDKReference
$ResolvedSDKReferences |
Where-Object Architecture -eq $Recipe.Project.PropertyGroup.PackageArchitecture |
ForEach-Object {
$l = [Uri]::UnescapeDataString($_.AppxLocation)
Get-Item $l
}

View File

@@ -10,30 +10,13 @@ $VCToolsRoot = Join-Path $VSRoot "VC\Tools\MSVC"
# differs from the version on the files themselves. We might as well check # differs from the version on the files themselves. We might as well check
# whether the version we just found _actually exists_ before we use it. # whether the version we just found _actually exists_ before we use it.
# We'll use whichever highest version exists. # We'll use whichever highest version exists.
#
# Some pool images report a package version (e.g. 14.44.35208) but ship only
# package metadata, not the actual toolchain — the version folder either
# doesn't exist or is empty. Detect both cases by also requiring a non-empty
# `bin` subdirectory (where cl.exe / link.exe live).
$PackageVCToolPath = Join-Path $VCToolsRoot $LatestVCToolsVersion $PackageVCToolPath = Join-Path $VCToolsRoot $LatestVCToolsVersion
$PackageVCBinPath = Join-Path $PackageVCToolPath "bin" If ($Null -Eq (Get-Item $PackageVCToolPath -ErrorAction:Ignore)) {
$PackageIsValid = ($Null -Ne (Get-Item $PackageVCToolPath -ErrorAction:Ignore)) -And ` $VCToolsVersions = Get-ChildItem $VCToolsRoot | ForEach-Object {
($Null -Ne (Get-Item $PackageVCBinPath -ErrorAction:Ignore))
If (-Not $PackageIsValid) {
$VCToolsVersions = Get-ChildItem $VCToolsRoot -Directory -ErrorAction:Ignore | Where-Object {
# Only consider directories that actually contain a populated `bin`.
$binDir = Join-Path $_.FullName "bin"
(Test-Path $binDir) -And ((Get-ChildItem $binDir -Recurse -File -ErrorAction:Ignore | Select-Object -First 1) -Ne $Null)
} | ForEach-Object {
[Version]$_.Name [Version]$_.Name
} | Sort -Descending } | Sort -Descending
$LatestActualVCToolsVersion = $VCToolsVersions | Select -First 1 $LatestActualVCToolsVersion = $VCToolsVersions | Select -First 1
If ($Null -Eq $LatestActualVCToolsVersion) {
Write-Error "No usable VC Tools installation found under $VCToolsRoot. Package version was $LatestVCToolsVersion. This typically indicates a partial/broken pool image (DD-1541167)."
Exit 1
}
If ([Version]$LatestVCToolsVersion -Ne $LatestActualVCToolsVersion) { If ([Version]$LatestVCToolsVersion -Ne $LatestActualVCToolsVersion) {
Write-Output "VC Tools Mismatch: Directory = $LatestActualVCToolsVersion, Package = $LatestVCToolsVersion" Write-Output "VC Tools Mismatch: Directory = $LatestActualVCToolsVersion, Package = $LatestVCToolsVersion"
$LatestVCToolsVersion = $LatestActualVCToolsVersion.ToString(3) $LatestVCToolsVersion = $LatestActualVCToolsVersion.ToString(3)

View File

@@ -26,12 +26,7 @@
"/doc/user-docs/", "/doc/user-docs/",
"/src/tools/ansi-color/", "/src/tools/ansi-color/",
"/src/tools/ColorTool/", "/src/tools/ColorTool/",
"/src/tools/scratch/",
"/src/tools/ConsoleBench/",
"/src/tools/schemes-fragment/",
"/scratch/", "/scratch/",
"/tools/ReleaseEngineering/",
"/policies/",
"Scratch.sln", "Scratch.sln",
], ],
"SuffixFilters": [ "SuffixFilters": [
@@ -49,11 +44,6 @@
".rec", ".rec",
".err", ".err",
"XamlStyler.json", "XamlStyler.json",
".xlsx", ".xlsx"
".vcxproj",
".vcxproj.filters",
".Build.props",
".Build.targets",
"OpenConsole.slnx"
] ]
} }

View File

@@ -3,9 +3,9 @@
<!-- This file is read by XES, which we use in our Release builds. --> <!-- This file is read by XES, which we use in our Release builds. -->
<PropertyGroup Label="Version"> <PropertyGroup Label="Version">
<XesUseOneStoreVersioning>true</XesUseOneStoreVersioning> <XesUseOneStoreVersioning>true</XesUseOneStoreVersioning>
<XesBaseYearForStoreVersion>2026</XesBaseYearForStoreVersion> <XesBaseYearForStoreVersion>2025</XesBaseYearForStoreVersion>
<VersionMajor>1</VersionMajor> <VersionMajor>1</VersionMajor>
<VersionMinor>26</VersionMinor> <VersionMinor>24</VersionMinor>
<VersionInfoProductName>Windows Terminal</VersionInfoProductName> <VersionInfoProductName>Windows Terminal</VersionInfoProductName>
<VersionInfoCulture>1033</VersionInfoCulture> <VersionInfoCulture>1033</VersionInfoCulture>
<!-- The default has a spacing problem --> <!-- The default has a spacing problem -->

View File

@@ -7,17 +7,9 @@ Licensed under the MIT license.
#include <ntcsrmsg.h> #include <ntcsrmsg.h>
#ifdef __cplusplus
extern "C" {
#endif
NTSTATUS CsrClientCallServer( NTSTATUS CsrClientCallServer(
PCSR_API_MSG m, PCSR_API_MSG m,
PCSR_CAPTURE_HEADER CaptureBuffer OPTIONAL, PCSR_CAPTURE_HEADER CaptureBuffer OPTIONAL,
ULONG ApiNumber, ULONG ApiNumber,
ULONG ArgLength ULONG ArgLength
); );
#ifdef __cplusplus
}
#endif

View File

@@ -5,10 +5,6 @@ Licensed under the MIT license.
#pragma once #pragma once
#ifdef __cplusplus
extern "C" {
#endif
#define OB_FILE_OBJECT_TYPE 1 #define OB_FILE_OBJECT_TYPE 1
typedef struct _PORT_MESSAGE { typedef struct _PORT_MESSAGE {
@@ -128,7 +124,3 @@ NTSTATUS NtAlpcQueryInformationMessage(
ULONG Length, ULONG Length,
PULONG ReturnLength PULONG ReturnLength
); );
#ifdef __cplusplus
}
#endif

View File

@@ -3,13 +3,13 @@
<packages> <packages>
<!-- Native packages --> <!-- Native packages -->
<package id="Microsoft.Internal.PGO-Helpers.Cpp" version="0.2.34" targetFramework="native" /> <package id="Microsoft.Internal.PGO-Helpers.Cpp" version="0.2.34" targetFramework="native" />
<package id="Microsoft.Taef" version="10.100.251104001" targetFramework="native" /> <package id="Microsoft.Taef" version="10.93.240607003" targetFramework="native" />
<package id="Microsoft.Windows.CppWinRT" version="2.0.250303.1" targetFramework="native" /> <package id="Microsoft.Windows.CppWinRT" version="2.0.250303.1" targetFramework="native" />
<package id="Microsoft.Internal.Windows.Terminal.ThemeHelpers" version="0.8.250811004" targetFramework="native" /> <package id="Microsoft.Internal.Windows.Terminal.ThemeHelpers" version="0.8.250811004" targetFramework="native" />
<package id="Microsoft.VisualStudio.Setup.Configuration.Native" version="2.3.2262" targetFramework="native" developmentDependency="true" /> <package id="Microsoft.VisualStudio.Setup.Configuration.Native" version="2.3.2262" targetFramework="native" developmentDependency="true" />
<package id="Microsoft.UI.Xaml" version="2.8.4" targetFramework="native" /> <package id="Microsoft.UI.Xaml" version="2.8.4" targetFramework="native" />
<package id="Microsoft.Web.WebView2" version="1.0.1661.34" targetFramework="native" /> <package id="Microsoft.Web.WebView2" version="1.0.1661.34" targetFramework="native" />
<package id="Microsoft.Windows.ImplementationLibrary" version="1.0.250325.1" targetFramework="native" developmentDependency="true" /> <package id="Microsoft.Windows.ImplementationLibrary" version="1.0.240122.1" targetFramework="native" developmentDependency="true" />
<package id="Microsoft.WindowsPackageManager.ComInterop" version="1.8.1911" targetFramework="native" developmentDependency="true" /> <package id="Microsoft.WindowsPackageManager.ComInterop" version="1.8.1911" targetFramework="native" developmentDependency="true" />
<!-- Managed packages --> <!-- Managed packages -->

View File

@@ -1,45 +0,0 @@
From c3be070b7ee42639554555c27dce10c9de7af76c Mon Sep 17 00:00:00 2001
From: "J. Berger" <mail@janaberger.de>
Date: Sat, 1 Nov 2025 17:38:30 +0100
Subject: [PATCH] When using MSVC x86 to compile v12.0.0 or v12.1.0,
conversions from __int64 to a 32bit unsigned int trigger warnings. (#4594)
This is a follow-up for PR #4572.
---
include/fmt/format.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/fmt/format.h b/include/fmt/format.h
index 4a653007..65e19d2d 100644
--- a/include/fmt/format.h
+++ b/include/fmt/format.h
@@ -2534,7 +2534,7 @@ FMT_CONSTEXPR20 auto write_fixed(OutputIt out, const DecimalFP& f,
auto grouping = Grouping(loc, specs.localized());
size += grouping.count_separators(exp);
return write_padded<Char, align::right>(
- out, specs, to_unsigned(size), [&](iterator it) {
+ out, specs, static_cast<size_t>(size), [&](iterator it) {
if (s != sign::none) *it++ = detail::getsign<Char>(s);
it = write_significand(it, f.significand, significand_size, exp,
decimal_point, grouping);
@@ -2550,7 +2550,7 @@ FMT_CONSTEXPR20 auto write_fixed(OutputIt out, const DecimalFP& f,
bool pointy = num_zeros != 0 || significand_size != 0 || specs.alt();
size += 1 + (pointy ? 1 : 0) + num_zeros;
return write_padded<Char, align::right>(
- out, specs, to_unsigned(size), [&](iterator it) {
+ out, specs, static_cast<size_t>(size), [&](iterator it) {
if (s != sign::none) *it++ = detail::getsign<Char>(s);
*it++ = Char('0');
if (!pointy) return it;
@@ -2594,7 +2594,7 @@ FMT_CONSTEXPR20 auto do_write_float(OutputIt out, const DecimalFP& f,
*it++ = Char(exp_char);
return write_exponent<Char>(exp, it);
};
- auto usize = to_unsigned(size);
+ size_t usize = static_cast<size_t>(size);
return specs.width > 0
? write_padded<Char, align::right>(out, specs, usize, write)
: base_iterator(out, write(reserve(out, usize)));
--
2.52.0.vfs.0.5

View File

@@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 88c12148..967b53dd 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -260,7 +260,7 @@ if (FMT_MASTER_PROJECT AND CMAKE_GENERATOR MATCHES "Visual Studio")
join(netfxpath
"C:\\Program Files\\Reference Assemblies\\Microsoft\\Framework\\"
".NETFramework\\v4.0")
- file(WRITE run-msbuild.bat "
+ file(WRITE "${CMAKE_BINARY_DIR}/run-msbuild.bat" "
${MSBUILD_SETUP}
${CMAKE_MAKE_PROGRAM} -p:FrameworkPathOverride=\"${netfxpath}\" %*")
endif ()

View File

@@ -2,10 +2,10 @@ vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH OUT_SOURCE_PATH SOURCE_PATH
REPO fmtlib/fmt REPO fmtlib/fmt
REF "${VERSION}" REF "${VERSION}"
SHA512 f0da82c545b01692e9fd30fdfb613dbb8dd9716983dcd0ff19ac2a8d36f74beb5540ef38072fdecc1e34191b3682a8542ecbf3a61ef287dbba0a2679d4e023f2 SHA512 573b7de1bd224b7b1b60d44808a843db35d4bc4634f72a9edcb52cf68e99ca66c744fd5d5c97b4336ba70b94abdabac5fc253b245d0d5cd8bbe2a096bf941e39
HEAD_REF master HEAD_REF master
PATCHES PATCHES
0001-When-using-MSVC-x86-to-compile-v12.0.0-or-v12.1.0-co.patch fix-write-batch.patch
) )
vcpkg_cmake_configure( vcpkg_cmake_configure(
@@ -22,6 +22,13 @@ vcpkg_cmake_config_fixup()
vcpkg_fixup_pkgconfig() vcpkg_fixup_pkgconfig()
vcpkg_copy_pdbs() vcpkg_copy_pdbs()
if(VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
vcpkg_replace_string("${CURRENT_PACKAGES_DIR}/include/fmt/base.h"
"defined(FMT_SHARED)"
"1"
)
endif()
file(REMOVE_RECURSE file(REMOVE_RECURSE
"${CURRENT_PACKAGES_DIR}/debug/include" "${CURRENT_PACKAGES_DIR}/debug/include"
"${CURRENT_PACKAGES_DIR}/debug/share" "${CURRENT_PACKAGES_DIR}/debug/share"

View File

@@ -1,6 +1,6 @@
{ {
"name": "fmt", "name": "fmt",
"version": "12.1.0", "version": "11.1.4",
"description": "{fmt} is an open-source formatting library providing a fast and safe alternative to C stdio and C++ iostreams.", "description": "{fmt} is an open-source formatting library providing a fast and safe alternative to C stdio and C++ iostreams.",
"homepage": "https://github.com/fmtlib/fmt", "homepage": "https://github.com/fmtlib/fmt",
"license": "MIT", "license": "MIT",

View File

@@ -1,57 +0,0 @@
From fae5556fd4d4850f948aeabee25ddf0280494725 Mon Sep 17 00:00:00 2001
From: lizz <lizz@sensetime.com>
Date: Fri, 10 Apr 2020 23:02:21 +0800
Subject: [PATCH] No trailing space for BuiltStyledStreamWriter
Signed-off-by: lizz <lizz@sensetime.com>
---
src/lib_json/json_writer.cpp | 10 +++++++++-
src/test_lib_json/main.cpp | 4 ++--
2 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/src/lib_json/json_writer.cpp b/src/lib_json/json_writer.cpp
index ee45c43..e22eb17 100644
--- a/src/lib_json/json_writer.cpp
+++ b/src/lib_json/json_writer.cpp
@@ -990,7 +990,15 @@ void BuiltStyledStreamWriter::writeValue(Value const& value) {
writeCommentBeforeValue(childValue);
writeWithIndent(
valueToQuotedStringN(name.data(), name.length(), emitUTF8_));
- *sout_ << colonSymbol_;
+ size_t n = colonSymbol_.size();
+ if ((childValue.type() == objectValue && !childValue.empty()) ||
+ (childValue.type() == arrayValue && !childValue.empty() &&
+ ((cs_ == CommentStyle::All) || isMultilineArray(childValue)))) {
+ // Line-ending colon, so trim any trailing space from it
+ for (; n && colonSymbol_[n - 1] == ' '; --n)
+ ;
+ }
+ sout_->write(colonSymbol_.data(), n);
writeValue(childValue);
if (++it == members.end()) {
writeCommentAfterValueOnSameLine(childValue);
diff --git a/src/test_lib_json/main.cpp b/src/test_lib_json/main.cpp
index 55ab224..28cb043 100644
--- a/src/test_lib_json/main.cpp
+++ b/src/test_lib_json/main.cpp
@@ -2533,7 +2533,7 @@ JSONTEST_FIXTURE_LOCAL(StreamWriterTest, writeNumericValue) {
JSONTEST_FIXTURE_LOCAL(StreamWriterTest, writeArrays) {
Json::StreamWriterBuilder writer;
const Json::String expected("{\n"
- "\t\"property1\" : \n"
+ "\t\"property1\" :\n"
"\t[\n"
"\t\t\"value1\",\n"
"\t\t\"value2\"\n"
@@ -2553,7 +2553,7 @@ JSONTEST_FIXTURE_LOCAL(StreamWriterTest, writeArrays) {
JSONTEST_FIXTURE_LOCAL(StreamWriterTest, writeNestedObjects) {
Json::StreamWriterBuilder writer;
const Json::String expected("{\n"
- "\t\"object1\" : \n"
+ "\t\"object1\" :\n"
"\t{\n"
"\t\t\"bool\" : true,\n"
"\t\t\"nested\" : 123\n"
--
2.52.0.vfs.0.5

View File

@@ -1,36 +0,0 @@
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO open-source-parsers/jsoncpp
REF "${VERSION}"
SHA512 006d81f9f723dcfe875ebc2147449c07c5246bf97dd7b9eee1909decc914b051d6f3f06feb5c3dfa143d28773fb310aabb04a81dc447cc61513309df8eba8b08
HEAD_REF master
PATCHES
0001-No-trailing-space-for-BuildStyledStreamWriter.patch
)
string(COMPARE EQUAL "${VCPKG_LIBRARY_LINKAGE}" "static" JSONCPP_STATIC)
string(COMPARE EQUAL "${VCPKG_CRT_LINKAGE}" "static" STATIC_CRT)
vcpkg_cmake_configure(
SOURCE_PATH "${SOURCE_PATH}"
OPTIONS
-DJSONCPP_WITH_CMAKE_PACKAGE=ON
-DBUILD_STATIC_LIBS=${JSONCPP_STATIC}
-DJSONCPP_STATIC_WINDOWS_RUNTIME=${STATIC_CRT}
-DJSONCPP_WITH_PKGCONFIG_SUPPORT=ON
-DJSONCPP_WITH_POST_BUILD_UNITTEST=OFF
-DJSONCPP_WITH_TESTS=OFF
-DJSONCPP_WITH_EXAMPLE=OFF
-DBUILD_OBJECT_LIBS=OFF
)
vcpkg_cmake_install()
vcpkg_cmake_config_fixup(CONFIG_PATH lib/cmake/jsoncpp)
file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")
vcpkg_copy_pdbs()
vcpkg_fixup_pkgconfig()
vcpkg_install_copyright(FILE_LIST "${SOURCE_PATH}/LICENSE")

View File

@@ -1,17 +0,0 @@
{
"name": "jsoncpp",
"version": "1.9.6",
"description": "JsonCpp is a C++ library that allows manipulating JSON values, including serialization and deserialization to and from strings. It can also preserve existing comment in unserialization/serialization steps, making it a convenient format to store user input files.",
"homepage": "https://github.com/open-source-parsers/jsoncpp",
"license": "MIT",
"dependencies": [
{
"name": "vcpkg-cmake",
"host": true
},
{
"name": "vcpkg-cmake-config",
"host": true
}
]
}

View File

@@ -1,8 +0,0 @@
# Same as the official arm64-windows-static triplet
set(VCPKG_TARGET_ARCHITECTURE arm64)
set(VCPKG_CRT_LINKAGE static)
set(VCPKG_LIBRARY_LINKAGE static)
# ...but with explicit platform toolset, so that future toolsets
# aren't automatically picked up (it defaults to the latest one).
set(VCPKG_PLATFORM_TOOLSET v143)

View File

@@ -1,11 +1,6 @@
# Same as the official arm64-windows-static triplet
set(VCPKG_TARGET_ARCHITECTURE arm64) set(VCPKG_TARGET_ARCHITECTURE arm64)
set(VCPKG_CRT_LINKAGE static) set(VCPKG_CRT_LINKAGE static)
set(VCPKG_LIBRARY_LINKAGE static) set(VCPKG_LIBRARY_LINKAGE static)
# ...but with explicit platform toolset, so that future toolsets
# aren't automatically picked up (it defaults to the latest one).
set(VCPKG_PLATFORM_TOOLSET v143)
set(VCPKG_CXX_FLAGS /fsanitize=address) set(VCPKG_CXX_FLAGS /fsanitize=address)
set(VCPKG_C_FLAGS /fsanitize=address) set(VCPKG_C_FLAGS /fsanitize=address)

View File

@@ -1,11 +1,6 @@
# Same as the official x64-windows-static triplet
set(VCPKG_TARGET_ARCHITECTURE x64) set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE static) set(VCPKG_CRT_LINKAGE static)
set(VCPKG_LIBRARY_LINKAGE static) set(VCPKG_LIBRARY_LINKAGE static)
# ...but with explicit platform toolset, so that future toolsets
# aren't automatically picked up (it defaults to the latest one).
set(VCPKG_PLATFORM_TOOLSET v143)
set(VCPKG_CXX_FLAGS /fsanitize=address) set(VCPKG_CXX_FLAGS /fsanitize=address)
set(VCPKG_C_FLAGS /fsanitize=address) set(VCPKG_C_FLAGS /fsanitize=address)

View File

@@ -1,11 +1,6 @@
# Same as the official x86-windows-static triplet
set(VCPKG_TARGET_ARCHITECTURE x86) set(VCPKG_TARGET_ARCHITECTURE x86)
set(VCPKG_CRT_LINKAGE static) set(VCPKG_CRT_LINKAGE static)
set(VCPKG_LIBRARY_LINKAGE static) set(VCPKG_LIBRARY_LINKAGE static)
# ...but with explicit platform toolset, so that future toolsets
# aren't automatically picked up (it defaults to the latest one).
set(VCPKG_PLATFORM_TOOLSET v143)
set(VCPKG_CXX_FLAGS /fsanitize=address) set(VCPKG_CXX_FLAGS /fsanitize=address)
set(VCPKG_C_FLAGS /fsanitize=address) set(VCPKG_C_FLAGS /fsanitize=address)

View File

@@ -1,8 +0,0 @@
# Same as the official x64-windows-static triplet
set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE static)
set(VCPKG_LIBRARY_LINKAGE static)
# ...but with explicit platform toolset, so that future toolsets
# aren't automatically picked up (it defaults to the latest one).
set(VCPKG_PLATFORM_TOOLSET v143)

View File

@@ -1,8 +0,0 @@
# Same as the official x86-windows-static triplet
set(VCPKG_TARGET_ARCHITECTURE x86)
set(VCPKG_CRT_LINKAGE static)
set(VCPKG_LIBRARY_LINKAGE static)
# ...but with explicit platform toolset, so that future toolsets
# aren't automatically picked up (it defaults to the latest one).
set(VCPKG_PLATFORM_TOOLSET v143)

View File

@@ -63,7 +63,7 @@ When console applications are launched, the Windows Console Host determines whic
2. Overlay settings specified by the user's configured defaults 2. Overlay settings specified by the user's configured defaults
3. Overlay application-specific settings from either the registry or the shortcut file, depending on how the application was launched 3. Overlay application-specific settings from either the registry or the shortcut file, depending on how the application was launched
Note that the registry settings are "sparse" settings repositories, meaning that if a setting isn't present, then whatever value that is already in use remains unchanged. This allows users to have some settings shared amongst all console applications and other settings be specific. Shortcut files, however, store each setting regardless of whether or not it was a default setting. Note that the registry settings are "sparse" settings repositories, meaning that if a setting isn't present, then whatever value that is already in use remains unchanged. This allows users to have some settings shared amongst all console applications and other settings be specific. Shortcut files, however, store each setting regardless of whether it was a default setting or not.
## Known Issues ## Known Issues

View File

@@ -7,7 +7,7 @@ This repository uses [git submodules](https://git-scm.com/book/en/v2/Git-Tools-S
git submodule update --init --recursive git submodule update --init --recursive
``` ```
OpenConsole.slnx may be built from within Visual Studio or from the command-line using a set of convenience scripts & tools in the **/tools** directory: 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:
When using Visual Studio, be sure to set up the path for code formatting. To download the required clang-format.exe file, follow one of the building instructions below and run: When using Visual Studio, be sure to set up the path for code formatting. To download the required clang-format.exe file, follow one of the building instructions below and run:
```powershell ```powershell
@@ -103,7 +103,7 @@ If you want to use .nupkg files instead of the downloaded Nuget package, you can
The Terminal is bundled as an `.msix`, which is produced by the `CascadiaPackage.wapproj` project. To build that project from the commandline, you can run the following (from a window you've already run `tools\razzle.cmd` in): The Terminal is bundled as an `.msix`, which is produced by the `CascadiaPackage.wapproj` project. To build that project from the commandline, you can run the following (from a window you've already run `tools\razzle.cmd` in):
```cmd ```cmd
"%msbuild%" "%OPENCON%\OpenConsole.slnx" /p:Configuration=%_LAST_BUILD_CONF% /p:Platform=%ARCH% /p:AppxSymbolPackageEnabled=false /t:Terminal\CascadiaPackage /m "%msbuild%" "%OPENCON%\OpenConsole.sln" /p:Configuration=%_LAST_BUILD_CONF% /p:Platform=%ARCH% /p:AppxSymbolPackageEnabled=false /t:Terminal\CascadiaPackage /m
``` ```
This takes quite some time, and only generates an `msix`. It does not install the msix. To deploy the package: This takes quite some time, and only generates an `msix`. It does not install the msix. To deploy the package:

View File

@@ -60,8 +60,7 @@
"enum": [ "enum": [
"audible", "audible",
"window", "window",
"taskbar", "taskbar"
"notification"
] ]
} }
}, },
@@ -71,7 +70,6 @@
"audible", "audible",
"taskbar", "taskbar",
"window", "window",
"notification",
"all", "all",
"none" "none"
] ]
@@ -1767,7 +1765,7 @@
] ]
}, },
"ExportBufferAction": { "ExportBufferAction": {
"description": "Arguments corresponding to an exportBuffer Action", "description": "Arguments corresponding to a exportBuffer Action",
"allOf": [ "allOf": [
{ {
"$ref": "#/$defs/ShortcutAction" "$ref": "#/$defs/ShortcutAction"
@@ -2244,7 +2242,7 @@
"$ref": "#/$defs/Icon" "$ref": "#/$defs/Icon"
}, },
"name": { "name": {
"description": "The name that will appear in the command palette. If one isn't provided, the terminal will attempt to automatically generate a name.\nIf name is a string, it will be the name of the command.\nIf name is an object, the key property of the object will be used to lookup a localized string resource for the command", "description": "The name that will appear in the command palette. If one isn't provided, the terminal will attempt to automatically generate a name.\nIf name is a string, it will be the name of the command.\nIf name is a object, the key property of the object will be used to lookup a localized string resource for the command",
"type": [ "type": [
"string", "string",
"object", "object",
@@ -2409,14 +2407,6 @@
"console" "console"
] ]
}, },
"compatibility.ambiguousWidth": {
"default": "narrow",
"description": "Controls the cell width of East Asian Ambiguous characters.",
"enum": [
"narrow",
"wide"
]
},
"copyFormatting": { "copyFormatting": {
"default": true, "default": true,
"description": "When set to `true`, the color and font formatting of selected text is also copied to your clipboard. When set to `false`, only plain text is copied to your clipboard. An array of specific formats can also be used. Supported array values include `html` and `rtf`. Plain text is always copied.", "description": "When set to `true`, the color and font formatting of selected text is also copied to your clipboard. When set to `false`, only plain text is copied to your clipboard. An array of specific formats can also be used. Supported array values include `html` and `rtf`. Plain text is always copied.",
@@ -2472,6 +2462,13 @@
}, },
"type": "array" "type": "array"
}, },
"safeUriSchemes": {
"description": "Specifies a list of URI schemes that are considered safe. No confirmation will be required to open URIs with these schemes.",
"items": {
"type": "string"
},
"type": "array"
},
"rendering.graphicsAPI": { "rendering.graphicsAPI": {
"description": "Direct3D 11 provides a more performant and feature-rich experience, whereas Direct2D is more stable. The default option \"Automatic\" will pick the API that best fits your graphics hardware. If you experience significant issues, consider using Direct2D.", "description": "Direct3D 11 provides a more performant and feature-rich experience, whereas Direct2D is more stable. The default option \"Automatic\" will pick the API that best fits your graphics hardware. If you experience significant issues, consider using Direct2D.",
"type": "string", "type": "string",
@@ -2656,21 +2653,10 @@
"type": "string" "type": "string"
}, },
"warning.confirmCloseAllTabs": { "warning.confirmCloseAllTabs": {
"deprecated": true,
"description": "[Deprecated] Use \"warning.confirmOnClose\" instead.",
"default": true, "default": true,
"description": "When set to \"true\" closing a window with multiple tabs open will require confirmation. When set to \"false\", the confirmation dialog will not appear.",
"type": "boolean" "type": "boolean"
}, },
"warning.confirmOnClose": {
"default": "automatic",
"description": "Controls when a confirmation dialog appears before closing tabs or windows.",
"enum": [
"never",
"automatic",
"always"
],
"type": "string"
},
"useTabSwitcher": { "useTabSwitcher": {
"description": "[Deprecated] Replaced with the \"tabSwitcherMode\" setting.", "description": "[Deprecated] Replaced with the \"tabSwitcherMode\" setting.",
"default": true, "default": true,
@@ -3187,11 +3173,6 @@
"mingw" "mingw"
], ],
"type": "string" "type": "string"
},
"dragDropDelimiter": {
"default": " ",
"description": "The delimiter used when dropping multiple files onto the terminal.",
"type": "string"
} }
} }
}, },

View File

@@ -27,7 +27,6 @@ Two new properties should be added in the json settings file:
2. Both X value and Y values are optional. If any one of them is missing, or the value is invalid, system default value will be used. Examples: 2. Both X value and Y values are optional. If any one of them is missing, or the value is invalid, system default value will be used. Examples:
"1000" equals (1000, 1000)
", 1000" equals (default, 1000) ", 1000" equals (default, 1000)
"1000, " equals (1000, default) "1000, " equals (1000, default)
"," equals (default, default) "," equals (default, default)
@@ -55,7 +54,7 @@ Edge cases:
1. Multiple monitors. The user should be able to set the initial position to any monitors attached. For the monitors on the left side of the major monitor, the initial position values are negative. 1. Multiple monitors. The user should be able to set the initial position to any monitors attached. For the monitors on the left side of the major monitor, the initial position values are negative.
2. If the initial position is larger than the screen resolution and the window top left corner is off-screen, we should let user be able to see and drag the window back on screen. One solution is to set the initial position to the top left corner of the nearest monitor if the top left is off-screen. 2. If the initial position is larger than the screen resolution and the window top left corner is off-screen, we should let user be able to see and drag the window back on screen. One solution is to set the initial position to the top left corner of the nearest monitor if the top left is off-screen.
3. If the user wants to launch maximized and provides an initial position, we should launch the maximized window at the top left corner of the monitor where the position is located. 3. If the user wants to launch maximized and provides an initial position, we should launch the maximized window on the top left corner of the monitor where the position is located.
4. Launch the Terminal on a monitor with custom dpi. Changing the dpi of the monitor will not affect the initial position of the top left corner. So we do not need to handle this case. 4. Launch the Terminal on a monitor with custom dpi. Changing the dpi of the monitor will not affect the initial position of the top left corner. So we do not need to handle this case.
5. Launch the Terminal on a monitor with custom resolution. Changing the resolution will change the available point for the initial position. (2) already covers this case. 5. Launch the Terminal on a monitor with custom resolution. Changing the resolution will change the available point for the initial position. (2) already covers this case.
@@ -73,7 +72,7 @@ The rest of the UI will be the same of the current Terminal experience, except t
Users can only set the initial position and launch mode in the Json file with keyboard. Thus, this will not affect accessibility. Users can only set the initial position and launch mode in the Json file with keyboard. Thus, this will not affect accessibility.
### Reliability ### Reliability
We need to make sure that whatever the initial position is set, the user can access the Terminal window. This is guaranteed because if the top left corner position of the Terminal Window is out of screen, we put it at the top left corner of the screen. We need to make sure that whatever the initial position is set, the user can access the Terminal window. This is guaranteed because if the top left corner position of the Terminal Window is out of screen, we put it on the top left corner of the screen.
### Performance, Power, and Efficiency ### Performance, Power, and Efficiency

View File

@@ -68,7 +68,7 @@ allows the terminal to expose quick actions for:
### User Stories ### User Stories
This is a bit of an unusual section, as this feature was already partially This is a bit of a unusual section, as this feature was already partially
implemented when this spec was written. implemented when this spec was written.
Story | Size | Description Story | Size | Description
@@ -111,7 +111,7 @@ not understanding these sequences originally.
The relevant FinalTerm sequences for marking up the prompt are as follows. The relevant FinalTerm sequences for marking up the prompt are as follows.
![image](ftcs-diagram.png) ![image](FTCS-diagram.png)
* **FTCS_PROMPT**: `OSC 133 ; A ST` * **FTCS_PROMPT**: `OSC 133 ; A ST`
- The start of a prompt. Internally, this sets a marker in the buffer - The start of a prompt. Internally, this sets a marker in the buffer

View File

@@ -189,7 +189,7 @@ However, for actions that _do_ require args, we'll set up a global function that
can be used to parse a json blob into an `IActionArgs`. can be used to parse a json blob into an `IActionArgs`.
Once the `IActionArgs` is built for the keybinding, we'll set it in Once the `IActionArgs` is built for the keybinding, we'll set it in
`AppKeyBindings` with an updated `AppKeyBindings::SetKeyBinding` call. `AppKeyBindings` with a updated `AppKeyBindings::SetKeyBinding` call.
`SetKeyBinding`'s signature will be updated to take a `ActionAndArgs` instead. `SetKeyBinding`'s signature will be updated to take a `ActionAndArgs` instead.
Should an action not need arguments, the `Args` member can be left `null` in the Should an action not need arguments, the `Args` member can be left `null` in the
`ActionAndArgs`. `ActionAndArgs`.

View File

@@ -100,7 +100,7 @@ No expected change
<tr> <tr>
<td><strong>Compatibility</strong></td> <td><strong>Compatibility</strong></td>
<td> <td>
This entire spec outlines how this feature is designed with an emphasis on future This entire spec outlines how this feature is designed with a emphasis on future
compatibility. As such, there are no expected regressions in the future when we compatibility. As such, there are no expected regressions in the future when we
do add support for themes. do add support for themes.
</td> </td>

View File

@@ -141,7 +141,7 @@ Pressing the `openTabSwitcher` keychord again will not close the switcher, it'll
We'll provide a setting that will allow the list of tabs to be presented in either _in-order_ (how the tabs are ordered on the tab bar), or _Most Recently Used Order_ (MRU). MRU means that the tab that the terminal most recently visited will be on the top of the list, and the tab that the terminal has not visited for the longest time will be on the bottom. We'll provide a setting that will allow the list of tabs to be presented in either _in-order_ (how the tabs are ordered on the tab bar), or _Most Recently Used Order_ (MRU). MRU means that the tab that the terminal most recently visited will be on the top of the list, and the tab that the terminal has not visited for the longest time will be on the bottom.
There will be an argument for the `openTabSwitcher` action called `displayOrder`. This can be either `inOrder` or `mruOrder`. Using an argument passed into `openTabSwitcher` would allow the user to have one keybinding to open an MRU Tab Switcher, and different one for the In-Order Tab Switcher. For example: There will be an argument for the `openTabSwitcher` action called `displayOrder`. This can be either `inOrder` or `mruOrder`. Making the setting an argument passed into `openTabSwitcher` would allow the user to have one keybinding to open an MRU Tab Switcher, and different one for the In-Order Tab Switcher. For example:
``` ```
{"keys": ["ctrl+tab"], "command": {"action": "openTabSwitcher", "anchor":"ctrl", "displayOrder":"mruOrder"}} {"keys": ["ctrl+tab"], "command": {"action": "openTabSwitcher", "anchor":"ctrl", "displayOrder":"mruOrder"}}
{"keys": ["ctrl+shift+p"], "command": {"action": "openTabSwitcher", "anchor":"ctrl", "displayOrder":"inOrder"}} {"keys": ["ctrl+shift+p"], "command": {"action": "openTabSwitcher", "anchor":"ctrl", "displayOrder":"inOrder"}}

View File

@@ -103,7 +103,7 @@ This option was not chosen because it added too much overhead for changing a set
### 2: Lock Button ### 2: Lock Button
Every setting will have a lock button next to it. If the lock is locked, that means the setting is being inherited from Global, and the control is disabled. If the user wants to edit the setting, they can click the lock, which will change it to the unlocked lock icon, and the control will become enabled. Every setting will have a lock button next to it. If the lock is locked, that means the setting is being inherited from Global, and the control is disabled. If the user wants to edit the setting, they can click the lock, which will changed it to the unlocked lock icon, and the control will become enabled.
![Locks inheritance](./inheritance-locks.png) ![Locks inheritance](./inheritance-locks.png)

View File

@@ -9,7 +9,7 @@ issue id: #1564
## Abstract ## Abstract
This spec describes the basic functionality of the settings UI, including disabling it, the navigation items, launch methods, and editing of settings. The specific layout of each page will be defined in later design reviews. This spec describes the basic functionality of the settings UI, including disabling it, the navigation items, launch methods, and editing of settings. The specific layout of each page will defined in later design reviews.
## Inspiration ## Inspiration

Some files were not shown because too many files have changed in this diff Show More