Sander van Dijk <[EMAIL PROTECTED]> writes: > No, it shouldn't, for the simple reason that it doesn't fit within the > tagging paradigm.
You're right, it doesn't really. I would characterise this patch (and variants such as the one I use) as changing the underlying paradigm from pure tagging to something closer to traditional workspaces. In addition to the unordered set of selected tags, the patch leads to one tag being distinguished as the 'main' selected tag. This main tag is then used to index the layouts, regardless of the other selected tags. One way to view this is that the 'main' tag, reset by view(), is the current workspace, and that toggleview() allows you to temporarily mix in the windows from other workspaces using the current workspace's layout. In my personal dwm derivative, I even color the main selected tag and additional mixed-in tags differently in the status bar to emphasise their different status. This is a more complicated model than pure tagging. Conceptually, the tagging model is simpler and neater---more dwm-like in fact. I doubt this fits well into upstream dwm. However, when I came to put together and use a working environment based upon dwm, and particularly as I added a couple more layouts and extended tile() to be more flexible, I discovered that having a single layout into which I could choose sets of windows to drop felt significantly less convenient to me than multiple layouts on multiple workspaces. "view() tag A, set up layout suitable for task A; view() tag B, set up layout suitable for task B; return to viewing tag A, reset layout for task A..." is a pattern that was begging to be optimised away. Clearly YMMV. Incidentally, something else needed for consistency when implementing taglayouts-type behaviour is to index all the layout parameters like mwfact, nmaster (if you have it) and nstack/ncols/nrows (if you have any of them). I don't think this patch currently does this? > Hence, to do this taglayouts stuff "right" One completely different approach to implementing multiple layouts in a pure tagging context is to introduce a new layout index, completely independent of the tag toggles. In the same way you can view() or toggleview() a tag at present, you could select() by index a particular set of layout parameters. You'd need to display the selected layout as well as the selected tags in the status bar, or it would rapidly become very confusing. This would be interesting to try and I confess I haven't tried it. However, I suspect in my normal usage it would just replace one keystroke with two. Cheers, Chris.
