blob: 81ea163c21636a659f542784c58587fe53f8bf73 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
#!/usr/bin/env python
# cycle-workspace
# Moves the currently active workspace to the next active display
# Depends on i3-py (`pip install i3-py`)
import i3
# figure out what is on, and what is currently on your screen.
focused_workspace = list(filter(lambda s: s['focused'], i3.get_workspaces()))[0]
outputs = list(filter(lambda s: s['active'], i3.get_outputs()))
# find the index of the currently focused workspace
currentIndex = 0
for i, output in enumerate(outputs):
if output['name'] == focused_workspace['output']:
currentIndex = i
break
# find the next workspace
nextIndex = currentIndex + 1
if nextIndex >= len(outputs):
nextIndex = 0
other_workspace = outputs[nextIndex]
# send current to the no-active one
i3.command('move', 'workspace to output '+other_workspace['name'])
|