News for hackers. Stuff that matters.
Re:A tiling window manager written in Rust by ecaron on Wednesday December 17, 2014 @11:39AM (#8762883)
I really, really, really want to move to using a tiling window manager. Watching YouTube videos of people using them well, you can't help but think "Damn, they're really crazy efficient". But I can't find one that has good enough documentation that I can learn it on my own (and since nobody else at my office uses it, somebody has got to be first.)

I'd love to get into http://i3wm.org/ but can't find anything to push me over the ledge, so I keep resigning myself to checking out projects like the one in OP and thinking "Wouldn't that be nice..."

Re:A tiling window manager written in Rust by mhd on Wednesday December 17, 2014 @12:42PM (#8763251)
I've been using them on and off, and the first thing I'd like to mention is that they're in no way magical -- both when it comes to using them (which is mostly knowing a few shortcuts and internalizing the layout system), but also in regard to how much they help you.

Sure, they certainly do look snazzy, especially when coupled with the movie hacker-approved unified dark color scheme. New windows pop up and quickly assume their rightful space and everything just looks so darn tidy.

But for certain usage patterns, that doesn't get you a lot. Even if you're popping up disposable shell windows left and right, you might also do that within screen/tmux, where the window manager doesn't come into play at all (or have some drop-down quake-like console). Also, your running applications and especially their different configurations might not change that often, in which case you're really saving yourself some manual layout fiddling once. So a lot of people would perform pretty much the same with just alt-tab window cycling and virtual desktops (which seem orthogonal to the whole deal).

I mean, if you look at the vast majority of screenshots, you don't even see that much work. The obligatory IRC client, fake-GUI music players and/or file managers and probably an editor with the configuration file or some minor coursework open. It's not exactly Scotty and his Mac Plus.

Having said that, I'd add my vote to i3wm, as it isn't as ideologically pure as some others (you still have window titles if you want them, and the layout remains somewhat manual). Plus a rather readable configuration format, even if the default configuration is seemingly intended to drive vi-users mad.

My alternative would be bspwm, the binary space partitioning wm. A lot more minimal, but the automatic layout algorithm is rather tractable and one certainly wouldn't be confused with too many options.

Re:A tiling window manager written in Rust by gdwatson on Wednesday December 17, 2014 @02:15PM (#8763752)
Having said that, I'd add my vote to i3wm, as it isn't as ideologically pure as some others (you still have window titles if you want them, and the layout remains somewhat manual). Plus a rather readable configuration format, even if the default configuration is seemingly intended to drive vi-users mad.

I like i3 a lot, but even as an Emacs user the first thing I did was to change the focus key bindings to something vi-like. Using JKL; instead of HJKL on anything meant for Unix users just seems devilishly perverse.

Re:A tiling window manager written in Rust by jff on Wednesday December 17, 2014 @12:48PM (#8763291)
> I mean, if you look at the vast majority of screenshots, you don't even see that much work. The obligatory IRC client, fake-GUI music players and/or file managers and probably an editor with the configuration file or some minor coursework open. It's not exactly Scotty and his Mac Plus.

Well, this applies to all WM screenshots ever, not just tiling window managers. The main problem with WM screenshots is that you want to show how it looks, show off some features, but my actual work is generally spread across many virtual desktops, each with just a few windows (mostly xterm)

Re:A tiling window manager written in Rust by mhd on Wednesday December 17, 2014 @01:41PM (#8763568)
Quite a lot of screenshots do cover more than one desktop, plus often a "clean" shot to show off the otherwise covered minimalistic and/or anime background pic.

I blame it more on the fact that many of the tiling wm crowd are quite young and don't do that much actual work with their machines, especially if they just switch to Linux because of other screenshots of said style.

Or just not being able to show e.g. proprietary code…

Re:A tiling window manager written in Rust by chriswarbo on Wednesday December 17, 2014 @05:47PM (#8764856)
I'm "quite young" (26), although I don't know what you'd class as "actual work" (do Web development and PhD research count?).

To be honest I like using tiling WMs because they're not magic, whizz-bang things. I could lay out my windows better with a stacking WM (eg. when badly-behaved apps make assumptions about their size and put buttons off the edge of the screen), but a tiling WM does just well enough that I really don't care about my window layout anymore. Whatever Xmonad does is usually fine.

Likewise, with a tiling window manager I really don't care about background pictures anymore. Before using tiling WMs I used to use chbg to cycle through a directory of images, and use (fake, then composited) transparency in terminals, etc. These days my machines boot straight into Xmonad with st and emacs open; my only "background" is a black screen for a couple of seconds while they start up.

Any screenshot I take would just advertise whatever fullscreen application I have open at the moment, along with a line of text at the top of the screen with a clock and counters for my unread email and failing tests.

Re:A tiling window manager written in Rust by mhd on Thursday December 18, 2014 @04:27AM (#8766602)
> I'm "quite young" (26), although I don't know what you'd class as "actual work" (do Web development and PhD research count?).

Certainly. It's always hard to judge age on the 'net, but looking at the relevant discussions on reddit or linux forums, you'll find an astonishingly uniform spread of applications, and if you find any code that's not the configuration of the window manager, it'll be some kind of programming 101 material. This, along with the "just installed Linux, this is my new awesome desktop" makes me a bit biased towards assuming a large quantity of teenagers -- also more likely to generally proactively show their neat desktops.

This doesn't mean that every tiling wm user is that way (I certainly am not), just like pinterest isn't a good indicator about the prevalence of refurbished palettes in American bedrooms...

I would say that you probably have more in common with corporate windows users who have their apps running fullscreen all the time, too and that way don't ever changed their backgroudn from Napa valley, than with the "unix ricers" who regularly apply patches to their minimal wms that leave large borders around their windows, so that their background is still evident.

Re:A tiling window manager written in Rust by numeromancer on Thursday December 18, 2014 @09:38AM (#8767344)

    My alternative would be bspwm, the binary space partitioning wm.
I like bspwm's approach to keyboard shortcuts: don't do them. Have an external socket through which external applications have complete control over window-manager tasks, and use an external hot-key manager (sxhkd, by the auther of bspwm) to send commands to it to handle windows.
Re:A tiling window manager written in Rust by kevin_thibedeau on Wednesday December 17, 2014 @01:53PM (#8763640)
Tiling managers become more compelling on large high resolution displays where running everything maximized is inconvenient and you want to ease the burden of shuffling windows around.
Re:A tiling window manager written in Rust by elsjaako on Thursday December 18, 2014 @04:10AM (#8766560)
> But for certain usage patterns, that doesn't get you a lot. Even if you're popping up disposable shell windows left and right, you might also do that within screen/tmux, where the window manager doesn't come into play at all (or have some drop-down quake-like console).

I've started to notice I often have i3 open with an xterm running screen in which I'm running vim with multiple buffers. I should start using ctrl-alt-F* so I have 4 layers of context switching...

Re:A tiling window manager written in Rust by jff on Wednesday December 17, 2014 @12:55PM (#8763329)
I use StumpWM, but it can be a real pain in the ass to get running and configured. I like that it has static layouts: you manually split the screen into panes and windows go in those panes, rather than everything resizing & shuffling whenever you open a terminal. I also really like the keybindings, which are by default all preceded by C-t, so you'd hit "C-t c" to open a new terminal--this avoids the whole "window manager ate all my alt-key combinations" problem you'll run into with i3 and a lot of other WMs. The problem is that it's Common Lisp, so the binary is huge and it takes a long time to start up, and sometimes it crashes in interesting ways. But on the other hand, it's Common Lisp, so you can connect to it from Emacs and play with the code... at least until you crash it.

I'm thinking about trying the new Guile window manager that popped up here a few days back, it looks like it has a StumpWM-esque style and maybe Guile is a little more light-weight/less flaky than most Common Lisp implementations.

Re:A tiling window manager written in Rust by spain on Wednesday December 17, 2014 @02:08PM (#8763714)
> I'm thinking about trying the new Guile window manager that popped up here a few days back, it looks like it has a StumpWM-esque style and maybe Guile is a little more light-weight/less flaky than most Common Lisp implementations.

Thanks for bringing this to my attention! I'm a StumpWM fan too and it looks like Guile-WM has promise. Here's the homepage for anyone else interested:

http://www.markwitmer.com/guile-xcb/guile-wm.html

Re:A tiling window manager written in Rust by jff on Wednesday December 17, 2014 @03:49PM (#8764261)
I was just about to switch over to Guile-WM on my desktop today, but it doesn't look like it has virtual desktop support, which kind of kills it for me for the time being. Otherwise it ticks pretty much all the right boxes.
Re:A tiling window manager written in Rust by photex on Wednesday December 17, 2014 @05:55PM (#8764910)
Virtual desktops are so amazingly useful that it's hard to imagine why a tiling WM wouldn't adopt them.
Re:A tiling window manager written in Rust by jff on Wednesday December 17, 2014 @06:13PM (#8765012)
I imagine he just hasn't implemented them yet--they're not incredibly difficult and can usually be added later, as I did for Plan 9's rio WM at some point.
Re:A tiling window manager written in Rust by Yen on Wednesday December 17, 2014 @11:57AM (#8762996)
I'm a fan of i3wm. It has fairly good documentation (I learned it on my own, primarily from the documentation), and a relatively active irc channel.

The nicest things about a tiling manager? You can control nearly everything from the keyboard. It's very quick and easy to set up side-by-side windows (or side/top-bottom, and so on), and resizing one automatically resizes the other. It really helps on smaller screens, since by default everything is full screen with minimal window decoration.

Some nice features of i3wm in particular - well developed manual control, most layouts can be expressed as the composition of simpler layouts, and the config file is just a config file, not a full fledged program.

Also, it's worth remembering that on Linux you can have multiple WMs installed at the same time. You can log in to i3wm, and if there's something you really can't figure out, you can log out and switch to gnome/kde/etc. I don't know if there's a way to switch WMs without shutting down the whole x session though. Would be interested to know if it's possible.

Re:A tiling window manager written in Rust by DSMan195276 on Wednesday December 17, 2014 @12:22PM (#8763137)
> I don't know if there's a way to switch WMs without shutting down the whole x session though. Would be interested to know if it's possible.

Some WM's support the '--replace' flag (Both the WM being replaced and the one you're starting have to support it). If you run a new WM with the '--replace' flag, the old WM will shutdown and the new WM will take-over all the windows it was handling. This is only switching WM's though, so you can't really switch into Gnome or KDE doing this and then switch-out. i3 doesn't support it though (It would have a bit of a hard time supporting it anyway), so you can't do it with i3.

If you can't do it that way though, then just have your X session start a terminal on screen instead of a WM. The X session will stay live as long as that terminal stays open, so you can start and kill any number of WM's as you want as long as your other programs don't mind it. Not everything shuts down very cleanly though, so you might not be able to start and close Gnome and then start KDE in the same session. You should be able to kill i3 and start openbox or xfwm though, for example.

Re:A tiling window manager written in Rust by Shish2k on Wednesday December 17, 2014 @12:46PM (#8763279)
> You can control nearly everything from the keyboard

Personally I'm still waiting for a tiling WM with mouse support - having used a few keyboard based WMs, and having used Eclipse, I find Eclipse to be by far the nicest. The only problem being that it's an application panel manager, not an X windows manager :(

The features I want from a WM: http://shimmie.shishnet.org/v2/_images/ae13a6ed6a5d725f34d10...

Re:A tiling window manager written in Rust by codingbinary on Wednesday December 17, 2014 @01:33PM (#8763525)
Ok, for the dragging part I would have to come up with something, but theoretically, your desired features are possible. I just need some spare time to implement the layout plugins and come up with a good way to handle keyboard shortcuts in nested splits.
Re:A tiling window manager written in Rust by scrollaway on Wednesday December 17, 2014 @02:13PM (#8763739)
kwin is working on this. They ripped the tiling logic from the core somewhat recently but I believe they either added it back as an addon, or are in the process of doing so. You can email their ML for more info.
Re:A tiling window manager written in Rust by rmk2 on Wednesday December 17, 2014 @01:03PM (#8763373)
i3wm lets you resize both floating and tiled windows via the mouse. You can also decide where the systembar goes.
Re:A tiling window manager written in Rust by langseth on Wednesday December 17, 2014 @11:50AM (#8762951)
I use awesomeWM, http://awesome.naquadah.org/, we have about 10 converts in our office now. It seems to be fairly well documented and has plenty of addons to make it look better (although I use just the bare minimum).

I just wish I could find a decent tilinging manager for OS X (divvy and amethyst do not fit my requirements)

Re:A tiling window manager written in Rust by auxym on Wednesday December 17, 2014 @11:59AM (#8763010)
I tried awesome, and was somewhat disapointed by a community that felt 'dead'. Searching google for answers to questions I had often yielded old, out-of-date answers not relevant to the current version. I did however appreciate the ease of configuring it with Lua.

If I feel like trying a tiling wm again, I think I'd go with xmonad. From reading, it seems to have decent defaults, and it'd a good opportunity to start playing with Haskell.

I wish integrating tiling wm's with regular DE's, even lightweight ones (lxde, xfce) would be more popular. When switching all out to awesome, I missed the conveniences like a tray with wifi and sound volume. I just want a DE, with tiling windows!

Re:A tiling window manager written in Rust by Symmetry on Wednesday December 17, 2014 @01:57PM (#8763659)
If you're running Ubuntu then if you

  apt-get install xmonad gnome-panel
a GNOME with Xmonad option will appear in your login screen. Then you have to create an xmonad configuration that works with GNOME like so

  import XMonad
  import XMonad.Config.Gnome

  main = do
      xmonad $ gnomeConfig
in .xmonad/xmonad.hs and everything will work.
Re:A tiling window manager written in Rust by rkrzr on Wednesday December 17, 2014 @06:04PM (#8764969)
Mind = blown. That's awesome, I'll have to give this a try. I used to run XMonad on Arch, but then I switched to Ubuntu a couple of years back and got with the Unity program. But if I can have the best of both worlds, I'm sold. The icing on the cake would be if a drop-down terminal like Tilda still works with this hybrid setup as well.
Re:A tiling window manager written in Rust by th0br0 on Wednesday December 17, 2014 @02:05PM (#8763700)
I've been using xmonad for ... well, guess it's been the past 3 years now. Never had to change the config or adapt to API changes as I had with LUA and things just work. Plus, it's quite performant (although it has some input-looping related quirks sometimes) and hardly takes up any memory. Can only recommend it to people new to the tiling wm scene.
Re:A tiling window manager written in Rust by chriswarbo on Wednesday December 17, 2014 @05:29PM (#8764760)
I used Enlightenment 16 in Gnome 2 for years, but Gnome 3 seems to take more of an everything-or-nothing approach. These days I'm using Xmonad standalone, plus Xmobar as a kind of pipe-driven, text-only notification area. If I ever need a system tray, I run trayer (and curse whoever designed the program that requires it!).
Re:A tiling window manager written in Rust by S4M on Wednesday December 17, 2014 @12:02PM (#8763026)
There [0], how to use xMonad with xfce, I followed the instructions and it worked fine. I didn't have any problem to roll back either.

https://www.haskell.org/haskellwiki/Xmonad/Using_xmonad_in_X...

Re:A tiling window manager written in Rust by ianyh on Wednesday December 17, 2014 @02:06PM (#8763708)
What about Amethyst didn't fit your requirements? I know it's still buggy, I'm just curious if there's any specific ones or if it's just generally not useful to you.
Re:A tiling window manager written in Rust by estebank on Wednesday December 17, 2014 @12:04PM (#8763039)
Try spectacle. It's pretty simple and straightforward. You cannot do advanced layouts, but splitting the screen in halfs both vertically and horizontally with the keyboard makes Mac OS X much more bearable.
Re:A tiling window manager written in Rust by bombtrack on Wednesday December 17, 2014 @05:59PM (#8764939)
I tried several for OS X and landed on using Moom [0].

The layout snapshots is really handy to jumpstart the day and put everything in place. Keyboard shortcuts allow resizing and moving windows around. It's highly configurable, so you can add or remove features as you see fit. I'd give the free trial a spin.

[0] http://manytricks.com/moom/

Re:A tiling window manager written in Rust by shmulkey18 on Wednesday December 17, 2014 @12:49PM (#8763303)
Same here, but I prefer a WM that supports (for want of a better term) "packing" 80 column wide Xterms and Emacs windows into the screen and doing static placement of things like Pidgin. The tiling WMs I've briefly looked at all seem to re-size windows to fill the available screen real estate; I'm old school and want my Xterms and Emacs windows to be 80 chars wide.

Are there any tiling WMs which support this layout style or can be easily configured to do so?

Re:A tiling window manager written in Rust by Sir_Cmpwn on Wednesday December 17, 2014 @11:42AM (#8762900)
I use i3 and I love it. You can steal from my config if you like:

https://github.com/SirCmpwn/dotfiles/blob/master/i3/config

Re:A tiling window manager written in Rust by lewaldman on Thursday December 18, 2014 @01:41PM (#8768875)
Mate... I will tell you that the one that I find have the easier learning curve is AwesomeWM.

The main advantage of it tho, is not the tiling window managing facilities... But the run-or-raise plugin.

It allows you to run (start) or raise (go to the window) of any application with an assigned shortcut.

Mine are: Mod+e - Emacs Mod+u - Browser (Conkeror) Mod+y - Browser (Chromium) Mod+k - Konsole Mod+. - Keepass Mod+x - Pidgin chat window Mod+i - Skype chat window

The choice of shortcuts may seen arbitrary, but I'm a Dvorak user and all the keys are easily accessible.

With this setup, from my editor I'm a Mod+u / Ctrl+g g to a search on google, and from there I'm a Mod+k from my terminal (from where I run tmux... ;P) and a Mod+e from Emacs.

I'm also using a dropdown terminal with another tmux where I have access, from any where on my system just pressing F1, to my MTA (mutt), file manager (mc), IRC (irssi), Music player (cmus) and a root shell.

Honestly... With this setup there is definetly no going back... Every thing on the tips of my fingers... Some shortcut away.

I almost feel part of the machine! :)

Re:A tiling window manager written in Rust by kornakiewicz on Wednesday December 17, 2014 @12:03PM (#8763030)
I use i3 since about two months.

I got same issues like you and here's my advice: install i3 and try to use it, after 2-3 days you'll be able to move windows, switch them or run apps with only keyboard (keybindings are pretty intuitive, but you need to try). Don't try to use it for every task or force yourself to use only it - I hate it when have to deal with some windows apps in wine, which are opening alerts and windows like shit, and then simply switch to gnome or sth. Don't try to customize everything at once, but rather slowly find your real needs and google around how to make your system your best tool.

Re:A tiling window manager written in Rust by robertfw on Wednesday December 17, 2014 @11:57AM (#8762999)
I use I3 and highly recommend it. I used to use Awesome - i3 has felt much easier to work with and configure. The docs are pretty good.

I can't go back to a non-tiling manager now!

Re:A tiling window manager written in Rust by johnmaguire2013 on Thursday December 18, 2014 @12:05PM (#8768290)
Do i3. It's one of the easiest to learn and the only way I was able to get into tiling window managers. I outgrew it when I got a 4K TV as it wasn't able to handle it well, but as others have said, it's "less pure" of a window manager. It's extremely dynamic, easy to move things around, and easy to resize. If you've used vim before it'll be even easier.
Re:A tiling window manager written in Rust by S4M on Wednesday December 17, 2014 @11:59AM (#8763013)
I used to use xmonad, but ditched it because it wasn't working well with Android Studio. I read somewhere that other tiling window managers have problems to display Android Studio under some video drivers.

Now I'm back to the default window manager of xfce4, which is ok since I tend to use only emacs and a browser, so I have have one workspace for each.

Re:A tiling window manager written in Rust by foobarqux on Wednesday December 17, 2014 @01:13PM (#8763428)
There is a problem with tiling window managers and Java GUIs. The fix is to export an environment variable whose name you can find on the XMonad faq.
Re:A tiling window manager written in Rust by S4M on Wednesday December 17, 2014 @01:41PM (#8763570)
Thanks for the tip! I gonna give xMonad another chance!
Re:A tiling window manager written in Rust by chriswarbo on Wednesday December 17, 2014 @05:25PM (#8764739)
There's a program called "wmname" specifically designed for this: http://tools.suckless.org/wmname

Just run "wmname LG3D" then restart any open Java programs.

LG3D is "Looking Glass 3D", a Java window manager http://en.wikipedia.org/wiki/Project_Looking_Glass . It's quite amusing that Java's UI toolkit contains special-cases to avoid breaking their demos.

Re:A tiling window manager written in Rust by jqm on Wednesday December 17, 2014 @10:28PM (#8765841)
I like i3 quite a bit. It was easy to pick up and a huge improvement over KDE for what I do. Especially on the laptop. The 3 second X startup is nice too. It did take a little work to get it set up and comfortable.
Re:A tiling window manager written in Rust by darklajid on Wednesday December 17, 2014 @11:52AM (#8762967)
I'm running i3wm.

I wouldn't consider myself an expert and found the change (I'm otherwise a Gnome kind of guy) easy enough. Is there anything specific you have trouble with?

Re:A tiling window manager written in Rust by vidarh on Wednesday December 17, 2014 @12:00PM (#8763019)
It took me an evening to get fully switched to i3wm. It's simple, and fast, and easy to understand and configure.
Re:A tiling window manager written in Rust by fla on Wednesday December 17, 2014 @11:55AM (#8762983)
I was in a similar situation and ended happy with bspwm beacause it's very minimal and simple to figure out.
Re:A tiling window manager written in Rust by spain on Wednesday December 17, 2014 @11:56AM (#8762986)
i3 is pretty easy to learn and configure I'd say having dabbled with most of the popular window managers bar Xmonad. Nowadays I just use the Xfce window manager.