479ef264b2
This implements command line matching for `CascadiaSettings::GetProfileForArgs`. The command lines for all user profiles are resolved to absolute file paths, argument quotes are standardized ("canonicalized") and the results are cached. When `GetProfileForArgs` is called with a Commandline() value, we "canonicalize" the argument as well and find the profile that is the longest prefix. If none could be found the default profile is returned. ## PR Checklist * [x] Closes #9458 * [x] Closes #10952 * [x] I work here * [ ] Tests added/passed ## Validation Steps Performed * Open a `cmd.exe` tab in the store-version of WT * Run `start cmd` --> A tab with the `cmd.exe` profile opens * Run `start pwsh.exe` --> A tab with the PowerShell 7 profile opens * Run PowerShell 7 from the start menu --> A tab with the PowerShell 7 profile opens * Create a symlink for PowerShell 7 and launch `pwsh.exe` from there --> A tab with the PowerShell 7 profile opens |
||
---|---|---|
.. | ||
CppCoreCheck | ||
test | ||
til | ||
argb.h | ||
conattrs.hpp | ||
conime.h | ||
conint.h | ||
conpty-static.h | ||
conpty.h | ||
consoletaeftemplates.hpp | ||
contsf.h | ||
cpl_core.h | ||
DefaultSettings.h | ||
HostAndPropsheetIncludes.h | ||
HostSignals.hpp | ||
ITerminalOutputConnection.hpp | ||
ITerminalOwner.hpp | ||
LibraryIncludes.h | ||
operators.hpp | ||
til.h | ||
unicode.hpp | ||
VtIoModes.hpp | ||
WilErrorReporting.h | ||
winrtTaefTemplates.hpp |