i3-workspace-groups icon indicating copy to clipboard operation
i3-workspace-groups copied to clipboard

Saving workspace groups

Open Rasie1 opened this issue 3 years ago • 6 comments

I know it's probably very hard to implement (even with adapting https://github.com/JonnyHaystack/i3-resurrect), but it would be really cool to save project-specific workspace groups and restore some of their windows at once.

I imagine huge efficiency boost when on coming back to project after 2 months (or after laptop shuts down because I forgot to charge it), I would just restore all development environment, testing environment, terminal windows that have matching docker commands.

Rasie1 avatar Nov 26 '21 12:11 Rasie1

This is something I've been interested in for a long time. Saving the layout of workspace groups and restoring them shouldn't be hard- I actually use i3-resurrect myself and it works well in combination with this project.

The main challenge is restoring programs- for example I want the same Chromium windows and tabs to be restored. This requires communicating with Chrome to figure out which windows and tabs are open, save them (as bookmarks or just a text file, for example), and then when you want to restore you also need that ability. The same goes for restoring tmux sessions. I mainly use a web browser and tmux in my workspaces, but I would like the design to be flexible enough so that users can easily add support for other programs (pdf readers or whatever). Of course, not every program will make it possible or easy to save and restore the state of its windows, but at least for Chromium, Firefox, and tmux the effort won't be huge.

infokiller avatar Nov 26 '21 17:11 infokiller

Hi. I tried using i3-resurrect to save workspace-groups layouts, etc. but looks like it by default wants to save traditional i3 layouts instead. Is there an option I need to use to save workspace-groups? For example, how would I save the following?

1,2,3,4,5 EMAIL:1,2 WORK:1,2,3 etc

Thanks

SunnyOd avatar Oct 24 '22 12:10 SunnyOd

@SunnyOd i3-resurrect should work out of the box with i3-workspace-groups (I'm using it myself), what behavior are you seeing?

infokiller avatar Oct 26 '22 10:10 infokiller

Hi @infokiller

I think the issue was around resurrect not remembering the name of groups/workspaces and when I was restoring the workspaces it would restore id numbers, but don't hold me to that.... I was experimenting with workspace-groups at the time and may not have set it up correctly. I've got a bunch of customisation in the i3 config for application/workspace and output assignment so there may have been a conflict in there.

I mainly wanted to get workspace groups working (over resurrect) but I hit a roadblock with it as my work-flow requires workspaces to be able to be assigned to outputs (I use triple screen). However it looks like this isn't possible yet so I've parked the workspace-groups setup for now. I had fun playing with ws-groups though and look forward to getting it integrated into my workflow. It's a great idea and could revolutionise the way I work as I often run out of workspaces and then forget what each was being used for. So being able to assign/label and shift focus between groups will be invaluable, so thanks for your work :pray:

SunnyOd avatar Oct 26 '22 13:10 SunnyOd

Thanks for the kind words @SunnyOd Once #31 and #34 are fixed, I believe your issues will be resolved and I'll update this issue accordingly

infokiller avatar Oct 29 '22 11:10 infokiller

Thanks for the kind words @SunnyOd Once #31 and #34 are fixed, I believe your issues will be resolved and I'll update this issue accordingly

Awesome, much appreciated!

SunnyOd avatar Oct 31 '22 13:10 SunnyOd