|
A feature matrix isn't a bad idea (and I opened an issue to track https://github.com/ianyh/Amethyst/issues/267), but it's kind of hard to compare as they are such different pieces of software. Spectacle is manual window management and Amethyst is tiling window management. Manual window management generally gives you better control and generally less overhead in terms of complexity. So it works well in the case of "I want to be able to move this window to the upper half of the screen", "I want to be able to make this window take up the entire screen", etc. You have to trade simplicity to get flexibility, though. What if I want to be able to move window to the upper right hand quarter of the screen? Or what if I want my screen divided into a grid of 3x4 and I want a window in the [0][1] position? You can accomplish all of those things, but you have to specify how to go about it, thus adding complexity. Slate, for example, puts that complexity upfront in writing a config file. Divvy, for example, puts that complexity at runtime. Tiling window management gives you a more hands off approach. So things like "I want all of my windows to be laid out in this orientation, but I don't want to move them myself", "I want all of my windows to be visible at any given time", etc. You don't take actions to lay windows out, you just define algorithms for how they should be laid out and let the software sort them out. You have to trade simplicity to get control, though. Defining those algorithms can be complicated if you're not doing something really straightforward, and if you're not doing something straightforward it can sometimes be non-trivial to grok what's actually going on. Or you end up doing a lot of runtime massaging to get things working the way you want. To each their own, though. I prefer tiling window management, I have coworkers who prefer manual window management. They're just different tools. |