One of the things that I’d love to see in this that fancy zones is missing is the ability of windows to remember where they should be after I reconnect to my dock. Like maybe I run some shortcut right before I disconnect the dock that stores window locations and then when I reconnect I click the shortcut again to restore them to those monitors.
When I worked in an office, and had frequent meetings I had to take my laptop to, it irked me enough to come up with my own solution:
And it's hWnd based, so if the window handle ever changes it won't work. Also won't work for admin windows, unless run as an admin.
But it worked well enough for me.
Search Everything ( https://www.voidtools.com/ & it's toolbar https://github.com/stnkl/EverythingToolbar - highly recommended )
Gif about search everything toolbar: https://user-images.githubusercontent.com/17520641/102723553...
PsTools - https://docs.microsoft.com/en-us/sysinternals/downloads/psto...
The tools included in the PsTools suite, which are downloadable as a package, are: PsExec - execute processes remotely,
PsFile - shows files opened remotely,
PsGetSid - display the SID of a computer or a user,
PsInfo - list information about a system,
PsPing - measure network performance,
PsKill - kill processes by name or process ID,
PsList - list detailed information about processes,
PsLoggedOn - see who's logged on locally and via resource sharing (full source is included),
PsLogList - dump event log records,
PsPasswd - changes account passwords,
PsService - view and control services,
PsShutdown - shuts down and optionally reboots a computer,
PsSuspend - suspends processes,
PsUptime - shows you how long a system has been running since its last reboot (PsUptime's functionality has been incorporated into PsInfo)
Enter https://live.sysinternals.com in to Windows Explorer to browse and run the psTools suite.
Its also exposed via WebDav at: \\live.sysinternals.com@SSL\DavWWWRoot
How do they do that?
Edit: well I guess going there answers the question: it’s exposed via WebDAV
You can connect external displays to USB-C or Thunderbolt docks / hubs.
It is also not uncommon to dock a laptop at a workstation with dual or triple monitors.
I never ever understood why those who do allow gaps (i.e. some space between each window) are basically all, by default (and sometimes it's very hard to change), do add "gaps" near the monitor's borders.
I mean seriously: why on earth are empty pixels added between the leftmost window(s) and the left side of the monitor, between the rightmost window(s) and the right side of the monitor, between the bottommost window(s) and the bottom of the monitor?
This, to me, makes absolutely zero sense. And they all do that, including this one for Windows 10 (as can be seen in the screenshots).
Why? Really: just why? I want to rant and ask: what's wrong with people? : )
It just makes no sense. There's not a world in which it makes sense.
Worse, Awesome VM calls all the gaps "useless gaps" even though it's a fact that gaps between windows aren't useless (especially when you're tiling terminal windows with no borders or with a 1-pixel border, where it can be hard to detect boundaries between two terminals if there's no gap).
But gaps near the monitor's borders are really useless: it's ok, I don't risk mistaking what's at the right of my monitor (atm a physical cup of coffee) or what's at the right of my monitor (atm a tower with three Raspberry Pi stacked) for, say, a terminal window!?
I hacked my tiling VM (the "Awesome VM" on Linux) to not have these really useless gaps on the borders but the assumption that they should be there are so deeply tied in the code that's it's a PITA to do.
"Use the source Luke" and all that but, why, just why? And why hardcode these assumptions in the code? Why do they all do that?
I just don't get it and never will.
Rant off : )
Its purely esthetical :-)
I don't even want to convince people this is right way to do it and just want to make clear there are different perspectives and for some visual composition is more important than information density on screen. I get this might be important for a laptop but running three 4k displays I find it important to clearly visually distinguish all the things on my screens at a glance and also to enjoy an uncluttered but spacey desktop.
Some people prefer the aesthetic of the gaps, but it should at least be an option for tiling window managers.
edit: though regardless, I need to inject ForceResize into them, but still maybe I can come up with some way to subclass windows without subclassing windows lmao, need some gui thread message hijacking
While on Windows I never found a good i3-replacement, I found a fairly mature and stable tiling WM I’ve been contributing too, although it’s more in the style of xmonad.
So if you’re into tiling WMs and you’re stuck on Windows you may want to give that one a try too:
I’m primarily a macOS user, but projects like this really make me wish there were more options (yes, I’m aware of Amethyst, Yabai, Spectacle (now Rectangle), Hammerspoon, and so on. Those options all have their own deficits and trade-offs) in the Apple world.
A suggestion: get rid of any spaces between the windows, but keep the snapping.
Sort of how Aero Snap works today, snap to the entire left half, or the entire right.
Keep the 2x2 grid you have now, but just make it easy to snap to the full size of each grid cell (or 1x2 or 2x1 spaces).
I have never seen Windows WM behave the way i3 does.
It's a bit of a curiosity nowadays, but Windows started out as a tiling system - if memory serves, overlapping windows were not supported until 2.1. But even then, it wasn't like i3.
- guy that worked on the Windows WM (USER & DWM) for over a decade
Tbf that's exactly what floating mode is for
I use i3 but don't know of any way to do this.
One recent thing PyleWM has added, but isn't in the readme, is a fuzzy program launcher, does this have anything like that?
I don't want to change the sizes of the windows and but just move them so that I can easily make use of all of them and for that goal:
For each window, I want its UL (upper left) corner to be on a line from roughly the top center of the screen to roughly the left center of the screen. And I want all those UL corners equally spaced on that line.
So, for the goal: With this arrangement (1) can see at least a little of each of the windows, (2) usually can see the title of each of the windows, and (3) properties (1) and (2) continue to hold for any Z-order for the windows, i.e., can click on the windows in any order, thus, changing the Z-order, and still have properties (1) and (2). So, with (3) can just click on any window, bring it to the top of the Z-order, see all of that window, and still have (1) and (2). That is, can continue working with all the windows without more arranging.
I wrote a little script in Rexx to do this arranging and put an icon on the desktop to run that script. Best place for the icon? Sure, in the UL corner of the screen thus, not covered by any of the so arranged windows.
The version of the Firefox Web browser I'm using does something similar BUT with a difference: The line I mentioned goes from the top center of the screen to the center RIGHT of the screen instead of the center left. Sooo, when a window is brought to the top of the Z-order, usually all the windows with UL corner to the lower right are fully covered, i.e., usually can't see any part of any of them. So, lose property (3) and often soon also properties (1) and (2).
So, having that "line" go to the center left of the screen instead of the center right is a biggie!
Maybe you can take inspiration from one another...
I'm really tempted to try them out, but I probably first need a spare Windows system...
0 - https://github.com/TimUntersberger/nog
That's a shame, I look forward to this restriction being lifted so I can check it out without rewiring my brain in two ways at once instead of just learning the new tool.
There's definitely plenty of overlap: Fancy Zones has some options to try to automatically remember to snap applications to given zones.
Thanks that really clarifies how to view the projects actually.
i3wm is basically like that except ad-hoc instead of preconfigured, and starting from a single full-screen window.
I am using the same computer from 2 locations, one 10 meters away (using extension cables) from the computer. Both locations have a keyboard and a mouse. When I start an application it always opens on the primary display, not the display I initiated the opening of the application from.
On Linux with X11 (with BSPWM or not) this is flawless. The multi display support in Linux / X11 seems to be much more advanced compared to Windows.
Any idea how I can get this in Windows 10?
On Windows you have just one console, one window manager, and multiple monitors. The easiest way to accomplish this is to clone the two monitors in display settings so you're always using the same monitor, regardless of where you're sitting.
Yes cloning is what I ended up doing.
I meant the ability to change workspaces on each monitor separately. In MacOS I can have a 2 monitors each with 2 workspaces, and switch to workspace 2 on monitor 1 without affecting monitor 2's workspace.
I have a primary and secondary monitor (with actual physical differences) and being able to easily move a task from one to the other is such a useful feature. I'd go so far as to say this is the most significant thing from macOS I'm missing right now.
For me it's because I spend more of my time at work programing, while at home I spend as much time gaming, which I've found doesn't work with tiling WM's as well.
Also the focus bar is a little overlay line that could be improved, but it's very difficult to make it like in i3wm without covering a significant portion of a windows content since you can't really control a windows rendering, etc....
I'll address the bug soon
I quite like the look of it, I'll quite likely use it next time I need Windows for something more useful than gaming.
But the fact stays: i3 is not solely about windows management. It is a major step forward in workspace management too.
Bringing to Windows all the i3 features in term of workspace management would (in my opinion) be the real game changer.
But I presume it is technically challenging.
I daily drive Gnome shell with the Pop_OS tweaks on my laptop. On a couple of other desktops (both at work and home), I use KDE, i3, and Sway.
I've played around with XFCE, enlightenment, vanilla GNOME as well.
Which one I use highly depends on the usecase of the machine.
Pop_Shell is a nice all-rounder, it's got decent tiling, decent defaults, Jack-of-all-trades, master of none feel.
KDE is nice for machines I share with others, and when I just use a machine occasionally for light work/gaming. I also like it for machines that I do graphics work on, as A) Krita is a KDE app, and B) GIMP/Krita don't play with tiling very well, and I forget to turn it off in Pop!_Shell. Yes that's my fault. Yes it's still a factor.
I like i3/Sway for doing actual work in, especially with regards to ops and development work.
XFCE was fine, not my favorite, but it did the job. Ditto for enlightenment.
Vanilla GNOME is a nightmare. I can't stand it.
I've done deep dives into software as I've needed it, and even just the very surface level of familiarity with i3 was plenty to get enough of a performance boost that the WM was not what was limiting my productivity. At that point, why spend more time optimizing it?
I did daily drive it for a while on my laptop, and highly enjoyed being able to set up workspaces complete for different uses at the touch of a button, but I don't need that days, and didn't do much useful work when I did use it.
Edit: A big part of this is that the machines I use i3/Sway on these day's are really just single purpose machines that I don't do enough different things on to justify refreshing workspace management in my head. I find just being able to sanely open/manipulate open terminals is enough.
After some weeks living like this, i see that some microtask survive for a surpisingly long time, and my workspace management has evolved into a kind of poor's man task manager.
The fantastic side-effect of a workspace tied to a task is that the windows, history, URLs are ready to use instantly. Which makes cognitive load when task switching a breeze.