summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbin/i3-shell27
-rwxr-xr-xbin/id1
-rwxr-xr-xbin/swap16
3 files changed, 44 insertions, 0 deletions
diff --git a/bin/i3-shell b/bin/i3-shell
new file mode 100755
index 0000000..120e4b4
--- /dev/null
+++ b/bin/i3-shell
@@ -0,0 +1,27 @@
+#!/bin/bash
+# i3 thread: https://faq.i3wm.org/question/150/how-to-launch-a-terminal-from-here/?answer=152#post-id-152
+
+CMD=urxvt
+CWD=''
+
+# Get window ID
+ID=$(xdpyinfo | grep focus | cut -f4 -d " ")
+
+# Get PID of process whose window this is
+PID=$(xprop -id $ID | grep -m 1 PID | cut -d " " -f 3)
+
+# Get last child process (shell, vim, etc)
+if [ -n "$PID" ]; then
+ TREE=$(pstree -lpA $PID | tail -n 1)
+ PID=$(echo $TREE | awk -F'---' '{print $NF}' | sed -re 's/[^0-9]//g')
+
+ # If we find the working directory, run the command in that directory
+ if [ -e "/proc/$PID/cwd" ]; then
+ CWD=$(readlink /proc/$PID/cwd)
+ fi
+fi
+if [ -n "$CWD" ]; then
+ cd $CWD && $CMD
+else
+ $CMD
+fi
diff --git a/bin/id b/bin/id
index d42bb39..7dad85d 100755
--- a/bin/id
+++ b/bin/id
@@ -1,5 +1,6 @@
#! /bin/bash
PWD_DIR="$HOME/.password-store"
+[[ ! -z $(readlink ${PWD_DIR}) ]] && PWD_DIR=$(readlink ${PWD_DIR})
PASSWORDS=$(locate "${PWD_DIR}/**/*.gpg")
TARGET=$(echo "${PASSWORDS//"$PWD_DIR/"/}" | dmenu -i -p "Get identifier for:")
basename $TARGET .gpg | xclip -i
diff --git a/bin/swap b/bin/swap
new file mode 100755
index 0000000..4c17dc7
--- /dev/null
+++ b/bin/swap
@@ -0,0 +1,16 @@
+#!/usr/bin/python
+
+import i3
+outputs = i3.get_outputs()
+print(outputs[0])
+
+# set current workspace to output 0
+i3.workspace(outputs[0]['current_workspace'])
+
+# ..and move it to the other output.
+# outputs wrap, so the right of the right is left ;)
+i3.command('move', 'workspace to output right')
+
+# rinse and repeat
+i3.workspace(outputs[1]['current_workspace'])
+i3.command('move', 'workspace to output right')