doc/dsc/modules/ShortcutGuide.md
Manages configuration for the Shortcut Guide utility, which displays available keyboard shortcuts.
The ShortcutGuide module configures PowerToys Shortcut Guide, a utility that
displays an overlay showing available Windows and application keyboard shortcuts.
It can be opened with a configurable shortcut or by holding either Windows key.
The ShortcutGuide module supports the following configurable properties:
Sets the keyboard shortcut or method to open the shortcut guide.
Type: object
Properties:
win (boolean) - Windows key modifierctrl (boolean) - Ctrl key modifieralt (boolean) - Alt key modifiershift (boolean) - Shift key modifiercode (integer) - Virtual key codekey (string) - Key nameDefault: Win+Shift+/
Sets the action performed after holding either Windows key.
Type: integer
Allowed values: 0 (Off), 1 (Show taskbar indicators), 2 (Open Shortcut Guide)
Default: 1
Sets the opacity of the shortcut guide overlay (0-100).
Type: integer
Range: 0 to 100
Default: 90
Sets the theme for the shortcut guide.
Type: string
Allowed values: "light", "dark", "system"
Default: "dark"
Sets how long the Windows key must be held before showing the guide (in milliseconds).
Type: integer
Range: 100 to 5000
Default: 900
Controls whether the full Shortcut Guide closes when the Windows key is released.
This setting applies when WindowsKeyAction is 2; taskbar indicators always
close on release.
Type: boolean
Default: true
List of applications where Shortcut Guide is disabled.
Type: string (newline-separated list of executable names)
This example opens the full Shortcut Guide after holding a Windows key for 600 milliseconds.
$config = @{
settings = @{
properties = @{
WindowsKeyAction = 2
PressTime = 600
CloseOnWindowsKeyRelease = $true
}
name = "ShortcutGuide"
version = "1.0"
}
} | ConvertTo-Json -Depth 10 -Compress
PowerToys.DSC.exe set --resource 'settings' --module ShortcutGuide `
--input $config
This example customizes the overlay appearance.
dsc config set --file shortcutguide-appearance.dsc.yaml
# shortcutguide-appearance.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
- name: Configure Shortcut Guide appearance
type: Microsoft.PowerToys/ShortcutGuideSettings
properties:
settings:
properties:
OverlayOpacity: 95
Theme: light
name: ShortcutGuide
version: 1.0
This example installs PowerToys and configures Shortcut Guide.
winget configure winget-shortcutguide.yaml
# winget-shortcutguide.yaml
$schema: https://raw.githubusercontent.com/PowerShell/DSC/main/schemas/2023/08/config/document.json
metadata:
winget:
processor: dscv3
resources:
- name: Install PowerToys
type: Microsoft.WinGet.DSC/WinGetPackage
properties:
id: Microsoft.PowerToys
source: winget
- name: Configure Shortcut Guide
type: Microsoft.PowerToys/ShortcutGuideSettings
properties:
settings:
properties:
PressTime: 700
OverlayOpacity: 90
Theme: dark
name: ShortcutGuide
version: 1.0
This example configures taskbar indicators with a short hold duration.
dsc config set --file shortcutguide-quick.dsc.yaml
# shortcutguide-quick.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
- name: Quick activation
type: Microsoft.PowerToys/ShortcutGuideSettings
properties:
settings:
properties:
WindowsKeyAction: 1
PressTime: 400
name: ShortcutGuide
version: 1.0
This example maximizes opacity for better visibility.
$config = @{
settings = @{
properties = @{
OverlayOpacity = 100
Theme = "dark"
}
name = "ShortcutGuide"
version = "1.0"
}
} | ConvertTo-Json -Depth 10 -Compress
PowerToys.DSC.exe set --resource 'settings' --module ShortcutGuide --input $config
This example excludes Shortcut Guide from specific applications.
dsc config set --file shortcutguide-exclusions.dsc.yaml
# shortcutguide-exclusions.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
- name: Exclude apps
type: Microsoft.PowerToys/ShortcutGuideSettings
properties:
settings:
properties:
ExcludedApps: |
Game.exe
FullScreenApp.exe
name: ShortcutGuide
version: 1.0
Configure for easy keyboard shortcut discovery:
resources:
- name: New user configuration
type: Microsoft.PowerToys/ShortcutGuideSettings
properties:
settings:
properties:
PressTime: 800
OverlayOpacity: 95
name: ShortcutGuide
version: 1.0
Configure for quick access without accidental activation:
resources:
- name: Power user configuration
type: Microsoft.PowerToys/ShortcutGuideSettings
properties:
settings:
properties:
PressTime: 1200
OverlayOpacity: 85
name: ShortcutGuide
version: 1.0