8 ms·
Slate: a Mac OS X window manager for power users
- MaysonL 14y agoAm I the only one who hardly sees any value in window managers? About 99% of the time, I'm wanting only one window visible at a time, with others quickly accessible via cmd-tab and cmd=`.
- mauriciogardini 14y agoI was discussing this some minutes ago with a friend of mine: if you have a 11" or 13" screen, that's the reasonable way to go (Unless if you are like me, of course, that feels the need to use Slate in a 13" screen)... But, if you can work with bigger screens, splitting your workspace and making more information available at the same time may be a good thing.
- jacques_chester 14y agoLots of people -- I'm one of them -- find that switching whole windows seems to pop the mental stack. Whereas turning my head left and right does not do so. Most programming requires at least 4 logical views, IMO: 1. The code 2. The result of the code (web page, test results etc) 3. Documentation that supports coding 4. A control mechanism (ie, a terminal) No doubt there will be quibbling that some of these are really the same, blah blah. I don't care, I think 4 is the logical minimum and the physical assignment of those 4 basic information types is a matter for each programmer.
- abstractbill 14y agoLots of people -- I'm one of them -- find that switching whole windows seems to pop the mental stack. That's really interesting! I have the opposite problem - switching windows doesn't pop my mental stack, but if there's anything on the screen other than what I'm trying to focus on, it keeps diverting my attention and ruining my concentration. Fullscreen emacs on OSX (without even the system menu bar!) is just awesome for me. Here's a screenshot of what my entire desktop looks like when I'm working on code: http://abstractnonsense.com/desktop-2013-02-17.png http://abstractnonsense.com/desktop-2013-02-17.png
- micampe 14y agoYou may find this little app useful http://willmore.eu/software/isolator/ http://willmore.eu/software/isolator/
- abstractbill 14y agoThanks, that does look quite awesome!
- marchdown 14y agoHow do you get true fullscreen mode in Emacs on OS X?
- brainid 14y agoWith Emacs 24 you can use ns-toggle-fullscreen.
- marchdown 14y agoEmacs 24.2.1 here, no matches for "ns-toggle fullscreen". Edit: no luck with the latest pretest (24.2.93.1) either.
- dustingetz 14y agofor `M-x ns-toggle-fullscreen` you need `brew install emacs --cocoa`
- abstractbill 14y agoI have (set-frame-parameter nil 'fullscreen 'fullboth) in my .emacs, and it just works (GNU Emacs 24.2.91.1 (x86_64-apple-darwin, NS apple-appkit-1038.36)).
- nfg 14y agoIf using macports then install using port install emacs-app +fullscreen Then ns-toggle-fullscreen as mentioned below.
- jawngee 14y agoI think it depends on how you "grew up" as a developer. Being "raised" in a Windows(tm) and OSX environment, alt-tabbing is a natural process, where maybe coming from an terminal/xwindows existence you are accustomed to the screen being carved up into squares. I think it also depends what kind of development you do. Doing iOS dev, I am constantly flipping between XCode, Photoshop, Chrome, Tower, Simulator and a bunch of other tools which don't play well with the idea of being sequestered to individual areas of the monitor. When I do openFrameworks development, I have to add multiple virtual machines to the mix (Windows and Linux while running on OSX) for cross-compiling and testing. I use two thunderbolt cinema displays and I still constantly run out of screen real estate so tools like these, though I've tried to use them, end up not fitting into how I work. ymmv.
- wting 14y agoI usually have 1-2 windows of documentation on one screen and 2-4 terminals open on another.[0] This allows me to prototype, compile, test, build, look up info with minimal window switching. The biggest advantage is never having to hunt for the correct window--everything is one keyboard shortcut away. [0]: http://i.imgur.com/xctkdtq.png http://i.imgur.com/xctkdtq.png The empty black box is due to my right monitor being in a vertical position.
- drivebyacct2 14y agoMaybe on my Macbook Air (and even then, it's almost always Chrome/Sublime side by side, or Sublime/terminal), but there is no application that needs my full 2560x1440 resolution. I can have two columns of my text editor, documentation and a terminal up. But I usually layer my terminal over my text editor and have it "stick to top". Just another thing I had to "hack" to make work in OS X that works out of the box in all Linux Window Managers. With Ubuntu working perfectly out of the box on my MBA, I don't know why more people don't just take the step and use Linux instead. It's so nice to leave the world of outdated development tools and a stupid window manager behind.
- eropple 14y ago> With Ubuntu working perfectly out of the box on my MBA, I don't know why more people don't just take the step and use Linux instead. Because the battery life is worse. (I have tested.) Because it runs hotter. Because the poor graphics drivers (for my rMBP) mean that it's running hotter for nothing. Because tiled window managers are not a solution for any problems I have. Because Ubuntu doesn't have Mission Control. Because IntelliJ isn't very good on Linux. Because Xcode doesn't exist on Linux. Because VMware Fusion doesn't exist on Linux and VirtualBox is insufficient. Because MacVim is nicer than GVim. . That Linux fits you is great; this stupid faux-mystified "I don't know why more people don't use this niche thing I like" is not.
- drivebyacct2 14y ago>Because the battery life is worse. (I have tested.) Not any more. I've owned MBA for 3 years now and have been using Ubuntu on the 2012 model for the last three months. I get every bit of battery life in Linux that I do in OS X. This wasn't true a year ago, but it is now. >Because it runs hotter. Not any more. Certainly not during day to day tasks. Certainly not during routine development. Certainly not while watching Flash videos. Certainly not while playing TF2. >Because the poor graphics drivers (for my rMBP) mean that it's running hotter for nothing. Linux is getting switching support. It's already useable. >Because tiled window managers are not a solution for any problems I have. I don't use a titling window manager. Besides, "I don't need those features" is a pretty sad arguing point. >Because Ubuntu doesn't have Mission Control. KWin, Compiz and Mutter ALL have support for Expose. KWin's implementation is actually nearly identical to the Mac implementation. In fact, they've had it for as long or longer than OS X has had it. >Because IntelliJ isn't very good on Linux. As someone who pays for an uses IntelliJ, I don't even know what the hell that means. >Because Xcode doesn't exist on Linux. And that's a good thing. >Because VMware Fusion doesn't exist on Linux and VirtualBox is insufficient. LOL. Is this even a serious point? Hello? VMWare Workstation? KVM+QEMU? Xen? >Because MacVim is nicer than GVim. Are you fucking kidding me? >"niche thing" Oh you're cute. I shouldn't have wasted my time replying to an obvious troll.
- calinet6 14y agoAgreed. And for quick shortcuts when I do need a window manager, ShiftIt works just fine. http://trisweb.github.com/ShiftIt/ http://trisweb.github.com/ShiftIt/
- dbpatterson 14y agoI almost always want only one window available (except terminals) - but don't want to have to think how to get to the other ones. When doing web development, I generally have some terminals open, my editor, and my web browser. If I use alt-tab, I need to remember which window I came from most recently - with xmonad, I _know_ alt-1 gets me to terminal, alt-2 to editor, alt-3 to web browser. It's minor but it is something I have to do hundreds of times each day, and avoiding the minor irritation of having alt/cmd-tabbed past the one I wanted is worth it.
- martinced 14y agoI'm using the "awesome WM" under Linux and I find it much more convenient to have "virtual desktops" and always organize them the same way (1 for personal GMail + Google Docs, 2 for terminals, 3 for Emacs, 4 for professional email, 5 for an IDE, 6 for browsing the web, etc.) and be able to directly go to the one desktop that I need using a shortcut. It's beats tabbing / cycling between opened apps any day. As a side benefit, each virtual desktop can have it's own windows layouts: you like your GMail / Google Docs to be full screen, use a full screen layout. You like your IDE to use 2/3rd of the screen and a browser used for testing to use the rest: so be it. The problem with your method is that you lose lost of time tabbing / cycling and then for the 1% of the time where you need a layout more complicated than "one windows visible" you spend time picking up the windows you want to show (and potentially manually fine-tuning their position using the mouse). So you hardly see any value in a window manager but others hardly see the value in losing time tabbing / cycling endlessly between apps when a single shortcut can display the app(s) they want in the layout they want.
- phaedrix 14y agoJust moved to a MBP Retina for the hardware after using Linux for years, and the main thing I miss is Awesome WM. After looking at Divvy, SizeUp and several others, finally settled on ShiftIt (primarily because of key shortcuts for resizing horizontally by custom percentages), but may have to give Slate a try...ShiftIt helps, but still no comparison to a decent Tiling WM like Awesome. https://github.com/fikovnik/ShiftIt https://github.com/fikovnik/ShiftIt
- grimgrin 14y agoThis looks neat. I'm going to have to play around with it soon. As of now I've been using SizeUp, which is way less configurable, but great at giving you that top/left/right/bottom (and corners) placement you may be looking for. http://www.irradiatedsoftware.com/sizeup/ http://www.irradiatedsoftware.com/sizeup/
- jheimark 14y agoI use SizeUp for window management. Not perfect, but for most tasks I've found it more than good enough. Will be giving Slate a trial period to see if I like it more. (sizeup: http://www.irradiatedsoftware.com/sizeup/ http://www.irradiatedsoftware.com/sizeup/)
- jfb 14y agoBack in the Dark Ages, before OS X was truly usable, I rocked ion on my FreeBSD machine and MachTEN (to run Emacs) on my Macs. This experience conditioned me to not fight the platform -- slate, as nice as it looks, seems to me a great deal like fighting the platform. Is it?
- esolyt 14y agoMaybe so. But I don't see a problem with that. OSX window management currently satisfies average users, but not power users. And since power users are exactly the kind of people who can do something about it, they are doing it.
- jfb 14y agoI think the distinction between "power users" and "average users" is meaningless. A user is someone who derives utility from a given platform.
- whaevr 14y agoPerhaps so. But what if said user is interested in tweaking things to bend entirely to their own way of (loose use of word) computing. So much to the point that they are willing to (develop and or/change the entirety of) some of the main points of the functioning operating system (window management). Now the difference between that person and the guy thats fine with changing the windows theme to a different color....theres a distinction there the size of the grand canyon.
- zwily 14y agoWhat, exactly, is your definition of "power user"?
- sjwright 14y agoCan't speak for the OP, but mine is someone who is sufficiently comfortable that they will happily accept increased complexity for improved productivity. (Like so many labels it spans a range on a continuum, but the thresholds should be fairly intuitively obvious.)
- 8ig8 14y agoSlate has been discussed a few times recently. For more background, here are a couple other HN threads: http://news.ycombinator.com/item?id=4817000 http://news.ycombinator.com/item?id=4817000 http://news.ycombinator.com/item?id=4589658 http://news.ycombinator.com/item?id=4589658
- cseelus 14y agoLooks neat, albeit for me personally it might be a little over the top. I use Moom (http://manytricks.com/moom/ http://manytricks.com/moom/) for quite a while and I'm happy with it so far as it integrates perfectly into the overall UI of OSX. You have of course also convenient (and customizable) shortcuts for actions like 'Move & Zoom Window to Left Half', which is quite handy for example for webdevelopment on a smaller screen (Macbook), where you might want your browser to occupy one half and your editor the other half of the screen.
- cwharland 14y agoFor a GUI configurable and generally well behaved manager look at Divvy: http://mizage.com/divvy/ http://mizage.com/divvy/ It's very customizable and has worked for me across at least three versions of os x.
- tonybaroneee 14y agoYep, I use Divvy on a daily basis and really enjoy it. Only thing I wish it had was a memory of the window size before it is re-sized with Divvy. Here's what I mean: In Windows, you can WinKey+RightArrow something to dock it to the right half (totally possible in Divvy), but then WinKey+LeftArrow returns it to its original windowed size. I use that technique a ton on my Windows box, would love to see an OSX window manager with that feature. Edit: Hmm, looks like SizeUp has this feature with "snapback". Cool.
- trotsky 14y agoI use Better Touch Tool to bind keyboard shortcuts to window actions like halves & corners to achieve a similar result. http://www.bettertouchtool.net/ http://www.bettertouchtool.net/
- DeepDuh 14y agoThat's an interesting solution, especially since the suggested way for controlling spaces is already a touchpad thing on macs - extending the functionality for windows seems quite natural.
- ronyeh 14y agoI also love BTT. I have some keyboard and/or trackpad macros that allow me to organize my windows very quickly, to my desired quadrant or half of my screen.
- pidg 14y agoI've always used BetterSnapTool from the same developer, which is basically the window management features of BetterTouchTool as a standalone app. Not sure why it's not free, when BetterTouchTool is, but I'm not going to begrudge him that one-off payment for something I use every day.
- keikun17 14y agoI am currently use optimal layout (with expired trial, but size/tile position hotkeys still work) and have not used other tiling app since, i'll give this one a shot.
- stcredzero 14y agoFor my 13" Macbook Pro I use two 27" screens and Divvy and hot keys: +---+---+---+---+---+---+---+---+ | | | | A | B | | | | +---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+ | | | | | | 1 | 2 | 3 | 4 | | | | | | +---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+ | 1 | 2 | 3 | 4 | +---+---+---+---+---+---+---+---+ | 5 | 6 | 7 | | +---+---+---+---+---+---+---+---+ I can place a screen in any one of the boxes as above, with a hot-key. A and B are Cmd-Opt-, and Cmd-Opt-. The rest are based on number keys with modifiers. The two 27" screens are 1900x1080, and connected through a DualHead2Go DP edition.
- blablabla123 14y ago>I use two 27" screens The Window Manager is clearly aimed at large screens.
- phyalow 14y agoXterm from GNUStep running over X11. All I ever need on OS X.
- myared 14y agoSince it seems that everyone is posting their favorite flavor, here's mine: http://spectacleapp.com/ http://spectacleapp.com/. Open source and gets you hooked in minutes. I can't imagine using OS X without it.
- jrdmcgr 14y ago+1. I've been using spectacle with great success. I previously tied the demo for Sizeup, which is a little more polished, but cost $20 at the time. The only thing that Spectacle is missing is the ability to move windows between monitors. I recently switched to a single 27", so I haven't been missing this feature. I'm definitely going to check out Slate — looks cool.
- bobx11 14y agoI use Moom to do the same thing
- danielpal 14y agoSlate is amazing, been using it for a few months. Biggest issue is it takes a bit of config to get it just right. Here's my config file. # Configs config defaultToCurrentScreen true config checkDefaultsOnLoad true config windowHintsShowIcons true config windowHintsIgnoreHiddenWindows false #config windowHintsDuration 5 config windowHintsSpread true #config windowHintsOrder persist config windowHintsFontColor 0;0;0;1.0 config windowHintsFontName Futura config windowHintsFontSize 70 bind e:cmd hint ASDFGHJKLQWERTYUIOPCVBN # use whatever keys you want # Abstract positions alias full move screenOriginX;screenOriginY screenSizeX;screenSizeY alias lefthalf move screenOriginX;screenOriginY screenSizeX/2;screenSizeY alias righthalf move screenOriginX+screenSizeX/2;screenOriginY screenSizeX/2;screenSizeY alias topright corner top-right resize:screenSizeX/2;screenSizeY/4 alias bottomright corner bottom-right resize:screenSizeX/2;screenSizeY/4*3 bind down:ctrl ${bottomright} bind left:ctrl ${lefthalf} bind up:ctrl ${full} bind right:ctrl ${righthalf} bind ;:ctrl ${topright} # Resize Bindings bind right:alt resize +8% +0 bind left:alt resize -8% +0 bind up:alt resize +0 -8% bind down:alt resize +0 +8% bind right:ctrl;alt resize -8% +0 bottom-right bind left:ctrl;alt resize +8% +0 bottom-right bind up:ctrl;alt resize +0 +8% bottom-right bind down:ctrl;alt resize +0 -8% bottom-right
- jjcm 14y agoI've been using Cinch, which does a similar thing (albeit it doesn't have quarter sized windows) by mimicking the abilities of Aero Snap in windows (drag to the sides to make it half the screen, drag to the top to make it full screen).
- AntiRush 14y agoIf you're looking for XMonad on OSX, check out OSXMonad(https://github.com/xmonad/osxmonad https://github.com/xmonad/osxmonad). It's pretty usable at this point. One problem with it (and any of the other tiling solutions), is the drop shadows OSX adds to windows. When you have your windows flush with each other they look pretty bad. Shadowkiller(http://unsanity.com/haxies/shadowkiller http://unsanity.com/haxies/shadowkiller) removes all of the drop shadows. It claims to be incompatible with 10.6+, but I'm running it with no issues on 10.8.2 and have on most versions of OSX since 10.7
- mauriciogardini 14y agoOkay, this is VERY interesting. I'll probably try that and compare to the user experience that I have with Slate currently. Did you use XMONAD on Linux too? If yes, is the user experience similar? Thanks for the link.
- moe 14y agoSadly, after all these years, ion3 still remains unmatched - on any platform. Anyone who has used it will agree. Sadly most people haven't.
- glogla 14y agoI do find tiling wm without removing the window borders kind of ... well not really useless, but not all that practival. Especially on OS X, where the hot keys are pretty well standardized and you can be pretty sure about what Command-Q does, spending all that room on window borders and few buttons seems so wasteful.
- erifneerg 14y agoI completely agree with you. But once I found this interest setup where you'd map the caps lock key to ctrl/esc and then the ctrl key to cmd+alt+shift+ctrl. That mapping can act like another modifier key. Aside from some games, I have yet to find a program that gets in the way of my setup. http://stevelosh.com/blog/2012/10/a-modern-space-cadet/ http://stevelosh.com/blog/2012/10/a-modern-space-cadet/
- ndreas 14y agoI have used Slate for quite a while to manage my windows, and I think it's great, especially the snapshoting and layout functionality allowing me to go easily between an external screen and my laptop's screen. One of the later versions added support for Javascript configuration which makes it extremely powerful: https://github.com/jigish/slate/wiki/JavaScript-Configs https://github.com/jigish/slate/wiki/JavaScript-Configs
- nicholassmith 14y agoWhat made me go 'ooh!' was the single-to-multi-monitor layout support over anything else, I've looked a few times for something to do that but never came across Slate.
- lrem 14y agoI always found that 50-50 screen split impractical. Many websites want more screen estate. Some apps are sidebar-happy while some aren't. A terminal is just fine with 80 columns, thank you... What I've been doing many years now is getting a 80 column terminal/editor/im client/whatever on one side of the screen and other apps on what's left. Seems pretty near perfection :)
- Brajeshwar 14y agoAnd for all the 'not-so-power-users', you can use Spectacle - http://spectacleapp.com/ http://spectacleapp.com/ (Free)
- podperson 14y agoAnd if you don't need it to be free, there's Sizeup http://www.irradiatedsoftware.com/sizeup/ http://www.irradiatedsoftware.com/sizeup/ . Spectacle looks nearly as nice as Sizeup though.
- codex 14y agoIt looks like this allows setting focus without using the mouse and without tabbing. That's a great feature just by itself.
- tom_usher 14y agoSlate also recently started supporting configs written in JavaScript (https://github.com/jigish/slate/wiki/JavaScript-Configs https://github.com/jigish/slate/wiki/JavaScript-Configs) which is very powerful.
- calgaryeng 14y agoI have been using Slate since that last post came out on HN (a few months ago?) and am absolutely loving it. Combined with binding your caps lock key to "hyper", I have a whole suite of customized keyboard shortcuts that are super useful! A recent version of Slate fixed automatically detecting your screen layout, so whenever I plug/unplug my external monitor it will automatically re-layout my screens.
- moostapha 14y agoOr, if he wants something even closer to xmonad: https://github.com/fjolnir/xnomad https://github.com/fjolnir/xnomad It works really well. Been using it for a while. The only real complaint I have about it is that it's based on xmonad instead of dwm, so a chosen unfocused window swaps with the focused window when you change focus instead of the formerly focused window being pushed to the top of a stack. But for working as a userspace program on OS X with no real modifications, it's really nice. I've tried Slate, Divvy, and at least 5 or 6 others. xnomad is the only one I like.
- deleted 14y ago[deleted]
- prewett 14y agoIs there a window manager for power users that don't like tiling window managers? Half my windows are too big to be tiled (browser, IDE, Inkscape, GIMP, etc.) Plus, I have the desktop background for a reason: I want to see it. I don't want an austere screen paved over with windows like a city with no grass. I like my large windows to not be completely maximized, so I have some empty space. I like having my windows a little disorderly, not quite properly aligned, for the same reason Japanese Go boards are a little too small for 19 stones to fit: nature doesn't create orderly grids. I really miss sawfish, though. I like Alt-Tab to activate the actual window instead of a little a row of icons (it'd be even cooler if it would turn the inactive windows greyscale). I like being able to turn off window decorations per app. Sticky windows don't flicker when you change desktops, like they do on Lion. And, of course, a config file for the things you always want in the same place.