5 ms·
This seems like a good time to plug my tiling window manager for Windows, workspacer. https://www.workspacer.org/ https://www.workspacer.org/ I use xmonad on m
by rickbutton 7y ago
This seems like a good time to plug my tiling window manager for Windows, workspacer. https://www.workspacer.org/ https://www.workspacer.org/
I use xmonad on my linux machines, and wanted something similar for Window, so workspacer trys to replicate that style of window manager (configurable via writing C#, dynamic layouts, etc).
I've been using it every day for about a year, but its still pretty early, there are some applications for which it freaks out, but for the most part it works! What it really needs is a good set of docs and a bunch of examples, but I haven't had any time to flesh it out.
I was hoping to see some unique tricks in the source for Fancy Zones, but it looks like it more or less does the same thing as workspacer, managing the set of open windows and occasionally calling SetWindowPos.
- Siecje 7y agoWhat is different about some applications?
- rickbutton 7y agoSome applications like to reset their own position occasionally, or don't take kindly to being resized from an outside process. WinSCP is an example where workspacer tries to resize/position the window, and WinSCP itself listens for the move event, and moves itself. workspacer gets that second move event, and cycles back and forth forever. For the few cases where it doesn't work right now, I have ignore routes setup in my config file (so workspacer will just ignore any matching window). I should probably make a list of the few common apps that are weird.
- saagarjha 7y ago> WinSCP is an example where workspacer tries to resize/position the window, and WinSCP itself listens for the move event, and moves itself. Why?
- rickbutton 7y ago¯\_(ツ)_/¯
- nailer 7y agoSlightly off topic, but openscp comes with Windows now: $ which scp C:\WINDOWS\System32\OpenSSH\scp.exe So no need for WinSCP if you just want to use the terminal.
- jodrellblank 7y agoMartin Prikryl (the WinSCP main developer) is quite active on their forums and on StackOverflow questions about WinSCP; might be worth asking why or if it could be turned off; https://winscp.net/forum/viewforum.php?f=2&sid=5a9eada96b43f6d8db92ac3f67fb68ed https://winscp.net/forum/viewforum.php?f=2&sid=5a9eada96b43f...
- JerwuQu 7y agoOh! This is the closest I've seen to what I want when on Windows. I run linux at home but Windows at work, so I miss i3 a lot. I've tried some other tiling WM attempts for Windows before but none of them have worked very well... I'll definitely give this a try!
- rickbutton 7y agoPlease do! I haven't had time to work on it lately, but if there is interest in it I wouldn't mind picking it back up!
- JerwuQu 7y agoJust downloaded it and I have some pretty specific/opinionated requests already :P I like it when the config file is explicit - as in that there are no defaults outside of what is specified in the config file. This way it's very easy for a new user (like me) to edit things like keybinds, colors, etc. without having to basically recreate the default config to then edit it. Also, since I'm an i3 user, I'd like if there was the possibility of navigating windows using directions instead of in a sequence, and to create layouts on the fly by doing splits and resizing. Maybe this is already possible by writing some code in the code though? Nothing too important, but thought I'd voice my initial thoughts. Thanks for your work! I'll go ahead and plug my dmenu equivalent[0], since that's also something I use when on Windows and which someone might find useful. [0]: https://github.com/jerwuqu/wlines https://github.com/jerwuqu/wlines
- rickbutton 7y agoon default config: yeah, I'm not sure what the best story is here. I would like the out of the box experience to be nice, and I want to be able to configure anything, but I also want to be able to ship nice improvements to the defaults without making all users update their own config. For example, I just pushed a commit that adds a default ignore for a new start menu process in 1903. If I place that ignore in the "template" for the config file, then all users with a custom config will need to somehow diff their config with the default. I am 10000% open to suggestions on how to make this better. On direction changes, I've gotten this request a few times. It should be pretty easy, but I haven't gotten around to it: https://github.com/rickbutton/workspacer/issues/43 https://github.com/rickbutton/workspacer/issues/43 On the fly layouts would be neat. Since layouts are just an instance of ILayoutEngine, you could probably just write a bunch of custom code to allow you to make splits however you want. I would be super interested in seeing what this looks like! wlines is awesome! There is a feature in workspacer similar to dmenu called "menus", but there are a few bugs, mostly around it sometimes not showing up in focus, which is a pain. I have some config on my work machine that lets me press alt-shift-p and navigate to a bunch of work projects I maintain, only typing the first few characters of the project I'm looking for.
- loop0 7y agoHonest question here: what are the advantages over fancy zones? I'm a linux i3 user and want to give a try on windows with fancy zones, I can give workspacer a try as well.
- rickbutton 7y agofancy zones is very different conceptually from i3/xmonad or workspacer. fancy zones allows you to define a static layout, and then drag windows into the zones you create. layouts in workspacer are defined in code, and are "always on", in that the window position/size is always handled by workspacer, instead of only when you ask for it.
- urda 7y agoWhat's your use cases for workspacer? How do you use it yourself?
- jvanderbot 7y agoLooks like the venerable i3 (https://i3wm.org/ https://i3wm.org/ ). The workhorse of workspacing for this guy.
- cyansmoker 7y agoFun! I created a configuration that lays out tiles following the Fibonacci pattern: https://gist.github.com/Fusion/8ad05ac05948b3397516aa836f0a10f0 https://gist.github.com/Fusion/8ad05ac05948b3397516aa836f0a1...