TesseraSnap
Advanced · Free

Config file

All TesseraSnap settings live in one plain-text file, config.toml. Settings edits it for you; you can also edit it by hand.

Where it is

%APPDATA%\TesseraSnap\config.toml

Edit it by hand

  1. Open the file, change a value and save it.
  2. Open Settings and click Save, or run tesserasnap.exe --reload. It applies at once.

Sections

SectionHoldsIn the Settings window
[general]Behavior and App Settings optionsBehavior, App Settings
[hotkeys]One line per shortcutKeyboard Shortcuts
[snap], [snap.zones]Drag-to-snap and what each area doesSnap Areas
[gesture], [gesture.directions], [gesture.long_directions]Window Throw and its targetsCursor Movement
[quick_throw], [quick_throw.directions]Quick ThrowQuick Throw
[move_resize]Move & Resize keysCursor Movement
[[custom]]One block per custom sizeCustom Sizes
[[layouts]]One block per saved layout, with its windowsLayouts
[pin]Pin Mode side, width, reflow, the app to keep pinned, menuPin Mode
[stash]Stash sliver size, tabs, show and hide behavior, menuStash

Each guide page lists the config key beside each setting.

Shortcut syntax

In [hotkeys], each line is action = "keys". Delete a line to remove that shortcut.

[hotkeys]
left_half = "ctrl+alt+left"
custom_1 = "ctrl+alt+n"
layout_1 = "ctrl+alt+1"
show_menu = "ctrl+alt+m"

Modifier-only settings

Keys such as gesture.modifiers or move_resize.move_modifiers take modifiers plus at most one key to hold.

Examples

Quick Throw targets

[quick_throw.directions] gives Quick Throw its own targets instead of Window Throw's.

[quick_throw.directions]
left = "first_third"
right = "last_third"
up = "maximize"
down = "stash_down"

Some defaults

The file stores fractions where Settings shows percent: 0.9 is 90 %, 0.25 is 25 %.

[general]
config_version = 8
launch_at_login = true
theme = "system"
gap = 0
cycle_sizes = true
resize_step = 40
almost_maximize_fraction = 0.9
native_maximize = true
ignored_processes = []

[snap]
enabled = true
disable_windows_snap = true
edge_margin = 48
corner_size = 150

[gesture]
modifiers = "ctrl+alt"
deadzone = 40
target = "under_cursor"
long_distance = 220
mouse_button = "none"

[quick_throw]
enabled = false
modifiers = "ctrl+shift"

[move_resize]
move_modifiers = ""
resize_modifiers = ""

[[custom]]
name = "Near maximum"
x = 0.06
y = 0.06
width = 0.88
height = 0.88
repeat = "none"

[pin]
side = "right"
width = 0.25
reflow_on_pin = true

[stash]
peek = 10