Skip to main content
Python Software Foundation 20th Year Anniversary Fundraiser  Donate today!

More advanced workspace switcher for i3.

Project description


This simple program will move selected i3 workspace to the current output, determined either by cursor position or focused window. Three modes are available - see usage section for more information.


usage: pi3-switch [-h] [-f] [-p | -m | -s] WORKSPACE_NAME

Moves selected i3 workspace to the current output (by default determined by
cursor location) and focuses it.

positional arguments:
  workspace     name of the i3 workspace

optional arguments:
  -h, --help    show this help message and exit
  -f, --focus   use focused window instead of cursor position to determine the
                current output
  -p, --push    moves replaced workspace to the second output (works only if
                there are two outputs, ignored otherwise)
  -m, --master  same as 'push' but will only move from primary output to the
  -s, --swap    (NOT IMPLEMENTED YET) behaves like xmonad, swaps workspaces if
                they are on a different output


Install using pipsi (recommended) or pip:

pipsi install pi3-switch

Add keybindings to ~/.config/i3/config and reload i3 (remember to modify flags to your liking):

bindsym $mod+1 exec pi3-switch -p 1
bindsym $mod+2 exec pi3-switch -p 2
bindsym $mod+3 exec pi3-switch -p 3
bindsym $mod+4 exec pi3-switch -p 4
bindsym $mod+5 exec pi3-switch -p 5
bindsym $mod+6 exec pi3-switch -p 6
bindsym $mod+7 exec pi3-switch -p 7
bindsym $mod+8 exec pi3-switch -p 8
bindsym $mod+9 exec pi3-switch -p 9
bindsym $mod+0 exec pi3-switch -p 10


Thanks to Travis Finkenauer for an inspiration (i3-wk-switch) and Tony Crisci for an easy-to-use i3 python library (i3ipc-python).

Project details

Download files

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

Files for pi3-switch, version 0.5.2
Filename, size File type Python version Upload date Hashes
Filename, size pi3_switch-0.5.2-py3-none-any.whl (6.3 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size pi3-switch-0.5.2.tar.gz (3.8 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page