WindowResizer caoyue
winget install --id=caoyue.WindowResizer -e
WindowResizer is a simple tool that gives you a way to use hotkeys to quickly save and restore different window positions and sizes.
WindowResizer is a productivity tool designed to streamline your workflow by enabling quick saving and restoring of window positions and sizes through customizable hotkeys.
Key Features:
- Save individual or all open window configurations with ease using predefined hotkeys (Ctrl+Alt+S for save, Ctrl+Alt+R for restore).
- Customize hotkey combinations to suit personal preferences.
- Enable auto-resize functionality with adjustable delay settings for titles that change dynamically (e.g., browser tabs).
- Utilize portable mode by placing the configuration file in the same folder as the executable.
- Access a command-line interface (CLI) for advanced automation and scripting capabilities.
- Organize saved configurations into multiple profiles for different workflows or projects.
Audience & Benefit:
Ideal for professionals who work with multiple windows across various applications, such as developers, designers, analysts, and anyone managing complex desktop environments. WindowResizer helps users save time by eliminating manual adjustments and maintaining consistent workspace setups across sessions. Its flexibility accommodates diverse workflow needs while ensuring efficiency and productivity.
The software is compatible with Windows 7+ (x64) and requires the .NET Framework 4.7.2+. It can be installed via winget for easy setup.
README
WindowResizer
WindowResizer is a simple tool that gives you a way to use hotkeys to quickly save and restore different window positions and sizes.
Download
-
Github Release >
require:
- Windows 7+ (x64)
- .NET Framework 4.7.2+
-
The Windows Store version has the same features as the GitHub release version.
You can support development by purchasing it on the Windows Store.
App
hotkeys
Change hotkeys in setting window.
-
save window position
default hotkey:
ctrl+alt+s
-
save all opened window position
-
restore window position
default hotkey:
ctrl+alt+r
demo <img src="https://i.imgur.com/5TJdL44.gif" />
-
restore all opened window position
demo <img src="https://i.imgur.com/3558lKS.gif" />
usage
-
how to add an config entry
Focus on the window (eg. Chrome), then press the save window hotkey (
ctrl+alt+s
by default), an entry will be added to the configuration file. -
How does the window matching work?
The process name is matched first. The title is not required, by default use a wildcard
*
to match all the titles for a process name. And if you specify the title, it will be matched first. -
Option: Resize by title Uncheck: Resize based on process Checked: Resize based on Process and title
-
Auto resize
: restore window position automaticallycheck the checkbox on
Auto
column.demo <img src="https://i.imgur.com/LeNyJQu.gif" />
-
Option: Auto resize delay This option is used with the
Auto Resize
feature. WhenAuto Resize
based on process titles, some titles are not immediately determined, such as Chrome web pages. If this option is checked, you can set a delay(in millisecond) for the Chrome process, so when a new Chrome window is created, there will be a delay before resize takes effect. -
portable mode
- download portable package
- put
WindowResizer.config.json
in the same folder as the program fileWindowResizer.exe
CLI
run WindowResizer.CLI.exe resize -h
> The CLI can run standalone without WindowResizer App running.
__ __ _ _ ____ _
\ \ / / (_) _ __ __| | ___ __ __ | _ \ ___ ___ (_) ____ ___ _ __
\ \ /\ / / | | | '_ \ / _` | / _ \ \ \ /\ / / | |_) | / _ \ / __| | | |_ / / _ \ | '__|
\ V V / | | | | | | | (_| | | (_) | \ V V / | _ < | __/ \__ \ | | / / | __/ | |
\_/\_/ |_| |_| |_| \__,_| \___/ \_/\_/ |_| \_\ \___| |___/ |_| /___| \___| |_|
Usage:
WindowResizer.CLI resize [options]
Options:
-c, --config Config file path, use current config file if omitted.
-P, --profile Profile name, use current profile if omitted.
-p, --process Process name, use foreground process if omitted.
-t, --title Process title, all windows of the process will be resized if not specified.
-v, --verbose Show more details.
-?, -h, --help Show help and usage information
e.g.,
# Resize all
WindowResizer.CLI.exe resize
# Specify config file and profile
WindowResizer.CLI.exe resize -c "X:\WindowResizer.config.json" -P "my-profile"
# Show verbose
WindowResizer.CLI.exe resize -v
# Filter windows by process
WindowResizer.CLI.exe resize -p "notepad.exe"
# Filter windows by title regex
WindowResizer.CLI.exe resize -t ".*.txt"
# Combine all options
WindowResizer.CLI.exe resize -c "X:\WindowResizer.config.json" -P "my-profile" -p "notepad.exe" -t ".*.txt" -v
Build
- .NET Framework 4.7.2
- Visual Studio 2019/2022 or JetBrains Rider
- Projects
- WindowResizer: the GUI app
- WindowResizer.CLI: the CLI app