komorebi icon indicating copy to clipboard operation
komorebi copied to clipboard

[FEAT]: Stacking rules

Open LGUG2Z opened this issue 2 years ago • 3 comments

Is your feature request related to a problem? Please describe. These days, instead of using multiple workspaces, I like to keep apps of the same "category" in a stack. For example, I like to keep Firefox and Chrome in a stack, Windows Terminal and WezTerm in a stack, and then alt+] to cycle between them. Now, after every restart, I have to manually recreate these stacks which is a little annoying.

Describe the solution you'd like I would like to be able to define stacking rules, so that every time I open Chrome, it checks if Firefox is open somewhere, and if it is, instead of creating a new container, it gets added to the container stack that Firefox is in, and vice-versa.

Describe alternatives you've considered Just doing it manually every time. I don't restart often, but still, this would be nice.

Additional context It might make sense to be able to optionally name containers, and then have the rule be a mapping of applications to containers.

LGUG2Z avatar Jun 09 '23 15:06 LGUG2Z

@LGUG2Z I'd be happy to help work on this, as I find myself in a similar situation.

More specifically: my screen is small enough that I want just two columns in my default workspace (with a single row): which means that both columns are primarily stacks, and thus, auto-stacking would be nice.

I'm new to komorebi, so I'm customizing little things day-by-day, rather than all at once (overwhelming). From my current understanding of the lay-of-the-land: stacking rules are an extension of workspace layout rules? That is: they would be used to help further specify how a particular workspace layout rule works in the corresponding .yaml?

bzm3r avatar Jul 29 '23 21:07 bzm3r

This is an implementation that has been merged into a hard-fork of komorebi. I'm not sure this is the way I'd like to go about this at a configuration-level as I imagine this to be more granular on a per-monitor basis (ie. the ability to autostack applications on one workspace but not on another)

https://github.com/LGUG2Z/komorebi/pull/666/files

LGUG2Z avatar Feb 24 '24 17:02 LGUG2Z