Help with achieving desired layout

Hi, I'm looking to achieve a certain layout with xmonad, but I'm finding the codebase and language quite daunting. I'm using "Mirror Tall" with dual monitors. The top half of my screens are for master windows, and the bottom half are for slave windows. I find though, that as long as I have more than one slave window in a workspace it makes the bottom half of the screen pretty unusable because it gets split evenly amongst all the slaves, and each slave window becomes unpleasant to view. It'd be nice if there was a main slave so that most or all of the "slave pane" is filled with the main slave window. Then I would have half of the screen filled with the master window, ~half filled with the main slave window, and a small fraction of the screen (maybe accordion style) filled with the remaining slaves. I imagine switching between the master and slave panes with alt-enter and alt-shift-enter, and navigating between slave windows with alt-j alt-k. The DragPane layout is close to achieving my desired layout, but the problem is that whenever the master window is focused, the second window in the stack is shown in the slave pane. This means that if I'm looking at a particular slave window and want to now focus on the master window, the slave window switches back to the second window and I essentially lose my spot in the slave stack. Does this make sense? How hard would this be to implement? Bryan

On Sat, Jan 12, 2013 at 4:45 PM, Bryan Huh
I'm using "Mirror Tall" with dual monitors. The top half of my screens are for master windows, and the bottom half are for slave windows. I find though, that as long as I have more than one slave window in a workspace it makes the bottom half of the screen pretty unusable because it gets split evenly amongst all the slaves, and each slave window becomes unpleasant to view. It'd be nice if there was a main slave so that most or all of the "slave pane" is filled with the main slave window. Then I would have half of the screen filled with the master
Perhaps what you want to do is wrap http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Master.htmlaround something like http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Grid.html . (I don't think it will play well with a layout that already has a master window.) Alternately you could use http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Combo.html with something like http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Simplest.html in one pane and Tall or Mirror Tall in the other. See the documentation for Combo for how you select and move windows with that setup. -- brandon s allbery kf8nh sine nomine associates allbery.b@gmail.com ballbery@sinenomine.net unix, openafs, kerberos, infrastructure, xmonad http://sinenomine.net

Thanks Brandon. The second solution is really close to what I wanted. The first one is also close except when I switch to master I lose my spot in the slave stack, which is similar to the behavior for DragPane. The second solution doesn't have this problem when I switch to the master window, but it's not possible for me to switch back to my previously focused slave window without using my mouse. I'm a little confused with what the Combo layout is supposed to do exactly. There actually isn't a clear sense of two different layouts, because no matter what, one pane ends up occupied with exactly one window, and only the other pane has one of the specified layouts. It's also not possible for me to move a window from one pane to the other, despite using the WindowNavigation as instructed in http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Combo.html. I can't tell whether Combo.hs is no longer working as it should or if I'm doing something wrong. Bryan On 01/12/2013 02:06 PM, Brandon Allbery wrote:
On Sat, Jan 12, 2013 at 4:45 PM, Bryan Huh
wrote: I'm using "Mirror Tall" with dual monitors. The top half of my screens are for master windows, and the bottom half are for slave windows. I find though, that as long as I have more than one slave window in a workspace it makes the bottom half of the screen pretty unusable because it gets split evenly amongst all the slaves, and each slave window becomes unpleasant to view. It'd be nice if there was a main slave so that most or all of the "slave pane" is filled with the main slave window. Then I would have half of the screen filled with the master
Perhaps what you want to do is wrap http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Master.htmlaround something like http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Grid.html . (I don't think it will play well with a layout that already has a master window.)
Alternately you could use http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Combo.html with something like http://xmonad.org/xmonad-docs/xmonad-contrib/XMonad-Layout-Simplest.html in one pane and Tall or Mirror Tall in the other. See the documentation for Combo for how you select and move windows with that setup.
participants (2)
-
Brandon Allbery
-
Bryan Huh