intro

One thing that most browsers have in-common, is the ability to save and restore your browser session. Saving the browser’s session basically means saving the amount of tabs and their respective URLs.

I’ve always that it could be useful to use this with a text editor. I alternate daily between vim, and acme. acme when I could use a mouse, and vim when I don’t have a mouse at my disposal.

dump

In acme, there is a command called Dump. And it does exactly what you’d think it means, it basically memorizes of all the open windows(excluding their content).

This can be extremely useful with acme, because it doesn’t support any plugins. So saving your workspace comes in handy big-time to save time on development.

You can later Load $FILEPATH your acme workspace, by executing the Load come.

integrating it with a launcher

By using dmenu, one can open these workflows in a very efficient manner. Here is my script that I use to load my workflows:

#!/bin/sh
where=$(ls -1 $HOME/work/*/acme.dump | xargs -n 1 -I "{}" dirname {} | xargs -n 1 -I "{}" basename "{}" | dmenu)
if [ -z "$where" ] 
then 
	acme -f "/mnt/font/JetBrainsMonoNerdFontComplete-Regular/13a/font"
else
	acme -l $HOME/work/$where/acme.dump
fi

This essentially looks for any acme.dump in the first sub-directories of my work folder in my home folder. So, if I have folders like so: portfolio/acme.dump, website/acme.dump, it would put them in the dmenu launcher.

You can either exit out of the dmenu to open a new workspace, or enter into a workspace by just pressing enter.

Feel free to Snarf that shell script, and modify it to your advantage.