Safeguarding end user links in settings (#4226)
* first adjustment to wiki move * Image Resizer and deleting imgs for FZ * updating stuff to aka links * updating app to leverage aka links * moving files to wiki * KBM adjustment * updating * getting PT Run moved over * Shortcut guide and fixing launcher's readme text * Update README.md * img for shortcut guide moved to wiki * updated setting img to be aka link as well
40
README.md
@ -14,31 +14,16 @@ Microsoft PowerToys is a set of utilities for power users to tune and streamline
|
||||
|
||||
### FancyZones
|
||||
|
||||
[<img align="left" src="./doc/images/overview/FancyZones_small.png" />](/src/modules/fancyzones/) [FancyZones](/src/modules/fancyzones/) is a window manager that makes it easy to create complex window layouts and quickly position windows into those layouts.
|
||||
[<img align="left" src="./doc/images/overview/FancyZones_small.png" />](https://aka.ms/PowerToysOverview_FancyZones) [FancyZones](https://aka.ms/PowerToysOverview_FancyZones) is a window manager that makes it easy to create complex window layouts and quickly position windows into those layouts.
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
### Shortcut Guide
|
||||
### File Explorer Add-ons (Preview Panes)
|
||||
|
||||
[<img align="left" src="./doc/images/overview/Shortcut guide_small.png" />](/src/modules/shortcut_guide) [Windows key shortcut guide](/src/modules/shortcut_guide) appears when a user holds the Windows key down for more than one second and shows the available shortcuts for the current state of the desktop.
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
### PowerRename
|
||||
|
||||
[<img align="left" src="./doc/images/overview/PowerRename_small.PNG" />](/src/modules/powerrename) [PowerRename](/src/modules/powerrename) is a Windows Shell Extension for advanced bulk renaming using search and replace or regular expressions. PowerRename allows simple search and replace or more advanced regular expression matching. While you type in the search and replace input fields, the preview area will show what the items will be renamed to. PowerRename then calls into the Windows Explorer file operations engine to perform the rename. This has the benefit of allowing the rename operation to be undone after PowerRename exits. This code is based on [Chris Davis's SmartRename](https://github.com/chrdavis/SmartRename).
|
||||
<br>
|
||||
<br>
|
||||
|
||||
### File Explorer (Preview Panes)
|
||||
|
||||
[<img align="left" src="./doc/images/overview/PowerPreview_small.PNG" />](/src/modules/previewpane) [File Explorer](/src/modules/previewpane) add-ons right now are just limited to Preview Pane additions for File Explorer. Preview Pane is an existing feature in the File Explorer. To enable it, you just click the View tab in the ribbon and then click "Preview Pane".
|
||||
[<img align="left" src="./doc/images/overview/PowerPreview_small.PNG" />](https://aka.ms/PowerToysOverview_FileExplorerAddOns) [File Explorer](https://aka.ms/PowerToysOverview_FileExplorerAddOns) add-ons right now are just limited to Preview Pane additions for File Explorer. Preview Pane is an existing feature in the File Explorer. To enable it, you just click the View tab in the ribbon and then click "Preview Pane".
|
||||
|
||||
PowerToys will now enable two types of files to be previewed: Markdown (.md) & SVG (.svg)
|
||||
<br>
|
||||
@ -46,7 +31,7 @@ PowerToys will now enable two types of files to be previewed: Markdown (.md) & S
|
||||
|
||||
### Image Resizer
|
||||
|
||||
[<img align="left" src="./doc/images/overview/ImageResizer_small.png" />](/src/modules/imageresizer) [Image Resizer](/src/modules/imageresizer) is a Windows Shell Extension for quickly resizing images. With a simple right click from File Explorer, resize one or many images instantly. This code is based on [Brice Lambson's Image Resizer](https://github.com/bricelam/ImageResizer).
|
||||
[<img align="left" src="./doc/images/overview/ImageResizer_small.png" />](https://aka.ms/PowerToysOverview_ImageResizer) [Image Resizer](https://aka.ms/PowerToysOverview_ImageResizer) is a Windows Shell Extension for quickly resizing images. With a simple right click from File Explorer, resize one or many images instantly. This code is based on [Brice Lambson's Image Resizer](https://github.com/bricelam/ImageResizer).
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
@ -54,16 +39,29 @@ PowerToys will now enable two types of files to be previewed: Markdown (.md) & S
|
||||
|
||||
### Keyboard Manager
|
||||
|
||||
[<img align="left" src="./doc/images/overview/KBM_small.png" />](src/modules/keyboardmanager/) [Keyboard Manager](src/modules/keyboardmanager/) allows you to customize the keyboard to be more productive by remapping keys and creating your own keyboard shortcuts. This PowerToy requires Windows 10 1903 (build 18362) or later.
|
||||
[<img align="left" src="./doc/images/overview/KBM_small.png" />](https://aka.ms/PowerToysOverview_KeyboardManager) [Keyboard Manager](https://aka.ms/PowerToysOverview_KeyboardManager) allows you to customize the keyboard to be more productive by remapping keys and creating your own keyboard shortcuts. This PowerToy requires Windows 10 1903 (build 18362) or later.
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
### PowerRename
|
||||
|
||||
[<img align="left" src="./doc/images/overview/PowerRename_small.PNG" />](https://aka.ms/PowerToysOverview_PowerRename) [PowerRename](https://aka.ms/PowerToysOverview_PowerRename) is a Windows Shell Extension for advanced bulk renaming using search and replace or regular expressions. PowerRename allows simple search and replace or more advanced regular expression matching. While you type in the search and replace input fields, the preview area will show what the items will be renamed to. PowerRename then calls into the Windows Explorer file operations engine to perform the rename. This has the benefit of allowing the rename operation to be undone after PowerRename exits. This code is based on [Chris Davis's SmartRename](https://github.com/chrdavis/SmartRename).
|
||||
<br>
|
||||
|
||||
### PowerToys Run
|
||||
|
||||
[<img align="left" src="./doc/images/overview/PowerLauncher_small.png" />](src/modules/launcher/) [PowerToys Run](src/modules/launcher/) is a new toy in PowerToys that can help you search and launch your app instantly with a simple alt-space and start typing! It is open source and modular for additional plugins. Window Walker is now inside too! This PowerToy requires Windows 10 1903 (build 18362) or later.
|
||||
[<img align="left" src="./doc/images/overview/PowerLauncher_small.png" />](https://aka.ms/PowerToysOverview_PowerToysRun) [PowerToys Run](https://aka.ms/PowerToysOverview_PowerToysRun) is a new toy in PowerToys that can help you search and launch your app instantly with a simple alt-space and start typing! It is open source and modular for additional plugins. Window Walker is now inside too! This PowerToy requires Windows 10 1903 (build 18362) or later.
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
||||
### Shortcut Guide
|
||||
|
||||
[<img align="left" src="./doc/images/overview/Shortcut guide_small.png" />](https://aka.ms/PowerToysOverview_ShortcutGuide) [Windows key shortcut guide](https://aka.ms/PowerToysOverview_ShortcutGuide) appears when a user holds the Windows key down for more than one second and shows the available shortcuts for the current state of the desktop.
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
<br>
|
||||
|
Before Width: | Height: | Size: 2.4 MiB |
Before Width: | Height: | Size: 9.0 MiB |
Before Width: | Height: | Size: 1.4 MiB |
Before Width: | Height: | Size: 8.6 MiB |
Before Width: | Height: | Size: 6.5 MiB |
Before Width: | Height: | Size: 16 MiB |
Before Width: | Height: | Size: 762 KiB |
Before Width: | Height: | Size: 405 KiB |
Before Width: | Height: | Size: 588 KiB |
Before Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 3.1 MiB |
Before Width: | Height: | Size: 1.3 MiB |
Before Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 1.1 MiB |
Before Width: | Height: | Size: 1.2 MiB |
Before Width: | Height: | Size: 858 B |
Before Width: | Height: | Size: 641 KiB |
Before Width: | Height: | Size: 31 KiB |
Before Width: | Height: | Size: 73 KiB |
@ -276,9 +276,9 @@
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"
|
||||
Margin="{StaticResource XSmallBottomMargin}"/>
|
||||
|
||||
<Image MaxWidth="240" Source="https://user-images.githubusercontent.com/9866362/77859136-f04ae880-7207-11ea-8a7f-4295342fe319.gif" />
|
||||
<Image MaxWidth="240" Source="https://aka.ms/powerToysFancyZoneSettingImage" />
|
||||
|
||||
<HyperlinkButton NavigateUri="https://github.com/microsoft/PowerToys/blob/master/src/modules/fancyzones/README.md">
|
||||
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_FancyZones">
|
||||
<TextBlock x:Uid="Module_overview" />
|
||||
</HyperlinkButton>
|
||||
|
||||
|
@ -280,7 +280,7 @@
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"
|
||||
Margin="{StaticResource XSmallBottomMargin}"/>
|
||||
|
||||
<HyperlinkButton NavigateUri="https://github.com/microsoft/PowerToys/blob/master/src/modules/imageresizer/README.md">
|
||||
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_ImageResizer">
|
||||
<TextBlock x:Uid="Module_overview" />
|
||||
</HyperlinkButton>
|
||||
|
||||
|
@ -228,7 +228,7 @@
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"
|
||||
Margin="{StaticResource XSmallBottomMargin}"/>
|
||||
|
||||
<HyperlinkButton NavigateUri="https://github.com/microsoft/PowerToys/tree/master/src/modules/keyboardmanager">
|
||||
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_KeyboardManager">
|
||||
<TextBlock x:Uid="Module_overview" />
|
||||
</HyperlinkButton>
|
||||
|
||||
|
@ -147,7 +147,7 @@
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"
|
||||
Margin="{StaticResource XSmallBottomMargin}"/>
|
||||
|
||||
<HyperlinkButton NavigateUri="https://github.com/microsoft/PowerToys/tree/master/src/modules/launcher">
|
||||
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_PowerToysRun">
|
||||
<TextBlock x:Uid="Module_overview" />
|
||||
</HyperlinkButton>
|
||||
|
||||
|
@ -65,7 +65,7 @@
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"
|
||||
Margin="{StaticResource XSmallBottomMargin}"/>
|
||||
|
||||
<HyperlinkButton NavigateUri="https://github.com/microsoft/PowerToys/tree/master/src/modules/previewpane">
|
||||
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_FileExplorerAddOns">
|
||||
<TextBlock x:Uid="Module_overview" />
|
||||
</HyperlinkButton>
|
||||
|
||||
|
@ -106,7 +106,7 @@
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"
|
||||
Margin="{StaticResource XSmallBottomMargin}"/>
|
||||
|
||||
<HyperlinkButton NavigateUri="https://github.com/microsoft/PowerToys/tree/master/src/modules/powerrename">
|
||||
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_PowerRename">
|
||||
<TextBlock x:Uid="Module_overview" />
|
||||
</HyperlinkButton>
|
||||
|
||||
|
@ -108,9 +108,9 @@
|
||||
Style="{StaticResource SettingsGroupTitleStyle}"
|
||||
Margin="{StaticResource XSmallBottomMargin}"/>
|
||||
|
||||
<Image MaxWidth="240" Source="https://raw.githubusercontent.com/microsoft/PowerToys/dev/build-features/doc/images/shortcut_guide/usage.png" />
|
||||
<Image MaxWidth="240" Source="https://aka.ms/powerToysShortcutGuideSettingImage" />
|
||||
|
||||
<HyperlinkButton NavigateUri="https://github.com/microsoft/PowerToys/blob/master/src/modules/shortcut_guide/README.md">
|
||||
<HyperlinkButton NavigateUri="https://aka.ms/PowerToysOverview_ShortcutGuide">
|
||||
<TextBlock x:Uid="Module_overview"/>
|
||||
</HyperlinkButton>
|
||||
|
||||
|
Before Width: | Height: | Size: 319 KiB |
Before Width: | Height: | Size: 71 KiB |
Before Width: | Height: | Size: 115 KiB |
Before Width: | Height: | Size: 26 KiB |
@ -1,64 +1,3 @@
|
||||
# Overview
|
||||
FancyZones is a window manager that is designed to make it easy to arrange and snap windows into efficient layouts for your workflow and also to restore these layouts quickly. FancyZones allows the user to define a set of window locations for a desktop that are drag targets for windows. When the user drags a window into a zone, the window is resized and repositioned to fill that zone.
|
||||
|
||||
![FancyZones](FancyZones.png)
|
||||
|
||||
To get started with FancyZones, you need to enable the utility in PowerToys settings and then invoke the FancyZones editor UI.
|
||||
There is a button in settings to invoke the editor, or you can press <code>Win+`</code> (note that this shortcut can be changed in the settings dialog) to launch it.
|
||||
If you have multiple monitors, to edit the zone settings on each monitor, move the mouse to the desired monitor and then press <code>Win+`</code> to launch the editor UI for that monitor, or move the PowerToys settings window to the desired monitor and then launch the editor UI using the `Edit zones` button.
|
||||
|
||||
When first launched, the UI presents a list of zone layouts that can be quickly adjusted by how many windows are on the monitor. Choosing a layout shows a preview of that layout on the monitor. Pressing the save and close button sets that layout to the monitor.
|
||||
|
||||
![FancyZones Picker](Picker.png)
|
||||
|
||||
The editor also supports creating and saving custom layouts. This functionality is in the `Custom` tab in the editor UI.
|
||||
There are two ways to create custom zone layouts, window layout and table layout. These can also be thought of as additive and subtractive models.
|
||||
The additive window layout model starts with a blank layout and supports adding zones that can be dragged and resized similar to windows.
|
||||
|
||||
![FancyZones Window Editor Mode](WindowEditor.png)
|
||||
|
||||
The subtractive table layout model starts with a table layout and allows zones to be created by splitting and merging zones and then resizing the gutter between zones.
|
||||
To merge two zone, press and hold the left mouse button and drag the mouse until a second zone is selected, then release the button and a popup menu will show up.
|
||||
|
||||
![FancyZones Table Editor Mode](TableEditor.png)
|
||||
|
||||
The backlog for the utility can be found [here](https://github.com/Microsoft/PowerToys/tree/master/doc/planning/FancyZonesBacklog.md) and the source code is [here](https://github.com/Microsoft/PowerToys/tree/master/src/modules/fancyzones).
|
||||
|
||||
# Snapping a window to two zones (EXPERIMENTAL)
|
||||
|
||||
If two zones are adjacent, a window can be snapped to the sum of their area (rounded to the minimum rectangle that contains both). When the mouse cursor in near the common edge of two zones, both zones are activated simultaneously, allowing to drop the window on both.
|
||||
**NOTE:** when snapping a window to two zones, restoring the window when the app is restarted is not supported yet.
|
||||
|
||||
![Two Zones Activation](TwoZonesActivation.png)
|
||||
|
||||
# Shortcut Keys
|
||||
| Shortcut | Action |
|
||||
| ----------- | ----------- |
|
||||
| Win + ` | Launches editor (this shortcut is editable in the settings dialog) |
|
||||
| Win+Left/Right Arrow | Move focused window between zones (only if `Override Windows Snap hotkeys` setting is turned on, in that case only the `Win+Left Arrow` and `Win+Right Arrow` are overridden, while the `Win+Up Arrow` and `Win+Down Arrow` keep working as usual) |
|
||||
|
||||
FancyZones doesn't override the Windows 10 `Win+Shift+Arrow` to quickly move a window to an adjacent monitor.
|
||||
|
||||
# Settings
|
||||
| Setting | Description |
|
||||
| --------- | ------------- |
|
||||
| Configure the zone editor hotkey | To change the default hotkey, click on the textbox (it's not necessary to select or delete the text) and then press on the keyboard the desired key combination |
|
||||
| Enable zones while dragging with the shift key | Toggles between auto-snap mode with the shift key disabling snapping during a drag and manual snap mode where pressing the shift key during a drag enables snapping |
|
||||
| Override Windows Snap hotkeys (Win+Arrow) to move between zones | When this option is on and FancyZones is running, it overrides two Windows Snap keys: `Win+Left Arrow` and `Win+Right Arrow` |
|
||||
| Keep windows in their zones when the screen resolution changes | After a screen resolution change, if this setting is enabled, FancyZones will resize and reposition windows into the zones they were previously in |
|
||||
| Keep windows in their zones when the active FancyZones layout changes | When this option is on, FancyZones will resize and position windows into the new zone layout by maintaining the previous zone number location of each window |
|
||||
| Keep windows in their zones when the active virtual desktop changes | If an application is pinned to all virtual desktops, this setting will keep that window in the same zone on all desktops |
|
||||
| Move newly created windows to the last known zone | Automatically move a newly opened window into the last zone location that application was in |
|
||||
| Follow mouse cursor instead of focus when launching editor in a multi-monitor environment | When this option is on, the editor hotkey will launch the editor on the monitor where the mouse cursor is, when this option is off, the editor hotkey will launch the editor on monitor where the current active window is |
|
||||
| Show zones on all monitors while dragging a window | By default FancyZones shows only the zones available on the current monitor, this feature may have performance impact when turned on |
|
||||
| Show zones on all monitors while dragging a window | When the zones are activated, the dragged window is made transparent to improve the zones visibility |
|
||||
| Zone highlight color (Default #008CFF) | The color that a zone becomes when it is the active drop target during a window drag |
|
||||
| Zone Inactive color (Default #F5FCFF) | The color that zones become when they are not an active drop during a window drag |
|
||||
| Zone border color (Default #FFFFFF) | The color of the border of active and inactive zones |
|
||||
| Zone opacity (%) (Default 50%) | The percentage of opacity of active and inactive zones |
|
||||
| Exclude applications from snapping to zones | Add the applications name, or part of the name, one per line (e.g., adding `Notepad` will match both `Notepad.exe` and `Notepad++.exe`, to match only `Notepad.exe` add the `.exe` extension) |
|
||||
|
||||
![FancyZones Settings UI](FancyZonesSettings1.png)
|
||||
|
||||
![FancyZones Settings UI](FancyZonesSettings2.png)
|
||||
# This file has been moved
|
||||
|
||||
[FancyZone Overview](https://aka.ms/PowerToysOverview_FancyZones)
|
Before Width: | Height: | Size: 1.0 MiB |
Before Width: | Height: | Size: 937 KiB |
Before Width: | Height: | Size: 1.3 MiB |
@ -66,7 +66,7 @@ IFACEMETHODIMP_(bool) FancyZonesSettings::GetConfig(_Out_ PWSTR buffer, _Out_ in
|
||||
// Pass a string literal or a resource id to Settings::set_description().
|
||||
settings.set_description(IDS_SETTING_DESCRIPTION);
|
||||
settings.set_icon_key(L"pt-fancy-zones");
|
||||
settings.set_overview_link(L"https://github.com/microsoft/PowerToys/blob/master/src/modules/fancyzones/README.md");
|
||||
settings.set_overview_link(L"https://aka.ms/PowerToysOverview_FancyZones");
|
||||
settings.set_video_link(L"https://youtu.be/rTtGzZYAXgY");
|
||||
|
||||
// Add a custom action property. When using this settings type, the "PowertoyModuleIface::call_custom_action()"
|
||||
|
@ -546,7 +546,7 @@ namespace FancyZonesUnitTests
|
||||
PowerToysSettings::Settings ptSettings(HINSTANCE{}, m_moduleName);
|
||||
ptSettings.set_description(IDS_SETTING_DESCRIPTION);
|
||||
ptSettings.set_icon_key(L"pt-fancy-zones");
|
||||
ptSettings.set_overview_link(L"https://github.com/microsoft/PowerToys/blob/master/src/modules/fancyzones/README.md");
|
||||
ptSettings.set_overview_link(L"https://aka.ms/PowerToysOverview_FancyZones");
|
||||
ptSettings.set_video_link(L"https://youtu.be/rTtGzZYAXgY");
|
||||
|
||||
ptSettings.add_custom_action(
|
||||
@ -609,7 +609,7 @@ namespace FancyZonesUnitTests
|
||||
m_ptSettings = new PowerToysSettings::Settings(hInst, m_moduleName);
|
||||
m_ptSettings->set_description(IDS_SETTING_DESCRIPTION);
|
||||
m_ptSettings->set_icon_key(L"pt-fancy-zones");
|
||||
m_ptSettings->set_overview_link(L"https://github.com/microsoft/PowerToys/blob/master/src/modules/fancyzones/README.md");
|
||||
m_ptSettings->set_overview_link(L"https://aka.ms/PowerToysOverview_FancyZones");
|
||||
m_ptSettings->set_video_link(L"https://youtu.be/rTtGzZYAXgY");
|
||||
|
||||
m_ptSettings->add_custom_action(
|
||||
|
@ -1,29 +1,3 @@
|
||||
# Image Resizer
|
||||
> A Windows Shell Extension for bulk image resizing
|
||||
# This file has been moved
|
||||
|
||||
[**Overview**](#overview) ·
|
||||
[**Settings**](#settings)
|
||||
|
||||
## Overview
|
||||
Image Resizer is a windows shell extension for bulk image resizing. After installing PowerToys, right-click on one or more selected image files in File Explorer, and then select _Resize pictures_ from the menu.
|
||||
|
||||
![Image Resizer Demo](../../../doc/images/imageresizer/resizeNormal.gif)
|
||||
|
||||
Image Resizer also allows you to resize images by dragging and dropping your selected files with the right mouse button. This allows you to save your resized pictures in another folder.
|
||||
|
||||
![Image Resizer Drag And Drop Demo](../../../doc/images/imageresizer/resizeDragAndDrop.gif)
|
||||
|
||||
## Settings
|
||||
|
||||
![Image Resizer Settings](../../../doc/images/imageresizer/resizeSettings.gif)
|
||||
|
||||
Image Resizer allows the user to configure the following settings:
|
||||
|
||||
### Sizes
|
||||
The user can add new preset sizes. Each size can be configured as Fill, Fit or Stretch. The dimension to be used for resizing can also be configured as Centimeters, Inches, Percent and Pixels.
|
||||
|
||||
### Encoding
|
||||
The user can change the fallback encoder (the one it uses when it can't save as the original format) and modify PNG, JPEG and TIFF settings.
|
||||
|
||||
### File
|
||||
The user can modify the format of the file name of the resized image. They can also choose to retain the original _last modified_ date on the resized image.
|
||||
[Image Resizer Overview](https://aka.ms/PowerToysOverview_ImageResizer)
|
@ -70,7 +70,7 @@ public:
|
||||
// Create a Settings object.
|
||||
PowerToysSettings::Settings settings(hinstance, get_name());
|
||||
settings.set_description(GET_RESOURCE_STRING(IDS_SETTINGS_DESCRIPTION));
|
||||
settings.set_overview_link(L"https://github.com/microsoft/PowerToys/blob/master/src/modules/imageresizer/README.md");
|
||||
settings.set_overview_link(L"https://aka.ms/PowerToysOverview_ImageResizer");
|
||||
settings.set_icon_key(L"pt-image-resizer");
|
||||
settings.add_header_szLarge(L"imageresizer_settingsheader", GET_RESOURCE_STRING(IDS_SETTINGS_HEADER_DESCRIPTION), GET_RESOURCE_STRING(IDS_SETTINGS_HEADER));
|
||||
return settings.serialize_to_buffer(buffer, buffer_size);
|
||||
|
@ -1,93 +1,3 @@
|
||||
# Keyboard Manager
|
||||
# This file has been moved
|
||||
|
||||
The Keyboard Manager (KBM) is a keyboard remapper that allows a user to redefine keys on their keyboard (ex. swapping the letter <kbd>A</kbd> and <kbd>D</kbd>) as well as shortcuts (<kbd>Ctrl</kbd>+<kbd>C</kbd> to <kbd>![alt text][winlogo]</kbd>+<kbd>C</kbd>). You can use these remappings as long as KBM is enabled and PowerToys is running in the background. Below is an example of using keys and shortcuts that were remapped:
|
||||
|
||||
![alt text][example]
|
||||
|
||||
# 1. Get Started
|
||||
|
||||
## 1.1 General Settings
|
||||
To create mappings with Keyboard Manager, you have the option of launching either the Remap Keyboard UI by clicking the <kbd>Remap a Key</kbd> button or Remap Shortcuts UI by clicking the <kbd>Remap a shortcut</kbd> button.
|
||||
|
||||
|
||||
## 1.2 Remap Keys
|
||||
To remap a key to another key, click the <kbd>Remap a Key</kbd> button to launch the Remap Keyboard UI. When first launched, you are met with no predefined mappings and must click the <kbd>+</kbd> button to add a new remap. From there, select the key whose output you want to ***change*** as the “Key” and then keys new output as the “Mapped To”. For example, if you want to press <kbd>A</kbd> and have <kbd>B</kbd> appear, Key <kbd>A</kbd> would be your “Key” and Key <kbd>B</kbd> would be your “Mapped To" key. If you want to swap keys, add another remapping with Key <kbd>B</kbd> as your "Key" and Key <kbd>A</kbd> as your "Mapped To".
|
||||
|
||||
![alt text][remapkey]
|
||||
|
||||
## 1.3 Remap Shortcuts (Global-only)
|
||||
Currently you are only able to remap global level shortcuts (they apply to your whole OS), but **app-specific shortcuts are coming soon!**
|
||||
|
||||
To change how you invoke a particular shortcut, click the <kbd>Remap a shortcut</kbd> button to
|
||||
launch the Remap Shortcuts UI. When first launched, you are met with no predefined mappings and must click the <kbd>+</kbd> button to add a new remap. The "Shortcut" is the shortcut you want to change and the "Mapped To" is the shortcut you want to change it
|
||||
to. Ex. If you want <kbd>Ctrl</kbd>+<kbd>C</kbd> to paste, <kbd>Ctrl</kbd>+<kbd>C</kbd> is the "Shortcut" and <kbd>Ctrl</kbd>+<kbd>V</kbd> is the "Mapped To". Here are a few rules to shortcuts as you get started:
|
||||
|
||||
- Shortcuts must begin with a modifier key (<kbd>Ctrl</kbd>, <kbd>Shift</kbd>, <kbd>Alt</kbd>, <kbd>![alt text][winlogo]</kbd>)
|
||||
- Shortcuts must end with an action key (all non-modifier keys)
|
||||
- Shortcuts cannot be longer than 3 keys
|
||||
|
||||
![alt text][remapshort]
|
||||
|
||||
### 1.4 Keys that cannot be remapped:
|
||||
|
||||
|
||||
- <kbd>![alt text][winlogo]</kbd>+<kbd>L</kbd> (Locking your computer) and <kbd>Ctrl</kbd>+<kbd>Alt</kbd>+ <kbd>Del</kbd> cannot be remapped as they are reserved by the Windows OS.
|
||||
- The <kbd>Fn</kbd> key itself cannot be remapped (in most cases) but the F1-24 can be mapped.
|
||||
|
||||
|
||||
## 1.5 Selecting the keys: Drop down + Type Key / Type Shortcut feature
|
||||
To select a key in the remap or shortcut UI, you can use either the <kbd>Type Key</kbd> button or the drop downs. Once you click the <kbd>Type Key / Shortcut</kbd> button a dialogue will pop up. From here, type the key/shortcut using your keyboard. Once you’re satisfied with the output, hold <kbd>Enter</kbd> to continue. If you’d like to leave the dialogue, hold the <kbd>Esc</kbd> button. For the drop downs, you can search with the key name and additional drop downs will appear as you progress. However, you can not use the type-key feature while on the drop down.
|
||||
|
||||
![alt text][dropdowntypekey]
|
||||
|
||||
## 1.6 Orphaning Keys
|
||||
Orphaning a key means that you mapped it to another key and no longer have anything mapped to it. (Ex. If I map A -> B, I no longer have a key on my keyboard that results in A) To fix this, create another remap with that key as the New Key. We have created a warning to ensure you don't do this by accident.
|
||||
|
||||
![alt text][orphaned]
|
||||
|
||||
## 2. Frequently Asked Questions
|
||||
|
||||
- **Question**: *I remapped the wrong keys, and I want to stop it quickly. How can I do that?*
|
||||
- You can simply disable KBM from the settings or you can close PowerToys. For the remappings to work PowerToys must be running in the background and KBM must be enabled.
|
||||
|
||||
- **Question**: *Can I use Keyboard Manager at my log-in screen?*
|
||||
- No, Keyboard Manager is only available when PowerToys is running and doesn’t work on any password screen, including Run As Admin.
|
||||
|
||||
- **Question**: *Do I have to turn off my computer for the remapping to take effect?*
|
||||
- No, as of now, all you need to do is press apply.
|
||||
|
||||
- **Question**: *Can I remap a shortcut to a single key?*
|
||||
- No, we hope to support this soon.
|
||||
|
||||
- **Question**: *Where are the Mac/Linux profiles?*
|
||||
- This is the beta release; we will have these features in our V1
|
||||
|
||||
- **Question**: *Why can’t I remap a shortcut for a specific app?*
|
||||
- This is the beta release; we will have these features in our V1
|
||||
|
||||
- **Question**: *Will this work on video games?*
|
||||
- It depends on how the game accesses your keys. Certain keyboard APIs do not work with Keyboard Manager.
|
||||
|
||||
- **Question**: *Does this work if I change my input language? How?*
|
||||
- Yes it will. Right now if you remap <kbd>A</kbd> to <kbd>B</kbd> on English (US) keyboard and then the switch language to French, then typing <kbd>A</kbd> on the French keyboard (i.e. <kbd>Q</kbd> on the English US physical keyboard) would result in <kbd>B</kbd>, this is consistent with how Windows handles multilingual input.
|
||||
|
||||
## 3. Trouble shooting if remappings are not working:
|
||||
|
||||
- *Could be one of the following issues:*
|
||||
|
||||
- **Run As Admin:** Remappings will not work on an app / window if that window is running as an admin (elevated) and PowerToys itself is not running as admin. Try running PowerToys as an administrator.
|
||||
- **Not Intercepting Keys:** KBM intercepts keyboard hooks to remap your keys. Some apps that also do this can interfere with Keyboard Manager, to fix this go to the Settings and Disable then Re-Enable Keyboard manager.
|
||||
|
||||
## 4. Known Issues
|
||||
- [Caps light indicator not toggling correctly](https://github.com/microsoft/PowerToys/issues/1692)
|
||||
- [Remaps not working for FancyZones and Shortcut Guide](https://github.com/microsoft/PowerToys/issues/3079)
|
||||
|
||||
For a list of all known issues/suggestions, check it out
|
||||
[here](https://github.com/microsoft/PowerToys/issues?q=is%3Aopen+is%3Aissue+label%3A%22Product-Keyboard+Shortcut+Manager%22).
|
||||
|
||||
[example]: ../../../doc/images/keyboardmanager/example.gif "Example"
|
||||
[remapkey]: ../../../doc/images/keyboardmanager/remapkeyboard_both.gif "Remap a Key"
|
||||
[remapshort]: ../../../doc/images/keyboardmanager/remapshort_both.gif "Remap a Shortcut"
|
||||
[dropdowntypekey]: ../../../doc/images/keyboardmanager/dropdownstypekey.gif "Drop-downs and Type Features"
|
||||
[orphaned]: ../../../doc/images/keyboardmanager/orphanedkey.gif "Orphaned key warning"
|
||||
[winlogo]: ../../../doc/images/keyboardmanager/winkey.png
|
||||
[Keyboard Manager Overview](https://aka.ms/PowerToysOverview_KeyboardManager)
|
@ -177,7 +177,7 @@ public:
|
||||
// Create a Settings object.
|
||||
PowerToysSettings::Settings settings(hinstance, get_name());
|
||||
settings.set_description(IDS_SETTINGS_DESCRIPTION);
|
||||
settings.set_overview_link(L"https://github.com/microsoft/PowerToys/blob/master/src/modules/keyboardmanager/README.md");
|
||||
settings.set_overview_link(L"https://aka.ms/PowerToysOverview_KeyboardManager");
|
||||
|
||||
return settings.serialize_to_buffer(buffer, buffer_size);
|
||||
}
|
||||
|
@ -92,7 +92,7 @@ public:
|
||||
// Create a Settings object.
|
||||
PowerToysSettings::Settings settings(hinstance, get_name());
|
||||
settings.set_description(GET_RESOURCE_STRING(IDS_LAUNCHER_SETTINGS_DESC));
|
||||
settings.set_overview_link(L"https://github.com/microsoft/PowerToys/blob/master/src/modules/launcher/README.md");
|
||||
settings.set_overview_link(L"https://aka.ms/PowerToysOverview_PowerToysRun");
|
||||
|
||||
return settings.serialize_to_buffer(buffer, buffer_size);
|
||||
}
|
||||
|
@ -1,75 +1,3 @@
|
||||
# PowerToys Run
|
||||
PowerToys Run is a quick launcher for power users that has additional
|
||||
capabilities without sacrificing performance. It is open source and
|
||||
modular for additional plugins. Press Alt+Space and start typing!
|
||||
# This file has been moved
|
||||
|
||||
![](../../../doc/images/Launcher/QuickStart.gif)
|
||||
|
||||
# 1\. Get Started
|
||||
## 1\.1 Requirements
|
||||
|
||||
- Windows 10 version 1903 or higher
|
||||
|
||||
## 1\.2 Features
|
||||
Search for applications, folders, or files
|
||||
![](../../../doc/images/Launcher/Features.gif)
|
||||
|
||||
Search for running processes (previously
|
||||
[WindowWalker](https://github.com/betsegaw/windowwalker/))
|
||||
|
||||
![](../../../doc/images/Launcher/FeaturesWindowWalker.gif)
|
||||
|
||||
Clickable buttons with keyboard shortcuts
|
||||
|
||||
![](../../../doc/images/Launcher/FeaturesButtons.gif)
|
||||
|
||||
Invoke Shell Plugin using "\> "
|
||||
|
||||
![](../../../doc/images/Launcher/FeaturesShell.gif)
|
||||
|
||||
Do a simple calculation using calculator
|
||||
|
||||
![](../../../doc/images/Launcher/FeaturesCalculator.gif)
|
||||
|
||||
## 1\.3 Settings
|
||||
| **Settings** | **Action** |
|
||||
| --------------- | ------------------------------------------------------------------------------- |
|
||||
| Maximum number of results | Maximum number of results shown without scrolling on PowerToys Run |
|
||||
| Open PowerToys Run shortcut | The keyboard shortcut to open/hide PowerToys Run |
|
||||
|
||||
## 1\.4 Keyboard Shortcuts
|
||||
| **Shortcuts** | **Action** |
|
||||
| ------------------ | ---------------------------------------------------------------------------------|
|
||||
| Alt+Space | Open or hide PowerToys Run |
|
||||
| Esc | Hide PowerToys Run |
|
||||
| Ctrl+Shift+Enter | (Only applicable to applications) Open the selected application as administrator |
|
||||
| Ctrl+Shift+E | (Only applicable to applications and files) Open containing folder in File Explorer |
|
||||
| Ctrl+C | (Only applicable to folders and files) Copy path location |
|
||||
| Tab | Navigate through the search result and context menu buttons |
|
||||
|
||||
# 2\. Known Issues
|
||||
|
||||
- [Shudder on monitor change in a multi-monitor setup](https://github.com/microsoft/PowerToys/issues/3018)
|
||||
|
||||
- [On first start, clicking away doesn't hide launcher](https://github.com/microsoft/PowerToys/issues/2973)
|
||||
|
||||
- [Navigating through Tab doesn't have a clear UI indication if context buttons or search result is selected](https://github.com/microsoft/PowerToys/issues/2559)
|
||||
|
||||
- ['\>' entered at the beginning disappears when you choose an option through keyboard navigation](https://github.com/microsoft/PowerToys/issues/2576)
|
||||
|
||||
- [There is a misalignment in the shadow text](https://github.com/microsoft/PowerToys/issues/2494)
|
||||
|
||||
- [Reducing number of shown results doesn't resize search result properly](https://github.com/microsoft/PowerToys/issues/2456)
|
||||
|
||||
- [Context menu buttons sometimes are not showing when hovered with mouse](https://github.com/microsoft/PowerToys/issues/2420)
|
||||
|
||||
- [Scroll on the first result, not the whole search result box](https://github.com/microsoft/PowerToys/issues/2306)
|
||||
|
||||
For a list of all known issues/suggestions, check it out
|
||||
[here](https://github.com/microsoft/PowerToys/issues?q=is%3Aopen+is%3Aissue+label%3AProduct-Launcher).
|
||||
|
||||
# 3\. Attribution
|
||||
|
||||
[Wox](https://github.com/Wox-launcher/Wox/)
|
||||
|
||||
[Beta Tadele's Window Walker](https://github.com/betsegaw/windowwalker)
|
||||
[PowerToys Run Overview](https://aka.ms/PowerToysOverview_PowerToysRun)
|
||||
|
@ -1,91 +1,3 @@
|
||||
# PowerRename
|
||||
Have you ever needed to modify the file names of a large number of files but didn't want to rename all of the files the same name? Wanted to do a simple search/replace on a portion of various file names? Wanted to perform a regular expression rename on multiple items?
|
||||
|
||||
PowerRename is a Windows Shell Context Menu Extension for advanced bulk renaming using simple search and replace or more powerful regular expression matching. While you type in the search and replace input fields, the preview area will show what the items will be renamed to. You can toggle specific items to include or exclude from the operation in the preview area. Other checkbox options allow more control of scope of the rename operation. PowerRename then calls into the Windows Explorer file operations engine to perform the rename. This has the benefit of allowing the rename operation to be undone after PowerRename exits. PowerRename was designed to cover the majority of bulk rename scenarios while still striving for simplicity for the average user.
|
||||
|
||||
## Demo
|
||||
In the below demonstration, I am replacing all of the instances of "Pampalona" with "Pamplona" from all the image file names in the folder. Since all the files are uniquely named, this would have taken a long time to complete manually one-by-one. With PowerRename this takes seconds. Notice that I can undo the rename if I want to from the Windows Explorer context menu.
|
||||
|
||||
![PowerRename Demo](/src/modules/powerrename/images/PowerRenameDemo.gif)
|
||||
|
||||
## Input
|
||||
### Search for
|
||||
The text or regular expression to match in the item name
|
||||
|
||||
### Replace with
|
||||
The text to replace the instance(s) in the item name matched by the Search text
|
||||
|
||||
## Options
|
||||
|
||||
### Use Regular Expressions
|
||||
If checked, the Search field will be interpreted as a regular expression. The Replace field can also contain regex variables (see examples below). If not checked, the Search field will be used as a text to be replaced with the text in the Replace field.
|
||||
|
||||
### Case Sensitive
|
||||
If checked, the text specified in the Search field will only match text in the items if the text is the same case. By default we match case insensitive.
|
||||
|
||||
### Match All Occurrences
|
||||
If checked, all matches of the text in Search field will be replaced with the Replace text. Otherwise, only the first instance of the Search for text in the item will be replaced (left to right).
|
||||
|
||||
### Exclude Files
|
||||
Files will not be included in the operation.
|
||||
|
||||
### Exclude Folders
|
||||
Folders will not be included in the operation.
|
||||
|
||||
### Exclude Subfolder Items
|
||||
Items within folders will not be included in the operation. By default, all subfolder items are included.
|
||||
|
||||
### Enumerate Items
|
||||
Appends a numeric suffix to file names that were modified in the operation.
|
||||
Ex: foo.jpg -> foo (1).jpg
|
||||
|
||||
### Item Name Only
|
||||
Only the file name portion (not the file extension) is modified by the operation.
|
||||
Ex: txt.txt -> NewName.txt
|
||||
|
||||
### Item Extension Only
|
||||
Only the file extension portion (not the file name) is modified by the operation.
|
||||
Ex: txt.txt -> txt.NewExtension
|
||||
|
||||
|
||||
|
||||
## Regular Expressions
|
||||
|
||||
For most use cases, a simple search and replace is sufficient. Other users will need more control over. That is where Regular Expressions come in. Regular Expressions define a search pattern for text. Regular expressions can be used to search, edit and manipulate text. The pattern defined by the regular expression may match one or several times or not at all for a given string. PowerRename uses the ECMAScript grammar, which is common amongst modern programming languages.
|
||||
|
||||
To enable regular expressions, check the "Use Regular Expressions" checkbox.
|
||||
**Note:** You will likely want to check "Match All Occurrences" while using regular expressions.
|
||||
|
||||
### Examples
|
||||
|
||||
Simple matching examples:
|
||||
|
||||
| Search for | Description |
|
||||
| -------------- | ------------- |
|
||||
| .* | Match all the text in the name |
|
||||
| ^foo | Match text that begins with "foo" |
|
||||
| bar$ | Match text that ends with "bar" |
|
||||
| ^foo.\*bar$ | Match text that begins with "foo" and ends with "bar" |
|
||||
| .+?(?=bar) | Match everything up to "bar" |
|
||||
| foo[\s\S]\*bar | Match everything between "foo" and "bar" |
|
||||
|
||||
|
||||
Matching and variable examples:
|
||||
**Note:** For using the variables, you do need "Match All Occurrences" enabled
|
||||
|
||||
| Search for | Replace With | Description |
|
||||
| ---------- | ------------- |--------------------------------------------|
|
||||
| (.\*).png | foo\_$1.png | Prepends "foo\_" to the existing file name |
|
||||
| (.\*).png | $1\_foo.png | Appends "\_foo" to the existing file name |
|
||||
| (.\*) | $1.txt | Appends ".txt" extension to existing file name |
|
||||
| (^\w+\.$)\|(^\w+$) | $2.txt | Appends ".txt" extension to existing file name only if it does not have an extension |
|
||||
|
||||
|
||||
### External Help
|
||||
There are great examples/cheat sheets available online to help you
|
||||
|
||||
[Regex tutorial — A quick cheatsheet by examples](https://medium.com/factory-mind/regex-tutorial-a-simple-cheatsheet-by-examples-649dc1c3f285)
|
||||
|
||||
[ECMAScript Regular Expressions Tutorial](https://o7planning.org/en/12219/ecmascript-regular-expressions-tutorial)
|
||||
|
||||
# This file has been moved
|
||||
|
||||
[PowerRename Overview](https://aka.ms/PowerToysOverview_PowerRename)
|
||||
|
@ -94,7 +94,7 @@
|
||||
|