[New PowerToy] Launch apps / command with keyboard shortcuts #3350
Summary of the Pull Request
This pull request addresses the requests of issue #3350.
PR Checklist
- [X] Closes: #3350 #4508
- [ ] Communication: I've discussed this with core contributors already. If work hasn't been agreed, this work might be rejected
- [X] Tests: Added/updated and all pass
- [ ] Localization: All end user facing strings can be localized
- [ ] Dev docs: Added/updated
- [X] New binaries: Added on the required places
- [X] JSON for signing for new binaries
- [X] WXS for installer for new binaries and localization folder
- [X] YML for CI pipeline for new test projects
- [X] YML for signed pipeline
- [ ] Documentation updated: If checked, please file a pull request on our docs repo and link it here: #xxx
Detailed Description of the Pull Request / Additional comments
Status: First working code for some review as a DRAFT PR. Needs lots of comments and tweaks. Somethings need to be decided on, like:
- What should happen when a program is already running? (start new, maximize current, etc.). I have coded some decisions for expediency but they are changeable after it's discussed.
- Decide how it should work if PT is running elevated and you want the program to start non-elevated or vice versa. Also, what if the program is already running elevated and PT is not, and vice versa. Nothing is done here.
- I would like to have the ability for key chords (https://github.com/microsoft/PowerToys/issues/7902). I coded this and it works but we don't have a UI to specify them.
- Should we allow "naming" these. (If you do stuff make many that use msedge but use different URLs and the like)
Validation Steps Performed
Basic testing is all that has been done. Settings "Backup & restore" needs an update to the config to because merging the restored config could result in duplicate or weird shortcuts.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (18)
ARGSFORPROGRAM
Chrods
cmdow
direcotry
myar
myarg
mycool
pathis
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
SNAPPROCESS
splitw
STARTINDIRFORPROGRAM
textboxes
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7077523315/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1848) from .github/actions/spell-check/expect.txt and unrecognized words (18)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (19)
ARGSFORPROGRAM
Chrods
CKBH
cmdow
direcotry
myar
myarg
mycool
pathis
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
SNAPPROCESS
splitw
STARTINDIRFORPROGRAM
textboxes
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7087104383/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1848) from .github/actions/spell-check/expect.txt and unrecognized words (19)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@crutkas I think next steps are to look at what I have checked in and see what's needed (see "Additional comments" above).
I feel it might be hard to strike a good balance between power and simplicity with this feature.
How/who can help. This issue is somewhat vague considering how deceptively complex this really can be. When you take into account reshowing windows and various ways an app can be hidden/minimized, programs with multiple windows, elevated processes, etc., you have a lot of scenarios.
Ideally @yuyoyuppe and @dillydylann can help with the UI tweaks 😊
Small thoughts:
- In the future the user should be able to select between three elevation modes (None, RunAs, RunAsUser) for each hotkey entry.
- We should have a global or per hotkey entry setting to let the app start with a new Environment set instead of inheriting them from PowerToys process. (Or we start it in a new environment by default.)
- Is it possible to detach the new app processes from PowerToys/KBM process to run independent.
- Regarding the already running question: If an app is running with multiple windows, how should KBM decided which one it should bring to front. I think it we can only start a new instance.
Small thoughts:
- In the future the user should be able to select between three elevation modes (None, RunAs, RunAsUser) for each hotkey entry.
- We should have a global or per hotkey entry setting to let the app start with a new Environment set instead of inheriting them from PowerToys process. (Or we start it in a new environment by default.)
- Is it possible to detach the new app processes from PowerToys/KBM process to run independent.
- Regarding the already running question: If an app is running with multiple windows, how should KBM decided which one it should bring to front. I think it we can only start a new instance.
Great small thoughts, thanks!
For:
- This is the plan, for day-1, I think this is needed for "MLP" as @crutkas would say.
- I agree, I think. Is this how it's done already for something PTRun? I don't think we're doing this anywhere right now are we?
- What does this mean? I don't think this is the case now (closing PT does not close apps started this way). Can you explain more?
- A LOT of programs use multiple hidden windows. I don't think this is something you can safely determine from examination of the running process. I feel it will also need to be a day-1 option (MLP again), for each kb shortcut. Options being only, "Allow more than one instance", yes or no. This is also "weird" since some programs like msedge bunch all processes into one window (tabs). So I think the default for this should be yes. I think most of the time you'd want a new instance. Also, some programs already manage "single instance-ness" inherently (e.g. notepad++). Here it's safest to just try to start another and let it figure itself out, since it should know best. I think we'll need to get a little farther and test to see what feels right.
Small thoughts:
- In the future the user should be able to select between three elevation modes (None, RunAs, RunAsUser) for each hotkey entry.
- We should have a global or per hotkey entry setting to let the app start with a new Environment set instead of inheriting them from PowerToys process. (Or we start it in a new environment by default.)
- Is it possible to detach the new app processes from PowerToys/KBM process to run independent.
- Regarding the already running question: If an app is running with multiple windows, how should KBM decided which one it should bring to front. I think it we can only start a new instance.
Great small thoughts, thanks!
For:
- This is the plan, for day-1, I think this is needed for "MLP" as @crutkas would say.
- I agree, I think. Is this how it's done already for something PTRun? I don't think we're doing this anywhere right now are we?
- What does this mean? I don't think this is the case now (closing PT does not close apps started this way). Can you explain more?
- A LOT of programs use multiple hidden windows. I don't think this is something you can safely determine from examination of the running process. I feel it will also need to be a day-1 option (MLP again), for each kb shortcut. Options being only, "Allow more than one instance", yes or no. This is also "weird" since some programs like msedge bunch all processes into one window (tabs). So I think the default for this should be yes. I think most of the time you'd want a new instance. Also, some programs already manage "single instance-ness" inherently (e.g. notepad++). Here it's safest to just try to start another and let it figure itself out, since it should know best. I think we'll need to get a little farther and test to see what feels right.
@jefflord For: 2. No, PT Run reacts when the environment variables change and updates it's process variable set. On opening a process the variables of the PT Run process are used. But for KBM I think this is to much and opening the new process using a fresh user environment set should be easier. (https://github.com/microsoft/PowerToys/blob/main/src/modules/launcher/PowerLauncher/Helper/EnvironmentHelper.cs) 3. The point is that we have multiple issues where people complaining that processes spawned by PT Run are children of PT Run.
@htcfreek OK, so we want to avoid this if we can:
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (19)
ARGSFORPROGRAM
Chrods
CKBH
cmdow
direcotry
myar
myarg
mycool
pathis
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
SNAPPROCESS
splitw
STARTINDIRFORPROGRAM
textboxes
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7128219954/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (19)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@yuyoyuppe, https://github.com/microsoft/PowerToys/pull/30121/commits/f8b83785b78da4cc8719ffe9daeedd23155aba3d worked great, thanks so much!
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (11)
ARGSFORPROGRAM
CKBH
cmdow
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7136804358/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (11)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@yuyoyuppe
I have a place to store the second key of the chord in the Shortcut class. I also tested it a bit and it's working pretty well already. However I had to hard code a second-key of the chord. Now we need to update this UI to allow a second key, maybe something like this?
What do you think? Got a better idea?
This looks fine to me! Maybe @niels9001 could suggest something on this.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (12)
ARGSFORPROGRAM
CKBH
cmdow
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7148672459/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (12)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
I have a place to store the second key of the chord in the Shortcut class. I also tested it a bit and it's working pretty well already. However I had to hard code a second-key of the chord. Now we need to update this UI to allow a second key, maybe something like this?
![]()
What do you think? Got a better idea?
@jefflord What are chords? And shouldn't the phrase "Allow Chords" not be written as "Allow chords"?
And the background from the "allow chords" control isn't white. It seems to have the wrong color.
@htcfreek
@jefflord What are chords? And shouldn't the phrase "Allow Chords" not be written as "Allow chords"?
And the background from the "allow chords" control isn't white. It seems to have the wrong color.
-
Chords (two separate keypress actions) are described by separating the two keypresses with a space. For example, Ctrl+K Ctrl+C.see https://code.visualstudio.com/docs/getstarted/keybindings - With regards "Allow Chords", yes, sure.
- On the color, this is a mockup with paint.net, to get buy-in. I should have made that more clear.
~Isn't this mostly pointless?~ It's just a weird combobox that does not work like most...
Nobody knows what these are:
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (12)
ARGSFORPROGRAM
CKBH
cmdow
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7155159526/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (12)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (13)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7159057999/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (13)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (13)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7159699479/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (13)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (14)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
CRTL
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7159905312/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (14)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (17)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
CRTL
ELEVATIONTYPEDIFFERENTUSER
ELEVATIONTYPEELEVATED
ELEVATIONTYPENORMAL
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7159961632/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (17)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (17)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
CRTL
ELEVATIONTYPEDIFFERENTUSER
ELEVATIONTYPEELEVATED
ELEVATIONTYPENORMAL
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7162280234/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (17)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (17)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
CRTL
ELEVATIONTYPEDIFFERENTUSER
ELEVATIONTYPEELEVATED
ELEVATIONTYPENORMAL
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7162519380/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (17)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (17)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
CRTL
ELEVATIONTYPEDIFFERENTUSER
ELEVATIONTYPEELEVATED
ELEVATIONTYPENORMAL
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN nodiscard pcs qps roundf RUS RValue SVE tonos wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7167551111/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1850) from .github/actions/spell-check/expect.txt and unrecognized words (17)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
@htcfreek
Starting the new processes where they are not seen as child processes does not seem straightforward. There are some workarounds, but I don't see anything reliable other than starting stub/shim process that will start then real process, then kill itself. This would break the chain, but I don't know it's worth that, not sure.
Also, there are some good reasons Windows does this and does not make it simple to get around.
What do you think?
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (17)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
CRTL
ELEVATIONTYPEDIFFERENTUSER
ELEVATIONTYPEELEVATED
ELEVATIONTYPENORMAL
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN LAlt Lambson langword nodiscard pcs qps roundf RUS RValue SVE tonos weakme wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7176317340/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1857) from .github/actions/spell-check/expect.txt and unrecognized words (17)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
Starting the new processes where they are not seen as child processes does not seem straightforward. There are some workarounds, but I don't see anything reliable other than starting stub/shim process that will start then real process, then kill itself. This would break the chain, but I don't know it's worth that, not sure.
Also, there are some good reasons Windows does this and does not make it simple to get around.
What do you think?
@jefflord Sounds okay to me. Now we know it is impossible.
Starting the new processes where they are not seen as child processes does not seem straightforward. There are some workarounds, but I don't see anything reliable other than starting stub/shim process that will start then real process, then kill itself. This would break the chain, but I don't know it's worth that, not sure. Also, there are some good reasons Windows does this and does not make it simple to get around. What do you think?
@jefflord Sounds okay to me. Now we know it is impossible.
htcfreek, impossible? I did not say that. 😂
@check-spelling-bot Report
:red_circle: Please review
See the :open_file_folder: files view, the :scroll:action log, or :memo: job summary for details.
Unrecognized words (17)
ALLOWCHORDS
ARGSFORPROGRAM
CKBH
cmdow
CRTL
ELEVATIONTYPEDIFFERENTUSER
ELEVATIONTYPEELEVATED
ELEVATIONTYPENORMAL
PATHTOPROGRAM
PROCESSENTRY
ritchielawrence
runasuser
SNAPPROCESS
STARTINDIRFORPROGRAM
tlhelp
Toolhelp
wcsicmp
Previously acknowledged words that are now absent
CHT constexpr DEU hashcode HEB JPN LAlt Lambson langword nodiscard pcs qps roundf RUS RValue SVE tonos weakme wifi 🫥To accept these unrecognized words as correct and remove the previously acknowledged and now absent words, you could run the following commands
... in a clone of the [email protected]:jefflord/PowerToys.git repository
on the launch-apps-3350 branch (:information_source: how do I use this?):
curl -s -S -L 'https://raw.githubusercontent.com/check-spelling/check-spelling/v0.0.22/apply.pl' |
perl - 'https://github.com/microsoft/PowerToys/actions/runs/7190244334/attempts/1'
Available :books: dictionaries could cover words (expected and unrecognized) not in the :blue_book: dictionary
This includes both expected items (1857) from .github/actions/spell-check/expect.txt and unrecognized words (17)
| Dictionary | Entries | Covers | Uniquely |
|---|---|---|---|
| cspell:r/src/r.txt | 543 | 1 | 1 |
| cspell:cpp/src/people.txt | 23 | 1 | |
| cspell:cpp/src/ecosystem.txt | 51 | 1 |
Consider adding them (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
with:
extra_dictionaries:
cspell:r/src/r.txt
cspell:cpp/src/people.txt
cspell:cpp/src/ecosystem.txt
To stop checking additional dictionaries, add (in .github/workflows/spelling2.yml) for uses: check-spelling/[email protected] in its with:
check_extra_dictionaries: ''
If the flagged items are :exploding_head: false positives
If items relate to a ...
-
binary file (or some other file you wouldn't want to check at all).
Please add a file path to the
excludes.txtfile matching the containing file.File paths are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your files.
^refers to the file's path from the root of the repository, so^README\.md$would exclude README.md (on whichever branch you're using). -
well-formed pattern.
If you can write a pattern that would match it, try adding it to the
patterns.txtfile.Patterns are Perl 5 Regular Expressions - you can test yours before committing to verify it will match your lines.
Note that patterns can't match multiline strings.
Bump @yuyoyuppe, @htcfreek, @crutkas
A quick update, things are going well, some questions:
- What do we use for File and Directory picker now? I see
ShellGetFolder.GetFolderDialogI can dig around, but do we have anything ready to use in the C++ world? We need file and directory picking for this feature. - What should happen if the program cannot be started either because the program is not found, the "start in" directory does not exists or other reason? I was planning on using toast. Example below. Sound good?
- I need some help with the UI, who can help with this? If there are no volunteers, I will just do my best. Mainly need things like alignment, location of items, format and layout type stuff.
- Sometimes new programs don't show as foregrounded. Anyone got tips to ensure this happens?
Error toast:
Things I am planning to support/test:
- URL/doc/file (URI) in default app
- Option for "If already running", Choices are: Foreground program, Close program, Start another, Do nothing
- Option for "Hide window"