From 346139a617b044329efcc0a17fdbdf11cf31971e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20Neumann?= Date: Thu, 6 Jun 2013 11:47:31 +0200 Subject: i3: new temporary workspace --- .i3/config | 5 ++++- .i3/scripts/new_workspace.py | 23 +++++++++++++++++++++++ 2 files changed, 27 insertions(+), 1 deletion(-) create mode 100755 .i3/scripts/new_workspace.py (limited to '.i3') diff --git a/.i3/config b/.i3/config index 407a1e9..f72bdc4 100644 --- a/.i3/config +++ b/.i3/config @@ -153,7 +153,10 @@ bindsym $mod+g exec $nsi $script/workspaces.sh bindsym $mod+Shift+g exec $nsi $script/workspaces.sh move # rename «3 -bindsym $mod+n exec $nsi i3-input -F 'rename workspace to "%s"' -P 'Rename workspace: ' +bindsym $mod+Shift+n exec $nsi i3-input -F 'rename workspace to "%s"' -P 'Rename workspace: ' + +# new temp workspace «3 +bindsym $mod+n exec $nsi $script/new_workspace.py # Resizing «2 ############# diff --git a/.i3/scripts/new_workspace.py b/.i3/scripts/new_workspace.py new file mode 100755 index 0000000..cfb73d1 --- /dev/null +++ b/.i3/scripts/new_workspace.py @@ -0,0 +1,23 @@ +#!/usr/bin/python + +# +# Switch to a new workspace, which gets the first free numbe >= 0 +# + +import sys +from os.path import realpath, dirname + +cwd = realpath(dirname(__file__)) +sys.path.insert(1, cwd) + +import i3 + +nums = (w["num"] for w in i3.get_workspaces()) +nums = filter(lambda n: n is not None and n >= 0, nums) + +for i,n in enumerate(sorted(nums)): + if i != n: + i3.workspace(str(i)) + break +else: + i3.workspace(str(i+1)) -- cgit v1.2.3