Skip to main content

Automatic manager for i3 tiling

Project description

i3a

i3a is a set of scripts used for automation of i3 and sway window manager layouts.

Automation list

i3a-master-stack

Provides automatic master-stack layout, which is known from e.g. DWM. The following kinds of the layout are possible:

  • master-stack area with DWM-like stack (stack windows are split)
  • master-stack area with i3-like stack (stack windows are actual stack)

To use, run i3a-master-stack with selected options (i3a-master-stack --help for details). One way to run it automatically is via a systemd user service.

  1. Create the following file in ~/.config/systemd/user/i3a-master-stack:
[Unit]
Description=i3a-master-stack

[Service]
ExecStart=%h/.local/bin/i3a-master-stack --stack=dwm --stack-size=35
Restart=on-failure
  1. Add the following entry to your i3 or sway configuration file:
exec "systemctl --user restart i3a-master-stack.service"

i3a-swap

Swap currently focused window between master and stack areas from i3a-master-stack (technically it doesn't require running i3-master-stack).

To use it, add the following binding to your i3 or sway configuration file:

bindsym $mod+f exec i3a-swap

i3a-swallow

Provides automatic "swallowing": when a program runs a child process, the parent is automatically hidden (moved to the scratchpad), which looks like if it was replaced, or "swallowed" by the child window. It is especially useful for graphical programs (video player, document viewer etc.) run from the terminal.

Provides a means of filtering both parent programs which can be swallowed and child programs which can trigger swallowing.

To use it, run i3a-swallow with selected options. One way to run it automatically is via a systemd user service.

  1. Create the following file in ~/.config/systemd/user/i3a-swallow:
[Unit]
Description=i3a-swallow

[Service]
ExecStart=%h/.local/bin/i3a-swallow
Restart=on-failure
  1. Add the following entry to your i3 or sway configuration file:
exec "systemctl --user restart i3a-swallow.service"

i3a-move-to-empty

Moves currently focused container to the first empty workspace. Keep in mind that this script relies on numbering of the workspaces.

To use it, add the following binding to your i3 or sway configuration file:

bindsym $mod+w exec i3a-move-to-empty

i3a-resize-compass

Extension of resize command. Currently focused window will automatically grow or shrink in a direction passed to i3a-resize-compass.

bindsym $mod+Up exec i3a-resize-compass up 2ppt
bindsym $mod+Down exec i3a-resize-compass down 2ppt
bindsym $mod+Right exec i3a-resize-compass right 2ppt
bindsym $mod+Left exec i3a-resize-compass left 2ppt

i3a-cycle-focus

Change the currently focused window up or down, cycling the tiled windows within the current workspace.

bindsym $mod+j exec i3a-cycle-focus down
bindsym $mod+k exec i3a-cycle-focus up 

i3a-scale-cycle

sway-specific

Changes output's scale factor to the next or previous one on a given list. Current scale factor is then printed for each requested output (or all available outputs if none was explicitly set).

-f, --scale-factors is a comma-separated list of factors which i3a-scale will cycle so it must be escaped in configuration file:

bindsym $mod+s exec "i3a-scale-cycle -f 1.0,1.5,2.0 -o HDMI-1 -o HDMI-2 --next"

i3a-trail

Dynamically toggle trailmarks (a kind of special marks) on windows and use them to quickly cycle between trailmarks in the same groups. It's possible to have many different groups of trailmarks (trails) and windows may belong to many different groups.

Use i3a-trail new-trail|delete-trail|next-trail|previous-trail create and activate trails. Use i3a-trail mark to add and remove trailmarks. Use i3a-trail next|previous to traverse marked windows.

bindsym $mod+grave exec i3a-trail mark
bindsym $mod+Tab exec i3a-trail next
bindsym $mod+Shift+Tab exec i3a-trail previous

bindsym $mod+n exec i3a-trail new-trail
bindsym $mod+Shift+n exec i3a-trail delete-trail
bindsym $mod+bracketright exec i3a-trail next-trail
bindsym $mod+bracketleft exec i3a-trail previous-trail

Installation

  • PyPI
  • AUR (Arch Linux - unofficial)

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

i3a-2.4.0.tar.gz (24.5 kB view details)

Uploaded Source

Built Distribution

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

i3a-2.4.0-py3-none-any.whl (27.7 kB view details)

Uploaded Python 3

File details

Details for the file i3a-2.4.0.tar.gz.

File metadata

  • Download URL: i3a-2.4.0.tar.gz
  • Upload date:
  • Size: 24.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.4

File hashes

Hashes for i3a-2.4.0.tar.gz
Algorithm Hash digest
SHA256 05c180145ab75048f8a3b9cd43d692b6e78a99e0cd22a488aa461686cd939ea8
MD5 ecd7ac01d24604679d406f23dc086500
BLAKE2b-256 7b1f150a7fdf67a41387cc1d72890271ce73dd437a86902afecae1634b83bb74

See more details on using hashes here.

File details

Details for the file i3a-2.4.0-py3-none-any.whl.

File metadata

  • Download URL: i3a-2.4.0-py3-none-any.whl
  • Upload date:
  • Size: 27.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.4

File hashes

Hashes for i3a-2.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 658543aa5972341d1c16efa4cac13156298eeb4a1a9ee513258eb1b3fa86bf73
MD5 c5eb90481f964fb6054b354f31dafce4
BLAKE2b-256 56cce832ef245da899b8d3877488cf6a3c582af69ce4822b342aa5553bbab34c

See more details on using hashes here.

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