* Init EnvironmentVariables UI project * Models TitleBar MainPage init Icon * User and system variables * Profiles init * XAML cleanup * Missing ItemTemplate * EditDialog * ModuleInterface * Signing and processes lists * Installer * spellcheck * Fix ARM64 build and consolidate packages * spellcheck2 * Fix installer * Single instance. C# telemetry. Wait on PT pid * ElevationHelper * Add profile wip * Init EnvironmentVariables UI project * Models TitleBar MainPage init Icon * User and system variables * Profiles init * XAML cleanup * Missing ItemTemplate * EditDialog * ModuleInterface * Signing and processes lists * Installer * spellcheck * Fix ARM64 build and consolidate packages * spellcheck2 * Fix installer * Single instance. C# telemetry. Wait on PT pid * ElevationHelper * Add profile wip * show run as administrator in title (#28516) * Environment Variables added to Run plugin (#28466) * UI tweaks * Remove style * Add profile - init working * Applied variables * Read/Write profiles * Fixes * Add separator and fix loading profiles * Only allow to edit System vars if running elevated * Add tmp progress ring to show applying changes progress Ignore not needed json fields * Remove variable and profile logic * Do not read data async Update System and User variables on change * Add isCorrectlyApplied() * Sort variables in Applied variables * WIP WndProc * spellcheck * Revert "WIP WndProc" This reverts commit0c0b6c67de. * WHY CRASH??? * UI tweaks * WIP modified state warning * Add cancel button in dialogs * Add buttons validations * Set variables - fire and forget notify * Revert "Revert "WIP WndProc"" This reverts commit1b2306eeb7. * Listen to WM_SETTINGSCHANGED Add Infobar reload button * spellcheck * spellcheck again * Fix build * InfoBar runAsAdmin visibility * Fix comment * Confirm dialog when deleting variable Fix add variable button when creating profile * Edit profile * Sort variables on Load * Select existing variables on edit * Add default variable * Fix adding existing vars to profile * update notice.md * Handle PATH properly * Add tooltips and fix dialogs text wrapping * Fix applied values for duplicates Fix add/eddit variable txt box validation * Add horizontal scroll bar for applied values * Fix duplicate variables handling Fix user variable handling and preview * spellcheck * Try fix spellcheck * Revert "spellcheck" This reverts commitee76231974. * Revert "Try fix spellcheck" This reverts commitdc8f04afb9. * Fix path and duplicates conflict * Fix PATH handling Fix unapply on delete active variable Fix ordering in applied variables * Show variables as lists and add drag-to-reorder feature * Only show specific variables as list Update list in edit dialog on editing the value * spellcheck * Update GPO policy * Add Edit and Remove variable buttons Remove context menu * Remove drag&drop when editing list variable and add buttons to move up/down * Fix Edit profile dialog title * Fix backup and restore variables when editing variable from applied profile * Apply var to system WIP * Tweaks * Simplify edit variable logic * Minor fixes * Spellcheck * Update src/modules/EnvironmentVariables/EnvironmentVariables/app.manifest Co-authored-by: Jaime Bernardo <jaime@janeasystems.com> * spellcheck 2 * Remove unneeded string * Add more telemetry * Do not allow adding existing variables with the same name into the profile * Adding icon * Fix the crash when opening existing variables dialog * Update Settings and OOBE screenshots * Fix crash when malformed profiles.json and jsonignore not needed properties * Fix selecting duplicates in existing variables dialog * Add user variable name limit (<255 chars) Check if profile is applicable on apply Show message if profile is not applicable * XamlStyling * Better Flyout positioning Add Cancel button to the flyout * Fix UI glitches by using ItemsControl (no virtualization) * Fix spellcheck * Fix XAML style * Add horizontal scrollbar to applied variables * Revert to ItemsRepeater * Fix UI glitches by adding a decent minimum cache * Fixing UI bugs * Fix spellcheck * Fix crash while trying to edit a User variable when there's no Parent profile * Fix issue overwriting backup var when you edit var on applied profile * Fix nuking of variables when adding to applied profile * Fix profile not being saved when deleting a variable * Fix ValuesList empty crash, issues and no serialization * fix spellcheck * Allow in-line edit of list variables * Fix xaml style * Fix add profile variable cancel button logic * Fix add profile variable cancel button logic - clean the list * Bump VerticalCacheLength to 10 as in some cases UI glitch on expanding System variables was still present * Fix profile Add variable button enable/disable logic * Remove unneeded using * Add to Dashboard --------- Co-authored-by: Niels Laute <niels.laute@live.nl> Co-authored-by: Davide Giacometti <davide.giacometti@outlook.it> Co-authored-by: Jaime Bernardo <jaime@janeasystems.com>
Microsoft PowerToys
How to use PowerToys | Downloads & Release notes | Contributing to PowerToys | What's Happening | Roadmap
Build status
| Architecture | Solution (Main) | Solution (Stable) | Installer (Main) |
|---|---|---|---|
| x64 | |||
| ARM64 |
About
Microsoft PowerToys is a set of utilities for power users to tune and streamline their Windows experience for greater productivity. For more info on PowerToys overviews and how to use the utilities, or any other tools and resources for Windows development environments, head over to learn.microsoft.com!
Installing and running Microsoft PowerToys
Requirements
- Windows 11 or Windows 10 version 2004 (code name 20H1 / build number 19041) or newer.
- Our installer will install the following items:
- Microsoft Edge WebView2 Runtime bootstrapper. This will install the latest version.
Via GitHub with EXE [Recommended]
Go to the Microsoft PowerToys GitHub releases page and click on Assets at the bottom to show the files available in the release. Please use the appropriate PowerToys installer that matches your machine's architecture and install scope. For most, it is x64 and per-user.
| Description | Filename | sha256 hash |
|---|---|---|
| Per user - x64 | PowerToysUserSetup-0.74.1-x64.exe | 748BF7BA33913237D36D6F48E3839D0C8035967305137A17DEFF39D775735C81 |
| Per user - ARM64 | PowerToysUserSetup-0.74.1-arm64.exe | F5DAA89A9CF3A2805E121085AFD056A890F241A170FAB5007AA58E2755C88C54 |
| Machine wide - x64 | PowerToysSetup-0.74.1-x64.exe | 298C6F4E4391BDC06E128BED86A303C3300A68EAF754B4630AF7542C78C0944A |
| Machine wide - ARM64 | PowerToysSetup-0.74.1-arm64.exe | A65F3C300A48F9F81312B7FC7B306382CB87F591612D0CEC7E5C0E47E868904B |
This is our preferred method.
Via Microsoft Store
Install from the Microsoft Store's PowerToys page. You must be using the new Microsoft Store which is available for both Windows 11 and Windows 10.
Via WinGet
Download PowerToys from WinGet. Updating PowerToys via winget will respect current PowerToys installation scope. To install PowerToys, run the following command from the command line / PowerShell:
User scope installer [default]
winget install Microsoft.PowerToys -s winget
Machine-wide scope installer
winget install --scope machine Microsoft.PowerToys -s winget
Other install methods
There are community driven install methods such as Chocolatey and Scoop. If these are your preferred install solutions, you can find the install instructions there.
Third-Party Run Plugins
There is a collection of third-party plugins created by the community that aren't distributed with PowerToys.
Contributing
This project welcomes contributions of all types. Besides coding features / bug fixes, other ways to assist include spec writing, design, documentation, and finding bugs. We are excited to work with the power user community to build a set of tools for helping you get the most out of Windows.
We ask that before you start work on a feature that you would like to contribute, please read our Contributor's Guide. We would be happy to work with you to figure out the best approach, provide guidance and mentorship throughout feature development, and help avoid any wasted or duplicate effort.
Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you grant us the rights to use your contribution and that you have permission to do so.
For guidance on developing for PowerToys, please read the developer docs for a detailed breakdown. This includes how to setup your computer to compile.
What's Happening
PowerToys Roadmap
Our prioritized roadmap of features and utilities that the core team is focusing on.
0.74 - September 2023 Update
In this release, we focused on stability and improvements.
Highlights
- Upgraded to Windows App SDK 1.4.1, increasing stability of WinUI3 utilities. Thanks @dongle-the-gadget for starting the upgrade!
- Text Extractor was upgraded to its version 2.0, with a new overlay, table mode and more Quality of Life improvements. Thanks @TheJoeFin!
- Improved FancyZones stability, fixing some layout resets and improving handling of newly created windows on Windows 11.
- Fixed many silent crashes that were reported to Watson and the user's event viewer.
General
- Turning animations off in Windows Settings will now also turn them off in PowerToys.
- Upgraded the Windows App SDK dependency to 1.4.1. Thanks @dongle-the-gadget for the original 1.4.0 upgrade!
- Show in the thumbnail label and application titles when running as administrator. Thanks @davidegiacometti!
- Upgraded the Win UI Community Toolkit dependency to 8.0. Thanks @niels9001!
Awake
- Added down-sampled variants to the application's icon. Thanks @morriscurtis!
Color Picker
- After adding a new color in the editor, the history will scroll the new color into view. Thanks @peerpalo!
Crop and Lock
- Fixed a Crop and Lock crash that would occur when trying to reparent a window crashes the target application. An error message is shown instead.
FancyZones
- Set the process and main thread priority to normal.
- Fixed handling newly created windows on Windows 11.
- Fixed scenarios where opening the FancyZones Editor would reset the layouts.
File Explorer add-ons
- Optimized CPU usage for generating SVG thumbnails.
- Improved handling of Gcode Thumbnails, including JPG and QOI formats. Thanks @pedrolamas!
- Better handled errors when sending telemetry, which were causing reported crashes.
- Fixed some thumbnails not being shown centered like before the optimization.
File Locksmith
- Shows files opened by processes with PID greater than 65535. Thanks @poke30744!
- Fixed a GDI object leak in the context menu which would crash Explorer.
Find My Mouse
- Added new activation methods, including by hotkey. Thanks @davidegiacometti!
Hosts File Editor
- Ignore the default ACME sample entries in the hosts file. Thanks @davidegiacometti!
- Improved save error handling and added better error messages. Thanks @davidegiacometti!
- Corrected a check for an error when signaling the application to start as administrator.
- Refactored the context menu. Thanks @davidegiacometti!
- Fixed dialogs overlapping the title bar after the upgrade to Windows App SDK 1.4. Thanks @davidegiacometti!
Keyboard Manager
- Distinguish between the regular minus key and the numpad minus key.
Mouse Without Borders
- Fixed a crash when trying to restart the application.
Peek
- Using Peek on HTML files will show a white background by default, similar to a browser's default behavior.
- Fix a white flash on Dark theme when switching file and improved the development file preview detection and adjustments.
PowerRename
- Fixed a crash caused by big counter values on the new enumeration method.
PowerToys Run
- It's now possible to select which shell is used by the Shell plugin.
- A combobox option type was added to the plugin options.
- Fixed a bug in the Calculator plugin that was causing decimal numbers to be misinterpreted on locales where the dot (
.) character isn't used as a decimal or digit separator. - Improved the Program plugin stability when it fails to load a program's thumbnail at startup.
- The use of Pinyin for querying some plugins can now be turned on in Settings. Thanks @ChaseKnowlden!
- Refactored option types for plugin and added number, string and composite types to be used in the future. Thanks @htcfreek!
- Fixed the entry for searching for Windows updates in the Settings plugin. Thanks @htcfreek!
Quick Accent
- The "All languages" character set is now calculated by programmatically querying the characters for every available language. Thanks @dannysummerlin!
- Added é to the Norwegian and Swedish languages. Thanks @Aaron-Junker!
- Added a runtime cache to the "All languages" character set, to only calculate accents once per key.
Registry Preview
- Fixed focusing issues at startup.
- Improved the data visualization to show data in a similar way to the Windows Registry Editor. Thanks @dillydylann!
Runner
- Fixed hanging when a bug report was generated from the flyout. Thanks @davidegiacometti!
Settings
- Improved the way the OOBE window reacts to Windows theme change.
- Fixed an issue that made it impossible to change the "Switch between windows in the current zone" "Next window" shortcut for FancyZones.
- Fixed a crash when entering a duplicate name for a color in the Color Picker page and improved clean up when cancelling a color edit. Thanks @davidegiacometti!
Text Extractor
- Text Extractor 2.0, with a new overlay, table mode and more Quality of Life improvements. Thanks @TheJoeFin!
Documentation
- SECURITY.md was updated from 0.0.2 to 0.0.9. Thanks @Aaron-Junker!
- Improved the README and main development document for clarity and completeness. Thanks @codeofdusk and @aprilbbrockhoeft!
Development
- Fixed PowerToys Run DateTime plugin tests that were failing depending on locale, so that they can be run correctly on all dev machines.
- Fixed PowerToys Run System plugin tests that were failing for certain network interfaces, so that they can be run correctly on all dev machines. Thanks @snickler!
- Fixed a markdown bug on the GitHub /helped command.
- Switched build pipelines to a new agent pool. Thanks @DHowett!
- New .cs files created in Visual Studio get the header added automatically. Thanks @davidegiacometti!
What is being planned for version 0.75
For v0.75, we'll work on the items below:
-
Language selection
-
.NET 8 upgrade
-
Policy support for managing PowerToys Run plugins. Attention: A breaking change is planned (for 0.75), in which each plugin has to declare its identifier programmatically so that it can be controlled through GPO. For third-party plugin developers, please check https://github.com/microsoft/PowerToys/pull/27468 for more details.
-
New utility: Environment Variables Editor. Here's a Work in Progress preview:
- New Settings homepage. Here's a Work in Progress preview:
- Modernize and refresh the UX of PowerToys based on WPF. Here's Work in Progress previews for the modules "PowerToys Run" and "Color Picker":
- Stability / bug fixes
PowerToys Community
The PowerToys team is extremely grateful to have the support of an amazing active community. The work you do is incredibly important. PowerToys wouldn’t be nearly what it is today without your help filing bugs, updating documentation, guiding the design, or writing features. We want to say thank you and take time to recognize your work. Month by month, you directly help make PowerToys a better piece of software.
Code of Conduct
This project has adopted the Microsoft Open Source Code of Conduct.
Privacy Statement
The application logs basic telemetry. Our Telemetry Data page (Coming Soon) has the trends from the telemetry. Please read the Microsoft privacy statement for more information.
