Skip to main content

Snap windows to their configured positions

Project description

window-snap

Installation:

pipx install window_snap

Configuring

By default, the program looks at %userprofile%\.config\window-snap\config.yaml.

The folder to look in for config.yaml is configurable with the WINDOW_SNAP_CONFIG_DIR environment variable.

Current Feature Set

This module currently supports the following:

  • YAML-driven window layout management using a windows mapping in config.yaml.
  • Window matching by title (default) or executable name (find_by_exe).
  • Moving windows to a target monitor (monitor index in config is 1-based).
    • Leftmost monitor is 1, numbered increasing moving to the right
    • absolute pixel values (integer [0,monitor-width]), or
    • fractional values (0-1] relative to monitor work area.
  • Maximize handling via maximized: true.
  • Partial updates where unspecified values keep the window's current position/size.
  • Multi-monitor awareness with monitor detection from window geometry.
  • Safe handling when windows are missing or configuration entries are invalid (logs and continues).

Command-line features:

  • window-snap applies the configured layout from the default config path.
  • window-snap --store-current captures current top-level window positions and writes:
    • _config_version
    • windows (captured destinations)
    • available_exe_names (title -> executable mapping)
  • -v/--verbose increases logging verbosity.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

window_snap-0.1.5.tar.gz (8.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

window_snap-0.1.5-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

File details

Details for the file window_snap-0.1.5.tar.gz.

File metadata

  • Download URL: window_snap-0.1.5.tar.gz
  • Upload date:
  • Size: 8.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for window_snap-0.1.5.tar.gz
Algorithm Hash digest
SHA256 e0388781273a19ff3f827607815fd38891b441fc86c9d61c4de40d30a0bad014
MD5 c7e89b49715fff57f82b1b9d098f3f2f
BLAKE2b-256 e3f88aec4e5443682c8d92e4c9b16ae78e2d40d28be89bc1587a918e606359a1

See more details on using hashes here.

Provenance

The following attestation bundles were made for window_snap-0.1.5.tar.gz:

Publisher: release.yml on mshafer1/py_window_snap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file window_snap-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: window_snap-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 10.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for window_snap-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 32b6a837af6013f0e41bb26808b07e4eed714546d61e53525cf2f2501ae9b0f7
MD5 08df23797759d8a7ede4a3abe4de3c5a
BLAKE2b-256 1ed66696f43b8cc04e6b90b0e03b6a43a36a6af96752545d1e8aa52cefd63207

See more details on using hashes here.

Provenance

The following attestation bundles were made for window_snap-0.1.5-py3-none-any.whl:

Publisher: release.yml on mshafer1/py_window_snap

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page