]> gitweb.fluxo.info Git - utils-x11.git/commitdiff
Merge sessions with browser-sessions
authorSilvio Rhatto <rhatto@riseup.net>
Wed, 7 Mar 2018 06:22:09 +0000 (03:22 -0300)
committerSilvio Rhatto <rhatto@riseup.net>
Wed, 7 Mar 2018 06:22:09 +0000 (03:22 -0300)
browser-sessions [deleted file]
session

diff --git a/browser-sessions b/browser-sessions
deleted file mode 100755 (executable)
index d3fa08d..0000000
+++ /dev/null
@@ -1,28 +0,0 @@
-#!/bin/bash
-#
-# List browser sessions.
-#
-
-# Luakit
-if [ -d "$HOME/.local/share/luakit/sessions" ]; then
-  echo -n "luakit: "
-  ls $HOME/.local/share/luakit/sessions | xargs
-fi
-
-# Qutebrowser
-if [ -d "$HOME/.local/share/qutebrowser/" ]; then
-  echo -n "qutebrowser: "
-  ls $HOME/.local/share/qutebrowser/ | xargs
-fi
-
-# Chromium
-if [ -d "$HOME/.config/chromium-profiles" ]; then
-  echo -n "chromium: "
-  ls $HOME/.config/chromium-profiles | xargs
-fi
-
-# Firefox
-if [ -d "$HOME/.mozilla/firefox/profiles" ]; then
-  echo -n "firefox: "
-  ls $HOME/.mozilla/firefox/profiles | xargs
-fi
diff --git a/session b/session
index 36ef7b773bfb5a6e755e2da355bc704f9a06ee71..979a2d82933cf3aa7b3ff0e0a923bb9b59240ce5 100755 (executable)
--- a/session
+++ b/session
 #!/bin/bash
 #
-# Open a work session, which might consist on VIM, tmux, etc sessions.
+# Open a work session, which might consist of VIM, tmux, etc sessions.
 #
 
 # Parameters
 BASENAME="`basename $0`"
-SESSION="$1"
+
+# TODO: config file to restrict which sessions we'll use
+# TODO: sort by session name, listing applications for each session
+function __session_list {
+  # VIM
+  if [ -e "$HOME/.local/share/vim/sessions" ]; then
+    echo -n "vim: "
+    ls $HOME/.local/share/vim/sessions | sed -e 's/\.vim//g' | xargs
+  fi
+
+  # Tmux
+  if [ -d "$HOME/.tmux" ]; then
+    echo -n "tmux: "
+    ls $HOME/.tmux
+  fi
+
+  # TODO
+  # Screen
+
+  # Luakit
+  if [ -d "$HOME/.local/share/luakit/sessions" ]; then
+    echo -n "luakit: "
+    ls $HOME/.local/share/luakit/sessions | xargs
+  fi
+
+  # Qutebrowser
+  if [ -d "$HOME/.local/share/qutebrowser" ]; then
+    echo -n "qutebrowser: "
+    ls $HOME/.local/share/qutebrowser/ | xargs
+  fi
+
+  # Chromium
+  if [ -d "$HOME/.config/chromium-profiles" ]; then
+    echo -n "chromium: "
+    ls $HOME/.config/chromium-profiles | xargs
+  fi
+
+  # Firefox
+  if [ -d "$HOME/.mozilla/firefox/profiles" ]; then
+    echo -n "firefox: "
+    ls $HOME/.mozilla/firefox/profiles | xargs
+  fi
+}
+
+# TODO
+function __session_choser {
+  true
+}
+
+# TODO: config file to restrict which sessions we'll use
+# TODO: check if the program is installed before running it
+function __session_open {
+  SESSION="$1"
+
+  # Check VIM session
+  if [ -e "$HOME/.local/share/vim/sessions/$SESSION.vim" ]; then
+    terminal vim -S $HOME/.local/share/vim/sessions/$SESSION.vim &
+  fi
+
+  # Check tmux session
+  if [ -e "$HOME/.tmux/$SESSION" ]; then
+    terminal shell $SESSION &
+  fi
+
+  # TODO
+  # Screen
+
+  # Luakit
+  # TODO: how to open luakit in a given session from the command line?
+  #if [ -e "$HOME/.local/share/luakit/sessions/$SESSION" ]; then
+  #fi
+
+  # TODO
+  # Qutebrowser
+  #if [ -d "$HOME/.local/share/qutebrowser/$SESSION" ]; then
+  #  qutebrowser -r $SESSION
+  #fi
+
+  # TODO
+  # Chromium
+  #if [ -d "$HOME/.config/chromium-profiles/$SESSION" ]; then
+  #  chromium-profile $SESSION
+  #fi
+
+  # TODO
+  # Firefox
+  #if [ -d "$HOME/.mozilla/firefox/profiles" ]; then
+  #  firefox-profile $SESSION
+  #fi
+}
 
 # Check syntax
-if [ -z "$SESSION" ]; then
+if [ -z "$1" ]; then
   echo "usage: $BASENAME [--list|--choser] <session>"
+  echo "available sessions:"
+  echo ""
+  __session_list
   exit 1
 fi
 
-# Check VIM session
-if [ -e "$HOME/.local/share/vim/sessions/$SESSION.vim" ]; then
-  terminal vim -S $HOME/.local/share/vim/sessions/$SESSION.vim &
-fi
-
-# Check tmux session
-if [ -e "$HOME/.tmux/$SESSION" ]; then
-  terminal shell $SESSION &
-fi
-
+if echo "$1" | grep -q -- '--list'; then
+  __session_list
 # TODO
-# Check browser session
-#BROWSWER="`browser-sessions | grep -E " code ?" | cut -d : -f 1`"
-#if [ ! -z "$BROWSER" ]; then
-#  # Open browser in the given session
-#fi
+#if echo "$1" | grep -q -- '--choser'; then
+#  __session_choser
+else
+  __session_open $*
+fi