5 ms·
Interesting. I use Awesome[1] daily, and it's pretty great, but I wish it had less flexible layouts and more grid-like ones. Actually, what I've been contempla
by wickedchicken 14y ago
Interesting. I use Awesome[1] daily, and it's pretty great, but I wish it had less flexible layouts and more grid-like ones.
Actually, what I've been contemplating writing for a while is a window manager that notices what windows you have open, clusters those into sets (windows may be in multiple sets!), creates workspaces based on these clusters, automatically flips between these clusters when it senses you're switching to another one, and attempts to display windows as disconnected floating golden rectangles (still 2d, but not encompassing every pixel on your screen). I really really hate managing windows...
[1] http://awesome.naquadah.org/ http://awesome.naquadah.org/
- r4pha 14y agoI, too, use awesome daily. I might be wrong, but I guess the i3 window manager can group windows in a 'tabbed' style and other interesting stuff. I tried it for some time, but didn't really dig the way it handles two monitors. Apart from that, it seems to be a great alternative to awesome wm.
- sciurus 14y agoYes, in i3 you can switch a container between tiled (the default), tabbed, and stacked layouts. I actually like i3's handling of two monitors a lot [0]; workspaces are global and can be created on either monitor. For me that's easy to understand and fits my work style (one workspace with email and IM on one monitor, multiple workspaces with terminals and web browsers on the other). My only complaint with i3 is how the concept of splitting and changing tiling orientation between horizontal and vertical are intertwined. [1] I think it would be much more intuitive to have two tiling layouts (horizontal and vertical), a single kind of split that is only responsible for splitting, and no separate concept of orientation. To help myself get used to i3, I wrote myself this small program for visualize the tree structure of my containers. [2] [0] http://i3-wm.org/docs/userguide.html#multi_monitor http://i3-wm.org/docs/userguide.html#multi_monitor [1] http://i3-wm.org/docs/userguide.html#_orientation_and_split_containers http://i3-wm.org/docs/userguide.html#_orientation_and_split_... [2] https://github.com/sciurus/i3tree https://github.com/sciurus/i3tree
- planckscnst 14y agoAwesome's "tile" layouts can do a whole lot - enough that I only ever use tile and max. The tile layouts have a primary area and a secondary area. There are four different tile layouts with the primary area either on the left, right, top, or bottom. Once you pick one of those, you can control how many windows are in the primary area - the rest fill the secondary area. You can split the secondary area into divisions and increase or decrease the number of divisions; it will fill each division with windows in a round-robin style, placing the new window in the primary area - if the primary area is full, the oldest window gets pushed into the secondary area. Of course, if you open a window and specifically want to move it to the secondary area, it's as simple as giving focus to that window and moving it down the stack. This might sound complicated, but the keybindings are quite natural once you learn them (kind of like vim). All the window manager shortcuts start with the [mod4] ("windows") key. It's that with j/k to cycle up and down the stack, add [shift] to shift the position of the window in the stack. It's the [mod4] key with h/l to increase/decrease the size of the primary area; add [shift] to that to increase/decrease the number of windows in the primary area or [ctrl] to increase/decrease the number of subdivisions (I remember "C"ontrol "C"olumn, even though it's not columns if you're using a layout with the primary on the top or bottom). You might wonder how one could use tile mode for everything: what if you're coding away (which usually involves several terminals open), then you need to open gitk - one of those tiny panes is way too small! Well, you don't need to change the whole layout for that; you can toggle properties on individual windows to add either fullscreen [mod4]+f, maximized [mod4]+m, or floating [mod4]+[ctrl]+[space].
- jcurbo 14y agoMy use cases are very similar (I basically use awesome to manage a bunch of urxvts). When I run across regular GUI apps I typically just run them in a new workspace so they can either be fullscreen or not have to fight with xterms for space. It works well for me, but I don't run a lot of other things besides xterms in awesome (I mostly use it in a VM anyway)
- hello_asdf 14y agoWould you mind uploading your rc files for Awesome? I'm thinking of trying out some tiling window managers again.
- deleted 14y ago[deleted]
- flexd 14y agoI use nwm [1] daily now (for the past week) at work. I've used awesome before but I found nwm to be a nice fit, and its cool that it's made in Javascript. You could probably make your own features like that very easy, its not very big yet. It looks a lot like dwm feature wise, since the creator originally used that. [1] https://github.com/mixu/nwm https://github.com/mixu/nwm