doc/dsc/modules/AdvancedPaste.md
Manages configuration for the Advanced Paste utility, which provides advanced clipboard operations and custom paste formats.
The AdvancedPaste module configures PowerToys Advanced Paste, a utility
that extends clipboard functionality with AI-powered transformations, custom
formats, and advanced paste options. It allows you to paste clipboard content
with transformations like plain text conversion, markdown formatting, JSON
formatting, and AI-based text processing.
The AdvancedPaste module supports the following configurable properties:
Controls whether AI-powered paste transformations are enabled.
Type: boolean
Default: false
Description: Enables AI-based clipboard transformations such as
summarization, translation, and content reformatting.
Sets the keyboard shortcut for pasting as plain text.
Type: object
Properties:
win (boolean) - Windows key modifier.ctrl (boolean) - Ctrl key modifier.alt (boolean) - Alt key modifier.shift (boolean) - Shift key modifier.code (integer) - Virtual key code.key (string) - Key name.Default: Ctrl+Win+V
Sets the keyboard shortcut for pasting as markdown.
Type: object (same structure as PasteAsPlainTextHotkey)
Default: Ctrl+Win+Shift+V
Sets the keyboard shortcut for pasting as JSON.
Type: object (same structure as PasteAsPlainTextHotkey)
Controls whether a preview window is shown before pasting custom formats.
Type: boolean
Default: true
Controls whether the Advanced Paste window closes when it loses focus.
Type: boolean
Default: false
This example enables AI-powered paste transformations.
$config = @{
settings = @{
properties = @{
IsAdvancedAIEnabled = $true
}
name = "AdvancedPaste"
version = "1.0"
}
} | ConvertTo-Json -Depth 10 -Compress
PowerToys.DSC.exe set --resource 'settings' --module AdvancedPaste `
--input $config
This example customizes keyboard shortcuts for different paste formats.
dsc config set --file advancedpaste-hotkeys.dsc.yaml
# advancedpaste-hotkeys.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
- name: Configure Advanced Paste hotkeys
type: Microsoft.PowerToys/AdvancedPasteSettings
properties:
settings:
properties:
PasteAsPlainTextHotkey:
win: true
ctrl: true
alt: false
shift: false
code: 86
key: V
PasteAsMarkdownHotkey:
win: true
ctrl: true
alt: false
shift: true
code: 86
key: V
name: AdvancedPaste
version: 1.0
This example installs PowerToys and configures Advanced Paste with AI enabled.
winget configure winget-advancedpaste.yaml
# winget-advancedpaste.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 Advanced Paste
type: Microsoft.PowerToys/AdvancedPasteSettings
properties:
settings:
properties:
IsAdvancedAIEnabled: true
ShowCustomPreview: true
CloseAfterLosingFocus: true
name: AdvancedPaste
version: 1.0
This example configures preview behavior for custom paste formats.
dsc config set --file advancedpaste-preview.dsc.yaml
# advancedpaste-preview.dsc.yaml
$schema: https://aka.ms/dsc/schemas/v3/bundled/config/document.json
resources:
- name: Configure preview settings
type: Microsoft.PowerToys/AdvancedPasteSettings
properties:
settings:
properties:
ShowCustomPreview: true
CloseAfterLosingFocus: false
name: AdvancedPaste
version: 1.0
This example tests whether AI features are enabled.
$desired = @{
settings = @{
properties = @{
IsAdvancedAIEnabled = $true
}
name = "AdvancedPaste"
version = "1.0"
}
} | ConvertTo-Json -Depth 10 -Compress
$result = PowerToys.DSC.exe test --resource 'settings' `
--module AdvancedPaste --input $desired | ConvertFrom-Json
if ($result._inDesiredState) {
Write-Host "AI features are enabled"
} else {
Write-Host "AI features need to be enabled"
}
Enable AI transformations for code snippets and documentation:
resources:
- name: Developer paste settings
type: Microsoft.PowerToys/AdvancedPasteSettings
properties:
settings:
properties:
IsAdvancedAIEnabled: true
ShowCustomPreview: true
name: AdvancedPaste
version: 1.0
Configure for markdown and formatted text operations:
resources:
- name: Content creator settings
type: Microsoft.PowerToys/AdvancedPasteSettings
properties:
settings:
properties:
ShowCustomPreview: true
CloseAfterLosingFocus: false
name: AdvancedPaste
version: 1.0